@fayz-ai/financial 0.0.0-stage → 0.1.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/LICENSE +21 -0
- package/README.md +34 -2
- package/dist/chunk-2XWEZXFT.js +2805 -0
- package/dist/chunk-2XWEZXFT.js.map +1 -0
- package/dist/chunk-4FWWKKZB.js +49 -0
- package/dist/chunk-4FWWKKZB.js.map +1 -0
- package/dist/chunk-4GXBOEI3.js +50 -0
- package/dist/chunk-4GXBOEI3.js.map +1 -0
- package/dist/chunk-4S5GK776.js +31 -0
- package/dist/chunk-4S5GK776.js.map +1 -0
- package/dist/chunk-56NQHYL7.js +20 -0
- package/dist/chunk-56NQHYL7.js.map +1 -0
- package/dist/chunk-7HISDBUG.js +84 -0
- package/dist/chunk-7HISDBUG.js.map +1 -0
- package/dist/chunk-FNXIAIUZ.js +81 -0
- package/dist/chunk-FNXIAIUZ.js.map +1 -0
- package/dist/chunk-HJPUHTI2.js +77 -0
- package/dist/chunk-HJPUHTI2.js.map +1 -0
- package/dist/chunk-IP5YH4S5.js +14 -0
- package/dist/chunk-IP5YH4S5.js.map +1 -0
- package/dist/chunk-J7BWATQU.js +10 -0
- package/dist/chunk-J7BWATQU.js.map +1 -0
- package/dist/chunk-MCSPCXQK.js +190 -0
- package/dist/chunk-MCSPCXQK.js.map +1 -0
- package/dist/chunk-T7WIM2V7.js +34 -0
- package/dist/chunk-T7WIM2V7.js.map +1 -0
- package/dist/chunk-TZZNVPBY.js +9 -0
- package/dist/chunk-TZZNVPBY.js.map +1 -0
- package/dist/chunk-UERJA7QH.js +893 -0
- package/dist/chunk-UERJA7QH.js.map +1 -0
- package/dist/chunk-XVELDCSL.js +11 -0
- package/dist/chunk-XVELDCSL.js.map +1 -0
- package/dist/chunk-YUNLQYOZ.js +26 -0
- package/dist/chunk-YUNLQYOZ.js.map +1 -0
- package/dist/chunk-ZFUQBYBG.js +124 -0
- package/dist/chunk-ZFUQBYBG.js.map +1 -0
- package/dist/data/fx-auto.d.ts +7 -0
- package/dist/data/fx-auto.d.ts.map +1 -0
- package/dist/data/fx-auto.js +3 -0
- package/dist/data/fx-auto.js.map +1 -0
- package/dist/data/idempotency.d.ts +2 -0
- package/dist/data/idempotency.d.ts.map +1 -0
- package/dist/data/idempotency.js +3 -0
- package/dist/data/idempotency.js.map +1 -0
- package/dist/data/mock.d.ts +29 -0
- package/dist/data/mock.d.ts.map +1 -0
- package/dist/data/mock.js +13 -0
- package/dist/data/mock.js.map +1 -0
- package/dist/data/provider.d.ts +265 -0
- package/dist/data/provider.d.ts.map +1 -0
- package/dist/data/provider.js +3 -0
- package/dist/data/provider.js.map +1 -0
- package/dist/data/reconcile.d.ts +37 -0
- package/dist/data/reconcile.d.ts.map +1 -0
- package/dist/data/reconcile.js +5 -0
- package/dist/data/reconcile.js.map +1 -0
- package/dist/data/supabase.d.ts +3 -0
- package/dist/data/supabase.d.ts.map +1 -0
- package/dist/data/supabase.js +16 -0
- package/dist/data/supabase.js.map +1 -0
- package/dist/data/tables.d.ts +39 -0
- package/dist/data/tables.d.ts.map +1 -0
- package/dist/data/tables.js +3 -0
- package/dist/data/tables.js.map +1 -0
- package/dist/domain/account.d.ts +66 -0
- package/dist/domain/account.d.ts.map +1 -0
- package/dist/domain/account.js +3 -0
- package/dist/domain/account.js.map +1 -0
- package/dist/domain/card.d.ts +33 -0
- package/dist/domain/card.d.ts.map +1 -0
- package/dist/domain/card.js +3 -0
- package/dist/domain/card.js.map +1 -0
- package/dist/domain/cash-session.d.ts +80 -0
- package/dist/domain/cash-session.d.ts.map +1 -0
- package/dist/domain/cash-session.js +4 -0
- package/dist/domain/cash-session.js.map +1 -0
- package/dist/domain/chart-of-accounts.d.ts +57 -0
- package/dist/domain/chart-of-accounts.d.ts.map +1 -0
- package/dist/domain/chart-of-accounts.js +114 -0
- package/dist/domain/chart-of-accounts.js.map +1 -0
- package/dist/domain/client-account.d.ts +28 -0
- package/dist/domain/client-account.d.ts.map +1 -0
- package/dist/domain/client-account.js +3 -0
- package/dist/domain/client-account.js.map +1 -0
- package/dist/domain/cnab240.d.ts +182 -0
- package/dist/domain/cnab240.d.ts.map +1 -0
- package/dist/domain/cnab240.js +265 -0
- package/dist/domain/cnab240.js.map +1 -0
- package/dist/domain/commission.d.ts +142 -0
- package/dist/domain/commission.d.ts.map +1 -0
- package/dist/domain/commission.js +3 -0
- package/dist/domain/commission.js.map +1 -0
- package/dist/domain/counterparty.d.ts +13 -0
- package/dist/domain/counterparty.d.ts.map +1 -0
- package/dist/domain/counterparty.js +48 -0
- package/dist/domain/counterparty.js.map +1 -0
- package/dist/domain/gift-card.d.ts +35 -0
- package/dist/domain/gift-card.d.ts.map +1 -0
- package/dist/domain/gift-card.js +3 -0
- package/dist/domain/gift-card.js.map +1 -0
- package/dist/domain/goal.d.ts +26 -0
- package/dist/domain/goal.d.ts.map +1 -0
- package/dist/domain/goal.js +3 -0
- package/dist/domain/goal.js.map +1 -0
- package/dist/domain/invoice.d.ts +228 -0
- package/dist/domain/invoice.d.ts.map +1 -0
- package/dist/domain/invoice.js +4 -0
- package/dist/domain/invoice.js.map +1 -0
- package/dist/domain/money.d.ts +5 -0
- package/dist/domain/money.d.ts.map +1 -0
- package/dist/domain/money.js +3 -0
- package/dist/domain/money.js.map +1 -0
- package/dist/domain/movement.d.ts +114 -0
- package/dist/domain/movement.d.ts.map +1 -0
- package/dist/domain/movement.js +4 -0
- package/dist/domain/movement.js.map +1 -0
- package/dist/domain/nota-fiscal.d.ts +47 -0
- package/dist/domain/nota-fiscal.d.ts.map +1 -0
- package/dist/domain/nota-fiscal.js +3 -0
- package/dist/domain/nota-fiscal.js.map +1 -0
- package/dist/domain/payment-method.d.ts +54 -0
- package/dist/domain/payment-method.d.ts.map +1 -0
- package/dist/domain/payment-method.js +25 -0
- package/dist/domain/payment-method.js.map +1 -0
- package/dist/domain/query.d.ts +9 -0
- package/dist/domain/query.d.ts.map +1 -0
- package/dist/domain/query.js +3 -0
- package/dist/domain/query.js.map +1 -0
- package/dist/domain/reconciliation.d.ts +277 -0
- package/dist/domain/reconciliation.d.ts.map +1 -0
- package/dist/domain/reconciliation.js +4 -0
- package/dist/domain/reconciliation.js.map +1 -0
- package/dist/domain/recurring-bill.d.ts +42 -0
- package/dist/domain/recurring-bill.d.ts.map +1 -0
- package/dist/domain/recurring-bill.js +3 -0
- package/dist/domain/recurring-bill.js.map +1 -0
- package/dist/domain/report.d.ts +92 -0
- package/dist/domain/report.d.ts.map +1 -0
- package/dist/domain/report.js +6 -0
- package/dist/domain/report.js.map +1 -0
- package/dist/domain/statement-match.d.ts +36 -0
- package/dist/domain/statement-match.d.ts.map +1 -0
- package/dist/domain/statement-match.js +3 -0
- package/dist/domain/statement-match.js.map +1 -0
- package/dist/domain/statement.d.ts +75 -0
- package/dist/domain/statement.d.ts.map +1 -0
- package/dist/domain/statement.js +4 -0
- package/dist/domain/statement.js.map +1 -0
- package/dist/domain/transfer.d.ts +29 -0
- package/dist/domain/transfer.d.ts.map +1 -0
- package/dist/domain/transfer.js +3 -0
- package/dist/domain/transfer.js.map +1 -0
- package/dist/store.d.ts +66 -0
- package/dist/store.d.ts.map +1 -0
- package/dist/store.js +287 -0
- package/dist/store.js.map +1 -0
- package/dist/views/zones.d.ts +40 -0
- package/dist/views/zones.d.ts.map +1 -0
- package/dist/views/zones.js +16 -0
- package/dist/views/zones.js.map +1 -0
- package/package.json +49 -3
|
@@ -0,0 +1,265 @@
|
|
|
1
|
+
import type { BankAccount, BankCatalogEntry, CreateBankAccountInput } from '../domain/account';
|
|
2
|
+
import type { CardReceivable, CardTransaction } from '../domain/card';
|
|
3
|
+
import type { CashSession, CashSessionReview, CashSessionSummary, CloseCashSessionInput, OpenCashSessionInput } from '../domain/cash-session';
|
|
4
|
+
import type { ChartOfAccountsNode, CostCenter } from '../domain/chart-of-accounts';
|
|
5
|
+
import type { ClientAccount } from '../domain/client-account';
|
|
6
|
+
import type { CnabContext, RecordCnabBatchInput, SaveCnabPayeeInput, SaveCompanyInput } from '../domain/cnab240';
|
|
7
|
+
import type { CommissionApproveResult, CommissionCatalogs, CommissionEntry, CommissionFunction, CommissionGeneration, CommissionGenerationResult, CommissionPayRunResult, CommissionQuery, CommissionRule, CommissionRuleInput, GenerateCommissionsInput } from '../domain/commission';
|
|
8
|
+
import type { GiftCard, GiftCardQuery, IssueGiftCardsInput } from '../domain/gift-card';
|
|
9
|
+
import type { GoalMonth, SaveGoalInput } from '../domain/goal';
|
|
10
|
+
import type { CancelInvoiceInput, CancelInvoiceItemsInput, CancelInvoiceItemsResult, CancellationReason, InstallmentChargeInput, InvoiceStockEntry, CreateInvoiceInput, CreateInvoiceItemInput, Invoice, InvoiceAttachment, InvoiceItem, InvoiceQuery, ScheduledInstallment } from '../domain/invoice';
|
|
11
|
+
import type { FinancialMovement, MovementQuery, PayMovementInput } from '../domain/movement';
|
|
12
|
+
import type { CreateNotaFiscalInput, NotaFiscal, NotaFiscalQuery } from '../domain/nota-fiscal';
|
|
13
|
+
import type { PaymentMethod, PaymentMethodType } from '../domain/payment-method';
|
|
14
|
+
import type { DateRange, PaginatedResult } from '../domain/query';
|
|
15
|
+
import type { ImportBankTransactionsInput, ImportBankTransactionsResult, ImportedStatementLine, ReconcileAsBillInput, ReconcileAsTransferInput, ReconcileInput, ReconciliationCandidate, ReconciliationTargetQuery, ReconciliationTargetResult, StatementLinesQuery, StatementLinesResult, UnreconciledQuery } from '../domain/reconciliation';
|
|
16
|
+
import type { RecurringBill, RecurringBillDirection, SaveRecurringBillInput } from '../domain/recurring-bill';
|
|
17
|
+
import type { AgingRow, DreQuery, DreRow, FinancialPeriod, FinancialSummary, MarginRow, TrialBalanceRow } from '../domain/report';
|
|
18
|
+
import type { StatementQuery, StatementResult } from '../domain/statement';
|
|
19
|
+
import type { CreateTransferInput, TransferResult } from '../domain/transfer';
|
|
20
|
+
/**
|
|
21
|
+
* The financial repository port. Optional methods are capabilities an adapter may not have; a
|
|
22
|
+
* screen that needs one says so instead of breaking.
|
|
23
|
+
*/
|
|
24
|
+
export interface FinancialDataProvider {
|
|
25
|
+
getInvoices(query: InvoiceQuery): Promise<PaginatedResult<Invoice>>;
|
|
26
|
+
getInvoiceById(id: string): Promise<Invoice | null>;
|
|
27
|
+
getInvoiceItems(invoiceId: string): Promise<InvoiceItem[]>;
|
|
28
|
+
/** The invoice's receipts; empty when it has none. */
|
|
29
|
+
getInvoiceAttachments?(invoiceId: string): Promise<InvoiceAttachment[]>;
|
|
30
|
+
/** Uploads a file to the tenant's private bucket and links it to the invoice. */
|
|
31
|
+
addInvoiceAttachment?(invoiceId: string, file: File): Promise<void>;
|
|
32
|
+
createInvoice(input: CreateInvoiceInput): Promise<Invoice>;
|
|
33
|
+
updateInvoice(id: string, data: Partial<Invoice>): Promise<Invoice>;
|
|
34
|
+
/** Moves an open installment's due date or amount. A paid one is reversed instead, which leaves a trail. */
|
|
35
|
+
updateInstallment?(id: string, data: {
|
|
36
|
+
dueDate?: string;
|
|
37
|
+
amount?: number;
|
|
38
|
+
metadata?: Record<string, unknown>;
|
|
39
|
+
}): Promise<void>;
|
|
40
|
+
/** Replaces the whole schedule of an invoice that received nothing, in one transaction. */
|
|
41
|
+
rescheduleInvoice?(invoiceId: string, installments: ScheduledInstallment[]): Promise<void>;
|
|
42
|
+
/** Replaces the items of an invoice that received nothing, and its total with them. */
|
|
43
|
+
replaceInvoiceItems?(invoiceId: string, items: CreateInvoiceItemInput[]): Promise<void>;
|
|
44
|
+
cancelInvoice(input: CancelInvoiceInput): Promise<void>;
|
|
45
|
+
/** The house's cancellation reasons (seeded with the V1 three on first read). */
|
|
46
|
+
listCancellationReasons?(): Promise<CancellationReason[]>;
|
|
47
|
+
/** Which payable lines brought goods into stock, and how much is still there. */
|
|
48
|
+
getInvoiceStockEntries?(invoiceId: string): Promise<InvoiceStockEntry[]>;
|
|
49
|
+
/** Where stock can be received: the tenant's stock locations. Absent without the stock module. */
|
|
50
|
+
listStockLocations?(): Promise<Array<{
|
|
51
|
+
id: string;
|
|
52
|
+
name: string;
|
|
53
|
+
}>>;
|
|
54
|
+
/** Products a bill line can be linked to, by name. */
|
|
55
|
+
searchStockProducts?(query: string): Promise<Array<{
|
|
56
|
+
id: string;
|
|
57
|
+
name: string;
|
|
58
|
+
}>>;
|
|
59
|
+
/** Currencies this house keeps money in: its own, plus each account's. */
|
|
60
|
+
listCurrencies?(): Promise<string[]>;
|
|
61
|
+
/** Product id → picture, for lines picked from the catalog. */
|
|
62
|
+
getProductPictures?(ids: string[]): Promise<Record<string, string>>;
|
|
63
|
+
/** How much 1 `from` is worth in `to` today, from the tenant's rates; fetched when none is on file. */
|
|
64
|
+
getFxRate?(from: string, to: string): Promise<number | null>;
|
|
65
|
+
/** The sizes/colours of a product, for a receipt that splits by them. */
|
|
66
|
+
listProductVariants?(productId: string): Promise<Array<{
|
|
67
|
+
id: string;
|
|
68
|
+
name: string;
|
|
69
|
+
isDefault: boolean;
|
|
70
|
+
}>>;
|
|
71
|
+
/** What already entered stock for this bill, by line and variant. */
|
|
72
|
+
getInvoiceStockDetails?(invoiceId: string): Promise<Array<{
|
|
73
|
+
itemId: string;
|
|
74
|
+
variantId?: string;
|
|
75
|
+
variantName?: string;
|
|
76
|
+
quantity: number;
|
|
77
|
+
/** Cost in the currency the stock is kept in. */
|
|
78
|
+
unitCost: number;
|
|
79
|
+
currency: string;
|
|
80
|
+
/** What was paid, when it was paid in another currency, and the rate used. */
|
|
81
|
+
sourceUnitCost?: number;
|
|
82
|
+
sourceCurrency?: string;
|
|
83
|
+
fxRate?: number;
|
|
84
|
+
locationName?: string;
|
|
85
|
+
enteredOn?: string;
|
|
86
|
+
}>>;
|
|
87
|
+
/**
|
|
88
|
+
* Receives one payable line into stock as it really arrived: any number of
|
|
89
|
+
* entries (variant + counted quantity), and again later for what comes next.
|
|
90
|
+
* `unitCost` overrides the billed one; `fxRate` only when the bill's currency
|
|
91
|
+
* is not the stock unit's and the day has no rate.
|
|
92
|
+
*/
|
|
93
|
+
receiveInvoiceItemStock?(input: {
|
|
94
|
+
itemId: string;
|
|
95
|
+
locationId: string;
|
|
96
|
+
productId?: string;
|
|
97
|
+
entries: Array<{
|
|
98
|
+
variantId?: string;
|
|
99
|
+
quantity: number;
|
|
100
|
+
}>;
|
|
101
|
+
unitCost?: number;
|
|
102
|
+
fxRate?: number;
|
|
103
|
+
idempotencyKey?: string;
|
|
104
|
+
}): Promise<void>;
|
|
105
|
+
/** Cancel some lines or all of them; what was paid becomes counterparty credit. */
|
|
106
|
+
cancelInvoiceItems?(input: CancelInvoiceItemsInput): Promise<CancelInvoiceItemsResult>;
|
|
107
|
+
/** Interest, fine or discount as a line of the bill itself (V1 parity). */
|
|
108
|
+
addInstallmentCharge?(input: InstallmentChargeInput): Promise<void>;
|
|
109
|
+
/** Credit a supplier holds with us from cancelled bills, minus what was spent. */
|
|
110
|
+
getSupplierCredit?(personId: string): Promise<number>;
|
|
111
|
+
getMovements(query: MovementQuery): Promise<PaginatedResult<FinancialMovement>>;
|
|
112
|
+
payMovement(input: PayMovementInput): Promise<FinancialMovement>;
|
|
113
|
+
/** Reverses a settled payment with a reason; the ledger gets the counter-entry, nothing is deleted. */
|
|
114
|
+
reverseMovement(movementId: string, reason: string): Promise<void>;
|
|
115
|
+
getClientAccount(personId: string): Promise<ClientAccount>;
|
|
116
|
+
/** Sells services today to be delivered later; they land as "to execute" on the client's account. */
|
|
117
|
+
prepayServices?(personId: string, lines: Array<{
|
|
118
|
+
serviceId: string;
|
|
119
|
+
name: string;
|
|
120
|
+
quantity: number;
|
|
121
|
+
unitPrice: number;
|
|
122
|
+
}>): Promise<{
|
|
123
|
+
ok: boolean;
|
|
124
|
+
reason?: string;
|
|
125
|
+
orderId?: string;
|
|
126
|
+
total?: number;
|
|
127
|
+
}>;
|
|
128
|
+
searchSellableServices?(term: string): Promise<Array<{
|
|
129
|
+
id: string;
|
|
130
|
+
name: string;
|
|
131
|
+
price: number;
|
|
132
|
+
}>>;
|
|
133
|
+
getCardReceivables(): Promise<CardReceivable[]>;
|
|
134
|
+
cancelMovement(id: string): Promise<void>;
|
|
135
|
+
createTransfer(input: CreateTransferInput): Promise<TransferResult>;
|
|
136
|
+
getBankAccounts(): Promise<BankAccount[]>;
|
|
137
|
+
/** Server-side lookup across ledger accounts, people and units included. */
|
|
138
|
+
searchFinancialAccounts?(query: string, limit?: number): Promise<BankAccount[]>;
|
|
139
|
+
/** Only accounts with a statement; filtered in the query, since the full chart can overflow a response. */
|
|
140
|
+
getStatementAccounts?(): Promise<BankAccount[]>;
|
|
141
|
+
/** Names accounts by id, inactive ones included: a payment keeps pointing at a closed account. */
|
|
142
|
+
getAccountsByIds?(ids: string[]): Promise<BankAccount[]>;
|
|
143
|
+
createBankAccount(data: CreateBankAccountInput): Promise<BankAccount>;
|
|
144
|
+
updateBankAccount(id: string, data: Partial<BankAccount>): Promise<BankAccount>;
|
|
145
|
+
getCashSessions(bankAccountId?: string): Promise<CashSession[]>;
|
|
146
|
+
getOpenSession(bankAccountId: string): Promise<CashSession | null>;
|
|
147
|
+
openCashSession(input: OpenCashSessionInput): Promise<CashSession>;
|
|
148
|
+
closeCashSession(input: CloseCashSessionInput): Promise<CashSession>;
|
|
149
|
+
getCashSessionSummary(sessionId: string): Promise<CashSessionSummary>;
|
|
150
|
+
getCashSessionReviews?(): Promise<CashSessionReview[]>;
|
|
151
|
+
reviewCashSession?(sessionId: string, verdict: 'approved' | 'rejected', notes?: string): Promise<void>;
|
|
152
|
+
getPaymentMethods(): Promise<PaymentMethod[]>;
|
|
153
|
+
getPaymentMethodTypes(): Promise<PaymentMethodType[]>;
|
|
154
|
+
getChartOfAccounts(): Promise<ChartOfAccountsNode[]>;
|
|
155
|
+
/** Resolves migrated V1 references to current chart-account ids. */
|
|
156
|
+
resolveChartAccountRefs?(refs: string[]): Promise<Record<string, string>>;
|
|
157
|
+
getCostCenters(): Promise<CostCenter[]>;
|
|
158
|
+
getCardTransactions(dateRange?: DateRange): Promise<CardTransaction[]>;
|
|
159
|
+
getStatement(query: StatementQuery): Promise<StatementResult>;
|
|
160
|
+
/** Accrual-basis income statement, with the complete account tree. */
|
|
161
|
+
getDre(query: DreQuery): Promise<DreRow[]>;
|
|
162
|
+
getSummary(dateRange?: DateRange): Promise<FinancialSummary>;
|
|
163
|
+
getPeriods?(): Promise<FinancialPeriod[]>;
|
|
164
|
+
closePeriod?(month: string, notes?: string): Promise<void>;
|
|
165
|
+
reopenPeriod?(month: string, reason: string): Promise<void>;
|
|
166
|
+
getTrialBalance?(competenceMonth?: string): Promise<TrialBalanceRow[]>;
|
|
167
|
+
getAging?(): Promise<AgingRow[]>;
|
|
168
|
+
getMarginByMonth?(): Promise<MarginRow[]>;
|
|
169
|
+
getCommissions?(query: CommissionQuery): Promise<CommissionEntry[]>;
|
|
170
|
+
generateCommissions?(input: GenerateCommissionsInput): Promise<CommissionGenerationResult>;
|
|
171
|
+
getCommissionGenerations?(): Promise<CommissionGeneration[]>;
|
|
172
|
+
/** Computing is not authorizing: approval is the second decision, and the pay run requires it. */
|
|
173
|
+
approveCommissions?(generationId: string): Promise<CommissionApproveResult>;
|
|
174
|
+
/** Groups what was approved per person and raises one payable for each. */
|
|
175
|
+
payRunCommissions?(generationId: string, dueDate?: string): Promise<CommissionPayRunResult>;
|
|
176
|
+
/** Rules come with criteria and functions in one read: simulating the winner needs every rule whole. */
|
|
177
|
+
getCommissionRules?(): Promise<CommissionRule[]>;
|
|
178
|
+
saveCommissionRule?(input: CommissionRuleInput): Promise<string>;
|
|
179
|
+
deleteCommissionRule?(id: string): Promise<void>;
|
|
180
|
+
duplicateCommissionRule?(id: string): Promise<string>;
|
|
181
|
+
/** Replaces the rule's set of functions. */
|
|
182
|
+
saveCommissionFunctions?(ruleId: string, functions: CommissionFunction[]): Promise<void>;
|
|
183
|
+
getCommissionCatalogs?(): Promise<CommissionCatalogs>;
|
|
184
|
+
getGoalYear?(unitId: string, year: number): Promise<GoalMonth[]>;
|
|
185
|
+
saveGoal?(input: SaveGoalInput): Promise<void>;
|
|
186
|
+
deleteGoal?(id: string): Promise<void>;
|
|
187
|
+
giftCardsEnabled?(): Promise<boolean>;
|
|
188
|
+
getGiftCards?(query?: GiftCardQuery): Promise<GiftCard[]>;
|
|
189
|
+
/** Exact code match (case and spacing ignored); null when no card has it. */
|
|
190
|
+
findGiftCardByCode?(code: string): Promise<GiftCard | null>;
|
|
191
|
+
/** One uniform batch; returns the generated codes in order. */
|
|
192
|
+
issueGiftCards?(input: IssueGiftCardsInput): Promise<string[]>;
|
|
193
|
+
activateGiftCard?(id: string): Promise<void>;
|
|
194
|
+
getRecurringBills?(direction: RecurringBillDirection): Promise<RecurringBill[]>;
|
|
195
|
+
/** Forecast occurrences that are not invoices yet. */
|
|
196
|
+
getProvisionedOccurrences?(query: InvoiceQuery): Promise<Invoice[]>;
|
|
197
|
+
/** Turns one occurrence into the real invoice; returns its id. */
|
|
198
|
+
consolidateOccurrence?(occurrenceId: string): Promise<string | null>;
|
|
199
|
+
/** Writes a rule's future due dates as forecasts. */
|
|
200
|
+
provisionRecurringBill?(billId: string): Promise<number>;
|
|
201
|
+
saveRecurringBill?(input: SaveRecurringBillInput): Promise<RecurringBill>;
|
|
202
|
+
updateRecurringBill?(id: string, patch: Partial<Pick<RecurringBill, 'isActive' | 'endsOn'>>): Promise<void>;
|
|
203
|
+
runRecurring?(through?: string): Promise<{
|
|
204
|
+
created: number;
|
|
205
|
+
total: number;
|
|
206
|
+
}>;
|
|
207
|
+
/** Upserts statement lines, idempotent by external id. */
|
|
208
|
+
importBankTransactions?(input: ImportBankTransactionsInput): Promise<ImportBankTransactionsResult>;
|
|
209
|
+
getUnreconciled?(query?: UnreconciledQuery): Promise<ImportedStatementLine[]>;
|
|
210
|
+
/** The imported statement, pending and reconciled, with the screen's filters and page. */
|
|
211
|
+
getStatementLines?(query?: StatementLinesQuery): Promise<StatementLinesResult>;
|
|
212
|
+
suggestReconciliation?(bankMovementId: string): Promise<ReconciliationCandidate[]>;
|
|
213
|
+
/**
|
|
214
|
+
* Free search over the bills this line can settle — open ones (settle) and
|
|
215
|
+
* paid ones whose payment the bank has not proven yet (link only). Without
|
|
216
|
+
* it the link step only offers what the matcher guessed, and a bill paid
|
|
217
|
+
* with a different amount or date can never be chosen.
|
|
218
|
+
*/
|
|
219
|
+
searchReconciliationTargets?(bankMovementId: string, query: ReconciliationTargetQuery): Promise<ReconciliationTargetResult>;
|
|
220
|
+
/** Candidates for a whole page at once, keyed by line id; no entry is offered to two lines. */
|
|
221
|
+
suggestReconciliationBatch?(lines: ImportedStatementLine[]): Promise<Record<string, ReconciliationCandidate[]>>;
|
|
222
|
+
/** Pulls new statement lines from the bank's Open Finance feed («Sincronizar agora»). */
|
|
223
|
+
syncStatements?(input?: {
|
|
224
|
+
bankAccountId?: string;
|
|
225
|
+
}): Promise<StatementSyncResult>;
|
|
226
|
+
reconcileMovement?(input: ReconcileInput): Promise<void>;
|
|
227
|
+
unreconcileMovement?(bankMovementId: string): Promise<void>;
|
|
228
|
+
/** Creates both legs and ties the line to the leg on its own account, so the evidence counts once. */
|
|
229
|
+
reconcileAsTransfer?(input: ReconcileAsTransferInput): Promise<TransferResult>;
|
|
230
|
+
/** Creates the bill the line evidences, pays it against the statement's account and ties the two. */
|
|
231
|
+
reconcileAsBill?(input: ReconcileAsBillInput): Promise<Invoice>;
|
|
232
|
+
getNotas?(query: NotaFiscalQuery): Promise<PaginatedResult<NotaFiscal>>;
|
|
233
|
+
getNotaById?(id: string): Promise<NotaFiscal | null>;
|
|
234
|
+
createNota?(input: CreateNotaFiscalInput): Promise<NotaFiscal>;
|
|
235
|
+
updateNota?(id: string, data: Partial<NotaFiscal>): Promise<NotaFiscal>;
|
|
236
|
+
issueNota?(id: string): Promise<NotaFiscal>;
|
|
237
|
+
/** Reconciles an asynchronous issuer result with the stored document. */
|
|
238
|
+
refreshNota?(id: string): Promise<NotaFiscal>;
|
|
239
|
+
/** A short-lived artifact URL, resolved just in time; signed URLs are not stored. */
|
|
240
|
+
getNotaArtifactUrl?(id: string, kind: 'xml' | 'pdf' | 'cancellation_xml'): Promise<string>;
|
|
241
|
+
cancelNota?(id: string, reason?: string): Promise<NotaFiscal>;
|
|
242
|
+
/** The central bank catalogue; optional while a pool lacks the table. */
|
|
243
|
+
searchBanks?(query: string, limit?: number): Promise<BankCatalogEntry[]>;
|
|
244
|
+
getCnabContext?(input: {
|
|
245
|
+
contactIds: string[];
|
|
246
|
+
bankAccountId: string;
|
|
247
|
+
unitId?: string;
|
|
248
|
+
}): Promise<CnabContext>;
|
|
249
|
+
saveCnabPayees?(payees: SaveCnabPayeeInput[]): Promise<void>;
|
|
250
|
+
saveCompany?(input: SaveCompanyInput): Promise<{
|
|
251
|
+
id: string;
|
|
252
|
+
}>;
|
|
253
|
+
/** Files the generated remittance. The sequence number is the bank's, not the file's. */
|
|
254
|
+
recordCnabBatch?(input: RecordCnabBatchInput): Promise<{
|
|
255
|
+
id: string;
|
|
256
|
+
}>;
|
|
257
|
+
}
|
|
258
|
+
export interface StatementSyncResult {
|
|
259
|
+
/** Lines that were not here before. */
|
|
260
|
+
imported: number;
|
|
261
|
+
/** Accounts whose pull failed; their messages are in `errors`. */
|
|
262
|
+
failed: number;
|
|
263
|
+
errors: string[];
|
|
264
|
+
}
|
|
265
|
+
//# sourceMappingURL=provider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/data/provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"provider.js"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import type { CreateInvoiceInput, InstallmentChargeInput } from '../domain/invoice';
|
|
2
|
+
import type { FinancialMovement, MovementQuery, PayMovementInput } from '../domain/movement';
|
|
3
|
+
import { type ReconcileAdjustment, type ReconcileAsBillInput, type ReconcileLine, type ReconcilePaymentInput } from '../domain/reconciliation';
|
|
4
|
+
/**
|
|
5
|
+
* The provider primitives reconciling runs on. Both adapters lend theirs, so the workflow is written
|
|
6
|
+
* once; `reconcileMovement` here is the raw mark, never the public method, which would re-enter.
|
|
7
|
+
*/
|
|
8
|
+
export interface ReconcileCapableProvider {
|
|
9
|
+
createInvoice(input: CreateInvoiceInput): Promise<{
|
|
10
|
+
id: string;
|
|
11
|
+
}>;
|
|
12
|
+
getMovements(query: MovementQuery): Promise<{
|
|
13
|
+
data: FinancialMovement[];
|
|
14
|
+
}>;
|
|
15
|
+
payMovement(input: PayMovementInput): Promise<FinancialMovement>;
|
|
16
|
+
reconcileMovement(input: {
|
|
17
|
+
bankMovementId: string;
|
|
18
|
+
matchedMovementId?: string;
|
|
19
|
+
}): Promise<void>;
|
|
20
|
+
/** When present, interest/fine/discount become a line of the bill being settled (V1). */
|
|
21
|
+
addInstallmentCharge?(input: InstallmentChargeInput): Promise<void>;
|
|
22
|
+
}
|
|
23
|
+
/** "Post as bill": the bill is born classified, paid, and proven by the line. */
|
|
24
|
+
export declare function runReconcileAsBill(provider: ReconcileCapableProvider, line: ReconcileLine, input: ReconcileAsBillInput): Promise<{
|
|
25
|
+
invoiceId: string;
|
|
26
|
+
}>;
|
|
27
|
+
/** "Link": an open bill is settled by the line; a paid one is only tied, never paid again. */
|
|
28
|
+
export declare function runReconcileLink(provider: ReconcileCapableProvider, line: ReconcileLine, target: {
|
|
29
|
+
movementId: string;
|
|
30
|
+
mode: 'settle' | 'link_only';
|
|
31
|
+
openAmount: number;
|
|
32
|
+
}, options?: {
|
|
33
|
+
payment?: ReconcilePaymentInput;
|
|
34
|
+
adjustments?: ReconcileAdjustment[];
|
|
35
|
+
partial?: boolean;
|
|
36
|
+
}): Promise<void>;
|
|
37
|
+
//# sourceMappingURL=reconcile.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reconcile.d.ts","sourceRoot":"","sources":["../../src/data/reconcile.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAA;AAEnF,OAAO,KAAK,EAAE,iBAAiB,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAC5F,OAAO,EAEL,KAAK,mBAAmB,EAAE,KAAK,oBAAoB,EAAE,KAAK,aAAa,EAAE,KAAK,qBAAqB,EACpG,MAAM,0BAA0B,CAAA;AAEjC;;;GAGG;AACH,MAAM,WAAW,wBAAwB;IACvC,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACjE,YAAY,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC;QAAE,IAAI,EAAE,iBAAiB,EAAE,CAAA;KAAE,CAAC,CAAA;IAC1E,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAA;IAChE,iBAAiB,CAAC,KAAK,EAAE;QAAE,cAAc,EAAE,MAAM,CAAC;QAAC,iBAAiB,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC/F,yFAAyF;IACzF,oBAAoB,CAAC,CAAC,KAAK,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CACpE;AAyBD,iFAAiF;AACjF,wBAAsB,kBAAkB,CACtC,QAAQ,EAAE,wBAAwB,EAClC,IAAI,EAAE,aAAa,EACnB,KAAK,EAAE,oBAAoB,GAC1B,OAAO,CAAC;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC,CAUhC;AAED,8FAA8F;AAC9F,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,wBAAwB,EAClC,IAAI,EAAE,aAAa,EACnB,MAAM,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,QAAQ,GAAG,WAAW,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,EAChF,OAAO,GAAE;IAAE,OAAO,CAAC,EAAE,qBAAqB,CAAC;IAAC,WAAW,CAAC,EAAE,mBAAmB,EAAE,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAO,GACxG,OAAO,CAAC,IAAI,CAAC,CAuDf"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"reconcile.js"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"supabase.d.ts","sourceRoot":"","sources":["../../src/data/supabase.ts"],"names":[],"mappings":"AA0CA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAA;AA8XvD,wBAAgB,+BAA+B,IAAI,qBAAqB,CAihGvE"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export { createSupabaseFinancialProvider } from '../chunk-2XWEZXFT.js';
|
|
2
|
+
import '../chunk-J7BWATQU.js';
|
|
3
|
+
import '../chunk-4S5GK776.js';
|
|
4
|
+
import '../chunk-IP5YH4S5.js';
|
|
5
|
+
import '../chunk-ZFUQBYBG.js';
|
|
6
|
+
import '../chunk-HJPUHTI2.js';
|
|
7
|
+
import '../chunk-YUNLQYOZ.js';
|
|
8
|
+
import '../chunk-7HISDBUG.js';
|
|
9
|
+
import '../chunk-4GXBOEI3.js';
|
|
10
|
+
import '../chunk-56NQHYL7.js';
|
|
11
|
+
import '../chunk-FNXIAIUZ.js';
|
|
12
|
+
import '../chunk-MCSPCXQK.js';
|
|
13
|
+
import '../chunk-XVELDCSL.js';
|
|
14
|
+
import '../chunk-4FWWKKZB.js';
|
|
15
|
+
//# sourceMappingURL=supabase.js.map
|
|
16
|
+
//# sourceMappingURL=supabase.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"supabase.js"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
export declare const T: {
|
|
2
|
+
readonly movements: "plg_financial_movements";
|
|
3
|
+
readonly statementLines: "plg_financial_bank_statement_lines";
|
|
4
|
+
readonly statementAccounts: "v_financial_statement_accounts";
|
|
5
|
+
readonly statementSources: "plg_financial_account_statement_sources";
|
|
6
|
+
readonly allocations: "plg_financial_allocations";
|
|
7
|
+
readonly cashMovements: "v_financial_cash_movements";
|
|
8
|
+
readonly accountBalances: "v_financial_account_balances";
|
|
9
|
+
readonly chartOfAccounts: "plg_financial_chart_of_accounts";
|
|
10
|
+
readonly bankAccounts: "plg_financial_bank_accounts";
|
|
11
|
+
readonly cardBrands: "plg_financial_card_brands";
|
|
12
|
+
readonly costCenters: "plg_financial_cost_centers";
|
|
13
|
+
readonly cashRegisterSessions: "plg_financial_cash_register_sessions";
|
|
14
|
+
readonly paymentMethods: "plg_financial_payment_methods";
|
|
15
|
+
readonly paymentMethodTypes: "plg_financial_payment_method_types";
|
|
16
|
+
readonly notas: "plg_financial_nfe";
|
|
17
|
+
readonly invoiceItems: "plg_financial_invoice_items";
|
|
18
|
+
readonly commissionRules: "plg_financial_commission_rules";
|
|
19
|
+
readonly commissionRuleCriteria: "plg_financial_commission_rule_criteria";
|
|
20
|
+
readonly commissionFunctions: "plg_financial_commission_functions";
|
|
21
|
+
readonly bills: "v_financial_installment_balances";
|
|
22
|
+
readonly invoiceBalances: "v_financial_invoice_balances";
|
|
23
|
+
readonly commissions: "v_financial_commissions";
|
|
24
|
+
readonly commissionGenerations: "plg_financial_commission_generations";
|
|
25
|
+
readonly periods: "plg_financial_periods";
|
|
26
|
+
readonly trialBalance: "v_financial_trial_balance";
|
|
27
|
+
readonly aging: "v_financial_aging";
|
|
28
|
+
readonly agingSummary: "v_financial_aging_summary";
|
|
29
|
+
readonly lineMargin: "v_financial_line_margin";
|
|
30
|
+
readonly marginByMonth: "v_financial_margin_by_month";
|
|
31
|
+
readonly recurringBills: "plg_financial_recurring_bills";
|
|
32
|
+
readonly recurringOccurrences: "plg_financial_recurring_bill_occurrences";
|
|
33
|
+
readonly discountsGiven: "v_financial_discounts_given";
|
|
34
|
+
readonly cnabBatches: "plg_financial_cnab_batches";
|
|
35
|
+
readonly cnabItems: "plg_financial_cnab_items";
|
|
36
|
+
readonly payeeAccounts: "payee_accounts";
|
|
37
|
+
readonly unitCompanies: "v_unit_company_legal_entities";
|
|
38
|
+
};
|
|
39
|
+
//# sourceMappingURL=tables.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tables.d.ts","sourceRoot":"","sources":["../../src/data/tables.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2CJ,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"tables.js"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The canonical account vocabulary, `plg_financial_accounts.kind`: what `allowedAccountTypes`
|
|
3
|
+
* compares and the payment RPCs validate.
|
|
4
|
+
*/
|
|
5
|
+
export type BankAccountType = 'bank' | 'cash_physical' | 'cash_session' | 'card_receivable_credit' | 'card_receivable_debit' | 'card_payable' | 'person' | 'unit' | 'unidentified' | 'system';
|
|
6
|
+
export interface BankAccount {
|
|
7
|
+
id: string;
|
|
8
|
+
name: string;
|
|
9
|
+
accountType: BankAccountType;
|
|
10
|
+
/** COMPE/ISPB number, what boleto, CNAB and PIX use; `bankName` is what people read. */
|
|
11
|
+
bankCode?: string;
|
|
12
|
+
bankName?: string;
|
|
13
|
+
accountNumber?: string;
|
|
14
|
+
agencyNumber?: string;
|
|
15
|
+
/** The holder is rarely the tenant: a partner, a holding, the company the account is in. */
|
|
16
|
+
holderName?: string;
|
|
17
|
+
holderDocument?: string;
|
|
18
|
+
/** Bank-specific CNAB fields, until every bank shares one schema. */
|
|
19
|
+
metadata?: Record<string, unknown>;
|
|
20
|
+
currentBalance: number;
|
|
21
|
+
initialBalance: number;
|
|
22
|
+
creditLimit?: number;
|
|
23
|
+
dueDay?: number;
|
|
24
|
+
closingDay?: number;
|
|
25
|
+
/** The day after closing: a purchase lands on the farthest statement. */
|
|
26
|
+
bestPurchaseDay?: number;
|
|
27
|
+
/** Card brand of a card account; it links the account to the per-brand fees. */
|
|
28
|
+
cardBrandId?: string | null;
|
|
29
|
+
lastFour?: string | null;
|
|
30
|
+
color?: string | null;
|
|
31
|
+
isActive: boolean;
|
|
32
|
+
unitId?: string;
|
|
33
|
+
tenantId: string;
|
|
34
|
+
createdAt: string;
|
|
35
|
+
updatedAt: string;
|
|
36
|
+
}
|
|
37
|
+
export interface CreateBankAccountInput {
|
|
38
|
+
name: string;
|
|
39
|
+
accountType: BankAccountType;
|
|
40
|
+
bankCode?: string;
|
|
41
|
+
bankName?: string;
|
|
42
|
+
accountNumber?: string;
|
|
43
|
+
agencyNumber?: string;
|
|
44
|
+
holderName?: string;
|
|
45
|
+
holderDocument?: string;
|
|
46
|
+
initialBalance?: number;
|
|
47
|
+
creditLimit?: number;
|
|
48
|
+
dueDay?: number;
|
|
49
|
+
closingDay?: number;
|
|
50
|
+
bestPurchaseDay?: number;
|
|
51
|
+
cardBrandId?: string | null;
|
|
52
|
+
unitId?: string;
|
|
53
|
+
}
|
|
54
|
+
/** An institution from the central bank catalogue (`public.banks`). */
|
|
55
|
+
export interface BankCatalogEntry {
|
|
56
|
+
/** Three-digit COMPE, what boleto and CNAB carry; absent for PIX-only institutions. */
|
|
57
|
+
compe?: string;
|
|
58
|
+
ispb: string;
|
|
59
|
+
name: string;
|
|
60
|
+
legalName?: string;
|
|
61
|
+
brandColor?: string;
|
|
62
|
+
logoUrl?: string;
|
|
63
|
+
}
|
|
64
|
+
/** Can this account be named as where money was paid from or landed? */
|
|
65
|
+
export declare function holdsMoney(account: Pick<BankAccount, 'accountType'>): boolean;
|
|
66
|
+
//# sourceMappingURL=account.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"account.d.ts","sourceRoot":"","sources":["../../src/domain/account.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,MAAM,eAAe,GACvB,MAAM,GAAG,eAAe,GAAG,cAAc,GACzC,wBAAwB,GAAG,uBAAuB,GAClD,cAAc,GAAG,QAAQ,GAAG,MAAM,GAAG,cAAc,GAAG,QAAQ,CAAA;AAElE,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,eAAe,CAAA;IAC5B,wFAAwF;IACxF,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,4FAA4F;IAC5F,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,qEAAqE;IACrE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAClC,cAAc,EAAE,MAAM,CAAA;IACtB,cAAc,EAAE,MAAM,CAAA;IACtB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,yEAAyE;IACzE,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,gFAAgF;IAChF,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,QAAQ,EAAE,OAAO,CAAA;IACjB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,eAAe,CAAA;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,uEAAuE;AACvE,MAAM,WAAW,gBAAgB;IAC/B,uFAAuF;IACvF,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAKD,wEAAwE;AACxE,wBAAgB,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE,aAAa,CAAC,GAAG,OAAO,CAE7E"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"account.js"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
export interface CardTransaction {
|
|
2
|
+
id: string;
|
|
3
|
+
movementId: string;
|
|
4
|
+
cardBrand: string;
|
|
5
|
+
totalAmount: number;
|
|
6
|
+
installmentCount: number;
|
|
7
|
+
currentInstallment: number;
|
|
8
|
+
installmentAmount: number;
|
|
9
|
+
expectedDate: string;
|
|
10
|
+
receivedDate?: string;
|
|
11
|
+
fee?: number;
|
|
12
|
+
netAmount?: number;
|
|
13
|
+
status: 'pending' | 'received' | 'cancelled';
|
|
14
|
+
tenantId: string;
|
|
15
|
+
createdAt: string;
|
|
16
|
+
}
|
|
17
|
+
/** A card installment still to settle, with what the acquirer will withhold. */
|
|
18
|
+
export interface CardReceivable {
|
|
19
|
+
movementId: string;
|
|
20
|
+
accountName: string | null;
|
|
21
|
+
cardBrand: string | null;
|
|
22
|
+
cardInstallments: number;
|
|
23
|
+
installmentK: number;
|
|
24
|
+
paymentDate: string;
|
|
25
|
+
gross: number;
|
|
26
|
+
feeRate: number | null;
|
|
27
|
+
fee: number;
|
|
28
|
+
net: number;
|
|
29
|
+
settlementDate: string;
|
|
30
|
+
/** Without a configured fee the projection is the gross, and the screen has to say so. */
|
|
31
|
+
missingFeeConfig: boolean;
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=card.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"card.d.ts","sourceRoot":"","sources":["../../src/domain/card.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAA;IACV,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;IACnB,gBAAgB,EAAE,MAAM,CAAA;IACxB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,iBAAiB,EAAE,MAAM,CAAA;IACzB,YAAY,EAAE,MAAM,CAAA;IACpB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,WAAW,CAAA;IAC5C,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,gFAAgF;AAChF,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,MAAM,CAAA;IAClB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,gBAAgB,EAAE,MAAM,CAAA;IACxB,YAAY,EAAE,MAAM,CAAA;IACpB,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;IACtB,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,EAAE,MAAM,CAAA;IACX,cAAc,EAAE,MAAM,CAAA;IACtB,0FAA0F;IAC1F,gBAAgB,EAAE,OAAO,CAAA;CAC1B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"card.js"}
|