@temboplus/afloat 0.2.1-beta.9 → 0.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +54 -207
- package/dist/index.cjs.js +1 -1
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.d.ts +5 -4
- package/dist/index.d.ts.map +1 -0
- package/dist/index.esm.js +1 -1
- package/dist/index.esm.js.map +1 -1
- package/dist/lib/api/base-repository.d.ts +2 -2
- package/dist/lib/api/base-repository.d.ts.map +1 -0
- package/dist/lib/api/index.d.ts +1 -0
- package/dist/lib/api/index.d.ts.map +1 -0
- package/dist/lib/error/error.api.d.ts +3 -2
- package/dist/lib/error/error.api.d.ts.map +1 -0
- package/dist/lib/error/error.permission.d.ts +2 -1
- package/dist/lib/error/error.permission.d.ts.map +1 -0
- package/dist/lib/error/error.utils.d.ts +1 -0
- package/dist/lib/error/error.utils.d.ts.map +1 -0
- package/dist/lib/error/index.d.ts +1 -0
- package/dist/lib/error/index.d.ts.map +1 -0
- package/dist/lib/query/index.d.ts +3 -2
- package/dist/lib/query/index.d.ts.map +1 -0
- package/dist/lib/query/pagination/pagination.d.ts +1 -0
- package/dist/lib/query/pagination/pagination.d.ts.map +1 -0
- package/dist/lib/query/pagination/pagination.schemas.d.ts +8 -61
- package/dist/lib/query/pagination/pagination.schemas.d.ts.map +1 -0
- package/dist/lib/query/query.builder.d.ts +10 -3
- package/dist/lib/query/query.builder.d.ts.map +1 -0
- package/dist/lib/query/query.types.d.ts +1 -0
- package/dist/lib/query/query.types.d.ts.map +1 -0
- package/dist/modules/auth/auth.contract.d.ts +10 -69
- package/dist/modules/auth/auth.contract.d.ts.map +1 -0
- package/dist/modules/auth/auth.dtos.d.ts +8 -67
- package/dist/modules/auth/auth.dtos.d.ts.map +1 -0
- package/dist/modules/auth/auth.repository.d.ts +1 -0
- package/dist/modules/auth/auth.repository.d.ts.map +1 -0
- package/dist/modules/auth/company-membership.model.d.ts +7 -86
- package/dist/modules/auth/company-membership.model.d.ts.map +1 -0
- package/dist/modules/auth/index.d.ts +3 -2
- package/dist/modules/auth/index.d.ts.map +1 -0
- package/dist/modules/auth/user.model.d.ts +26 -163
- package/dist/modules/auth/user.model.d.ts.map +1 -0
- package/dist/modules/beneficiary/beneficiary-info.model.d.ts +30 -67
- package/dist/modules/beneficiary/beneficiary-info.model.d.ts.map +1 -0
- package/dist/modules/beneficiary/beneficiary-input-handler.d.ts +3 -2
- package/dist/modules/beneficiary/beneficiary-input-handler.d.ts.map +1 -0
- package/dist/modules/beneficiary/beneficiary.api-contract.d.ts +16 -115
- package/dist/modules/beneficiary/beneficiary.api-contract.d.ts.map +1 -0
- package/dist/modules/beneficiary/beneficiary.dtos.d.ts +6 -34
- package/dist/modules/beneficiary/beneficiary.dtos.d.ts.map +1 -0
- package/dist/modules/beneficiary/beneficiary.model.d.ts +5 -27
- package/dist/modules/beneficiary/beneficiary.model.d.ts.map +1 -0
- package/dist/modules/beneficiary/beneficiary.repository.d.ts +2 -1
- package/dist/modules/beneficiary/beneficiary.repository.d.ts.map +1 -0
- package/dist/modules/beneficiary/index.d.ts +5 -4
- package/dist/modules/beneficiary/index.d.ts.map +1 -0
- package/dist/modules/login/index.d.ts +1 -0
- package/dist/modules/login/index.d.ts.map +1 -0
- package/dist/modules/login/login.api-contract.d.ts +3 -28
- package/dist/modules/login/login.api-contract.d.ts.map +1 -0
- package/dist/modules/login/login.dtos.d.ts +5 -56
- package/dist/modules/login/login.dtos.d.ts.map +1 -0
- package/dist/modules/login/login.model.d.ts +7 -34
- package/dist/modules/login/login.model.d.ts.map +1 -0
- package/dist/modules/login/login.repository.d.ts +2 -1
- package/dist/modules/login/login.repository.d.ts.map +1 -0
- package/dist/modules/login/permission.type.d.ts +1 -0
- package/dist/modules/login/permission.type.d.ts.map +1 -0
- package/dist/modules/payout/index.d.ts +3 -2
- package/dist/modules/payout/index.d.ts.map +1 -0
- package/dist/modules/payout/payout-channel-handler.d.ts +5 -4
- package/dist/modules/payout/payout-channel-handler.d.ts.map +1 -0
- package/dist/modules/payout/payout.api-contract.d.ts +78 -666
- package/dist/modules/payout/payout.api-contract.d.ts.map +1 -0
- package/dist/modules/payout/payout.dtos.d.ts +99 -506
- package/dist/modules/payout/payout.dtos.d.ts.map +1 -0
- package/dist/modules/payout/payout.model.d.ts +8 -85
- package/dist/modules/payout/payout.model.d.ts.map +1 -0
- package/dist/modules/payout/payout.query.d.ts +3 -2
- package/dist/modules/payout/payout.query.d.ts.map +1 -0
- package/dist/modules/payout/payout.repository.d.ts +7 -6
- package/dist/modules/payout/payout.repository.d.ts.map +1 -0
- package/dist/modules/profile/index.d.ts +1 -0
- package/dist/modules/profile/index.d.ts.map +1 -0
- package/dist/modules/profile/profile.api-contract.d.ts +2 -19
- package/dist/modules/profile/profile.api-contract.d.ts.map +1 -0
- package/dist/modules/profile/profile.dtos.d.ts +3 -38
- package/dist/modules/profile/profile.dtos.d.ts.map +1 -0
- package/dist/modules/profile/profile.model.d.ts +5 -42
- package/dist/modules/profile/profile.model.d.ts.map +1 -0
- package/dist/modules/profile/profile.repository.d.ts +1 -0
- package/dist/modules/profile/profile.repository.d.ts.map +1 -0
- package/dist/modules/team-member/index.d.ts +3 -2
- package/dist/modules/team-member/index.d.ts.map +1 -0
- package/dist/modules/team-member/role.model.d.ts +6 -21
- package/dist/modules/team-member/role.model.d.ts.map +1 -0
- package/dist/modules/team-member/team-member.contract.d.ts +74 -615
- package/dist/modules/team-member/team-member.contract.d.ts.map +1 -0
- package/dist/modules/team-member/team-member.dtos.d.ts +15 -162
- package/dist/modules/team-member/team-member.dtos.d.ts.map +1 -0
- package/dist/modules/team-member/team-member.model.d.ts +7 -66
- package/dist/modules/team-member/team-member.model.d.ts.map +1 -0
- package/dist/modules/team-member/team-member.repository.d.ts +3 -2
- package/dist/modules/team-member/team-member.repository.d.ts.map +1 -0
- package/dist/modules/wallet/index.d.ts +4 -2
- package/dist/modules/wallet/index.d.ts.map +1 -0
- package/dist/modules/wallet/narration.model.d.ts +3 -8
- package/dist/modules/wallet/narration.model.d.ts.map +1 -0
- package/dist/modules/wallet/statement-entry.model.d.ts +14 -131
- package/dist/modules/wallet/statement-entry.model.d.ts.map +1 -0
- package/dist/modules/wallet/wallet.contract.d.ts +17 -90
- package/dist/modules/wallet/wallet.contract.d.ts.map +1 -0
- package/dist/modules/wallet/wallet.dtos.d.ts +33 -138
- package/dist/modules/wallet/wallet.dtos.d.ts.map +1 -0
- package/dist/modules/wallet/wallet.model.d.ts +5 -26
- package/dist/modules/wallet/wallet.model.d.ts.map +1 -0
- package/dist/modules/wallet/wallet.query.d.ts +2 -1
- package/dist/modules/wallet/wallet.query.d.ts.map +1 -0
- package/dist/modules/wallet/wallet.repository.d.ts +49 -25
- package/dist/modules/wallet/wallet.repository.d.ts.map +1 -0
- package/dist/modules/wallet/wallet.timezone.d.ts +87 -0
- package/dist/modules/wallet/wallet.timezone.d.ts.map +1 -0
- package/dist/modules/wallet/wallet.utils.d.ts +3 -2
- package/dist/modules/wallet/wallet.utils.d.ts.map +1 -0
- package/package.json +40 -29
|
@@ -7,25 +7,9 @@ export declare const contract: {
|
|
|
7
7
|
accountNo: z.ZodOptional<z.ZodString>;
|
|
8
8
|
accountName: z.ZodOptional<z.ZodString>;
|
|
9
9
|
channel: z.ZodOptional<z.ZodString>;
|
|
10
|
-
countryCode: z.ZodOptional<z.
|
|
11
|
-
currencyCode: z.ZodOptional<z.
|
|
12
|
-
},
|
|
13
|
-
id?: string | undefined;
|
|
14
|
-
accountNo?: string | undefined;
|
|
15
|
-
profileId?: string | undefined;
|
|
16
|
-
channel?: string | undefined;
|
|
17
|
-
countryCode?: string | undefined;
|
|
18
|
-
currencyCode?: string | undefined;
|
|
19
|
-
accountName?: string | undefined;
|
|
20
|
-
}, {
|
|
21
|
-
id?: string | undefined;
|
|
22
|
-
accountNo?: string | undefined;
|
|
23
|
-
profileId?: string | undefined;
|
|
24
|
-
channel?: string | undefined;
|
|
25
|
-
countryCode?: string | undefined;
|
|
26
|
-
currencyCode?: string | undefined;
|
|
27
|
-
accountName?: string | undefined;
|
|
28
|
-
}>;
|
|
10
|
+
countryCode: z.ZodOptional<z.ZodDefault<z.ZodString>>;
|
|
11
|
+
currencyCode: z.ZodOptional<z.ZodDefault<z.ZodString>>;
|
|
12
|
+
}, z.core.$strip>;
|
|
29
13
|
method: "GET";
|
|
30
14
|
path: "/";
|
|
31
15
|
responses: {
|
|
@@ -35,105 +19,48 @@ export declare const contract: {
|
|
|
35
19
|
accountNo: z.ZodString;
|
|
36
20
|
accountName: z.ZodString;
|
|
37
21
|
channel: z.ZodString;
|
|
38
|
-
countryCode: z.
|
|
39
|
-
currencyCode: z.
|
|
22
|
+
countryCode: z.ZodDefault<z.ZodString> & z.ZodType<import("@temboplus/frontend-core").ISO2CountryCode, string | undefined, z.core.$ZodTypeInternals<import("@temboplus/frontend-core").ISO2CountryCode, string | undefined>>;
|
|
23
|
+
currencyCode: z.ZodDefault<z.ZodString> & z.ZodType<import("@temboplus/frontend-core").CurrencyCode, string | undefined, z.core.$ZodTypeInternals<import("@temboplus/frontend-core").CurrencyCode, string | undefined>>;
|
|
40
24
|
createdAt: z.ZodString;
|
|
41
25
|
updatedAt: z.ZodString;
|
|
42
|
-
},
|
|
43
|
-
createdAt: string;
|
|
44
|
-
id: string;
|
|
45
|
-
accountNo: string;
|
|
46
|
-
profileId: string;
|
|
47
|
-
updatedAt: string;
|
|
48
|
-
channel: string;
|
|
49
|
-
countryCode: import("@temboplus/frontend-core").ISO2CountryCode;
|
|
50
|
-
currencyCode: import("@temboplus/frontend-core").CurrencyCode;
|
|
51
|
-
accountName: string;
|
|
52
|
-
}, {
|
|
53
|
-
createdAt: string;
|
|
54
|
-
id: string;
|
|
55
|
-
accountNo: string;
|
|
56
|
-
profileId: string;
|
|
57
|
-
updatedAt: string;
|
|
58
|
-
channel: string;
|
|
59
|
-
accountName: string;
|
|
60
|
-
countryCode?: string | undefined;
|
|
61
|
-
currencyCode?: string | undefined;
|
|
62
|
-
}>, "many">;
|
|
26
|
+
}, z.core.$strip>>;
|
|
63
27
|
};
|
|
64
28
|
};
|
|
65
29
|
getBalance: {
|
|
66
30
|
method: "POST";
|
|
67
31
|
body: z.ZodObject<{
|
|
68
32
|
accountNo: z.ZodOptional<z.ZodString>;
|
|
69
|
-
},
|
|
70
|
-
accountNo?: string | undefined;
|
|
71
|
-
}, {
|
|
72
|
-
accountNo?: string | undefined;
|
|
73
|
-
}>;
|
|
33
|
+
}, z.core.$strip>;
|
|
74
34
|
path: "/balance";
|
|
75
35
|
responses: {
|
|
76
36
|
201: z.ZodObject<{
|
|
77
37
|
availableBalance: z.ZodNumber;
|
|
78
|
-
},
|
|
79
|
-
availableBalance: number;
|
|
80
|
-
}, {
|
|
81
|
-
availableBalance: number;
|
|
82
|
-
}>;
|
|
38
|
+
}, z.core.$strip>;
|
|
83
39
|
};
|
|
84
40
|
};
|
|
85
41
|
getStatement: {
|
|
86
42
|
summary: "Get Wallet Statement";
|
|
87
43
|
method: "POST";
|
|
88
44
|
body: z.ZodObject<{
|
|
89
|
-
endDate: z.
|
|
90
|
-
startDate: z.
|
|
45
|
+
endDate: z.ZodString;
|
|
46
|
+
startDate: z.ZodString;
|
|
91
47
|
accountNo: z.ZodOptional<z.ZodString>;
|
|
92
|
-
},
|
|
93
|
-
startDate: Date;
|
|
94
|
-
endDate: Date;
|
|
95
|
-
accountNo?: string | undefined;
|
|
96
|
-
}, {
|
|
97
|
-
startDate: Date;
|
|
98
|
-
endDate: Date;
|
|
99
|
-
accountNo?: string | undefined;
|
|
100
|
-
}>;
|
|
48
|
+
}, z.core.$strip>;
|
|
101
49
|
path: "/statement";
|
|
102
50
|
responses: {
|
|
103
51
|
201: z.ZodArray<z.ZodObject<{
|
|
104
|
-
accountNo: z.
|
|
52
|
+
accountNo: z.ZodPipe<z.ZodOptional<z.ZodString>, z.ZodTransform<string | undefined, string | undefined>>;
|
|
105
53
|
debitOrCredit: z.ZodString;
|
|
106
54
|
tranRefNo: z.ZodString;
|
|
107
55
|
narration: z.ZodString;
|
|
108
|
-
txnDate: z.
|
|
109
|
-
valueDate: z.
|
|
56
|
+
txnDate: z.ZodCoercedDate<unknown>;
|
|
57
|
+
valueDate: z.ZodCoercedDate<unknown>;
|
|
110
58
|
amountCredited: z.ZodNumber;
|
|
111
59
|
amountDebited: z.ZodNumber;
|
|
112
60
|
balance: z.ZodNumber;
|
|
113
|
-
currencyCode: z.ZodDefault<z.
|
|
114
|
-
},
|
|
115
|
-
currencyCode: string;
|
|
116
|
-
debitOrCredit: string;
|
|
117
|
-
tranRefNo: string;
|
|
118
|
-
narration: string;
|
|
119
|
-
txnDate: Date;
|
|
120
|
-
valueDate: Date;
|
|
121
|
-
amountCredited: number;
|
|
122
|
-
amountDebited: number;
|
|
123
|
-
balance: number;
|
|
124
|
-
accountNo?: string | undefined;
|
|
125
|
-
}, {
|
|
126
|
-
debitOrCredit: string;
|
|
127
|
-
tranRefNo: string;
|
|
128
|
-
narration: string;
|
|
129
|
-
txnDate: Date;
|
|
130
|
-
valueDate: Date;
|
|
131
|
-
amountCredited: number;
|
|
132
|
-
amountDebited: number;
|
|
133
|
-
balance: number;
|
|
134
|
-
accountNo?: string | undefined;
|
|
135
|
-
currencyCode?: string | undefined;
|
|
136
|
-
}>, "many">;
|
|
61
|
+
currencyCode: z.ZodDefault<z.ZodPipe<z.ZodOptional<z.ZodString>, z.ZodTransform<string | undefined, string | undefined>>>;
|
|
62
|
+
}, z.core.$strip>>;
|
|
137
63
|
};
|
|
138
64
|
};
|
|
139
65
|
};
|
|
66
|
+
//# sourceMappingURL=wallet.contract.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wallet.contract.d.ts","sourceRoot":"","sources":["../../../src/modules/wallet/wallet.contract.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqCnB,CAAC"}
|
|
@@ -10,31 +10,11 @@ declare const walletSchema: z.ZodObject<{
|
|
|
10
10
|
accountNo: z.ZodString;
|
|
11
11
|
accountName: z.ZodString;
|
|
12
12
|
channel: z.ZodString;
|
|
13
|
-
countryCode: z.
|
|
14
|
-
currencyCode: z.
|
|
13
|
+
countryCode: z.ZodDefault<z.ZodString> & z.ZodType<import("@temboplus/frontend-core").ISO2CountryCode, string | undefined, z.core.$ZodTypeInternals<import("@temboplus/frontend-core").ISO2CountryCode, string | undefined>>;
|
|
14
|
+
currencyCode: z.ZodDefault<z.ZodString> & z.ZodType<import("@temboplus/frontend-core").CurrencyCode, string | undefined, z.core.$ZodTypeInternals<import("@temboplus/frontend-core").CurrencyCode, string | undefined>>;
|
|
15
15
|
createdAt: z.ZodString;
|
|
16
16
|
updatedAt: z.ZodString;
|
|
17
|
-
},
|
|
18
|
-
createdAt: string;
|
|
19
|
-
id: string;
|
|
20
|
-
accountNo: string;
|
|
21
|
-
profileId: string;
|
|
22
|
-
updatedAt: string;
|
|
23
|
-
channel: string;
|
|
24
|
-
countryCode: import("@temboplus/frontend-core").ISO2CountryCode;
|
|
25
|
-
currencyCode: import("@temboplus/frontend-core").CurrencyCode;
|
|
26
|
-
accountName: string;
|
|
27
|
-
}, {
|
|
28
|
-
createdAt: string;
|
|
29
|
-
id: string;
|
|
30
|
-
accountNo: string;
|
|
31
|
-
profileId: string;
|
|
32
|
-
updatedAt: string;
|
|
33
|
-
channel: string;
|
|
34
|
-
accountName: string;
|
|
35
|
-
countryCode?: string | undefined;
|
|
36
|
-
currencyCode?: string | undefined;
|
|
37
|
-
}>;
|
|
17
|
+
}, z.core.$strip>;
|
|
38
18
|
/**
|
|
39
19
|
* Zod schema definition for validating Wallet data structures.
|
|
40
20
|
* Ensures data integrity for wallet objects, including runtime validation
|
|
@@ -46,62 +26,32 @@ declare const walletQuerySchema: z.ZodObject<{
|
|
|
46
26
|
accountNo: z.ZodOptional<z.ZodString>;
|
|
47
27
|
accountName: z.ZodOptional<z.ZodString>;
|
|
48
28
|
channel: z.ZodOptional<z.ZodString>;
|
|
49
|
-
countryCode: z.ZodOptional<z.
|
|
50
|
-
currencyCode: z.ZodOptional<z.
|
|
51
|
-
},
|
|
52
|
-
id?: string | undefined;
|
|
53
|
-
accountNo?: string | undefined;
|
|
54
|
-
profileId?: string | undefined;
|
|
55
|
-
channel?: string | undefined;
|
|
56
|
-
countryCode?: string | undefined;
|
|
57
|
-
currencyCode?: string | undefined;
|
|
58
|
-
accountName?: string | undefined;
|
|
59
|
-
}, {
|
|
60
|
-
id?: string | undefined;
|
|
61
|
-
accountNo?: string | undefined;
|
|
62
|
-
profileId?: string | undefined;
|
|
63
|
-
channel?: string | undefined;
|
|
64
|
-
countryCode?: string | undefined;
|
|
65
|
-
currencyCode?: string | undefined;
|
|
66
|
-
accountName?: string | undefined;
|
|
67
|
-
}>;
|
|
29
|
+
countryCode: z.ZodOptional<z.ZodDefault<z.ZodString>>;
|
|
30
|
+
currencyCode: z.ZodOptional<z.ZodDefault<z.ZodString>>;
|
|
31
|
+
}, z.core.$strip>;
|
|
68
32
|
/**
|
|
69
33
|
* Schema definition for a statement entry.
|
|
70
34
|
*/
|
|
71
35
|
declare const statementEntrySchema: z.ZodObject<{
|
|
72
|
-
accountNo: z.
|
|
36
|
+
accountNo: z.ZodPipe<z.ZodOptional<z.ZodString>, z.ZodTransform<string | undefined, string | undefined>>;
|
|
73
37
|
debitOrCredit: z.ZodString;
|
|
74
38
|
tranRefNo: z.ZodString;
|
|
75
39
|
narration: z.ZodString;
|
|
76
|
-
txnDate: z.
|
|
77
|
-
valueDate: z.
|
|
40
|
+
txnDate: z.ZodCoercedDate<unknown>;
|
|
41
|
+
valueDate: z.ZodCoercedDate<unknown>;
|
|
78
42
|
amountCredited: z.ZodNumber;
|
|
79
43
|
amountDebited: z.ZodNumber;
|
|
80
44
|
balance: z.ZodNumber;
|
|
81
|
-
currencyCode: z.ZodDefault<z.
|
|
82
|
-
},
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
balance: number;
|
|
92
|
-
accountNo?: string | undefined;
|
|
93
|
-
}, {
|
|
94
|
-
debitOrCredit: string;
|
|
95
|
-
tranRefNo: string;
|
|
96
|
-
narration: string;
|
|
97
|
-
txnDate: Date;
|
|
98
|
-
valueDate: Date;
|
|
99
|
-
amountCredited: number;
|
|
100
|
-
amountDebited: number;
|
|
101
|
-
balance: number;
|
|
102
|
-
accountNo?: string | undefined;
|
|
103
|
-
currencyCode?: string | undefined;
|
|
104
|
-
}>;
|
|
45
|
+
currencyCode: z.ZodDefault<z.ZodPipe<z.ZodOptional<z.ZodString>, z.ZodTransform<string | undefined, string | undefined>>>;
|
|
46
|
+
}, z.core.$strip>;
|
|
47
|
+
/**
|
|
48
|
+
* Plain calendar date as a `YYYY-MM-DD` string. Used by endpoints that
|
|
49
|
+
* filter against a calendar day rather than a moment in time — e.g. the
|
|
50
|
+
* statement endpoint, which the server evaluates against EAT-anchored
|
|
51
|
+
* data. Validated by regex to avoid silently sending a full ISO
|
|
52
|
+
* timestamp where a date-only string is expected.
|
|
53
|
+
*/
|
|
54
|
+
declare const plainDateSchema: z.ZodString;
|
|
105
55
|
/**
|
|
106
56
|
* Collection of wallet-related schemas for export.
|
|
107
57
|
* Provides access to both wallet and statement entry validation schemas.
|
|
@@ -113,92 +63,37 @@ export declare const WalletDTOSchemas: {
|
|
|
113
63
|
accountNo: z.ZodString;
|
|
114
64
|
accountName: z.ZodString;
|
|
115
65
|
channel: z.ZodString;
|
|
116
|
-
countryCode: z.
|
|
117
|
-
currencyCode: z.
|
|
66
|
+
countryCode: z.ZodDefault<z.ZodString> & z.ZodType<import("@temboplus/frontend-core").ISO2CountryCode, string | undefined, z.core.$ZodTypeInternals<import("@temboplus/frontend-core").ISO2CountryCode, string | undefined>>;
|
|
67
|
+
currencyCode: z.ZodDefault<z.ZodString> & z.ZodType<import("@temboplus/frontend-core").CurrencyCode, string | undefined, z.core.$ZodTypeInternals<import("@temboplus/frontend-core").CurrencyCode, string | undefined>>;
|
|
118
68
|
createdAt: z.ZodString;
|
|
119
69
|
updatedAt: z.ZodString;
|
|
120
|
-
},
|
|
121
|
-
createdAt: string;
|
|
122
|
-
id: string;
|
|
123
|
-
accountNo: string;
|
|
124
|
-
profileId: string;
|
|
125
|
-
updatedAt: string;
|
|
126
|
-
channel: string;
|
|
127
|
-
countryCode: import("@temboplus/frontend-core").ISO2CountryCode;
|
|
128
|
-
currencyCode: import("@temboplus/frontend-core").CurrencyCode;
|
|
129
|
-
accountName: string;
|
|
130
|
-
}, {
|
|
131
|
-
createdAt: string;
|
|
132
|
-
id: string;
|
|
133
|
-
accountNo: string;
|
|
134
|
-
profileId: string;
|
|
135
|
-
updatedAt: string;
|
|
136
|
-
channel: string;
|
|
137
|
-
accountName: string;
|
|
138
|
-
countryCode?: string | undefined;
|
|
139
|
-
currencyCode?: string | undefined;
|
|
140
|
-
}>;
|
|
70
|
+
}, z.core.$strip>;
|
|
141
71
|
walletQuery: z.ZodObject<{
|
|
142
72
|
id: z.ZodOptional<z.ZodString>;
|
|
143
73
|
profileId: z.ZodOptional<z.ZodString>;
|
|
144
74
|
accountNo: z.ZodOptional<z.ZodString>;
|
|
145
75
|
accountName: z.ZodOptional<z.ZodString>;
|
|
146
76
|
channel: z.ZodOptional<z.ZodString>;
|
|
147
|
-
countryCode: z.ZodOptional<z.
|
|
148
|
-
currencyCode: z.ZodOptional<z.
|
|
149
|
-
},
|
|
150
|
-
id?: string | undefined;
|
|
151
|
-
accountNo?: string | undefined;
|
|
152
|
-
profileId?: string | undefined;
|
|
153
|
-
channel?: string | undefined;
|
|
154
|
-
countryCode?: string | undefined;
|
|
155
|
-
currencyCode?: string | undefined;
|
|
156
|
-
accountName?: string | undefined;
|
|
157
|
-
}, {
|
|
158
|
-
id?: string | undefined;
|
|
159
|
-
accountNo?: string | undefined;
|
|
160
|
-
profileId?: string | undefined;
|
|
161
|
-
channel?: string | undefined;
|
|
162
|
-
countryCode?: string | undefined;
|
|
163
|
-
currencyCode?: string | undefined;
|
|
164
|
-
accountName?: string | undefined;
|
|
165
|
-
}>;
|
|
77
|
+
countryCode: z.ZodOptional<z.ZodDefault<z.ZodString>>;
|
|
78
|
+
currencyCode: z.ZodOptional<z.ZodDefault<z.ZodString>>;
|
|
79
|
+
}, z.core.$strip>;
|
|
166
80
|
statementEntry: z.ZodObject<{
|
|
167
|
-
accountNo: z.
|
|
81
|
+
accountNo: z.ZodPipe<z.ZodOptional<z.ZodString>, z.ZodTransform<string | undefined, string | undefined>>;
|
|
168
82
|
debitOrCredit: z.ZodString;
|
|
169
83
|
tranRefNo: z.ZodString;
|
|
170
84
|
narration: z.ZodString;
|
|
171
|
-
txnDate: z.
|
|
172
|
-
valueDate: z.
|
|
85
|
+
txnDate: z.ZodCoercedDate<unknown>;
|
|
86
|
+
valueDate: z.ZodCoercedDate<unknown>;
|
|
173
87
|
amountCredited: z.ZodNumber;
|
|
174
88
|
amountDebited: z.ZodNumber;
|
|
175
89
|
balance: z.ZodNumber;
|
|
176
|
-
currencyCode: z.ZodDefault<z.
|
|
177
|
-
},
|
|
178
|
-
|
|
179
|
-
debitOrCredit: string;
|
|
180
|
-
tranRefNo: string;
|
|
181
|
-
narration: string;
|
|
182
|
-
txnDate: Date;
|
|
183
|
-
valueDate: Date;
|
|
184
|
-
amountCredited: number;
|
|
185
|
-
amountDebited: number;
|
|
186
|
-
balance: number;
|
|
187
|
-
accountNo?: string | undefined;
|
|
188
|
-
}, {
|
|
189
|
-
debitOrCredit: string;
|
|
190
|
-
tranRefNo: string;
|
|
191
|
-
narration: string;
|
|
192
|
-
txnDate: Date;
|
|
193
|
-
valueDate: Date;
|
|
194
|
-
amountCredited: number;
|
|
195
|
-
amountDebited: number;
|
|
196
|
-
balance: number;
|
|
197
|
-
accountNo?: string | undefined;
|
|
198
|
-
currencyCode?: string | undefined;
|
|
199
|
-
}>;
|
|
90
|
+
currencyCode: z.ZodDefault<z.ZodPipe<z.ZodOptional<z.ZodString>, z.ZodTransform<string | undefined, string | undefined>>>;
|
|
91
|
+
}, z.core.$strip>;
|
|
92
|
+
plainDate: z.ZodString;
|
|
200
93
|
};
|
|
201
94
|
export type WalletDTO = z.infer<typeof walletSchema>;
|
|
202
95
|
export type WalletQueryDTO = z.infer<typeof walletQuerySchema>;
|
|
203
96
|
export type WalletStatementEntryDTO = z.infer<typeof statementEntrySchema>;
|
|
97
|
+
export type PlainDate = z.infer<typeof plainDateSchema>;
|
|
204
98
|
export {};
|
|
99
|
+
//# sourceMappingURL=wallet.dtos.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wallet.dtos.d.ts","sourceRoot":"","sources":["../../../src/modules/wallet/wallet.dtos.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;GAIG;AACH,QAAA,MAAM,YAAY;;;;;;;;;;iBA0BhB,CAAC;AAEH;;;;GAIG;AACH,QAAA,MAAM,iBAAiB;;;;;;;;iBAwBrB,CAAC;AAUH;;GAEG;AACH,QAAA,MAAM,oBAAoB;;;;;;;;;;;iBAexB,CAAC;AAEH;;;;;;GAMG;AACH,QAAA,MAAM,eAAe,aAEnB,CAAC;AAEH;;;GAGG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAK5B,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AACrD,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC/D,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAC3E,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type CurrencyCode, type ISO2CountryCode } from "@temboplus/frontend-core";
|
|
2
|
-
import { WalletDTOSchemas } from "@/modules/wallet/wallet.dtos.js";
|
|
3
2
|
import z from "zod";
|
|
3
|
+
import { WalletDTOSchemas } from "@/modules/wallet/wallet.dtos.js";
|
|
4
4
|
/**
|
|
5
5
|
* Zod schema for Wallet JSON serialization
|
|
6
6
|
*/
|
|
@@ -15,29 +15,7 @@ export declare const WalletJSONSchema: z.ZodObject<{
|
|
|
15
15
|
createdAt: z.ZodString;
|
|
16
16
|
updatedAt: z.ZodString;
|
|
17
17
|
_version: z.ZodDefault<z.ZodOptional<z.ZodString>>;
|
|
18
|
-
},
|
|
19
|
-
createdAt: string;
|
|
20
|
-
id: string;
|
|
21
|
-
accountNo: string;
|
|
22
|
-
_version: string;
|
|
23
|
-
profileId: string;
|
|
24
|
-
updatedAt: string;
|
|
25
|
-
channel: string;
|
|
26
|
-
countryCode: string;
|
|
27
|
-
currencyCode: string;
|
|
28
|
-
accountName: string;
|
|
29
|
-
}, {
|
|
30
|
-
createdAt: string;
|
|
31
|
-
id: string;
|
|
32
|
-
accountNo: string;
|
|
33
|
-
profileId: string;
|
|
34
|
-
updatedAt: string;
|
|
35
|
-
channel: string;
|
|
36
|
-
countryCode: string;
|
|
37
|
-
currencyCode: string;
|
|
38
|
-
accountName: string;
|
|
39
|
-
_version?: string | undefined;
|
|
40
|
-
}>;
|
|
18
|
+
}, z.z.core.$strip>;
|
|
41
19
|
export type WalletJSON = z.infer<typeof WalletJSONSchema>;
|
|
42
20
|
/**
|
|
43
21
|
* Represents a digital Wallet entity.
|
|
@@ -123,8 +101,8 @@ export declare class Wallet {
|
|
|
123
101
|
*/
|
|
124
102
|
static is(obj: unknown): obj is Wallet;
|
|
125
103
|
/**
|
|
126
|
-
|
|
127
|
-
|
|
104
|
+
* Serializes the Wallet instance to a JSON-compatible object
|
|
105
|
+
*/
|
|
128
106
|
toJSON(): WalletJSON;
|
|
129
107
|
/**
|
|
130
108
|
* Serializes the Wallet instance to a JSON string
|
|
@@ -139,3 +117,4 @@ export declare class Wallet {
|
|
|
139
117
|
*/
|
|
140
118
|
static isWalletJSON(obj: unknown): obj is WalletJSON;
|
|
141
119
|
}
|
|
120
|
+
//# sourceMappingURL=wallet.model.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wallet.model.d.ts","sourceRoot":"","sources":["../../../src/modules/wallet/wallet.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,KAAK,YAAY,EAAmB,KAAK,eAAe,EAAE,MAAM,0BAA0B,CAAC;AACpH,OAAO,CAAC,MAAM,KAAK,CAAC;AACpB,OAAO,EAAkB,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAEnF;;GAEG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;;;mBAW3B,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D;;;;;GAKG;AACH,qBAAa,MAAM;IACjB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IACtC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAkB;IAC/C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAe;IAC7C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IAEpC;;;OAGG;IACH,MAAM,KAAK,MAAM,IAAI,OAAO,gBAAgB,CAAC,SAAS,CAErD;IAED;;;OAGG;IACH,OAAO;IAYP;;;;;;OAMG;IACH,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE;QAClB,EAAE,EAAE,MAAM,CAAC;QACX,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,MAAM,CAAC;QACpB,OAAO,EAAE,MAAM,CAAC;QAChB,WAAW,EAAE,MAAM,CAAC;QACpB,YAAY,EAAE,MAAM,CAAC;QACrB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;KACnB,GAAG,MAAM,GAAG,SAAS;IActB,IAAI,EAAE,IAAI,MAAM,CAEf;IACD,IAAI,SAAS,IAAI,MAAM,CAEtB;IACD,IAAI,SAAS,IAAI,MAAM,CAEtB;IACD,IAAI,WAAW,IAAI,MAAM,CAExB;IACD,IAAI,OAAO,IAAI,MAAM,CAEpB;IACD,IAAI,WAAW,IAAI,eAAe,CAEjC;IACD,IAAI,YAAY,IAAI,YAAY,CAE/B;IACD,IAAI,SAAS,IAAI,MAAM,CAEtB;IACD,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED;;;OAGG;IACH,IAAI,aAAa,IAAI,IAAI,CAExB;IAED;;;OAGG;IACH,IAAI,aAAa,IAAI,IAAI,CAExB;IAED;;;;OAIG;IACH,QAAQ,IAAI,OAAO;IAQnB;;;;;OAKG;IAEH,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,GAAG,MAAM,GAAG,SAAS;IAmB1C;;;;;OAKG;IACH,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,MAAM;IAwBtC;;OAEG;IACH,MAAM,IAAI,UAAU;IAepB;;OAEG;IACH,YAAY,IAAI,MAAM;IAItB;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS;IAkB9D;;OAEG;IACH,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,UAAU;CAGrD"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { QueryBuilder } from "@/lib/query/index.js";
|
|
2
|
-
import { WalletQueryDTO } from "./wallet.dtos.js";
|
|
2
|
+
import { type WalletQueryDTO } from "./wallet.dtos.js";
|
|
3
3
|
/**
|
|
4
4
|
* Wallet-specific query builder that extends the base QueryBuilder
|
|
5
5
|
* and handles all possible input conversions (DTOs, URL params, etc.)
|
|
@@ -124,3 +124,4 @@ export declare class WalletQuery extends QueryBuilder {
|
|
|
124
124
|
*/
|
|
125
125
|
private extractFilterValues;
|
|
126
126
|
}
|
|
127
|
+
//# sourceMappingURL=wallet.query.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wallet.query.d.ts","sourceRoot":"","sources":["../../../src/modules/wallet/wallet.query.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAoB,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEzE;;;GAGG;AACH,qBAAa,WAAY,SAAQ,YAAY;IAG3C;;OAEG;IACH,MAAM,CAAC,MAAM,IAAI,WAAW;IAI5B;;OAEG;IACH,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,cAAc,GAAG,WAAW;IAKxD;;OAEG;IACH,MAAM,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,WAAW;IASjE;;OAEG;IACH,MAAM,CAAC,gBAAgB,CAAC,YAAY,EAAE,eAAe,GAAG,WAAW;IAKnE;;OAEG;IACH,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,WAAW;IAKjD;;OAEG;IACH,MAAM,CAAC,IAAI,CACT,KAAK,EAAE,YAAY,GAAG,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,eAAe,GAAG,IAAI,GAAG,SAAS,GACjG,WAAW;IA0Bd;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,cAAc;IAY7B,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAIzB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAIvC,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAIvC,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAI3C,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAInC,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAI3C,iBAAiB,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI;IAM7C;;OAEG;IACH,OAAO,CAAC,YAAY;IAepB;;OAEG;IACH,SAAS,IAAI,cAAc;IAc3B;;OAEG;IACH,WAAW,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAarC;;OAEG;IACH,cAAc,IAAI,eAAe;IAIjC;;OAEG;IACH,aAAa,IAAI,MAAM;IAMvB;;OAEG;IACH,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,WAAW;IAM/B;;OAEG;IACH,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,WAAW;IAM7C;;OAEG;IACH,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,WAAW;IAM7C;;OAEG;IACH,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,WAAW;IAMjD;;OAEG;IACH,gBAAgB,CAAC,YAAY,EAAE,MAAM,GAAG,WAAW;IAQnD;;OAEG;IACH,UAAU,IAAI,OAAO;IAarB;;OAEG;IACH,gBAAgB,IAAI,MAAM,EAAE;IAe5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACH,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAM5B;;OAEG;IACH,OAAO,CAAC,mBAAmB;CAgB5B"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { Amount } from "@temboplus/frontend-core";
|
|
2
|
+
import { BaseRepository } from "@/lib/api/base-repository.js";
|
|
2
3
|
import { WalletStatementEntry } from "./statement-entry.model.js";
|
|
3
|
-
import { Wallet } from "./wallet.model.js";
|
|
4
4
|
import { contract } from "./wallet.contract.js";
|
|
5
|
-
import {
|
|
5
|
+
import type { WalletQueryDTO } from "./wallet.dtos.js";
|
|
6
|
+
import { Wallet } from "./wallet.model.js";
|
|
6
7
|
import { WalletQuery } from "./wallet.query.js";
|
|
7
|
-
import { WalletQueryDTO } from "./wallet.dtos.js";
|
|
8
8
|
/**
|
|
9
9
|
* Flexible query input type - supports the class, filters interface, URL params, etc.
|
|
10
10
|
*/
|
|
@@ -144,55 +144,66 @@ export declare class WalletRepository extends BaseRepository<typeof contract> {
|
|
|
144
144
|
* 1. Direct wallet object (preferred for performance and currency context)
|
|
145
145
|
* 2. Account number lookup (requires additional API call to determine currency)
|
|
146
146
|
*
|
|
147
|
-
*
|
|
148
|
-
*
|
|
149
|
-
*
|
|
147
|
+
* The statement endpoint filters by calendar day, evaluated against
|
|
148
|
+
* the EAT-anchored database. Bounds are therefore *plain* date strings
|
|
149
|
+
* (`YYYY-MM-DD`), not full timestamps — sending a datetime gets
|
|
150
|
+
* rejected upstream.
|
|
151
|
+
*
|
|
152
|
+
* When `timezone` is provided (and not EAT), `range` is interpreted as
|
|
153
|
+
* calendar days in that zone: the SDK pads the upstream EAT request
|
|
154
|
+
* by ±1 day and then post-filters entries whose `valueDate` (an
|
|
155
|
+
* absolute instant, parsed from the API's offset-carrying ISO string)
|
|
156
|
+
* falls outside the caller's window when rendered in `timezone`. The
|
|
157
|
+
* server's own filter is on `valueDate`, so this is consistent.
|
|
150
158
|
*
|
|
151
159
|
* @param props - The statement request properties
|
|
152
160
|
* @param props.wallet - The wallet to get statement for (preferred method)
|
|
153
161
|
* @param props.accountNo - Alternative: account number to lookup wallet and fetch statement
|
|
154
|
-
* @param props.range -
|
|
155
|
-
*
|
|
156
|
-
*
|
|
162
|
+
* @param props.range - Required date range. Both bounds are `YYYY-MM-DD`
|
|
163
|
+
* strings. Without `timezone`, they correspond to calendar days in
|
|
164
|
+
* EAT (unchanged legacy behavior). With `timezone`, they correspond
|
|
165
|
+
* to calendar days in that zone.
|
|
166
|
+
* @param props.range.startDate - Start of statement period (inclusive), `YYYY-MM-DD`
|
|
167
|
+
* @param props.range.endDate - End of statement period (inclusive), `YYYY-MM-DD`
|
|
168
|
+
* @param props.timezone - Optional IANA timezone id (e.g.
|
|
169
|
+
* `"America/New_York"`). When omitted or set to `"Africa/Nairobi"`,
|
|
170
|
+
* behavior is byte-identical to before this option existed.
|
|
157
171
|
* @returns Promise that resolves to an array of validated WalletStatementEntry instances with Narration objects
|
|
158
172
|
* @throws {Error} If neither wallet nor accountNo is provided
|
|
159
173
|
* @throws {Error} If accountNo is provided but no matching wallet is found
|
|
174
|
+
* @throws {Error} If either `range` bound isn't a valid `YYYY-MM-DD` string
|
|
160
175
|
* @throws {Error} If the statement fetch operation fails or data is invalid
|
|
161
176
|
*
|
|
162
177
|
* @example
|
|
163
178
|
* ```typescript
|
|
164
179
|
* // Method 1: Using wallet object (recommended)
|
|
165
180
|
* const wallet = await repo.getWallets().then(w => w[0]);
|
|
166
|
-
* const
|
|
167
|
-
*
|
|
168
|
-
*
|
|
169
|
-
* const entriesForAccount = await repo.getStatement({
|
|
170
|
-
* accountNo: '123456789'
|
|
181
|
+
* const entries = await repo.getStatement({
|
|
182
|
+
* wallet,
|
|
183
|
+
* range: { startDate: "2024-01-01", endDate: "2024-01-31" },
|
|
171
184
|
* });
|
|
172
185
|
*
|
|
173
|
-
* //
|
|
174
|
-
* const
|
|
175
|
-
*
|
|
176
|
-
* range: {
|
|
177
|
-
* startDate: new Date('2024-01-01'),
|
|
178
|
-
* endDate: new Date('2024-01-31')
|
|
179
|
-
* }
|
|
186
|
+
* // Method 2: Using account number
|
|
187
|
+
* const byAccount = await repo.getStatement({
|
|
188
|
+
* accountNo: '123456789',
|
|
189
|
+
* range: { startDate: "2024-01-01", endDate: "2024-01-31" },
|
|
180
190
|
* });
|
|
181
191
|
*
|
|
182
192
|
* // Process payout transactions
|
|
183
|
-
* const payoutEntries =
|
|
193
|
+
* const payoutEntries = entries.filter(entry => entry.isPayout);
|
|
184
194
|
* payoutEntries.forEach(entry => {
|
|
185
195
|
* console.log(`Payout ID: ${entry.payoutId}, Amount: ${entry.amountDebited.label}`);
|
|
186
196
|
* });
|
|
187
197
|
* ```
|
|
188
198
|
*/
|
|
189
199
|
getStatement(props: {
|
|
190
|
-
range
|
|
191
|
-
startDate:
|
|
192
|
-
endDate:
|
|
200
|
+
range: {
|
|
201
|
+
startDate: string;
|
|
202
|
+
endDate: string;
|
|
193
203
|
};
|
|
194
204
|
wallet?: Wallet;
|
|
195
205
|
accountNo?: string;
|
|
206
|
+
timezone?: string;
|
|
196
207
|
}): Promise<WalletStatementEntry[]>;
|
|
197
208
|
/**
|
|
198
209
|
* Check if a wallet exists with the given query
|
|
@@ -203,3 +214,16 @@ export declare class WalletRepository extends BaseRepository<typeof contract> {
|
|
|
203
214
|
*/
|
|
204
215
|
count(query?: WalletQueryInput): Promise<number>;
|
|
205
216
|
}
|
|
217
|
+
/**
|
|
218
|
+
* Format a `Date` as `YYYY-MM-DD` using its local (browser/runtime)
|
|
219
|
+
* Y/M/D fields. Use this to convert a picker-emitted `Date` into the
|
|
220
|
+
* plain-date string `getStatement` expects.
|
|
221
|
+
*
|
|
222
|
+
* The local-field choice is intentional: a `react-day-picker` (or any
|
|
223
|
+
* grid-based) calendar picks a wall-clock day in the runtime's clock,
|
|
224
|
+
* and that's the calendar day the user expects to filter against. If
|
|
225
|
+
* you need to bias the conversion toward a specific zone, pre-position
|
|
226
|
+
* the `Date` (e.g. via `@date-fns/tz`'s `TZDate`) before calling this.
|
|
227
|
+
*/
|
|
228
|
+
export declare function toPlainDate(date: Date): string;
|
|
229
|
+
//# sourceMappingURL=wallet.repository.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wallet.repository.d.ts","sourceRoot":"","sources":["../../../src/modules/wallet/wallet.repository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGhD;;GAEG;AACH,MAAM,MAAM,gBAAgB,GACxB,WAAW,GACX,cAAc,GACd,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACtB,eAAe,GACf,IAAI,GACJ,SAAS,CAAC;AAEd;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,gBAAiB,SAAQ,cAAc,CAAC,OAAO,QAAQ,CAAC;IACnE;;;;;;;;;;;;;;OAcG;gBACS,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE;IAIvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkCG;IACG,UAAU,CAAC,KAAK,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAwCjF;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACG,UAAU,CAAC,KAAK,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IA0B7D;;;;;;;;;;;;;;;;;;;OAmBG;IACG,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAMtD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA0DG;IACG,YAAY,CAAC,KAAK,EAAE;QACxB,KAAK,EAAE;YAAE,SAAS,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAA;SAAE,CAAC;QAC9C,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAoEnC;;OAEG;IACG,MAAM,CAAC,KAAK,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC;IAKxD;;OAEG;IACG,KAAK,CAAC,KAAK,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,MAAM,CAAC;CAIvD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,CAK9C"}
|