{"version":3,"file":"AvatarFavicon.cjs","sourceRoot":"","sources":["../../../src/components/AvatarFavicon/AvatarFavicon.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yEAGwC;AACxC,+CAAoD;AAEpD,wDAA2C;AAI9B,QAAA,aAAa,GAAG,IAAA,kBAAU,EACrC,CACE,EACE,GAAG,EACH,IAAI,GAAG,EAAE,EACT,YAAY,EACZ,iBAAiB,EACjB,SAAS,EACT,IAAI,GAAG,wCAAiB,CAAC,EAAE,EAC3B,UAAU,EACV,GAAG,KAAK,EACT,EACD,GAAG,EACH,EAAE;IACF,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,IAAA,gBAAQ,EAAS,EAAE,CAAC,CAAC;IACvE,MAAM,kBAAkB,GAAG,YAAY,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC;IAC5D,MAAM,OAAO,GAAG,IAAI,IAAI,WAAW,CAAC,CAAC,yCAAyC;IAE9E,MAAM,cAAc,GAAG,CAAC,CAAyC,EAAE,EAAE;QACnE,oBAAoB,CAAC,kBAAkB,CAAC,CAAC;QACzC,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC,CAAC;IAEF,OAAO,CACL,8BAAC,uBAAU,IACT,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,sCAAe,CAAC,MAAM,EAC7B,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,kBAAkB,EAC1D,iBAAiB,EAAE,iBAAiB,KAChC,KAAK,IAER,GAAG,IAAI,CACN,uCACE,GAAG,EAAE,GAAG,EACR,GAAG,EAAE,OAAO,EACZ,SAAS,EAAC,0BAA0B,KAChC,UAAU,EACd,OAAO,EAAE,cAAc,GACvB,CACH,CACU,CACd,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,qBAAa,CAAC,WAAW,GAAG,eAAe,CAAC","sourcesContent":["import {\n  AvatarBaseShape,\n  AvatarFaviconSize,\n} from '@metamask/design-system-shared';\nimport React, { forwardRef, useState } from 'react';\n\nimport { AvatarBase } from '../AvatarBase';\n\nimport type { AvatarFaviconProps } from './AvatarFavicon.types';\n\nexport const AvatarFavicon = forwardRef<HTMLDivElement, AvatarFaviconProps>(\n  (\n    {\n      src,\n      name = '',\n      fallbackText,\n      fallbackTextProps,\n      className,\n      size = AvatarFaviconSize.Md,\n      imageProps,\n      ...props\n    },\n    ref,\n  ) => {\n    const [finalFallbackText, setFinalFallbackText] = useState<string>('');\n    const backupFallbackText = fallbackText || name?.[0] || '?';\n    const altText = name || 'Site logo'; // TBC: Add localization for default text\n\n    const onErrorHandler = (e: React.SyntheticEvent<HTMLImageElement>) => {\n      setFinalFallbackText(backupFallbackText);\n      imageProps?.onError?.(e);\n    };\n\n    return (\n      <AvatarBase\n        ref={ref}\n        shape={AvatarBaseShape.Circle}\n        size={size}\n        className={className}\n        fallbackText={src ? finalFallbackText : backupFallbackText}\n        fallbackTextProps={fallbackTextProps}\n        {...props}\n      >\n        {src && (\n          <img\n            src={src}\n            alt={altText}\n            className=\"size-full object-contain\"\n            {...imageProps}\n            onError={onErrorHandler}\n          />\n        )}\n      </AvatarBase>\n    );\n  },\n);\n\nAvatarFavicon.displayName = 'AvatarFavicon';\n"]}