Concrete
form
Primitive

Dropzone

Dashed upload target primitive with active, disabled, icon, and descriptive states.

Dropzone is a visual target and label surface. Product code or a higher-level upload component owns file transport and storage.

Upload filesDrag or choose a research artifact.
Playground

Props in the URL.

Controls update query params directly, so every primitive state can be linked, rendered, and screenshotted deterministically.

Loading playground.
States

Rendered matrix.

Every state maps to the same render route through the `state` query param.

Upload filesDrag or choose a research artifact.
Default

Passive upload target.

/render state
Upload filesDrag or choose a research artifact.
Active

Drag-over state.

/render state
Upload imagesDrag or choose a research artifact.
Image

Image-specific icon and copy.

/render state
Upload filesFile input is locked.
Disabled

Locked upload target.

/render state
Props

Public contract.

NameTypeDefaultDescription
titleReactNodeUpload filesPrimary drop target label.
descriptionReactNode-Secondary drop target copy.
iconIconNameuploadGlyph shown in the circular affordance.
activebooleanfalseHighlights drag-over state.
disabledbooleanfalseLocks the target visually and functionally.