@fiado/api-invoker 4.8.1 → 4.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (293) hide show
  1. package/.claude/settings.json +33 -33
  2. package/README.md +600 -600
  3. package/bin/cognitoBackofficeConnector/api/CognitoBackofficeConnectorApi.d.ts +2 -1
  4. package/bin/cognitoBackofficeConnector/api/CognitoBackofficeConnectorApi.js +4 -0
  5. package/bin/cognitoBackofficeConnector/api/interfaces/ICognitoBackofficeConnectorApi.d.ts +9 -1
  6. package/bin/container.config.js +4 -0
  7. package/bin/index.d.ts +1 -0
  8. package/bin/index.js +1 -0
  9. package/bin/platformRbac/api/PlatformRbacBusinessApi.d.ts +3 -2
  10. package/bin/platformRbac/api/PlatformRbacBusinessApi.js +4 -0
  11. package/bin/platformRbac/api/interfaces/IPlatformRbacBusinessApi.d.ts +9 -1
  12. package/bin/totp-security/api/TotpSecurityApi.d.ts +14 -0
  13. package/bin/totp-security/api/TotpSecurityApi.js +44 -0
  14. package/bin/totp-security/api/interfaces/ITotpSecurityApi.d.ts +9 -0
  15. package/bin/totp-security/api/interfaces/ITotpSecurityApi.js +2 -0
  16. package/bin/totp-security/index.d.ts +2 -0
  17. package/bin/totp-security/index.js +18 -0
  18. package/package.json +37 -37
  19. package/src/account-beneficiary/AccountBeneficiaryApi.ts +18 -18
  20. package/src/account-beneficiary/index.ts +2 -2
  21. package/src/account-beneficiary/interfaces/IAccountBeneficiaryApi.ts +7 -7
  22. package/src/account-fiadoinc/AccountFiadoIncApi.ts +126 -126
  23. package/src/account-fiadoinc/index.ts +4 -4
  24. package/src/account-fiadoinc/interfaces/IAccountFiadoIncApi.ts +50 -50
  25. package/src/account-fiadoinc/queue/Publisher.ts +23 -23
  26. package/src/account-fiadoinc/queue/interfaces/IPublisher.ts +4 -4
  27. package/src/account-fiadosa/AccountFiadoSAApi.ts +38 -38
  28. package/src/account-fiadosa/index.ts +1 -1
  29. package/src/account-fiadosa/interfaces/IAccountFiadoSAApi.ts +16 -16
  30. package/src/account-pagoconfiado/AccountPagoConfiadoApi.ts +78 -78
  31. package/src/account-pagoconfiado/index.ts +2 -2
  32. package/src/account-pagoconfiado/interfaces/IAccountPagoConfiadoApi.ts +37 -37
  33. package/src/activity-business/ActivityApi.ts +36 -36
  34. package/src/activity-business/index.ts +5 -5
  35. package/src/activity-business/interfaces/IActivityApi.ts +13 -13
  36. package/src/activity-business/queue/ActivityPublisher.ts +30 -30
  37. package/src/activity-business/queue/IActivityPublisher.ts +4 -4
  38. package/src/address/AddressApi.ts +46 -46
  39. package/src/address/index.ts +3 -3
  40. package/src/address/interfaces/IAddressApi.ts +30 -30
  41. package/src/ai-engine-connector/AiEngineApi.ts +28 -28
  42. package/src/ai-engine-connector/index.ts +2 -2
  43. package/src/ai-engine-connector/interfaces/IAiEngineApi.ts +6 -6
  44. package/src/appselectondata/AppSelectionDataApi.ts +32 -32
  45. package/src/appselectondata/index.ts +2 -2
  46. package/src/appselectondata/interfaces/IAppSelectionDataApi.ts +17 -17
  47. package/src/authentication/AuthenticationApi.ts +29 -29
  48. package/src/authentication/index.ts +4 -4
  49. package/src/authentication/interfaces/IAuthenticationApi.ts +8 -8
  50. package/src/bankAccount/BankAccountApi.ts +34 -34
  51. package/src/bankAccount/index.ts +1 -1
  52. package/src/bankAccount/interfaces/IBankAccountApi.ts +6 -6
  53. package/src/bbvaRst/api/BBVARstApi.ts +16 -16
  54. package/src/bbvaRst/api/interfaces/IBBVARstApi.ts +4 -4
  55. package/src/bbvaRst/index.ts +1 -1
  56. package/src/benefits-marketplace/api/BenefitsMarketplaceApi.ts +35 -35
  57. package/src/benefits-marketplace/api/dtos/BenefitLeafDisplayResponse.ts +21 -21
  58. package/src/benefits-marketplace/api/interfaces/IBenefitsMarketplaceApi.ts +62 -62
  59. package/src/benefits-marketplace/index.ts +3 -3
  60. package/src/blacklist/BlackListApi.ts +19 -19
  61. package/src/blacklist/index.ts +2 -2
  62. package/src/blacklist/interfaces/IBlackListApi.ts +20 -20
  63. package/src/card/CardApi.ts +103 -103
  64. package/src/card/index.ts +3 -3
  65. package/src/card/interfaces/ICardApi.ts +32 -32
  66. package/src/card-business/index.ts +2 -2
  67. package/src/card-business/queue/CardBusinessPublisher.ts +23 -23
  68. package/src/card-business/queue/ICardBusinessPublisher.ts +10 -10
  69. package/src/centralPayments/CentralPaymentsConnectorApi.ts +317 -317
  70. package/src/centralPayments/index.ts +1 -1
  71. package/src/centralPayments/interfaces/ICentralPaymentsConnectorApi.ts +153 -153
  72. package/src/circuloCredito/api/CirculoCreditoApi.ts +21 -21
  73. package/src/circuloCredito/api/interfaces/ICirculoCreditoApi.ts +7 -7
  74. package/src/circuloCredito/index.ts +2 -2
  75. package/src/cnbv-business/CnbvApi.ts +31 -31
  76. package/src/cnbv-business/index.ts +4 -4
  77. package/src/cnbv-business/interfaces/ICnbvApi.ts +19 -19
  78. package/src/cnbv-connector/CnbvConnectorApi.ts +18 -18
  79. package/src/cnbv-connector/index.ts +1 -1
  80. package/src/cnbv-connector/interfaces/ICnbvConnectorApi.ts +6 -6
  81. package/src/cognitoBackofficeConnector/api/CognitoBackofficeConnectorApi.ts +272 -263
  82. package/src/cognitoBackofficeConnector/api/interfaces/ICognitoBackofficeConnectorApi.ts +205 -192
  83. package/src/cognitoBackofficeConnector/index.ts +2 -2
  84. package/src/cognitoConnector/CognitoConnectorApi.ts +112 -112
  85. package/src/cognitoConnector/CognitoConnectorV2.ts +87 -87
  86. package/src/cognitoConnector/index.ts +11 -11
  87. package/src/cognitoConnector/interfaces/ICognitoConnectorApi.ts +16 -16
  88. package/src/cognitoConnector/interfaces/ICognitoV2Api.ts +63 -63
  89. package/src/collector/CollectorApi.ts +97 -97
  90. package/src/collector/index.ts +2 -2
  91. package/src/collector/interfaces/ICollectorApi.ts +47 -47
  92. package/src/commission-business/CommissionBusinessApi.ts +19 -19
  93. package/src/commission-business/index.ts +3 -3
  94. package/src/commission-business/interfaces/ICommissionBusinessApi.ts +15 -15
  95. package/src/contactInformation/ContactInformationApi.ts +20 -20
  96. package/src/contactInformation/index.ts +2 -2
  97. package/src/contactInformation/interface/IContactInformationApi.ts +8 -8
  98. package/src/container.config.ts +294 -289
  99. package/src/contract-business/api/ContractBusinessApi.ts +37 -37
  100. package/src/contract-business/api/interfaces/IContractBusinessApi.ts +32 -32
  101. package/src/contract-business/index.ts +2 -2
  102. package/src/contract-generator/ContractGeneratorApi.ts +18 -18
  103. package/src/contract-generator/index.ts +2 -2
  104. package/src/contract-generator/interfaces/IContractGeneratorApi.ts +16 -16
  105. package/src/countries-business/CountriesBusinessApi.ts +26 -26
  106. package/src/countries-business/index.ts +2 -2
  107. package/src/countries-business/interfaces/ICountriesBusinessApi.ts +22 -22
  108. package/src/credit-engine/CreditEngineApi.ts +54 -54
  109. package/src/credit-engine/index.ts +17 -17
  110. package/src/credit-engine/interfaces/ICreditEngineApi.ts +46 -46
  111. package/src/credit-engine/queue/CreditCollectionPublisher.ts +24 -24
  112. package/src/credit-engine/queue/CreditDelinquencyPublisher.ts +24 -24
  113. package/src/credit-engine/queue/CreditIncomeDetectionPublisher.ts +24 -24
  114. package/src/credit-engine/queue/CreditLienCollectionPublisher.ts +24 -24
  115. package/src/credit-engine/queue/CreditNotificationPublisher.ts +24 -24
  116. package/src/credit-engine/queue/CreditOfferGenerationPublisher.ts +24 -24
  117. package/src/credit-engine/queue/CreditReconciliationPublisher.ts +24 -24
  118. package/src/credit-engine/queue/CreditScoringPublisher.ts +24 -24
  119. package/src/credit-engine/queue/CreditStatementPublisher.ts +24 -24
  120. package/src/credit-engine/queue/CreditTransferPublisher.ts +24 -24
  121. package/src/credit-engine/queue/interfaces/ICreditCollectionPublisher.ts +5 -5
  122. package/src/credit-engine/queue/interfaces/ICreditDelinquencyPublisher.ts +5 -5
  123. package/src/credit-engine/queue/interfaces/ICreditIncomeDetectionPublisher.ts +5 -5
  124. package/src/credit-engine/queue/interfaces/ICreditLienCollectionPublisher.ts +5 -5
  125. package/src/credit-engine/queue/interfaces/ICreditNotificationPublisher.ts +5 -5
  126. package/src/credit-engine/queue/interfaces/ICreditOfferGenerationPublisher.ts +5 -5
  127. package/src/credit-engine/queue/interfaces/ICreditReconciliationPublisher.ts +5 -5
  128. package/src/credit-engine/queue/interfaces/ICreditScoringPublisher.ts +5 -5
  129. package/src/credit-engine/queue/interfaces/ICreditStatementPublisher.ts +5 -5
  130. package/src/credit-engine/queue/interfaces/ICreditTransferPublisher.ts +5 -5
  131. package/src/credit-payment/CreditPaymentApi.ts +73 -73
  132. package/src/credit-payment/index.ts +2 -2
  133. package/src/credit-payment/interfaces/ICreditPaymentApi.ts +52 -52
  134. package/src/credit-statements/api/CreditStatementsApi.ts +25 -25
  135. package/src/credit-statements/api/interfaces/ICreditStatementsApi.ts +30 -30
  136. package/src/credit-statements/index.ts +2 -2
  137. package/src/device/DeviceApi.ts +32 -32
  138. package/src/device/index.ts +2 -2
  139. package/src/device/interfaces/IDeviceApi.ts +41 -41
  140. package/src/directories/DirectoriesApi.ts +68 -68
  141. package/src/directories/index.ts +3 -3
  142. package/src/directories/interfaces/IDirectoriesApi.ts +21 -21
  143. package/src/directory/DirectoryApi.ts +196 -196
  144. package/src/directory/index.ts +3 -3
  145. package/src/directory/interfaces/IDirectoryApi.ts +73 -73
  146. package/src/directorySetting/DirectorySettingApi.ts +42 -42
  147. package/src/directorySetting/index.ts +3 -3
  148. package/src/directorySetting/interfaces/IDirectorySettingApi.ts +56 -56
  149. package/src/disputes/DisputesApi.ts +50 -50
  150. package/src/disputes/index.ts +2 -2
  151. package/src/disputes/interfaces/IDisputesApi.ts +54 -54
  152. package/src/document-generator/DocumentGeneratorApi.ts +51 -51
  153. package/src/document-generator/index.ts +2 -2
  154. package/src/document-generator/interfaces/IDocumentGeneratorApi.ts +34 -34
  155. package/src/document-image-processor/DocumentImageProcessorApi.ts +22 -22
  156. package/src/document-image-processor/index.ts +1 -1
  157. package/src/document-image-processor/interfaces/IDocumentImageProcessorApi.ts +7 -7
  158. package/src/estafeta/api/EstafetaApi.ts +67 -67
  159. package/src/estafeta/api/interfaces/IEstafetaApi.ts +28 -28
  160. package/src/estafeta/index.ts +1 -1
  161. package/src/event-history-business/EventHistoryApi.ts +108 -108
  162. package/src/event-history-business/index.ts +3 -3
  163. package/src/event-history-business/interfaces/IEventHistoryApi.ts +47 -47
  164. package/src/exchangeRates/ExchangeRatesApi.ts +27 -27
  165. package/src/exchangeRates/index.ts +1 -1
  166. package/src/exchangeRates/interfaces/IExchangeRatesApi.ts +8 -8
  167. package/src/fiadoMessages/api/FiadoMessagesApi.ts +20 -20
  168. package/src/fiadoMessages/api/interfaces/IFiadoMessagesApi.ts +2 -2
  169. package/src/fiadoMessages/index.ts +1 -1
  170. package/src/firebase-connector/FirebaseConnectorApi.ts +53 -53
  171. package/src/firebase-connector/index.ts +3 -3
  172. package/src/firebase-connector/interfaces/IFirebaseConnectorApi.ts +6 -6
  173. package/src/fraudPreventionEngine/api/FraudPreventionEngineApi.ts +22 -22
  174. package/src/fraudPreventionEngine/api/interfaces/IFraudPreventionEngineApi.ts +7 -7
  175. package/src/fraudPreventionEngine/index.ts +1 -1
  176. package/src/group/GroupApi.ts +69 -69
  177. package/src/group/index.ts +1 -1
  178. package/src/group/interfaces/IGroupApi.ts +40 -40
  179. package/src/identity/IdentityApi.ts +95 -95
  180. package/src/identity/index.ts +3 -3
  181. package/src/identity/interfaces/IIdentityApi.ts +46 -46
  182. package/src/index.ts +79 -78
  183. package/src/legalDocument/api/LegalDocumentApi.ts +38 -38
  184. package/src/legalDocument/api/interfaces/ILegalDocumentApi.ts +7 -7
  185. package/src/legalDocument/index.ts +3 -3
  186. package/src/milestone-business/api/MilestoneBusinessApi.ts +26 -26
  187. package/src/milestone-business/api/interfaces/IMilestoneBusinessApi.ts +9 -9
  188. package/src/milestone-business/index.ts +2 -2
  189. package/src/multicommServicePayment/api/MulticommServicePaymentApi.ts +94 -94
  190. package/src/multicommServicePayment/api/interfaces/IMulticommServicePaymentApi.ts +44 -44
  191. package/src/multicommServicePayment/index.ts +1 -1
  192. package/src/notificationMessages/index.ts +1 -1
  193. package/src/notificationMessages/queue/NotificationMessagePublisher.ts +42 -42
  194. package/src/notificationMessages/queue/interfaces/INotificationMessagesPublisher.ts +7 -7
  195. package/src/notificationWebsockets/index.ts +1 -1
  196. package/src/notificationWebsockets/queue/NotificationWSMessagePublisher.ts +29 -29
  197. package/src/notificationWebsockets/queue/interfaces/INotificationWSMessagesPublisher.ts +4 -4
  198. package/src/observations/ObservationsApi.ts +23 -23
  199. package/src/observations/index.ts +3 -3
  200. package/src/observations/interfaces/IObservationsApi.ts +9 -9
  201. package/src/onboarding/api/OnboardingApi.ts +23 -23
  202. package/src/onboarding/api/interfaces/IOnboardingApi.ts +3 -3
  203. package/src/onboarding/index.ts +1 -1
  204. package/src/onboarding-business/api/OnboardingBusinessApi.ts +210 -210
  205. package/src/onboarding-business/api/interfaces/IOnboardingBusinessApi.ts +9 -9
  206. package/src/onboarding-business/index.ts +1 -1
  207. package/src/order-collector-business/OrderCollectorApi.ts +20 -20
  208. package/src/order-collector-business/index.ts +3 -3
  209. package/src/order-collector-business/interfaces/IOrderCollectorApi.ts +9 -9
  210. package/src/p2pContact/api/P2pContactApi.ts +19 -19
  211. package/src/p2pContact/api/interfaces/IP2pContactApi.ts +4 -4
  212. package/src/p2pContact/index.ts +1 -1
  213. package/src/payroll-business/PayrollApi.ts +19 -19
  214. package/src/payroll-business/index.ts +1 -1
  215. package/src/payroll-business/interfaces/IPayrollApi.ts +18 -18
  216. package/src/people-business/api/PeopleBusinessApi.ts +32 -32
  217. package/src/people-business/api/interfaces/IPeopleBusinessApi.ts +7 -7
  218. package/src/people-business/index.ts +1 -1
  219. package/src/platform-error-events/index.ts +2 -2
  220. package/src/platform-error-events/queue/PlatformErrorEventsPublisher.ts +24 -24
  221. package/src/platform-error-events/queue/interfaces/IPlatformErrorEventsPublisher.ts +5 -5
  222. package/src/platformRbac/api/PlatformRbacBusinessApi.ts +64 -55
  223. package/src/platformRbac/api/interfaces/IPlatformRbacBusinessApi.ts +69 -56
  224. package/src/pomelo/api/PomeloApi.ts +109 -109
  225. package/src/pomelo/api/interfaces/IPomeloApi.ts +29 -29
  226. package/src/pomelo/index.ts +1 -1
  227. package/src/pomeloProcessor/api/PomeloProcessorApi.ts +17 -17
  228. package/src/pomeloProcessor/api/interfaces/IPomeloProcessorApi.ts +2 -2
  229. package/src/pomeloProcessor/index.ts +2 -2
  230. package/src/pricelist-business/PriceListApi.ts +45 -45
  231. package/src/pricelist-business/index.ts +1 -1
  232. package/src/pricelist-business/interfaces/IPriceListApi.ts +16 -16
  233. package/src/product-catalog/ProductCatalogApi.ts +17 -17
  234. package/src/product-catalog/index.ts +1 -1
  235. package/src/product-catalog/interfaces/IProductCatalogApi.ts +6 -6
  236. package/src/product-payment/api/ProductPaymentApi.ts +25 -25
  237. package/src/product-payment/api/interfaces/IProductPaymentApi.ts +8 -8
  238. package/src/product-payment/index.ts +1 -1
  239. package/src/referral-business/ReferralBusinessApi.ts +42 -42
  240. package/src/referral-business/index.ts +1 -1
  241. package/src/referral-business/interfaces/IReferralBusinessApi.ts +45 -45
  242. package/src/report-processor-business/api/IReportProcessorBusinessApi.ts +4 -4
  243. package/src/report-processor-business/api/ReportProcessorBusinessApi.ts +17 -17
  244. package/src/report-processor-business/index.ts +5 -5
  245. package/src/riskProfile/api/RiskProfileApi.ts +63 -63
  246. package/src/riskProfile/api/TransactionAlertApi.ts +49 -49
  247. package/src/riskProfile/api/interfaces/IRiskProfileApi.ts +51 -51
  248. package/src/riskProfile/api/interfaces/ITransactionAlertApi.ts +70 -70
  249. package/src/riskProfile/index.ts +7 -7
  250. package/src/riskProfile/queue/TransactionAlarmPublisher.ts +25 -25
  251. package/src/riskProfile/queue/interfaces/ITransactionAlarmPublisher.ts +4 -4
  252. package/src/service-business/ServiceApi.ts +78 -78
  253. package/src/service-business/index.ts +2 -2
  254. package/src/service-business/interfaces/IServiceApi.ts +73 -73
  255. package/src/sessionActivity/index.ts +2 -2
  256. package/src/sessionActivity/queue/SessionActivityPublisher.ts +23 -23
  257. package/src/sessionActivity/queue/interfaces/ISessionActivityPublisher.ts +4 -4
  258. package/src/stp-business/api/STPBusinessApi.ts +32 -32
  259. package/src/stp-business/api/interfaces/ISTPBusinessApi.ts +15 -15
  260. package/src/stp-business/index.ts +1 -1
  261. package/src/stpAccount/api/STPAccountApi.ts +111 -111
  262. package/src/stpAccount/api/interfaces/ISTPAccountApi.ts +7 -7
  263. package/src/stpAccount/index.ts +1 -1
  264. package/src/stpServicePayment/api/StpServicePaymentApi.ts +94 -94
  265. package/src/stpServicePayment/api/interfaces/IStpServicePaymentApi.ts +44 -44
  266. package/src/stpServicePayment/index.ts +1 -1
  267. package/src/stpSpei/api/StpSpeiApi.ts +32 -32
  268. package/src/stpSpei/api/interfaces/IStpSpeiApi.ts +6 -6
  269. package/src/stpSpei/index.ts +1 -1
  270. package/src/teams-connector/index.ts +2 -2
  271. package/src/teams-connector/queue/TeamsNotificationPublisher.ts +24 -24
  272. package/src/teams-connector/queue/interfaces/ITeamsNotificationPublisher.ts +5 -5
  273. package/src/tern/api/TernApi.ts +147 -147
  274. package/src/tern/api/interfaces/ITernApi.ts +54 -54
  275. package/src/tern/index.ts +1 -1
  276. package/src/totp-security/api/TotpSecurityApi.ts +38 -0
  277. package/src/totp-security/api/interfaces/ITotpSecurityApi.ts +16 -0
  278. package/src/totp-security/index.ts +2 -0
  279. package/src/transaction/api/TransactionApi.ts +157 -157
  280. package/src/transaction/api/interfaces/ITransactionApi.ts +82 -82
  281. package/src/transaction/index.ts +5 -5
  282. package/src/transaction/queue/TransactionPublisher.ts +25 -25
  283. package/src/transaction/queue/interfaces/ITransactionPublisher.ts +4 -4
  284. package/src/transactionProcessor/api/TransactionProcessorApi.ts +57 -57
  285. package/src/transactionProcessor/api/interfaces/ITransactionProcessorApi.ts +28 -28
  286. package/src/transactionProcessor/index.ts +1 -1
  287. package/src/uniteller-connector/api/UnitellerConnectorApi.ts +113 -113
  288. package/src/uniteller-connector/api/interfaces/IUnitellerConnectorApi.ts +85 -85
  289. package/src/uniteller-connector/index.ts +2 -2
  290. package/src/utils/InvokerUtils.ts +18 -18
  291. package/src/zendesk/ZendeskApi.ts +24 -24
  292. package/src/zendesk/index.ts +3 -3
  293. package/src/zendesk/interfaces/IZendeskApi.ts +10 -10
