@sysvale/citizen-components
v1.16.0
Published
Biblioteca de componentes Vue 3 para busca e seleção de cidadãos, construída com TypeScript e Vite.
Readme
@sysvale/citizen-components
Biblioteca de componentes Vue 3 para busca e seleção de cidadãos, construída com TypeScript e Vite.
Descrição
Este pacote fornece componentes reutilizáveis para integração com APIs de cidadãos, incluindo:
- CitizenSelect: Componente de busca e seleção de cidadãos com dropdown
- CitizenService: Serviço para buscar dados de cidadãos via API ou mock
- CreateCitizenSidesheet: Componente para a criação de um novo cidadão
- EditCitizenSidesheet: Componente para a edição de um cidadão
- CitizenSummaryViewer: Componente para exibir um resumo estruturado dos dados mais relevantes de um cidadão
- CitizenSummarySidesheet: Componente para exibir um resumo estruturado dos dados mais relevantes de um cidadão baseado apenas no CNS/CPF
- Suporte a fallback para dados mockados quando a API não está configurada
- TypeScript com tipos exportados
Instalação
npm install @sysvale/citizen-componentsPeer Dependencies
npm install vue@^3.5.13 @sysvale/cuida@^3.147.0Configuração do Projeto
Instalação das dependências
npm installDesenvolvimento
npm run devBuild
O build gera:
- Módulos ES e CommonJS em
dist/ - Tipos TypeScript (
.d.ts) - CSS compilado
Testes
O projeto utiliza Vitest para testes unitários.
Executar testes
npm testDocumentação
A documentação é construída com VitePress.
Desenvolvimento da documentação
npm run docs:devAcesse em: http://localhost:5173
Linting e Formatação
Verificar lint
npm run lintVerificar formatação
npm run prettier:checkFormatar código
npm run formatType Checking
npm run type-checkReleases
O citizen-components utiliza semantic-release para versionamento e publicação automatizados.
Como funciona
Ao mejar um PR na branch main, o CI automaticamente:
- Analisa os commits usando Conventional Commits
- Calcula a próxima versão (patch, minor ou major)
- Atualiza
package.jsonepackage-lock.json - Cria uma release no GitHub com notas geradas automaticamente
- Publica o pacote no NPM
Conventional Commits
Use os seguintes prefixos nos commits:
feat:- Nova funcionalidade (incrementa versão minor)fix:- Correção de bug (incrementa versão patch)feat!:ouBREAKING CHANGE:- Mudança que quebra compatibilidade (incrementa versão major)docs:,chore:,style:,test:- Não geram release
