Skip to content

Commit 6db985b

Browse files
Address review feedback
1 parent b1ca398 commit 6db985b

File tree

2 files changed

+27
-6
lines changed

2 files changed

+27
-6
lines changed

packages/bento-design-system/src/FileUploaderField/FileUploaderField.tsx

+4
Original file line numberDiff line numberDiff line change
@@ -144,7 +144,11 @@ export function FileUploaderField<E extends string>({
144144
}: Props<E>) {
145145
const config = useBentoConfig().fileUploaderField;
146146
const height = height_ ?? config.defaultHeight;
147+
147148
const [uploading, setUploading] = useState<boolean>(isUploading ?? false);
149+
useEffect(() => {
150+
isUploading !== undefined && setUploading(isUploading);
151+
}, [isUploading]);
148152

149153
// note(Fede): useDropzone already exposes a `isDragActive` flag, but it is true
150154
// only when a file is dragged over the component, not the whole window, which is what we prefer.

packages/storybook/stories/Components/FileUploaderField.stories.tsx

+23-6
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
1+
import { useState } from "react";
12
import { StoryFn } from "@storybook/react";
2-
import { FileUploaderField, BentoConfigProvider } from "..";
3+
import { FileUploaderField, BentoConfigProvider, Button, Stack } from "..";
34
import { createComponentStories } from "../util";
45

56
const { defaultExport, createControlledStory } = createComponentStories({
@@ -33,11 +34,27 @@ const fileUploaderProps = {
3334

3435
export const fileUploaderField = createControlledStory(undefined, fileUploaderProps);
3536

36-
export const loading = createControlledStory(undefined, {
37-
...fileUploaderProps,
38-
isUploading: true,
39-
});
40-
loading.parameters = {
37+
export const Loading = () => {
38+
const [loading, setLoading] = useState(false);
39+
40+
return (
41+
<Stack space={16}>
42+
<FileUploaderField
43+
{...fileUploaderProps}
44+
value={undefined}
45+
onChange={() => {}}
46+
isUploading={loading}
47+
/>
48+
<Button
49+
kind="solid"
50+
hierarchy="primary"
51+
label={loading ? "Stop loading" : "Start loading"}
52+
onPress={() => setLoading(!loading)}
53+
/>
54+
</Stack>
55+
);
56+
};
57+
Loading.parameters = {
4158
chromatic: { pauseAnimationAtEnd: true },
4259
};
4360

0 commit comments

Comments
 (0)