@@ -1,14 +1,14 @@
1
-
2
-
3
- export interface IActivityApi {
4
-
5
- getActivityByDirectoryId(directoryId: string, typeOfActivityIds: string[], table?: "PRINCIPAL" | "DETAIL"): Promise<any>
6
-
7
- getActivityById(typeOfActivityIds: string[]): Promise<any>
8
-
9
- getActivityHistory(typeOfActivity: string, startDate: string, endDate: string): Promise<any>
10
-
11
- findByDirectoriesList(directories: string[]): Promise<any>
12
-
13
- correctCounters(): Promise<any>
1
+
2
+
3
+ export interface IActivityApi {
4
+
5
+ getActivityByDirectoryId(directoryId: string, typeOfActivityIds: string[], table?: "PRINCIPAL" | "DETAIL"): Promise<any>
6
+
7
+ getActivityById(typeOfActivityIds: string[]): Promise<any>
8
+
9
+ getActivityHistory(typeOfActivity: string, startDate: string, endDate: string): Promise<any>
10
+
11
+ findByDirectoriesList(directories: string[]): Promise<any>
12
+
13
+ correctCounters(): Promise<any>
14
14
  }
@@ -1,30 +1,30 @@
1
- import { SendMessageCommand, SendMessageRequest, SQSClient } from "@aws-sdk/client-sqs";
2
- import { ActivityQueueMessage } from "@fiado/type-kit/bin/activity";
3
- import { injectable } from "inversify";
4
- import { IActivityPublisher } from "./IActivityPublisher";
5
-
6
-
7
- @injectable()
8
- export default class ActivityPublisher implements IActivityPublisher {
9
- private readonly ACTIVITY_QUEUE = process.env.ACTIVITY_QUEUE;
10
-
11
- async publish(message: ActivityQueueMessage): Promise<void> {
12
- try {
13
-
14
- const desduplicationId = `${message.message.directoryId}|${message.message.typeOfActivity}|${message.message.date}`;
15
-
16
- const client: SQSClient = new SQSClient();
17
- const sendMessageRequest: SendMessageRequest = {
18
- QueueUrl: this.ACTIVITY_QUEUE,
19
- MessageBody: JSON.stringify(message),
20
- MessageGroupId: message.message.directoryId,
21
- MessageDeduplicationId: desduplicationId
22
- };
23
- const command: SendMessageCommand = new SendMessageCommand(sendMessageRequest);
24
- await client.send(command);
25
- } catch (error) {
26
- const errorMessage = error instanceof Error ? error.message : String(error);
27
- throw new Error(`Error publishing message to queue ${': ' + errorMessage}`);
28
- }
29
- }
30
- }
1
+ import { SendMessageCommand, SendMessageRequest, SQSClient } from "@aws-sdk/client-sqs";
2
+ import { ActivityQueueMessage } from "@fiado/type-kit/bin/activity";
3
+ import { injectable } from "inversify";
4
+ import { IActivityPublisher } from "./IActivityPublisher";
5
+
6
+
7
+ @injectable()
8
+ export default class ActivityPublisher implements IActivityPublisher {
9
+ private readonly ACTIVITY_QUEUE = process.env.ACTIVITY_QUEUE;
10
+
11
+ async publish(message: ActivityQueueMessage): Promise<void> {
12
+ try {
13
+
14
+ const desduplicationId = `${message.message.directoryId}|${message.message.typeOfActivity}|${message.message.date}`;
15
+
16
+ const client: SQSClient = new SQSClient();
17
+ const sendMessageRequest: SendMessageRequest = {
18
+ QueueUrl: this.ACTIVITY_QUEUE,
19
+ MessageBody: JSON.stringify(message),
20
+ MessageGroupId: message.message.directoryId,
21
+ MessageDeduplicationId: desduplicationId
22
+ };
23
+ const command: SendMessageCommand = new SendMessageCommand(sendMessageRequest);
24
+ await client.send(command);
25
+ } catch (error) {
26
+ const errorMessage = error instanceof Error ? error.message : String(error);
27
+ throw new Error(`Error publishing message to queue ${': ' + errorMessage}`);
28
+ }
29
+ }
30
+ }
@@ -1,5 +1,5 @@
1
- import { ActivityQueueMessage } from "@fiado/type-kit/bin/activity";
2
-
3
- export interface IActivityPublisher {
4
- publish(message: ActivityQueueMessage): Promise<void>
1
+ import { ActivityQueueMessage } from "@fiado/type-kit/bin/activity";
2
+
3
+ export interface IActivityPublisher {
4
+ publish(message: ActivityQueueMessage): Promise<void>
5
5
  }
@@ -1,47 +1,47 @@
1
- import { IHttpRequest } from "@fiado/http-client";
2
- import { AddressCreateRequest, AddressShippingCardResponse } from "@fiado/type-kit/bin/address";
3
- import { inject, injectable } from "inversify";
4
- import { IAddressApi } from "./interfaces/IAddressApi";
5
-
6
-
7
- @injectable()
8
- export class AddressApi implements IAddressApi {
9
-
10
- private readonly baseUrl = process.env.ADDRESS_LAMBDA_URL || "";
11
- constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) { }
12
-
13
- async getByDirectoryId(directoryId: string): Promise<any> {
14
-
15
- this.validateBaseUrl();
16
- this.validateDirectoryId(directoryId);
17
-
18
- const url = `${this.baseUrl}users/${directoryId}`;
19
-
20
- return await this.httpRequest.get(`${url}`, undefined);
21
- }
22
-
23
- async create(directoryId: string, address: AddressCreateRequest): Promise<void> {
24
- this.validateBaseUrl();
25
- this.validateDirectoryId(directoryId);
26
- const url = `${this.baseUrl}users/${directoryId}`;
27
- await this.httpRequest.post<void>(url, address);
28
- }
29
-
30
- async getAddressLocationShipping(directoryId: string): Promise<AddressShippingCardResponse> {
31
- this.validateBaseUrl();
32
- const url = `${this.baseUrl}shipping`;
33
- return await this.httpRequest.post<AddressShippingCardResponse>(url, { directoryId });
34
- }
35
-
36
- private validateBaseUrl() {
37
- if (!this.baseUrl) {
38
- throw new Error("Environment variable ADDRESS_LAMBDA_URL value not found");
39
- }
40
- }
41
-
42
- private validateDirectoryId(directoryId: string) {
43
- if (!directoryId) {
44
- throw new Error("Directory ID is required.");
45
- }
46
- }
1
+ import { IHttpRequest } from "@fiado/http-client";
2
+ import { AddressCreateRequest, AddressShippingCardResponse } from "@fiado/type-kit/bin/address";
3
+ import { inject, injectable } from "inversify";
4
+ import { IAddressApi } from "./interfaces/IAddressApi";
5
+
6
+
7
+ @injectable()
8
+ export class AddressApi implements IAddressApi {
9
+
10
+ private readonly baseUrl = process.env.ADDRESS_LAMBDA_URL || "";
11
+ constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) { }
12
+
13
+ async getByDirectoryId(directoryId: string): Promise<any> {
14
+
15
+ this.validateBaseUrl();
16
+ this.validateDirectoryId(directoryId);
17
+
18
+ const url = `${this.baseUrl}users/${directoryId}`;
19
+
20
+ return await this.httpRequest.get(`${url}`, undefined);
21
+ }
22
+
23
+ async create(directoryId: string, address: AddressCreateRequest): Promise<void> {
24
+ this.validateBaseUrl();
25
+ this.validateDirectoryId(directoryId);
26
+ const url = `${this.baseUrl}users/${directoryId}`;
27
+ await this.httpRequest.post<void>(url, address);
28
+ }
29
+
30
+ async getAddressLocationShipping(directoryId: string): Promise<AddressShippingCardResponse> {
31
+ this.validateBaseUrl();
32
+ const url = `${this.baseUrl}shipping`;
33
+ return await this.httpRequest.post<AddressShippingCardResponse>(url, { directoryId });
34
+ }
35
+
36
+ private validateBaseUrl() {
37
+ if (!this.baseUrl) {
38
+ throw new Error("Environment variable ADDRESS_LAMBDA_URL value not found");
39
+ }
40
+ }
41
+
42
+ private validateDirectoryId(directoryId: string) {
43
+ if (!directoryId) {
44
+ throw new Error("Directory ID is required.");
45
+ }
46
+ }
47
47
  }
@@ -1,4 +1,4 @@
1
-
2
-
3
- export * from './interfaces/IAddressApi';
1
+
2
+
3
+ export * from './interfaces/IAddressApi';
4
4
  export * from './AddressApi';
@@ -1,31 +1,31 @@
1
- import { AddressCreateRequest, AddressResponse, AddressShippingCardResponse } from "@fiado/type-kit/bin/address";
2
-
3
- export interface IAddressApi {
4
-
5
- /**
6
- * Obtiene una lista de direcciones por su ID de directorio.
7
- * @param directoryId ID de directorio (UUID) a buscar.
8
- * @returns Una promesa que resuelve a un arreglo de objetos de dirección.
9
- * Puede devolver un arreglo vacío si no se encuentran coincidencias.
10
- * @throws {Error} Lanza un error si los parámetros de entrada son inválidos.
11
- */
12
- getByDirectoryId(directoryId: string): Promise<AddressResponse[]>;
13
-
14
- /**
15
- * Crea una nueva dirección para un directorio.
16
- * @param directoryId ID de directorio (UUID) a buscar.
17
- * @param address Objeto de dirección a crear.
18
- * @returns Una promesa que resuelve a void.
19
- * @throws {Error} Lanza un error si los parámetros de entrada son inválidos.
20
- */
21
- create(directoryId: string, address: AddressCreateRequest): Promise<void>;
22
-
23
- /**
24
- * Obtiene la dirección de envío de una tarjeta.
25
- * @param input Objeto de solicitud de dirección de envío.
26
- * @returns Una promesa que resuelve a un objeto de respuesta de dirección de envío.
27
- * @throws {Error} Lanza un error si los parámetros de entrada son inválidos.
28
- */
29
- getAddressLocationShipping(directoryId: string): Promise<AddressShippingCardResponse>
30
-
1
+ import { AddressCreateRequest, AddressResponse, AddressShippingCardResponse } from "@fiado/type-kit/bin/address";
2
+
3
+ export interface IAddressApi {
4
+
5
+ /**
6
+ * Obtiene una lista de direcciones por su ID de directorio.
7
+ * @param directoryId ID de directorio (UUID) a buscar.
8
+ * @returns Una promesa que resuelve a un arreglo de objetos de dirección.
9
+ * Puede devolver un arreglo vacío si no se encuentran coincidencias.
10
+ * @throws {Error} Lanza un error si los parámetros de entrada son inválidos.
11
+ */
12
+ getByDirectoryId(directoryId: string): Promise<AddressResponse[]>;
13
+
14
+ /**
15
+ * Crea una nueva dirección para un directorio.
16
+ * @param directoryId ID de directorio (UUID) a buscar.
17
+ * @param address Objeto de dirección a crear.
18
+ * @returns Una promesa que resuelve a void.
19
+ * @throws {Error} Lanza un error si los parámetros de entrada son inválidos.
20
+ */
21
+ create(directoryId: string, address: AddressCreateRequest): Promise<void>;
22
+
23
+ /**
24
+ * Obtiene la dirección de envío de una tarjeta.
25
+ * @param input Objeto de solicitud de dirección de envío.
26
+ * @returns Una promesa que resuelve a un objeto de respuesta de dirección de envío.
27
+ * @throws {Error} Lanza un error si los parámetros de entrada son inválidos.
28
+ */
29
+ getAddressLocationShipping(directoryId: string): Promise<AddressShippingCardResponse>
30
+
31
31
  }
@@ -1,28 +1,28 @@
1
- import dotenv from 'dotenv';
2
- import { inject, injectable } from "inversify";
3
- import { IHttpRequest } from "@fiado/http-client";
4
- import { IAiEngineApi } from "./interfaces/IAiEngineApi";
5
- import { AiAnalyzeRequest, AiAnalyzeResponse } from "@fiado/type-kit/bin/aiEngine";
6
- import FiadoApiResponse from "@fiado/type-kit/bin/apiResponse/dtos/FiadoApiResponse";
7
- import { log } from "@fiado/logger";
8
- dotenv.config();
9
-
10
- @injectable()
11
- export class AiEngineApi implements IAiEngineApi {
12
-
13
- private readonly baseUrl = process.env.AI_ENGINE_LAMBDA_URL || "";
14
-
15
- constructor(@inject("IHttpRequest") private readonly httpRequest: IHttpRequest) {}
16
-
17
- public async analyze(prompt: string, systemPrompt?: string, modelId?: string): Promise<FiadoApiResponse<AiAnalyzeResponse>> {
18
- try {
19
- const url = `${this.baseUrl}ai/analyze`;
20
- const body: AiAnalyzeRequest = { prompt, systemPrompt, modelId };
21
- log.info(`Calling AI Engine at: ${url}`);
22
- return await this.httpRequest.post(url, body, { 'operationName': 'aiAnalyze' });
23
- } catch (error) {
24
- log.error('Error calling AI Engine from api-invoker', error as Error);
25
- throw new Error('Error calling AI Engine from api-invoker');
26
- }
27
- }
28
- }
1
+ import dotenv from 'dotenv';
2
+ import { inject, injectable } from "inversify";
3
+ import { IHttpRequest } from "@fiado/http-client";
4
+ import { IAiEngineApi } from "./interfaces/IAiEngineApi";
5
+ import { AiAnalyzeRequest, AiAnalyzeResponse } from "@fiado/type-kit/bin/aiEngine";
6
+ import FiadoApiResponse from "@fiado/type-kit/bin/apiResponse/dtos/FiadoApiResponse";
7
+ import { log } from "@fiado/logger";
8
+ dotenv.config();
9
+
10
+ @injectable()
11
+ export class AiEngineApi implements IAiEngineApi {
12
+
13
+ private readonly baseUrl = process.env.AI_ENGINE_LAMBDA_URL || "";
14
+
15
+ constructor(@inject("IHttpRequest") private readonly httpRequest: IHttpRequest) {}
16
+
17
+ public async analyze(prompt: string, systemPrompt?: string, modelId?: string): Promise<FiadoApiResponse<AiAnalyzeResponse>> {
18
+ try {
19
+ const url = `${this.baseUrl}ai/analyze`;
20
+ const body: AiAnalyzeRequest = { prompt, systemPrompt, modelId };
21
+ log.info(`Calling AI Engine at: ${url}`);
22
+ return await this.httpRequest.post(url, body, { 'operationName': 'aiAnalyze' });
23
+ } catch (error) {
24
+ log.error('Error calling AI Engine from api-invoker', error as Error);
25
+ throw new Error('Error calling AI Engine from api-invoker');
26
+ }
27
+ }
28
+ }
@@ -1,2 +1,2 @@
1
- export * from './interfaces/IAiEngineApi';
2
- export * from './AiEngineApi';
1
+ export * from './interfaces/IAiEngineApi';
2
+ export * from './AiEngineApi';
@@ -1,6 +1,6 @@
1
- import { AiAnalyzeResponse } from "@fiado/type-kit/bin/aiEngine";
2
- import FiadoApiResponse from "@fiado/type-kit/bin/apiResponse/dtos/FiadoApiResponse";
3
-
4
- export interface IAiEngineApi {
5
- analyze(prompt: string, systemPrompt?: string, modelId?: string): Promise<FiadoApiResponse<AiAnalyzeResponse>>;
6
- }
1
+ import { AiAnalyzeResponse } from "@fiado/type-kit/bin/aiEngine";
2
+ import FiadoApiResponse from "@fiado/type-kit/bin/apiResponse/dtos/FiadoApiResponse";
3
+
4
+ export interface IAiEngineApi {
5
+ analyze(prompt: string, systemPrompt?: string, modelId?: string): Promise<FiadoApiResponse<AiAnalyzeResponse>>;
6
+ }
@@ -1,33 +1,33 @@
1
- import { inject, injectable } from "inversify";
2
- import { IHttpRequest } from "@fiado/http-client";
3
- import dotenv from 'dotenv';
4
- import { IdentificationParameter } from "@fiado/type-kit/bin/blacklist";
5
- import { IAppSelectionDataApi } from "./interfaces/IAppSelectionDataApi";
6
- dotenv.config();
7
-
8
- @injectable()
9
- export class AppSelectionDataApi implements IAppSelectionDataApi {
10
-
11
- constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) { }
12
- private readonly baseUrl = process.env.APP_SELECTION_DATA_URL || "";
13
-
14
- async getList(params: {pageSize?:number,index?:string,dataType?:string}): Promise<any> {
15
- const queryParams = []
16
-
17
- if (params?.pageSize) {
18
- queryParams.push(`pageSize=${params.pageSize}`)
19
- }
20
-
21
- if (params?.index) {
22
- queryParams.push(`index=${params.index}`)
23
- }
24
-
25
- if (params?.dataType) {
26
- queryParams.push(`dataType=${params.dataType}`)
27
- }
28
-
29
- const url = `${this.baseUrl}appselectiondata?${queryParams.join('&')}`;
30
- return await this.httpRequest.get(`${url}`);
31
- }
32
-
1
+ import { inject, injectable } from "inversify";
2
+ import { IHttpRequest } from "@fiado/http-client";
3
+ import dotenv from 'dotenv';
4
+ import { IdentificationParameter } from "@fiado/type-kit/bin/blacklist";
5
+ import { IAppSelectionDataApi } from "./interfaces/IAppSelectionDataApi";
6
+ dotenv.config();
7
+
8
+ @injectable()
9
+ export class AppSelectionDataApi implements IAppSelectionDataApi {
10
+
11
+ constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) { }
12
+ private readonly baseUrl = process.env.APP_SELECTION_DATA_URL || "";
13
+
14
+ async getList(params: {pageSize?:number,index?:string,dataType?:string}): Promise<any> {
15
+ const queryParams = []
16
+
17
+ if (params?.pageSize) {
18
+ queryParams.push(`pageSize=${params.pageSize}`)
19
+ }
20
+
21
+ if (params?.index) {
22
+ queryParams.push(`index=${params.index}`)
23
+ }
24
+
25
+ if (params?.dataType) {
26
+ queryParams.push(`dataType=${params.dataType}`)
27
+ }
28
+
29
+ const url = `${this.baseUrl}appselectiondata?${queryParams.join('&')}`;
30
+ return await this.httpRequest.get(`${url}`);
31
+ }
32
+
33
33
  }
@@ -1,3 +1,3 @@
1
-
2
- export * from './interfaces/IAppSelectionDataApi';
1
+
2
+ export * from './interfaces/IAppSelectionDataApi';
3
3
  export * from './AppSelectionDataApi';
@@ -1,17 +1,17 @@
1
- import FiadoApiResponse from "@fiado/type-kit/bin/apiResponse/dtos/FiadoApiResponse";
2
-
3
- /**
4
- * Interfaz que define las operaciones que se pueden realizar en el servicio de black list.
5
- */
6
- export interface IAppSelectionDataApi {
7
-
8
- /**
9
- * Obtener por parametro de identificacion.
10
- * @param identificationParameter tipo de parametro.
11
- * @param value valor del parametro.
12
- * @returns Una promesa que resuelve a void.
13
- * @throws {Error} Lanza un error si los parámetros de entrada son inválidos.
14
- */
15
- getList(params: {pageSize?:number,index?:string,dataType?:string}): Promise<FiadoApiResponse<void>>;
16
-
17
- }
1
+ import FiadoApiResponse from "@fiado/type-kit/bin/apiResponse/dtos/FiadoApiResponse";
2
+
3
+ /**
4
+ * Interfaz que define las operaciones que se pueden realizar en el servicio de black list.
5
+ */
6
+ export interface IAppSelectionDataApi {
7
+
8
+ /**
9
+ * Obtener por parametro de identificacion.
10
+ * @param identificationParameter tipo de parametro.
11
+ * @param value valor del parametro.
12
+ * @returns Una promesa que resuelve a void.
13
+ * @throws {Error} Lanza un error si los parámetros de entrada son inválidos.
14
+ */
15
+ getList(params: {pageSize?:number,index?:string,dataType?:string}): Promise<FiadoApiResponse<void>>;
16
+
17
+ }
@@ -1,30 +1,30 @@
1
- import { IHttpRequest } from "@fiado/http-client";
2
- import { SignUpAdditionalRequest, SignUpUserBackofficeRequest } from "@fiado/type-kit/bin/authentication";
3
- import { inject, injectable } from "inversify";
4
- import { IAuthenticationApi } from "./interfaces/IAuthenticationApi";
5
-
6
- @injectable()
7
- export class AuthenticationApi implements IAuthenticationApi {
8
-
9
- constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) { }
10
-
11
- async signUpAdditionalCard(createAdditionalCard: SignUpAdditionalRequest): Promise<any> {
12
- const url = `${process.env.AUTH_LAMBDA_URL}`;
13
- const operation = "postSignUpAdditionalCard";
14
-
15
- return await this.httpRequest.post(url, createAdditionalCard, { 'operationName': operation });
16
- }
17
-
18
- async deleteAuthSessionByDirectoryId (directoryId: string): Promise<any> {
19
- const url = `${process.env.AUTH_LAMBDA_URL}`;
20
- const operation = "deleteAuthSessionByDirectoryId";
21
-
22
- return await this.httpRequest.post(url, {directoryId}, { 'operationName': operation });
23
- }
24
-
25
- async signUpBackofficeBulk(input: SignUpUserBackofficeRequest[]): Promise<any> {
26
- const url = `${process.env.AUTH_LAMBDA_URL}`;
27
- const operation = "postSignUpBackofficeBulk";
28
- return await this.httpRequest.post(url, input, { 'operationName': operation });
29
- }
1
+ import { IHttpRequest } from "@fiado/http-client";
2
+ import { SignUpAdditionalRequest, SignUpUserBackofficeRequest } from "@fiado/type-kit/bin/authentication";
3
+ import { inject, injectable } from "inversify";
4
+ import { IAuthenticationApi } from "./interfaces/IAuthenticationApi";
5
+
6
+ @injectable()
7
+ export class AuthenticationApi implements IAuthenticationApi {
8
+
9
+ constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) { }
10
+
11
+ async signUpAdditionalCard(createAdditionalCard: SignUpAdditionalRequest): Promise<any> {
12
+ const url = `${process.env.AUTH_LAMBDA_URL}`;
13
+ const operation = "postSignUpAdditionalCard";
14
+
15
+ return await this.httpRequest.post(url, createAdditionalCard, { 'operationName': operation });
16
+ }
17
+
18
+ async deleteAuthSessionByDirectoryId (directoryId: string): Promise<any> {
19
+ const url = `${process.env.AUTH_LAMBDA_URL}`;
20
+ const operation = "deleteAuthSessionByDirectoryId";
21
+
22
+ return await this.httpRequest.post(url, {directoryId}, { 'operationName': operation });
23
+ }
24
+
25
+ async signUpBackofficeBulk(input: SignUpUserBackofficeRequest[]): Promise<any> {
26
+ const url = `${process.env.AUTH_LAMBDA_URL}`;
27
+ const operation = "postSignUpBackofficeBulk";
28
+ return await this.httpRequest.post(url, input, { 'operationName': operation });
29
+ }
30
30
  }
