{"version":3,"file":"utils.mjs","names":[],"sources":["../../../src/ActionIcon/components/utils.ts"],"sourcesContent":["import { isNumber } from 'es-toolkit/compat';\n\nimport type { ActionIconSize } from '@/ActionIcon';\n\nexport const calcSize = (iconSize?: ActionIconSize) => {\n  let blockSize: number | string;\n  let borderRadius: number | string;\n\n  if (isNumber(iconSize)) {\n    const blockSize = iconSize * 1.8;\n    return {\n      blockSize,\n      borderRadius: Math.floor(blockSize / 6),\n    };\n  }\n\n  switch (iconSize) {\n    case 'large': {\n      blockSize = 44;\n      borderRadius = 8;\n      break;\n    }\n    case 'middle': {\n      blockSize = 36;\n      borderRadius = 6;\n      break;\n    }\n    case 'small': {\n      blockSize = 24;\n      borderRadius = 4;\n      break;\n    }\n    default: {\n      if (iconSize) {\n        blockSize = iconSize?.blockSize || 36;\n        borderRadius = iconSize?.borderRadius || 6;\n      } else {\n        blockSize = '1.8em';\n        borderRadius = '0.3em';\n      }\n\n      break;\n    }\n  }\n\n  return {\n    blockSize,\n    borderRadius,\n  };\n};\n"],"mappings":";;AAIA,MAAa,YAAY,aAA8B;CACrD,IAAI;CACJ,IAAI;AAEJ,KAAI,SAAS,SAAS,EAAE;EACtB,MAAM,YAAY,WAAW;AAC7B,SAAO;GACL;GACA,cAAc,KAAK,MAAM,YAAY,EAAE;GACxC;;AAGH,SAAQ,UAAR;EACE,KAAK;AACH,eAAY;AACZ,kBAAe;AACf;EAEF,KAAK;AACH,eAAY;AACZ,kBAAe;AACf;EAEF,KAAK;AACH,eAAY;AACZ,kBAAe;AACf;EAEF;AACE,OAAI,UAAU;AACZ,gBAAY,UAAU,aAAa;AACnC,mBAAe,UAAU,gBAAgB;UACpC;AACL,gBAAY;AACZ,mBAAe;;AAGjB;;AAIJ,QAAO;EACL;EACA;EACD"}