{"version":3,"file":"composeClasses.mjs","sources":["../../../../../../../../../node_modules/@mui/utils/esm/composeClasses/composeClasses.js"],"sourcesContent":["/* eslint no-restricted-syntax: 0, prefer-template: 0, guard-for-in: 0\n   ---\n   These rules are preventing the performance optimizations below.\n */\n\n/**\n * Compose classes from multiple sources.\n *\n * @example\n * ```tsx\n * const slots = {\n *  root: ['root', 'primary'],\n *  label: ['label'],\n * };\n *\n * const getUtilityClass = (slot) => `MuiButton-${slot}`;\n *\n * const classes = {\n *   root: 'my-root-class',\n * };\n *\n * const output = composeClasses(slots, getUtilityClass, classes);\n * // {\n * //   root: 'MuiButton-root MuiButton-primary my-root-class',\n * //   label: 'MuiButton-label',\n * // }\n * ```\n *\n * @param slots a list of classes for each possible slot\n * @param getUtilityClass a function to resolve the class based on the slot name\n * @param classes the input classes from props\n * @returns the resolved classes for all slots\n */\nexport default function composeClasses(slots, getUtilityClass, classes = undefined) {\n  const output = {};\n  for (const slotName in slots) {\n    const slot = slots[slotName];\n    let buffer = '';\n    let start = true;\n    for (let i = 0; i < slot.length; i += 1) {\n      const value = slot[i];\n      if (value) {\n        buffer += (start === true ? '' : ' ') + getUtilityClass(value);\n        start = false;\n        if (classes && classes[value]) {\n          buffer += ' ' + classes[value];\n        }\n      }\n    }\n    output[slotName] = buffer;\n  }\n  return output;\n}"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACe,SAAS,cAAc,CAAC,KAAK,EAAE,eAAe,EAAE,OAAO,GAAG,SAAS,EAAE;AACpF,EAAE,MAAM,MAAM,GAAG,EAAE;AACnB,EAAE,KAAK,MAAM,QAAQ,IAAI,KAAK,EAAE;AAChC,IAAI,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC;AAChC,IAAI,IAAI,MAAM,GAAG,EAAE;AACnB,IAAI,IAAI,KAAK,GAAG,IAAI;AACpB,IAAI,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;AAC7C,MAAM,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC;AAC3B,MAAM,IAAI,KAAK,EAAE;AACjB,QAAQ,MAAM,IAAI,CAAC,KAAK,KAAK,IAAI,GAAG,EAAE,GAAG,GAAG,IAAI,eAAe,CAAC,KAAK,CAAC;AACtE,QAAQ,KAAK,GAAG,KAAK;AACrB,QAAQ,IAAI,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE;AACvC,UAAU,MAAM,IAAI,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC;AACxC,QAAQ;AACR,MAAM;AACN,IAAI;AACJ,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM;AAC7B,EAAE;AACF,EAAE,OAAO,MAAM;AACf;;;;","x_google_ignoreList":[0]}