From 0d06591130586246700ade4b0db768400c55fb49 Mon Sep 17 00:00:00 2001 From: Benji Trosch Date: Fri, 15 Apr 2022 12:41:23 -0400 Subject: [PATCH] chore(Countdown): added stories --- src/Countdown/Countdown.stories.tsx | 105 +++++++++++++++++++++++++++- 1 file changed, 103 insertions(+), 2 deletions(-) diff --git a/src/Countdown/Countdown.stories.tsx b/src/Countdown/Countdown.stories.tsx index dd775ed2..860c0c78 100644 --- a/src/Countdown/Countdown.stories.tsx +++ b/src/Countdown/Countdown.stories.tsx @@ -13,7 +13,7 @@ export const Default: Story = (args) => { useEffect(() => { const timer = setTimeout(() => { - setValue(value - 1) + setValue((v) => v <= 0 ? args.value : v - 1) }, 1000) return () => { @@ -21,8 +21,109 @@ export const Default: Story = (args) => { } }, [value]) - return + return } Default.args = { value: 50, } + +export const Clock: Story = (args) => { + const [value, setValue] = useState(args.value) + + useEffect(() => { + const timer = setTimeout(() => { + setValue((v) => v <= 0 ? args.value : v - 1) + }, 1000) + + return () => { + clearTimeout(timer) + } + }, [value]) + + return ( + + : + : + + + ) +} +Clock.args = { + value: 34, +} + +export const WithLabels: Story = (args) => { + const [value, setValue] = useState(args.value) + + useEffect(() => { + const timer = setTimeout(() => { + setValue((v) => v <= 0 ? args.value : v - 1) + }, 1000) + + return () => { + clearTimeout(timer) + } + }, [value]) + + return ( +
+
+ + days +
+
+ + hours +
+
+ + min +
+
+ + sec +
+
+ ) +} +WithLabels.args = { + value: 37, +} + +export const WithBoxes: Story = (args) => { + const [value, setValue] = useState(args.value) + + useEffect(() => { + const timer = setTimeout(() => { + setValue((v) => v <= 0 ? args.value : v - 1) + }, 1000) + + return () => { + clearTimeout(timer) + } + }, [value]) + + return ( +
+
+ + days +
+
+ + hours +
+
+ + min +
+
+ + sec +
+
+ ) +} +WithBoxes.args = { + value: 26, +} \ No newline at end of file