SWCore / Componentes / Upload

Upload Componentes

Zona de arrastar-e-soltar arquivos, com preview e validação de tamanho/quantidade.

O que é

Interface de envio de arquivo mais amigável que o <input type="file"> puro — arrasta, solta, vê a miniatura, remove antes de enviar.

Como funciona

Aceita clique (abre o seletor nativo) ou arrastar-e-soltar. Cada arquivo é validado contra tamanho máximo e quantidade máxima antes de entrar na lista; imagens ganham preview via URL.createObjectURL (revogado depois de carregar, sem vazar memória).

Exemplos

Padrão Ao vivo
<div sw-upload sw-upload-max="3"></div>

Atributos

sw-upload-accept
tipos aceitos (mesmo formato do atributo accept nativo)
sw-upload-max
quantidade máxima de arquivos
sw-upload-size
tamanho máximo por arquivo em bytes (padrão 10MB)
sw-upload-txt
texto da zona de soltar (aceita HTML simples)

Variantes

Nenhum.

Eventos

sw:upload:add
{ files }
sw:upload:remove
{ index }

API (JavaScript)

SW.Upload.getFiles(el)
retorna a lista de arquivos atual

Requisitos

Nenhuma.

Limitações — o que ele não faz

  • Só monta a fila e o preview no navegador — o envio de verdade pro servidor (fetch/FormData) fica por sua conta, escutando sw:upload:add ou lendo SW.Upload.getFiles().