@fiado/api-invoker 4.3.0 → 4.5.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 (298) hide show
  1. package/.claude/settings.json +33 -33
  2. package/README.md +600 -600
  3. package/bin/cognitoBackofficeConnector/api/CognitoBackofficeConnectorApi.d.ts +5 -5
  4. package/bin/cognitoBackofficeConnector/api/CognitoBackofficeConnectorApi.js +8 -8
  5. package/bin/cognitoBackofficeConnector/api/interfaces/ICognitoBackofficeConnectorApi.d.ts +19 -9
  6. package/bin/multicommServicePayment/api/MulticommServicePaymentApi.d.ts +1 -0
  7. package/bin/multicommServicePayment/api/MulticommServicePaymentApi.js +4 -0
  8. package/bin/multicommServicePayment/api/interfaces/IMulticommServicePaymentApi.d.ts +1 -0
  9. package/bin/stpServicePayment/api/StpServicePaymentApi.d.ts +1 -0
  10. package/bin/stpServicePayment/api/StpServicePaymentApi.js +4 -0
  11. package/bin/stpServicePayment/api/interfaces/IStpServicePaymentApi.d.ts +1 -0
  12. package/package.json +36 -36
  13. package/src/account-beneficiary/AccountBeneficiaryApi.ts +18 -18
  14. package/src/account-beneficiary/index.ts +2 -2
  15. package/src/account-beneficiary/interfaces/IAccountBeneficiaryApi.ts +7 -7
  16. package/src/account-fiadoinc/AccountFiadoIncApi.ts +126 -126
  17. package/src/account-fiadoinc/index.ts +4 -4
  18. package/src/account-fiadoinc/interfaces/IAccountFiadoIncApi.ts +50 -50
  19. package/src/account-fiadoinc/queue/Publisher.ts +23 -23
  20. package/src/account-fiadoinc/queue/interfaces/IPublisher.ts +4 -4
  21. package/src/account-fiadosa/AccountFiadoSAApi.ts +38 -38
  22. package/src/account-fiadosa/index.ts +1 -1
  23. package/src/account-fiadosa/interfaces/IAccountFiadoSAApi.ts +16 -16
  24. package/src/account-pagoconfiado/AccountPagoConfiadoApi.ts +78 -78
  25. package/src/account-pagoconfiado/index.ts +2 -2
  26. package/src/account-pagoconfiado/interfaces/IAccountPagoConfiadoApi.ts +37 -37
  27. package/src/activity-business/ActivityApi.ts +36 -36
  28. package/src/activity-business/index.ts +5 -5
  29. package/src/activity-business/interfaces/IActivityApi.ts +13 -13
  30. package/src/activity-business/queue/ActivityPublisher.ts +30 -30
  31. package/src/activity-business/queue/IActivityPublisher.ts +4 -4
  32. package/src/address/AddressApi.ts +46 -46
  33. package/src/address/index.ts +3 -3
  34. package/src/address/interfaces/IAddressApi.ts +30 -30
  35. package/src/ai-engine-connector/AiEngineApi.ts +28 -28
  36. package/src/ai-engine-connector/index.ts +2 -2
  37. package/src/ai-engine-connector/interfaces/IAiEngineApi.ts +6 -6
  38. package/src/appselectondata/AppSelectionDataApi.ts +32 -32
  39. package/src/appselectondata/index.ts +2 -2
  40. package/src/appselectondata/interfaces/IAppSelectionDataApi.ts +17 -17
  41. package/src/authentication/AuthenticationApi.ts +29 -29
  42. package/src/authentication/index.ts +4 -4
  43. package/src/authentication/interfaces/IAuthenticationApi.ts +8 -8
  44. package/src/bankAccount/BankAccountApi.ts +34 -34
  45. package/src/bankAccount/index.ts +1 -1
  46. package/src/bankAccount/interfaces/IBankAccountApi.ts +6 -6
  47. package/src/bbvaRst/api/BBVARstApi.ts +16 -16
  48. package/src/bbvaRst/api/interfaces/IBBVARstApi.ts +4 -4
  49. package/src/bbvaRst/index.ts +1 -1
  50. package/src/benefits-marketplace/api/BenefitsMarketplaceApi.ts +35 -35
  51. package/src/benefits-marketplace/api/dtos/BenefitLeafDisplayResponse.ts +21 -21
  52. package/src/benefits-marketplace/api/interfaces/IBenefitsMarketplaceApi.ts +62 -62
  53. package/src/benefits-marketplace/index.ts +3 -3
  54. package/src/blacklist/BlackListApi.ts +19 -19
  55. package/src/blacklist/index.ts +2 -2
  56. package/src/blacklist/interfaces/IBlackListApi.ts +20 -20
  57. package/src/card/CardApi.ts +103 -103
  58. package/src/card/index.ts +3 -3
  59. package/src/card/interfaces/ICardApi.ts +32 -32
  60. package/src/card-business/index.ts +2 -2
  61. package/src/card-business/queue/CardBusinessPublisher.ts +23 -23
  62. package/src/card-business/queue/ICardBusinessPublisher.ts +10 -10
  63. package/src/centralPayments/CentralPaymentsConnectorApi.ts +317 -317
  64. package/src/centralPayments/index.ts +1 -1
  65. package/src/centralPayments/interfaces/ICentralPaymentsConnectorApi.ts +153 -153
  66. package/src/circuloCredito/api/CirculoCreditoApi.ts +21 -21
  67. package/src/circuloCredito/api/interfaces/ICirculoCreditoApi.ts +7 -7
  68. package/src/circuloCredito/index.ts +2 -2
  69. package/src/cnbv-business/CnbvApi.ts +31 -31
  70. package/src/cnbv-business/index.ts +4 -4
  71. package/src/cnbv-business/interfaces/ICnbvApi.ts +19 -19
  72. package/src/cnbv-connector/CnbvConnectorApi.ts +18 -18
  73. package/src/cnbv-connector/index.ts +1 -1
  74. package/src/cnbv-connector/interfaces/ICnbvConnectorApi.ts +6 -6
  75. package/src/cognitoBackofficeConnector/api/CognitoBackofficeConnectorApi.ts +254 -251
  76. package/src/cognitoBackofficeConnector/api/interfaces/ICognitoBackofficeConnectorApi.ts +181 -170
  77. package/src/cognitoBackofficeConnector/index.ts +2 -2
  78. package/src/cognitoConnector/CognitoConnectorApi.ts +110 -110
  79. package/src/cognitoConnector/CognitoConnectorV2.ts +87 -87
  80. package/src/cognitoConnector/index.ts +11 -11
  81. package/src/cognitoConnector/interfaces/ICognitoConnectorApi.ts +16 -16
  82. package/src/cognitoConnector/interfaces/ICognitoV2Api.ts +63 -63
  83. package/src/collector/CollectorApi.ts +97 -97
  84. package/src/collector/index.ts +2 -2
  85. package/src/collector/interfaces/ICollectorApi.ts +47 -47
  86. package/src/commission-business/CommissionBusinessApi.ts +19 -19
  87. package/src/commission-business/index.ts +3 -3
  88. package/src/commission-business/interfaces/ICommissionBusinessApi.ts +15 -15
  89. package/src/contactInformation/ContactInformationApi.ts +20 -20
  90. package/src/contactInformation/index.ts +2 -2
  91. package/src/contactInformation/interface/IContactInformationApi.ts +8 -8
  92. package/src/container.config.ts +276 -276
  93. package/src/contract-business/api/ContractBusinessApi.ts +37 -37
  94. package/src/contract-business/api/interfaces/IContractBusinessApi.ts +32 -32
  95. package/src/contract-business/index.ts +2 -2
  96. package/src/contract-generator/ContractGeneratorApi.ts +18 -18
  97. package/src/contract-generator/index.ts +2 -2
  98. package/src/contract-generator/interfaces/IContractGeneratorApi.ts +16 -16
  99. package/src/countries-business/CountriesBusinessApi.ts +26 -26
  100. package/src/countries-business/index.ts +2 -2
  101. package/src/countries-business/interfaces/ICountriesBusinessApi.ts +22 -22
  102. package/src/credit-engine/CreditEngineApi.ts +54 -54
  103. package/src/credit-engine/index.ts +17 -17
  104. package/src/credit-engine/interfaces/ICreditEngineApi.ts +46 -46
  105. package/src/credit-engine/queue/CreditCollectionPublisher.ts +24 -24
  106. package/src/credit-engine/queue/CreditDelinquencyPublisher.ts +24 -24
  107. package/src/credit-engine/queue/CreditIncomeDetectionPublisher.ts +24 -24
  108. package/src/credit-engine/queue/CreditLienCollectionPublisher.ts +24 -24
  109. package/src/credit-engine/queue/CreditNotificationPublisher.ts +24 -24
  110. package/src/credit-engine/queue/CreditOfferGenerationPublisher.ts +24 -24
  111. package/src/credit-engine/queue/CreditReconciliationPublisher.ts +24 -24
  112. package/src/credit-engine/queue/CreditScoringPublisher.ts +24 -24
  113. package/src/credit-engine/queue/CreditStatementPublisher.ts +24 -24
  114. package/src/credit-engine/queue/CreditTransferPublisher.ts +24 -24
  115. package/src/credit-engine/queue/interfaces/ICreditCollectionPublisher.ts +5 -5
  116. package/src/credit-engine/queue/interfaces/ICreditDelinquencyPublisher.ts +5 -5
  117. package/src/credit-engine/queue/interfaces/ICreditIncomeDetectionPublisher.ts +5 -5
  118. package/src/credit-engine/queue/interfaces/ICreditLienCollectionPublisher.ts +5 -5
  119. package/src/credit-engine/queue/interfaces/ICreditNotificationPublisher.ts +5 -5
  120. package/src/credit-engine/queue/interfaces/ICreditOfferGenerationPublisher.ts +5 -5
  121. package/src/credit-engine/queue/interfaces/ICreditReconciliationPublisher.ts +5 -5
  122. package/src/credit-engine/queue/interfaces/ICreditScoringPublisher.ts +5 -5
  123. package/src/credit-engine/queue/interfaces/ICreditStatementPublisher.ts +5 -5
  124. package/src/credit-engine/queue/interfaces/ICreditTransferPublisher.ts +5 -5
  125. package/src/credit-payment/CreditPaymentApi.ts +73 -73
  126. package/src/credit-payment/index.ts +2 -2
  127. package/src/credit-payment/interfaces/ICreditPaymentApi.ts +52 -52
  128. package/src/credit-statements/api/CreditStatementsApi.ts +25 -25
  129. package/src/credit-statements/api/interfaces/ICreditStatementsApi.ts +30 -30
  130. package/src/credit-statements/index.ts +2 -2
  131. package/src/device/DeviceApi.ts +32 -32
  132. package/src/device/index.ts +2 -2
  133. package/src/device/interfaces/IDeviceApi.ts +41 -41
  134. package/src/directories/DirectoriesApi.ts +63 -63
  135. package/src/directories/index.ts +3 -3
  136. package/src/directories/interfaces/IDirectoriesApi.ts +17 -17
  137. package/src/directory/DirectoryApi.ts +196 -196
  138. package/src/directory/index.ts +3 -3
  139. package/src/directory/interfaces/IDirectoryApi.ts +73 -73
  140. package/src/directorySetting/DirectorySettingApi.ts +42 -42
  141. package/src/directorySetting/index.ts +3 -3
  142. package/src/directorySetting/interfaces/IDirectorySettingApi.ts +56 -56
  143. package/src/disputes/DisputesApi.ts +50 -50
  144. package/src/disputes/index.ts +2 -2
  145. package/src/disputes/interfaces/IDisputesApi.ts +54 -54
  146. package/src/document-generator/DocumentGeneratorApi.ts +51 -51
  147. package/src/document-generator/index.ts +2 -2
  148. package/src/document-generator/interfaces/IDocumentGeneratorApi.ts +34 -34
  149. package/src/document-image-processor/DocumentImageProcessorApi.ts +22 -22
  150. package/src/document-image-processor/index.ts +1 -1
  151. package/src/document-image-processor/interfaces/IDocumentImageProcessorApi.ts +7 -7
  152. package/src/estafeta/api/EstafetaApi.ts +67 -67
  153. package/src/estafeta/api/interfaces/IEstafetaApi.ts +28 -28
  154. package/src/estafeta/index.ts +1 -1
  155. package/src/event-history-business/EventHistoryApi.ts +108 -108
  156. package/src/event-history-business/index.ts +3 -3
  157. package/src/event-history-business/interfaces/IEventHistoryApi.ts +47 -47
  158. package/src/exchangeRates/ExchangeRatesApi.ts +27 -27
  159. package/src/exchangeRates/index.ts +1 -1
  160. package/src/exchangeRates/interfaces/IExchangeRatesApi.ts +8 -8
  161. package/src/fiadoMessages/api/FiadoMessagesApi.ts +20 -20
  162. package/src/fiadoMessages/api/interfaces/IFiadoMessagesApi.ts +2 -2
  163. package/src/fiadoMessages/index.ts +1 -1
  164. package/src/firebase-connector/FirebaseConnectorApi.ts +53 -53
  165. package/src/firebase-connector/index.ts +3 -3
  166. package/src/firebase-connector/interfaces/IFirebaseConnectorApi.ts +6 -6
  167. package/src/fraudPreventionEngine/api/FraudPreventionEngineApi.ts +22 -22
  168. package/src/fraudPreventionEngine/api/interfaces/IFraudPreventionEngineApi.ts +7 -7
  169. package/src/fraudPreventionEngine/index.ts +1 -1
  170. package/src/group/GroupApi.ts +69 -69
  171. package/src/group/index.ts +1 -1
  172. package/src/group/interfaces/IGroupApi.ts +40 -40
  173. package/src/identity/IdentityApi.ts +95 -95
  174. package/src/identity/index.ts +3 -3
  175. package/src/identity/interfaces/IIdentityApi.ts +46 -46
  176. package/src/index.ts +76 -76
  177. package/src/legalDocument/api/LegalDocumentApi.ts +38 -38
  178. package/src/legalDocument/api/interfaces/ILegalDocumentApi.ts +7 -7
  179. package/src/legalDocument/index.ts +3 -3
  180. package/src/milestone-business/api/MilestoneBusinessApi.ts +26 -26
  181. package/src/milestone-business/api/interfaces/IMilestoneBusinessApi.ts +9 -9
  182. package/src/milestone-business/index.ts +2 -2
  183. package/src/multicommServicePayment/api/MulticommServicePaymentApi.ts +94 -89
  184. package/src/multicommServicePayment/api/interfaces/IMulticommServicePaymentApi.ts +44 -40
  185. package/src/multicommServicePayment/index.ts +1 -1
  186. package/src/notificationMessages/index.ts +1 -1
  187. package/src/notificationMessages/queue/NotificationMessagePublisher.ts +42 -42
  188. package/src/notificationMessages/queue/interfaces/INotificationMessagesPublisher.ts +7 -7
  189. package/src/notificationWebsockets/index.ts +1 -1
  190. package/src/notificationWebsockets/queue/NotificationWSMessagePublisher.ts +29 -29
  191. package/src/notificationWebsockets/queue/interfaces/INotificationWSMessagesPublisher.ts +4 -4
  192. package/src/observations/ObservationsApi.ts +23 -23
  193. package/src/observations/index.ts +3 -3
  194. package/src/observations/interfaces/IObservationsApi.ts +9 -9
  195. package/src/onboarding/api/OnboardingApi.ts +23 -23
  196. package/src/onboarding/api/interfaces/IOnboardingApi.ts +3 -3
  197. package/src/onboarding/index.ts +1 -1
  198. package/src/onboarding-business/api/OnboardingBusinessApi.ts +210 -210
  199. package/src/onboarding-business/api/interfaces/IOnboardingBusinessApi.ts +9 -9
  200. package/src/onboarding-business/index.ts +1 -1
  201. package/src/order-collector-business/OrderCollectorApi.ts +20 -20
  202. package/src/order-collector-business/index.ts +3 -3
  203. package/src/order-collector-business/interfaces/IOrderCollectorApi.ts +9 -9
  204. package/src/p2pContact/api/P2pContactApi.ts +19 -19
  205. package/src/p2pContact/api/interfaces/IP2pContactApi.ts +4 -4
  206. package/src/p2pContact/index.ts +1 -1
  207. package/src/payroll-business/PayrollApi.ts +19 -19
  208. package/src/payroll-business/index.ts +1 -1
  209. package/src/payroll-business/interfaces/IPayrollApi.ts +18 -18
  210. package/src/people-business/api/PeopleBusinessApi.ts +32 -32
  211. package/src/people-business/api/interfaces/IPeopleBusinessApi.ts +7 -7
  212. package/src/people-business/index.ts +1 -1
  213. package/src/platform-error-events/index.ts +2 -2
  214. package/src/platform-error-events/queue/PlatformErrorEventsPublisher.ts +24 -24
  215. package/src/platform-error-events/queue/interfaces/IPlatformErrorEventsPublisher.ts +5 -5
  216. package/src/pomelo/api/PomeloApi.ts +109 -109
  217. package/src/pomelo/api/interfaces/IPomeloApi.ts +29 -29
  218. package/src/pomelo/index.ts +1 -1
  219. package/src/pomeloProcessor/api/PomeloProcessorApi.ts +17 -17
  220. package/src/pomeloProcessor/api/interfaces/IPomeloProcessorApi.ts +2 -2
  221. package/src/pomeloProcessor/index.ts +2 -2
  222. package/src/pricelist-business/PriceListApi.ts +45 -45
  223. package/src/pricelist-business/index.ts +1 -1
  224. package/src/pricelist-business/interfaces/IPriceListApi.ts +16 -16
  225. package/src/product-catalog/ProductCatalogApi.ts +17 -17
  226. package/src/product-catalog/index.ts +1 -1
  227. package/src/product-catalog/interfaces/IProductCatalogApi.ts +6 -6
  228. package/src/product-payment/api/ProductPaymentApi.ts +25 -25
  229. package/src/product-payment/api/interfaces/IProductPaymentApi.ts +8 -8
  230. package/src/product-payment/index.ts +1 -1
  231. package/src/referral-business/ReferralBusinessApi.ts +37 -37
  232. package/src/referral-business/index.ts +1 -1
  233. package/src/referral-business/interfaces/IReferralBusinessApi.ts +38 -38
  234. package/src/report-processor-business/api/IReportProcessorBusinessApi.ts +4 -4
  235. package/src/report-processor-business/api/ReportProcessorBusinessApi.ts +17 -17
  236. package/src/report-processor-business/index.ts +5 -5
  237. package/src/riskProfile/api/RiskProfileApi.ts +63 -63
  238. package/src/riskProfile/api/TransactionAlertApi.ts +49 -49
  239. package/src/riskProfile/api/interfaces/IRiskProfileApi.ts +51 -51
  240. package/src/riskProfile/api/interfaces/ITransactionAlertApi.ts +70 -70
  241. package/src/riskProfile/index.ts +7 -7
  242. package/src/riskProfile/queue/TransactionAlarmPublisher.ts +25 -25
  243. package/src/riskProfile/queue/interfaces/ITransactionAlarmPublisher.ts +4 -4
  244. package/src/service-business/ServiceApi.ts +78 -78
  245. package/src/service-business/index.ts +2 -2
  246. package/src/service-business/interfaces/IServiceApi.ts +73 -73
  247. package/src/sessionActivity/index.ts +2 -2
  248. package/src/sessionActivity/queue/SessionActivityPublisher.ts +23 -23
  249. package/src/sessionActivity/queue/interfaces/ISessionActivityPublisher.ts +4 -4
  250. package/src/stp-business/api/STPBusinessApi.ts +32 -32
  251. package/src/stp-business/api/interfaces/ISTPBusinessApi.ts +15 -15
  252. package/src/stp-business/index.ts +1 -1
  253. package/src/stpAccount/api/STPAccountApi.ts +111 -111
  254. package/src/stpAccount/api/interfaces/ISTPAccountApi.ts +7 -7
  255. package/src/stpAccount/index.ts +1 -1
  256. package/src/stpServicePayment/api/StpServicePaymentApi.ts +94 -89
  257. package/src/stpServicePayment/api/interfaces/IStpServicePaymentApi.ts +44 -40
  258. package/src/stpServicePayment/index.ts +1 -1
  259. package/src/stpSpei/api/StpSpeiApi.ts +32 -32
  260. package/src/stpSpei/api/interfaces/IStpSpeiApi.ts +6 -6
  261. package/src/stpSpei/index.ts +1 -1
  262. package/src/teams-connector/index.ts +2 -2
  263. package/src/teams-connector/queue/TeamsNotificationPublisher.ts +24 -24
  264. package/src/teams-connector/queue/interfaces/ITeamsNotificationPublisher.ts +5 -5
  265. package/src/tern/api/TernApi.ts +147 -147
  266. package/src/tern/api/interfaces/ITernApi.ts +54 -54
  267. package/src/tern/index.ts +1 -1
  268. package/src/transaction/api/TransactionApi.ts +157 -157
  269. package/src/transaction/api/interfaces/ITransactionApi.ts +82 -82
  270. package/src/transaction/index.ts +5 -5
  271. package/src/transaction/queue/TransactionPublisher.ts +25 -25
  272. package/src/transaction/queue/interfaces/ITransactionPublisher.ts +4 -4
  273. package/src/transactionProcessor/api/TransactionProcessorApi.ts +57 -57
  274. package/src/transactionProcessor/api/interfaces/ITransactionProcessorApi.ts +28 -28
  275. package/src/transactionProcessor/index.ts +1 -1
  276. package/src/uniteller-connector/api/UnitellerConnectorApi.ts +113 -113
  277. package/src/uniteller-connector/api/interfaces/IUnitellerConnectorApi.ts +85 -85
  278. package/src/uniteller-connector/index.ts +2 -2
  279. package/src/utils/InvokerUtils.ts +18 -18
  280. package/src/zendesk/ZendeskApi.ts +24 -24
  281. package/src/zendesk/index.ts +3 -3
  282. package/src/zendesk/interfaces/IZendeskApi.ts +10 -10
  283. package/bin/messages-connector/api/MessagesConnectorApi.d.ts +0 -17
  284. package/bin/messages-connector/api/MessagesConnectorApi.js +0 -50
  285. package/bin/messages-connector/api/interfaces/IMessagesConnectorApi.d.ts +0 -12
  286. package/bin/messages-connector/api/interfaces/IMessagesConnectorApi.js +0 -1
  287. package/bin/messages-connector/index.d.ts +0 -4
  288. package/bin/messages-connector/index.js +0 -4
  289. package/bin/messages-connector/queue/MessagesConnectorPublisher.d.ts +0 -7
  290. package/bin/messages-connector/queue/MessagesConnectorPublisher.js +0 -23
  291. package/bin/messages-connector/queue/interfaces/IMessagesConnectorPublisher.d.ts +0 -4
  292. package/bin/messages-connector/queue/interfaces/IMessagesConnectorPublisher.js +0 -1
  293. package/bin/sns-ses-connector/api/SnsSesConnectorApi.d.ts +0 -10
  294. package/bin/sns-ses-connector/api/SnsSesConnectorApi.js +0 -30
  295. package/bin/sns-ses-connector/api/interfaces/ISnsSesConnectorApi.d.ts +0 -5
  296. package/bin/sns-ses-connector/api/interfaces/ISnsSesConnectorApi.js +0 -1
  297. package/bin/sns-ses-connector/index.d.ts +0 -2
  298. package/bin/sns-ses-connector/index.js +0 -2
