import { playgroundParameters } from "@charcuterie/storybook-config/story-parameters" import type { Meta, StoryObj } from "@storybook/react" import { useState } from "react" import { StoryCell, StoryGrid, } from "../board.storyHelpers.tsx" import { FileDropZone } from "./FileDropZone.tsx" const noop = () => undefined const meta = { title: "Components/Controls/FileDropZone", component: FileDropZone, parameters: { layout: "padded" }, args: { isDisabled: false, isMultiple: false, label: "Drop a disc image here", onDropFiles: noop, }, } satisfies Meta export default meta type Story = StoryObj export const Playground: Story = { parameters: playgroundParameters, args: { description: "ISO or MKV, up to 50 GB.", label: "Drop a disc image here", }, } export const AllVariants: Story = { args: { label: "Drop a disc image here" }, render: () => ( ), } export const AllStates: Story = { args: { label: "Drop a disc image here" }, render: () => ( ), } /** * Tab to it and press Enter — the file picker opens, which is the * whole point: **there is no keyboard gesture for drag-and-drop**, * so the zone is a `