import preview from "#.storybook/preview"; import { AnimationParams } from "animejs"; import { Component, createSignal, For } from "solid-js"; import { AnimeGroup } from "../../src/ts/components/common/anime/AnimeGroup"; const meta = preview.meta({ title: "Common/Anime/AnimeGroup", component: AnimeGroup as Component, parameters: { layout: "centered", }, tags: ["autodocs"], }); const itemStyle = { padding: "12px 24px", "background-color": "var(--sub-alt-color)", color: "var(--text-color)", "border-radius": "8px", "margin-bottom": "4px", }; export const StaggeredFadeIn = meta.story({ render: () => ( } animation={ { opacity: 1, translateY: 0, duration: 400 } as AnimationParams } stagger={80} >
First
Second
Third
Fourth
Fifth
), }); export const ReverseDirection = meta.story({ render: () => ( } animation={ { opacity: 1, translateX: 0, duration: 300 } as AnimationParams } stagger={100} direction="reverse" >
Item 1
Item 2
Item 3
Item 4
), }); export const CenterDirection = meta.story({ render: () => ( } animation={{ opacity: 1, scale: 1, duration: 400 } as AnimationParams} stagger={80} direction="center" class="flex gap-2" >
1
2
3
4
5
), }); export const WithExitAnimation = meta.story({ render: () => { const [items, setItems] = createSignal(["A", "B", "C", "D"]); return (
} animation={ { opacity: 1, translateX: 0, duration: 300 } as AnimationParams } exit={ { opacity: 0, translateX: 15, duration: 200 } as AnimationParams } stagger={60} > {(item) =>
Item {item}
}
); }, });