forms · primitive
File upload
Drag-drop dropzone with file list and per-file progress. Native
<input type="file"> + drag handlers — no external dependency. Pattern shown here is a working sketch; consuming apps wire it to their actual upload backend (S3 presigned URL, server endpoint, etc.). dropzone
Drag-drop or click to select
file list
Status states + per-file progress
corridor-protocol-v3.pdf
2.3 MB
field-data-march.csv
180 KB
geo-overlay.shp.zip
8.5 MB · 62%
video-12gb.mp4
11 GB · File exceeds 5 GB limit
notes
Wiring it up
The pattern above stops at the UI surface. Actual upload flow (chunked PUTs, retry, abort) lives in the host app. For Landscape, the agent ingests files on disk; this surface applies to the admin UI's "register a corpus document" path. Standard browser file APIs apply — File + FormData + fetch, or your S3 SDK.