@fayz-ai/plugin-financial 0.1.7 → 0.2.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/FinancialContext.d.ts +2 -0
- package/dist/FinancialContext.d.ts.map +1 -1
- package/dist/FinancialPage.d.ts.map +1 -1
- package/dist/data/index.d.ts +1 -0
- package/dist/data/index.d.ts.map +1 -1
- package/dist/data/mock.d.ts +15 -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 +2 -1
- package/dist/data/types.d.ts.map +1 -1
- package/dist/index.cjs +1531 -201
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +13 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1393 -80
- 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/quick-add.d.ts +13 -0
- package/dist/quick-add.d.ts.map +1 -0
- package/dist/store.d.ts +3 -1
- package/dist/store.d.ts.map +1 -1
- package/dist/types.d.ts +42 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/views/CardsView.d.ts.map +1 -1
- package/dist/views/InvoiceListView.d.ts.map +1 -1
- package/dist/views/QuickTransactionForm.d.ts +16 -0
- package/dist/views/QuickTransactionForm.d.ts.map +1 -0
- package/dist/views/SummaryView.d.ts +5 -4
- package/dist/views/SummaryView.d.ts.map +1 -1
- package/dist/views/dashboardWidgets.d.ts.map +1 -1
- package/package.json +4 -7
- package/src/FinancialContext.tsx +2 -0
- package/src/FinancialPage.tsx +86 -7
- package/src/data/capability.test.ts +45 -0
- package/src/data/index.ts +1 -0
- package/src/data/mock.ts +50 -10
- package/src/data/supabase.ts +46 -3
- package/src/data/types.ts +2 -1
- package/src/index.ts +24 -4
- package/src/locales/en.ts +75 -0
- package/src/locales/pt-BR.ts +75 -0
- package/src/quick-add.ts +58 -0
- package/src/store.ts +88 -0
- package/src/types.ts +45 -0
- package/src/views/CardsView.tsx +186 -50
- package/src/views/InvoiceListView.tsx +60 -3
- package/src/views/QuickTransactionForm.tsx +537 -0
- package/src/views/SummaryView.tsx +197 -6
- package/src/views/dashboardWidgets.tsx +251 -5
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,CAgerC,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,CAgevC,CAAA"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { QuickTransactionType } from './types';
|
|
2
|
+
export interface QuickAddRequest {
|
|
3
|
+
type: QuickTransactionType;
|
|
4
|
+
/** Foreground the receipt/attachment step + auto-open the picker. */
|
|
5
|
+
receipt: boolean;
|
|
6
|
+
}
|
|
7
|
+
/** Fire a quick-add request from anywhere. Default = an expense. */
|
|
8
|
+
export declare function openQuickAdd(type?: QuickTransactionType, receipt?: boolean): void;
|
|
9
|
+
/** Read + clear the pending request (one-shot). */
|
|
10
|
+
export declare function consumeQuickAdd(): QuickAddRequest | null;
|
|
11
|
+
/** React binding — returns the pending request (null when none). */
|
|
12
|
+
export declare function usePendingQuickAdd(): QuickAddRequest | null;
|
|
13
|
+
//# sourceMappingURL=quick-add.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"quick-add.d.ts","sourceRoot":"","sources":["../src/quick-add.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AAEnD,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,oBAAoB,CAAA;IAC1B,qEAAqE;IACrE,OAAO,EAAE,OAAO,CAAA;CACjB;AASD,oEAAoE;AACpE,wBAAgB,YAAY,CAAC,IAAI,GAAE,oBAAgC,EAAE,OAAO,UAAQ,GAAG,IAAI,CAG1F;AAED,mDAAmD;AACnD,wBAAgB,eAAe,IAAI,eAAe,GAAG,IAAI,CAIxD;AAaD,oEAAoE;AACpE,wBAAgB,kBAAkB,IAAI,eAAe,GAAG,IAAI,CAE3D"}
|
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, StatementResult, InvoiceQuery, StatementQuery, CreateInvoiceInput, PayMovementInput, CreateTransferInput, OpenCashSessionInput, CloseCashSessionInput, DateRange } from './types';
|
|
3
|
+
import type { Invoice, FinancialMovement, BankAccount, CashSession, PaymentMethod, PaymentMethodType, CardTransaction, FinancialSummary, StatementResult, InvoiceQuery, StatementQuery, CreateInvoiceInput, PayMovementInput, CreateTransferInput, OpenCashSessionInput, CloseCashSessionInput, QuickTransactionInput, DateRange } from './types';
|
|
4
4
|
export interface FinancialUIState {
|
|
5
5
|
invoices: Invoice[];
|
|
6
6
|
invoicesTotal: number;
|
|
@@ -30,6 +30,8 @@ export interface FinancialUIState {
|
|
|
30
30
|
fetchStatement(query: StatementQuery): Promise<void>;
|
|
31
31
|
fetchCardTransactions(dateRange?: DateRange): Promise<void>;
|
|
32
32
|
createInvoice(input: CreateInvoiceInput): Promise<Invoice>;
|
|
33
|
+
/** FAY-1225 "log money in a few taps": one call → the right provider plumbing + full surface refresh. */
|
|
34
|
+
createQuickTransaction(input: QuickTransactionInput): Promise<void>;
|
|
33
35
|
payMovement(input: PayMovementInput): Promise<void>;
|
|
34
36
|
createTransfer(input: CreateTransferInput): Promise<void>;
|
|
35
37
|
cancelInvoice(invoiceId: string): Promise<void>;
|
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,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,
|
|
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,qBAAqB,EACrB,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,yGAAyG;IACzG,sBAAsB,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACnE,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,CAiQhG"}
|
package/dist/types.d.ts
CHANGED
|
@@ -167,6 +167,15 @@ export interface ChartOfAccountsNode {
|
|
|
167
167
|
tenantId: string;
|
|
168
168
|
createdAt: string;
|
|
169
169
|
}
|
|
170
|
+
export interface CostCenter {
|
|
171
|
+
id: string;
|
|
172
|
+
code: string;
|
|
173
|
+
name: string;
|
|
174
|
+
isActive: boolean;
|
|
175
|
+
tenantId: string;
|
|
176
|
+
createdAt: string;
|
|
177
|
+
updatedAt: string;
|
|
178
|
+
}
|
|
170
179
|
export interface CardTransaction {
|
|
171
180
|
id: string;
|
|
172
181
|
movementId: string;
|
|
@@ -267,6 +276,8 @@ export interface InvoiceQuery {
|
|
|
267
276
|
direction?: TransactionDirection;
|
|
268
277
|
status?: InvoiceStatus | InvoiceStatus[];
|
|
269
278
|
contactId?: string;
|
|
279
|
+
accountId?: string;
|
|
280
|
+
costCenterId?: string;
|
|
270
281
|
dateRange?: DateRange;
|
|
271
282
|
search?: string;
|
|
272
283
|
page?: number;
|
|
@@ -294,6 +305,37 @@ export interface CreateTransferInput {
|
|
|
294
305
|
date: string;
|
|
295
306
|
notes?: string;
|
|
296
307
|
}
|
|
308
|
+
/**
|
|
309
|
+
* "Log money in a few taps" (FAY-1225). A single-transaction quick-add that the
|
|
310
|
+
* store expands into the right provider calls: expense/income → createInvoice
|
|
311
|
+
* (+ payMovement when marked paid); transfer → createTransfer. Keeps the
|
|
312
|
+
* Mobills-style form dumb — it only collects fields, the store does the plumbing.
|
|
313
|
+
*/
|
|
314
|
+
export type QuickTransactionType = 'expense' | 'income' | 'transfer';
|
|
315
|
+
export interface QuickTransactionInput {
|
|
316
|
+
type: QuickTransactionType;
|
|
317
|
+
/** Positive amount in the account currency */
|
|
318
|
+
amount: number;
|
|
319
|
+
/** YYYY-MM-DD */
|
|
320
|
+
date: string;
|
|
321
|
+
/** When true, the movement is settled immediately (creates a paid cash event). */
|
|
322
|
+
paid: boolean;
|
|
323
|
+
description?: string;
|
|
324
|
+
/** Chart-of-accounts / cost-center id (category chip) */
|
|
325
|
+
categoryId?: string;
|
|
326
|
+
/** expense/income: bank account or card. transfer: source account. */
|
|
327
|
+
bankAccountId?: string;
|
|
328
|
+
/** transfer: destination account */
|
|
329
|
+
toAccountId?: string;
|
|
330
|
+
/** Marks the transaction as recurring (stored in metadata; UI affordance). */
|
|
331
|
+
recurring?: boolean;
|
|
332
|
+
/**
|
|
333
|
+
* FAY-1226 "snap a receipt": a captured/attached receipt image as a data URL
|
|
334
|
+
* (mock mode has no Supabase bucket). Persisted on the created invoice's
|
|
335
|
+
* metadata so the transaction feed can show a 📎 indicator + preview.
|
|
336
|
+
*/
|
|
337
|
+
receiptUrl?: string;
|
|
338
|
+
}
|
|
297
339
|
export interface TransferResult {
|
|
298
340
|
/** Shared correlation id stored in both legs' metadata */
|
|
299
341
|
transferId: string;
|
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 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CardsView.d.ts","sourceRoot":"","sources":["../../src/views/CardsView.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"CardsView.d.ts","sourceRoot":"","sources":["../../src/views/CardsView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAuC,MAAM,OAAO,CAAA;AAsB3D,wBAAgB,SAAS,sBA2LxB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InvoiceListView.d.ts","sourceRoot":"","sources":["../../src/views/InvoiceListView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAuC,MAAM,OAAO,CAAA;AAQ3D,OAAO,KAAK,EAAE,oBAAoB,
|
|
1
|
+
{"version":3,"file":"InvoiceListView.d.ts","sourceRoot":"","sources":["../../src/views/InvoiceListView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAuC,MAAM,OAAO,CAAA;AAQ3D,OAAO,KAAK,EAAE,oBAAoB,EAA2D,MAAM,UAAU,CAAA;AA2E7G,wBAAgB,eAAe,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;IAC5D,SAAS,EAAE,oBAAoB,CAAA;IAC/B,KAAK,CAAC,EAAE,MAAM,IAAI,CAAA;IAClB,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;CAC9B,qBAkJA"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { QuickTransactionType } from '../types';
|
|
3
|
+
export declare function QuickTransactionForm({ open, onOpenChange, defaultType, defaultAccountId, focusReceipt }: {
|
|
4
|
+
open: boolean;
|
|
5
|
+
onOpenChange: (open: boolean) => void;
|
|
6
|
+
defaultType?: QuickTransactionType;
|
|
7
|
+
/** Preselect an account (e.g. opening from a specific card tile → log an expense against it). */
|
|
8
|
+
defaultAccountId?: string;
|
|
9
|
+
/**
|
|
10
|
+
* FAY-1226 "snap a receipt": open with the attachment step foregrounded — a
|
|
11
|
+
* prominent capture card at the top of the sheet + auto-open the image picker
|
|
12
|
+
* (mobile offers the camera). Used by the "Enviar recibo" entry point.
|
|
13
|
+
*/
|
|
14
|
+
focusReceipt?: boolean;
|
|
15
|
+
}): React.JSX.Element;
|
|
16
|
+
//# sourceMappingURL=QuickTransactionForm.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"QuickTransactionForm.d.ts","sourceRoot":"","sources":["../../src/views/QuickTransactionForm.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+C,MAAM,OAAO,CAAA;AAUnE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AAoIpD,wBAAgB,oBAAoB,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,WAAuB,EAAE,gBAAgB,EAAE,YAAoB,EAAE,EAAE;IAC5H,IAAI,EAAE,OAAO,CAAA;IACb,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAA;IACrC,WAAW,CAAC,EAAE,oBAAoB,CAAA;IAClC,iGAAiG;IACjG,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB;;;;OAIG;IACH,YAAY,CAAC,EAAE,OAAO,CAAA;CACvB,qBA8XA"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
/**
|
|
3
|
-
* Financial summary.
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
3
|
+
* Financial summary. On desktop (md+) it renders the rich multi-column dashboard
|
|
4
|
+
* (KPI cards + Fluxo de Caixa chart + breakdown + overdue alerts + recent-
|
|
5
|
+
* transactions table) via the shared DashboardCanvas. On mobile (<md) it swaps
|
|
6
|
+
* to a Mobills-grade experience: a compact KPI strip over a date-grouped
|
|
7
|
+
* transaction list. The two paths share the same store — no forked screen.
|
|
7
8
|
*/
|
|
8
9
|
export declare function SummaryView(): React.JSX.Element;
|
|
9
10
|
//# sourceMappingURL=SummaryView.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SummaryView.d.ts","sourceRoot":"","sources":["../../src/views/SummaryView.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"SummaryView.d.ts","sourceRoot":"","sources":["../../src/views/SummaryView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA6B,MAAM,OAAO,CAAA;AAUjD;;;;;;GAMG;AACH,wBAAgB,WAAW,sBAgB1B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dashboardWidgets.d.ts","sourceRoot":"","sources":["../../src/views/dashboardWidgets.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AACvC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAMvD,OAAO,
|
|
1
|
+
{"version":3,"file":"dashboardWidgets.d.ts","sourceRoot":"","sources":["../../src/views/dashboardWidgets.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AACvC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAMvD,OAAO,EAAyG,KAAK,uBAAuB,EAAE,MAAM,qBAAqB,CAAA;AACzK,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAA;AAC1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAgYhD,wBAAgB,+BAA+B,CAAC,GAAG,EAAE;IACnD,MAAM,EAAE,uBAAuB,CAAA;IAC/B,QAAQ,EAAE,qBAAqB,CAAA;IAC/B,KAAK,EAAE,QAAQ,CAAC,gBAAgB,CAAC,CAAA;CAClC,GAAG,kBAAkB,EAAE,CAoCvB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fayz-ai/plugin-financial",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"description": "Fayz SDK — plugin-financial plugin",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.cjs",
|
|
@@ -26,9 +26,9 @@
|
|
|
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/saas": "^0.6.
|
|
31
|
-
"@fayz-ai/
|
|
29
|
+
"@fayz-ai/ui": "^0.6.6",
|
|
30
|
+
"@fayz-ai/saas": "^0.6.6",
|
|
31
|
+
"@fayz-ai/core": "^0.6.6"
|
|
32
32
|
},
|
|
33
33
|
"devDependencies": {
|
|
34
34
|
"@types/react": "^18.3.0",
|
|
@@ -45,9 +45,6 @@
|
|
|
45
45
|
"fayz-plugin",
|
|
46
46
|
"fayz-sdk"
|
|
47
47
|
],
|
|
48
|
-
"publishConfig": {
|
|
49
|
-
"access": "public"
|
|
50
|
-
},
|
|
51
48
|
"scripts": {
|
|
52
49
|
"build": "tsup && tsc --emitDeclarationOnly --declaration --declarationMap --noEmit false",
|
|
53
50
|
"dev": "tsup --watch",
|
package/src/FinancialContext.tsx
CHANGED
|
@@ -28,6 +28,8 @@ export interface LocationOption {
|
|
|
28
28
|
|
|
29
29
|
export interface ResolvedFinancialConfig {
|
|
30
30
|
modules: FinancialModules
|
|
31
|
+
/** Show the plugin's own quick-add header buttons / FAB. Opt-in (default false). */
|
|
32
|
+
quickAdd: boolean
|
|
31
33
|
labels: FinancialPluginLabels
|
|
32
34
|
currency: FinancialCurrency
|
|
33
35
|
itemTypes: ItemTypeOption[]
|
package/src/FinancialPage.tsx
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React, { useState, useCallback, useMemo } from 'react'
|
|
1
|
+
import React, { useState, useCallback, useMemo, useEffect } from 'react'
|
|
2
2
|
import type { StoreApi } from 'zustand/vanilla'
|
|
3
3
|
import { useTranslation } from '@fayz-ai/core'
|
|
4
4
|
import { ModulePage, PageTransition, type ModuleNavItem } from '@fayz-ai/ui'
|
|
@@ -8,6 +8,11 @@ import type { FinancialUIState } from './store'
|
|
|
8
8
|
import type { PluginRegistryDef, PluginQuickAction } from '@fayz-ai/core'
|
|
9
9
|
import { useModuleNavigation, ModuleActionBar, parseViewId, PluginSettingsPanel } from '@fayz-ai/saas'
|
|
10
10
|
import { SummaryView } from './views/SummaryView'
|
|
11
|
+
import { QuickTransactionForm } from './views/QuickTransactionForm'
|
|
12
|
+
import { usePendingQuickAdd, consumeQuickAdd } from './quick-add'
|
|
13
|
+
import type { QuickTransactionType } from './types'
|
|
14
|
+
import { Plus } from 'lucide-react'
|
|
15
|
+
import { Button } from '@fayz-ai/ui'
|
|
11
16
|
import { PayablesView } from './views/PayablesView'
|
|
12
17
|
import { ReceivablesView } from './views/ReceivablesView'
|
|
13
18
|
import { CashRegistersView } from './views/CashRegistersView'
|
|
@@ -160,12 +165,58 @@ export function FinancialPage({ config, provider, store, registries }: {
|
|
|
160
165
|
try { return localStorage.getItem('saas-core:financial-onboarded') === 'true' } catch { return false }
|
|
161
166
|
})
|
|
162
167
|
|
|
168
|
+
// Skip the welcome wizard when the provider already has transactions — a user
|
|
169
|
+
// (or a seeded demo/dogfood provider) with existing data should land on the
|
|
170
|
+
// populated Summary, not a "let's get started" flow.
|
|
171
|
+
useEffect(() => {
|
|
172
|
+
if (onboardingComplete) return
|
|
173
|
+
let cancelled = false
|
|
174
|
+
void provider.getMovements({ pageSize: 1 })
|
|
175
|
+
.then((res) => { if (!cancelled && res.total > 0) setOnboardingComplete(true) })
|
|
176
|
+
.catch(() => { /* leave onboarding as-is on error */ })
|
|
177
|
+
return () => { cancelled = true }
|
|
178
|
+
}, [onboardingComplete, provider])
|
|
179
|
+
|
|
163
180
|
const t = useTranslation()
|
|
164
181
|
const intent = parseIntent(view)
|
|
165
182
|
const isSettings = view === 'settings'
|
|
166
183
|
const nav = buildNav(config, view, navigate, t)
|
|
167
184
|
|
|
185
|
+
// FAY-1225 "log money in a few taps": a reachable quick-add that opens the
|
|
186
|
+
// Mobills-grade transaction sheet (default = expense). Prominent primary
|
|
187
|
+
// button on desktop + a thumb-reachable FAB on mobile.
|
|
188
|
+
const [quickAddOpen, setQuickAddOpen] = useState(false)
|
|
189
|
+
const [quickAddType, setQuickAddType] = useState<QuickTransactionType>('expense')
|
|
190
|
+
// FAY-1226 "snap a receipt": when true, the sheet foregrounds the attachment
|
|
191
|
+
// step + auto-opens the camera/gallery picker.
|
|
192
|
+
const [quickAddReceipt, setQuickAddReceipt] = useState(false)
|
|
193
|
+
const openQuickAdd = useCallback((type: QuickTransactionType = 'expense') => {
|
|
194
|
+
setQuickAddType(type)
|
|
195
|
+
setQuickAddReceipt(false)
|
|
196
|
+
setQuickAddOpen(true)
|
|
197
|
+
}, [])
|
|
198
|
+
|
|
199
|
+
// FAY-1242: open the sheet on a global quick-add request (the app shell's
|
|
200
|
+
// elevated center "+" button). One-shot — consumed so it never re-fires.
|
|
201
|
+
const pendingQuickAdd = usePendingQuickAdd()
|
|
202
|
+
useEffect(() => {
|
|
203
|
+
if (!pendingQuickAdd) return
|
|
204
|
+
const req = consumeQuickAdd()
|
|
205
|
+
if (!req) return
|
|
206
|
+
setQuickAddType(req.type)
|
|
207
|
+
setQuickAddReceipt(req.receipt)
|
|
208
|
+
setQuickAddOpen(true)
|
|
209
|
+
}, [pendingQuickAdd])
|
|
210
|
+
|
|
211
|
+
// One-primary-action rule (FAY-1247): each module surfaces exactly ONE primary
|
|
212
|
+
// add affordance and config picks its face — never both. When quickAdd is the
|
|
213
|
+
// primary action (B2C, e.g. norman), suppress the ERP "+ New" menu here so the
|
|
214
|
+
// header shows only the quick-add "Nova transação" button. Payables are still
|
|
215
|
+
// covered: the quick-add sheet's "Pago: Não" creates an unpaid conta a pagar.
|
|
216
|
+
// When quickAdd is off (ERP default, beauty) this returns the payable/receivable/
|
|
217
|
+
// cash actions and no quick-add buttons render — exactly today's behavior.
|
|
168
218
|
const quickActions = useMemo<PluginQuickAction[]>(() => {
|
|
219
|
+
if (config.quickAdd) return []
|
|
169
220
|
const actions: PluginQuickAction[] = []
|
|
170
221
|
if (config.modules.payables) {
|
|
171
222
|
actions.push({
|
|
@@ -195,7 +246,7 @@ export function FinancialPage({ config, provider, store, registries }: {
|
|
|
195
246
|
})
|
|
196
247
|
}
|
|
197
248
|
return actions
|
|
198
|
-
}, [config.modules])
|
|
249
|
+
}, [config.modules, config.quickAdd])
|
|
199
250
|
|
|
200
251
|
function handleOnboardingComplete() {
|
|
201
252
|
setOnboardingComplete(true)
|
|
@@ -262,14 +313,42 @@ export function FinancialPage({ config, provider, store, registries }: {
|
|
|
262
313
|
viewKey={view}
|
|
263
314
|
direction={direction}
|
|
264
315
|
headerAction={
|
|
265
|
-
<
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
316
|
+
<div className="flex items-center gap-2">
|
|
317
|
+
{config.quickAdd && (
|
|
318
|
+
// One-primary-action rule (FAY-1247): quick-add is the single primary
|
|
319
|
+
// add affordance in B2C mode. The receipt entry point lives inside the
|
|
320
|
+
// sheet's "Fotografar ou anexar recibo" attachment step, so no separate
|
|
321
|
+
// "Enviar recibo" button is needed here.
|
|
322
|
+
<Button
|
|
323
|
+
size="sm"
|
|
324
|
+
className="hidden md:inline-flex"
|
|
325
|
+
onClick={() => openQuickAdd('expense')}
|
|
326
|
+
>
|
|
327
|
+
<Plus className="h-4 w-4" />
|
|
328
|
+
{t('financial.quickTx.newTransaction')}
|
|
329
|
+
</Button>
|
|
330
|
+
)}
|
|
331
|
+
<ModuleActionBar
|
|
332
|
+
quickActions={quickActions}
|
|
333
|
+
settingsPath={registries && registries.length > 0 ? '/settings/financial' : undefined}
|
|
334
|
+
settingsLabel={t('financial.settingsPage.title')}
|
|
335
|
+
/>
|
|
336
|
+
</div>
|
|
270
337
|
}
|
|
271
338
|
>
|
|
272
339
|
{renderView()}
|
|
340
|
+
|
|
341
|
+
{/* FAY-1242: the mobile quick-add + receipt FAB stack was removed — the
|
|
342
|
+
app shell's elevated center "+" bottom-nav button now owns global
|
|
343
|
+
quick-add (via openQuickAdd), and receipts stay reachable through the
|
|
344
|
+
form's Anexo step. Desktop keeps its header buttons above. */}
|
|
345
|
+
|
|
346
|
+
<QuickTransactionForm
|
|
347
|
+
open={quickAddOpen}
|
|
348
|
+
onOpenChange={setQuickAddOpen}
|
|
349
|
+
defaultType={quickAddType}
|
|
350
|
+
focusReceipt={quickAddReceipt}
|
|
351
|
+
/>
|
|
273
352
|
</ModulePage>
|
|
274
353
|
</FinancialContextProvider>
|
|
275
354
|
)
|
|
@@ -25,6 +25,51 @@ describe('plugin-financial · invoice/movement slice (mock provider)', () => {
|
|
|
25
25
|
const movs = await provider.getMovements({ direction: 'credit' })
|
|
26
26
|
expect(movs.data.some((m) => m.invoiceId === invoice.id && m.amount === 300)).toBe(true)
|
|
27
27
|
})
|
|
28
|
+
|
|
29
|
+
it('filters invoices by item account and cost center assignments', async () => {
|
|
30
|
+
const provider = createMockFinancialProvider()
|
|
31
|
+
const target = await provider.createInvoice({
|
|
32
|
+
direction: 'debit',
|
|
33
|
+
invoiceDate: '2026-06-01',
|
|
34
|
+
contactName: 'Supplier A',
|
|
35
|
+
items: [{
|
|
36
|
+
itemKind: 'other',
|
|
37
|
+
description: 'Supplies',
|
|
38
|
+
quantity: 1,
|
|
39
|
+
unitPrice: 120,
|
|
40
|
+
accountId: 'coa-expenses',
|
|
41
|
+
costCenterId: 'cc-salon',
|
|
42
|
+
}],
|
|
43
|
+
installments: [
|
|
44
|
+
{ direction: 'debit', movementKind: 'bill', amount: 120, dueDate: '2026-06-10', installmentNumber: 1 },
|
|
45
|
+
],
|
|
46
|
+
})
|
|
47
|
+
await provider.createInvoice({
|
|
48
|
+
direction: 'debit',
|
|
49
|
+
invoiceDate: '2026-06-01',
|
|
50
|
+
contactName: 'Supplier B',
|
|
51
|
+
items: [{
|
|
52
|
+
itemKind: 'other',
|
|
53
|
+
description: 'Marketing',
|
|
54
|
+
quantity: 1,
|
|
55
|
+
unitPrice: 80,
|
|
56
|
+
accountId: 'coa-marketing',
|
|
57
|
+
costCenterId: 'cc-marketing',
|
|
58
|
+
}],
|
|
59
|
+
installments: [
|
|
60
|
+
{ direction: 'debit', movementKind: 'bill', amount: 80, dueDate: '2026-06-10', installmentNumber: 1 },
|
|
61
|
+
],
|
|
62
|
+
})
|
|
63
|
+
|
|
64
|
+
const byAccount = await provider.getInvoices({ direction: 'debit', accountId: 'coa-expenses' })
|
|
65
|
+
expect(byAccount.data.map((invoice) => invoice.id)).toEqual([target.id])
|
|
66
|
+
|
|
67
|
+
const byCostCenter = await provider.getInvoices({ direction: 'debit', costCenterId: 'cc-salon' })
|
|
68
|
+
expect(byCostCenter.data.map((invoice) => invoice.id)).toEqual([target.id])
|
|
69
|
+
|
|
70
|
+
const byBoth = await provider.getInvoices({ direction: 'debit', accountId: 'coa-expenses', costCenterId: 'cc-marketing' })
|
|
71
|
+
expect(byBoth.data).toHaveLength(0)
|
|
72
|
+
})
|
|
28
73
|
})
|
|
29
74
|
|
|
30
75
|
describe('plugin-financial · ⚖️ reconciliation capability (mock provider)', () => {
|
package/src/data/index.ts
CHANGED
package/src/data/mock.ts
CHANGED
|
@@ -2,7 +2,7 @@ import type { FinancialDataProvider } from './types'
|
|
|
2
2
|
import type {
|
|
3
3
|
Invoice, InvoiceItem, FinancialMovement, BankAccount,
|
|
4
4
|
CashSession, PaymentMethod, PaymentMethodType, ChartOfAccountsNode,
|
|
5
|
-
CardTransaction,
|
|
5
|
+
CostCenter, CardTransaction,
|
|
6
6
|
CreateInvoiceInput, PayMovementInput, CreateTransferInput, TransferResult,
|
|
7
7
|
OpenCashSessionInput, CloseCashSessionInput, CreateBankAccountInput,
|
|
8
8
|
InvoiceQuery, MovementQuery, StatementQuery,
|
|
@@ -62,13 +62,15 @@ interface MockStore {
|
|
|
62
62
|
paymentMethods: PaymentMethod[]
|
|
63
63
|
paymentMethodTypes: PaymentMethodType[]
|
|
64
64
|
chartOfAccounts: ChartOfAccountsNode[]
|
|
65
|
+
costCenters: CostCenter[]
|
|
65
66
|
cardTransactions: CardTransaction[]
|
|
66
67
|
}
|
|
67
68
|
|
|
68
|
-
function createStore(
|
|
69
|
+
function createStore(options?: MockFinancialProviderOptions): MockStore {
|
|
69
70
|
const tenantId = 'mock-tenant'
|
|
71
|
+
const seed = options?.seed
|
|
70
72
|
|
|
71
|
-
const defaultPMTypes: PaymentMethodType[] = (
|
|
73
|
+
const defaultPMTypes: PaymentMethodType[] = (options?.paymentMethodTypes ?? [
|
|
72
74
|
{ name: 'Cash', transactionType: 'cash' },
|
|
73
75
|
{ name: 'Credit Card', transactionType: 'credit_card' },
|
|
74
76
|
{ name: 'Debit Card', transactionType: 'debit_card' },
|
|
@@ -109,14 +111,18 @@ function createStore(seedPaymentMethodTypes?: Array<{ name: string; transactionT
|
|
|
109
111
|
}
|
|
110
112
|
|
|
111
113
|
return {
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
114
|
+
// Seeded data (when provided) makes the module render as if the user already
|
|
115
|
+
// has accounts + transactions — a populated Summary/Statements instead of the
|
|
116
|
+
// empty onboarding state. Seed arrays are copied so the caller's data is not mutated.
|
|
117
|
+
invoices: seed?.invoices ? [...seed.invoices] : [],
|
|
118
|
+
invoiceItems: seed?.invoiceItems ? [...seed.invoiceItems] : [],
|
|
119
|
+
movements: seed?.movements ? [...seed.movements] : [],
|
|
120
|
+
bankAccounts: seed?.bankAccounts ? [...seed.bankAccounts] : [cashAccount, bankAccount],
|
|
116
121
|
cashSessions: [],
|
|
117
|
-
paymentMethods: [],
|
|
122
|
+
paymentMethods: seed?.paymentMethods ? [...seed.paymentMethods] : [],
|
|
118
123
|
paymentMethodTypes: defaultPMTypes,
|
|
119
124
|
chartOfAccounts: [],
|
|
125
|
+
costCenters: [],
|
|
120
126
|
cardTransactions: [],
|
|
121
127
|
}
|
|
122
128
|
}
|
|
@@ -125,12 +131,27 @@ function createStore(seedPaymentMethodTypes?: Array<{ name: string; transactionT
|
|
|
125
131
|
// Mock provider factory
|
|
126
132
|
// ---------------------------------------------------------------------------
|
|
127
133
|
|
|
134
|
+
/**
|
|
135
|
+
* Pre-populated store data. Any omitted collection stays empty (except
|
|
136
|
+
* bankAccounts, which fall back to the two default mock accounts when absent).
|
|
137
|
+
* Pass full domain objects — the mock treats them as the existing ledger.
|
|
138
|
+
*/
|
|
139
|
+
export interface MockFinancialSeed {
|
|
140
|
+
bankAccounts?: BankAccount[]
|
|
141
|
+
invoices?: Invoice[]
|
|
142
|
+
invoiceItems?: InvoiceItem[]
|
|
143
|
+
movements?: FinancialMovement[]
|
|
144
|
+
paymentMethods?: PaymentMethod[]
|
|
145
|
+
}
|
|
146
|
+
|
|
128
147
|
export interface MockFinancialProviderOptions {
|
|
129
148
|
paymentMethodTypes?: Array<{ name: string; transactionType?: string }>
|
|
149
|
+
/** Pre-seed the in-memory store so the module renders populated (not the empty state). */
|
|
150
|
+
seed?: MockFinancialSeed
|
|
130
151
|
}
|
|
131
152
|
|
|
132
153
|
export function createMockFinancialProvider(options?: MockFinancialProviderOptions): FinancialDataProvider {
|
|
133
|
-
const store = createStore(options
|
|
154
|
+
const store = createStore(options)
|
|
134
155
|
const tenantId = 'mock-tenant'
|
|
135
156
|
|
|
136
157
|
function recalcInvoiceStatus(invoice: Invoice): void {
|
|
@@ -154,6 +175,14 @@ export function createMockFinancialProvider(options?: MockFinancialProviderOptio
|
|
|
154
175
|
if (query.direction) results = results.filter((i) => i.direction === query.direction)
|
|
155
176
|
if (query.status) results = results.filter((i) => matchesStatus(i.status, query.status as InvoiceStatus | InvoiceStatus[]))
|
|
156
177
|
if (query.contactId) results = results.filter((i) => i.contactId === query.contactId)
|
|
178
|
+
if (query.accountId) {
|
|
179
|
+
const invoiceIds = new Set(store.invoiceItems.filter((item) => item.accountId === query.accountId).map((item) => item.invoiceId))
|
|
180
|
+
results = results.filter((invoice) => invoiceIds.has(invoice.id))
|
|
181
|
+
}
|
|
182
|
+
if (query.costCenterId) {
|
|
183
|
+
const invoiceIds = new Set(store.invoiceItems.filter((item) => item.costCenterId === query.costCenterId).map((item) => item.invoiceId))
|
|
184
|
+
results = results.filter((invoice) => invoiceIds.has(invoice.id))
|
|
185
|
+
}
|
|
157
186
|
if (query.dateRange) results = results.filter((i) => matchesDateRange(i.invoiceDate, query.dateRange))
|
|
158
187
|
if (query.search) {
|
|
159
188
|
const s = query.search.toLowerCase()
|
|
@@ -511,6 +540,10 @@ export function createMockFinancialProvider(options?: MockFinancialProviderOptio
|
|
|
511
540
|
return store.chartOfAccounts.filter((n) => n.isActive)
|
|
512
541
|
},
|
|
513
542
|
|
|
543
|
+
async getCostCenters(): Promise<CostCenter[]> {
|
|
544
|
+
return store.costCenters.filter((c) => c.isActive)
|
|
545
|
+
},
|
|
546
|
+
|
|
514
547
|
// --- Card Transactions ---
|
|
515
548
|
async getCardTransactions(dateRange?: DateRange): Promise<CardTransaction[]> {
|
|
516
549
|
let results = [...store.cardTransactions]
|
|
@@ -627,7 +660,14 @@ export function createMockFinancialProvider(options?: MockFinancialProviderOptio
|
|
|
627
660
|
)
|
|
628
661
|
|
|
629
662
|
const todayStr = today()
|
|
630
|
-
|
|
663
|
+
// "Monthly" cash flow uses a trailing 30-day window (rolling month), not
|
|
664
|
+
// calendar month-to-date. Month-to-date collapses to near-empty in the
|
|
665
|
+
// first days of a month — on the 1st it's a single day — so the cash-flow
|
|
666
|
+
// chart and Fluxo Mensal KPI read empty even with a full month of realized
|
|
667
|
+
// activity. A rolling window stays representative on every day of the month.
|
|
668
|
+
const monthAgo = new Date()
|
|
669
|
+
monthAgo.setDate(monthAgo.getDate() - 30)
|
|
670
|
+
const monthStart = monthAgo.toISOString().slice(0, 10)
|
|
631
671
|
const monthEnd = todayStr
|
|
632
672
|
|
|
633
673
|
const monthMovements = store.movements.filter((m) =>
|