Cliente para upload de arquivos para o servico Polgo
npm install polgo-upload-kitCliente JavaScript para upload de arquivos para o servico Polgo (S3).
``bash`
npm install polgo-upload-kit
`javascript
import { PolgoUploadClient } from 'polgo-upload-kit';
const client = new PolgoUploadClient({
token: 'seu-token-bearer',
stack: 'nome-da-sua-stack',
isProd: true // false para ambiente dev
});
`
Faz upload de um arquivo para o bucket S3.
`javascriptProgresso: ${progresso}%
const resultado = await client.uploadFile(arquivo, 'nome-do-bucket', {
diretorio: 'caminho/no/bucket',
nomeArquivo: 'arquivo.jpg',
otimizacao: 'webp', // 'jpeg' | 'webp' | 'avif' | false
forcarConversao: false
}, (progresso) => {
console.log();
});
// Retorno:
// {
// id: 'id-unico',
// endereco: 'url-do-arquivo',
// tamanhoOriginal: 1024,
// tamanhoOtimizado: 512,
// otimizado: true,
// formatoOriginal: 'image/jpeg',
// formatoOtimizado: 'image/webp',
// economiaPercentual: 50
// }
`
Recupera um arquivo do bucket.
`javascript`
const arquivo = await client.recuperarArquivos('nome-do-bucket', 'caminho/arquivo.jpg');
Lista arquivos de um diretorio no bucket.
`javascript`
const arquivos = await client.listarArquivos('nome-do-bucket', 'caminho/diretorio');
Voce pode customizar a URL base, timeout e os endpoints:
`javascript`
const client = new PolgoUploadClient({
token: 'seu-token',
stack: 'sua-stack',
isProd: true,
timeout: 60000, // 60 segundos (padrao: 30000)
baseUrl: 'https://sua-api.com',
endpoints: {
upload: '/custom/upload',
recuperar: '/custom/recuperar',
listar: '/custom/listar'
}
});
O servico otimiza imagens automaticamente. Opcoes disponiveis:
| Valor | Descricao |
|-------|-----------|
| 'webp' | Converte para WebP (padrao) |'jpeg'
| | Converte para JPEG |'avif'
| | Converte para AVIF |false
| | Desabilita otimizacao |
Para forcar a conversao mesmo quando o arquivo resultante for maior:
`javascript``
await client.uploadFile(arquivo, bucket, {
otimizacao: 'avif',
forcarConversao: true
});
ISC