@@ -1,37 +1,37 @@
1
- import { inject, injectable } from "inversify";
2
- import { IHttpRequest } from "@fiado/http-client";
3
- import { IContractBusinessApi } from "./interfaces/IContractBusinessApi";
4
-
5
- @injectable()
6
- export default class ContractBusinessApi implements IContractBusinessApi {
7
-
8
- private readonly baseUrl = process.env.CONTRACT_BUSINESS_LAMBDA_URL || "";
9
-
10
- constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) {
11
- }
12
-
13
- async signDocument(params: {
14
- documentType: string;
15
- directoryId: string;
16
- peopleId: string;
17
- folio: string;
18
- sessionId: string;
19
- metadata?: Record<string, unknown>;
20
- partnerId?: string;
21
- category?: string;
22
- skipTsa?: boolean;
23
- }): Promise<any> {
24
- const { documentType, ...body } = params;
25
- return await this.httpRequest.post(`${this.baseUrl}/sign/${documentType}`, body);
26
- }
27
-
28
- async listSignedByDirectory(directoryId: string, enterprise: string = "FIADOSA"): Promise<any> {
29
- const url = `${this.baseUrl}/directories/${directoryId}/signed-documents?enterprise=${encodeURIComponent(enterprise)}`;
30
- return await this.httpRequest.get(url);
31
- }
32
-
33
- async getContractPdfUrl(contractId: string, partnerId: string, category: string = "CREDITS"): Promise<any> {
34
- const url = `${this.baseUrl}/contracts/${contractId}/pdf?partnerId=${encodeURIComponent(partnerId)}&category=${encodeURIComponent(category)}`;
35
- return await this.httpRequest.get(url);
36
- }
37
- }
1
+ import { inject, injectable } from "inversify";
2
+ import { IHttpRequest } from "@fiado/http-client";
3
+ import { IContractBusinessApi } from "./interfaces/IContractBusinessApi";
4
+
5
+ @injectable()
6
+ export default class ContractBusinessApi implements IContractBusinessApi {
7
+
8
+ private readonly baseUrl = process.env.CONTRACT_BUSINESS_LAMBDA_URL || "";
9
+
10
+ constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) {
11
+ }
12
+
13
+ async signDocument(params: {
14
+ documentType: string;
15
+ directoryId: string;
16
+ peopleId: string;
17
+ folio: string;
18
+ sessionId: string;
19
+ metadata?: Record<string, unknown>;
20
+ partnerId?: string;
21
+ category?: string;
22
+ skipTsa?: boolean;
23
+ }): Promise<any> {
24
+ const { documentType, ...body } = params;
25
+ return await this.httpRequest.post(`${this.baseUrl}/sign/${documentType}`, body);
26
+ }
27
+
28
+ async listSignedByDirectory(directoryId: string, enterprise: string = "FIADOSA"): Promise<any> {
29
+ const url = `${this.baseUrl}/directories/${directoryId}/signed-documents?enterprise=${encodeURIComponent(enterprise)}`;
30
+ return await this.httpRequest.get(url);
31
+ }
32
+
33
+ async getContractPdfUrl(contractId: string, partnerId: string, category: string = "CREDITS"): Promise<any> {
34
+ const url = `${this.baseUrl}/contracts/${contractId}/pdf?partnerId=${encodeURIComponent(partnerId)}&category=${encodeURIComponent(category)}`;
35
+ return await this.httpRequest.get(url);
36
+ }
37
+ }
@@ -1,32 +1,32 @@
1
- export interface IContractBusinessApi {
2
- signDocument(params: {
3
- documentType: string;
4
- directoryId: string;
5
- peopleId: string;
6
- folio: string;
7
- sessionId: string;
8
- metadata?: Record<string, unknown>;
9
- /** Opcional: partnerId para resolver el template con path profundo en S3 */
10
- partnerId?: string;
11
- /** Opcional: category (ej: "credito") para el path profundo de template */
12
- category?: string;
13
- /**
14
- * Opcional. Si `true`, contract-business genera el PDF y lo guarda en S3
15
- * pero NO aplica la firma digital TSA del banco. El ContractControl row
16
- * queda con status `"PREVIEW"`. Sirve para mostrarle al cliente el
17
- * documento antes de aceptar (no vinculante). Default: false.
18
- */
19
- skipTsa?: boolean;
20
- }): Promise<any>;
21
-
22
- /**
23
- * Lista todos los contratos firmados del directorio (no solo el último por tipo).
24
- * Backoffice consume este endpoint para mostrar el historial.
25
- */
26
- listSignedByDirectory(directoryId: string, enterprise?: string): Promise<any>;
27
-
28
- /**
29
- * Obtiene una URL pre-firmada (15 min) para visualizar inline el PDF firmado.
30
- */
31
- getContractPdfUrl(contractId: string, partnerId: string, category?: string): Promise<any>;
32
- }
1
+ export interface IContractBusinessApi {
2
+ signDocument(params: {
3
+ documentType: string;
4
+ directoryId: string;
5
+ peopleId: string;
6
+ folio: string;
7
+ sessionId: string;
8
+ metadata?: Record<string, unknown>;
9
+ /** Opcional: partnerId para resolver el template con path profundo en S3 */
10
+ partnerId?: string;
11
+ /** Opcional: category (ej: "credito") para el path profundo de template */
12
+ category?: string;
13
+ /**
14
+ * Opcional. Si `true`, contract-business genera el PDF y lo guarda en S3
15
+ * pero NO aplica la firma digital TSA del banco. El ContractControl row
16
+ * queda con status `"PREVIEW"`. Sirve para mostrarle al cliente el
17
+ * documento antes de aceptar (no vinculante). Default: false.
18
+ */
19
+ skipTsa?: boolean;
20
+ }): Promise<any>;
21
+
22
+ /**
23
+ * Lista todos los contratos firmados del directorio (no solo el último por tipo).
24
+ * Backoffice consume este endpoint para mostrar el historial.
25
+ */
26
+ listSignedByDirectory(directoryId: string, enterprise?: string): Promise<any>;
27
+
28
+ /**
29
+ * Obtiene una URL pre-firmada (15 min) para visualizar inline el PDF firmado.
30
+ */
31
+ getContractPdfUrl(contractId: string, partnerId: string, category?: string): Promise<any>;
32
+ }
@@ -1,2 +1,2 @@
1
- export * from './api/ContractBusinessApi';
2
- export * from './api/interfaces/IContractBusinessApi';
1
+ export * from './api/ContractBusinessApi';
2
+ export * from './api/interfaces/IContractBusinessApi';
@@ -1,19 +1,19 @@
1
- import { inject, injectable } from "inversify";
2
- import { IContractGeneratorApi } from "./interfaces/IContractGeneratorApi";
3
- import { IHttpRequest } from "@fiado/http-client";
4
- import dotenv from 'dotenv';
5
- import { ContractCreateRequest } from "@fiado/type-kit/bin/contract";
6
- dotenv.config();
7
-
8
- @injectable()
9
- export class ContractGeneratorApi implements IContractGeneratorApi {
10
-
11
- private readonly baseUrl = process.env.CONTRACT_GENERATOR_URL || "";
12
-
13
- constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) { }
14
-
15
- async generate(params: ContractCreateRequest): Promise<any> {
16
- const url = `${this.baseUrl}`;
17
- return await this.httpRequest.post(`${url}`,params, { 'spring.cloud.function.definition': "generateReport" });
18
- }
1
+ import { inject, injectable } from "inversify";
2
+ import { IContractGeneratorApi } from "./interfaces/IContractGeneratorApi";
3
+ import { IHttpRequest } from "@fiado/http-client";
4
+ import dotenv from 'dotenv';
5
+ import { ContractCreateRequest } from "@fiado/type-kit/bin/contract";
6
+ dotenv.config();
7
+
8
+ @injectable()
9
+ export class ContractGeneratorApi implements IContractGeneratorApi {
10
+
11
+ private readonly baseUrl = process.env.CONTRACT_GENERATOR_URL || "";
12
+
13
+ constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) { }
14
+
15
+ async generate(params: ContractCreateRequest): Promise<any> {
16
+ const url = `${this.baseUrl}`;
17
+ return await this.httpRequest.post(`${url}`,params, { 'spring.cloud.function.definition': "generateReport" });
18
+ }
19
19
  }
