@opens/frontend
O pacote @opens/frontend
fornece ferramentas úteis para projetos frontend, como geração de arquivos em vários formatos.
Instalação
Adicione o pacote ao seu projeto usando o npm:
npm install @opens/frontend
Funcionalidades
-
Geração de PDF
-
Geração de CSV
-
Geração de Excel (.xlsx)
Uso
- Exemplo de uso da classe PDFGenerator
import { PDFGenerator } from '@opens/frontend';
const config = {
orientation: 'portrait',
title: 'Relatório de Vendas',
headers: ['Produto', 'Quantidade', 'Preço'],
data: [
{ Produto: 'Camiseta', Quantidade: 10, Preço: 'R$ 100,00' },
{ Produto: 'Calça', Quantidade: 5, Preço: 'R$ 200,00' },
],
fileName: 'relatorio_vendas',
imgSrc: '/assets/logo.png',
};
const pdfGenerator = new PDFGenerator(config);
await pdfGenerator.generate();
- Exemplo de uso da classe CSVGenerator
import { CSVGenerator } from '@opens/frontend';
const config = {
headers: ['Produto', 'Quantidade', 'Preço'],
data: [
{ Produto: 'Camiseta', Quantidade: 10, Preço: 'R$ 100,00' },
{ Produto: 'Calça', Quantidade: 5, Preço: 'R$ 200,00' },
],
fileName: 'relatorio_vendas',
};
const csvGenerator = new CSVGenerator(config);
await csvGenerator.generate();
- Exemplo de uso da classe ExcelGenerator
import { ExcelGenerator } from '@opens/frontend';
const config = {
headers: ['Produto', 'Quantidade', 'Preço'],
data: [
{ Produto: 'Camiseta', Quantidade: 10, Preço: 'R$ 100,00' },
{ Produto: 'Calça', Quantidade: 5, Preço: 'R$ 200,00' },
],
fileName: 'relatorio_vendas',
};
const excelGenerator = new ExcelGenerator(config);
await excelGenerator.generate();
Configuração
Configuração comum
Todas as classes (PDFGenerator, CSVGenerator, ExcelGenerator) compartilham algumas propriedades comuns na configuração:
- headers: Array de strings representando os cabeçalhos das colunas.
- data: Array de objetos representando os dados tabulares.
- fileName: Nome do arquivo gerado (sem extensão).
Configuração Específica
- PDFGenerator:
- orientation: Orientação do documento (portrait ou landscape).
- imgSrc: Caminho ou URL para o logotipo a ser adicionado ao PDF.