File Uploader

A file upload area supporting drag-and-drop, click-to-browse, and upload progress display.

Install

npx @vultra/cli add file-uploader

Usage

<script>
  import { FileUploader } from '@vultra/ui';

  function handleUpload(files) {
    console.log('Uploading:', files);
  }
</script>

<FileUploader accept="image/*" onUpload={handleUpload} />

Props

PropTypeDefaultDescription
acceptstring-Accepted file types (e.g. "image/*")
multiplebooleanfalseAllow multiple files
maxSizenumber-Max file size in bytes
disabledbooleanfalseDisable upload
classstring-Additional CSS classes

Events

EventDetailDescription
uploadFile[]Fires with accepted files
errorstringFires on validation error

Slots

SlotDescription
defaultCustom drop zone content
uploadingContent shown during upload

Notes

  • Shows file type and size validation errors inline.
  • Drag-over state highlights the drop zone.