@lobehub/ui
Version:
Lobe UI is an open-source UI component library for building AIGC web apps
43 lines (41 loc) • 1.29 kB
JavaScript
import FlexBasic_default from "../../../Flex/FlexBasic.mjs";
import Avatar_default$1 from "../../../Avatar/index.mjs";
import { styles } from "../style.mjs";
import Loading_default from "./Loading.mjs";
import { useMemo } from "react";
import { jsx, jsxs } from "react/jsx-runtime";
//#region src/chat/ChatItem/components/Avatar.tsx
const Avatar = ({ loading, avatar, placement, unoptimized, addon, onClick, size = 40, style, alt }) => {
const cssVariables = useMemo(() => ({ "--chat-item-avatar-size": `${size}px` }), [size]);
const avatarContent = /* @__PURE__ */ jsxs("div", {
className: styles.avatarContainer,
style: {
...cssVariables,
...style
},
children: [/* @__PURE__ */ jsx(Avatar_default$1, {
alt: alt || avatar.title,
animation: loading,
avatar: avatar.avatar,
background: avatar.backgroundColor,
onClick,
size,
title: avatar.title,
unoptimized
}), /* @__PURE__ */ jsx(Loading_default, {
loading,
placement
})]
});
if (!addon) return avatarContent;
return /* @__PURE__ */ jsxs(FlexBasic_default, {
align: "center",
className: styles.avatarGroupContainer,
gap: 8,
children: [avatarContent, addon]
});
};
var Avatar_default = Avatar;
//#endregion
export { Avatar_default as default };
//# sourceMappingURL=Avatar.mjs.map