@@ -1,5 +1,5 @@
1
-
2
-
3
-
4
- export * from './interfaces/IAuthenticationApi';
1
+
2
+
3
+
4
+ export * from './interfaces/IAuthenticationApi';
5
5
  export * from './AuthenticationApi';
@@ -1,9 +1,9 @@
1
- import { DirectoryBatchSummaryResponse, SignUpAdditionalRequest, SignUpUserBackofficeRequest } from "@fiado/type-kit/bin/authentication";
2
-
3
- export interface IAuthenticationApi {
4
-
5
- signUpAdditionalCard(createAdditionalCard: SignUpAdditionalRequest): Promise<any>;
6
- deleteAuthSessionByDirectoryId(directoryId: string): Promise<any>;
7
-
8
- signUpBackofficeBulk(input: SignUpUserBackofficeRequest[]): Promise<DirectoryBatchSummaryResponse>;
1
+ import { DirectoryBatchSummaryResponse, SignUpAdditionalRequest, SignUpUserBackofficeRequest } from "@fiado/type-kit/bin/authentication";
2
+
3
+ export interface IAuthenticationApi {
4
+
5
+ signUpAdditionalCard(createAdditionalCard: SignUpAdditionalRequest): Promise<any>;
6
+ deleteAuthSessionByDirectoryId(directoryId: string): Promise<any>;
7
+
8
+ signUpBackofficeBulk(input: SignUpUserBackofficeRequest[]): Promise<DirectoryBatchSummaryResponse>;
9
9
  }
@@ -1,35 +1,35 @@
1
- import { ApiResponse } from "@fiado/gateway-adapter";
2
- import { IHttpRequest } from "@fiado/http-client";
3
- import { inject, injectable } from "inversify";
4
- import { IBankAccountApi } from "./interfaces/IBankAccountApi";
5
- import GetExternalBankAccountResponse from "@fiado/type-kit/bin/bankAccount/dtos/GetExternalBankAccountResponse";
6
- import FiadoApiResponse from "@fiado/type-kit/bin/apiResponse/dtos/FiadoApiResponse";
7
- import { GetExternalBankResponse } from "@fiado/type-kit/bin/bankAccount";
8
-
9
-
10
- @injectable()
11
- export default class BankAccountApi implements IBankAccountApi {
12
- private readonly baseUrl = process.env.BANK_ACCOUNT_LAMBDA_UR || "";
13
-
14
- constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) {
15
- }
16
-
17
- async getBankAccountById(bankAccountId: string): Promise<FiadoApiResponse<GetExternalBankAccountResponse>> {
18
- const url = `${this.baseUrl}/accounts/${bankAccountId}`;
19
- return await this.httpRequest.get(url);
20
- }
21
-
22
- async getBankById(bankId: string): Promise<FiadoApiResponse<GetExternalBankResponse>> {
23
- const url = `${this.baseUrl}/banks/${bankId}`;
24
- return await this.httpRequest.get(url);
25
- }
26
-
27
- async getBankByCode(bankCode?: string, shortBankCode?: string): Promise<FiadoApiResponse<GetExternalBankResponse[]>> {
28
- const url = `${this.baseUrl}/banks`;
29
- const params = {
30
- ...bankCode && { bankCode: bankCode },
31
- ...shortBankCode && { shortBankCode: shortBankCode },
32
- };
33
- return await this.httpRequest.get(url, { params });
34
- }
1
+ import { ApiResponse } from "@fiado/gateway-adapter";
2
+ import { IHttpRequest } from "@fiado/http-client";
3
+ import { inject, injectable } from "inversify";
4
+ import { IBankAccountApi } from "./interfaces/IBankAccountApi";
5
+ import GetExternalBankAccountResponse from "@fiado/type-kit/bin/bankAccount/dtos/GetExternalBankAccountResponse";
6
+ import FiadoApiResponse from "@fiado/type-kit/bin/apiResponse/dtos/FiadoApiResponse";
7
+ import { GetExternalBankResponse } from "@fiado/type-kit/bin/bankAccount";
8
+
9
+
10
+ @injectable()
11
+ export default class BankAccountApi implements IBankAccountApi {
12
+ private readonly baseUrl = process.env.BANK_ACCOUNT_LAMBDA_UR || "";
13
+
14
+ constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) {
15
+ }
16
+
17
+ async getBankAccountById(bankAccountId: string): Promise<FiadoApiResponse<GetExternalBankAccountResponse>> {
18
+ const url = `${this.baseUrl}/accounts/${bankAccountId}`;
19
+ return await this.httpRequest.get(url);
20
+ }
21
+
22
+ async getBankById(bankId: string): Promise<FiadoApiResponse<GetExternalBankResponse>> {
23
+ const url = `${this.baseUrl}/banks/${bankId}`;
24
+ return await this.httpRequest.get(url);
25
+ }
26
+
27
+ async getBankByCode(bankCode?: string, shortBankCode?: string): Promise<FiadoApiResponse<GetExternalBankResponse[]>> {
28
+ const url = `${this.baseUrl}/banks`;
29
+ const params = {
30
+ ...bankCode && { bankCode: bankCode },
31
+ ...shortBankCode && { shortBankCode: shortBankCode },
32
+ };
33
+ return await this.httpRequest.get(url, { params });
34
+ }
35
35
  }
@@ -1,2 +1,2 @@
1
- export * from './interfaces/IBankAccountApi';
1
+ export * from './interfaces/IBankAccountApi';
2
2
  export * from './BankAccountApi';
@@ -1,7 +1,7 @@
1
- export interface IBankAccountApi {
2
- getBankAccountById(bankAccountId: string): Promise<any>;
3
-
4
- getBankById(bankId: string): Promise<any>;
5
-
6
- getBankByCode(bankCode?: string, shortBankCode?: string): Promise<any>;
1
+ export interface IBankAccountApi {
2
+ getBankAccountById(bankAccountId: string): Promise<any>;
3
+
4
+ getBankById(bankId: string): Promise<any>;
5
+
6
+ getBankByCode(bankCode?: string, shortBankCode?: string): Promise<any>;
7
7
  }