@fiado/api-invoker 4.5.0 → 4.7.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 (301) hide show
  1. package/.claude/settings.json +33 -33
  2. package/README.md +600 -600
  3. package/bin/container.config.js +9 -0
  4. package/bin/index.d.ts +2 -0
  5. package/bin/index.js +2 -0
  6. package/bin/messages-business/api/MessagesBusinessApi.d.ts +17 -0
  7. package/bin/messages-business/api/MessagesBusinessApi.js +53 -0
  8. package/bin/messages-business/api/interfaces/IMessagesBusinessApi.d.ts +12 -0
  9. package/bin/messages-business/api/interfaces/IMessagesBusinessApi.js +2 -0
  10. package/bin/messages-business/index.d.ts +4 -0
  11. package/bin/messages-business/index.js +25 -0
  12. package/bin/messages-business/queue/MessagesBusinessPublisher.d.ts +7 -0
  13. package/bin/messages-business/queue/MessagesBusinessPublisher.js +41 -0
  14. package/bin/messages-business/queue/interfaces/IMessagesBusinessPublisher.d.ts +4 -0
  15. package/bin/messages-business/queue/interfaces/IMessagesBusinessPublisher.js +2 -0
  16. package/bin/platformRbac/api/PlatformRbacBusinessApi.d.ts +26 -0
  17. package/bin/platformRbac/api/PlatformRbacBusinessApi.js +54 -0
  18. package/bin/platformRbac/api/interfaces/IPlatformRbacBusinessApi.d.ts +40 -0
  19. package/bin/platformRbac/api/interfaces/IPlatformRbacBusinessApi.js +2 -0
  20. package/bin/platformRbac/index.d.ts +2 -0
  21. package/bin/platformRbac/index.js +23 -0
  22. package/docs/TECH_DEBT.md +16 -0
  23. package/package.json +37 -36
  24. package/src/account-beneficiary/AccountBeneficiaryApi.ts +18 -18
  25. package/src/account-beneficiary/index.ts +2 -2
  26. package/src/account-beneficiary/interfaces/IAccountBeneficiaryApi.ts +7 -7
  27. package/src/account-fiadoinc/AccountFiadoIncApi.ts +126 -126
  28. package/src/account-fiadoinc/index.ts +4 -4
  29. package/src/account-fiadoinc/interfaces/IAccountFiadoIncApi.ts +50 -50
  30. package/src/account-fiadoinc/queue/Publisher.ts +23 -23
  31. package/src/account-fiadoinc/queue/interfaces/IPublisher.ts +4 -4
  32. package/src/account-fiadosa/AccountFiadoSAApi.ts +38 -38
  33. package/src/account-fiadosa/index.ts +1 -1
  34. package/src/account-fiadosa/interfaces/IAccountFiadoSAApi.ts +16 -16
  35. package/src/account-pagoconfiado/AccountPagoConfiadoApi.ts +78 -78
  36. package/src/account-pagoconfiado/index.ts +2 -2
  37. package/src/account-pagoconfiado/interfaces/IAccountPagoConfiadoApi.ts +37 -37
  38. package/src/activity-business/ActivityApi.ts +36 -36
  39. package/src/activity-business/index.ts +5 -5
  40. package/src/activity-business/interfaces/IActivityApi.ts +13 -13
  41. package/src/activity-business/queue/ActivityPublisher.ts +30 -30
  42. package/src/activity-business/queue/IActivityPublisher.ts +4 -4
  43. package/src/address/AddressApi.ts +46 -46
  44. package/src/address/index.ts +3 -3
  45. package/src/address/interfaces/IAddressApi.ts +30 -30
  46. package/src/ai-engine-connector/AiEngineApi.ts +28 -28
  47. package/src/ai-engine-connector/index.ts +2 -2
  48. package/src/ai-engine-connector/interfaces/IAiEngineApi.ts +6 -6
  49. package/src/appselectondata/AppSelectionDataApi.ts +32 -32
  50. package/src/appselectondata/index.ts +2 -2
  51. package/src/appselectondata/interfaces/IAppSelectionDataApi.ts +17 -17
  52. package/src/authentication/AuthenticationApi.ts +29 -29
  53. package/src/authentication/index.ts +4 -4
  54. package/src/authentication/interfaces/IAuthenticationApi.ts +8 -8
  55. package/src/bankAccount/BankAccountApi.ts +34 -34
  56. package/src/bankAccount/index.ts +1 -1
  57. package/src/bankAccount/interfaces/IBankAccountApi.ts +6 -6
  58. package/src/bbvaRst/api/BBVARstApi.ts +16 -16
  59. package/src/bbvaRst/api/interfaces/IBBVARstApi.ts +4 -4
  60. package/src/bbvaRst/index.ts +1 -1
  61. package/src/benefits-marketplace/api/BenefitsMarketplaceApi.ts +35 -35
  62. package/src/benefits-marketplace/api/dtos/BenefitLeafDisplayResponse.ts +21 -21
  63. package/src/benefits-marketplace/api/interfaces/IBenefitsMarketplaceApi.ts +62 -62
  64. package/src/benefits-marketplace/index.ts +3 -3
  65. package/src/blacklist/BlackListApi.ts +19 -19
  66. package/src/blacklist/index.ts +2 -2
  67. package/src/blacklist/interfaces/IBlackListApi.ts +20 -20
  68. package/src/card/CardApi.ts +103 -103
  69. package/src/card/index.ts +3 -3
  70. package/src/card/interfaces/ICardApi.ts +32 -32
  71. package/src/card-business/index.ts +2 -2
  72. package/src/card-business/queue/CardBusinessPublisher.ts +23 -23
  73. package/src/card-business/queue/ICardBusinessPublisher.ts +10 -10
  74. package/src/centralPayments/CentralPaymentsConnectorApi.ts +317 -317
  75. package/src/centralPayments/index.ts +1 -1
  76. package/src/centralPayments/interfaces/ICentralPaymentsConnectorApi.ts +153 -153
  77. package/src/circuloCredito/api/CirculoCreditoApi.ts +21 -21
  78. package/src/circuloCredito/api/interfaces/ICirculoCreditoApi.ts +7 -7
  79. package/src/circuloCredito/index.ts +2 -2
  80. package/src/cnbv-business/CnbvApi.ts +31 -31
  81. package/src/cnbv-business/index.ts +4 -4
  82. package/src/cnbv-business/interfaces/ICnbvApi.ts +19 -19
  83. package/src/cnbv-connector/CnbvConnectorApi.ts +18 -18
  84. package/src/cnbv-connector/index.ts +1 -1
  85. package/src/cnbv-connector/interfaces/ICnbvConnectorApi.ts +6 -6
  86. package/src/cognitoBackofficeConnector/api/CognitoBackofficeConnectorApi.ts +254 -254
  87. package/src/cognitoBackofficeConnector/api/interfaces/ICognitoBackofficeConnectorApi.ts +181 -181
  88. package/src/cognitoBackofficeConnector/index.ts +2 -2
  89. package/src/cognitoConnector/CognitoConnectorApi.ts +110 -110
  90. package/src/cognitoConnector/CognitoConnectorV2.ts +87 -87
  91. package/src/cognitoConnector/index.ts +11 -11
  92. package/src/cognitoConnector/interfaces/ICognitoConnectorApi.ts +16 -16
  93. package/src/cognitoConnector/interfaces/ICognitoV2Api.ts +63 -63
  94. package/src/collector/CollectorApi.ts +97 -97
  95. package/src/collector/index.ts +2 -2
  96. package/src/collector/interfaces/ICollectorApi.ts +47 -47
  97. package/src/commission-business/CommissionBusinessApi.ts +19 -19
  98. package/src/commission-business/index.ts +3 -3
  99. package/src/commission-business/interfaces/ICommissionBusinessApi.ts +15 -15
  100. package/src/contactInformation/ContactInformationApi.ts +20 -20
  101. package/src/contactInformation/index.ts +2 -2
  102. package/src/contactInformation/interface/IContactInformationApi.ts +8 -8
  103. package/src/container.config.ts +289 -276
  104. package/src/contract-business/api/ContractBusinessApi.ts +37 -37
  105. package/src/contract-business/api/interfaces/IContractBusinessApi.ts +32 -32
  106. package/src/contract-business/index.ts +2 -2
  107. package/src/contract-generator/ContractGeneratorApi.ts +18 -18
  108. package/src/contract-generator/index.ts +2 -2
  109. package/src/contract-generator/interfaces/IContractGeneratorApi.ts +16 -16
  110. package/src/countries-business/CountriesBusinessApi.ts +26 -26
  111. package/src/countries-business/index.ts +2 -2
  112. package/src/countries-business/interfaces/ICountriesBusinessApi.ts +22 -22
  113. package/src/credit-engine/CreditEngineApi.ts +54 -54
  114. package/src/credit-engine/index.ts +17 -17
  115. package/src/credit-engine/interfaces/ICreditEngineApi.ts +46 -46
  116. package/src/credit-engine/queue/CreditCollectionPublisher.ts +24 -24
  117. package/src/credit-engine/queue/CreditDelinquencyPublisher.ts +24 -24
  118. package/src/credit-engine/queue/CreditIncomeDetectionPublisher.ts +24 -24
  119. package/src/credit-engine/queue/CreditLienCollectionPublisher.ts +24 -24
  120. package/src/credit-engine/queue/CreditNotificationPublisher.ts +24 -24
  121. package/src/credit-engine/queue/CreditOfferGenerationPublisher.ts +24 -24
  122. package/src/credit-engine/queue/CreditReconciliationPublisher.ts +24 -24
  123. package/src/credit-engine/queue/CreditScoringPublisher.ts +24 -24
  124. package/src/credit-engine/queue/CreditStatementPublisher.ts +24 -24
  125. package/src/credit-engine/queue/CreditTransferPublisher.ts +24 -24
  126. package/src/credit-engine/queue/interfaces/ICreditCollectionPublisher.ts +5 -5
  127. package/src/credit-engine/queue/interfaces/ICreditDelinquencyPublisher.ts +5 -5
  128. package/src/credit-engine/queue/interfaces/ICreditIncomeDetectionPublisher.ts +5 -5
  129. package/src/credit-engine/queue/interfaces/ICreditLienCollectionPublisher.ts +5 -5
  130. package/src/credit-engine/queue/interfaces/ICreditNotificationPublisher.ts +5 -5
  131. package/src/credit-engine/queue/interfaces/ICreditOfferGenerationPublisher.ts +5 -5
  132. package/src/credit-engine/queue/interfaces/ICreditReconciliationPublisher.ts +5 -5
  133. package/src/credit-engine/queue/interfaces/ICreditScoringPublisher.ts +5 -5
  134. package/src/credit-engine/queue/interfaces/ICreditStatementPublisher.ts +5 -5
  135. package/src/credit-engine/queue/interfaces/ICreditTransferPublisher.ts +5 -5
  136. package/src/credit-payment/CreditPaymentApi.ts +73 -73
  137. package/src/credit-payment/index.ts +2 -2
  138. package/src/credit-payment/interfaces/ICreditPaymentApi.ts +52 -52
  139. package/src/credit-statements/api/CreditStatementsApi.ts +25 -25
  140. package/src/credit-statements/api/interfaces/ICreditStatementsApi.ts +30 -30
  141. package/src/credit-statements/index.ts +2 -2
  142. package/src/device/DeviceApi.ts +32 -32
  143. package/src/device/index.ts +2 -2
  144. package/src/device/interfaces/IDeviceApi.ts +41 -41
  145. package/src/directories/DirectoriesApi.ts +63 -63
  146. package/src/directories/index.ts +3 -3
  147. package/src/directories/interfaces/IDirectoriesApi.ts +17 -17
  148. package/src/directory/DirectoryApi.ts +196 -196
  149. package/src/directory/index.ts +3 -3
  150. package/src/directory/interfaces/IDirectoryApi.ts +73 -73
  151. package/src/directorySetting/DirectorySettingApi.ts +42 -42
  152. package/src/directorySetting/index.ts +3 -3
  153. package/src/directorySetting/interfaces/IDirectorySettingApi.ts +56 -56
  154. package/src/disputes/DisputesApi.ts +50 -50
  155. package/src/disputes/index.ts +2 -2
  156. package/src/disputes/interfaces/IDisputesApi.ts +54 -54
  157. package/src/document-generator/DocumentGeneratorApi.ts +51 -51
  158. package/src/document-generator/index.ts +2 -2
  159. package/src/document-generator/interfaces/IDocumentGeneratorApi.ts +34 -34
  160. package/src/document-image-processor/DocumentImageProcessorApi.ts +22 -22
  161. package/src/document-image-processor/index.ts +1 -1
  162. package/src/document-image-processor/interfaces/IDocumentImageProcessorApi.ts +7 -7
  163. package/src/estafeta/api/EstafetaApi.ts +67 -67
  164. package/src/estafeta/api/interfaces/IEstafetaApi.ts +28 -28
  165. package/src/estafeta/index.ts +1 -1
  166. package/src/event-history-business/EventHistoryApi.ts +108 -108
  167. package/src/event-history-business/index.ts +3 -3
  168. package/src/event-history-business/interfaces/IEventHistoryApi.ts +47 -47
  169. package/src/exchangeRates/ExchangeRatesApi.ts +27 -27
  170. package/src/exchangeRates/index.ts +1 -1
  171. package/src/exchangeRates/interfaces/IExchangeRatesApi.ts +8 -8
  172. package/src/fiadoMessages/api/FiadoMessagesApi.ts +20 -20
  173. package/src/fiadoMessages/api/interfaces/IFiadoMessagesApi.ts +2 -2
  174. package/src/fiadoMessages/index.ts +1 -1
  175. package/src/firebase-connector/FirebaseConnectorApi.ts +53 -53
  176. package/src/firebase-connector/index.ts +3 -3
  177. package/src/firebase-connector/interfaces/IFirebaseConnectorApi.ts +6 -6
  178. package/src/fraudPreventionEngine/api/FraudPreventionEngineApi.ts +22 -22
  179. package/src/fraudPreventionEngine/api/interfaces/IFraudPreventionEngineApi.ts +7 -7
  180. package/src/fraudPreventionEngine/index.ts +1 -1
  181. package/src/group/GroupApi.ts +69 -69
  182. package/src/group/index.ts +1 -1
  183. package/src/group/interfaces/IGroupApi.ts +40 -40
  184. package/src/identity/IdentityApi.ts +95 -95
  185. package/src/identity/index.ts +3 -3
  186. package/src/identity/interfaces/IIdentityApi.ts +46 -46
  187. package/src/index.ts +78 -76
  188. package/src/legalDocument/api/LegalDocumentApi.ts +38 -38
  189. package/src/legalDocument/api/interfaces/ILegalDocumentApi.ts +7 -7
  190. package/src/legalDocument/index.ts +3 -3
  191. package/src/messages-business/api/MessagesBusinessApi.ts +50 -0
  192. package/src/messages-business/api/interfaces/IMessagesBusinessApi.ts +20 -0
  193. package/src/messages-business/index.ts +4 -0
  194. package/src/messages-business/queue/MessagesBusinessPublisher.ts +33 -0
  195. package/src/messages-business/queue/interfaces/IMessagesBusinessPublisher.ts +5 -0
  196. package/src/milestone-business/api/MilestoneBusinessApi.ts +26 -26
  197. package/src/milestone-business/api/interfaces/IMilestoneBusinessApi.ts +9 -9
  198. package/src/milestone-business/index.ts +2 -2
  199. package/src/multicommServicePayment/api/MulticommServicePaymentApi.ts +94 -94
  200. package/src/multicommServicePayment/api/interfaces/IMulticommServicePaymentApi.ts +44 -44
  201. package/src/multicommServicePayment/index.ts +1 -1
  202. package/src/notificationMessages/index.ts +1 -1
  203. package/src/notificationMessages/queue/NotificationMessagePublisher.ts +42 -42
  204. package/src/notificationMessages/queue/interfaces/INotificationMessagesPublisher.ts +7 -7
  205. package/src/notificationWebsockets/index.ts +1 -1
  206. package/src/notificationWebsockets/queue/NotificationWSMessagePublisher.ts +29 -29
  207. package/src/notificationWebsockets/queue/interfaces/INotificationWSMessagesPublisher.ts +4 -4
  208. package/src/observations/ObservationsApi.ts +23 -23
  209. package/src/observations/index.ts +3 -3
  210. package/src/observations/interfaces/IObservationsApi.ts +9 -9
  211. package/src/onboarding/api/OnboardingApi.ts +23 -23
  212. package/src/onboarding/api/interfaces/IOnboardingApi.ts +3 -3
  213. package/src/onboarding/index.ts +1 -1
  214. package/src/onboarding-business/api/OnboardingBusinessApi.ts +210 -210
  215. package/src/onboarding-business/api/interfaces/IOnboardingBusinessApi.ts +9 -9
  216. package/src/onboarding-business/index.ts +1 -1
  217. package/src/order-collector-business/OrderCollectorApi.ts +20 -20
  218. package/src/order-collector-business/index.ts +3 -3
  219. package/src/order-collector-business/interfaces/IOrderCollectorApi.ts +9 -9
  220. package/src/p2pContact/api/P2pContactApi.ts +19 -19
  221. package/src/p2pContact/api/interfaces/IP2pContactApi.ts +4 -4
  222. package/src/p2pContact/index.ts +1 -1
  223. package/src/payroll-business/PayrollApi.ts +19 -19
  224. package/src/payroll-business/index.ts +1 -1
  225. package/src/payroll-business/interfaces/IPayrollApi.ts +18 -18
  226. package/src/people-business/api/PeopleBusinessApi.ts +32 -32
  227. package/src/people-business/api/interfaces/IPeopleBusinessApi.ts +7 -7
  228. package/src/people-business/index.ts +1 -1
  229. package/src/platform-error-events/index.ts +2 -2
  230. package/src/platform-error-events/queue/PlatformErrorEventsPublisher.ts +24 -24
  231. package/src/platform-error-events/queue/interfaces/IPlatformErrorEventsPublisher.ts +5 -5
  232. package/src/platformRbac/api/PlatformRbacBusinessApi.ts +55 -0
  233. package/src/platformRbac/api/interfaces/IPlatformRbacBusinessApi.ts +56 -0
  234. package/src/platformRbac/index.ts +2 -0
  235. package/src/pomelo/api/PomeloApi.ts +109 -109
  236. package/src/pomelo/api/interfaces/IPomeloApi.ts +29 -29
  237. package/src/pomelo/index.ts +1 -1
  238. package/src/pomeloProcessor/api/PomeloProcessorApi.ts +17 -17
  239. package/src/pomeloProcessor/api/interfaces/IPomeloProcessorApi.ts +2 -2
  240. package/src/pomeloProcessor/index.ts +2 -2
  241. package/src/pricelist-business/PriceListApi.ts +45 -45
  242. package/src/pricelist-business/index.ts +1 -1
  243. package/src/pricelist-business/interfaces/IPriceListApi.ts +16 -16
  244. package/src/product-catalog/ProductCatalogApi.ts +17 -17
  245. package/src/product-catalog/index.ts +1 -1
  246. package/src/product-catalog/interfaces/IProductCatalogApi.ts +6 -6
  247. package/src/product-payment/api/ProductPaymentApi.ts +25 -25
  248. package/src/product-payment/api/interfaces/IProductPaymentApi.ts +8 -8
  249. package/src/product-payment/index.ts +1 -1
  250. package/src/referral-business/ReferralBusinessApi.ts +37 -37
  251. package/src/referral-business/index.ts +1 -1
  252. package/src/referral-business/interfaces/IReferralBusinessApi.ts +38 -38
  253. package/src/report-processor-business/api/IReportProcessorBusinessApi.ts +4 -4
  254. package/src/report-processor-business/api/ReportProcessorBusinessApi.ts +17 -17
  255. package/src/report-processor-business/index.ts +5 -5
  256. package/src/riskProfile/api/RiskProfileApi.ts +63 -63
  257. package/src/riskProfile/api/TransactionAlertApi.ts +49 -49
  258. package/src/riskProfile/api/interfaces/IRiskProfileApi.ts +51 -51
  259. package/src/riskProfile/api/interfaces/ITransactionAlertApi.ts +70 -70
  260. package/src/riskProfile/index.ts +7 -7
  261. package/src/riskProfile/queue/TransactionAlarmPublisher.ts +25 -25
  262. package/src/riskProfile/queue/interfaces/ITransactionAlarmPublisher.ts +4 -4
  263. package/src/service-business/ServiceApi.ts +78 -78
  264. package/src/service-business/index.ts +2 -2
  265. package/src/service-business/interfaces/IServiceApi.ts +73 -73
  266. package/src/sessionActivity/index.ts +2 -2
  267. package/src/sessionActivity/queue/SessionActivityPublisher.ts +23 -23
  268. package/src/sessionActivity/queue/interfaces/ISessionActivityPublisher.ts +4 -4
  269. package/src/stp-business/api/STPBusinessApi.ts +32 -32
  270. package/src/stp-business/api/interfaces/ISTPBusinessApi.ts +15 -15
  271. package/src/stp-business/index.ts +1 -1
  272. package/src/stpAccount/api/STPAccountApi.ts +111 -111
  273. package/src/stpAccount/api/interfaces/ISTPAccountApi.ts +7 -7
  274. package/src/stpAccount/index.ts +1 -1
  275. package/src/stpServicePayment/api/StpServicePaymentApi.ts +94 -94
  276. package/src/stpServicePayment/api/interfaces/IStpServicePaymentApi.ts +44 -44
  277. package/src/stpServicePayment/index.ts +1 -1
  278. package/src/stpSpei/api/StpSpeiApi.ts +32 -32
  279. package/src/stpSpei/api/interfaces/IStpSpeiApi.ts +6 -6
  280. package/src/stpSpei/index.ts +1 -1
  281. package/src/teams-connector/index.ts +2 -2
  282. package/src/teams-connector/queue/TeamsNotificationPublisher.ts +24 -24
  283. package/src/teams-connector/queue/interfaces/ITeamsNotificationPublisher.ts +5 -5
  284. package/src/tern/api/TernApi.ts +147 -147
  285. package/src/tern/api/interfaces/ITernApi.ts +54 -54
  286. package/src/tern/index.ts +1 -1
  287. package/src/transaction/api/TransactionApi.ts +157 -157
  288. package/src/transaction/api/interfaces/ITransactionApi.ts +82 -82
  289. package/src/transaction/index.ts +5 -5
  290. package/src/transaction/queue/TransactionPublisher.ts +25 -25
  291. package/src/transaction/queue/interfaces/ITransactionPublisher.ts +4 -4
  292. package/src/transactionProcessor/api/TransactionProcessorApi.ts +57 -57
  293. package/src/transactionProcessor/api/interfaces/ITransactionProcessorApi.ts +28 -28
  294. package/src/transactionProcessor/index.ts +1 -1
  295. package/src/uniteller-connector/api/UnitellerConnectorApi.ts +113 -113
  296. package/src/uniteller-connector/api/interfaces/IUnitellerConnectorApi.ts +85 -85
  297. package/src/uniteller-connector/index.ts +2 -2
  298. package/src/utils/InvokerUtils.ts +18 -18
  299. package/src/zendesk/ZendeskApi.ts +24 -24
  300. package/src/zendesk/index.ts +3 -3
  301. package/src/zendesk/interfaces/IZendeskApi.ts +10 -10
