import React from "react"; import { createComponentTemplate, StoryDescription } from "vibe-storybook-components"; import Loader from "../Loader"; import { createStoryMetaSettingsDecorator } from "../../../storybook"; import { Button, DialogContentContainer, Flex, Search } from "../.."; import { useCallback, useState } from "react"; import "./Loader.stories.scss"; const metaSettings = createStoryMetaSettingsDecorator({ component: Loader, enumPropNamesArray: ["size", "color"] }); export default { title: "Feedback/Loader", component: Loader, argTypes: metaSettings.argTypes, decorators: metaSettings.decorators }; const loaderTemplate = createComponentTemplate(Loader); export const Overview = { render: loaderTemplate.bind({}), name: "Overview", args: { size: Loader.sizes.MEDIUM } }; export const SizeVariants = { render: () => (
), name: "Size variants" }; export const ColorVariants = { render: () => (
), name: "Color variants" }; export const CustomColors = { render: () => (
), name: "Custom colors" }; export const VisualVariants = { render: () => (
), name: "Visual variants" }; export const LoaderInTextField = { render: () => ( ), name: "Loader in text field" }; export const LoaderInButton = { render: () => { const [loading, setLoading] = useState(false); const onClick = useCallback(() => { setLoading(true); }, [setLoading]); return ( ); }, name: "Loader in button" };