import React from "react";
import Avatar from "../Avatar";
import AvatarGroup from "../../AvatarGroup/AvatarGroup";
import { createStoryMetaSettingsDecorator } from "../../../storybook";
import { createComponentTemplate, StoryDescription } from "vibe-storybook-components";
import Tooltip from "../../Tooltip/Tooltip";
import { Counter, Flex } from "../..";
import { guest, home, minus, owner, person1, person2, person3 } from "./assets";
import { WhatsNew } from "../../Icon/Icons";
import { useCallback, useState } from "react";
import "./Avatar.stories.scss";
const metaSettings = createStoryMetaSettingsDecorator({
component: Avatar,
enumPropNamesArray: ["type", "size"],
iconPropNamesArray: ["icon"]
});
const avatarTemplate = createComponentTemplate(Avatar);
export default {
title: "Media/Avatar/Avatar",
component: Avatar,
argTypes: metaSettings.argTypes,
decorators: metaSettings.decorators
};
export const Overview = {
render: avatarTemplate.bind({}),
name: "Overview",
args: {
size: Avatar.sizes.LARGE,
src: window.location.origin + "/" + person1,
type: Avatar.types.IMG,
ariaLabel: "Julia Martinez"
}
};
export const Size = {
render: () => (
<>
>
),
name: "Size"
};
export const Disable = {
render: () => (
<>
>
),
name: "Disable"
};
export const AvatarWithText = {
render: () => (
<>
>
),
name: "Avatar with text"
};
export const SquareAvatar = {
render: () => (
<>
>
),
name: "Square avatar"
};
export const AvatarWithRightBadge = {
render: () => (
<>
>
),
name: "Avatar with right badge"
};
export const AvatarWithLeftBadge = {
render: () => (
<>
{" "}
>
),
name: "Avatar with left badge"
};
export const AvatarWithTooltip = {
render: () => (
Julia Martinez,
position: Tooltip.positions.BOTTOM
}}
ariaLabel={"Julia Martinez"}
/>
),
name: "Avatar with tooltip"
};
export const ClickableAvatar = {
render: () => {
const [count, setCount] = useState(0);
const incrementCount = useCallback(() => {
setCount(prevState => prevState + 1);
}, []);
return (
);
},
name: "Clickable avatar"
};
export const MultipleAvatars = {
render: () => (
),
name: "Multiple avatars"
};