@@ -1,95 +1,95 @@
1
- import {IMulticommServicePaymentApi} from "./interfaces/IMulticommServicePaymentApi";
2
- import {inject, injectable} from "inversify";
3
- import {IHttpRequest} from "@fiado/http-client";
4
- import {GetCatalogParams, GetFavoritesParams, GetFavoritesResponse, ServicePaymentRequest} from "@fiado/type-kit/bin/servicePayment";
5
- import {BenefitPaymentRequest, BenefitPaymentResponse, ConnectorCatalogResponse} from "@fiado/type-kit/bin/benefitCenter";
6
- import {ApiGatewayResponse} from "@fiado/gateway-adapter";
7
- import FiadoApiResponse from "@fiado/type-kit/bin/apiResponse/dtos/FiadoApiResponse";
8
-
9
- @injectable()
10
- export default class MulticommServicePaymentApi implements IMulticommServicePaymentApi {
11
- private readonly baseUrl = process.env.MULTICOMM_SERVICE_PAY_LAMBDA_URL || "";
12
-
13
- constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) {
14
- }
15
- async getSTPTransactionDownload(params: { date: string; index?: string; pageSize?: number; sort?: string; }): Promise<ApiGatewayResponse<any>> {
16
- const url= `${this.baseUrl}transaction-download?${(Object.keys(params) as (keyof typeof params)[]).map(key => `${key}=${encodeURIComponent(String(params[key]))}`).join('&')}`;
17
- return await this.httpRequest.get(url);
18
- }
19
-
20
- async pay(request: ServicePaymentRequest): Promise<ApiGatewayResponse<any>> {
21
- const url = `${this.baseUrl}/pay`;
22
- return await this.httpRequest.post(url, request);
23
- }
24
-
25
- async getTransaction(transactionNumber: string): Promise<ApiGatewayResponse<any>> {
26
- const url = `${this.baseUrl}/transaction/${transactionNumber}`;
27
- return await this.httpRequest.get(url);
28
- }
29
-
30
- async getById(id: string): Promise<ApiGatewayResponse<any>> {
31
- const url = `${this.baseUrl}/transaction/${id}`;
32
- return await this.httpRequest.get(url);
33
- }
34
-
35
- async getPaymentValidation(transactionNumber: string): Promise<ApiGatewayResponse<any>> {
36
- const url = `${this.baseUrl}/pay/validation/${transactionNumber}`;
37
- return await this.httpRequest.get(url);
38
- }
39
-
40
- async getCatalog(params: GetCatalogParams): Promise<ApiGatewayResponse<any>> {
41
- let url = `${this.baseUrl}/catalog`;
42
- if (params) {
43
- url += `?${(Object.keys(params) as (keyof typeof params)[]).map(key => `${key}=${encodeURIComponent(String(params[key]))}`).join('&')}`;
44
- }
45
- return await this.httpRequest.get(url);
46
- }
47
-
48
- async consultTransaction(params: { transactionNumber: string; date: string; serviceId: string; }): Promise<ApiGatewayResponse<any>> {
49
- const url = `${this.baseUrl}consult-transaction?${(Object.keys(params) as (keyof typeof params)[]).map(key => `${key}=${encodeURIComponent(String(params[key]))}`).join('&')}`;
50
- return await this.httpRequest.get(url);
51
- }
52
-
53
- async getTransactions(params: GetFavoritesParams): Promise<FiadoApiResponse<GetFavoritesResponse>> {
54
- const { directoryId, ...queryParams } = params;
55
- let url = `${this.baseUrl}transactions/${directoryId}`;
56
- const query = (Object.keys(queryParams) as (keyof typeof queryParams)[])
57
- .filter(key => queryParams[key] !== undefined)
58
- .map(key => `${key}=${encodeURIComponent(String(queryParams[key]))}`)
59
- .join('&');
60
- if (query) url += `?${query}`;
61
- return await this.httpRequest.get(url);
62
- }
63
-
64
- async getStandardCatalog(params?: { benefitId?: string; includeDisabled?: boolean }): Promise<ApiGatewayResponse<ConnectorCatalogResponse>> {
65
- let url = `${this.baseUrl}/catalog/standard`;
66
- if (params) {
67
- const query = Object.keys(params)
68
- .filter(key => params[key as keyof typeof params] !== undefined)
69
- .map(key => `${key}=${encodeURIComponent(String(params[key as keyof typeof params]))}`)
70
- .join('&');
71
- if (query) url += `?${query}`;
72
- }
73
- return await this.httpRequest.get(url);
74
- }
75
-
76
- async payStandard(request: BenefitPaymentRequest): Promise<ApiGatewayResponse<BenefitPaymentResponse>> {
77
- const url = `${this.baseUrl}/pay/standard`;
78
- return await this.httpRequest.post(url, request);
79
- }
80
-
81
- async consultStandard(transactionNumber: string): Promise<ApiGatewayResponse<BenefitPaymentResponse>> {
82
- const url = `${this.baseUrl}/pay/standard/transactions/${encodeURIComponent(transactionNumber)}`;
83
- return await this.httpRequest.get(url);
84
- }
85
-
86
- async updateService(idServicio: number, patch: Record<string, unknown>): Promise<ApiGatewayResponse<any>> {
87
- const url = `${this.baseUrl}/internal/services/${idServicio}`;
88
- return await this.httpRequest.put(url, patch);
89
- }
90
-
91
- async createService(payload: Record<string, unknown>): Promise<ApiGatewayResponse<any>> {
92
- const url = `${this.baseUrl}/internal/services`;
93
- return await this.httpRequest.post(url, payload);
94
- }
1
+ import {IMulticommServicePaymentApi} from "./interfaces/IMulticommServicePaymentApi";
2
+ import {inject, injectable} from "inversify";
3
+ import {IHttpRequest} from "@fiado/http-client";
4
+ import {GetCatalogParams, GetFavoritesParams, GetFavoritesResponse, ServicePaymentRequest} from "@fiado/type-kit/bin/servicePayment";
5
+ import {BenefitPaymentRequest, BenefitPaymentResponse, ConnectorCatalogResponse} from "@fiado/type-kit/bin/benefitCenter";
6
+ import {ApiGatewayResponse} from "@fiado/gateway-adapter";
7
+ import FiadoApiResponse from "@fiado/type-kit/bin/apiResponse/dtos/FiadoApiResponse";
8
+
9
+ @injectable()
10
+ export default class MulticommServicePaymentApi implements IMulticommServicePaymentApi {
11
+ private readonly baseUrl = process.env.MULTICOMM_SERVICE_PAY_LAMBDA_URL || "";
12
+
13
+ constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) {
14
+ }
15
+ async getSTPTransactionDownload(params: { date: string; index?: string; pageSize?: number; sort?: string; }): Promise<ApiGatewayResponse<any>> {
16
+ const url= `${this.baseUrl}transaction-download?${(Object.keys(params) as (keyof typeof params)[]).map(key => `${key}=${encodeURIComponent(String(params[key]))}`).join('&')}`;
17
+ return await this.httpRequest.get(url);
18
+ }
19
+
20
+ async pay(request: ServicePaymentRequest): Promise<ApiGatewayResponse<any>> {
21
+ const url = `${this.baseUrl}/pay`;
22
+ return await this.httpRequest.post(url, request);
23
+ }
24
+
25
+ async getTransaction(transactionNumber: string): Promise<ApiGatewayResponse<any>> {
26
+ const url = `${this.baseUrl}/transaction/${transactionNumber}`;
27
+ return await this.httpRequest.get(url);
28
+ }
29
+
30
+ async getById(id: string): Promise<ApiGatewayResponse<any>> {
31
+ const url = `${this.baseUrl}/transaction/${id}`;
32
+ return await this.httpRequest.get(url);
33
+ }
34
+
35
+ async getPaymentValidation(transactionNumber: string): Promise<ApiGatewayResponse<any>> {
36
+ const url = `${this.baseUrl}/pay/validation/${transactionNumber}`;
37
+ return await this.httpRequest.get(url);
38
+ }
39
+
40
+ async getCatalog(params: GetCatalogParams): Promise<ApiGatewayResponse<any>> {
41
+ let url = `${this.baseUrl}/catalog`;
42
+ if (params) {
43
+ url += `?${(Object.keys(params) as (keyof typeof params)[]).map(key => `${key}=${encodeURIComponent(String(params[key]))}`).join('&')}`;
44
+ }
45
+ return await this.httpRequest.get(url);
46
+ }
47
+
48
+ async consultTransaction(params: { transactionNumber: string; date: string; serviceId: string; }): Promise<ApiGatewayResponse<any>> {
49
+ const url = `${this.baseUrl}consult-transaction?${(Object.keys(params) as (keyof typeof params)[]).map(key => `${key}=${encodeURIComponent(String(params[key]))}`).join('&')}`;
50
+ return await this.httpRequest.get(url);
51
+ }
52
+
53
+ async getTransactions(params: GetFavoritesParams): Promise<FiadoApiResponse<GetFavoritesResponse>> {
54
+ const { directoryId, ...queryParams } = params;
55
+ let url = `${this.baseUrl}transactions/${directoryId}`;
56
+ const query = (Object.keys(queryParams) as (keyof typeof queryParams)[])
57
+ .filter(key => queryParams[key] !== undefined)
58
+ .map(key => `${key}=${encodeURIComponent(String(queryParams[key]))}`)
59
+ .join('&');
60
+ if (query) url += `?${query}`;
61
+ return await this.httpRequest.get(url);
62
+ }
63
+
64
+ async getStandardCatalog(params?: { benefitId?: string; includeDisabled?: boolean }): Promise<ApiGatewayResponse<ConnectorCatalogResponse>> {
65
+ let url = `${this.baseUrl}/catalog/standard`;
66
+ if (params) {
67
+ const query = Object.keys(params)
68
+ .filter(key => params[key as keyof typeof params] !== undefined)
69
+ .map(key => `${key}=${encodeURIComponent(String(params[key as keyof typeof params]))}`)
70
+ .join('&');
71
+ if (query) url += `?${query}`;
72
+ }
73
+ return await this.httpRequest.get(url);
74
+ }
75
+
76
+ async payStandard(request: BenefitPaymentRequest): Promise<ApiGatewayResponse<BenefitPaymentResponse>> {
77
+ const url = `${this.baseUrl}/pay/standard`;
78
+ return await this.httpRequest.post(url, request);
79
+ }
80
+
81
+ async consultStandard(transactionNumber: string): Promise<ApiGatewayResponse<BenefitPaymentResponse>> {
82
+ const url = `${this.baseUrl}/pay/standard/transactions/${encodeURIComponent(transactionNumber)}`;
83
+ return await this.httpRequest.get(url);
84
+ }
85
+
86
+ async updateService(idServicio: number, patch: Record<string, unknown>): Promise<ApiGatewayResponse<any>> {
87
+ const url = `${this.baseUrl}/internal/services/${idServicio}`;
88
+ return await this.httpRequest.put(url, patch);
89
+ }
90
+
91
+ async createService(payload: Record<string, unknown>): Promise<ApiGatewayResponse<any>> {
92
+ const url = `${this.baseUrl}/internal/services`;
93
+ return await this.httpRequest.post(url, payload);
94
+ }
95
95
  }
