Files
openmonetis/components/caixa-de-entrada/types.ts
Felipe Coutinho c0fb11f89c refactor(inbox): remove process dialog e integra fluxo ao lancamento-dialog
- Remove process-dialog.tsx (componente não mais utilizado)
- Simplifica inbox-page.tsx removendo estados e lógica do process dialog
- Atualiza inbox-details-dialog para usar lancamento-dialog diretamente
- Adiciona suporte a dados iniciais do inbox no lancamento-dialog
- Move campos de metadata da inbox para o form de lançamento
- Remove campo currency não utilizado do schema
- Atualiza actions e data com melhor tratamento de erros
2026-01-26 13:31:37 +00:00

49 lines
1.1 KiB
TypeScript

/**
* Types for Caixa de Entrada (Inbox) feature
*/
import type { SelectOption as LancamentoSelectOption } from "@/components/lancamentos/types";
export interface InboxItem {
id: string;
sourceApp: string;
sourceAppName: string | null;
deviceId: string | null;
originalTitle: string | null;
originalText: string;
notificationTimestamp: Date;
parsedName: string | null;
parsedAmount: string | null;
parsedDate: Date | null;
parsedTransactionType: string | null;
status: string;
lancamentoId: string | null;
processedAt: Date | null;
discardedAt: Date | null;
discardReason: string | null;
createdAt: Date;
updatedAt: Date;
}
export interface ProcessInboxInput {
inboxItemId: string;
name: string;
amount: number;
purchaseDate: string;
transactionType: "Despesa" | "Receita";
condition: string;
paymentMethod: string;
categoriaId: string;
contaId?: string;
cartaoId?: string;
note?: string;
}
export interface DiscardInboxInput {
inboxItemId: string;
reason?: string;
}
// Re-export the lancamentos SelectOption for use in inbox components
export type SelectOption = LancamentoSelectOption;