import React from "react";
import { useState } from "react";
import { createComponentTemplate } from "vibe-storybook-components";
import ExpandCollapse from "../ExpandCollapse";
import { createStoryMetaSettingsDecorator } from "../../../storybook";
import { Flex, Icon, Text } from "../../index";
import { Heading } from "../../../next/next";
import { Robot } from "../../Icon/Icons";
import styles from "./ExpandCollapse.stories.module.scss";
const metaSettings = createStoryMetaSettingsDecorator({
component: ExpandCollapse,
enumPropNamesArray: [],
iconPropNamesArray: [],
actionPropsArray: [],
ignoreControlsPropNamesArray: ["headerComponentRenderer"]
});
export default {
title: "Data Display/ExpandCollapse",
component: ExpandCollapse,
argTypes: metaSettings.argTypes,
decorators: metaSettings.decorators
};
const expandCollapseTemplate = createComponentTemplate(ExpandCollapse);
export const Overview = {
render: expandCollapseTemplate.bind({}),
name: "Overview",
args: {
title: "Expand collapse",
children: [
Insert here any component that you want, here is a robot for you
,
],
className: styles.storybookExpandCollapse
}
};
export const OpenByDefault = {
render: () => (
Insert here any component that you want
),
name: "Open by default"
};
export const ControlledOpenState = {
render: () => {
const [open, setOpen] = useState(false);
return (
setOpen(prevState => !prevState)}
className={styles.storybookExpandCollapse}
>
Insert here any component that you want
);
},
name: "Controlled open state"
};
export const CustomHeaderRenderer = {
render: () => {
const ExpandCollapseCustomHeadingComponent = () => {
return Any component you want;
};
return (
Insert here any component that you want
);
},
name: "Custom header renderer"
};
export const WithoutBorders = {
render: () => (
Insert here any component that you want
),
name: "Without borders"
};