@fiado/api-invoker 1.5.46 → 1.5.47

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 (98) hide show
  1. package/bin/cognitoConnector/CognitoConnectorV2.d.ts +10 -0
  2. package/bin/cognitoConnector/CognitoConnectorV2.js +5 -0
  3. package/bin/cognitoConnector/interfaces/ICognitoV2Api.d.ts +13 -0
  4. package/bin/container.config.js +29 -0
  5. package/bin/credit-engine/CreditEngineApi.d.ts +13 -0
  6. package/bin/credit-engine/CreditEngineApi.js +54 -0
  7. package/bin/credit-engine/index.d.ts +12 -0
  8. package/bin/credit-engine/index.js +29 -0
  9. package/bin/credit-engine/interfaces/ICreditEngineApi.d.ts +28 -0
  10. package/bin/credit-engine/interfaces/ICreditEngineApi.js +2 -0
  11. package/bin/credit-engine/queue/CreditCollectionPublisher.d.ts +6 -0
  12. package/bin/credit-engine/queue/CreditCollectionPublisher.js +33 -0
  13. package/bin/credit-engine/queue/CreditDelinquencyPublisher.d.ts +6 -0
  14. package/bin/credit-engine/queue/CreditDelinquencyPublisher.js +33 -0
  15. package/bin/credit-engine/queue/CreditIncomeDetectionPublisher.d.ts +6 -0
  16. package/bin/credit-engine/queue/CreditIncomeDetectionPublisher.js +33 -0
  17. package/bin/credit-engine/queue/CreditLienCollectionPublisher.d.ts +6 -0
  18. package/bin/credit-engine/queue/CreditLienCollectionPublisher.js +33 -0
  19. package/bin/credit-engine/queue/CreditNotificationPublisher.d.ts +6 -0
  20. package/bin/credit-engine/queue/CreditNotificationPublisher.js +33 -0
  21. package/bin/credit-engine/queue/CreditOfferGenerationPublisher.d.ts +6 -0
  22. package/bin/credit-engine/queue/CreditOfferGenerationPublisher.js +33 -0
  23. package/bin/credit-engine/queue/CreditReconciliationPublisher.d.ts +6 -0
  24. package/bin/credit-engine/queue/CreditReconciliationPublisher.js +33 -0
  25. package/bin/credit-engine/queue/CreditScoringPublisher.d.ts +6 -0
  26. package/bin/credit-engine/queue/CreditScoringPublisher.js +33 -0
  27. package/bin/credit-engine/queue/CreditStatementPublisher.d.ts +6 -0
  28. package/bin/credit-engine/queue/CreditStatementPublisher.js +33 -0
  29. package/bin/credit-engine/queue/CreditTransferPublisher.d.ts +6 -0
  30. package/bin/credit-engine/queue/CreditTransferPublisher.js +33 -0
  31. package/bin/credit-engine/queue/interfaces/ICreditCollectionPublisher.d.ts +4 -0
  32. package/bin/credit-engine/queue/interfaces/ICreditCollectionPublisher.js +2 -0
  33. package/bin/credit-engine/queue/interfaces/ICreditDelinquencyPublisher.d.ts +4 -0
  34. package/bin/credit-engine/queue/interfaces/ICreditDelinquencyPublisher.js +2 -0
  35. package/bin/credit-engine/queue/interfaces/ICreditIncomeDetectionPublisher.d.ts +4 -0
  36. package/bin/credit-engine/queue/interfaces/ICreditIncomeDetectionPublisher.js +2 -0
  37. package/bin/credit-engine/queue/interfaces/ICreditLienCollectionPublisher.d.ts +4 -0
  38. package/bin/credit-engine/queue/interfaces/ICreditLienCollectionPublisher.js +2 -0
  39. package/bin/credit-engine/queue/interfaces/ICreditNotificationPublisher.d.ts +4 -0
  40. package/bin/credit-engine/queue/interfaces/ICreditNotificationPublisher.js +2 -0
  41. package/bin/credit-engine/queue/interfaces/ICreditOfferGenerationPublisher.d.ts +4 -0
  42. package/bin/credit-engine/queue/interfaces/ICreditOfferGenerationPublisher.js +2 -0
  43. package/bin/credit-engine/queue/interfaces/ICreditReconciliationPublisher.d.ts +4 -0
  44. package/bin/credit-engine/queue/interfaces/ICreditReconciliationPublisher.js +2 -0
  45. package/bin/credit-engine/queue/interfaces/ICreditScoringPublisher.d.ts +4 -0
  46. package/bin/credit-engine/queue/interfaces/ICreditScoringPublisher.js +2 -0
  47. package/bin/credit-engine/queue/interfaces/ICreditStatementPublisher.d.ts +4 -0
  48. package/bin/credit-engine/queue/interfaces/ICreditStatementPublisher.js +2 -0
  49. package/bin/credit-engine/queue/interfaces/ICreditTransferPublisher.d.ts +4 -0
  50. package/bin/credit-engine/queue/interfaces/ICreditTransferPublisher.js +2 -0
  51. package/bin/credit-payment/CreditPaymentApi.d.ts +21 -0
  52. package/bin/credit-payment/CreditPaymentApi.js +78 -0
  53. package/bin/credit-payment/index.d.ts +2 -0
  54. package/bin/credit-payment/index.js +18 -0
  55. package/bin/credit-payment/interfaces/ICreditPaymentApi.d.ts +43 -0
  56. package/bin/credit-payment/interfaces/ICreditPaymentApi.js +2 -0
  57. package/bin/document-generator/DocumentGeneratorApi.d.ts +17 -0
  58. package/bin/document-generator/DocumentGeneratorApi.js +63 -0
  59. package/bin/document-generator/index.d.ts +2 -0
  60. package/bin/document-generator/index.js +18 -0
  61. package/bin/document-generator/interfaces/IDocumentGeneratorApi.d.ts +30 -0
  62. package/bin/document-generator/interfaces/IDocumentGeneratorApi.js +2 -0
  63. package/bin/index.d.ts +3 -0
  64. package/bin/index.js +3 -0
  65. package/package.json +2 -2
  66. package/src/cognitoConnector/CognitoConnectorV2.ts +6 -0
  67. package/src/cognitoConnector/interfaces/ICognitoV2Api.ts +5 -0
  68. package/src/container.config.ts +44 -0
  69. package/src/credit-engine/CreditEngineApi.ts +40 -0
  70. package/src/credit-engine/index.ts +14 -0
  71. package/src/credit-engine/interfaces/ICreditEngineApi.ts +33 -0
  72. package/src/credit-engine/queue/CreditCollectionPublisher.ts +23 -0
  73. package/src/credit-engine/queue/CreditDelinquencyPublisher.ts +23 -0
  74. package/src/credit-engine/queue/CreditIncomeDetectionPublisher.ts +23 -0
  75. package/src/credit-engine/queue/CreditLienCollectionPublisher.ts +23 -0
  76. package/src/credit-engine/queue/CreditNotificationPublisher.ts +23 -0
  77. package/src/credit-engine/queue/CreditOfferGenerationPublisher.ts +23 -0
  78. package/src/credit-engine/queue/CreditReconciliationPublisher.ts +23 -0
  79. package/src/credit-engine/queue/CreditScoringPublisher.ts +23 -0
  80. package/src/credit-engine/queue/CreditStatementPublisher.ts +23 -0
  81. package/src/credit-engine/queue/CreditTransferPublisher.ts +23 -0
  82. package/src/credit-engine/queue/interfaces/ICreditCollectionPublisher.ts +5 -0
  83. package/src/credit-engine/queue/interfaces/ICreditDelinquencyPublisher.ts +5 -0
  84. package/src/credit-engine/queue/interfaces/ICreditIncomeDetectionPublisher.ts +5 -0
  85. package/src/credit-engine/queue/interfaces/ICreditLienCollectionPublisher.ts +5 -0
  86. package/src/credit-engine/queue/interfaces/ICreditNotificationPublisher.ts +5 -0
  87. package/src/credit-engine/queue/interfaces/ICreditOfferGenerationPublisher.ts +5 -0
  88. package/src/credit-engine/queue/interfaces/ICreditReconciliationPublisher.ts +5 -0
  89. package/src/credit-engine/queue/interfaces/ICreditScoringPublisher.ts +5 -0
  90. package/src/credit-engine/queue/interfaces/ICreditStatementPublisher.ts +5 -0
  91. package/src/credit-engine/queue/interfaces/ICreditTransferPublisher.ts +5 -0
  92. package/src/credit-payment/CreditPaymentApi.ts +72 -0
  93. package/src/credit-payment/index.ts +2 -0
  94. package/src/credit-payment/interfaces/ICreditPaymentApi.ts +52 -0
  95. package/src/document-generator/DocumentGeneratorApi.ts +50 -0
  96. package/src/document-generator/index.ts +2 -0
  97. package/src/document-generator/interfaces/IDocumentGeneratorApi.ts +33 -0
  98. package/src/index.ts +3 -0
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ const client_sqs_1 = require("@aws-sdk/client-sqs");
10
+ const inversify_1 = require("inversify");
11
+ let CreditTransferPublisher = class CreditTransferPublisher {
12
+ constructor() {
13
+ this.QUEUE_URL = process.env.CREDIT_TRANSFER_QUEUE;
14
+ }
15
+ async publish(message) {
16
+ try {
17
+ const client = new client_sqs_1.SQSClient();
18
+ const sendMessageRequest = {
19
+ QueueUrl: this.QUEUE_URL,
20
+ MessageBody: JSON.stringify(message)
21
+ };
22
+ const command = new client_sqs_1.SendMessageCommand(sendMessageRequest);
23
+ await client.send(command);
24
+ }
25
+ catch (error) {
26
+ throw new Error(`Error publishing message to CreditTransferQueue${': ' + error.message}`);
27
+ }
28
+ }
29
+ };
30
+ CreditTransferPublisher = __decorate([
31
+ (0, inversify_1.injectable)()
32
+ ], CreditTransferPublisher);
33
+ exports.default = CreditTransferPublisher;
@@ -0,0 +1,4 @@
1
+ import { CreditQueueMessage } from "@fiado/type-kit/bin/credit";
2
+ export interface ICreditCollectionPublisher {
3
+ publish(message: CreditQueueMessage): Promise<void>;
4
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,4 @@
1
+ import { CreditQueueMessage } from "@fiado/type-kit/bin/credit";
2
+ export interface ICreditDelinquencyPublisher {
3
+ publish(message: CreditQueueMessage): Promise<void>;
4
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,4 @@
1
+ import { CreditQueueMessage } from "@fiado/type-kit/bin/credit";
2
+ export interface ICreditIncomeDetectionPublisher {
3
+ publish(message: CreditQueueMessage): Promise<void>;
4
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,4 @@
1
+ import { CreditQueueMessage } from "@fiado/type-kit/bin/credit";
2
+ export interface ICreditLienCollectionPublisher {
3
+ publish(message: CreditQueueMessage): Promise<void>;
4
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,4 @@
1
+ import { CreditQueueMessage } from "@fiado/type-kit/bin/credit";
2
+ export interface ICreditNotificationPublisher {
3
+ publish(message: CreditQueueMessage): Promise<void>;
4
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,4 @@
1
+ import { CreditQueueMessage } from "@fiado/type-kit/bin/credit";
2
+ export interface ICreditOfferGenerationPublisher {
3
+ publish(message: CreditQueueMessage): Promise<void>;
4
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,4 @@
1
+ import { CreditQueueMessage } from "@fiado/type-kit/bin/credit";
2
+ export interface ICreditReconciliationPublisher {
3
+ publish(message: CreditQueueMessage): Promise<void>;
4
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,4 @@
1
+ import { CreditQueueMessage } from "@fiado/type-kit/bin/credit";
2
+ export interface ICreditScoringPublisher {
3
+ publish(message: CreditQueueMessage): Promise<void>;
4
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,4 @@
1
+ import { CreditQueueMessage } from "@fiado/type-kit/bin/credit";
2
+ export interface ICreditStatementPublisher {
3
+ publish(message: CreditQueueMessage): Promise<void>;
4
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,4 @@
1
+ import { CreditQueueMessage } from "@fiado/type-kit/bin/credit";
2
+ export interface ICreditTransferPublisher {
3
+ publish(message: CreditQueueMessage): Promise<void>;
4
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,21 @@
1
+ import { IHttpRequest } from "@fiado/http-client";
2
+ import { ICreditPaymentApi } from "./interfaces/ICreditPaymentApi";
3
+ import { CreditDisbursementRequest, CreditDisbursementResponse } from "@fiado/type-kit/bin/credit";
4
+ import { CreditCollectionRequest, CreditCollectionResponse } from "@fiado/type-kit/bin/credit";
5
+ import { CreditTransferLoancoRequest, CreditTransferLoancoResponse } from "@fiado/type-kit/bin/credit";
6
+ import { CreditReversalRequest, CreditReversalResponse } from "@fiado/type-kit/bin/credit";
7
+ import { CreditBalanceResponse } from "@fiado/type-kit/bin/credit";
8
+ export declare class CreditPaymentApi implements ICreditPaymentApi {
9
+ private httpRequest;
10
+ private readonly baseUrl;
11
+ constructor(httpRequest: IHttpRequest);
12
+ disburse(request: CreditDisbursementRequest): Promise<CreditDisbursementResponse>;
13
+ collect(request: CreditCollectionRequest): Promise<CreditCollectionResponse>;
14
+ collectPartial(request: CreditCollectionRequest): Promise<CreditCollectionResponse>;
15
+ collectLien(request: CreditCollectionRequest): Promise<CreditCollectionResponse>;
16
+ earlyPayment(request: CreditCollectionRequest): Promise<CreditCollectionResponse>;
17
+ transferLoanco(request: CreditTransferLoancoRequest): Promise<CreditTransferLoancoResponse>;
18
+ reverse(request: CreditReversalRequest): Promise<CreditReversalResponse>;
19
+ getBalance(creditId: string): Promise<CreditBalanceResponse>;
20
+ getHistory(creditId: string): Promise<any>;
21
+ }
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ var __importDefault = (this && this.__importDefault) || function (mod) {
15
+ return (mod && mod.__esModule) ? mod : { "default": mod };
16
+ };
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.CreditPaymentApi = void 0;
19
+ const dotenv_1 = __importDefault(require("dotenv"));
20
+ const inversify_1 = require("inversify");
21
+ dotenv_1.default.config();
22
+ let CreditPaymentApi = class CreditPaymentApi {
23
+ constructor(httpRequest) {
24
+ this.httpRequest = httpRequest;
25
+ this.baseUrl = process.env.CREDIT_PAYMENT_LAMBDA_URL || "";
26
+ }
27
+ async disburse(request) {
28
+ const url = `${this.baseUrl}credit/disburse`;
29
+ const operationName = "creditDisburse";
30
+ return await this.httpRequest.post(url, request, { 'operationName': operationName });
31
+ }
32
+ async collect(request) {
33
+ const url = `${this.baseUrl}credit/collect`;
34
+ const operationName = "creditCollect";
35
+ return await this.httpRequest.post(url, request, { 'operationName': operationName });
36
+ }
37
+ async collectPartial(request) {
38
+ const url = `${this.baseUrl}credit/collect-partial`;
39
+ const operationName = "creditCollectPartial";
40
+ return await this.httpRequest.post(url, request, { 'operationName': operationName });
41
+ }
42
+ async collectLien(request) {
43
+ const url = `${this.baseUrl}credit/collect-lien`;
44
+ const operationName = "creditCollectLien";
45
+ return await this.httpRequest.post(url, request, { 'operationName': operationName });
46
+ }
47
+ async earlyPayment(request) {
48
+ const url = `${this.baseUrl}credit/early-payment`;
49
+ const operationName = "creditEarlyPayment";
50
+ return await this.httpRequest.post(url, request, { 'operationName': operationName });
51
+ }
52
+ async transferLoanco(request) {
53
+ const url = `${this.baseUrl}credit/transfer-loanco`;
54
+ const operationName = "creditTransferLoanco";
55
+ return await this.httpRequest.post(url, request, { 'operationName': operationName });
56
+ }
57
+ async reverse(request) {
58
+ const url = `${this.baseUrl}credit/reverse`;
59
+ const operationName = "creditReverse";
60
+ return await this.httpRequest.post(url, request, { 'operationName': operationName });
61
+ }
62
+ async getBalance(creditId) {
63
+ const url = `${this.baseUrl}credit/balance/${creditId}`;
64
+ const operationName = "creditBalance";
65
+ return await this.httpRequest.post(url, null, { 'operationName': operationName });
66
+ }
67
+ async getHistory(creditId) {
68
+ const url = `${this.baseUrl}credit/history/${creditId}`;
69
+ const operationName = "creditHistory";
70
+ return await this.httpRequest.post(url, null, { 'operationName': operationName });
71
+ }
72
+ };
73
+ exports.CreditPaymentApi = CreditPaymentApi;
74
+ exports.CreditPaymentApi = CreditPaymentApi = __decorate([
75
+ (0, inversify_1.injectable)(),
76
+ __param(0, (0, inversify_1.inject)("IHttpRequest")),
77
+ __metadata("design:paramtypes", [Object])
78
+ ], CreditPaymentApi);
@@ -0,0 +1,2 @@
1
+ export * from './interfaces/ICreditPaymentApi';
2
+ export * from './CreditPaymentApi';
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./interfaces/ICreditPaymentApi"), exports);
18
+ __exportStar(require("./CreditPaymentApi"), exports);
@@ -0,0 +1,43 @@
1
+ import { CreditDisbursementRequest, CreditDisbursementResponse } from "@fiado/type-kit/bin/credit";
2
+ import { CreditCollectionRequest, CreditCollectionResponse } from "@fiado/type-kit/bin/credit";
3
+ import { CreditTransferLoancoRequest, CreditTransferLoancoResponse } from "@fiado/type-kit/bin/credit";
4
+ import { CreditReversalRequest, CreditReversalResponse } from "@fiado/type-kit/bin/credit";
5
+ import { CreditBalanceResponse } from "@fiado/type-kit/bin/credit";
6
+ export interface ICreditPaymentApi {
7
+ /**
8
+ * Desembolsa el monto del crédito a la cuenta del usuario.
9
+ */
10
+ disburse(request: CreditDisbursementRequest): Promise<CreditDisbursementResponse>;
11
+ /**
12
+ * Cobra el cupón regular de un crédito.
13
+ */
14
+ collect(request: CreditCollectionRequest): Promise<CreditCollectionResponse>;
15
+ /**
16
+ * Cobra un monto parcial (insuficiente para cupón completo).
17
+ */
18
+ collectPartial(request: CreditCollectionRequest): Promise<CreditCollectionResponse>;
19
+ /**
20
+ * Cobra por cobro latente (lien sobre depósito).
21
+ */
22
+ collectLien(request: CreditCollectionRequest): Promise<CreditCollectionResponse>;
23
+ /**
24
+ * Procesa un pago anticipado/adelantado/liquidación.
25
+ */
26
+ earlyPayment(request: CreditCollectionRequest): Promise<CreditCollectionResponse>;
27
+ /**
28
+ * Transfiere fondos recaudados a LoanCo.
29
+ */
30
+ transferLoanco(request: CreditTransferLoancoRequest): Promise<CreditTransferLoancoResponse>;
31
+ /**
32
+ * Reversa una transacción de crédito.
33
+ */
34
+ reverse(request: CreditReversalRequest): Promise<CreditReversalResponse>;
35
+ /**
36
+ * Consulta el balance de un crédito.
37
+ */
38
+ getBalance(creditId: string): Promise<CreditBalanceResponse>;
39
+ /**
40
+ * Obtiene historial de transacciones de un crédito.
41
+ */
42
+ getHistory(creditId: string): Promise<any>;
43
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,17 @@
1
+ import { IHttpRequest } from "@fiado/http-client";
2
+ import { IDocumentGeneratorApi } from "./interfaces/IDocumentGeneratorApi";
3
+ import { DocumentGenerateRequest, DocumentGenerateResponse } from "@fiado/type-kit/bin/credit";
4
+ export declare class DocumentGeneratorApi implements IDocumentGeneratorApi {
5
+ private httpRequest;
6
+ private readonly baseUrl;
7
+ constructor(httpRequest: IHttpRequest);
8
+ generate(request: DocumentGenerateRequest): Promise<DocumentGenerateResponse>;
9
+ sign(documentId: string): Promise<DocumentGenerateResponse>;
10
+ generateAndSign(request: DocumentGenerateRequest): Promise<DocumentGenerateResponse>;
11
+ getDocument(documentId: string): Promise<DocumentGenerateResponse>;
12
+ getDocumentUrl(documentId: string): Promise<{
13
+ url: string;
14
+ expiresAt: string;
15
+ }>;
16
+ getDocumentByReference(type: string, referenceId: string): Promise<DocumentGenerateResponse[]>;
17
+ }
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ var __importDefault = (this && this.__importDefault) || function (mod) {
15
+ return (mod && mod.__esModule) ? mod : { "default": mod };
16
+ };
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.DocumentGeneratorApi = void 0;
19
+ const dotenv_1 = __importDefault(require("dotenv"));
20
+ const inversify_1 = require("inversify");
21
+ dotenv_1.default.config();
22
+ let DocumentGeneratorApi = class DocumentGeneratorApi {
23
+ constructor(httpRequest) {
24
+ this.httpRequest = httpRequest;
25
+ this.baseUrl = process.env.DOCUMENT_GENERATOR_LAMBDA_URL || "";
26
+ }
27
+ async generate(request) {
28
+ const url = `${this.baseUrl}document/generate`;
29
+ const operationName = "documentGenerate";
30
+ return await this.httpRequest.post(url, request, { 'operationName': operationName });
31
+ }
32
+ async sign(documentId) {
33
+ const url = `${this.baseUrl}document/sign`;
34
+ const operationName = "documentSign";
35
+ return await this.httpRequest.post(url, { documentId }, { 'operationName': operationName });
36
+ }
37
+ async generateAndSign(request) {
38
+ const url = `${this.baseUrl}document/generate-and-sign`;
39
+ const operationName = "documentGenerateAndSign";
40
+ return await this.httpRequest.post(url, request, { 'operationName': operationName });
41
+ }
42
+ async getDocument(documentId) {
43
+ const url = `${this.baseUrl}document/${documentId}`;
44
+ const operationName = "documentGetDocument";
45
+ return await this.httpRequest.post(url, null, { 'operationName': operationName });
46
+ }
47
+ async getDocumentUrl(documentId) {
48
+ const url = `${this.baseUrl}document/${documentId}/url`;
49
+ const operationName = "documentGetDocumentUrl";
50
+ return await this.httpRequest.post(url, null, { 'operationName': operationName });
51
+ }
52
+ async getDocumentByReference(type, referenceId) {
53
+ const url = `${this.baseUrl}document/by-reference/${type}/${referenceId}`;
54
+ const operationName = "documentGetDocumentByReference";
55
+ return await this.httpRequest.post(url, null, { 'operationName': operationName });
56
+ }
57
+ };
58
+ exports.DocumentGeneratorApi = DocumentGeneratorApi;
59
+ exports.DocumentGeneratorApi = DocumentGeneratorApi = __decorate([
60
+ (0, inversify_1.injectable)(),
61
+ __param(0, (0, inversify_1.inject)("IHttpRequest")),
62
+ __metadata("design:paramtypes", [Object])
63
+ ], DocumentGeneratorApi);
@@ -0,0 +1,2 @@
1
+ export * from './interfaces/IDocumentGeneratorApi';
2
+ export * from './DocumentGeneratorApi';
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./interfaces/IDocumentGeneratorApi"), exports);
18
+ __exportStar(require("./DocumentGeneratorApi"), exports);
@@ -0,0 +1,30 @@
1
+ import { DocumentGenerateRequest, DocumentGenerateResponse } from "@fiado/type-kit/bin/credit";
2
+ export interface IDocumentGeneratorApi {
3
+ /**
4
+ * Genera un documento PDF desde un template + datos.
5
+ */
6
+ generate(request: DocumentGenerateRequest): Promise<DocumentGenerateResponse>;
7
+ /**
8
+ * Firma un documento existente con TSA.
9
+ */
10
+ sign(documentId: string): Promise<DocumentGenerateResponse>;
11
+ /**
12
+ * Genera y firma un documento en un solo paso.
13
+ */
14
+ generateAndSign(request: DocumentGenerateRequest): Promise<DocumentGenerateResponse>;
15
+ /**
16
+ * Obtiene metadata de un documento.
17
+ */
18
+ getDocument(documentId: string): Promise<DocumentGenerateResponse>;
19
+ /**
20
+ * Obtiene signed URL para descarga.
21
+ */
22
+ getDocumentUrl(documentId: string): Promise<{
23
+ url: string;
24
+ expiresAt: string;
25
+ }>;
26
+ /**
27
+ * Busca documentos por tipo de referencia y ID.
28
+ */
29
+ getDocumentByReference(type: string, referenceId: string): Promise<DocumentGenerateResponse[]>;
30
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
package/bin/index.d.ts CHANGED
@@ -59,3 +59,6 @@ export * from "./people-business";
59
59
  export * from "./stp-business";
60
60
  export * from "./multicommServicePayment";
61
61
  export * from "./product-payment";
62
+ export * from "./credit-engine";
63
+ export * from "./credit-payment";
64
+ export * from "./document-generator";
package/bin/index.js CHANGED
@@ -75,3 +75,6 @@ __exportStar(require("./people-business"), exports);
75
75
  __exportStar(require("./stp-business"), exports);
76
76
  __exportStar(require("./multicommServicePayment"), exports);
77
77
  __exportStar(require("./product-payment"), exports);
78
+ __exportStar(require("./credit-engine"), exports);
79
+ __exportStar(require("./credit-payment"), exports);
80
+ __exportStar(require("./document-generator"), exports);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fiado/api-invoker",
3
- "version": "1.5.46",
3
+ "version": "1.5.47",
4
4
  "description": "Sirve como un puente entre diferentes funciones lambda, facilitando la comunicación entre ellas a través de invocaciones http",
5
5
  "main": "bin/index.js",
6
6
  "types": "bin/index.d.ts",
@@ -16,7 +16,7 @@
16
16
  "@fiado/gateway-adapter": "^1.1.50",
17
17
  "@fiado/http-client": "^1.0.7",
18
18
  "@fiado/logger": "^1.0.3",
19
- "@fiado/type-kit": "^2.1.45",
19
+ "@fiado/type-kit": "^3.0.0",
20
20
  "dotenv": "^16.4.7",
21
21
  "inversify": "^6.2.2",
22
22
  "reflect-metadata": "^0.2.2"
@@ -78,4 +78,10 @@ export default class CognitoApi implements ICognitoV2Api {
78
78
  const response: any = await this.httpRequest.post(url, request);
79
79
  return response.data;
80
80
  }
81
+
82
+ async updateUser(request: { identityId: string; typeOfDirectoryId: string; email?: string; emailVerified?: string; phoneNumber?: string; phoneNumberVerified?: string; secretNumberStatus?: string; username?: string }): Promise<void> {
83
+ const url = `${this.baseUrl}cognito/user`;
84
+ const response: any = await this.httpRequest.put(url, request);
85
+ return response.data;
86
+ }
81
87
  }
@@ -51,6 +51,11 @@ export interface ICognitoV2Api {
51
51
  * Reset a user's password
52
52
  */
53
53
  resetPassword(request: SetPasswordRequest): Promise<void>;
54
+
55
+ /**
56
+ * Update a user's attributes in Cognito
57
+ */
58
+ updateUser(request: { identityId: string; typeOfDirectoryId: string; email?: string; emailVerified?: string; phoneNumber?: string; phoneNumberVerified?: string; secretNumberStatus?: string; username?: string }): Promise<void>;
54
59
  }
55
60
 
56
61
  export interface HealthcheckResponse {
@@ -96,6 +96,33 @@ import { IMulticommServicePaymentApi } from "./multicommServicePayment";
96
96
  import MulticommServicePaymentApi from "./multicommServicePayment/api/MulticommServicePaymentApi";
97
97
  import { IProductPaymentApi } from "./product-payment";
98
98
  import ProductPaymentApi from "./product-payment/api/ProductPaymentApi";
99
+ // Credit module - API clients
100
+ import { CreditEngineApi, ICreditEngineApi } from "./credit-engine";
101
+ import { CreditPaymentApi, ICreditPaymentApi } from "./credit-payment";
102
+ import { DocumentGeneratorApi, IDocumentGeneratorApi } from "./document-generator";
103
+ // Credit module - SQS publishers
104
+ import {
105
+ ICreditIncomeDetectionPublisher,
106
+ ICreditScoringPublisher,
107
+ ICreditOfferGenerationPublisher,
108
+ ICreditCollectionPublisher,
109
+ ICreditDelinquencyPublisher,
110
+ ICreditTransferPublisher,
111
+ ICreditNotificationPublisher,
112
+ ICreditStatementPublisher,
113
+ ICreditReconciliationPublisher,
114
+ ICreditLienCollectionPublisher
115
+ } from "./credit-engine";
116
+ import CreditIncomeDetectionPublisher from "./credit-engine/queue/CreditIncomeDetectionPublisher";
117
+ import CreditScoringPublisher from "./credit-engine/queue/CreditScoringPublisher";
118
+ import CreditOfferGenerationPublisher from "./credit-engine/queue/CreditOfferGenerationPublisher";
119
+ import CreditCollectionPublisher from "./credit-engine/queue/CreditCollectionPublisher";
120
+ import CreditDelinquencyPublisher from "./credit-engine/queue/CreditDelinquencyPublisher";
121
+ import CreditTransferPublisher from "./credit-engine/queue/CreditTransferPublisher";
122
+ import CreditNotificationPublisher from "./credit-engine/queue/CreditNotificationPublisher";
123
+ import CreditStatementPublisher from "./credit-engine/queue/CreditStatementPublisher";
124
+ import CreditReconciliationPublisher from "./credit-engine/queue/CreditReconciliationPublisher";
125
+ import CreditLienCollectionPublisher from "./credit-engine/queue/CreditLienCollectionPublisher";
99
126
 
100
127
  export const apiInvokerBindings = new ContainerModule((bind: interfaces.Bind) => {
101
128
  // UTILS bindings
@@ -168,4 +195,21 @@ export const apiInvokerBindings = new ContainerModule((bind: interfaces.Bind) =>
168
195
  bind<IPeopleBusinessApi>("IPeopleBusinessApi").to(PeopleBusinessApi);
169
196
  bind<ISTPBusinessApi>("ISTPBusinessApi").to(STPBusinessApi);
170
197
  bind<IProductPaymentApi>("IProductPaymentApi").to(ProductPaymentApi);
198
+
199
+ // Credit module - API clients
200
+ bind<ICreditEngineApi>("ICreditEngineApi").to(CreditEngineApi);
201
+ bind<ICreditPaymentApi>("ICreditPaymentApi").to(CreditPaymentApi);
202
+ bind<IDocumentGeneratorApi>("IDocumentGeneratorApi").to(DocumentGeneratorApi);
203
+
204
+ // Credit module - SQS publishers
205
+ bind<ICreditIncomeDetectionPublisher>("ICreditIncomeDetectionPublisher").to(CreditIncomeDetectionPublisher);
206
+ bind<ICreditScoringPublisher>("ICreditScoringPublisher").to(CreditScoringPublisher);
207
+ bind<ICreditOfferGenerationPublisher>("ICreditOfferGenerationPublisher").to(CreditOfferGenerationPublisher);
208
+ bind<ICreditCollectionPublisher>("ICreditCollectionPublisher").to(CreditCollectionPublisher);
209
+ bind<ICreditDelinquencyPublisher>("ICreditDelinquencyPublisher").to(CreditDelinquencyPublisher);
210
+ bind<ICreditTransferPublisher>("ICreditTransferPublisher").to(CreditTransferPublisher);
211
+ bind<ICreditNotificationPublisher>("ICreditNotificationPublisher").to(CreditNotificationPublisher);
212
+ bind<ICreditStatementPublisher>("ICreditStatementPublisher").to(CreditStatementPublisher);
213
+ bind<ICreditReconciliationPublisher>("ICreditReconciliationPublisher").to(CreditReconciliationPublisher);
214
+ bind<ICreditLienCollectionPublisher>("ICreditLienCollectionPublisher").to(CreditLienCollectionPublisher);
171
215
  });
@@ -0,0 +1,40 @@
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";
6
+ import { LienStatusResponse } from "@fiado/type-kit/bin/credit";
7
+ dotenv.config();
8
+
9
+ @injectable()
10
+ export class CreditEngineApi implements ICreditEngineApi {
11
+
12
+ private readonly baseUrl = process.env.CREDIT_ENGINE_LAMBDA_URL || "";
13
+
14
+ constructor(@inject("IHttpRequest") private httpRequest: IHttpRequest) {}
15
+
16
+ public async getCreditProfile(directoryId: string): Promise<CreditProfileResponse> {
17
+ const url = `${this.baseUrl}credit/profile/${directoryId}`;
18
+ const operationName = "getCreditProfile";
19
+ return await this.httpRequest.post(url, null, { 'operationName': operationName });
20
+ }
21
+
22
+ public async getActiveCredit(directoryId: string): Promise<any> {
23
+ const url = `${this.baseUrl}credit/active/${directoryId}`;
24
+ const operationName = "getActiveCredit";
25
+ return await this.httpRequest.post(url, null, { 'operationName': operationName });
26
+ }
27
+
28
+ public async getLienStatus(directoryId: string): Promise<LienStatusResponse> {
29
+ const url = `${this.baseUrl}credit/lien/${directoryId}`;
30
+ const operationName = "getLienStatus";
31
+ return await this.httpRequest.post(url, null, { 'operationName': operationName });
32
+ }
33
+
34
+ public async applyLien(directoryId: string, creditId: string, active: boolean, percentage?: number, maxAmount?: number): Promise<any> {
35
+ const url = `${this.baseUrl}credit/lien/apply`;
36
+ const operationName = "applyLien";
37
+ const body = { directoryId, creditId, active, percentage, maxAmount };
38
+ return await this.httpRequest.post(url, body, { 'operationName': operationName });
39
+ }
40
+ }
@@ -0,0 +1,14 @@
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';