@traxionpay/cbsmiddleware 0.0.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.
Files changed (203) hide show
  1. package/.prettierrc +4 -0
  2. package/Dockerfile +26 -0
  3. package/README.md +109 -0
  4. package/dist/app.module.d.ts +3 -0
  5. package/dist/app.module.d.ts.map +1 -0
  6. package/dist/app.module.js +44 -0
  7. package/dist/app.module.js.map +1 -0
  8. package/dist/auth/apikey.guard.d.ts +9 -0
  9. package/dist/auth/apikey.guard.d.ts.map +1 -0
  10. package/dist/auth/apikey.guard.js +86 -0
  11. package/dist/auth/apikey.guard.js.map +1 -0
  12. package/dist/auth/auth.controller.d.ts +10 -0
  13. package/dist/auth/auth.controller.d.ts.map +1 -0
  14. package/dist/auth/auth.controller.js +65 -0
  15. package/dist/auth/auth.controller.js.map +1 -0
  16. package/dist/auth/auth.interface.d.ts +8 -0
  17. package/dist/auth/auth.interface.d.ts.map +1 -0
  18. package/dist/auth/auth.interface.js +3 -0
  19. package/dist/auth/auth.interface.js.map +1 -0
  20. package/dist/auth/auth.module.d.ts +6 -0
  21. package/dist/auth/auth.module.d.ts.map +1 -0
  22. package/dist/auth/auth.module.js +81 -0
  23. package/dist/auth/auth.module.js.map +1 -0
  24. package/dist/auth/constant.d.ts +2 -0
  25. package/dist/auth/constant.d.ts.map +1 -0
  26. package/dist/auth/constant.js +5 -0
  27. package/dist/auth/constant.js.map +1 -0
  28. package/dist/auth/jwt-constant.d.ts +8 -0
  29. package/dist/auth/jwt-constant.d.ts.map +1 -0
  30. package/dist/auth/jwt-constant.js +60 -0
  31. package/dist/auth/jwt-constant.js.map +1 -0
  32. package/dist/auth/jwt-guard.d.ts +5 -0
  33. package/dist/auth/jwt-guard.d.ts.map +1 -0
  34. package/dist/auth/jwt-guard.js +18 -0
  35. package/dist/auth/jwt-guard.js.map +1 -0
  36. package/dist/auth/jwt-strategy.d.ts +16 -0
  37. package/dist/auth/jwt-strategy.d.ts.map +1 -0
  38. package/dist/auth/jwt-strategy.js +59 -0
  39. package/dist/auth/jwt-strategy.js.map +1 -0
  40. package/dist/auth/services/auth.service.d.ts +14 -0
  41. package/dist/auth/services/auth.service.d.ts.map +1 -0
  42. package/dist/auth/services/auth.service.js +56 -0
  43. package/dist/auth/services/auth.service.js.map +1 -0
  44. package/dist/auth/services/encryption.service.d.ts +11 -0
  45. package/dist/auth/services/encryption.service.d.ts.map +1 -0
  46. package/dist/auth/services/encryption.service.js +49 -0
  47. package/dist/auth/services/encryption.service.js.map +1 -0
  48. package/dist/auth.config.d.ts +29 -0
  49. package/dist/auth.config.d.ts.map +1 -0
  50. package/dist/auth.config.js +71 -0
  51. package/dist/auth.config.js.map +1 -0
  52. package/dist/banking/banking.controller.d.ts +18 -0
  53. package/dist/banking/banking.controller.d.ts.map +1 -0
  54. package/dist/banking/banking.controller.js +146 -0
  55. package/dist/banking/banking.controller.js.map +1 -0
  56. package/dist/banking/banking.module.d.ts +6 -0
  57. package/dist/banking/banking.module.d.ts.map +1 -0
  58. package/dist/banking/banking.module.js +90 -0
  59. package/dist/banking/banking.module.js.map +1 -0
  60. package/dist/banking/dto/account-transfer.dto.d.ts +17 -0
  61. package/dist/banking/dto/account-transfer.dto.d.ts.map +1 -0
  62. package/dist/banking/dto/account-transfer.dto.js +101 -0
  63. package/dist/banking/dto/account-transfer.dto.js.map +1 -0
  64. package/dist/banking/dto/account.dto.d.ts +19 -0
  65. package/dist/banking/dto/account.dto.d.ts.map +1 -0
  66. package/dist/banking/dto/account.dto.js +104 -0
  67. package/dist/banking/dto/account.dto.js.map +1 -0
  68. package/dist/banking/dto/fetch-bank-balance.dto.d.ts +12 -0
  69. package/dist/banking/dto/fetch-bank-balance.dto.d.ts.map +1 -0
  70. package/dist/banking/dto/fetch-bank-balance.dto.js +71 -0
  71. package/dist/banking/dto/fetch-bank-balance.dto.js.map +1 -0
  72. package/dist/banking/dto/transaction-history.dto.d.ts +15 -0
  73. package/dist/banking/dto/transaction-history.dto.d.ts.map +1 -0
  74. package/dist/banking/dto/transaction-history.dto.js +89 -0
  75. package/dist/banking/dto/transaction-history.dto.js.map +1 -0
  76. package/dist/banking/factory/bank-strategy.factory.d.ts +9 -0
  77. package/dist/banking/factory/bank-strategy.factory.d.ts.map +1 -0
  78. package/dist/banking/factory/bank-strategy.factory.js +48 -0
  79. package/dist/banking/factory/bank-strategy.factory.js.map +1 -0
  80. package/dist/banking/interfaces/bank-config.interface.d.ts +22 -0
  81. package/dist/banking/interfaces/bank-config.interface.d.ts.map +1 -0
  82. package/dist/banking/interfaces/bank-config.interface.js +3 -0
  83. package/dist/banking/interfaces/bank-config.interface.js.map +1 -0
  84. package/dist/banking/interfaces/bank-service.interface.d.ts +19 -0
  85. package/dist/banking/interfaces/bank-service.interface.d.ts.map +1 -0
  86. package/dist/banking/interfaces/bank-service.interface.js +3 -0
  87. package/dist/banking/interfaces/bank-service.interface.js.map +1 -0
  88. package/dist/banking/services/ASPAC.service.d.ts +25 -0
  89. package/dist/banking/services/ASPAC.service.d.ts.map +1 -0
  90. package/dist/banking/services/ASPAC.service.js +498 -0
  91. package/dist/banking/services/ASPAC.service.js.map +1 -0
  92. package/dist/banking/services/BankGateway.service.d.ts +18 -0
  93. package/dist/banking/services/BankGateway.service.d.ts.map +1 -0
  94. package/dist/banking/services/BankGateway.service.js +71 -0
  95. package/dist/banking/services/BankGateway.service.js.map +1 -0
  96. package/dist/banking/services/MBWIN.service.d.ts +25 -0
  97. package/dist/banking/services/MBWIN.service.d.ts.map +1 -0
  98. package/dist/banking/services/MBWIN.service.js +655 -0
  99. package/dist/banking/services/MBWIN.service.js.map +1 -0
  100. package/dist/banking/services/WelcomeBank.service.d.ts +29 -0
  101. package/dist/banking/services/WelcomeBank.service.d.ts.map +1 -0
  102. package/dist/banking/services/WelcomeBank.service.js +840 -0
  103. package/dist/banking/services/WelcomeBank.service.js.map +1 -0
  104. package/dist/banking/services/sms.service.d.ts +10 -0
  105. package/dist/banking/services/sms.service.d.ts.map +1 -0
  106. package/dist/banking/services/sms.service.js +97 -0
  107. package/dist/banking/services/sms.service.js.map +1 -0
  108. package/dist/banking/tokens/bank-service.tokens.d.ts +5 -0
  109. package/dist/banking/tokens/bank-service.tokens.d.ts.map +1 -0
  110. package/dist/banking/tokens/bank-service.tokens.js +8 -0
  111. package/dist/banking/tokens/bank-service.tokens.js.map +1 -0
  112. package/dist/banking/types.d.ts +10 -0
  113. package/dist/banking/types.d.ts.map +1 -0
  114. package/dist/banking/types.js +3 -0
  115. package/dist/banking/types.js.map +1 -0
  116. package/dist/decorators/response_message.decorator.d.ts +2 -0
  117. package/dist/decorators/response_message.decorator.d.ts.map +1 -0
  118. package/dist/decorators/response_message.decorator.js +7 -0
  119. package/dist/decorators/response_message.decorator.js.map +1 -0
  120. package/dist/helpers/axios-error.helper.d.ts +6 -0
  121. package/dist/helpers/axios-error.helper.d.ts.map +1 -0
  122. package/dist/helpers/axios-error.helper.js +78 -0
  123. package/dist/helpers/axios-error.helper.js.map +1 -0
  124. package/dist/helpers/response-format.helper.d.ts +4 -0
  125. package/dist/helpers/response-format.helper.d.ts.map +1 -0
  126. package/dist/helpers/response-format.helper.js +15 -0
  127. package/dist/helpers/response-format.helper.js.map +1 -0
  128. package/dist/index.d.ts +10 -0
  129. package/dist/index.d.ts.map +1 -0
  130. package/dist/index.js +26 -0
  131. package/dist/index.js.map +1 -0
  132. package/dist/interceptors/response.interceptor.d.ts +16 -0
  133. package/dist/interceptors/response.interceptor.d.ts.map +1 -0
  134. package/dist/interceptors/response.interceptor.js +80 -0
  135. package/dist/interceptors/response.interceptor.js.map +1 -0
  136. package/dist/logger/logger-interceptor.d.ts +14 -0
  137. package/dist/logger/logger-interceptor.d.ts.map +1 -0
  138. package/dist/logger/logger-interceptor.js +60 -0
  139. package/dist/logger/logger-interceptor.js.map +1 -0
  140. package/dist/logger/logger-option.d.ts +6 -0
  141. package/dist/logger/logger-option.d.ts.map +1 -0
  142. package/dist/logger/logger-option.js +103 -0
  143. package/dist/logger/logger-option.js.map +1 -0
  144. package/dist/logger/logger.config.d.ts +3 -0
  145. package/dist/logger/logger.config.d.ts.map +1 -0
  146. package/dist/logger/logger.config.js +31 -0
  147. package/dist/logger/logger.config.js.map +1 -0
  148. package/dist/logger/logger.module.d.ts +3 -0
  149. package/dist/logger/logger.module.d.ts.map +1 -0
  150. package/dist/logger/logger.module.js +76 -0
  151. package/dist/logger/logger.module.js.map +1 -0
  152. package/dist/main.d.ts +2 -0
  153. package/dist/main.d.ts.map +1 -0
  154. package/dist/main.js +13 -0
  155. package/dist/main.js.map +1 -0
  156. package/dist/tsconfig.build.tsbuildinfo +1 -0
  157. package/docker-compose.yml +14 -0
  158. package/ecosystem.config.js +35 -0
  159. package/eslint.config.mjs +34 -0
  160. package/nest-cli.json +8 -0
  161. package/package.json +102 -0
  162. package/src/app.module.ts +33 -0
  163. package/src/auth/apikey.guard.ts +42 -0
  164. package/src/auth/auth.controller.ts +41 -0
  165. package/src/auth/auth.interface.ts +7 -0
  166. package/src/auth/auth.module.ts +125 -0
  167. package/src/auth/constant.ts +1 -0
  168. package/src/auth/jwt-constant.ts +31 -0
  169. package/src/auth/jwt-guard.ts +5 -0
  170. package/src/auth/jwt-strategy.ts +43 -0
  171. package/src/auth/services/auth.service.ts +33 -0
  172. package/src/auth/services/encryption.service.ts +35 -0
  173. package/src/auth.config.ts +42 -0
  174. package/src/banking/banking.controller.ts +142 -0
  175. package/src/banking/banking.module.ts +142 -0
  176. package/src/banking/dto/account-transfer.dto.ts +66 -0
  177. package/src/banking/dto/account.dto.ts +70 -0
  178. package/src/banking/dto/fetch-bank-balance.dto.ts +46 -0
  179. package/src/banking/dto/transaction-history.dto.ts +58 -0
  180. package/src/banking/factory/bank-strategy.factory.ts +25 -0
  181. package/src/banking/interfaces/bank-config.interface.ts +25 -0
  182. package/src/banking/interfaces/bank-service.interface.ts +164 -0
  183. package/src/banking/services/ASPAC.service.ts +574 -0
  184. package/src/banking/services/BankGateway.service.ts +64 -0
  185. package/src/banking/services/MBWIN.service.ts +779 -0
  186. package/src/banking/services/WelcomeBank.service.ts +990 -0
  187. package/src/banking/services/sms.service.ts +50 -0
  188. package/src/banking/tokens/bank-service.tokens.ts +4 -0
  189. package/src/banking/types.ts +10 -0
  190. package/src/decorators/response_message.decorator.ts +4 -0
  191. package/src/helpers/axios-error.helper.ts +63 -0
  192. package/src/helpers/response-format.helper.ts +15 -0
  193. package/src/index.ts +15 -0
  194. package/src/interceptors/response.interceptor.ts +53 -0
  195. package/src/logger/logger-interceptor.ts +55 -0
  196. package/src/logger/logger-option.ts +119 -0
  197. package/src/logger/logger.config.ts +31 -0
  198. package/src/logger/logger.module.ts +31 -0
  199. package/src/main.ts +10 -0
  200. package/src/types/pino-daily-rotate-file.d.ts +31 -0
  201. package/tsconfig.build.json +11 -0
  202. package/tsconfig.build.tsbuildinfo +1 -0
  203. package/tsconfig.json +22 -0
