import React, { useCallback, useState } from "react"; import Steps, { StepsProps } from "../Steps"; import Button from "../../Button/Button"; import Tipseen from "../../Tipseen/Tipseen"; import Flex from "../../Flex/Flex"; import TipseenWizard from "../../Tipseen/TipseenWizard"; import { modifiers } from "./Steps.stories.helpers"; import createStoryMetaSettingsDecorator from "../../../storybook/functions/createStoryMetaSettingsDecorator"; import "./Steps.stories.scss"; const metaSettings = createStoryMetaSettingsDecorator({ component: Steps, enumPropNamesArray: ["type"], actionPropsArray: ["onChangeActiveStep"] }); const steps5 = [
,
,
,
,
]; export default { title: "Data display/Steps", component: Steps, argTypes: metaSettings.argTypes, decorators: metaSettings.decorators }; const NavigableStepsTemplate = (args: StepsProps) => { const [activeStepIndex, setActiveStepIndex] = useState(2); const stepPrev = useCallback(() => { setActiveStepIndex(prevState => prevState - 1); }, []); const stepNext = useCallback(() => { setActiveStepIndex(prevState => prevState + 1); }, []); const onChangeActiveStep = useCallback((_e: any, stepIndex: React.SetStateAction) => { setActiveStepIndex(stepIndex); }, []); return ( {}} /> ); }; export const Overview = { render: NavigableStepsTemplate.bind({}), name: "Overview", args: { steps: steps5 } }; export const Types = { render: () => ( ), name: "Types" }; export const OnPrimary = { render: () => ( ), name: "On primary" }; export const NavigableSteps = { render: () => { const [activeStepIndex, setActiveStepIndex] = useState(2); const stepPrev = useCallback(() => { setActiveStepIndex(prevState => prevState - 1); }, []); const stepNext = useCallback(() => { setActiveStepIndex(prevState => prevState + 1); }, []); const onChangeActiveStep = useCallback((_e: any, stepIndex: React.SetStateAction) => { setActiveStepIndex(stepIndex); }, []); return (
{}} />
); }, name: "Navigable Steps" }; export const StepsInsideATipseen = { render: () => { const steps = [
Message number 1
,
Message number 2
,
Message number 3
,
Message number 4
,
Message number 5
]; const [activeStepIndex, setActiveStepIndex] = useState(2); const stepPrev = useCallback(() => { setActiveStepIndex(prevState => prevState - 1); }, []); const stepNext = useCallback(() => { setActiveStepIndex(prevState => prevState + 1); }, []); const onChangeActiveStep = useCallback((_e: any, stepIndex: React.SetStateAction) => { setActiveStepIndex(stepIndex); }, []); return (
{}} /> } >
); }, name: "Steps inside a tipseen" };