@@ -1,45 +1,45 @@
1
- import {GetCatalogParams, GetFavoritesParams, GetFavoritesResponse, ServicePaymentRequest} from "@fiado/type-kit/bin/servicePayment";
2
- import {BenefitPaymentRequest, BenefitPaymentResponse, ConnectorCatalogResponse} from "@fiado/type-kit/bin/benefitCenter";
3
- import {ApiGatewayResponse} from "@fiado/gateway-adapter";
4
- import FiadoApiResponse from "@fiado/type-kit/bin/apiResponse/dtos/FiadoApiResponse";
5
-
6
- export interface IMulticommServicePaymentApi {
7
- pay(request: ServicePaymentRequest): Promise<ApiGatewayResponse<any>>;
8
-
9
- getTransaction(transactionNumber: string): Promise<ApiGatewayResponse<any>>;
10
-
11
- getPaymentValidation(transactionNumber: string): Promise<ApiGatewayResponse<any>>
12
-
13
- getCatalog(params: GetCatalogParams): Promise<ApiGatewayResponse<any>>;
14
-
15
- getById(id: string): Promise<ApiGatewayResponse<any>>;
16
-
17
- getSTPTransactionDownload(params: {date: string,index?:string,pageSize?:number, sort?:string}): Promise<ApiGatewayResponse<any>>;
18
-
19
- consultTransaction(params: {transactionNumber: string, date: string, serviceId: string}): Promise<ApiGatewayResponse<any>>;
20
-
21
- getTransactions(params: GetFavoritesParams): Promise<FiadoApiResponse<GetFavoritesResponse>>;
22
-
23
- // Agregado en v3.1.0 — consume GET /catalog/standard del conector.
24
- // Consumido por CatalogTreeBuilder en benefits-marketplace-business.
25
- getStandardCatalog(params?: { benefitId?: string; includeDisabled?: boolean }): Promise<ApiGatewayResponse<ConnectorCatalogResponse>>;
26
-
27
- // Agregado en v3.5.0 (Fase 2) — consume POST /pay/standard del conector con DTO estandarizado.
28
- // Lo invoca el PaymentRouter de benefits-marketplace-business.
29
- payStandard(request: BenefitPaymentRequest): Promise<ApiGatewayResponse<BenefitPaymentResponse>>;
30
-
31
- // Agregado en v3.6.0 (Fase 2.5) — consume GET /pay/standard/transactions/{transactionNumber}
32
- // del conector. Devuelve el estado actual mapeado a BenefitPaymentResponse (el conector
33
- // hace el mapping legacy → estándar internamente). Usado por el cron de timeout
34
- // reconciliation del marketplace para consultar transacciones async sin ver shapes legacy.
35
- consultStandard(transactionNumber: string): Promise<ApiGatewayResponse<BenefitPaymentResponse>>;
36
-
37
- // Agregado en v3.8.0 — consume PUT /backoffice/services/{idServicio} del conector
38
- // admin. Consumido por LeafAdminManager de benefits-marketplace-business para
39
- // edición editorial in-place (admin-leaves v2).
40
- updateService(idServicio: number, patch: Record<string, unknown>): Promise<ApiGatewayResponse<any>>;
41
-
42
- // POST /internal/services — alta manual de un servicio nuevo (admin-leaves v2).
43
- // Consumido por LeafAdminManager de benefits-marketplace-business.
44
- createService(payload: Record<string, unknown>): Promise<ApiGatewayResponse<any>>;
1
+ import {GetCatalogParams, GetFavoritesParams, GetFavoritesResponse, ServicePaymentRequest} from "@fiado/type-kit/bin/servicePayment";
2
+ import {BenefitPaymentRequest, BenefitPaymentResponse, ConnectorCatalogResponse} from "@fiado/type-kit/bin/benefitCenter";
3
+ import {ApiGatewayResponse} from "@fiado/gateway-adapter";
4
+ import FiadoApiResponse from "@fiado/type-kit/bin/apiResponse/dtos/FiadoApiResponse";
5
+
6
+ export interface IMulticommServicePaymentApi {
7
+ pay(request: ServicePaymentRequest): Promise<ApiGatewayResponse<any>>;
8
+
9
+ getTransaction(transactionNumber: string): Promise<ApiGatewayResponse<any>>;
10
+
11
+ getPaymentValidation(transactionNumber: string): Promise<ApiGatewayResponse<any>>
12
+
13
+ getCatalog(params: GetCatalogParams): Promise<ApiGatewayResponse<any>>;
14
+
15
+ getById(id: string): Promise<ApiGatewayResponse<any>>;
16
+
17
+ getSTPTransactionDownload(params: {date: string,index?:string,pageSize?:number, sort?:string}): Promise<ApiGatewayResponse<any>>;
18
+
19
+ consultTransaction(params: {transactionNumber: string, date: string, serviceId: string}): Promise<ApiGatewayResponse<any>>;
20
+
21
+ getTransactions(params: GetFavoritesParams): Promise<FiadoApiResponse<GetFavoritesResponse>>;
22
+
23
+ // Agregado en v3.1.0 — consume GET /catalog/standard del conector.
24
+ // Consumido por CatalogTreeBuilder en benefits-marketplace-business.
25
+ getStandardCatalog(params?: { benefitId?: string; includeDisabled?: boolean }): Promise<ApiGatewayResponse<ConnectorCatalogResponse>>;
26
+
27
+ // Agregado en v3.5.0 (Fase 2) — consume POST /pay/standard del conector con DTO estandarizado.
28
+ // Lo invoca el PaymentRouter de benefits-marketplace-business.
29
+ payStandard(request: BenefitPaymentRequest): Promise<ApiGatewayResponse<BenefitPaymentResponse>>;
30
+
31
+ // Agregado en v3.6.0 (Fase 2.5) — consume GET /pay/standard/transactions/{transactionNumber}
32
+ // del conector. Devuelve el estado actual mapeado a BenefitPaymentResponse (el conector
33
+ // hace el mapping legacy → estándar internamente). Usado por el cron de timeout
34
+ // reconciliation del marketplace para consultar transacciones async sin ver shapes legacy.
35
+ consultStandard(transactionNumber: string): Promise<ApiGatewayResponse<BenefitPaymentResponse>>;
36
+
37
+ // Agregado en v3.8.0 — consume PUT /backoffice/services/{idServicio} del conector
38
+ // admin. Consumido por LeafAdminManager de benefits-marketplace-business para
39
+ // edición editorial in-place (admin-leaves v2).
40
+ updateService(idServicio: number, patch: Record<string, unknown>): Promise<ApiGatewayResponse<any>>;
41
+
42
+ // POST /internal/services — alta manual de un servicio nuevo (admin-leaves v2).
43
+ // Consumido por LeafAdminManager de benefits-marketplace-business.
44
+ createService(payload: Record<string, unknown>): Promise<ApiGatewayResponse<any>>;
45
45
  }
@@ -1,2 +1,2 @@
1
- export * from './api/interfaces/IMulticommServicePaymentApi';
1
+ export * from './api/interfaces/IMulticommServicePaymentApi';
2
2
  export * from './api/MulticommServicePaymentApi';
@@ -1,2 +1,2 @@
1
- export * from './queue/NotificationMessagePublisher';
1
+ export * from './queue/NotificationMessagePublisher';
2
2
  export * from './queue/interfaces/INotificationMessagesPublisher';
@@ -1,43 +1,43 @@
1
- import {INotificationMessagesPublisher} from "./interfaces/INotificationMessagesPublisher";
2
- import {NotificationQueueMessageRequest, NotificationTemplate} from "@fiado/type-kit/bin/notificationMessages";
3
- import {SendMessageCommand, SendMessageRequest, SQSClient} from "@aws-sdk/client-sqs";
4
- import {inject, injectable} from "inversify";
5
- import { IHttpRequest } from "@fiado/http-client";
6
- import FiadoApiResponse from "@fiado/type-kit/bin/apiResponse/dtos/FiadoApiResponse";
7
-
8
- @injectable()
9
- export default class NotificationMessagePublisher implements INotificationMessagesPublisher {
10
-
11
- constructor(
12
- @inject("IHttpRequest") private httpRequest: IHttpRequest
13
- ) {}
14
-
15
-
16
- private readonly NOTIFICATION_MESSAGES_QUEUE = process.env.NOTIFICATION_MESSAGES_QUEUE
17
- private readonly NOTIFICATION_MESSAGES_URL = process.env.NOTIFICATION_MESSAGES_URL;
18
-
19
- async publish(message: NotificationQueueMessageRequest): Promise<void> {
20
- try {
21
- const client: SQSClient = new SQSClient();
22
- const sendMessageRequest: SendMessageRequest = {
23
- QueueUrl: this.NOTIFICATION_MESSAGES_QUEUE,
24
- MessageBody: JSON.stringify(message)
25
- };
26
- const command: SendMessageCommand = new SendMessageCommand(sendMessageRequest);
27
- await client.send(command);
28
- } catch (error) {
29
- const errorMessage = error instanceof Error ? error.message : String(error);
30
- throw new Error(`Error publishing message to queue ${': ' + errorMessage}`);
31
- }
32
- }
33
-
34
- async getTemplateById(templateId: string): Promise<FiadoApiResponse<NotificationTemplate>> {
35
- const url = `${this.NOTIFICATION_MESSAGES_URL}notification-messages/private/templates/${templateId}`;
36
- return await this.httpRequest.get(`${url}`);
37
- }
38
-
39
- async deleteByDirectoryId(directoryId: string): Promise<void> {
40
- const url = `${this.NOTIFICATION_MESSAGES_URL}notification-messages/private/directory/${directoryId}`;
41
- return await this.httpRequest.delete(`${url}`);
42
- }
1
+ import {INotificationMessagesPublisher} from "./interfaces/INotificationMessagesPublisher";
2
+ import {NotificationQueueMessageRequest, NotificationTemplate} from "@fiado/type-kit/bin/notificationMessages";
3
+ import {SendMessageCommand, SendMessageRequest, SQSClient} from "@aws-sdk/client-sqs";
4
+ import {inject, injectable} from "inversify";
5
+ import { IHttpRequest } from "@fiado/http-client";
6
+ import FiadoApiResponse from "@fiado/type-kit/bin/apiResponse/dtos/FiadoApiResponse";
7
+
8
+ @injectable()
9
+ export default class NotificationMessagePublisher implements INotificationMessagesPublisher {
10
+
11
+ constructor(
12
+ @inject("IHttpRequest") private httpRequest: IHttpRequest
13
+ ) {}
14
+
15
+
16
+ private readonly NOTIFICATION_MESSAGES_QUEUE = process.env.NOTIFICATION_MESSAGES_QUEUE
17
+ private readonly NOTIFICATION_MESSAGES_URL = process.env.NOTIFICATION_MESSAGES_URL;
18
+
19
+ async publish(message: NotificationQueueMessageRequest): Promise<void> {
20
+ try {
21
+ const client: SQSClient = new SQSClient();
22
+ const sendMessageRequest: SendMessageRequest = {
23
+ QueueUrl: this.NOTIFICATION_MESSAGES_QUEUE,
24
+ MessageBody: JSON.stringify(message)
25
+ };
26
+ const command: SendMessageCommand = new SendMessageCommand(sendMessageRequest);
27
+ await client.send(command);
28
+ } catch (error) {
29
+ const errorMessage = error instanceof Error ? error.message : String(error);
30
+ throw new Error(`Error publishing message to queue ${': ' + errorMessage}`);
31
+ }
32
+ }
33
+
34
+ async getTemplateById(templateId: string): Promise<FiadoApiResponse<NotificationTemplate>> {
35
+ const url = `${this.NOTIFICATION_MESSAGES_URL}notification-messages/private/templates/${templateId}`;
36
+ return await this.httpRequest.get(`${url}`);
37
+ }
38
+
39
+ async deleteByDirectoryId(directoryId: string): Promise<void> {
40
+ const url = `${this.NOTIFICATION_MESSAGES_URL}notification-messages/private/directory/${directoryId}`;
41
+ return await this.httpRequest.delete(`${url}`);
42
+ }
43
43
  }
@@ -1,8 +1,8 @@
1
- import FiadoApiResponse from "@fiado/type-kit/bin/apiResponse/dtos/FiadoApiResponse";
2
- import {NotificationQueueMessageRequest, NotificationTemplate} from "@fiado/type-kit/bin/notificationMessages";
3
-
4
- export interface INotificationMessagesPublisher {
5
- publish(message: NotificationQueueMessageRequest): Promise<void>;
6
- getTemplateById(templateId: string): Promise<FiadoApiResponse<NotificationTemplate>>;
7
- deleteByDirectoryId(directoryId: string): Promise<void>;
1
+ import FiadoApiResponse from "@fiado/type-kit/bin/apiResponse/dtos/FiadoApiResponse";
2
+ import {NotificationQueueMessageRequest, NotificationTemplate} from "@fiado/type-kit/bin/notificationMessages";
3
+
4
+ export interface INotificationMessagesPublisher {
5
+ publish(message: NotificationQueueMessageRequest): Promise<void>;
6
+ getTemplateById(templateId: string): Promise<FiadoApiResponse<NotificationTemplate>>;
7
+ deleteByDirectoryId(directoryId: string): Promise<void>;
8
8
  }
@@ -1,2 +1,2 @@
1
- export * from './queue/NotificationWSMessagePublisher';
1
+ export * from './queue/NotificationWSMessagePublisher';
2
2
  export * from './queue/interfaces/INotificationWSMessagesPublisher';
@@ -1,30 +1,30 @@
1
- import {INotificationWSMessagesPublisher} from "./interfaces/INotificationWSMessagesPublisher";
2
- import {NotificationWSQueueMessageRequest} from "@fiado/type-kit/bin/notificationWS";
3
- import {SendMessageCommand, SendMessageRequest, SQSClient} from "@aws-sdk/client-sqs";
4
- import {injectable} from "inversify";
5
- import crypto from "crypto";
6
-
7
-
8
- @injectable()
9
- export default class NotificationWSMessagePublisher implements INotificationWSMessagesPublisher {
10
-
11
- constructor() {}
12
-
13
- private readonly NOTIFICATION_WS_MESSAGES_QUEUE = process.env.NOTIFICATION_WS_MESSAGES_QUEUE
14
-
15
- async publish(message: NotificationWSQueueMessageRequest<any>): Promise<void> {
16
- try {
17
- const client: SQSClient = new SQSClient();
18
- const sendMessageRequest: SendMessageRequest = {
19
- QueueUrl: this.NOTIFICATION_WS_MESSAGES_QUEUE,
20
- MessageBody: JSON.stringify(message),
21
- MessageGroupId: "NotificationWSGroup",
22
- MessageDeduplicationId: crypto.randomUUID()
23
- };
24
- const command: SendMessageCommand = new SendMessageCommand(sendMessageRequest);
25
- await client.send(command);
26
- } catch (error) {
27
- const errorMessage = error instanceof Error ? error.message : String(error);
28
- throw new Error(`Error publishing message to queue ${': ' + errorMessage}`);
29
- }
1
+ import {INotificationWSMessagesPublisher} from "./interfaces/INotificationWSMessagesPublisher";
2
+ import {NotificationWSQueueMessageRequest} from "@fiado/type-kit/bin/notificationWS";
3
+ import {SendMessageCommand, SendMessageRequest, SQSClient} from "@aws-sdk/client-sqs";
4
+ import {injectable} from "inversify";
5
+ import crypto from "crypto";
6
+
7
+
8
+ @injectable()
9
+ export default class NotificationWSMessagePublisher implements INotificationWSMessagesPublisher {
10
+
11
+ constructor() {}
12
+
13
+ private readonly NOTIFICATION_WS_MESSAGES_QUEUE = process.env.NOTIFICATION_WS_MESSAGES_QUEUE
14
+
15
+ async publish(message: NotificationWSQueueMessageRequest<any>): Promise<void> {
16
+ try {
17
+ const client: SQSClient = new SQSClient();
18
+ const sendMessageRequest: SendMessageRequest = {
19
+ QueueUrl: this.NOTIFICATION_WS_MESSAGES_QUEUE,
20
+ MessageBody: JSON.stringify(message),
21
+ MessageGroupId: "NotificationWSGroup",
22
+ MessageDeduplicationId: crypto.randomUUID()
23
+ };
24
+ const command: SendMessageCommand = new SendMessageCommand(sendMessageRequest);
25
+ await client.send(command);
26
+ } catch (error) {
27
+ const errorMessage = error instanceof Error ? error.message : String(error);
28
+ throw new Error(`Error publishing message to queue ${': ' + errorMessage}`);
29
+ }
30
30
  }}
@@ -1,5 +1,5 @@
1
- import { NotificationWSQueueMessageRequest } from "@fiado/type-kit/bin/notificationWS";
2
-
3
- export interface INotificationWSMessagesPublisher {
4
- publish(message: NotificationWSQueueMessageRequest<any>): Promise<void>;
1
+ import { NotificationWSQueueMessageRequest } from "@fiado/type-kit/bin/notificationWS";
2
+
3
+ export interface INotificationWSMessagesPublisher {
4
+ publish(message: NotificationWSQueueMessageRequest<any>): Promise<void>;
5
5
  }
@@ -1,23 +1,23 @@
1
- import dotenv from 'dotenv';
2
- import { inject, injectable } from "inversify";
3
- import { IHttpRequest } from "@fiado/http-client";
4
- import { IObservationsApi } from "./interfaces/IObservationsApi";
5
- import FiadoApiResponse from '@fiado/type-kit/bin/apiResponse/dtos/FiadoApiResponse';
6
- import { ObservationCreateRequest } from '@fiado/type-kit/bin/observations';
7
- dotenv.config();
8
-
9
- @injectable()
10
- export class ObservationsApi implements IObservationsApi {
11
-
12
- private readonly baseUrl = process.env.OBSERVATION_BUSINESS || "";
13
-
14
- constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) {}
15
-
16
- async create(data: ObservationCreateRequest, author?:string): Promise<FiadoApiResponse<any>> {
17
- const url: string = `${this.baseUrl}observations/create`;
18
- const objectData = JSON.parse(JSON.stringify(data));
19
- objectData.author = author;
20
- return await this.httpRequest.post(url,objectData);
21
- }
22
-
23
- }
1
+ import dotenv from 'dotenv';
2
+ import { inject, injectable } from "inversify";
3
+ import { IHttpRequest } from "@fiado/http-client";
4
+ import { IObservationsApi } from "./interfaces/IObservationsApi";
5
+ import FiadoApiResponse from '@fiado/type-kit/bin/apiResponse/dtos/FiadoApiResponse';
6
+ import { ObservationCreateRequest } from '@fiado/type-kit/bin/observations';
7
+ dotenv.config();
8
+
9
+ @injectable()
10
+ export class ObservationsApi implements IObservationsApi {
11
+
12
+ private readonly baseUrl = process.env.OBSERVATION_BUSINESS || "";
13
+
14
+ constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) {}
15
+
16
+ async create(data: ObservationCreateRequest, author?:string): Promise<FiadoApiResponse<any>> {
17
+ const url: string = `${this.baseUrl}observations/create`;
18
+ const objectData = JSON.parse(JSON.stringify(data));
19
+ objectData.author = author;
20
+ return await this.httpRequest.post(url,objectData);
21
+ }
22
+
23
+ }
@@ -1,3 +1,3 @@
1
-
2
- export * from './interfaces/IObservationsApi';
3
- export * from './ObservationsApi';
1
+
2
+ export * from './interfaces/IObservationsApi';
3
+ export * from './ObservationsApi';
@@ -1,9 +1,9 @@
1
- import FiadoApiResponse from '@fiado/type-kit/bin/apiResponse/dtos/FiadoApiResponse';
2
- import { ObservationCreateRequest } from '@fiado/type-kit/bin/observations';
3
-
4
- /**
5
- * Interfaz para el servicio de Observations
6
- */
7
- export interface IObservationsApi {
8
- create(data: ObservationCreateRequest ,author?:string): Promise<FiadoApiResponse<any>>;
9
- }
1
+ import FiadoApiResponse from '@fiado/type-kit/bin/apiResponse/dtos/FiadoApiResponse';
2
+ import { ObservationCreateRequest } from '@fiado/type-kit/bin/observations';
3
+
4
+ /**
5
+ * Interfaz para el servicio de Observations
6
+ */
7
+ export interface IObservationsApi {
8
+ create(data: ObservationCreateRequest ,author?:string): Promise<FiadoApiResponse<any>>;
9
+ }
@@ -1,23 +1,23 @@
1
- import { inject, injectable } from "inversify";
2
- import { IHttpRequest } from "@fiado/http-client";
3
- import { IOnboardingApi } from "./interfaces/IOnboardingApi";
4
-
5
-
6
- @injectable()
7
- export default class OnboardingApi implements IOnboardingApi {
8
-
9
- private readonly baseUrl = process.env.ONBOARDING_LAMBDA_URL || "";
10
-
11
- constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) {
12
- }
13
-
14
- async getByReferralDirectoryId(referralDirectoryId: string): Promise<any> {
15
- const url = `${this.baseUrl}all?referralDirectoryId=${referralDirectoryId}`;
16
- return await this.httpRequest.get(`${url}`);
17
- }
18
-
19
- async delete(id: string): Promise<any> {
20
- const url = `${this.baseUrl}onboarding/${id}`;
21
- return await this.httpRequest.delete(`${url}`);
22
- }
23
- }
1
+ import { inject, injectable } from "inversify";
2
+ import { IHttpRequest } from "@fiado/http-client";
3
+ import { IOnboardingApi } from "./interfaces/IOnboardingApi";
4
+
5
+
6
+ @injectable()
7
+ export default class OnboardingApi implements IOnboardingApi {
8
+
9
+ private readonly baseUrl = process.env.ONBOARDING_LAMBDA_URL || "";
10
+
11
+ constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) {
12
+ }
13
+
14
+ async getByReferralDirectoryId(referralDirectoryId: string): Promise<any> {
15
+ const url = `${this.baseUrl}all?referralDirectoryId=${referralDirectoryId}`;
16
+ return await this.httpRequest.get(`${url}`);
17
+ }
18
+
19
+ async delete(id: string): Promise<any> {
20
+ const url = `${this.baseUrl}onboarding/${id}`;
21
+ return await this.httpRequest.delete(`${url}`);
22
+ }
23
+ }
@@ -1,4 +1,4 @@
1
- export interface IOnboardingApi {
2
- delete(id: string): Promise<any>
3
- getByReferralDirectoryId(referralDirectoryId: string): Promise<any>
1
+ export interface IOnboardingApi {
2
+ delete(id: string): Promise<any>
3
+ getByReferralDirectoryId(referralDirectoryId: string): Promise<any>
4
4
  }
@@ -1,2 +1,2 @@
1
- export * from './api/OnboardingApi';
1
+ export * from './api/OnboardingApi';
2
2
  export * from './api/interfaces/IOnboardingApi';