{"version":3,"file":"Avatar.mjs","names":["A","Flexbox"],"sources":["../../../../src/chat/ChatItem/components/Avatar.tsx"],"sourcesContent":["import { type CSSProperties, type FC, useMemo } from 'react';\n\nimport A from '@/Avatar';\nimport { Flexbox } from '@/Flex';\n\nimport { styles } from '../style';\nimport type { ChatItemProps } from '../type';\nimport Loading from './Loading';\n\nexport interface AvatarProps {\n  addon?: ChatItemProps['avatarAddon'];\n  alt?: string;\n  avatar: ChatItemProps['avatar'];\n  loading?: ChatItemProps['loading'];\n  onClick?: ChatItemProps['onAvatarClick'];\n  placement?: ChatItemProps['placement'];\n  size?: number;\n  style?: CSSProperties;\n  unoptimized?: boolean;\n}\n\nconst Avatar: FC<AvatarProps> = ({\n  loading,\n  avatar,\n  placement,\n  unoptimized,\n  addon,\n  onClick,\n  size = 40,\n  style,\n  alt,\n}) => {\n  const cssVariables = useMemo<Record<string, string>>(\n    () => ({\n      '--chat-item-avatar-size': `${size}px`,\n    }),\n    [size],\n  );\n\n  const avatarContent = (\n    <div className={styles.avatarContainer} style={{ ...cssVariables, ...style }}>\n      <A\n        alt={alt || avatar.title}\n        animation={loading}\n        avatar={avatar.avatar}\n        background={avatar.backgroundColor}\n        size={size}\n        title={avatar.title}\n        unoptimized={unoptimized}\n        onClick={onClick}\n      />\n      <Loading loading={loading} placement={placement} />\n    </div>\n  );\n\n  if (!addon) return avatarContent;\n  return (\n    <Flexbox align={'center'} className={styles.avatarGroupContainer} gap={8}>\n      {avatarContent}\n      {addon}\n    </Flexbox>\n  );\n};\n\nexport default Avatar;\n"],"mappings":";;;;;;;AAqBA,MAAM,UAA2B,EAC/B,SACA,QACA,WACA,aACA,OACA,SACA,OAAO,IACP,OACA,UACI;CACJ,MAAM,eAAe,eACZ,EACL,2BAA2B,GAAG,KAAK,KACpC,GACD,CAAC,KAAK,CACP;CAED,MAAM,gBACJ,qBAAC,OAAD;EAAK,WAAW,OAAO;EAAiB,OAAO;GAAE,GAAG;GAAc,GAAG;GAAO;YAA5E,CACE,oBAACA,UAAD;GACE,KAAK,OAAO,OAAO;GACnB,WAAW;GACX,QAAQ,OAAO;GACf,YAAY,OAAO;GACb;GACN,OAAO,OAAO;GACD;GACJ;GACT,CAAA,EACF,oBAAC,SAAD;GAAkB;GAAoB;GAAa,CAAA,CAC/C;;AAGR,KAAI,CAAC,MAAO,QAAO;AACnB,QACE,qBAACC,mBAAD;EAAS,OAAO;EAAU,WAAW,OAAO;EAAsB,KAAK;YAAvE,CACG,eACA,MACO"}