@@ -0,0 +1,498 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
19
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
20
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
21
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
22
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
23
+ };
24
+ var __importStar = (this && this.__importStar) || (function () {
25
+ var ownKeys = function(o) {
26
+ ownKeys = Object.getOwnPropertyNames || function (o) {
27
+ var ar = [];
28
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
29
+ return ar;
30
+ };
31
+ return ownKeys(o);
32
+ };
33
+ return function (mod) {
34
+ if (mod && mod.__esModule) return mod;
35
+ var result = {};
36
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
37
+ __setModuleDefault(result, mod);
38
+ return result;
39
+ };
40
+ })();
41
+ var __metadata = (this && this.__metadata) || function (k, v) {
42
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
43
+ };
44
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
45
+ return function (target, key) { decorator(target, key, paramIndex); }
46
+ };
47
+ var __importDefault = (this && this.__importDefault) || function (mod) {
48
+ return (mod && mod.__esModule) ? mod : { "default": mod };
49
+ };
50
+ Object.defineProperty(exports, "__esModule", { value: true });
51
+ exports.ASPACService = void 0;
52
+ const common_1 = require("@nestjs/common");
53
+ const axios_1 = __importDefault(require("axios"));
54
+ const axios_error_helper_1 = require("../../helpers/axios-error.helper");
55
+ const bank_service_tokens_1 = require("../tokens/bank-service.tokens");
56
+ const https = __importStar(require("https"));
57
+ const nestjs_pino_1 = require("nestjs-pino");
58
+ let ASPACService = class ASPACService {
59
+ config;
60
+ logger;
61
+ constructor(config, logger) {
62
+ this.config = config;
63
+ this.logger = logger;
64
+ }
65
+ async generateToken() {
66
+ this.logger.log("Generating WelcomeBank Token");
67
+ try {
68
+ const headers = {
69
+ 'Content-Type': 'application/json',
70
+ 'X-API-KEY': `${this.config.ASPAC_API_KEY}`,
71
+ 'X-API-VERSION': `${this.config.ASPAC_VERSION_KEY}`
72
+ };
73
+ const httpsAgent = new https.Agent({
74
+ rejectUnauthorized: false,
75
+ });
76
+ const response = await axios_1.default.get(`${this.config.ASPAC_URL}/api/v1/token/generate`, {
77
+ headers: headers,
78
+ httpsAgent,
79
+ });
80
+ this.logger.log({ responseData: response }, 'Welcome Bank Token generated successfully');
81
+ return {
82
+ success: true,
83
+ ...response.data,
84
+ };
85
+ }
86
+ catch (error) {
87
+ axios_error_helper_1.AxiosErrorHelper.handleAxiosError(error);
88
+ }
89
+ }
90
+ async refreshToken(refreshToken) {
91
+ if (!refreshToken) {
92
+ throw new common_1.HttpException({
93
+ statusCode: common_1.HttpStatus.BAD_REQUEST,
94
+ code: 4000,
95
+ message: 'Bank token should not be empty.',
96
+ data: { refreshToken }
97
+ }, common_1.HttpStatus.BAD_REQUEST);
98
+ }
99
+ this.logger.log("Welcome Bank refresh token");
100
+ try {
101
+ const headers = {
102
+ 'Content-Type': 'application/json',
103
+ 'X-API-KEY': `${this.config.ASPAC_API_KEY}`,
104
+ 'X-API-VERSION': `${this.config.ASPAC_VERSION_KEY}`
105
+ };
106
+ const payload = {
107
+ "refreshtoken": refreshToken
108
+ };
109
+ const httpsAgent = new https.Agent({
110
+ rejectUnauthorized: false,
111
+ });
112
+ const response = await axios_1.default.post(`${this.config.ASPAC_URL}/api/v1/token/refresh`, payload, {
113
+ headers: headers,
114
+ httpsAgent,
115
+ });
116
+ this.logger.log({ responseData: response }, 'Welcome Bank Refresh Token Successful');
117
+ return {
118
+ success: true,
119
+ ...response.data,
120
+ };
121
+ }
122
+ catch (error) {
123
+ axios_error_helper_1.AxiosErrorHelper.handleAxiosError(error);
124
+ }
125
+ }
126
+ async linkAccount(accountDto) {
127
+ const { token, account, accountType, mobile } = accountDto;
128
+ if (!token) {
129
+ throw new common_1.HttpException({
130
+ statusCode: common_1.HttpStatus.UNAUTHORIZED,
131
+ code: 4000,
132
+ message: 'Bank token should not be empty.',
133
+ data: { accountDto }
134
+ }, common_1.HttpStatus.UNAUTHORIZED);
135
+ }
136
+ if (!account) {
137
+ throw new common_1.HttpException({
138
+ statusCode: common_1.HttpStatus.BAD_REQUEST,
139
+ code: 4000,
140
+ message: 'Bank account number should not be empty.',
141
+ data: { accountDto }
142
+ }, common_1.HttpStatus.BAD_REQUEST);
143
+ }
144
+ if (!accountType) {
145
+ throw new common_1.HttpException({
146
+ statusCode: common_1.HttpStatus.BAD_REQUEST,
147
+ code: 4000,
148
+ message: 'Bank account type should not be empty.',
149
+ data: { accountDto }
150
+ }, common_1.HttpStatus.BAD_REQUEST);
151
+ }
152
+ if (!mobile) {
153
+ throw new common_1.HttpException({
154
+ statusCode: common_1.HttpStatus.BAD_REQUEST,
155
+ code: 4000,
156
+ message: 'Mobile Number should not be empty.',
157
+ data: { accountDto }
158
+ }, common_1.HttpStatus.BAD_REQUEST);
159
+ }
160
+ this.logger.log("Welcome Bank Link Account");
161
+ try {
162
+ const headers = {
163
+ 'Authorization': `Bearer ${token}`,
164
+ 'Content-Type': 'application/json',
165
+ 'X-API-KEY': `${this.config.ASPAC_API_KEY}`,
166
+ 'X-API-VERSION': `${this.config.ASPAC_VERSION_KEY}`
167
+ };
168
+ const httpsAgent = new https.Agent({
169
+ rejectUnauthorized: false,
170
+ });
171
+ const response = await axios_1.default.get(`${this.config.ASPAC_URL}/api/v1/linkaccount?acc=${account}&accType=${accountType}&mobile=${mobile}`, {
172
+ headers: headers,
173
+ httpsAgent
174
+ });
175
+ this.logger.log({ responseData: response }, 'Welcome Bank Link Account Successful');
176
+ return {
177
+ success: true,
178
+ ...response.data,
179
+ };
180
+ }
181
+ catch (error) {
182
+ axios_error_helper_1.AxiosErrorHelper.handleAxiosError(error);
183
+ }
184
+ }
185
+ async validateOtp(validateOtp) {
186
+ const { token, account, otp } = validateOtp;
187
+ if (!token) {
188
+ throw new common_1.HttpException({
189
+ statusCode: common_1.HttpStatus.UNAUTHORIZED,
190
+ code: 4000,
191
+ message: 'Bank token should not be empty.',
192
+ data: { validateOtp }
193
+ }, common_1.HttpStatus.UNAUTHORIZED);
194
+ }
195
+ if (!account) {
196
+ throw new common_1.HttpException({
197
+ statusCode: common_1.HttpStatus.BAD_REQUEST,
198
+ code: 4000,
199
+ message: 'Bank account number should not be empty.',
200
+ data: { validateOtp }
201
+ }, common_1.HttpStatus.BAD_REQUEST);
202
+ }
203
+ if (!otp) {
204
+ throw new common_1.HttpException({
205
+ statusCode: common_1.HttpStatus.BAD_REQUEST,
206
+ code: 4000,
207
+ message: 'Bank account number should not be empty.',
208
+ data: { validateOtp }
209
+ }, common_1.HttpStatus.BAD_REQUEST);
210
+ }
211
+ this.logger.log("Welcome Bank Validate OTP");
212
+ try {
213
+ const headers = {
214
+ 'Authorization': `Bearer ${token}`,
215
+ 'Content-Type': 'application/json',
216
+ 'X-API-KEY': `${this.config.ASPAC_API_KEY}`,
217
+ 'X-API-VERSION': `${this.config.ASPAC_VERSION_KEY}`
218
+ };
219
+ const payload = {
220
+ "acc": account,
221
+ "otp": otp
222
+ };
223
+ const httpsAgent = new https.Agent({
224
+ rejectUnauthorized: false,
225
+ });
226
+ const response = await axios_1.default.post(`${this.config.ASPAC_URL}/api/v1/validateotp`, payload, {
227
+ headers: headers,
228
+ httpsAgent
229
+ });
230
+ this.logger.log({ responseData: response }, 'Welcome Bank Validate OTP Successful');
231
+ return {
232
+ success: true,
233
+ ...response.data,
234
+ };
235
+ }
236
+ catch (error) {
237
+ axios_error_helper_1.AxiosErrorHelper.handleAxiosError(error);
238
+ }
239
+ }
240
+ async processBalanceTransaction(fetchBalanceDto) {
241
+ const { token, account } = fetchBalanceDto;
242
+ if (!token) {
243
+ throw new common_1.HttpException({
244
+ statusCode: common_1.HttpStatus.UNAUTHORIZED,
245
+ code: 4000,
246
+ message: 'Bank token should not be empty.',
247
+ data: { fetchBalanceDto }
248
+ }, common_1.HttpStatus.UNAUTHORIZED);
249
+ }
250
+ if (!account) {
251
+ throw new common_1.HttpException({
252
+ statusCode: common_1.HttpStatus.BAD_REQUEST,
253
+ code: 4000,
254
+ message: 'Bank account number should not be empty.',
255
+ data: { fetchBalanceDto }
256
+ }, common_1.HttpStatus.BAD_REQUEST);
257
+ }
258
+ this.logger.log("Welcome Bank Balance Inquiry");
259
+ try {
260
+ const headers = {
261
+ 'Authorization': `Bearer ${token}`,
262
+ 'Content-Type': 'application/json',
263
+ 'X-API-KEY': `${this.config.ASPAC_API_KEY}`,
264
+ 'X-API-VERSION': `${this.config.ASPAC_VERSION_KEY}`
265
+ };
266
+ const payload = {
267
+ "acc": account,
268
+ };
269
+ const httpsAgent = new https.Agent({
270
+ rejectUnauthorized: false,
271
+ });
272
+ const response = await axios_1.default.post(`${this.config.ASPAC_URL}/api/v1/balanceinquiry`, payload, {
273
+ headers: headers,
274
+ httpsAgent
275
+ });
276
+ this.logger.log({ responseData: response }, 'Welcome Bank Balance Inquiry Successful');
277
+ return {
278
+ success: true,
279
+ ...response.data,
280
+ };
281
+ }
282
+ catch (error) {
283
+ axios_error_helper_1.AxiosErrorHelper.handleAxiosError(error);
284
+ }
285
+ }
286
+ async accountCashIn(accountTransferDto) {
287
+ const { token, sourceAccount, amount, particulars } = accountTransferDto;
288
+ if (!token) {
289
+ throw new common_1.HttpException({
290
+ statusCode: common_1.HttpStatus.UNAUTHORIZED,
291
+ code: 4000,
292
+ message: 'Bank token should not be empty.',
293
+ data: { accountTransferDto }
294
+ }, common_1.HttpStatus.UNAUTHORIZED);
295
+ }
296
+ if (!sourceAccount) {
297
+ throw new common_1.HttpException({
298
+ statusCode: common_1.HttpStatus.BAD_REQUEST,
299
+ code: 4000,
300
+ message: 'Bank source account number should not be empty.',
301
+ data: { accountTransferDto }
302
+ }, common_1.HttpStatus.BAD_REQUEST);
303
+ }
304
+ if (!amount) {
305
+ throw new common_1.HttpException({
306
+ statusCode: common_1.HttpStatus.BAD_REQUEST,
307
+ code: 4000,
308
+ message: 'Amount should not be empty.',
309
+ data: { accountTransferDto }
310
+ }, common_1.HttpStatus.BAD_REQUEST);
311
+ }
312
+ if (!particulars) {
313
+ throw new common_1.HttpException({
314
+ statusCode: common_1.HttpStatus.BAD_REQUEST,
315
+ code: 4000,
316
+ message: 'Particulars should not be empty.',
317
+ data: { accountTransferDto }
318
+ }, common_1.HttpStatus.BAD_REQUEST);
319
+ }
320
+ this.logger.log("Welcome Bank cash in");
321
+ try {
322
+ const headers = {
323
+ 'Authorization': `Bearer ${token}`,
324
+ 'Content-Type': 'application/json',
325
+ 'X-API-KEY': `${this.config.ASPAC_API_KEY}`,
326
+ 'X-API-VERSION': `${this.config.ASPAC_VERSION_KEY}`
327
+ };
328
+ const payload = {
329
+ "acc": sourceAccount,
330
+ "amount": String(amount),
331
+ "particulars": particulars
332
+ };
333
+ const httpsAgent = new https.Agent({
334
+ rejectUnauthorized: false,
335
+ });
336
+ const response = await axios_1.default.post(`${this.config.ASPAC_URL}/api/v1/cashin`, payload, {
337
+ headers: headers,
338
+ httpsAgent
339
+ });
340
+ this.logger.log({ responseData: response }, 'Welcome Bank Cash In Successful');
341
+ return {
342
+ success: true,
343
+ ...response.data,
344
+ };
345
+ }
346
+ catch (error) {
347
+ axios_error_helper_1.AxiosErrorHelper.handleAxiosError(error);
348
+ }
349
+ }
350
+ async accountDeposit(accountTransferDto) {
351
+ const { token, destinationAccount, amount, particulars } = accountTransferDto;
352
+ if (!token) {
353
+ throw new common_1.HttpException({
354
+ statusCode: common_1.HttpStatus.UNAUTHORIZED,
355
+ code: 4000,
356
+ message: 'Bank token should not be empty.',
357
+ data: { accountTransferDto }
358
+ }, common_1.HttpStatus.UNAUTHORIZED);
359
+ }
360
+ if (!destinationAccount) {
361
+ throw new common_1.HttpException({
362
+ statusCode: common_1.HttpStatus.BAD_REQUEST,
363
+ code: 4000,
364
+ message: 'Bank destination account number should not be empty.',
365
+ data: { accountTransferDto }
366
+ }, common_1.HttpStatus.BAD_REQUEST);
367
+ }
368
+ if (!amount) {
369
+ throw new common_1.HttpException({
370
+ statusCode: common_1.HttpStatus.BAD_REQUEST,
371
+ code: 4000,
372
+ message: 'amount should not be empty.',
373
+ data: { accountTransferDto }
374
+ }, common_1.HttpStatus.BAD_REQUEST);
375
+ }
376
+ if (!particulars) {
377
+ throw new common_1.HttpException({
378
+ statusCode: common_1.HttpStatus.BAD_REQUEST,
379
+ code: 4000,
380
+ message: 'Particulars should not be empty.',
381
+ data: { accountTransferDto }
382
+ }, common_1.HttpStatus.BAD_REQUEST);
383
+ }
384
+ this.logger.log("Welcome Bank deposit");
385
+ try {
386
+ const headers = {
387
+ 'Authorization': `Bearer ${token}`,
388
+ 'Content-Type': 'application/json',
389
+ 'X-API-KEY': `${this.config.ASPAC_API_KEY}`,
390
+ 'X-API-VERSION': `${this.config.ASPAC_VERSION_KEY}`
391
+ };
392
+ const payload = {
393
+ "acc": destinationAccount,
394
+ "amount": String(amount),
395
+ "particulars": particulars
396
+ };
397
+ const httpsAgent = new https.Agent({
398
+ rejectUnauthorized: false,
399
+ });
400
+ const response = await axios_1.default.post(`${this.config.ASPAC_URL}/api/v1/customerdeposit`, payload, {
401
+ headers: headers,
402
+ httpsAgent
403
+ });
404
+ this.logger.log({ responseData: response.data }, 'Welcom Bank Deposit Successful');
405
+ return {
406
+ success: true,
407
+ ...response.data,
408
+ };
409
+ }
410
+ catch (error) {
411
+ axios_error_helper_1.AxiosErrorHelper.handleAxiosError(error);
412
+ }
413
+ }
414
+ async getTransactionHistory(transactionHistoryDto) {
415
+ const { token, account, dateFrom, dateTo, page } = transactionHistoryDto;
416
+ if (!token) {
417
+ throw new common_1.HttpException({
418
+ statusCode: common_1.HttpStatus.UNAUTHORIZED,
419
+ code: 4000,
420
+ message: 'Bank token should not be empty.',
421
+ data: { transactionHistoryDto }
422
+ }, common_1.HttpStatus.UNAUTHORIZED);
423
+ }
424
+ if (!account) {
425
+ throw new common_1.HttpException({
426
+ statusCode: common_1.HttpStatus.BAD_REQUEST,
427
+ code: 4000,
428
+ message: 'Bank account number should not be empty.',
429
+ data: { transactionHistoryDto }
430
+ }, common_1.HttpStatus.BAD_REQUEST);
431
+ }
432
+ if (!dateFrom) {
433
+ throw new common_1.HttpException({
434
+ statusCode: common_1.HttpStatus.BAD_REQUEST,
435
+ code: 4000,
436
+ message: 'Date From should not be empty.',
437
+ data: { transactionHistoryDto }
438
+ }, common_1.HttpStatus.BAD_REQUEST);
439
+ }
440
+ if (!dateTo) {
441
+ throw new common_1.HttpException({
442
+ statusCode: common_1.HttpStatus.BAD_REQUEST,
443
+ code: 4000,
444
+ message: 'Date From should not be empty.',
445
+ data: { transactionHistoryDto }
446
+ }, common_1.HttpStatus.BAD_REQUEST);
447
+ }
448
+ this.logger.log("Welcome Bank transaction history");
449
+ try {
450
+ const headers = {
451
+ 'Authorization': `Bearer ${token}`,
452
+ 'Content-Type': 'application/json',
453
+ 'X-API-KEY': `${this.config.ASPAC_API_KEY}`,
454
+ 'X-API-VERSION': `${this.config.ASPAC_VERSION_KEY}`
455
+ };
456
+ const payload = {
457
+ "acc": account,
458
+ "dateFrom": dateFrom,
459
+ "dateTo": dateTo,
460
+ "pageNo": page
461
+ };
462
+ const httpsAgent = new https.Agent({
463
+ rejectUnauthorized: false,
464
+ });
465
+ const response = await axios_1.default.post(`${this.config.ASPAC_URL}/api/v1/transhistory`, payload, {
466
+ headers: headers,
467
+ httpsAgent
468
+ });
469
+ this.logger.log({ responseData: response.data }, 'Welcome Bank Transaction History Successful');
470
+ return {
471
+ success: true,
472
+ ...response.data,
473
+ };
474
+ }
475
+ catch (error) {
476
+ axios_error_helper_1.AxiosErrorHelper.handleAxiosError(error);
477
+ }
478
+ }
479
+ async findAccountDetailsRaw(token, userid) {
480
+ return "Sorry Service Currently Unavaible";
481
+ }
482
+ async accountTransfer(token, useridFrom, useridTo, amount) {
483
+ return "Sorry Service Currently Unavaible";
484
+ }
485
+ generateOtp(mobile, acc, bankid) {
486
+ return "Sorry Service Currently Unavaible";
487
+ }
488
+ generateRandomOtp(length) {
489
+ return "Sorry Service Currently Unavaible";
490
+ }
491
+ };
492
+ exports.ASPACService = ASPACService;
493
+ exports.ASPACService = ASPACService = __decorate([
494
+ (0, common_1.Injectable)(),
495
+ __param(0, (0, common_1.Inject)(bank_service_tokens_1.BANKING_CONFIG)),
496
+ __metadata("design:paramtypes", [Object, nestjs_pino_1.Logger])
497
+ ], ASPACService);
498
+ //# sourceMappingURL=ASPAC.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ASPAC.service.js","sourceRoot":"","sources":["../../../src/banking/services/ASPAC.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import { BankStrategyFactory } from '../factory/bank-strategy.factory';
2
+ import { FetchBankBalanceDto } from '../dto/fetch-bank-balance.dto';
3
+ import { AccountDto, ValidateOtp } from '../dto/account.dto';
4
+ import { TransactionHistoryDto } from '../dto/transaction-history.dto';
5
+ import { AccountTransferDto } from '../dto/account-transfer.dto';
6
+ export declare class BankingGatewayService {
7
+ private readonly factory;
8
+ constructor(factory: BankStrategyFactory);
9
+ getAccessToken(bankId: string): Promise<any>;
10
+ getRefreshToken(bankId: string, refreshToken: string): Promise<any>;
11
+ linkAccount(accountDto: AccountDto): Promise<any>;
12
+ validateOtp(validateOtp: ValidateOtp): Promise<any>;
13
+ fetchBankBalance(fetchBankBalanceDto: FetchBankBalanceDto): Promise<any>;
14
+ accountCashIn(accountTransferDto: AccountTransferDto): Promise<any>;
15
+ accountDeposit(accountTransferDto: AccountTransferDto): Promise<any>;
16
+ getTransactionHistory(transactionHistoryDto: TransactionHistoryDto): Promise<any>;
17
+ }
18
+ //# sourceMappingURL=BankGateway.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BankGateway.service.d.ts","sourceRoot":"","sources":["../../../src/banking/services/BankGateway.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AACvE,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAEjE,qBACa,qBAAqB;IACpB,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,mBAAmB;IAEnD,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAM5C,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAKnE,WAAW,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC;IAOjD,WAAW,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC;IAOnD,gBAAgB,CAAC,mBAAmB,EAAE,mBAAmB,GAAG,OAAO,CAAC,GAAG,CAAC;IAOxE,aAAa,CAAC,kBAAkB,EAAE,kBAAkB,GAAG,OAAO,CAAC,GAAG,CAAC;IAOnE,cAAc,CAAC,kBAAkB,EAAE,kBAAkB,GAAG,OAAO,CAAC,GAAG,CAAC;IAOpE,qBAAqB,CAAC,qBAAqB,EAAE,qBAAqB,GAAG,OAAO,CAAC,GAAG,CAAC;CAMxF"}
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.BankingGatewayService = void 0;
13
+ const common_1 = require("@nestjs/common");
14
+ const bank_strategy_factory_1 = require("../factory/bank-strategy.factory");
15
+ let BankingGatewayService = class BankingGatewayService {
16
+ factory;
17
+ constructor(factory) {
18
+ this.factory = factory;
19
+ }
20
+ async getAccessToken(bankId) {
21
+ const service = this.factory.getBankService(bankId);
22
+ const token = await service.generateToken();
23
+ return token;
24
+ }
25
+ async getRefreshToken(bankId, refreshToken) {
26
+ const service = this.factory.getBankService(bankId);
27
+ return await service.refreshToken(refreshToken);
28
+ }
29
+ async linkAccount(accountDto) {
30
+ const { bankId } = accountDto;
31
+ const service = this.factory.getBankService(bankId);
32
+ const response = await service.linkAccount(accountDto);
33
+ return response;
34
+ }
35
+ async validateOtp(validateOtp) {
36
+ const { bankId } = validateOtp;
37
+ const service = this.factory.getBankService(bankId);
38
+ const response = service.validateOtp(validateOtp);
39
+ return response;
40
+ }
41
+ async fetchBankBalance(fetchBankBalanceDto) {
42
+ const { bankId } = fetchBankBalanceDto;
43
+ const service = this.factory.getBankService(bankId);
44
+ const balance = await service.processBalanceTransaction(fetchBankBalanceDto);
45
+ return balance;
46
+ }
47
+ async accountCashIn(accountTransferDto) {
48
+ const { bankId } = accountTransferDto;
49
+ const service = this.factory.getBankService(bankId);
50
+ const response = await service.accountCashIn(accountTransferDto);
51
+ return response;
52
+ }
53
+ async accountDeposit(accountTransferDto) {
54
+ const { bankId } = accountTransferDto;
55
+ const service = this.factory.getBankService(bankId);
56
+ const response = await service.accountDeposit(accountTransferDto);
57
+ return response;
58
+ }
59
+ async getTransactionHistory(transactionHistoryDto) {
60
+ const { bankId } = transactionHistoryDto;
61
+ const service = this.factory.getBankService(bankId);
62
+ const response = await service.getTransactionHistory(transactionHistoryDto);
63
+ return response;
64
+ }
65
+ };
66
+ exports.BankingGatewayService = BankingGatewayService;
67
+ exports.BankingGatewayService = BankingGatewayService = __decorate([
68
+ (0, common_1.Injectable)(),
69
+ __metadata("design:paramtypes", [bank_strategy_factory_1.BankStrategyFactory])
70
+ ], BankingGatewayService);
71
+ //# sourceMappingURL=BankGateway.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BankGateway.service.js","sourceRoot":"","sources":["../../../src/banking/services/BankGateway.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,4EAAuE;AAOhE,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;IACH;IAA7B,YAA6B,OAA4B;QAA5B,YAAO,GAAP,OAAO,CAAqB;IAAG,CAAC;IAE7D,KAAK,CAAC,cAAc,CAAC,MAAc;QACjC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QACpD,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,aAAa,EAAE,CAAC;QAC5C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,MAAc,EAAE,YAAoB;QACxD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QACpD,OAAO,MAAM,OAAO,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;IAClD,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,UAAsB;QACtC,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC;QAC9B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QACpD,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QACvD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,WAAwB;QACxC,MAAM,EAAE,MAAM,EAAE,GAAG,WAAW,CAAC;QAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QACpD,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAClD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,mBAAwC;QAC7D,MAAM,EAAE,MAAM,EAAE,GAAG,mBAAmB,CAAC;QACvC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QACpD,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,yBAAyB,CAAC,mBAAmB,CAAC,CAAC;QAC7E,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,kBAAsC;QACxD,MAAM,EAAE,MAAM,EAAE,GAAG,kBAAkB,CAAC;QACtC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QACpD,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC;QACjE,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,kBAAsC;QACzD,MAAM,EAAE,MAAM,EAAE,GAAG,kBAAkB,CAAC;QACtC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QACpD,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;QAClE,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,qBAA4C;QACtE,MAAM,EAAE,MAAM,EAAE,GAAG,qBAAqB,CAAC;QACzC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QACpD,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,qBAAqB,CAAC,qBAAqB,CAAC,CAAC;QAC5E,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF,CAAA;AAvDY,sDAAqB;gCAArB,qBAAqB;IADjC,IAAA,mBAAU,GAAE;qCAE2B,2CAAmB;GAD9C,qBAAqB,CAuDjC"}
@@ -0,0 +1,25 @@
1
+ import { BankService } from '../interfaces/bank-service.interface';
2
+ import { BankingConfig } from '../interfaces/bank-config.interface';
3
+ import { Logger } from 'nestjs-pino';
4
+ import { AccountDto, ValidateOtp } from '../dto/account.dto';
5
+ import { TransactionHistoryDto } from '../dto/transaction-history.dto';
6
+ import { AccountTransferDto } from '../dto/account-transfer.dto';
7
+ import { FetchBankBalanceDto } from '../dto/fetch-bank-balance.dto';
8
+ export declare class MBWINService implements BankService {
9
+ private readonly config;
10
+ private readonly logger;
11
+ constructor(config: BankingConfig, logger: Logger);
12
+ generateToken(): Promise<any>;
13
+ refreshToken(refreshToken: string): Promise<any>;
14
+ linkAccount(accountDto: AccountDto): Promise<any>;
15
+ validateOtp(validateOtp: ValidateOtp): Promise<any>;
16
+ processBalanceTransaction(fetchBalanceDto: FetchBankBalanceDto): Promise<any>;
17
+ accountCashIn(accountTransferDto: AccountTransferDto): Promise<any>;
18
+ accountDeposit(accountTransferDto: AccountTransferDto): Promise<any>;
19
+ getTransactionHistory(transactionHistoryDto: TransactionHistoryDto): Promise<any>;
20
+ findAccountDetailsRaw(token: string, userid: number): Promise<string>;
21
+ accountTransfer(token: string, useridFrom: string, useridTo: string, amount: number): Promise<string>;
22
+ generateOtp(mobile: string, acc: string, bankid: string): string;
23
+ generateRandomOtp(length: number): string;
24
+ }
25
+ //# sourceMappingURL=MBWIN.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MBWIN.service.d.ts","sourceRoot":"","sources":["../../../src/banking/services/MBWIN.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AAGnE,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AAGpE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAA;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAA;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAEpE,qBACa,YAAa,YAAW,WAAW;IAI5C,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM;gBADN,MAAM,EAAE,aAAa,EACrB,MAAM,EAAE,MAAM;IAI3B,aAAa,IAAI,OAAO,CAAC,GAAG,CAAC;IAkC7B,YAAY,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAyChD,WAAW,CAAC,UAAU,EAAE,UAAU;IAgHlC,WAAW,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC;IAqEnD,yBAAyB,CAAC,eAAe,EAAE,mBAAmB,GAAG,OAAO,CAAC,GAAG,CAAC;IA6G7E,aAAa,CAAC,kBAAkB,EAAE,kBAAkB,GAAG,OAAO,CAAC,GAAG,CAAC;IAyHnE,cAAc,CAAC,kBAAkB,EAAE,kBAAkB,GAAG,OAAO,CAAC,GAAG,CAAC;IA0HpE,qBAAqB,CAAC,qBAAqB,EAAE,qBAAqB;IAoIlE,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAInD,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAIzF,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IAIhE,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;CAG1C"}