@fayz-ai/plugin-financial 0.1.2 → 0.1.5
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/dist/FinancialContext.d.ts +2 -0
- package/dist/FinancialContext.d.ts.map +1 -1
- package/dist/FinancialPage.d.ts.map +1 -1
- package/dist/components/PaymentModal.d.ts.map +1 -1
- package/dist/components/PersonStatementWidget.d.ts +18 -0
- package/dist/components/PersonStatementWidget.d.ts.map +1 -0
- package/dist/components/TransferModal.d.ts +7 -0
- package/dist/components/TransferModal.d.ts.map +1 -0
- package/dist/contract.test.d.ts +2 -0
- package/dist/contract.test.d.ts.map +1 -0
- package/dist/data/capability.test.d.ts +2 -0
- package/dist/data/capability.test.d.ts.map +1 -0
- package/dist/data/mock.d.ts.map +1 -1
- package/dist/data/supabase.d.ts.map +1 -1
- package/dist/data/types.d.ts +13 -2
- package/dist/data/types.d.ts.map +1 -1
- package/dist/index.cjs +1529 -263
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1437 -171
- package/dist/index.js.map +1 -1
- package/dist/locales/en.d.ts.map +1 -1
- package/dist/locales/pt-BR.d.ts.map +1 -1
- package/dist/registries.d.ts.map +1 -1
- package/dist/store.d.ts +4 -2
- package/dist/store.d.ts.map +1 -1
- package/dist/types.d.ts +111 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/views/InvoiceDetailView.d.ts +3 -1
- package/dist/views/InvoiceDetailView.d.ts.map +1 -1
- package/dist/views/InvoiceFormView.d.ts.map +1 -1
- package/dist/views/PayablesView.d.ts +5 -1
- package/dist/views/PayablesView.d.ts.map +1 -1
- package/dist/views/ReceivablesView.d.ts +5 -1
- package/dist/views/ReceivablesView.d.ts.map +1 -1
- package/dist/views/ReconciliationView.d.ts +3 -0
- package/dist/views/ReconciliationView.d.ts.map +1 -0
- package/dist/views/StatementsView.d.ts +3 -1
- package/dist/views/StatementsView.d.ts.map +1 -1
- package/dist/views/navReferrer.d.ts +5 -0
- package/dist/views/navReferrer.d.ts.map +1 -0
- package/package.json +8 -5
- package/src/FinancialContext.tsx +2 -0
- package/src/FinancialPage.tsx +32 -17
- package/src/components/PaymentModal.tsx +58 -11
- package/src/components/PersonStatementWidget.tsx +133 -0
- package/src/components/TransferModal.tsx +150 -0
- package/src/contract.test.ts +58 -0
- package/src/data/capability.test.ts +90 -0
- package/src/data/mock.ts +265 -52
- package/src/data/supabase.ts +359 -30
- package/src/data/types.ts +22 -3
- package/src/index.ts +28 -2
- package/src/locales/en.ts +76 -0
- package/src/locales/pt-BR.ts +76 -0
- package/src/migrations/006_extract_fee_amount.sql +20 -0
- package/src/migrations/006_rls_policies.sql +37 -0
- package/src/migrations/007_reconciliation.sql +32 -0
- package/src/migrations/008_split_payment_movements.sql +29 -0
- package/src/registries.ts +3 -1
- package/src/store.ts +27 -7
- package/src/types.ts +126 -1
- package/src/views/InvoiceDetailView.tsx +70 -51
- package/src/views/InvoiceFormView.tsx +55 -20
- package/src/views/PayablesView.tsx +13 -2
- package/src/views/ReceivablesView.tsx +13 -2
- package/src/views/ReconciliationView.tsx +211 -0
- package/src/views/StatementsView.tsx +241 -29
- package/src/views/navReferrer.ts +24 -0
package/dist/locales/en.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"en.d.ts","sourceRoot":"","sources":["../../src/locales/en.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"en.d.ts","sourceRoot":"","sources":["../../src/locales/en.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAqZrC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pt-BR.d.ts","sourceRoot":"","sources":["../../src/locales/pt-BR.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"pt-BR.d.ts","sourceRoot":"","sources":["../../src/locales/pt-BR.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAqZvC,CAAA"}
|
package/dist/registries.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registries.d.ts","sourceRoot":"","sources":["../src/registries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"registries.d.ts","sourceRoot":"","sources":["../src/registries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AAuMtD,eAAO,MAAM,mBAAmB,EAAE,iBAAiB,EA2GlD,CAAA"}
|
package/dist/store.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type StoreApi } from 'zustand/vanilla';
|
|
2
2
|
import type { FinancialDataProvider } from './data/types';
|
|
3
|
-
import type { Invoice, FinancialMovement, BankAccount, CashSession, PaymentMethod, PaymentMethodType, CardTransaction, FinancialSummary,
|
|
3
|
+
import type { Invoice, FinancialMovement, BankAccount, CashSession, PaymentMethod, PaymentMethodType, CardTransaction, FinancialSummary, StatementResult, InvoiceQuery, StatementQuery, CreateInvoiceInput, PayMovementInput, CreateTransferInput, OpenCashSessionInput, CloseCashSessionInput, DateRange } from './types';
|
|
4
4
|
export interface FinancialUIState {
|
|
5
5
|
invoices: Invoice[];
|
|
6
6
|
invoicesTotal: number;
|
|
@@ -17,8 +17,9 @@ export interface FinancialUIState {
|
|
|
17
17
|
paymentMethodTypes: PaymentMethodType[];
|
|
18
18
|
summary: FinancialSummary | null;
|
|
19
19
|
summaryLoading: boolean;
|
|
20
|
-
|
|
20
|
+
statement: StatementResult | null;
|
|
21
21
|
statementLoading: boolean;
|
|
22
|
+
statementQuery: StatementQuery | null;
|
|
22
23
|
cardTransactions: CardTransaction[];
|
|
23
24
|
cardsLoading: boolean;
|
|
24
25
|
fetchSummary(dateRange?: DateRange): Promise<void>;
|
|
@@ -30,6 +31,7 @@ export interface FinancialUIState {
|
|
|
30
31
|
fetchCardTransactions(dateRange?: DateRange): Promise<void>;
|
|
31
32
|
createInvoice(input: CreateInvoiceInput): Promise<Invoice>;
|
|
32
33
|
payMovement(input: PayMovementInput): Promise<void>;
|
|
34
|
+
createTransfer(input: CreateTransferInput): Promise<void>;
|
|
33
35
|
cancelInvoice(invoiceId: string): Promise<void>;
|
|
34
36
|
openCashSession(input: OpenCashSessionInput): Promise<CashSession>;
|
|
35
37
|
closeCashSession(input: CloseCashSessionInput): Promise<CashSession>;
|
package/dist/store.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,KAAK,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAG5D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAA;AACzD,OAAO,KAAK,EACV,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,WAAW,EACpD,aAAa,EAAE,iBAAiB,EAAE,eAAe,EACjD,gBAAgB,EAAE,
|
|
1
|
+
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,KAAK,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAG5D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAA;AACzD,OAAO,KAAK,EACV,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,WAAW,EACpD,aAAa,EAAE,iBAAiB,EAAE,eAAe,EACjD,gBAAgB,EAAE,eAAe,EACjC,YAAY,EAAiB,cAAc,EAC3C,kBAAkB,EAAE,gBAAgB,EAAE,mBAAmB,EACzD,oBAAoB,EAAE,qBAAqB,EAC3C,SAAS,EACV,MAAM,SAAS,CAAA;AAMhB,MAAM,WAAW,gBAAgB;IAE/B,QAAQ,EAAE,OAAO,EAAE,CAAA;IACnB,aAAa,EAAE,MAAM,CAAA;IACrB,eAAe,EAAE,OAAO,CAAA;IACxB,YAAY,EAAE,YAAY,CAAA;IAE1B,SAAS,EAAE,iBAAiB,EAAE,CAAA;IAC9B,cAAc,EAAE,MAAM,CAAA;IACtB,gBAAgB,EAAE,OAAO,CAAA;IAEzB,YAAY,EAAE,WAAW,EAAE,CAAA;IAC3B,mBAAmB,EAAE,OAAO,CAAA;IAE5B,YAAY,EAAE,WAAW,EAAE,CAAA;IAC3B,mBAAmB,EAAE,OAAO,CAAA;IAE5B,cAAc,EAAE,aAAa,EAAE,CAAA;IAC/B,kBAAkB,EAAE,iBAAiB,EAAE,CAAA;IAEvC,OAAO,EAAE,gBAAgB,GAAG,IAAI,CAAA;IAChC,cAAc,EAAE,OAAO,CAAA;IAEvB,SAAS,EAAE,eAAe,GAAG,IAAI,CAAA;IACjC,gBAAgB,EAAE,OAAO,CAAA;IACzB,cAAc,EAAE,cAAc,GAAG,IAAI,CAAA;IAErC,gBAAgB,EAAE,eAAe,EAAE,CAAA;IACnC,YAAY,EAAE,OAAO,CAAA;IAGrB,YAAY,CAAC,SAAS,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAClD,aAAa,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACjD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAClC,iBAAiB,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACxD,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IACpC,cAAc,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACpD,qBAAqB,CAAC,SAAS,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC3D,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAC1D,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACnD,cAAc,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACzD,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC/C,eAAe,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,WAAW,CAAC,CAAA;IAClE,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,WAAW,CAAC,CAAA;CACrE;AAMD,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,qBAAqB,GAAG,QAAQ,CAAC,gBAAgB,CAAC,CA4KhG"}
|
package/dist/types.d.ts
CHANGED
|
@@ -75,10 +75,20 @@ export interface FinancialMovement {
|
|
|
75
75
|
cashSessionId?: string;
|
|
76
76
|
cardBrand?: string;
|
|
77
77
|
cardInstallments?: number;
|
|
78
|
+
/** Processing/MDR fee deducted at settlement (net cash = paidAmount - feeAmount for credits) */
|
|
79
|
+
feeAmount?: number;
|
|
78
80
|
debitAccountId?: string;
|
|
79
81
|
creditAccountId?: string;
|
|
80
82
|
notes?: string;
|
|
81
83
|
metadata?: Record<string, unknown>;
|
|
84
|
+
/** Provider of an imported bank-statement line (set on imported movements only) */
|
|
85
|
+
externalSource?: string;
|
|
86
|
+
/** Provider-unique id of the imported bank line (idempotency key with externalSource) */
|
|
87
|
+
externalId?: string;
|
|
88
|
+
/** When this movement was reconciled — matched or accepted (undefined = pending) */
|
|
89
|
+
reconciledAt?: string;
|
|
90
|
+
/** For an imported bank line: the internal movement it was matched to */
|
|
91
|
+
matchedMovementId?: string;
|
|
82
92
|
tenantId: string;
|
|
83
93
|
createdAt: string;
|
|
84
94
|
updatedAt: string;
|
|
@@ -219,6 +229,8 @@ export interface PayMovementInput {
|
|
|
219
229
|
cashSessionId?: string;
|
|
220
230
|
cardBrand?: string;
|
|
221
231
|
cardInstallments?: number;
|
|
232
|
+
/** Free-text payment description / memo shown in the extract */
|
|
233
|
+
notes?: string;
|
|
222
234
|
}
|
|
223
235
|
export interface OpenCashSessionInput {
|
|
224
236
|
bankAccountId: string;
|
|
@@ -270,9 +282,24 @@ export interface MovementQuery {
|
|
|
270
282
|
pageSize?: number;
|
|
271
283
|
}
|
|
272
284
|
export interface StatementQuery {
|
|
273
|
-
|
|
285
|
+
/** Omit (or pass undefined) for a consolidated "All accounts" statement */
|
|
286
|
+
bankAccountId?: string;
|
|
274
287
|
dateRange: DateRange;
|
|
275
288
|
}
|
|
289
|
+
export interface CreateTransferInput {
|
|
290
|
+
fromAccountId: string;
|
|
291
|
+
toAccountId: string;
|
|
292
|
+
amount: number;
|
|
293
|
+
/** YYYY-MM-DD — becomes payment_date on both ledger legs */
|
|
294
|
+
date: string;
|
|
295
|
+
notes?: string;
|
|
296
|
+
}
|
|
297
|
+
export interface TransferResult {
|
|
298
|
+
/** Shared correlation id stored in both legs' metadata */
|
|
299
|
+
transferId: string;
|
|
300
|
+
debitMovementId: string;
|
|
301
|
+
creditMovementId: string;
|
|
302
|
+
}
|
|
276
303
|
export interface PaginatedResult<T> {
|
|
277
304
|
data: T[];
|
|
278
305
|
total: number;
|
|
@@ -288,10 +315,51 @@ export interface FinancialSummary {
|
|
|
288
315
|
overduePayableCount: number;
|
|
289
316
|
overduePayableAmount: number;
|
|
290
317
|
}
|
|
318
|
+
/** What a statement row represents — a normal movement or one leg of a transfer */
|
|
319
|
+
export type StatementEntryKind = 'movement' | 'transfer-in' | 'transfer-out';
|
|
291
320
|
export interface StatementEntry {
|
|
292
321
|
movement: FinancialMovement;
|
|
293
322
|
invoice?: Invoice;
|
|
323
|
+
/** NET cash running balance after this row */
|
|
294
324
|
runningBalance: number;
|
|
325
|
+
/** Amount that settled the receivable/payable (= paidAmount) */
|
|
326
|
+
gross: number;
|
|
327
|
+
/** Processing/MDR fee deducted (>= 0) */
|
|
328
|
+
fee: number;
|
|
329
|
+
/** Cash impact: gross - fee for credit; gross for debit */
|
|
330
|
+
net: number;
|
|
331
|
+
entryKind: StatementEntryKind;
|
|
332
|
+
/** For transfers: the other side's account */
|
|
333
|
+
counterAccountId?: string;
|
|
334
|
+
counterAccountName?: string;
|
|
335
|
+
/** When this row is a reconciled bank line, the internal movement it was matched to. */
|
|
336
|
+
reconciledWith?: {
|
|
337
|
+
movementId: string;
|
|
338
|
+
description?: string;
|
|
339
|
+
invoiceId?: string;
|
|
340
|
+
fiscalNumber?: string;
|
|
341
|
+
contactName?: string;
|
|
342
|
+
};
|
|
343
|
+
}
|
|
344
|
+
/** Full statement result with header context (opening/closing balance + period totals) */
|
|
345
|
+
export interface StatementResult {
|
|
346
|
+
entries: StatementEntry[];
|
|
347
|
+
/** Balance as of start-of-day dateFrom (excludes in-range rows) */
|
|
348
|
+
openingBalance: number;
|
|
349
|
+
/** openingBalance + net of all in-range rows */
|
|
350
|
+
closingBalance: number;
|
|
351
|
+
/** Sum of NET credits in range */
|
|
352
|
+
totalCredits: number;
|
|
353
|
+
/** Sum of NET debits (cash out) in range */
|
|
354
|
+
totalDebits: number;
|
|
355
|
+
/** Sum of fees in range */
|
|
356
|
+
totalFees: number;
|
|
357
|
+
/** totalCredits - totalDebits */
|
|
358
|
+
net: number;
|
|
359
|
+
/** Echo of the queried account; undefined for consolidated */
|
|
360
|
+
accountId?: string;
|
|
361
|
+
/** Ledger-computed current balance of the selected account (as of today) */
|
|
362
|
+
accountCurrentBalance?: number;
|
|
295
363
|
}
|
|
296
364
|
export interface CashSessionSummary {
|
|
297
365
|
session: CashSession;
|
|
@@ -299,4 +367,46 @@ export interface CashSessionSummary {
|
|
|
299
367
|
totalInflow: number;
|
|
300
368
|
totalOutflow: number;
|
|
301
369
|
}
|
|
370
|
+
/** A normalized bank-statement line, ready to import as a financial movement. */
|
|
371
|
+
export interface BankStatementLine {
|
|
372
|
+
/** Provider-unique transaction id (idempotency key with externalSource) */
|
|
373
|
+
externalId: string;
|
|
374
|
+
/** Provider that produced the line (e.g. 'plugbank', 'inter') */
|
|
375
|
+
externalSource: string;
|
|
376
|
+
/** credit = money in, debit = money out */
|
|
377
|
+
direction: TransactionDirection;
|
|
378
|
+
amount: number;
|
|
379
|
+
/** YYYY-MM-DD settlement date */
|
|
380
|
+
date: string;
|
|
381
|
+
description: string;
|
|
382
|
+
/** Account the line belongs to; falls back to the import's bankAccountId */
|
|
383
|
+
bankAccountId?: string;
|
|
384
|
+
}
|
|
385
|
+
export interface ImportBankTransactionsInput {
|
|
386
|
+
/** Default account for lines that don't carry their own */
|
|
387
|
+
bankAccountId?: string;
|
|
388
|
+
lines: BankStatementLine[];
|
|
389
|
+
}
|
|
390
|
+
export interface ImportBankTransactionsResult {
|
|
391
|
+
imported: number;
|
|
392
|
+
/** Lines skipped because they were already imported (idempotency) */
|
|
393
|
+
duplicates: number;
|
|
394
|
+
}
|
|
395
|
+
export interface UnreconciledQuery {
|
|
396
|
+
bankAccountId?: string;
|
|
397
|
+
dateRange?: DateRange;
|
|
398
|
+
}
|
|
399
|
+
/** A candidate internal movement to reconcile an imported bank line against. */
|
|
400
|
+
export interface ReconciliationCandidate {
|
|
401
|
+
movement: FinancialMovement;
|
|
402
|
+
invoice?: Invoice;
|
|
403
|
+
/** 0..1 confidence from amount + date proximity */
|
|
404
|
+
score: number;
|
|
405
|
+
}
|
|
406
|
+
export interface ReconcileInput {
|
|
407
|
+
/** The imported bank-line movement (externalSource set) */
|
|
408
|
+
bankMovementId: string;
|
|
409
|
+
/** Internal movement to link; omit to accept the line standalone */
|
|
410
|
+
matchedMovementId?: string;
|
|
411
|
+
}
|
|
302
412
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import type { TransactionDirection } from '../types';
|
|
3
|
-
export declare function InvoiceDetailView({ invoiceId, direction, onBack, onEdit }: {
|
|
3
|
+
export declare function InvoiceDetailView({ invoiceId, direction, onBack, onEdit, backLabel }: {
|
|
4
4
|
invoiceId: string;
|
|
5
5
|
direction: TransactionDirection;
|
|
6
6
|
onBack: () => void;
|
|
7
7
|
onEdit: () => void;
|
|
8
|
+
/** Label for the back link — defaults to the invoice's parent list (payables/receivables). */
|
|
9
|
+
backLabel?: string;
|
|
8
10
|
}): React.JSX.Element;
|
|
9
11
|
//# sourceMappingURL=InvoiceDetailView.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InvoiceDetailView.d.ts","sourceRoot":"","sources":["../../src/views/InvoiceDetailView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsC,MAAM,OAAO,CAAA;AAU1D,OAAO,KAAK,EAA2C,oBAAoB,EAAE,MAAM,UAAU,CAAA;AAY7F,wBAAgB,iBAAiB,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE;
|
|
1
|
+
{"version":3,"file":"InvoiceDetailView.d.ts","sourceRoot":"","sources":["../../src/views/InvoiceDetailView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsC,MAAM,OAAO,CAAA;AAU1D,OAAO,KAAK,EAA2C,oBAAoB,EAAE,MAAM,UAAU,CAAA;AAY7F,wBAAgB,iBAAiB,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE;IACrF,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,oBAAoB,CAAA;IAC/B,MAAM,EAAE,MAAM,IAAI,CAAA;IAClB,MAAM,EAAE,MAAM,IAAI,CAAA;IAClB,8FAA8F;IAC9F,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,qBAwkBA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InvoiceFormView.d.ts","sourceRoot":"","sources":["../../src/views/InvoiceFormView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsC,MAAM,OAAO,CAAA;AAW1D,OAAO,KAAK,EAAE,oBAAoB,EAA+C,MAAM,UAAU,CAAA;AAMjG,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,OAAO,CAAA;CACf;
|
|
1
|
+
{"version":3,"file":"InvoiceFormView.d.ts","sourceRoot":"","sources":["../../src/views/InvoiceFormView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsC,MAAM,OAAO,CAAA;AAW1D,OAAO,KAAK,EAAE,oBAAoB,EAA+C,MAAM,UAAU,CAAA;AAMjG,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,OAAO,CAAA;CACf;AA0WD,wBAAgB,eAAe,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE;IAC9D,SAAS,EAAE,oBAAoB,CAAA;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;CAChC,qBAmiBA"}
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import type { ViewIntent } from '../FinancialPage';
|
|
3
|
-
export declare function PayablesView({ intent, onNavigate }: {
|
|
3
|
+
export declare function PayablesView({ intent, onNavigate, previousView, back }: {
|
|
4
4
|
intent: ViewIntent;
|
|
5
5
|
onNavigate: (view: string) => void;
|
|
6
|
+
/** The in-module view the user came from — drives the context-aware back link. */
|
|
7
|
+
previousView?: string | null;
|
|
8
|
+
/** Return to the actual previous page (falls back to the given view). */
|
|
9
|
+
back?: (fallbackView?: string) => void;
|
|
6
10
|
}): React.JSX.Element;
|
|
7
11
|
//# sourceMappingURL=PayablesView.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PayablesView.d.ts","sourceRoot":"","sources":["../../src/views/PayablesView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"PayablesView.d.ts","sourceRoot":"","sources":["../../src/views/PayablesView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAMzB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAElD,wBAAgB,YAAY,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE;IACvE,MAAM,EAAE,UAAU,CAAA;IAClB,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IAClC,kFAAkF;IAClF,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,yEAAyE;IACzE,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;CACvC,qBAgCA"}
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import type { ViewIntent } from '../FinancialPage';
|
|
3
|
-
export declare function ReceivablesView({ intent, onNavigate }: {
|
|
3
|
+
export declare function ReceivablesView({ intent, onNavigate, previousView, back }: {
|
|
4
4
|
intent: ViewIntent;
|
|
5
5
|
onNavigate: (view: string) => void;
|
|
6
|
+
/** The in-module view the user came from — drives the context-aware back link. */
|
|
7
|
+
previousView?: string | null;
|
|
8
|
+
/** Return to the actual previous page (falls back to the given view). */
|
|
9
|
+
back?: (fallbackView?: string) => void;
|
|
6
10
|
}): React.JSX.Element;
|
|
7
11
|
//# sourceMappingURL=ReceivablesView.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReceivablesView.d.ts","sourceRoot":"","sources":["../../src/views/ReceivablesView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"ReceivablesView.d.ts","sourceRoot":"","sources":["../../src/views/ReceivablesView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAMzB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAElD,wBAAgB,eAAe,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE;IAC1E,MAAM,EAAE,UAAU,CAAA;IAClB,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IAClC,kFAAkF;IAClF,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,yEAAyE;IACzE,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;CACvC,qBAgCA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReconciliationView.d.ts","sourceRoot":"","sources":["../../src/views/ReconciliationView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA2C,MAAM,OAAO,CAAA;AAiB/D,wBAAgB,kBAAkB,sBAiMjC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StatementsView.d.ts","sourceRoot":"","sources":["../../src/views/StatementsView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAuC,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"StatementsView.d.ts","sourceRoot":"","sources":["../../src/views/StatementsView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAuC,MAAM,OAAO,CAAA;AAuD3D,wBAAgB,cAAc,CAAC,EAAE,UAAU,EAAE,EAAE;IAAE,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;CAAE,qBAuQrF"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
type TFunc = (key: string, params?: Record<string, string | number>) => string;
|
|
2
|
+
/** Human label for the page the user came from, or null when it isn't a meaningful referrer. */
|
|
3
|
+
export declare function referrerLabel(view: string | null | undefined, t: TFunc): string | null;
|
|
4
|
+
export {};
|
|
5
|
+
//# sourceMappingURL=navReferrer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"navReferrer.d.ts","sourceRoot":"","sources":["../../src/views/navReferrer.ts"],"names":[],"mappings":"AAAA,KAAK,KAAK,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,KAAK,MAAM,CAAA;AAkB9E,gGAAgG;AAChG,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,IAAI,CAItF"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fayz-ai/plugin-financial",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.5",
|
|
4
4
|
"description": "Fayz SDK — plugin-financial plugin",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.cjs",
|
|
@@ -26,16 +26,18 @@
|
|
|
26
26
|
"lucide-react": "^0.400.0",
|
|
27
27
|
"zustand": "^4.5.0",
|
|
28
28
|
"@tanstack/react-table": "^8.20.0",
|
|
29
|
-
"@fayz-ai/
|
|
30
|
-
"@fayz-ai/
|
|
31
|
-
"@fayz-ai/
|
|
29
|
+
"@fayz-ai/ui": "^0.2.1",
|
|
30
|
+
"@fayz-ai/core": "^0.2.0",
|
|
31
|
+
"@fayz-ai/saas": "^0.3.0"
|
|
32
32
|
},
|
|
33
33
|
"devDependencies": {
|
|
34
34
|
"@types/react": "^18.3.0",
|
|
35
35
|
"react": "^18.3.0",
|
|
36
36
|
"tsup": "^8.2.0",
|
|
37
37
|
"typescript": "^5.5.0",
|
|
38
|
-
"@types/react-dom": "^18.3.0"
|
|
38
|
+
"@types/react-dom": "^18.3.0",
|
|
39
|
+
"vitest": "^2.1.9",
|
|
40
|
+
"react-dom": "^18.3.0"
|
|
39
41
|
},
|
|
40
42
|
"license": "MIT",
|
|
41
43
|
"keywords": [
|
|
@@ -50,6 +52,7 @@
|
|
|
50
52
|
"build": "tsup && tsc --emitDeclarationOnly --declaration --declarationMap --noEmit false",
|
|
51
53
|
"dev": "tsup --watch",
|
|
52
54
|
"typecheck": "tsc --noEmit",
|
|
55
|
+
"test": "vitest run",
|
|
53
56
|
"clean": "rm -rf dist"
|
|
54
57
|
}
|
|
55
58
|
}
|
package/src/FinancialContext.tsx
CHANGED
|
@@ -14,6 +14,8 @@ export interface FinancialModules {
|
|
|
14
14
|
statements: boolean
|
|
15
15
|
commissions: boolean
|
|
16
16
|
cards: boolean
|
|
17
|
+
/** Bank reconciliation (conciliação). Opt-in — enable when a bank connector imports statements. */
|
|
18
|
+
reconciliation: boolean
|
|
17
19
|
}
|
|
18
20
|
|
|
19
21
|
export type FinancialCurrency = CurrencyConfig
|
package/src/FinancialPage.tsx
CHANGED
|
@@ -6,7 +6,7 @@ import { FinancialContextProvider, type ResolvedFinancialConfig } from './Financ
|
|
|
6
6
|
import type { FinancialDataProvider } from './data/types'
|
|
7
7
|
import type { FinancialUIState } from './store'
|
|
8
8
|
import type { PluginRegistryDef, PluginQuickAction } from '@fayz-ai/core'
|
|
9
|
-
import { useModuleNavigation, ModuleActionBar, parseViewId } from '@fayz-ai/saas'
|
|
9
|
+
import { useModuleNavigation, ModuleActionBar, parseViewId, PluginSettingsPanel } from '@fayz-ai/saas'
|
|
10
10
|
import { SummaryView } from './views/SummaryView'
|
|
11
11
|
import { PayablesView } from './views/PayablesView'
|
|
12
12
|
import { ReceivablesView } from './views/ReceivablesView'
|
|
@@ -14,6 +14,7 @@ import { CashRegistersView } from './views/CashRegistersView'
|
|
|
14
14
|
import { StatementsView } from './views/StatementsView'
|
|
15
15
|
import { CommissionsView } from './views/CommissionsView'
|
|
16
16
|
import { CardsView } from './views/CardsView'
|
|
17
|
+
import { ReconciliationView } from './views/ReconciliationView'
|
|
17
18
|
import { FinancialGeneralSettings } from './components/FinancialGeneralSettings'
|
|
18
19
|
import { FinancialOnboarding } from './components/FinancialOnboarding'
|
|
19
20
|
|
|
@@ -92,13 +93,22 @@ function buildNav(
|
|
|
92
93
|
})
|
|
93
94
|
}
|
|
94
95
|
|
|
95
|
-
|
|
96
|
+
// Statements (extract) is core to the financial module — always shown, not gated per app.
|
|
97
|
+
items.push({
|
|
98
|
+
id: 'statements',
|
|
99
|
+
label: t('financial.nav.statements'),
|
|
100
|
+
icon: 'Receipt',
|
|
101
|
+
active: activeView === 'statements',
|
|
102
|
+
onClick: () => navigate('statements'),
|
|
103
|
+
})
|
|
104
|
+
|
|
105
|
+
if (config.modules.reconciliation) {
|
|
96
106
|
items.push({
|
|
97
|
-
id: '
|
|
98
|
-
label: t('financial.nav.
|
|
99
|
-
icon: '
|
|
100
|
-
active: activeView === '
|
|
101
|
-
onClick: () => navigate('
|
|
107
|
+
id: 'reconciliation',
|
|
108
|
+
label: t('financial.nav.reconciliation'),
|
|
109
|
+
icon: 'ArrowLeftRight',
|
|
110
|
+
active: activeView === 'reconciliation',
|
|
111
|
+
onClick: () => navigate('reconciliation'),
|
|
102
112
|
})
|
|
103
113
|
}
|
|
104
114
|
|
|
@@ -139,10 +149,10 @@ export function FinancialPage({ config, provider, store, registries }: {
|
|
|
139
149
|
store: StoreApi<FinancialUIState>
|
|
140
150
|
registries?: PluginRegistryDef[]
|
|
141
151
|
}) {
|
|
142
|
-
const { view, direction, navigate } = useModuleNavigation('/financial', {
|
|
152
|
+
const { view, direction, navigate, previousView, back } = useModuleNavigation('/financial', {
|
|
143
153
|
summary: 0,
|
|
144
154
|
'payables-list': 0, 'payables-new': 1, 'receivables-list': 0, 'receivables-new': 1,
|
|
145
|
-
'cash-registers': 0, statements: 0, commissions: 0, cards: 0,
|
|
155
|
+
'cash-registers': 0, statements: 0, reconciliation: 0, commissions: 0, cards: 0,
|
|
146
156
|
settings: 1,
|
|
147
157
|
})
|
|
148
158
|
|
|
@@ -207,11 +217,14 @@ export function FinancialPage({ config, provider, store, registries }: {
|
|
|
207
217
|
<FinancialContextProvider config={config} provider={provider} store={store}>
|
|
208
218
|
<PageTransition transitionKey="settings" direction={direction}>
|
|
209
219
|
<div style={{ padding: '24px' }}>
|
|
210
|
-
<
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
220
|
+
<PluginSettingsPanel
|
|
221
|
+
title={t('financial.settingsPage.title')}
|
|
222
|
+
subtitle={t('financial.settingsPage.subtitle')}
|
|
223
|
+
generalSettings={<FinancialGeneralSettings />}
|
|
224
|
+
registries={registries}
|
|
225
|
+
hostPluginId="financial"
|
|
226
|
+
routeBase="/settings/financial"
|
|
227
|
+
/>
|
|
215
228
|
</div>
|
|
216
229
|
</PageTransition>
|
|
217
230
|
</FinancialContextProvider>
|
|
@@ -221,13 +234,15 @@ export function FinancialPage({ config, provider, store, registries }: {
|
|
|
221
234
|
function renderView() {
|
|
222
235
|
switch (intent.view) {
|
|
223
236
|
case 'payables':
|
|
224
|
-
return <PayablesView intent={intent} onNavigate={navigate} />
|
|
237
|
+
return <PayablesView intent={intent} onNavigate={navigate} previousView={previousView} back={back} />
|
|
225
238
|
case 'receivables':
|
|
226
|
-
return <ReceivablesView intent={intent} onNavigate={navigate} />
|
|
239
|
+
return <ReceivablesView intent={intent} onNavigate={navigate} previousView={previousView} back={back} />
|
|
227
240
|
case 'cash-registers':
|
|
228
241
|
return <CashRegistersView />
|
|
229
242
|
case 'statements':
|
|
230
|
-
return <StatementsView />
|
|
243
|
+
return <StatementsView onNavigate={navigate} />
|
|
244
|
+
case 'reconciliation':
|
|
245
|
+
return <ReconciliationView />
|
|
231
246
|
case 'commissions':
|
|
232
247
|
return <CommissionsView />
|
|
233
248
|
case 'cards':
|
|
@@ -6,7 +6,20 @@ import { useTranslation } from '@fayz-ai/core'
|
|
|
6
6
|
import { CurrencyInput } from '@fayz-ai/ui'
|
|
7
7
|
import { DatePicker } from '@fayz-ai/ui'
|
|
8
8
|
import { Button } from '@fayz-ai/ui'
|
|
9
|
-
import type { FinancialMovement, PaymentMethodType } from '../types'
|
|
9
|
+
import type { FinancialMovement, PaymentMethodType, BankAccountType } from '../types'
|
|
10
|
+
|
|
11
|
+
// Which bank-account types make sense for each payment type — mirrors beautyplace's
|
|
12
|
+
// payment_method_types.allowed_account_types. Used to filter + default the destination
|
|
13
|
+
// account so every payment lands in a real account (and shows up in that account's extract).
|
|
14
|
+
const ACCOUNT_TYPES_FOR_TX: Record<string, BankAccountType[]> = {
|
|
15
|
+
cash: ['cash_register'],
|
|
16
|
+
credit_card: ['credit_card', 'bank_account'],
|
|
17
|
+
debit_card: ['bank_account', 'cash_register'],
|
|
18
|
+
pix: ['bank_account', 'digital_wallet'],
|
|
19
|
+
bank_transfer: ['bank_account'],
|
|
20
|
+
check: ['bank_account'],
|
|
21
|
+
voucher: ['bank_account', 'digital_wallet'],
|
|
22
|
+
}
|
|
10
23
|
|
|
11
24
|
const TYPE_ICONS: Record<string, React.ElementType> = {
|
|
12
25
|
cash: Banknote,
|
|
@@ -80,10 +93,27 @@ export function PaymentModal({ movement, onClose, onPaid }: {
|
|
|
80
93
|
[paymentMethods, selectedTypeId]
|
|
81
94
|
)
|
|
82
95
|
|
|
83
|
-
const needsBankAccount = txType === 'bank_transfer' || txType === 'pix' || txType === 'check'
|
|
84
96
|
const needsCard = txType === 'credit_card' || txType === 'debit_card'
|
|
85
97
|
const needsCardInstallments = txType === 'credit_card'
|
|
86
98
|
|
|
99
|
+
// Accounts eligible for the selected payment type. Prefer the type's configured
|
|
100
|
+
// allowedAccountTypes, else the tx-type mapping, else all active accounts.
|
|
101
|
+
const eligibleAccounts = useMemo(() => {
|
|
102
|
+
const allowed = (selectedType?.allowedAccountTypes && selectedType.allowedAccountTypes.length)
|
|
103
|
+
? selectedType.allowedAccountTypes
|
|
104
|
+
: ACCOUNT_TYPES_FOR_TX[txType]
|
|
105
|
+
if (!allowed || !allowed.length) return bankAccounts
|
|
106
|
+
const filtered = bankAccounts.filter((a) => allowed.includes(a.accountType))
|
|
107
|
+
return filtered.length ? filtered : bankAccounts
|
|
108
|
+
}, [bankAccounts, selectedType, txType])
|
|
109
|
+
|
|
110
|
+
// Auto-pick a sensible destination account so the payment is always linked to one.
|
|
111
|
+
useEffect(() => {
|
|
112
|
+
if (selectedTypeId && !bankAccountId && eligibleAccounts.length) {
|
|
113
|
+
setBankAccountId(eligibleAccounts[0].id)
|
|
114
|
+
}
|
|
115
|
+
}, [selectedTypeId, eligibleAccounts])
|
|
116
|
+
|
|
87
117
|
function handleSelectType(typeId: string) {
|
|
88
118
|
setSelectedTypeId(typeId)
|
|
89
119
|
setExpandMethodPicker(false)
|
|
@@ -98,8 +128,16 @@ export function PaymentModal({ movement, onClose, onPaid }: {
|
|
|
98
128
|
setTimeout(onClose, 200)
|
|
99
129
|
}
|
|
100
130
|
|
|
131
|
+
// Enter anywhere in the modal submits (unless typing in a textarea / Shift+Enter).
|
|
132
|
+
function handleKeyDown(e: React.KeyboardEvent) {
|
|
133
|
+
if (e.key !== 'Enter' || e.shiftKey) return
|
|
134
|
+
if ((e.target as HTMLElement).tagName === 'TEXTAREA') return
|
|
135
|
+
e.preventDefault()
|
|
136
|
+
if (amount > 0 && selectedTypeId && bankAccountId && !saving) void handlePay()
|
|
137
|
+
}
|
|
138
|
+
|
|
101
139
|
async function handlePay() {
|
|
102
|
-
if (amount <= 0 || !selectedTypeId) return
|
|
140
|
+
if (amount <= 0 || !selectedTypeId || !bankAccountId) return
|
|
103
141
|
setSaving(true)
|
|
104
142
|
try {
|
|
105
143
|
await payMovement({
|
|
@@ -111,6 +149,7 @@ export function PaymentModal({ movement, onClose, onPaid }: {
|
|
|
111
149
|
bankAccountId: bankAccountId || undefined,
|
|
112
150
|
cardBrand: needsCard ? cardBrand || undefined : undefined,
|
|
113
151
|
cardInstallments: needsCardInstallments ? cardInstallments : undefined,
|
|
152
|
+
notes: notes.trim() || undefined,
|
|
114
153
|
})
|
|
115
154
|
setVisible(false)
|
|
116
155
|
setTimeout(onPaid, 200)
|
|
@@ -136,6 +175,7 @@ export function PaymentModal({ movement, onClose, onPaid }: {
|
|
|
136
175
|
transform: visible ? 'scale(1) translateY(0)' : 'scale(0.95) translateY(8px)',
|
|
137
176
|
}}
|
|
138
177
|
onClick={(e) => e.stopPropagation()}
|
|
178
|
+
onKeyDown={handleKeyDown}
|
|
139
179
|
>
|
|
140
180
|
{/* Header */}
|
|
141
181
|
<div className="flex items-center justify-between px-5 py-4 border-b sticky top-0 bg-card z-10">
|
|
@@ -269,16 +309,23 @@ export function PaymentModal({ movement, onClose, onPaid }: {
|
|
|
269
309
|
</div>
|
|
270
310
|
)}
|
|
271
311
|
|
|
272
|
-
{/*
|
|
273
|
-
{
|
|
274
|
-
<
|
|
275
|
-
|
|
312
|
+
{/* Destination account — always shown so every payment links to an account */}
|
|
313
|
+
<div className="stagger-field" style={{ animationDelay: '100ms' }}>
|
|
314
|
+
<label className="text-xs font-medium text-muted-foreground">{t('financial.payment.bankAccount')}</label>
|
|
315
|
+
{eligibleAccounts.length === 0 ? (
|
|
316
|
+
<div className="mt-1 rounded-lg border border-dashed border-input bg-muted/30 px-3 py-2.5 text-center">
|
|
317
|
+
<p className="text-xs text-muted-foreground">{t('financial.payment.noAccounts')}</p>
|
|
318
|
+
<a href="#/settings/financial/bank-accounts" className="mt-1 inline-block text-xs font-medium text-primary hover:underline">
|
|
319
|
+
{t('financial.payment.configureAccounts')} →
|
|
320
|
+
</a>
|
|
321
|
+
</div>
|
|
322
|
+
) : (
|
|
276
323
|
<select value={bankAccountId} onChange={(e) => setBankAccountId(e.target.value)} className="w-full mt-1 rounded-input border border-input bg-card shadow-[inset_0_1px_0_rgb(0_0_0_/0.06)] px-3 py-2 text-sm">
|
|
277
324
|
<option value="">{t('financial.payment.selectAccount')}</option>
|
|
278
|
-
{
|
|
325
|
+
{eligibleAccounts.map((a) => <option key={a.id} value={a.id}>{a.name}</option>)}
|
|
279
326
|
</select>
|
|
280
|
-
|
|
281
|
-
|
|
327
|
+
)}
|
|
328
|
+
</div>
|
|
282
329
|
|
|
283
330
|
{/* Notes */}
|
|
284
331
|
<div className="stagger-field" style={{ animationDelay: '150ms' }}>
|
|
@@ -309,7 +356,7 @@ export function PaymentModal({ movement, onClose, onPaid }: {
|
|
|
309
356
|
variant="default"
|
|
310
357
|
size="sm"
|
|
311
358
|
onClick={handlePay}
|
|
312
|
-
disabled={amount <= 0 || !selectedTypeId || saving}
|
|
359
|
+
disabled={amount <= 0 || !selectedTypeId || !bankAccountId || saving}
|
|
313
360
|
>
|
|
314
361
|
<Check className="h-3.5 w-3.5" />
|
|
315
362
|
{saving ? t('financial.payment.processing') : t('financial.payment.payAmount', { amount: formatCurrency(amount, currency) })}
|