@fayz-ai/plugin-financial 0.1.1
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 +44 -0
- package/dist/FinancialContext.d.ts.map +1 -0
- package/dist/FinancialPage.d.ts +18 -0
- package/dist/FinancialPage.d.ts.map +1 -0
- package/dist/components/FinancialGeneralSettings.d.ts +3 -0
- package/dist/components/FinancialGeneralSettings.d.ts.map +1 -0
- package/dist/components/FinancialOnboarding.d.ts +5 -0
- package/dist/components/FinancialOnboarding.d.ts.map +1 -0
- package/dist/components/FinancialSettings.d.ts +8 -0
- package/dist/components/FinancialSettings.d.ts.map +1 -0
- package/dist/components/PaymentModal.d.ts +8 -0
- package/dist/components/PaymentModal.d.ts.map +1 -0
- package/dist/data/index.d.ts +3 -0
- package/dist/data/index.d.ts.map +1 -0
- package/dist/data/mock.d.ts +9 -0
- package/dist/data/mock.d.ts.map +1 -0
- package/dist/data/supabase.d.ts +3 -0
- package/dist/data/supabase.d.ts.map +1 -0
- package/dist/data/types.d.ts +27 -0
- package/dist/data/types.d.ts.map +1 -0
- package/dist/index.cjs +4937 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +91 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +4930 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/tenant.d.ts +3 -0
- package/dist/lib/tenant.d.ts.map +1 -0
- package/dist/locales/en.d.ts +2 -0
- package/dist/locales/en.d.ts.map +1 -0
- package/dist/locales/index.d.ts +2 -0
- package/dist/locales/index.d.ts.map +1 -0
- package/dist/locales/pt-BR.d.ts +2 -0
- package/dist/locales/pt-BR.d.ts.map +1 -0
- package/dist/registries.d.ts +3 -0
- package/dist/registries.d.ts.map +1 -0
- package/dist/store.d.ts +38 -0
- package/dist/store.d.ts.map +1 -0
- package/dist/types.d.ts +302 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/views/CardsView.d.ts +3 -0
- package/dist/views/CardsView.d.ts.map +1 -0
- package/dist/views/CashRegistersView.d.ts +3 -0
- package/dist/views/CashRegistersView.d.ts.map +1 -0
- package/dist/views/CommissionsView.d.ts +3 -0
- package/dist/views/CommissionsView.d.ts.map +1 -0
- package/dist/views/InvoiceDetailView.d.ts +9 -0
- package/dist/views/InvoiceDetailView.d.ts.map +1 -0
- package/dist/views/InvoiceFormView.d.ts +13 -0
- package/dist/views/InvoiceFormView.d.ts.map +1 -0
- package/dist/views/InvoiceListView.d.ts +8 -0
- package/dist/views/InvoiceListView.d.ts.map +1 -0
- package/dist/views/PayablesView.d.ts +7 -0
- package/dist/views/PayablesView.d.ts.map +1 -0
- package/dist/views/ReceivablesView.d.ts +7 -0
- package/dist/views/ReceivablesView.d.ts.map +1 -0
- package/dist/views/StatementsView.d.ts +3 -0
- package/dist/views/StatementsView.d.ts.map +1 -0
- package/dist/views/SummaryView.d.ts +9 -0
- package/dist/views/SummaryView.d.ts.map +1 -0
- package/dist/views/dashboardWidgets.d.ts +11 -0
- package/dist/views/dashboardWidgets.d.ts.map +1 -0
- package/package.json +55 -0
- package/src/FinancialContext.tsx +47 -0
- package/src/FinancialPage.tsx +261 -0
- package/src/README.md +155 -0
- package/src/components/FinancialGeneralSettings.tsx +26 -0
- package/src/components/FinancialOnboarding.tsx +87 -0
- package/src/components/FinancialSettings.tsx +31 -0
- package/src/components/PaymentModal.tsx +322 -0
- package/src/data/index.ts +2 -0
- package/src/data/mock.ts +520 -0
- package/src/data/supabase.ts +509 -0
- package/src/data/types.ts +53 -0
- package/src/index.ts +307 -0
- package/src/lib/tenant.ts +3 -0
- package/src/locales/en.ts +331 -0
- package/src/locales/index.ts +7 -0
- package/src/locales/pt-BR.ts +331 -0
- package/src/migrations/001_financial_base.sql +109 -0
- package/src/migrations/002_chart_of_accounts.sql +28 -0
- package/src/migrations/003_card_brands.sql +12 -0
- package/src/migrations/004_order_to_cash.sql +164 -0
- package/src/migrations/005_seed_defaults.sql +38 -0
- package/src/registries.ts +305 -0
- package/src/store.ts +221 -0
- package/src/types.ts +359 -0
- package/src/views/CardsView.tsx +74 -0
- package/src/views/CashRegistersView.tsx +597 -0
- package/src/views/CommissionsView.tsx +18 -0
- package/src/views/InvoiceDetailView.tsx +595 -0
- package/src/views/InvoiceFormView.tsx +900 -0
- package/src/views/InvoiceListView.tsx +177 -0
- package/src/views/PayablesView.tsx +37 -0
- package/src/views/ReceivablesView.tsx +37 -0
- package/src/views/StatementsView.tsx +123 -0
- package/src/views/SummaryView.tsx +12 -0
- package/src/views/dashboardWidgets.tsx +191 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tenant.d.ts","sourceRoot":"","sources":["../../src/lib/tenant.ts"],"names":[],"mappings":"AACA,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,QAAW;AACtE,wBAAgB,oBAAoB,IAAI,MAAM,GAAG,SAAS,CAAa"}
|
|
@@ -0,0 +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,CAyUrC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/locales/index.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAGnE,CAAA"}
|
|
@@ -0,0 +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,CAyUvC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registries.d.ts","sourceRoot":"","sources":["../src/registries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AAqMtD,eAAO,MAAM,mBAAmB,EAAE,iBAAiB,EA2GlD,CAAA"}
|
package/dist/store.d.ts
ADDED
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { type StoreApi } from 'zustand/vanilla';
|
|
2
|
+
import type { FinancialDataProvider } from './data/types';
|
|
3
|
+
import type { Invoice, FinancialMovement, BankAccount, CashSession, PaymentMethod, PaymentMethodType, CardTransaction, FinancialSummary, StatementEntry, InvoiceQuery, StatementQuery, CreateInvoiceInput, PayMovementInput, OpenCashSessionInput, CloseCashSessionInput, DateRange } from './types';
|
|
4
|
+
export interface FinancialUIState {
|
|
5
|
+
invoices: Invoice[];
|
|
6
|
+
invoicesTotal: number;
|
|
7
|
+
invoicesLoading: boolean;
|
|
8
|
+
invoiceQuery: InvoiceQuery;
|
|
9
|
+
movements: FinancialMovement[];
|
|
10
|
+
movementsTotal: number;
|
|
11
|
+
movementsLoading: boolean;
|
|
12
|
+
bankAccounts: BankAccount[];
|
|
13
|
+
bankAccountsLoading: boolean;
|
|
14
|
+
cashSessions: CashSession[];
|
|
15
|
+
cashSessionsLoading: boolean;
|
|
16
|
+
paymentMethods: PaymentMethod[];
|
|
17
|
+
paymentMethodTypes: PaymentMethodType[];
|
|
18
|
+
summary: FinancialSummary | null;
|
|
19
|
+
summaryLoading: boolean;
|
|
20
|
+
statementEntries: StatementEntry[];
|
|
21
|
+
statementLoading: boolean;
|
|
22
|
+
cardTransactions: CardTransaction[];
|
|
23
|
+
cardsLoading: boolean;
|
|
24
|
+
fetchSummary(dateRange?: DateRange): Promise<void>;
|
|
25
|
+
fetchInvoices(query: InvoiceQuery): Promise<void>;
|
|
26
|
+
fetchBankAccounts(): Promise<void>;
|
|
27
|
+
fetchCashSessions(bankAccountId?: string): Promise<void>;
|
|
28
|
+
fetchPaymentMethods(): Promise<void>;
|
|
29
|
+
fetchStatement(query: StatementQuery): Promise<void>;
|
|
30
|
+
fetchCardTransactions(dateRange?: DateRange): Promise<void>;
|
|
31
|
+
createInvoice(input: CreateInvoiceInput): Promise<Invoice>;
|
|
32
|
+
payMovement(input: PayMovementInput): Promise<void>;
|
|
33
|
+
cancelInvoice(invoiceId: string): Promise<void>;
|
|
34
|
+
openCashSession(input: OpenCashSessionInput): Promise<CashSession>;
|
|
35
|
+
closeCashSession(input: CloseCashSessionInput): Promise<CashSession>;
|
|
36
|
+
}
|
|
37
|
+
export declare function createFinancialStore(provider: FinancialDataProvider): StoreApi<FinancialUIState>;
|
|
38
|
+
//# sourceMappingURL=store.d.ts.map
|
|
@@ -0,0 +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,cAAc,EAChC,YAAY,EAAiB,cAAc,EAC3C,kBAAkB,EAAE,gBAAgB,EACpC,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,gBAAgB,EAAE,cAAc,EAAE,CAAA;IAClC,gBAAgB,EAAE,OAAO,CAAA;IAEzB,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,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,CA0JhG"}
|
package/dist/types.d.ts
ADDED
|
@@ -0,0 +1,302 @@
|
|
|
1
|
+
/** Direction: debit (money going out / payable) or credit (money coming in / receivable) */
|
|
2
|
+
export type TransactionDirection = 'debit' | 'credit';
|
|
3
|
+
/** What kind of financial movement this is */
|
|
4
|
+
export type MovementKind = 'bill' | 'payment' | 'transfer';
|
|
5
|
+
/** Status of a financial movement */
|
|
6
|
+
export type MovementStatus = 'pending' | 'paid' | 'partial' | 'overdue' | 'cancelled';
|
|
7
|
+
/** Status of an invoice */
|
|
8
|
+
export type InvoiceStatus = 'draft' | 'open' | 'partial' | 'paid' | 'cancelled' | 'overdue';
|
|
9
|
+
/** Type of bank account */
|
|
10
|
+
export type BankAccountType = 'bank_account' | 'cash_register' | 'credit_card' | 'digital_wallet';
|
|
11
|
+
/** Cash session status */
|
|
12
|
+
export type CashSessionStatus = 'open' | 'closed';
|
|
13
|
+
/** Discount/interest application mode */
|
|
14
|
+
export type AdjustmentMode = 'percentage' | 'fixed';
|
|
15
|
+
/** Chart of accounts node type */
|
|
16
|
+
export type AccountNodeType = 'group' | 'leaf';
|
|
17
|
+
/** Item type on an invoice line — parametrizable per vertical */
|
|
18
|
+
export type InvoiceItemKind = string;
|
|
19
|
+
export interface Invoice {
|
|
20
|
+
id: string;
|
|
21
|
+
direction: TransactionDirection;
|
|
22
|
+
invoiceDate: string;
|
|
23
|
+
fiscalNumber?: string;
|
|
24
|
+
totalAmount: number;
|
|
25
|
+
paidAmount: number;
|
|
26
|
+
status: InvoiceStatus;
|
|
27
|
+
totalInstallments: number;
|
|
28
|
+
contactId?: string;
|
|
29
|
+
contactName?: string;
|
|
30
|
+
cashSessionId?: string;
|
|
31
|
+
unitId?: string;
|
|
32
|
+
observations?: string;
|
|
33
|
+
/** Denormalized summary of item descriptions for list display */
|
|
34
|
+
itemsSummary?: string;
|
|
35
|
+
/** If this order has a scheduled time (booking), the start time */
|
|
36
|
+
bookingStartsAt?: string;
|
|
37
|
+
metadata?: Record<string, unknown>;
|
|
38
|
+
tenantId: string;
|
|
39
|
+
createdAt: string;
|
|
40
|
+
updatedAt: string;
|
|
41
|
+
}
|
|
42
|
+
export interface InvoiceItem {
|
|
43
|
+
id: string;
|
|
44
|
+
invoiceId: string;
|
|
45
|
+
itemKind: InvoiceItemKind;
|
|
46
|
+
referenceId?: string;
|
|
47
|
+
description: string;
|
|
48
|
+
quantity: number;
|
|
49
|
+
unitPrice: number;
|
|
50
|
+
totalAmount: number;
|
|
51
|
+
discount: number;
|
|
52
|
+
surcharge: number;
|
|
53
|
+
accountId?: string;
|
|
54
|
+
costCenterId?: string;
|
|
55
|
+
isExecuted?: boolean;
|
|
56
|
+
executionDate?: string;
|
|
57
|
+
executedByProfessionalId?: string;
|
|
58
|
+
metadata?: Record<string, unknown>;
|
|
59
|
+
createdAt: string;
|
|
60
|
+
}
|
|
61
|
+
export interface FinancialMovement {
|
|
62
|
+
id: string;
|
|
63
|
+
invoiceId?: string;
|
|
64
|
+
direction: TransactionDirection;
|
|
65
|
+
movementKind: MovementKind;
|
|
66
|
+
amount: number;
|
|
67
|
+
paidAmount: number;
|
|
68
|
+
status: MovementStatus;
|
|
69
|
+
dueDate: string;
|
|
70
|
+
paymentDate?: string;
|
|
71
|
+
installmentNumber?: number;
|
|
72
|
+
paymentMethodId?: string;
|
|
73
|
+
paymentMethodTypeId?: string;
|
|
74
|
+
bankAccountId?: string;
|
|
75
|
+
cashSessionId?: string;
|
|
76
|
+
cardBrand?: string;
|
|
77
|
+
cardInstallments?: number;
|
|
78
|
+
debitAccountId?: string;
|
|
79
|
+
creditAccountId?: string;
|
|
80
|
+
notes?: string;
|
|
81
|
+
metadata?: Record<string, unknown>;
|
|
82
|
+
tenantId: string;
|
|
83
|
+
createdAt: string;
|
|
84
|
+
updatedAt: string;
|
|
85
|
+
}
|
|
86
|
+
export interface BankAccount {
|
|
87
|
+
id: string;
|
|
88
|
+
name: string;
|
|
89
|
+
accountType: BankAccountType;
|
|
90
|
+
bankName?: string;
|
|
91
|
+
accountNumber?: string;
|
|
92
|
+
agencyNumber?: string;
|
|
93
|
+
currentBalance: number;
|
|
94
|
+
initialBalance: number;
|
|
95
|
+
creditLimit?: number;
|
|
96
|
+
dueDay?: number;
|
|
97
|
+
closingDay?: number;
|
|
98
|
+
isActive: boolean;
|
|
99
|
+
unitId?: string;
|
|
100
|
+
tenantId: string;
|
|
101
|
+
createdAt: string;
|
|
102
|
+
updatedAt: string;
|
|
103
|
+
}
|
|
104
|
+
export interface CashSession {
|
|
105
|
+
id: string;
|
|
106
|
+
bankAccountId: string;
|
|
107
|
+
bankAccountName?: string;
|
|
108
|
+
status: CashSessionStatus;
|
|
109
|
+
openedAt: string;
|
|
110
|
+
openedByUserId?: string;
|
|
111
|
+
openedByName?: string;
|
|
112
|
+
openingBalance: number;
|
|
113
|
+
closedAt?: string;
|
|
114
|
+
closedByUserId?: string;
|
|
115
|
+
closedByName?: string;
|
|
116
|
+
closingBalance?: number;
|
|
117
|
+
expectedBalance?: number;
|
|
118
|
+
difference?: number;
|
|
119
|
+
notes?: string;
|
|
120
|
+
unitId?: string;
|
|
121
|
+
tenantId: string;
|
|
122
|
+
createdAt: string;
|
|
123
|
+
}
|
|
124
|
+
export interface PaymentMethod {
|
|
125
|
+
id: string;
|
|
126
|
+
name: string;
|
|
127
|
+
paymentMethodTypeId: string;
|
|
128
|
+
isActive: boolean;
|
|
129
|
+
discountMode?: AdjustmentMode;
|
|
130
|
+
discountValue?: number;
|
|
131
|
+
interestMode?: AdjustmentMode;
|
|
132
|
+
interestValue?: number;
|
|
133
|
+
minInstallments: number;
|
|
134
|
+
maxInstallments: number;
|
|
135
|
+
serviceFilterMode?: 'all' | 'include' | 'exclude';
|
|
136
|
+
serviceFilterIds?: string[];
|
|
137
|
+
tenantId: string;
|
|
138
|
+
createdAt: string;
|
|
139
|
+
updatedAt: string;
|
|
140
|
+
}
|
|
141
|
+
export interface PaymentMethodType {
|
|
142
|
+
id: string;
|
|
143
|
+
name: string;
|
|
144
|
+
transactionType?: string;
|
|
145
|
+
isActive: boolean;
|
|
146
|
+
allowedAccountTypes?: BankAccountType[];
|
|
147
|
+
tenantId: string;
|
|
148
|
+
createdAt: string;
|
|
149
|
+
}
|
|
150
|
+
export interface ChartOfAccountsNode {
|
|
151
|
+
id: string;
|
|
152
|
+
code: string;
|
|
153
|
+
name: string;
|
|
154
|
+
nodeType: AccountNodeType;
|
|
155
|
+
parentId?: string;
|
|
156
|
+
isActive: boolean;
|
|
157
|
+
tenantId: string;
|
|
158
|
+
createdAt: string;
|
|
159
|
+
}
|
|
160
|
+
export interface CardTransaction {
|
|
161
|
+
id: string;
|
|
162
|
+
movementId: string;
|
|
163
|
+
cardBrand: string;
|
|
164
|
+
totalAmount: number;
|
|
165
|
+
installmentCount: number;
|
|
166
|
+
currentInstallment: number;
|
|
167
|
+
installmentAmount: number;
|
|
168
|
+
expectedDate: string;
|
|
169
|
+
receivedDate?: string;
|
|
170
|
+
fee?: number;
|
|
171
|
+
netAmount?: number;
|
|
172
|
+
status: 'pending' | 'received' | 'cancelled';
|
|
173
|
+
tenantId: string;
|
|
174
|
+
createdAt: string;
|
|
175
|
+
}
|
|
176
|
+
export interface CreateInvoiceInput {
|
|
177
|
+
direction: TransactionDirection;
|
|
178
|
+
invoiceDate: string;
|
|
179
|
+
fiscalNumber?: string;
|
|
180
|
+
contactId?: string;
|
|
181
|
+
contactName?: string;
|
|
182
|
+
cashSessionId?: string;
|
|
183
|
+
unitId?: string;
|
|
184
|
+
observations?: string;
|
|
185
|
+
metadata?: Record<string, unknown>;
|
|
186
|
+
items: CreateInvoiceItemInput[];
|
|
187
|
+
installments: CreateMovementInput[];
|
|
188
|
+
}
|
|
189
|
+
export interface CreateInvoiceItemInput {
|
|
190
|
+
itemKind: InvoiceItemKind;
|
|
191
|
+
referenceId?: string;
|
|
192
|
+
description: string;
|
|
193
|
+
quantity: number;
|
|
194
|
+
unitPrice: number;
|
|
195
|
+
discount?: number;
|
|
196
|
+
surcharge?: number;
|
|
197
|
+
accountId?: string;
|
|
198
|
+
costCenterId?: string;
|
|
199
|
+
metadata?: Record<string, unknown>;
|
|
200
|
+
}
|
|
201
|
+
export interface CreateMovementInput {
|
|
202
|
+
direction: TransactionDirection;
|
|
203
|
+
movementKind: MovementKind;
|
|
204
|
+
amount: number;
|
|
205
|
+
dueDate: string;
|
|
206
|
+
installmentNumber?: number;
|
|
207
|
+
paymentMethodId?: string;
|
|
208
|
+
bankAccountId?: string;
|
|
209
|
+
notes?: string;
|
|
210
|
+
metadata?: Record<string, unknown>;
|
|
211
|
+
}
|
|
212
|
+
export interface PayMovementInput {
|
|
213
|
+
movementId: string;
|
|
214
|
+
amount: number;
|
|
215
|
+
paymentDate: string;
|
|
216
|
+
paymentMethodId?: string;
|
|
217
|
+
paymentMethodTypeId?: string;
|
|
218
|
+
bankAccountId?: string;
|
|
219
|
+
cashSessionId?: string;
|
|
220
|
+
cardBrand?: string;
|
|
221
|
+
cardInstallments?: number;
|
|
222
|
+
}
|
|
223
|
+
export interface OpenCashSessionInput {
|
|
224
|
+
bankAccountId: string;
|
|
225
|
+
openingBalance: number;
|
|
226
|
+
openedByUserId?: string;
|
|
227
|
+
openedByName?: string;
|
|
228
|
+
unitId?: string;
|
|
229
|
+
notes?: string;
|
|
230
|
+
}
|
|
231
|
+
export interface CloseCashSessionInput {
|
|
232
|
+
sessionId: string;
|
|
233
|
+
closingBalance: number;
|
|
234
|
+
closedByUserId?: string;
|
|
235
|
+
closedByName?: string;
|
|
236
|
+
notes?: string;
|
|
237
|
+
}
|
|
238
|
+
export interface CreateBankAccountInput {
|
|
239
|
+
name: string;
|
|
240
|
+
accountType: BankAccountType;
|
|
241
|
+
bankName?: string;
|
|
242
|
+
accountNumber?: string;
|
|
243
|
+
agencyNumber?: string;
|
|
244
|
+
initialBalance?: number;
|
|
245
|
+
creditLimit?: number;
|
|
246
|
+
dueDay?: number;
|
|
247
|
+
closingDay?: number;
|
|
248
|
+
unitId?: string;
|
|
249
|
+
}
|
|
250
|
+
export interface DateRange {
|
|
251
|
+
from: string;
|
|
252
|
+
to: string;
|
|
253
|
+
}
|
|
254
|
+
export interface InvoiceQuery {
|
|
255
|
+
direction?: TransactionDirection;
|
|
256
|
+
status?: InvoiceStatus | InvoiceStatus[];
|
|
257
|
+
contactId?: string;
|
|
258
|
+
dateRange?: DateRange;
|
|
259
|
+
search?: string;
|
|
260
|
+
page?: number;
|
|
261
|
+
pageSize?: number;
|
|
262
|
+
}
|
|
263
|
+
export interface MovementQuery {
|
|
264
|
+
direction?: TransactionDirection;
|
|
265
|
+
status?: MovementStatus | MovementStatus[];
|
|
266
|
+
bankAccountId?: string;
|
|
267
|
+
cashSessionId?: string;
|
|
268
|
+
dateRange?: DateRange;
|
|
269
|
+
page?: number;
|
|
270
|
+
pageSize?: number;
|
|
271
|
+
}
|
|
272
|
+
export interface StatementQuery {
|
|
273
|
+
bankAccountId: string;
|
|
274
|
+
dateRange: DateRange;
|
|
275
|
+
}
|
|
276
|
+
export interface PaginatedResult<T> {
|
|
277
|
+
data: T[];
|
|
278
|
+
total: number;
|
|
279
|
+
}
|
|
280
|
+
export interface FinancialSummary {
|
|
281
|
+
totalBalance: number;
|
|
282
|
+
totalReceivable: number;
|
|
283
|
+
totalPayable: number;
|
|
284
|
+
monthlyInflow: number;
|
|
285
|
+
monthlyOutflow: number;
|
|
286
|
+
overdueReceivableCount: number;
|
|
287
|
+
overdueReceivableAmount: number;
|
|
288
|
+
overduePayableCount: number;
|
|
289
|
+
overduePayableAmount: number;
|
|
290
|
+
}
|
|
291
|
+
export interface StatementEntry {
|
|
292
|
+
movement: FinancialMovement;
|
|
293
|
+
invoice?: Invoice;
|
|
294
|
+
runningBalance: number;
|
|
295
|
+
}
|
|
296
|
+
export interface CashSessionSummary {
|
|
297
|
+
session: CashSession;
|
|
298
|
+
movementCount: number;
|
|
299
|
+
totalInflow: number;
|
|
300
|
+
totalOutflow: number;
|
|
301
|
+
}
|
|
302
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CardsView.d.ts","sourceRoot":"","sources":["../../src/views/CardsView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoB,MAAM,OAAO,CAAA;AAMxC,wBAAgB,SAAS,sBAmExB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CashRegistersView.d.ts","sourceRoot":"","sources":["../../src/views/CashRegistersView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAuC,MAAM,OAAO,CAAA;AAsa3D,wBAAgB,iBAAiB,sBAwIhC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CommissionsView.d.ts","sourceRoot":"","sources":["../../src/views/CommissionsView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAKzB,wBAAgB,eAAe,sBAY9B"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { TransactionDirection } from '../types';
|
|
3
|
+
export declare function InvoiceDetailView({ invoiceId, direction, onBack, onEdit }: {
|
|
4
|
+
invoiceId: string;
|
|
5
|
+
direction: TransactionDirection;
|
|
6
|
+
onBack: () => void;
|
|
7
|
+
onEdit: () => void;
|
|
8
|
+
}): React.JSX.Element;
|
|
9
|
+
//# sourceMappingURL=InvoiceDetailView.d.ts.map
|
|
@@ -0,0 +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;IAC1E,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,oBAAoB,CAAA;IAC/B,MAAM,EAAE,MAAM,IAAI,CAAA;IAClB,MAAM,EAAE,MAAM,IAAI,CAAA;CACnB,qBAujBA"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { TransactionDirection } from '../types';
|
|
3
|
+
export interface LocationOption {
|
|
4
|
+
id: string;
|
|
5
|
+
name: string;
|
|
6
|
+
isHQ?: boolean;
|
|
7
|
+
}
|
|
8
|
+
export declare function InvoiceFormView({ direction, editId, onSaved }: {
|
|
9
|
+
direction: TransactionDirection;
|
|
10
|
+
editId?: string;
|
|
11
|
+
onSaved?: (id?: string) => void;
|
|
12
|
+
}): React.JSX.Element;
|
|
13
|
+
//# sourceMappingURL=InvoiceFormView.d.ts.map
|
|
@@ -0,0 +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;AA0VD,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,qBAghBA"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { TransactionDirection } from '../types';
|
|
3
|
+
export declare function InvoiceListView({ direction, onNew, onEdit }: {
|
|
4
|
+
direction: TransactionDirection;
|
|
5
|
+
onNew?: () => void;
|
|
6
|
+
onEdit?: (id: string) => void;
|
|
7
|
+
}): React.JSX.Element;
|
|
8
|
+
//# sourceMappingURL=InvoiceListView.d.ts.map
|
|
@@ -0,0 +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,EAA0B,MAAM,UAAU,CAAA;AA2E5E,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,qBAyFA"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { ViewIntent } from '../FinancialPage';
|
|
3
|
+
export declare function PayablesView({ intent, onNavigate }: {
|
|
4
|
+
intent: ViewIntent;
|
|
5
|
+
onNavigate: (view: string) => void;
|
|
6
|
+
}): React.JSX.Element;
|
|
7
|
+
//# sourceMappingURL=PayablesView.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PayablesView.d.ts","sourceRoot":"","sources":["../../src/views/PayablesView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAIzB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAElD,wBAAgB,YAAY,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE;IACnD,MAAM,EAAE,UAAU,CAAA;IAClB,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;CACnC,qBA2BA"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { ViewIntent } from '../FinancialPage';
|
|
3
|
+
export declare function ReceivablesView({ intent, onNavigate }: {
|
|
4
|
+
intent: ViewIntent;
|
|
5
|
+
onNavigate: (view: string) => void;
|
|
6
|
+
}): React.JSX.Element;
|
|
7
|
+
//# sourceMappingURL=ReceivablesView.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReceivablesView.d.ts","sourceRoot":"","sources":["../../src/views/ReceivablesView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAIzB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAElD,wBAAgB,eAAe,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE;IACtD,MAAM,EAAE,UAAU,CAAA;IAClB,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;CACnC,qBA2BA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StatementsView.d.ts","sourceRoot":"","sources":["../../src/views/StatementsView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAuC,MAAM,OAAO,CAAA;AAU3D,wBAAgB,cAAc,sBAgH7B"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* Financial summary. KPIs, cash-flow chart, breakdown, overdue alerts and the
|
|
4
|
+
* recent-transactions table are registered dashboard widgets (see
|
|
5
|
+
* ./dashboardWidgets), rendered through the shared DashboardCanvas; the
|
|
6
|
+
* total-balance KPI also surfaces on the global app home.
|
|
7
|
+
*/
|
|
8
|
+
export declare function SummaryView(): React.JSX.Element;
|
|
9
|
+
//# sourceMappingURL=SummaryView.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SummaryView.d.ts","sourceRoot":"","sources":["../../src/views/SummaryView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB;;;;;GAKG;AACH,wBAAgB,WAAW,sBAE1B"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { StoreApi } from 'zustand';
|
|
2
|
+
import type { DashboardWidgetDef } from '@fayz-ai/core';
|
|
3
|
+
import { type ResolvedFinancialConfig } from '../FinancialContext';
|
|
4
|
+
import type { FinancialDataProvider } from '../data/types';
|
|
5
|
+
import type { FinancialUIState } from '../store';
|
|
6
|
+
export declare function createFinancialDashboardWidgets(ctx: {
|
|
7
|
+
config: ResolvedFinancialConfig;
|
|
8
|
+
provider: FinancialDataProvider;
|
|
9
|
+
store: StoreApi<FinancialUIState>;
|
|
10
|
+
}): DashboardWidgetDef[];
|
|
11
|
+
//# sourceMappingURL=dashboardWidgets.d.ts.map
|
|
@@ -0,0 +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,EAAmF,KAAK,uBAAuB,EAAE,MAAM,qBAAqB,CAAA;AACnJ,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAA;AAC1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAuJhD,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,CAuBvB"}
|
package/package.json
ADDED
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@fayz-ai/plugin-financial",
|
|
3
|
+
"version": "0.1.1",
|
|
4
|
+
"description": "Fayz SDK — plugin-financial plugin",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"main": "./dist/index.cjs",
|
|
7
|
+
"module": "./dist/index.js",
|
|
8
|
+
"types": "./dist/index.d.ts",
|
|
9
|
+
"exports": {
|
|
10
|
+
".": {
|
|
11
|
+
"source": "./src/index.ts",
|
|
12
|
+
"types": "./dist/index.d.ts",
|
|
13
|
+
"import": "./dist/index.js",
|
|
14
|
+
"require": "./dist/index.cjs"
|
|
15
|
+
}
|
|
16
|
+
},
|
|
17
|
+
"files": [
|
|
18
|
+
"dist",
|
|
19
|
+
"src"
|
|
20
|
+
],
|
|
21
|
+
"peerDependencies": {
|
|
22
|
+
"react": "^18.0.0 || ^19.0.0",
|
|
23
|
+
"react-dom": "^18.0.0 || ^19.0.0"
|
|
24
|
+
},
|
|
25
|
+
"dependencies": {
|
|
26
|
+
"lucide-react": "^0.400.0",
|
|
27
|
+
"zustand": "^4.5.0",
|
|
28
|
+
"@tanstack/react-table": "^8.20.0",
|
|
29
|
+
"@fayz-ai/ui": "^0.1.6",
|
|
30
|
+
"@fayz-ai/core": "^0.1.6",
|
|
31
|
+
"@fayz-ai/saas": "^0.1.6"
|
|
32
|
+
},
|
|
33
|
+
"devDependencies": {
|
|
34
|
+
"@types/react": "^18.3.0",
|
|
35
|
+
"react": "^18.3.0",
|
|
36
|
+
"tsup": "^8.2.0",
|
|
37
|
+
"typescript": "^5.5.0",
|
|
38
|
+
"@types/react-dom": "^18.3.0"
|
|
39
|
+
},
|
|
40
|
+
"license": "MIT",
|
|
41
|
+
"keywords": [
|
|
42
|
+
"fayz",
|
|
43
|
+
"fayz-plugin",
|
|
44
|
+
"fayz-sdk"
|
|
45
|
+
],
|
|
46
|
+
"publishConfig": {
|
|
47
|
+
"access": "public"
|
|
48
|
+
},
|
|
49
|
+
"scripts": {
|
|
50
|
+
"build": "tsup && tsc --emitDeclarationOnly --declaration --declarationMap --noEmit false",
|
|
51
|
+
"dev": "tsup --watch",
|
|
52
|
+
"typecheck": "tsc --noEmit",
|
|
53
|
+
"clean": "rm -rf dist"
|
|
54
|
+
}
|
|
55
|
+
}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { createPluginContext, formatCurrency, type CurrencyConfig, type EntityLookupMap, type EntityLookup } from '@fayz-ai/saas'
|
|
2
|
+
import type { FinancialPluginLabels, ItemTypeOption } from './index'
|
|
3
|
+
import type { FinancialDataProvider } from './data/types'
|
|
4
|
+
import type { FinancialUIState } from './store'
|
|
5
|
+
|
|
6
|
+
// ---------------------------------------------------------------------------
|
|
7
|
+
// Resolved config — fully merged, no optionals
|
|
8
|
+
// ---------------------------------------------------------------------------
|
|
9
|
+
|
|
10
|
+
export interface FinancialModules {
|
|
11
|
+
payables: boolean
|
|
12
|
+
receivables: boolean
|
|
13
|
+
cashRegisters: boolean
|
|
14
|
+
statements: boolean
|
|
15
|
+
commissions: boolean
|
|
16
|
+
cards: boolean
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export type FinancialCurrency = CurrencyConfig
|
|
20
|
+
|
|
21
|
+
export interface LocationOption {
|
|
22
|
+
id: string
|
|
23
|
+
name: string
|
|
24
|
+
isHQ?: boolean
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
export interface ResolvedFinancialConfig {
|
|
28
|
+
modules: FinancialModules
|
|
29
|
+
labels: FinancialPluginLabels
|
|
30
|
+
currency: FinancialCurrency
|
|
31
|
+
itemTypes: ItemTypeOption[]
|
|
32
|
+
enableServiceExecution: boolean
|
|
33
|
+
contactEntity: { archetypeKind: string; label: string }
|
|
34
|
+
locations: LocationOption[]
|
|
35
|
+
entityLookups: EntityLookupMap
|
|
36
|
+
contactLookup?: EntityLookup
|
|
37
|
+
onBookingClick?: (orderId: string) => void
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
const ctx = createPluginContext<ResolvedFinancialConfig, FinancialDataProvider, FinancialUIState>('FinancialPage')
|
|
41
|
+
|
|
42
|
+
export const FinancialContextProvider = ctx.ContextProvider
|
|
43
|
+
export const useFinancialConfig = ctx.useConfig
|
|
44
|
+
export const useFinancialProvider = ctx.useProvider
|
|
45
|
+
export const useFinancialStore = ctx.useStore
|
|
46
|
+
|
|
47
|
+
export { formatCurrency }
|