72 Commits

Author SHA1 Message Date
Felipe Coutinho
a09942e3d8 chore(release): preparar changelog da versão 2.3.1
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-03 22:46:47 +00:00
Felipe Coutinho
ba369e8a83 chore(infra): atualizar build, docker e tooling 2026-04-03 18:10:16 +00:00
Felipe Coutinho
d01bc8a669 fix(docker): remove chown recursivo da imagem final 2026-04-01 17:15:06 +00:00
Felipe Coutinho
e9a2ab1782 chore(release): publicar versão 2.2.0
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-01 14:18:55 +00:00
Felipe Coutinho
cad41680eb feat(pdf): adiciona suporte a visualização de PDF nos anexos
Inclui `pdfjs-dist` como dependência e configura o script `postinstall`
para copiar o web worker necessário para `public/pdf.worker.min.mjs`.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-01 14:13:39 +00:00
Felipe Coutinho
65b1506d75 chore(release): publicar versão 2.1.2
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-30 18:47:23 +00:00
Felipe Coutinho
f2b9b16896 chore(package): renomear scripts e remover dependências Vercel
Renomeia mockup→db:seed, db:enableExtensions→db:extensions e remove
o script dev-env. Remove @vercel/analytics e @vercel/speed-insights.
Atualiza README com o novo nome do script.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-29 13:44:13 +00:00
Felipe Coutinho
9b76db4ce9 chore(deps): adicionar AWS SDK S3 e atualizar dependências
Adiciona @aws-sdk/client-s3 e @aws-sdk/s3-request-presigner para
suporte a anexos; atualiza ai-sdk, better-auth, drizzle-orm, recharts,
biome e typescript para versões mais recentes.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-28 15:13:30 +00:00
Felipe Coutinho
32da4f906e fix(transactions): avoid crypto.randomUUID on initial load 2026-03-26 14:18:47 +00:00
Felipe Coutinho
9f45fd1ecd chore(release): publish 2.0.2 2026-03-25 00:31:16 +00:00
Felipe Coutinho
da32b41bbc chore(tooling): add mockup helper and backup fixes 2026-03-25 00:30:46 +00:00
Felipe Coutinho
19a1b1e943 chore(release): preparar versao 2.0.1 2026-03-21 19:31:53 +00:00
Felipe Coutinho
80de9501f6 fix: move proxy.ts para src/ e atualiza dependências
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-21 17:52:20 +00:00
Felipe Coutinho
a20fe255f3 feat: importação de extratos OFX/XLS com memória de categorias
Adiciona fluxo completo de importação de extratos bancários:
- Upload e parsing de arquivos OFX e XLS/XLSX
- Tela de revisão com virtualização (@tanstack/react-virtual)
- Detecção automática de categoria por histórico de uso
- Deduplicação por FITID (OFX) e importBatchId
- Tabela `import_category_mappings` para persistir mapeamentos
- Botão de acesso ao fluxo na tabela de transações

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-21 14:04:30 +00:00
Felipe Coutinho
3e0ce15258 chore: atualiza setup, backup e toolchain 2026-03-20 18:43:03 +00:00
Felipe Coutinho
fd702276d8 chore(deps): atualiza dependências e lockfile 2026-03-17 17:07:19 +00:00
Felipe Coutinho
e84becd1cd feat: aprimora o fluxo de pagamento de faturas e boletos 2026-03-15 23:23:42 +00:00
Felipe Coutinho
b0fbb1062a refactor(core): move app para src e padroniza estrutura 2026-03-12 19:22:50 +00:00
Felipe Coutinho
d92e70f1b9 chore(release): remove legados e fecha versao 2.0.0 2026-03-09 17:15:04 +00:00
Felipe Coutinho
9a5e9161db chore: atualiza a versao e dependencias do projeto 2026-03-06 14:13:56 +00:00
Felipe Coutinho
3d3a9e1414 feat(auth): implementar passkeys e gerenciamento em ajustes 2026-03-02 01:33:05 +00:00
Felipe Coutinho
b2ca48f0fe chore: atualiza changelog e versão para 1.7.5 2026-02-28 15:38:23 +00:00
Felipe Coutinho
15b2ee18e1 feat: bulk delete com escopo para mesma série + recorrente só consome limite após data
Aproveitamento parcial da PR #18 (fechada):

- Bulk delete: quando todos os selecionados pertencem à mesma série
  (parcelado/recorrente), abre dialog de escopo com 3 opções ao invés
  de deletar direto
- Recorrente no cartão: despesa recorrente só consome limite quando
  purchaseDate <= current_date (cartões ativos, inativos e relatório)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-28 13:54:08 +00:00