@@ -1,3 +1,3 @@
1
-
2
- export * from './interfaces/IContractGeneratorApi';
1
+
2
+ export * from './interfaces/IContractGeneratorApi';
3
3
  export * from './ContractGeneratorApi';
@@ -1,16 +1,16 @@
1
- import { ContractCreateRequest } from "@fiado/type-kit/bin/contract";
2
-
3
- /**
4
- * Interfaz para el servicio Contract Generator.
5
- */
6
- export interface IContractGeneratorApi {
7
- /**
8
- * Obtiene una lista de people por sus IDs.
9
- * @param ids Array de IDs de peopleId (UUIDs) a buscar.
10
- * @returns Una promesa que resuelve a un arreglo de objetos de people.
11
- * Puede devolver un arreglo vacío si no se encuentran coincidencias.
12
- * @throws {Error} Lanza un error si los parámetros de entrada son inválidos.
13
- */
14
- generate(params:ContractCreateRequest): Promise<any>;
15
-
16
- }
1
+ import { ContractCreateRequest } from "@fiado/type-kit/bin/contract";
2
+
3
+ /**
4
+ * Interfaz para el servicio Contract Generator.
5
+ */
6
+ export interface IContractGeneratorApi {
7
+ /**
8
+ * Obtiene una lista de people por sus IDs.
9
+ * @param ids Array de IDs de peopleId (UUIDs) a buscar.
10
+ * @returns Una promesa que resuelve a un arreglo de objetos de people.
11
+ * Puede devolver un arreglo vacío si no se encuentran coincidencias.
12
+ * @throws {Error} Lanza un error si los parámetros de entrada son inválidos.
13
+ */
14
+ generate(params:ContractCreateRequest): Promise<any>;
15
+
16
+ }
@@ -1,26 +1,26 @@
1
- import { CountriesGetListRequest, ICountriesBusinessApi } from "./interfaces/ICountriesBusinessApi";
2
- import { inject, injectable } from "inversify";
3
- import { IHttpRequest } from "@fiado/http-client";
4
-
5
- @injectable()
6
- export default class CountriesBusinessApi implements ICountriesBusinessApi {
7
- private readonly baseUrl = process.env.COUNTRIES_BUSINESS_LAMBDA_URL || "";
8
-
9
- constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) {
10
- }
11
-
12
- async getAll(): Promise<any> {
13
- const url = `${this.baseUrl}all`;
14
- return await this.httpRequest.get(url);
15
- }
16
-
17
- async getList(params: CountriesGetListRequest): Promise<any> {
18
- const queryParams = Object.entries(params)
19
- .filter(([, value]) => value !== undefined && value !== null)
20
- .map(([key, value]) => `${key}=${encodeURIComponent(String(value))}`)
21
- .join('&');
22
-
23
- const url = queryParams ? `${this.baseUrl}?${queryParams}` : this.baseUrl;
24
- return await this.httpRequest.get(url);
25
- }
26
- }
1
+ import { CountriesGetListRequest, ICountriesBusinessApi } from "./interfaces/ICountriesBusinessApi";
2
+ import { inject, injectable } from "inversify";
3
+ import { IHttpRequest } from "@fiado/http-client";
4
+
5
+ @injectable()
6
+ export default class CountriesBusinessApi implements ICountriesBusinessApi {
7
+ private readonly baseUrl = process.env.COUNTRIES_BUSINESS_LAMBDA_URL || "";
8
+
9
+ constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) {
10
+ }
11
+
12
+ async getAll(): Promise<any> {
13
+ const url = `${this.baseUrl}all`;
14
+ return await this.httpRequest.get(url);
15
+ }
16
+
17
+ async getList(params: CountriesGetListRequest): Promise<any> {
18
+ const queryParams = Object.entries(params)
19
+ .filter(([, value]) => value !== undefined && value !== null)
20
+ .map(([key, value]) => `${key}=${encodeURIComponent(String(value))}`)
21
+ .join('&');
22
+
23
+ const url = queryParams ? `${this.baseUrl}?${queryParams}` : this.baseUrl;
24
+ return await this.httpRequest.get(url);
25
+ }
26
+ }
@@ -1,2 +1,2 @@
1
- export * from './interfaces/ICountriesBusinessApi';
2
- export * from './CountriesBusinessApi';
1
+ export * from './interfaces/ICountriesBusinessApi';
2
+ export * from './CountriesBusinessApi';
@@ -1,22 +1,22 @@
1
- export interface CountriesGetListRequest {
2
- index?: string;
3
- pageSize?: number;
4
- filter1?: boolean;
5
- filter2?: boolean;
6
- filter3?: boolean;
7
- filter4?: boolean;
8
- filter5?: boolean;
9
- filter6?: boolean;
10
- filter7?: boolean;
11
- filter8?: boolean;
12
- filter9?: boolean;
13
- filter10?: boolean;
14
- isEnabled?: boolean;
15
- iso2?: string;
16
- iso3?: string;
17
- }
18
-
19
- export interface ICountriesBusinessApi {
20
- getAll(): Promise<any>;
21
- getList(params: CountriesGetListRequest): Promise<any>;
22
- }
1
+ export interface CountriesGetListRequest {
2
+ index?: string;
3
+ pageSize?: number;
4
+ filter1?: boolean;
5
+ filter2?: boolean;
6
+ filter3?: boolean;
7
+ filter4?: boolean;
8
+ filter5?: boolean;
9
+ filter6?: boolean;
10
+ filter7?: boolean;
11
+ filter8?: boolean;
12
+ filter9?: boolean;
13
+ filter10?: boolean;
14
+ isEnabled?: boolean;
15
+ iso2?: string;
16
+ iso3?: string;
17
+ }
18
+
19
+ export interface ICountriesBusinessApi {
20
+ getAll(): Promise<any>;
21
+ getList(params: CountriesGetListRequest): Promise<any>;
22
+ }
@@ -1,54 +1,54 @@
1
- import dotenv from 'dotenv';
2
- import { inject, injectable } from "inversify";
3
- import { IHttpRequest } from "@fiado/http-client";
4
- import { ICreditEngineApi } from "./interfaces/ICreditEngineApi";
5
- import { CreditProfileResponse } from "@fiado/type-kit/bin/credit/dtos/internal/CreditProfileResponse";
6
- import { CreditDetailResponse } from "@fiado/type-kit/bin/creditEngine";
7
- dotenv.config();
8
-
9
- /**
10
- * Cliente concreto para los endpoints privados del `credit-engine-business` Lambda.
11
- * Todos los endpoints son GET. Base URL viene de `CREDIT_ENGINE_LAMBDA_URL`.
12
- */
13
- @injectable()
14
- export class CreditEngineApi implements ICreditEngineApi {
15
-
16
- private readonly baseUrl = process.env.CREDIT_ENGINE_LAMBDA_URL || "";
17
-
18
- constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) {}
19
-
20
- public async healthcheck(): Promise<{ status: string; service: string }> {
21
- const url = `${this.baseUrl}healthcheck`;
22
- return await this.httpRequest.get(url, undefined, { operationName: "healthcheck" });
23
- }
24
-
25
- public async getCreditProfile(directoryId: string, partnerId: string): Promise<CreditProfileResponse> {
26
- const url = `${this.baseUrl}credit/profile/${directoryId}`;
27
- return await this.httpRequest.get(
28
- url,
29
- { partnerId },
30
- { operationName: "getCreditProfile" },
31
- );
32
- }
33
-
34
- public async getActiveCredit(directoryId: string): Promise<CreditDetailResponse | null> {
35
- const url = `${this.baseUrl}credit/active/${directoryId}`;
36
- return await this.httpRequest.get(
37
- url,
38
- undefined,
39
- { operationName: "getActiveCredit" },
40
- );
41
- }
42
-
43
- public async enrichDirectories(directoryIds: string[]): Promise<any> {
44
- const url = `${this.baseUrl}credit/private/enrich-directories`;
45
- const operationName = "privateEnrichDirectories";
46
- return await this.httpRequest.post(url, { directoryIds }, { 'operationName': operationName });
47
- }
48
-
49
- public async getCreditProgress(credits: Array<{ credit_id: string; term_weeks?: number }>): Promise<any> {
50
- const url = `${this.baseUrl}credit/private/credit-progress`;
51
- const operationName = "privateGetCreditProgress";
52
- return await this.httpRequest.post(url, { credits }, { 'operationName': operationName });
53
- }
54
- }
1
+ import dotenv from 'dotenv';
2
+ import { inject, injectable } from "inversify";
3
+ import { IHttpRequest } from "@fiado/http-client";
4
+ import { ICreditEngineApi } from "./interfaces/ICreditEngineApi";
5
+ import { CreditProfileResponse } from "@fiado/type-kit/bin/credit/dtos/internal/CreditProfileResponse";
6
+ import { CreditDetailResponse } from "@fiado/type-kit/bin/creditEngine";
7
+ dotenv.config();
8
+
9
+ /**
10
+ * Cliente concreto para los endpoints privados del `credit-engine-business` Lambda.
11
+ * Todos los endpoints son GET. Base URL viene de `CREDIT_ENGINE_LAMBDA_URL`.
12
+ */
13
+ @injectable()
14
+ export class CreditEngineApi implements ICreditEngineApi {
15
+
16
+ private readonly baseUrl = process.env.CREDIT_ENGINE_LAMBDA_URL || "";
17
+
18
+ constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) {}
19
+
20
+ public async healthcheck(): Promise<{ status: string; service: string }> {
21
+ const url = `${this.baseUrl}healthcheck`;
22
+ return await this.httpRequest.get(url, undefined, { operationName: "healthcheck" });
23
+ }
24
+
25
+ public async getCreditProfile(directoryId: string, partnerId: string): Promise<CreditProfileResponse> {
26
+ const url = `${this.baseUrl}credit/profile/${directoryId}`;
27
+ return await this.httpRequest.get(
28
+ url,
29
+ { partnerId },
30
+ { operationName: "getCreditProfile" },
31
+ );
32
+ }
33
+
34
+ public async getActiveCredit(directoryId: string): Promise<CreditDetailResponse | null> {
35
+ const url = `${this.baseUrl}credit/active/${directoryId}`;
36
+ return await this.httpRequest.get(
37
+ url,
38
+ undefined,
39
+ { operationName: "getActiveCredit" },
40
+ );
41
+ }
42
+
43
+ public async enrichDirectories(directoryIds: string[]): Promise<any> {
44
+ const url = `${this.baseUrl}credit/private/enrich-directories`;
45
+ const operationName = "privateEnrichDirectories";
46
+ return await this.httpRequest.post(url, { directoryIds }, { 'operationName': operationName });
47
+ }
48
+
49
+ public async getCreditProgress(credits: Array<{ credit_id: string; term_weeks?: number }>): Promise<any> {
50
+ const url = `${this.baseUrl}credit/private/credit-progress`;
51
+ const operationName = "privateGetCreditProgress";
52
+ return await this.httpRequest.post(url, { credits }, { 'operationName': operationName });
53
+ }
54
+ }
@@ -1,17 +1,17 @@
1
- export * from './interfaces/ICreditEngineApi';
2
- export * from './CreditEngineApi';
3
-
4
- // SQS Publishers - interfaces
5
- export * from './queue/interfaces/ICreditIncomeDetectionPublisher';
6
- export * from './queue/interfaces/ICreditScoringPublisher';
7
- export * from './queue/interfaces/ICreditOfferGenerationPublisher';
8
- export * from './queue/interfaces/ICreditCollectionPublisher';
9
- export * from './queue/interfaces/ICreditDelinquencyPublisher';
10
- export * from './queue/interfaces/ICreditTransferPublisher';
11
- export * from './queue/interfaces/ICreditNotificationPublisher';
12
- export * from './queue/interfaces/ICreditStatementPublisher';
13
- export * from './queue/interfaces/ICreditReconciliationPublisher';
14
- export * from './queue/interfaces/ICreditLienCollectionPublisher';
15
-
16
- // SQS Publishers - implementations (named re-exports of default exports)
17
- export { default as CreditIncomeDetectionPublisher } from './queue/CreditIncomeDetectionPublisher';
1
+ export * from './interfaces/ICreditEngineApi';
2
+ export * from './CreditEngineApi';
3
+
4
+ // SQS Publishers - interfaces
5
+ export * from './queue/interfaces/ICreditIncomeDetectionPublisher';
6
+ export * from './queue/interfaces/ICreditScoringPublisher';
7
+ export * from './queue/interfaces/ICreditOfferGenerationPublisher';
8
+ export * from './queue/interfaces/ICreditCollectionPublisher';
9
+ export * from './queue/interfaces/ICreditDelinquencyPublisher';
10
+ export * from './queue/interfaces/ICreditTransferPublisher';
11
+ export * from './queue/interfaces/ICreditNotificationPublisher';
12
+ export * from './queue/interfaces/ICreditStatementPublisher';
13
+ export * from './queue/interfaces/ICreditReconciliationPublisher';
14
+ export * from './queue/interfaces/ICreditLienCollectionPublisher';
15
+
16
+ // SQS Publishers - implementations (named re-exports of default exports)
17
+ export { default as CreditIncomeDetectionPublisher } from './queue/CreditIncomeDetectionPublisher';
@@ -1,46 +1,46 @@
1
- import { CreditProfileResponse } from "@fiado/type-kit/bin/credit/dtos/internal/CreditProfileResponse";
2
- import { CreditDetailResponse } from "@fiado/type-kit/bin/creditEngine";
3
-
4
- /**
5
- * Cliente para invocar los endpoints privados del lambda `credit-engine-business`.
6
- *
7
- * Los endpoints viven bajo `CREDIT_ENGINE_LAMBDA_URL` (API Gateway privado / VPC).
8
- */
9
- export interface ICreditEngineApi {
10
-
11
- /**
12
- * Healthcheck del lambda. Devuelve `{ status: "OK", service: "credit-engine-business" }`.
13
- * Útil para validar conectividad inter-service.
14
- */
15
- healthcheck(): Promise<{ status: string; service: string }>;
16
-
17
- /**
18
- * Obtiene el perfil financiero del directorio para un partner específico.
19
- * Endpoint: `GET /credit/profile/{directoryId}?partnerId={partnerId}`
20
- *
21
- * @param directoryId ID del directorio del usuario.
22
- * @param partnerId ID del partner (tenant) del perfil a consultar.
23
- */
24
- getCreditProfile(directoryId: string, partnerId: string): Promise<CreditProfileResponse>;
25
-
26
- /**
27
- * Obtiene el crédito activo del cliente, si existe.
28
- * Endpoint: `GET /credit/active/{directoryId}`
29
- *
30
- * @param directoryId ID del directorio del usuario.
31
- * @returns Detalle del crédito activo, o `null` si no hay crédito activo.
32
- */
33
- getActiveCredit(directoryId: string): Promise<CreditDetailResponse | null>;
34
-
35
- /**
36
- * Resuelve full_name + phone_number para una lista de directoryIds.
37
- * Endpoint: POST /credit/private/enrich-directories
38
- */
39
- enrichDirectories(directoryIds: string[]): Promise<any>;
40
-
41
- /**
42
- * Resuelve weeks_paid + weeks_total + next_due_date para una lista de creditos.
43
- * Endpoint: POST /credit/private/credit-progress
44
- */
45
- getCreditProgress(credits: Array<{ credit_id: string; term_weeks?: number }>): Promise<any>;
46
- }
1
+ import { CreditProfileResponse } from "@fiado/type-kit/bin/credit/dtos/internal/CreditProfileResponse";
2
+ import { CreditDetailResponse } from "@fiado/type-kit/bin/creditEngine";
3
+
4
+ /**
5
+ * Cliente para invocar los endpoints privados del lambda `credit-engine-business`.
6
+ *
7
+ * Los endpoints viven bajo `CREDIT_ENGINE_LAMBDA_URL` (API Gateway privado / VPC).
8
+ */
9
+ export interface ICreditEngineApi {
10
+
11
+ /**
12
+ * Healthcheck del lambda. Devuelve `{ status: "OK", service: "credit-engine-business" }`.
13
+ * Útil para validar conectividad inter-service.
14
+ */
15
+ healthcheck(): Promise<{ status: string; service: string }>;
16
+
17
+ /**
18
+ * Obtiene el perfil financiero del directorio para un partner específico.
19
+ * Endpoint: `GET /credit/profile/{directoryId}?partnerId={partnerId}`
20
+ *
21
+ * @param directoryId ID del directorio del usuario.
22
+ * @param partnerId ID del partner (tenant) del perfil a consultar.
23
+ */
24
+ getCreditProfile(directoryId: string, partnerId: string): Promise<CreditProfileResponse>;
25
+
26
+ /**
27
+ * Obtiene el crédito activo del cliente, si existe.
28
+ * Endpoint: `GET /credit/active/{directoryId}`
29
+ *
30
+ * @param directoryId ID del directorio del usuario.
31
+ * @returns Detalle del crédito activo, o `null` si no hay crédito activo.
32
+ */
33
+ getActiveCredit(directoryId: string): Promise<CreditDetailResponse | null>;
34
+
35
+ /**
36
+ * Resuelve full_name + phone_number para una lista de directoryIds.
37
+ * Endpoint: POST /credit/private/enrich-directories
38
+ */
39
+ enrichDirectories(directoryIds: string[]): Promise<any>;
40
+
41
+ /**
42
+ * Resuelve weeks_paid + weeks_total + next_due_date para una lista de creditos.
43
+ * Endpoint: POST /credit/private/credit-progress
44
+ */
45
+ getCreditProgress(credits: Array<{ credit_id: string; term_weeks?: number }>): Promise<any>;
46
+ }
@@ -1,24 +1,24 @@
1
- import { ICreditCollectionPublisher } from "./interfaces/ICreditCollectionPublisher";
2
- import { CreditQueueMessage } from "@fiado/type-kit/bin/credit/dtos/internal/CreditQueueMessage";
3
- import { SendMessageCommand, SendMessageRequest, SQSClient } from "@aws-sdk/client-sqs";
4
- import { injectable } from "inversify";
5
-
6
- @injectable()
7
- export default class CreditCollectionPublisher implements ICreditCollectionPublisher {
8
- private readonly QUEUE_URL = process.env.CREDIT_COLLECTION_QUEUE;
9
-
10
- async publish(message: CreditQueueMessage): Promise<void> {
11
- try {
12
- const client: SQSClient = new SQSClient();
13
- const sendMessageRequest: SendMessageRequest = {
14
- QueueUrl: this.QUEUE_URL,
15
- MessageBody: JSON.stringify(message)
16
- };
17
- const command: SendMessageCommand = new SendMessageCommand(sendMessageRequest);
18
- await client.send(command);
19
- } catch (error) {
20
- const errorMessage = error instanceof Error ? error.message : String(error);
21
- throw new Error(`Error publishing message to CreditCollectionQueue${': ' + errorMessage}`);
22
- }
23
- }
24
- }
1
+ import { ICreditCollectionPublisher } from "./interfaces/ICreditCollectionPublisher";
2
+ import { CreditQueueMessage } from "@fiado/type-kit/bin/credit/dtos/internal/CreditQueueMessage";
3
+ import { SendMessageCommand, SendMessageRequest, SQSClient } from "@aws-sdk/client-sqs";
4
+ import { injectable } from "inversify";
5
+
6
+ @injectable()
7
+ export default class CreditCollectionPublisher implements ICreditCollectionPublisher {
8
+ private readonly QUEUE_URL = process.env.CREDIT_COLLECTION_QUEUE;
9
+
10
+ async publish(message: CreditQueueMessage): Promise<void> {
11
+ try {
12
+ const client: SQSClient = new SQSClient();
13
+ const sendMessageRequest: SendMessageRequest = {
14
+ QueueUrl: this.QUEUE_URL,
15
+ MessageBody: JSON.stringify(message)
16
+ };
17
+ const command: SendMessageCommand = new SendMessageCommand(sendMessageRequest);
18
+ await client.send(command);
19
+ } catch (error) {
20
+ const errorMessage = error instanceof Error ? error.message : String(error);
21
+ throw new Error(`Error publishing message to CreditCollectionQueue${': ' + errorMessage}`);
22
+ }
23
+ }
24
+ }