<Meta title="Layout/SideTray/Guide" />

# FFWD SideTray

**SideTray** follows the layout structure as below, the layers can be restructed as needed.

```
<SideTrayBackdrop // or <SideTray>
    show={show}
    setShow={setShow}
>
    <SideTrayContent>
        <SideTrayBody>
            <SideTrayBodyContent>
                <SideTrayTitle title={'Title'} icon="alert" />
            </SideTrayBodyContent>
            <SideTrayFooter>
            </SideTrayFooter>
        </SideTrayBody>
    </SideTrayContent>
</SideTrayBackdrop>
```

# Usage
As the following example, **SideTray** expects to receive both flag and the flag's controller to trigger the visibility:
```
export const Default = () => {
    const [show, setShow] = useState<boolean>(true);

    return (
        <>
            <RectButton onClick={() => setShow(!show)}>Toggle Side Tray</RectButton>
            <SideTray
                show={show}
                setShow={setShow}
            >
                <SideTrayContent>
                    <SideTrayBody>
                        <SideTrayBodyContent>
                            <SideTrayTitle title={'Title'} icon="alert" />
                            <p className={css`text-align: center;`}>Content</p>
                        </SideTrayBodyContent>
                        <SideTrayFooter>
                            Footer
                        </SideTrayFooter>
                    </SideTrayBody>
                </SideTrayContent>
            </SideTray>
        </>
    );
};
```
