{"version":3,"file":"avatar.mjs","sources":["../../../../../../components/avatar/src/avatar.ts"],"sourcesContent":["import type { ExtractPropTypes, PropType } from 'vue'\nimport { buildProps, isNumber, isString } from '@fusion-ui-vue/utils'\n\nimport type { AcceptableColor } from '@fusion-ui-vue/theme'\n\nexport const avatarVariants = ['circle', 'square', 'rounded'] as const\nexport type AvatarVariants = typeof avatarVariants[number]\n\nexport const avatarProps = buildProps({\n  size: {\n    type: [String, Number] as PropType<string | number>,\n    default: 40,\n    validator: (val: unknown): val is string | number => {\n      return isNumber(val) || (isString(val) && !isNaN(parseFloat(val)))\n    },\n  },\n  variant: {\n    type: String as PropType<AvatarVariants>,\n    values: avatarVariants,\n    default: 'circle',\n  },\n  color: {\n    type: [String, Function] as PropType<AcceptableColor>,\n    default: 'onSurface',\n  },\n  backgroundColor: {\n    type: [String, Function] as PropType<AcceptableColor>,\n    default: 'surfaceVariant',\n  },\n})\n\nexport type AvatarProps = ExtractPropTypes<typeof avatarProps>\n"],"names":[],"mappings":";;;;;AAKO,MAAM,cAAiB,GAAA,CAAC,QAAU,EAAA,QAAA,EAAU,SAAS,EAAA;AAGrD,MAAM,cAAc,UAAW,CAAA;AAAA,EACpC,IAAM,EAAA;AAAA,IACJ,IAAA,EAAM,CAAC,MAAA,EAAQ,MAAM,CAAA;AAAA,IACrB,OAAS,EAAA,EAAA;AAAA,IACT,SAAA,EAAW,CAAC,GAAyC,KAAA;AACnD,MAAO,OAAA,QAAA,CAAS,GAAG,CAAA,IAAM,QAAS,CAAA,GAAG,KAAK,CAAC,KAAA,CAAM,UAAW,CAAA,GAAG,CAAC,CAAA,CAAA;AAAA,KAClE;AAAA,GACF;AAAA,EACA,OAAS,EAAA;AAAA,IACP,IAAM,EAAA,MAAA;AAAA,IACN,MAAQ,EAAA,cAAA;AAAA,IACR,OAAS,EAAA,QAAA;AAAA,GACX;AAAA,EACA,KAAO,EAAA;AAAA,IACL,IAAA,EAAM,CAAC,MAAA,EAAQ,QAAQ,CAAA;AAAA,IACvB,OAAS,EAAA,WAAA;AAAA,GACX;AAAA,EACA,eAAiB,EAAA;AAAA,IACf,IAAA,EAAM,CAAC,MAAA,EAAQ,QAAQ,CAAA;AAAA,IACvB,OAAS,EAAA,gBAAA;AAAA,GACX;AACF,CAAC;;;;"}