Beta
Search
CTRLK

Queue

The Filenest.Queue is used to list all files (in your uploader) ready to be uploaded.

The component must be used as a child of <Filenest.Root>

Example Usage

<Filenest.Queue
  children={({ uploads, upload, meta }) => (
    <div>
      <div>Queued files:</div>
      {uploads.map((Upload, index) => (
        <Upload.Root
          key={index}
          children={({ upload, removeFromQueue }) => (
            <div>
              <div>{upload.raw.name}</div>
              {!meta.isLoading && !upload.isDone && (
                <button
                  onClick={removeFromQueue}
                  disabled={upload.isUploading}
                >
                  Remove
                </button>
              )}
              <div>Progress: {upload.progress}%</div>
            </div>
          )}
        />
      ))}
      <button onClick={upload} disabled={meta.isLoading}>
        <span>Upload {uploads.length} files</span>
        {meta.isLoading && (
          <div>Total progress: {meta.totalProgress}%</div>
        )}
      </button>
    </div>
  )}
/>

Render Props

PropTypeDefault
uploads
Array<UploadObject>
-
upload
() => void
-
meta
{ totalProgress: number, isLoading: boolean }
-

Type References

UploadObject

PropTypeDefault
Root
(props: UploadProps) => JSX.Element
-

UploadProps

PropTypeDefault
children
React.ReactNode | ((props: RenderProps) => React.ReactNode)
-

RenderProps

PropTypeDefault
upload
Upload
-
removeFromQueue
() => void
-

Upload

PropTypeDefault
raw
File
-
progress
number
-
isUploading
boolean
-
isError
boolean
-
isDone
boolean
-

On this page