Skip to content

FileList

FileList renders all files in the upload queue in list or grid layout, reading file state from UploadProvider context. Pass a render function as children to use a custom item renderer; otherwise it renders FileItem.Content per file.

sample-video.mp4
sample-video.mp4
50.0 MB
sample-video.mp4
sample-video.mp4
50.0 MBProcessing...
sample-video.mp4
50.0 MB
sample-video.mp4
sample-video.mp4
50.0 MB
Upload failed. Check your connection.
import { FileList } from "@hyperserve/upload-react";
<FileList />
No files selected yet.
<FileList emptyMessage="No files selected yet." />
sample-video.mp4
sample-video.mp4
50.0 MB
sample-video.mp4
sample-video.mp4
50.0 MBProcessing...
sample-video.mp4
50.0 MB
sample-video.mp4
sample-video.mp4
50.0 MB
Upload failed. Check your connection.
<FileList mode="grid" columns="repeat(3, 1fr)" />
PropTypeDefaultDescription
mode"list" | "grid"From ViewModeProvider or "list"Layout mode
columnsstring"repeat(auto-fill, minmax(180px, 1fr))"CSS grid-template-columns for grid mode
emptyMessageReactNodenoneShown when no files
emptyClassNamestringnoneClass for empty state container
emptyStyleCSSPropertiesnoneStyles for empty state container
renderEmpty() => ReactNodenoneCustom empty state renderer (overrides emptyMessage)
children(file, index) => ReactNodenoneCustom item renderer
styleCSSPropertiesnoneContainer styles
classNamestringnoneContainer class

When children is omitted, FileList renders a default FileItem per file. Provide a render function for custom items:

sample-video.mp4sample-video.mp4
sample-video.mp4sample-video.mp4
sample-video.mp4
sample-video.mp4sample-video.mp4
<FileList>
{(file, index) => (
<FileItem key={file.id} file={file} layout="column">
<Thumbnail file={file} playback />
<FileItem.FileName />
<FileItem.UploadProgress />
<FileItem.Actions>
<FileItem.RemoveButton />
<FileItem.RetryButton />
</FileItem.Actions>
</FileItem>
)}
</FileList>

FileList reads the view mode from ViewModeProvider context when available. The mode prop always takes precedence over context. Without either, it defaults to "list".