32 lines
1.0 KiB
TypeScript
32 lines
1.0 KiB
TypeScript
import type { VariantProps } from "class-variance-authority";
|
|
import { cva } from "class-variance-authority";
|
|
|
|
export { default as Avatar } from "./Avatar.vue";
|
|
export { default as AvatarFallback } from "./AvatarFallback.vue";
|
|
export { default as AvatarImage } from "./AvatarImage.vue";
|
|
export { default as UserAvatar } from "./UserAvatar.vue";
|
|
|
|
export const avatarVariants = cva(
|
|
"border-border bg-muted relative flex shrink-0 overflow-hidden border",
|
|
{
|
|
variants: {
|
|
size: {
|
|
sm: "size-6 text-label",
|
|
default: "size-8 text-caption",
|
|
lg: "size-10 text-body",
|
|
xl: "size-16 text-title",
|
|
},
|
|
shape: {
|
|
circle: "rounded-full",
|
|
rounded: "rounded-lg",
|
|
square: "rounded-sm",
|
|
},
|
|
},
|
|
defaultVariants: {
|
|
size: "default",
|
|
shape: "circle",
|
|
},
|
|
},
|
|
);
|
|
export type AvatarVariants = VariantProps<typeof avatarVariants>;
|