@fayz-ai/plugin-financial 0.23.4 → 0.24.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/AccountPicker.d.ts +1 -1
- package/dist/components/AccountPicker.d.ts.map +1 -1
- package/dist/components/BankPicker.d.ts +1 -1
- package/dist/components/BankPicker.d.ts.map +1 -1
- package/dist/components/CancelInvoiceDialog.d.ts +1 -1
- package/dist/components/CancelInvoiceDialog.d.ts.map +1 -1
- package/dist/components/CashSessionHeaderControl.d.ts +2 -2
- package/dist/components/CashSessionHeaderControl.d.ts.map +1 -1
- package/dist/components/CashSessionReviewModal.d.ts.map +1 -1
- package/dist/components/ChartOfAccountsTree.d.ts.map +1 -1
- package/dist/components/ClientAccountModal.d.ts +2 -7
- package/dist/components/ClientAccountModal.d.ts.map +1 -1
- package/dist/components/CnabRemittanceModal.d.ts +4 -3
- package/dist/components/CnabRemittanceModal.d.ts.map +1 -1
- package/dist/components/CommissionFunctionsDialog.d.ts +2 -2
- package/dist/components/CommissionFunctionsDialog.d.ts.map +1 -1
- package/dist/components/CommissionRuleDialog.d.ts +2 -2
- package/dist/components/CommissionRuleDialog.d.ts.map +1 -1
- package/dist/components/FinancialCounterpartySearchSelect.d.ts +1 -1
- package/dist/components/FinancialCounterpartySearchSelect.d.ts.map +1 -1
- package/dist/components/FinancialSettings.d.ts.map +1 -1
- package/dist/components/InstallmentSource.d.ts +1 -1
- package/dist/components/InstallmentSource.d.ts.map +1 -1
- package/dist/components/PaymentFields.d.ts +3 -1
- package/dist/components/PaymentFields.d.ts.map +1 -1
- package/dist/components/PaymentIcons.d.ts +2 -1
- package/dist/components/PaymentIcons.d.ts.map +1 -1
- package/dist/components/PaymentModal.d.ts +1 -1
- package/dist/components/PaymentModal.d.ts.map +1 -1
- package/dist/components/PaymentReceiptModal.d.ts +2 -2
- package/dist/components/PaymentReceiptModal.d.ts.map +1 -1
- package/dist/components/PersonStatementWidget.d.ts +1 -1
- package/dist/components/PersonStatementWidget.d.ts.map +1 -1
- package/dist/components/ReceivePaymentModal.d.ts +2 -8
- package/dist/components/ReceivePaymentModal.d.ts.map +1 -1
- package/dist/components/ReceiveStockDialog.d.ts +1 -1
- package/dist/components/ReceiveStockDialog.d.ts.map +1 -1
- package/dist/components/ReconcileFlow.d.ts +2 -2
- package/dist/components/ReconcileFlow.d.ts.map +1 -1
- package/dist/components/ReconcileModals.d.ts +1 -1
- package/dist/components/ReconcileModals.d.ts.map +1 -1
- package/dist/components/TransferModal.d.ts.map +1 -1
- package/dist/components/financialZoneWidgets.d.ts +4 -0
- package/dist/components/financialZoneWidgets.d.ts.map +1 -0
- package/dist/context.d.ts +2 -2
- package/dist/context.d.ts.map +1 -1
- package/dist/data/registries.d.ts.map +1 -1
- package/dist/index.d.ts +9 -12
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4349 -8604
- package/dist/index.js.map +1 -1
- package/dist/lib/analytics-cards.d.ts +1 -1
- package/dist/lib/analytics-cards.d.ts.map +1 -1
- package/dist/lib/receipt-reading.d.ts +1 -1
- package/dist/lib/receipt-reading.d.ts.map +1 -1
- package/dist/lib/routes.d.ts +1 -3
- package/dist/lib/routes.d.ts.map +1 -1
- package/dist/lib/settings-only.d.ts.map +1 -1
- package/dist/locales/en.d.ts.map +1 -1
- package/dist/locales/pt-BR.d.ts.map +1 -1
- package/dist/migrations/index.d.ts +4 -0
- package/dist/migrations/index.d.ts.map +1 -1
- package/dist/settings/CardMachinesSettings.d.ts +8 -0
- package/dist/settings/CardMachinesSettings.d.ts.map +1 -0
- package/dist/settings/v1-settings.d.ts +2 -0
- package/dist/settings/v1-settings.d.ts.map +1 -0
- package/dist/views/CashRegistersView.d.ts.map +1 -1
- package/dist/views/ClientAccountPanel.d.ts.map +1 -1
- package/dist/views/CommissionRulesView.d.ts +1 -1
- package/dist/views/CommissionRulesView.d.ts.map +1 -1
- package/dist/views/CommissionsView.d.ts.map +1 -1
- package/dist/views/FinancialPage.d.ts +2 -2
- package/dist/views/FinancialPage.d.ts.map +1 -1
- package/dist/views/GoalsView.d.ts.map +1 -1
- package/dist/views/InvoiceDetailView.d.ts +1 -1
- package/dist/views/InvoiceDetailView.d.ts.map +1 -1
- package/dist/views/InvoiceFormView.d.ts +1 -1
- package/dist/views/InvoiceFormView.d.ts.map +1 -1
- package/dist/views/InvoiceListView.d.ts +2 -1
- package/dist/views/InvoiceListView.d.ts.map +1 -1
- package/dist/views/ReconciliationView.d.ts.map +1 -1
- package/dist/views/RecurringBillsView.d.ts +1 -1
- package/dist/views/RecurringBillsView.d.ts.map +1 -1
- package/dist/views/StatementsView.d.ts.map +1 -1
- package/dist/views/dashboardWidgets.d.ts +2 -2
- package/dist/views/dashboardWidgets.d.ts.map +1 -1
- package/dist/views/document-memory.d.ts.map +1 -1
- package/dist/views/payable-agent.d.ts +1 -1
- package/dist/views/payable-agent.d.ts.map +1 -1
- package/dist/views/payable-lines.d.ts +0 -2
- package/dist/views/payable-lines.d.ts.map +1 -1
- package/package.json +5 -4
- package/dist/data/index.d.ts +0 -4
- package/dist/data/index.d.ts.map +0 -1
- package/dist/data/match-statement.d.ts +0 -34
- package/dist/data/match-statement.d.ts.map +0 -1
- package/dist/data/mock.d.ts +0 -25
- package/dist/data/mock.d.ts.map +0 -1
- package/dist/data/supabase.d.ts +0 -3
- package/dist/data/supabase.d.ts.map +0 -1
- package/dist/data/tables.d.ts +0 -43
- package/dist/data/tables.d.ts.map +0 -1
- package/dist/data/types.d.ts +0 -327
- package/dist/data/types.d.ts.map +0 -1
- package/dist/lib/accounts.d.ts +0 -16
- package/dist/lib/accounts.d.ts.map +0 -1
- package/dist/lib/chart-tree.d.ts +0 -28
- package/dist/lib/chart-tree.d.ts.map +0 -1
- package/dist/lib/cnab240.d.ts +0 -106
- package/dist/lib/cnab240.d.ts.map +0 -1
- package/dist/lib/fx-auto.d.ts +0 -7
- package/dist/lib/fx-auto.d.ts.map +0 -1
- package/dist/lib/idempotency.d.ts +0 -2
- package/dist/lib/idempotency.d.ts.map +0 -1
- package/dist/lib/invoice-list.d.ts +0 -46
- package/dist/lib/invoice-list.d.ts.map +0 -1
- package/dist/lib/payment-how.d.ts +0 -31
- package/dist/lib/payment-how.d.ts.map +0 -1
- package/dist/lib/reconcile.d.ts +0 -151
- package/dist/lib/reconcile.d.ts.map +0 -1
- package/dist/lib/settlements.d.ts +0 -28
- package/dist/lib/settlements.d.ts.map +0 -1
- package/dist/lib/statement-order.d.ts +0 -4
- package/dist/lib/statement-order.d.ts.map +0 -1
- package/dist/lib/tenant.d.ts +0 -3
- package/dist/lib/tenant.d.ts.map +0 -1
- package/dist/store.d.ts +0 -51
- package/dist/store.d.ts.map +0 -1
- package/dist/types.d.ts +0 -1362
- package/dist/types.d.ts.map +0 -1
package/dist/lib/reconcile.d.ts
DELETED
|
@@ -1,151 +0,0 @@
|
|
|
1
|
-
import type { CreateInvoiceInput, FinancialMovement, ReconcileAdjustment, ReconcileAsBillInput, ReconcileBillItemInput, ReconcilePaymentInput, ReconciliationCandidate, TransactionDirection, InstallmentChargeInput } from '../types';
|
|
2
|
-
/** A linha do extrato reduzida ao que a conciliação precisa saber dela. */
|
|
3
|
-
export interface ReconcileLine {
|
|
4
|
-
id: string;
|
|
5
|
-
amount: number;
|
|
6
|
-
date: string;
|
|
7
|
-
direction: TransactionDirection;
|
|
8
|
-
description?: string;
|
|
9
|
-
bankAccountId?: string;
|
|
10
|
-
externalSource: string;
|
|
11
|
-
}
|
|
12
|
-
/** A soma dos itens, arredondada como o dinheiro é arredondado. */
|
|
13
|
-
export declare function sumItems(items: ReconcileBillItemInput[] | undefined): number;
|
|
14
|
-
/**
|
|
15
|
-
* Os itens fecham com o extrato?
|
|
16
|
-
*
|
|
17
|
-
* O extrato é a fonte da verdade do valor — o papel pode estar torto, rasgado
|
|
18
|
-
* ou ser de outra compra. Quando a soma não bate, a resposta certa não é
|
|
19
|
-
* escolher um dos dois em silêncio: é dizer de quanto é a diferença e deixar a
|
|
20
|
-
* pessoa decidir. Devolve a mensagem que bloqueia, ou `null` quando fecha.
|
|
21
|
-
*/
|
|
22
|
-
export declare function itemsMismatch(items: ReconcileBillItemInput[] | undefined, lineAmount: number, fmt: (n: number) => string): string | null;
|
|
23
|
-
/**
|
|
24
|
-
* A conta que a linha do extrato evidencia, pronta para `createInvoice`.
|
|
25
|
-
*
|
|
26
|
-
* A direção NÃO é uma escolha: uma saída no banco é uma conta a pagar e uma
|
|
27
|
-
* entrada é uma conta a receber. O V1 oferece um seletor D/C aqui, e ele só
|
|
28
|
-
* serve para criar um lançamento que contradiz o extrato que o gerou.
|
|
29
|
-
*/
|
|
30
|
-
export declare function buildBillInvoice(line: ReconcileLine, input: ReconcileAsBillInput): CreateInvoiceInput;
|
|
31
|
-
/** O texto que o V1 põe na observação do pagamento nascido de uma conciliação. */
|
|
32
|
-
export declare function reconciliationPaymentNote(line: ReconcileLine): string;
|
|
33
|
-
/**
|
|
34
|
-
* O que `payMovement` recebe quando quem quita é a LINHA DO EXTRATO.
|
|
35
|
-
*
|
|
36
|
-
* O extrato responde as três perguntas do pagamento antes de alguém abrir a
|
|
37
|
-
* boca: QUANDO (a data da linha), ONDE (a conta do extrato) e QUANTO. E a
|
|
38
|
-
* FORMA não é uma quarta pergunta — a forma é o próprio extrato. O V1 grava
|
|
39
|
-
* esse pagamento com `Forma Pgto. N/A` justamente por isso, e o `p_method` da
|
|
40
|
-
* `financial_receive_payment` cai para `other` sozinho quando ninguém manda um.
|
|
41
|
-
*
|
|
42
|
-
* Por isso não existe um passo perguntando forma e conta: seria pedir o que a
|
|
43
|
-
* fonte já respondeu, e toda resposta divergente seria uma invenção sobre um
|
|
44
|
-
* dinheiro que já andou.
|
|
45
|
-
*
|
|
46
|
-
* `payment` continua existindo para quem chama a porta por fora com um
|
|
47
|
-
* pagamento diferente do que o extrato conta — a tela nunca manda um.
|
|
48
|
-
*/
|
|
49
|
-
export declare function buildPayment(line: ReconcileLine, movementId: string, amount: number, payment: ReconcilePaymentInput | undefined, notes?: string): {
|
|
50
|
-
movementId: string;
|
|
51
|
-
amount: number;
|
|
52
|
-
paymentDate: string;
|
|
53
|
-
paymentMethodId: string | undefined;
|
|
54
|
-
paymentMethodTypeId: string | undefined;
|
|
55
|
-
bankAccountId: string | undefined;
|
|
56
|
-
cashSessionId: string | undefined;
|
|
57
|
-
cardBrand: string | undefined;
|
|
58
|
-
cardInstallments: number | undefined;
|
|
59
|
-
notes: string;
|
|
60
|
-
};
|
|
61
|
-
/**
|
|
62
|
-
* Juros e multa custam dinheiro; desconto devolve. A conta do ajuste anda no
|
|
63
|
-
* sentido de quem PAGA a diferença — numa conta a pagar, juros é mais despesa
|
|
64
|
-
* e desconto é uma receita que compensa.
|
|
65
|
-
*/
|
|
66
|
-
export declare function adjustmentDirection(billDirection: TransactionDirection, type: ReconcileAdjustment['type']): TransactionDirection;
|
|
67
|
-
/** O ajuste com sinal: o quanto ele empurra o total para cima (+) ou para baixo (−). */
|
|
68
|
-
export declare function signedAdjustment(adj: ReconcileAdjustment): number;
|
|
69
|
-
/**
|
|
70
|
-
* A diferença que os ajustes precisam explicar entre o extrato e a conta.
|
|
71
|
-
*
|
|
72
|
-
* Positiva = o banco tirou MAIS do que a conta pedia (juros, multa). Negativa =
|
|
73
|
-
* tirou menos (desconto).
|
|
74
|
-
*/
|
|
75
|
-
export declare function adjustmentGap(lineAmount: number, billOpenAmount: number): number;
|
|
76
|
-
/** Os ajustes explicam a diferença? Devolve o que falta dizer, ou `null`. */
|
|
77
|
-
export declare function adjustmentsMismatch(adjustments: ReconcileAdjustment[] | undefined, gap: number, fmt: (n: number) => string): string | null;
|
|
78
|
-
/** Um candidato depois de resolvido: a conta, e o que conciliar com ela FAZ. */
|
|
79
|
-
export interface ResolvedCandidate {
|
|
80
|
-
candidate: ReconciliationCandidate;
|
|
81
|
-
/**
|
|
82
|
-
* `settle` — a conta está em aberto e conciliar a quita.
|
|
83
|
-
* `link_only` — ela já foi paga na mão; conciliar só amarra a linha, porque
|
|
84
|
-
* criar um segundo pagamento dobraria o dinheiro.
|
|
85
|
-
*/
|
|
86
|
-
mode: 'settle' | 'link_only';
|
|
87
|
-
/** Quanto ainda falta pagar (0 numa conta já quitada). */
|
|
88
|
-
openAmount: number;
|
|
89
|
-
}
|
|
90
|
-
/**
|
|
91
|
-
* O V1 separa `link` de `link_paid`, e a diferença é dinheiro: vincular uma
|
|
92
|
-
* conta JÁ PAGA como se estivesse aberta cria um segundo pagamento e o mês
|
|
93
|
-
* fecha com o dobro. A lista aqui diz, por candidato, qual dos dois é.
|
|
94
|
-
*
|
|
95
|
-
* E tira o duplicado: uma conta paga volta da busca duas vezes — a parcela e o
|
|
96
|
-
* pagamento dela —, e duas linhas idênticas na tela são duas chances de
|
|
97
|
-
* escolher a errada.
|
|
98
|
-
*/
|
|
99
|
-
export declare function resolveCandidates(candidates: ReconciliationCandidate[]): ResolvedCandidate[];
|
|
100
|
-
/** O texto do ajuste, para a descrição do lançamento que ele gera. */
|
|
101
|
-
export declare function adjustmentDescription(adj: ReconcileAdjustment): string;
|
|
102
|
-
/** O mínimo do provider que a conciliação usa. Ver `data/types.ts`. */
|
|
103
|
-
export interface ReconcileCapableProvider {
|
|
104
|
-
createInvoice(input: CreateInvoiceInput): Promise<{
|
|
105
|
-
id: string;
|
|
106
|
-
}>;
|
|
107
|
-
getMovements(query: {
|
|
108
|
-
invoiceId?: string;
|
|
109
|
-
}): Promise<{
|
|
110
|
-
data: FinancialMovement[];
|
|
111
|
-
}>;
|
|
112
|
-
payMovement(input: ReturnType<typeof buildPayment> & {
|
|
113
|
-
metadata?: Record<string, unknown>;
|
|
114
|
-
}): Promise<FinancialMovement>;
|
|
115
|
-
reconcileMovement(input: {
|
|
116
|
-
bankMovementId: string;
|
|
117
|
-
matchedMovementId?: string;
|
|
118
|
-
}): Promise<void>;
|
|
119
|
-
/** When present, interest/fine/discount become a line of the bill being settled (V1). */
|
|
120
|
-
addInstallmentCharge?(input: InstallmentChargeInput): Promise<void>;
|
|
121
|
-
}
|
|
122
|
-
/**
|
|
123
|
-
* «Lançar como conta» — a conta nasce classificada, é quitada e a linha do
|
|
124
|
-
* extrato passa a ser a prova dela.
|
|
125
|
-
*
|
|
126
|
-
* Quitar é obrigatório e não é detalhe: com a evidência fora do razão
|
|
127
|
-
* (migration 112), uma linha marcada como conciliada SEM contrapartida deixa o
|
|
128
|
-
* dinheiro no banco e fora do livro, e o extrato para de bater em silêncio.
|
|
129
|
-
*/
|
|
130
|
-
export declare function runReconcileAsBill(provider: ReconcileCapableProvider, line: ReconcileLine, input: ReconcileAsBillInput): Promise<{
|
|
131
|
-
invoiceId: string;
|
|
132
|
-
}>;
|
|
133
|
-
/**
|
|
134
|
-
* «Vincular» — a conta já existe. Em aberto, conciliar a QUITA; já paga,
|
|
135
|
-
* conciliar só amarra.
|
|
136
|
-
*
|
|
137
|
-
* Juros, multa e desconto entram NA PRÓPRIA conta, como no V1: a linha
|
|
138
|
-
* «Juros e multa» é acrescentada e a parcela passa a valer o que o banco
|
|
139
|
-
* cobrou; aí um pagamento só quita tudo. A conta avulsa de juros (sem
|
|
140
|
-
* fornecedor, sem caminho de volta) fica só para o provider que não sabe
|
|
141
|
-
* emendar.
|
|
142
|
-
*/
|
|
143
|
-
export declare function runReconcileLink(provider: ReconcileCapableProvider, line: ReconcileLine, target: {
|
|
144
|
-
movementId: string;
|
|
145
|
-
mode: 'settle' | 'link_only';
|
|
146
|
-
openAmount: number;
|
|
147
|
-
}, options?: {
|
|
148
|
-
payment?: ReconcilePaymentInput;
|
|
149
|
-
adjustments?: ReconcileAdjustment[];
|
|
150
|
-
}): Promise<void>;
|
|
151
|
-
//# sourceMappingURL=reconcile.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"reconcile.d.ts","sourceRoot":"","sources":["../../src/lib/reconcile.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import type { FinancialMovement } from '../types';
|
|
2
|
-
export interface SettlementGrouping {
|
|
3
|
-
/** bill id → the cash events that settled it, oldest first. */
|
|
4
|
-
byBillId: Map<string, FinancialMovement[]>;
|
|
5
|
-
/** Payments that name no bill we hold — surfaced, never silently dropped. */
|
|
6
|
-
unattributed: FinancialMovement[];
|
|
7
|
-
}
|
|
8
|
-
/**
|
|
9
|
-
* Which payments settled which bill.
|
|
10
|
-
*
|
|
11
|
-
* `settles_movement_id` (migration 014) is the answer whenever it is present.
|
|
12
|
-
* Before 014 the pairing had to be re-derived from (invoice_id,
|
|
13
|
-
* installment_number), and that derivation mis-attributes money: Artorius
|
|
14
|
-
* invoice 176440 carries two payments both stamped installment 1 while settling
|
|
15
|
-
* bills #1 and #2. So the derivation runs ONLY for payments carrying no link —
|
|
16
|
-
* it never overrides one.
|
|
17
|
-
*
|
|
18
|
-
* A payment pointing at a bill we did not load comes back as `unattributed`
|
|
19
|
-
* instead of disappearing: money that moved must stay visible on the schedule.
|
|
20
|
-
*/
|
|
21
|
-
export declare function groupPaymentsByBill(bills: FinancialMovement[], payments: FinancialMovement[]): SettlementGrouping;
|
|
22
|
-
/**
|
|
23
|
-
* The payments an "Estornar" may still target: not a reversal itself and not
|
|
24
|
-
* already reversed. Picking "the last payment" instead hit the previous
|
|
25
|
-
* reversal, so each click reversed the reversal and the live payment stayed.
|
|
26
|
-
*/
|
|
27
|
-
export declare function reversiblePayments(payments: FinancialMovement[]): FinancialMovement[];
|
|
28
|
-
//# sourceMappingURL=settlements.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"settlements.d.ts","sourceRoot":"","sources":["../../src/lib/settlements.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAA;AAEjD,MAAM,WAAW,kBAAkB;IACjC,+DAA+D;IAC/D,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,iBAAiB,EAAE,CAAC,CAAA;IAC1C,6EAA6E;IAC7E,YAAY,EAAE,iBAAiB,EAAE,CAAA;CAClC;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,iBAAiB,EAAE,EAC1B,QAAQ,EAAE,iBAAiB,EAAE,GAC5B,kBAAkB,CAoBpB;AAKD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,iBAAiB,EAAE,GAAG,iBAAiB,EAAE,CAGrF"}
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import type { StatementEntry } from '../types';
|
|
2
|
-
/** Keeps ledger balances intact while presenting the newest cash events first. */
|
|
3
|
-
export declare function newestStatementEntriesFirst(entries: StatementEntry[]): StatementEntry[];
|
|
4
|
-
//# sourceMappingURL=statement-order.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"statement-order.d.ts","sourceRoot":"","sources":["../../src/lib/statement-order.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AAO9C,kFAAkF;AAClF,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,cAAc,EAAE,oBAoBpE"}
|
package/dist/lib/tenant.d.ts
DELETED
package/dist/lib/tenant.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tenant.d.ts","sourceRoot":"","sources":["../../src/lib/tenant.ts"],"names":[],"mappings":"AACA,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,QAAW;AACtE,wBAAgB,oBAAoB,IAAI,MAAM,GAAG,SAAS,CAAa"}
|
package/dist/store.d.ts
DELETED
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
import { type StoreApi } from 'zustand/vanilla';
|
|
2
|
-
import type { FinancialDataProvider } from './data/types';
|
|
3
|
-
import type { Invoice, FinancialMovement, BankAccount, CashSession, PaymentMethod, PaymentMethodType, CardTransaction, FinancialSummary, StatementResult, InvoiceQuery, StatementQuery, CreateInvoiceInput, PayMovementInput, CancelInvoiceInput, CreateTransferInput, OpenCashSessionInput, CloseCashSessionInput, DateRange, CommissionEntry, CommissionQuery, GenerateCommissionsInput, CommissionGenerationResult } from './types';
|
|
4
|
-
export interface FinancialUIState {
|
|
5
|
-
invoices: Invoice[];
|
|
6
|
-
invoicesTotal: number;
|
|
7
|
-
invoicesLoading: boolean;
|
|
8
|
-
invoiceQuery: InvoiceQuery;
|
|
9
|
-
movements: FinancialMovement[];
|
|
10
|
-
movementsTotal: number;
|
|
11
|
-
movementsLoading: boolean;
|
|
12
|
-
bankAccounts: BankAccount[];
|
|
13
|
-
bankAccountsLoading: boolean;
|
|
14
|
-
commissions: CommissionEntry[];
|
|
15
|
-
commissionsLoading: boolean;
|
|
16
|
-
cashSessions: CashSession[];
|
|
17
|
-
cashSessionsLoading: boolean;
|
|
18
|
-
/** The abertura/fechamento dialog lives in the SHELL header (CashSessionHeaderControl),
|
|
19
|
-
* outside any page's tree — a page button that wants to open "the same modal"
|
|
20
|
-
* has to flip a flag both sides share, not local state of its own. */
|
|
21
|
-
cashSessionModalOpen: boolean;
|
|
22
|
-
paymentMethods: PaymentMethod[];
|
|
23
|
-
paymentMethodTypes: PaymentMethodType[];
|
|
24
|
-
summary: FinancialSummary | null;
|
|
25
|
-
summaryLoading: boolean;
|
|
26
|
-
statement: StatementResult | null;
|
|
27
|
-
statementLoading: boolean;
|
|
28
|
-
statementQuery: StatementQuery | null;
|
|
29
|
-
cardTransactions: CardTransaction[];
|
|
30
|
-
cardsLoading: boolean;
|
|
31
|
-
fetchSummary(dateRange?: DateRange): Promise<void>;
|
|
32
|
-
fetchInvoices(query: InvoiceQuery): Promise<void>;
|
|
33
|
-
fetchBankAccounts(): Promise<void>;
|
|
34
|
-
fetchCashSessions(bankAccountId?: string): Promise<void>;
|
|
35
|
-
fetchCommissions(query: CommissionQuery): Promise<void>;
|
|
36
|
-
generateCommissions(input: GenerateCommissionsInput): Promise<CommissionGenerationResult | null>;
|
|
37
|
-
fetchPaymentMethods(): Promise<void>;
|
|
38
|
-
fetchStatement(query: StatementQuery): Promise<void>;
|
|
39
|
-
fetchCardTransactions(dateRange?: DateRange): Promise<void>;
|
|
40
|
-
createInvoice(input: CreateInvoiceInput): Promise<Invoice>;
|
|
41
|
-
/** FAY-1225 "log money in a few taps": one call → the right provider plumbing + full surface refresh. */
|
|
42
|
-
payMovement(input: PayMovementInput): Promise<void>;
|
|
43
|
-
reverseMovement(movementId: string, reason: string): Promise<void>;
|
|
44
|
-
createTransfer(input: CreateTransferInput): Promise<void>;
|
|
45
|
-
cancelInvoice(input: CancelInvoiceInput): Promise<void>;
|
|
46
|
-
openCashSession(input: OpenCashSessionInput): Promise<CashSession>;
|
|
47
|
-
closeCashSession(input: CloseCashSessionInput): Promise<CashSession>;
|
|
48
|
-
setCashSessionModalOpen(open: boolean): void;
|
|
49
|
-
}
|
|
50
|
-
export declare function createFinancialStore(provider: FinancialDataProvider): StoreApi<FinancialUIState>;
|
|
51
|
-
//# sourceMappingURL=store.d.ts.map
|
package/dist/store.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"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"}
|