Felipe Coutinho
02814994f1 chore: versão 1.7.3 e changelog
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-27 15:24:49 +00:00
Felipe Coutinho
283dfd70a8 chore: versão 1.7.2 e changelog do code audit
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-26 17:24:16 +00:00
Felipe Coutinho
c7eabc513e chore: atualizar dependências e biome schema
Bumps: @ai-sdk/* 3.0.47, ai 6.0.101, better-auth 1.4.19, jspdf 4.2.0,
pg 8.19.0, react-day-picker 9.14.0, tailwind-merge 3.5.0,
@biomejs/biome 2.4.4, tailwindcss 4.2.1, @types/node 25.3.1.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-26 17:19:18 +00:00
Felipe Coutinho
9cb6593186 feat: changelog como página própria, versão 1.7.1
- Remove aba Changelog de Ajustes; cria página em /changelog
- Adiciona link para /changelog no menu do usuário com versão ao lado
- Data do changelog formatada como dd/mm/aaaa
- Limpa formatação ** do CHANGELOG.md
- Bump de versão para 1.7.1

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-24 16:07:34 +00:00
Felipe Coutinho
1b90be6b54 feat: topbar de navegação como experimento de UI (v1.7.0)
- Substitui header fixo por topbar com backdrop blur e navegação agrupada em 5 seções
- Adiciona FerramentasDropdown consolidando calculadora e modo privacidade
- NotificationBell expandida com orçamentos e pré-lançamentos
- Remove logout-button, header-dashboard e privacy-mode-toggle como componentes separados
- Logo refatorado com variante compact; topbar com links em lowercase
- Adiciona dependência radix-ui ^1.4.3
- Atualiza CHANGELOG para v1.7.0

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-24 15:43:14 +00:00
Guilherme Bano
94f6b0a986 Correção de integração com o resend 2026-02-21 21:28:36 +00:00
Guilherme Bano
7b3979ad8e Feito uma correção de bug onde o diálogo principal de nova conta fechava inesperadamente 2026-02-21 21:28:36 +00:00
Guilherme Bano
9b78f839bf Adicionado aba de estabelecimentos e feita ajuste de interface. Detalhes adicionados no CHANGELOG.md 2026-02-21 21:28:36 +00:00
Guilherme Bano
ffde55f589 ajuste de layout mobile, melhorias e criação de novas funções. Detalhes adicionados no CHANGELOG.md 2026-02-21 21:28:36 +00:00
Felipe Coutinho
31fe752b7d feat(v1.5.3): status de pagamento no painel do pagador + SEO landing + WebP
- Card de Status de Pagamento com totais pagos/pendentes e lista de boletos individuais
- Validação obrigatória de categoria/conta/cartão no dialog de lançamento (client + server)
- SEO completo na landing: Open Graph, Twitter Card, JSON-LD, sitemap.xml, robots.txt
- Imagens convertidas de PNG para WebP (performance)
- HTML lang corrigido para pt-BR; template de título dinâmico

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-21 17:48:52 +00:00
Felipe Coutinho
5638ccc36a chore: bump version para 1.5.2
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-16 20:51:50 +00:00
Felipe Coutinho
f953a1d124 chore: bump version para 1.5.1
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-16 17:25:44 +00:00
Felipe Coutinho
a1347aed28 feat(v1.5.1): renomeação OpenSheets → OpenMonetis + multi-domínio
Renomeia o projeto em ~40 arquivos (package.json, manifests, layouts,
componentes, server actions, emails, Docker, docs, landing page).
Adiciona suporte a multi-domínio via PUBLIC_DOMAIN onde o domínio
público serve apenas a landing page sem botões de auth.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-16 17:16:50 +00:00
Felipe Coutinho
89366e5c8b chore: bump version para 1.5.0
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15 21:38:32 +00:00
Felipe Coutinho
b9f788312c chore: atualizações de dependências, lint fixes e ajustes menores
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15 21:35:39 +00:00
Felipe Coutinho
4b442a907a feat(v1.4.1): tabs de histórico, logo matching e melhorias nos pré-lançamentos
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15 00:06:54 +00:00
Felipe Coutinho
f50261208a feat(v1.4.0): design system semântico, correções de revalidação e melhorias de UX
- Adicionar tokens semânticos de estado (success, warning, info) no globals.css
- Migrar ~60+ componentes de cores hardcoded do Tailwind para tokens semânticos
- Unificar 3 arrays duplicados de cores de categorias em importação única
- Corrigir widgets de boleto/fatura que não atualizavam após pagamento
  (actions de fatura e antecipação não invalidavam cache do dashboard)
- Corrigir scroll em listas Popover+Command (modal prop)
- Adicionar link "detalhes" no card de orçamento para página da categoria
- Adicionar indicadores de tendência coloridos nos cards de métricas
- Estender cores de chart de 6 para 10
- Normalizar dark mode e remover tokens não utilizados

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-07 15:14:59 +00:00
Felipe Coutinho
4152a27f4d refactor(ui): unificar páginas ativas/arquivadas com tabs (v1.3.1)
Substitui rotas separadas de inativos/arquivados por tabs inline em
Cartões, Contas e Anotações, seguindo o padrão já usado em Categorias.
Remove sub-links da sidebar e padroniza nomenclatura para "Arquivados".

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 13:20:15 +00:00
Felipe Coutinho
6f5c41a4cf perf: otimizar dashboard com indexes, cache e consolidação de queries (v1.3.0)
- Adicionar indexes compostos em lancamentos para queries frequentes
- Eliminar ~20 JOINs com pagadores via helper cacheado getAdminPagadorId()
- Consolidar queries: income-expense-balance (12→1), payment-status (2→1), categories (4→2)
- Adicionar cache cross-request via unstable_cache com tag-based invalidation
- Limitar scan de métricas a 24 meses
- Deduplicar auth session por request via React.cache()

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 12:24:15 +00:00
Felipe Coutinho
757626c468 refactor: optimize codebase for React 19 compiler (v1.2.6)
React 19 compiler auto-optimizes memoization, making manual hooks unnecessary.

Changes:
- Remove ~60 useCallback/useMemo across 16 files
- Remove React.memo from nav-button and return-button
- Simplify hydration with useSyncExternalStore (privacy-provider)
- Add CHANGELOG.md for version tracking

No functional changes - internal optimization only.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-04 13:14:10 +00:00
Felipe Coutinho
3f77dcf5d3 feat: adicionar versão na sidebar e atualizar documentação
- Exibir versão (v1.2.5) ao lado do logo na sidebar
- Adicionar link do repositório Companion na aba de configurações
- Atualizar README com documentação completa do OpenSheets Companion
- Atualizar versões das dependências e estrutura do banco de dados
- Adicionar logo do Creditas
- Remover fontes não utilizadas
- Atualizar logo_text.png

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 21:49:26 +00:00
Felipe Coutinho
79a2899bf2 chore: atualizar dependências e aplicar formatação
- Atualizar package.json e pnpm-lock.yaml
- Aplicar formatação Biome em widgets do dashboard
- Pequenos ajustes de estilo em componentes diversos

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 14:53:44 +00:00
Felipe Coutinho
a7f63fb77a refactor: migrate from ESLint to Biome and extract SQL queries to data.ts
- Replace ESLint with Biome for linting and formatting
- Configure Biome with tabs, double quotes, and organized imports
- Move all SQL/Drizzle queries from page.tsx files to data.ts files
- Create new data.ts files for: ajustes, dashboard, relatorios/categorias
- Update existing data.ts files: extrato, fatura (add lancamentos queries)
- Remove all drizzle-orm imports from page.tsx files
- Update README.md with new tooling info

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-27 13:15:37 +00:00
Felipe Coutinho
741e2864b4 chore(deps): adiciona @dnd-kit para drag-and-drop 2026-01-20 16:36:53 +00:00
Felipe Coutinho
7670b26a8c chore(deps): atualizar dependências
- @ai-sdk/anthropic: 3.0.15 → 3.0.16
- @openrouter/ai-sdk-provider: 1.5.4 → 2.0.0
- ai: 6.0.39 → 6.0.42
- better-auth: 1.4.10 → 1.4.16
- motion: 12.26.2 → 12.27.3
- next: 16.1.1 → 16.1.4
- pg: 8.16.3 → 8.17.1
- resend: 6.7.0 → 6.8.0
- @types/node: 25.0.3 → 25.0.9
- @types/react: 19.2.7 → 19.2.8
- eslint-config-next: 16.1.1 → 16.1.4

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-20 13:43:17 +00:00
Felipe Coutinho
af36e5474d chore(deps): atualizar AI SDK, motion e baseline-browser-mapping
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-17 16:56:17 +00:00
Felipe Coutinho
6a45a5110d feat: implementar melhorias em importação, compartilhamento e contas inativas
- Corrigir cálculo de valor na importação de lançamentos parcelados
    - Exibir valor total (parcela × quantidade) ao invés do valor da parcela individual
    - Permite recriar parcelamentos importados com valor correto

  - Permitir que usuários compartilhados se descompartilhem de pagadores
    - Adicionar componente PagadorLeaveShareCard na aba Perfil
    - Usuário filho pode sair do compartilhamento sem precisar do usuário pai
    - Manter autorização bidirecionada na action de remoção de share

  - Implementar submenu "Inativos" para contas bancárias
    - Criar página /contas/inativos seguindo padrão de cartões
    - Filtrar contas ativas e inativas em páginas separadas
    - Adicionar ícone e navegação no sidebar
2026-01-11 22:44:20 +00:00