@fiado/api-invoker 5.97.0 → 5.99.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.
@@ -1,6 +1,6 @@
1
1
  import type { IHttpRequest } from "@fiado/http-client";
2
2
  import { StandardResponse } from "@fiado/gateway-adapter";
3
- import { AmortizationScheduleResponse, ComputeAmortizationScheduleRequest, ConsumePromotionRequest, PromotedSkusResponse, ConsumePromotionResponse, CreditPlanLevelEnum, CreditPlanResponse, FinancierResponse, ReservePromotionBonusRequest, ReservePromotionBonusResponse, ResolveCustomerSegmentsRequest, ResolveCustomerSegmentsResponse, ScopeWidePromotionsResponse, SkuPromotionsResponse, SettlePromotionBonusRequest, PromotionBonusResponse, SimulateCreditPlanRequest, SimulationResultResponse } from "@fiado/type-kit/bin/loanOfferings/index.js";
3
+ import { AmortizationScheduleResponse, ComputeAmortizationScheduleRequest, ConsumePromotionRequest, PromotedSkusResponse, ConsumePromotionResponse, CreditPlanLevelEnum, CreditPlanResponse, FinancierResponse, ReservePromotionBonusRequest, ReservePromotionBonusResponse, ResolveCustomerSegmentsRequest, ResolveCustomerSegmentsResponse, ScopeWidePromotionsResponse, SegmentCatalogResponse, SegmentStatusEnum, SkuPromotionsResponse, SettlePromotionBonusRequest, PromotionBonusResponse, SimulateCreditPlanRequest, SimulationResultResponse } from "@fiado/type-kit/bin/loanOfferings/index.js";
4
4
  import { SegmentMembersResponse } from "./dtos/SegmentMembers.js";
5
5
  import { ILoanOfferingsBusinessApi } from "./interfaces/ILoanOfferingsBusinessApi.js";
6
6
  /**
@@ -32,4 +32,5 @@ export default class LoanOfferingsBusinessApi implements ILoanOfferingsBusinessA
32
32
  listSkuPromotions(storeId: string, tenantId: string, level?: CreditPlanLevelEnum, segmentId?: string): Promise<StandardResponse<SkuPromotionsResponse>>;
33
33
  listScopeWidePromotions(storeId: string, tenantId: string, level?: CreditPlanLevelEnum, segmentId?: string): Promise<StandardResponse<ScopeWidePromotionsResponse>>;
34
34
  getSegmentMembers(retailCustomerIds: string[], tenantId: string): Promise<StandardResponse<SegmentMembersResponse>>;
35
+ listSegments(tenantId: string, status?: SegmentStatusEnum): Promise<StandardResponse<SegmentCatalogResponse>>;
35
36
  }
@@ -98,6 +98,13 @@ let LoanOfferingsBusinessApi = class LoanOfferingsBusinessApi {
98
98
  const url = `${this.baseUrl}/private/segments/members?${params.toString()}`;
99
99
  return await this.httpRequest.get(url);
100
100
  }
101
+ async listSegments(tenantId, status) {
102
+ const params = new URLSearchParams({ tenantId });
103
+ if (status)
104
+ params.set("status", status);
105
+ const url = `${this.baseUrl}/private/segments?${params.toString()}`;
106
+ return await this.httpRequest.get(url);
107
+ }
101
108
  };
102
109
  LoanOfferingsBusinessApi = __decorate([
103
110
  injectable(),
@@ -1,6 +1,6 @@
1
1
  import { StandardResponse } from "@fiado/gateway-adapter";
2
2
  import { SegmentMembersResponse } from "../dtos/SegmentMembers.js";
3
- import { AmortizationScheduleResponse, ComputeAmortizationScheduleRequest, ConsumePromotionRequest, PromotedSkusResponse, ConsumePromotionResponse, CreditPlanLevelEnum, CreditPlanResponse, FinancierResponse, ReservePromotionBonusRequest, ReservePromotionBonusResponse, ResolveCustomerSegmentsRequest, ResolveCustomerSegmentsResponse, ScopeWidePromotionsResponse, SkuPromotionsResponse, SettlePromotionBonusRequest, PromotionBonusResponse, SimulateCreditPlanRequest, SimulationResultResponse } from "@fiado/type-kit/bin/loanOfferings/index.js";
3
+ import { AmortizationScheduleResponse, ComputeAmortizationScheduleRequest, ConsumePromotionRequest, PromotedSkusResponse, ConsumePromotionResponse, CreditPlanLevelEnum, CreditPlanResponse, FinancierResponse, ReservePromotionBonusRequest, ReservePromotionBonusResponse, ResolveCustomerSegmentsRequest, ResolveCustomerSegmentsResponse, ScopeWidePromotionsResponse, SegmentCatalogResponse, SegmentStatusEnum, SkuPromotionsResponse, SettlePromotionBonusRequest, PromotionBonusResponse, SimulateCreditPlanRequest, SimulationResultResponse } from "@fiado/type-kit/bin/loanOfferings/index.js";
4
4
  /**
5
5
  * Contrato del publisher HTTP del lambda `loan-offerings-business` (componente 07 SureKeep Fase 1)
6
6
  * para sus endpoints privados service-to-service (VPC-only): LECTURAS del catálogo SOFOM y
@@ -152,4 +152,9 @@ export interface ILoanOfferingsBusinessApi {
152
152
  * @throws `400 UNKNOWN_TENANT` si el `tenantId` viene ausente o desconocido.
153
153
  */
154
154
  getSegmentMembers(retailCustomerIds: string[], tenantId: string): Promise<StandardResponse<SegmentMembersResponse>>;
155
+ /**
156
+ * `GET /private/segments` — catálogo de segmentos del silo, sin miembros; el catch-all viaja con `isDefault: true`.
157
+ * Sin `status` devuelve todos los estados.
158
+ */
159
+ listSegments(tenantId: string, status?: SegmentStatusEnum): Promise<StandardResponse<SegmentCatalogResponse>>;
155
160
  }
@@ -1,6 +1,6 @@
1
1
  import type { IHttpRequest } from "@fiado/http-client";
2
2
  import { StandardResponse } from "@fiado/gateway-adapter";
3
- import type { GetStoreStockCatalogResponse, HoldStockRequest, HoldStockResponse, ReleaseStockRequest, ReleaseStockResponse, RenewReservationsRequest, RenewReservationsResponse, ReserveStockRequest, ReserveStockResponse, ReturnStockRequest, ReturnStockResponse, SellStockRequest, SellStockResponse, SuggestPiecesQuery, SuggestPiecesResponse, SyncInventoryRequest, SyncInventoryResponse, ValidateProductResponse } from "@fiado/type-kit/bin/retailCatalog/index.js";
3
+ import type { GetStoreStockCatalogResponse, HoldStockRequest, HoldStockResponse, InventoryLensQuery, InventoryLensResponse, ReleaseStockRequest, ReleaseStockResponse, RenewReservationsRequest, RenewReservationsResponse, ReserveStockRequest, ReserveStockResponse, ReturnStockRequest, ReturnStockResponse, SellStockRequest, SellStockResponse, SuggestPiecesQuery, SuggestPiecesResponse, SyncInventoryRequest, SyncInventoryResponse, ValidateProductResponse } from "@fiado/type-kit/bin/retailCatalog/index.js";
4
4
  import { IRetailCatalogBusinessApi, ProductsByRetailersResponse, ReleaseReservationBody, ReserveInventoryBody, ReserveInventoryResult, SellInventoryBody, StoreCatalogItem } from "./interfaces/IRetailCatalogBusinessApi.js";
5
5
  /**
6
6
  * Publisher HTTP del lambda `retail-catalog-business` (SureKeep Fase 1, pista Retail) para sus
@@ -38,4 +38,5 @@ export default class RetailCatalogBusinessApi implements IRetailCatalogBusinessA
38
38
  returnStock(storeId: string, body: ReturnStockRequest, tenantId: string): Promise<StandardResponse<ReturnStockResponse>>;
39
39
  syncInventory(retailerId: string, body: SyncInventoryRequest, tenantId: string): Promise<StandardResponse<SyncInventoryResponse>>;
40
40
  getStoreStockCatalog(storeId: string, tenantId: string): Promise<StandardResponse<GetStoreStockCatalogResponse>>;
41
+ getInventoryLens(tenantId: string, retailerId: string, query: InventoryLensQuery): Promise<StandardResponse<InventoryLensResponse>>;
41
42
  }
@@ -107,6 +107,14 @@ let RetailCatalogBusinessApi = class RetailCatalogBusinessApi {
107
107
  async getStoreStockCatalog(storeId, tenantId) {
108
108
  return await this.httpRequest.get(this.storeUrl(storeId, "stock-catalog", tenantId));
109
109
  }
110
+ async getInventoryLens(tenantId, retailerId, query) {
111
+ const params = new URLSearchParams({ tenantId, retailerId, filter: query.filter });
112
+ if (query.period)
113
+ params.set("period", query.period);
114
+ if (query.storeId)
115
+ params.set("storeId", query.storeId);
116
+ return await this.httpRequest.get(`${this.baseUrl}/private/inventory/lens?${params.toString()}`);
117
+ }
110
118
  };
111
119
  RetailCatalogBusinessApi = __decorate([
112
120
  injectable(),
@@ -1,5 +1,5 @@
1
1
  import { StandardResponse } from "@fiado/gateway-adapter";
2
- import type { GetStoreStockCatalogResponse, HoldStockRequest, HoldStockResponse, MdmLockModeEnum, MdmProviderEnum, ReleaseStockRequest, ReleaseStockResponse, RenewReservationsRequest, RenewReservationsResponse, ReserveStockRequest, ReserveStockResponse, ReturnStockRequest, ReturnStockResponse, SellStockRequest, SellStockResponse, SuggestPiecesQuery, SuggestPiecesResponse, SyncInventoryRequest, SyncInventoryResponse, ValidateProductResponse } from "@fiado/type-kit/bin/retailCatalog/index.js";
2
+ import type { GetStoreStockCatalogResponse, HoldStockRequest, HoldStockResponse, InventoryLensQuery, InventoryLensResponse, MdmLockModeEnum, MdmProviderEnum, ReleaseStockRequest, ReleaseStockResponse, RenewReservationsRequest, RenewReservationsResponse, ReserveStockRequest, ReserveStockResponse, ReturnStockRequest, ReturnStockResponse, SellStockRequest, SellStockResponse, SuggestPiecesQuery, SuggestPiecesResponse, SyncInventoryRequest, SyncInventoryResponse, ValidateProductResponse } from "@fiado/type-kit/bin/retailCatalog/index.js";
3
3
  /**
4
4
  * Contrato del publisher HTTP del lambda `retail-catalog-business` (SureKeep Fase 1, pista Retail)
5
5
  * para sus endpoints privados del ciclo de venta del IMEI, consumidos por el wizard F2.
@@ -173,4 +173,6 @@ export interface IRetailCatalogBusinessApi {
173
173
  syncInventory(retailerId: string, body: SyncInventoryRequest, tenantId: string): Promise<StandardResponse<SyncInventoryResponse>>;
174
174
  /** GET `/private/stores/{storeId}/stock-catalog` — catálogo vendible de la tienda, una fila por SKU. */
175
175
  getStoreStockCatalog(storeId: string, tenantId: string): Promise<StandardResponse<GetStoreStockCatalogResponse>>;
176
+ /** GET `/private/inventory/lens` — lente de inventario del retailer; `period` y `storeId` solo aplican a `filter=list`. */
177
+ getInventoryLens(tenantId: string, retailerId: string, query: InventoryLensQuery): Promise<StandardResponse<InventoryLensResponse>>;
176
178
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fiado/api-invoker",
3
- "version": "5.97.0",
3
+ "version": "5.99.0",
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
  "type": "module",
6
6
  "main": "bin/index.js",
@@ -34,7 +34,7 @@
34
34
  "@fiado/gateway-adapter": "^3.9.0",
35
35
  "@fiado/http-client": "^2.0.1",
36
36
  "@fiado/logger": "^1.1.3",
37
- "@fiado/type-kit": "3.473.0",
37
+ "@fiado/type-kit": "3.481.0",
38
38
  "dotenv": "^16.4.7"
39
39
  },
40
40
  "peerDependencies": {
@@ -15,6 +15,8 @@ import {
15
15
  ResolveCustomerSegmentsRequest,
16
16
  ResolveCustomerSegmentsResponse,
17
17
  ScopeWidePromotionsResponse,
18
+ SegmentCatalogResponse,
19
+ SegmentStatusEnum,
18
20
  SkuPromotionsResponse,
19
21
  SettlePromotionBonusRequest,
20
22
  PromotionBonusResponse,
@@ -165,4 +167,14 @@ export default class LoanOfferingsBusinessApi implements ILoanOfferingsBusinessA
165
167
  const url = `${this.baseUrl}/private/segments/members?${params.toString()}`;
166
168
  return await this.httpRequest.get(url);
167
169
  }
170
+
171
+ async listSegments(
172
+ tenantId: string,
173
+ status?: SegmentStatusEnum,
174
+ ): Promise<StandardResponse<SegmentCatalogResponse>> {
175
+ const params = new URLSearchParams({ tenantId });
176
+ if (status) params.set("status", status);
177
+ const url = `${this.baseUrl}/private/segments?${params.toString()}`;
178
+ return await this.httpRequest.get(url);
179
+ }
168
180
  }
@@ -14,6 +14,8 @@ import {
14
14
  ResolveCustomerSegmentsRequest,
15
15
  ResolveCustomerSegmentsResponse,
16
16
  ScopeWidePromotionsResponse,
17
+ SegmentCatalogResponse,
18
+ SegmentStatusEnum,
17
19
  SkuPromotionsResponse,
18
20
  SettlePromotionBonusRequest,
19
21
  PromotionBonusResponse,
@@ -232,4 +234,13 @@ export interface ILoanOfferingsBusinessApi {
232
234
  retailCustomerIds: string[],
233
235
  tenantId: string,
234
236
  ): Promise<StandardResponse<SegmentMembersResponse>>;
237
+
238
+ /**
239
+ * `GET /private/segments` — catálogo de segmentos del silo, sin miembros; el catch-all viaja con `isDefault: true`.
240
+ * Sin `status` devuelve todos los estados.
241
+ */
242
+ listSegments(
243
+ tenantId: string,
244
+ status?: SegmentStatusEnum,
245
+ ): Promise<StandardResponse<SegmentCatalogResponse>>;
235
246
  }
@@ -5,6 +5,8 @@ import type {
5
5
  GetStoreStockCatalogResponse,
6
6
  HoldStockRequest,
7
7
  HoldStockResponse,
8
+ InventoryLensQuery,
9
+ InventoryLensResponse,
8
10
  ReleaseStockRequest,
9
11
  ReleaseStockResponse,
10
12
  RenewReservationsRequest,
@@ -197,4 +199,15 @@ export default class RetailCatalogBusinessApi implements IRetailCatalogBusinessA
197
199
  ): Promise<StandardResponse<GetStoreStockCatalogResponse>> {
198
200
  return await this.httpRequest.get(this.storeUrl(storeId, "stock-catalog", tenantId));
199
201
  }
202
+
203
+ async getInventoryLens(
204
+ tenantId: string,
205
+ retailerId: string,
206
+ query: InventoryLensQuery,
207
+ ): Promise<StandardResponse<InventoryLensResponse>> {
208
+ const params = new URLSearchParams({ tenantId, retailerId, filter: query.filter });
209
+ if (query.period) params.set("period", query.period);
210
+ if (query.storeId) params.set("storeId", query.storeId);
211
+ return await this.httpRequest.get(`${this.baseUrl}/private/inventory/lens?${params.toString()}`);
212
+ }
200
213
  }
@@ -3,6 +3,8 @@ import type {
3
3
  GetStoreStockCatalogResponse,
4
4
  HoldStockRequest,
5
5
  HoldStockResponse,
6
+ InventoryLensQuery,
7
+ InventoryLensResponse,
6
8
  MdmLockModeEnum,
7
9
  MdmProviderEnum,
8
10
  ReleaseStockRequest,
@@ -259,4 +261,11 @@ export interface IRetailCatalogBusinessApi {
259
261
 
260
262
  /** GET `/private/stores/{storeId}/stock-catalog` — catálogo vendible de la tienda, una fila por SKU. */
261
263
  getStoreStockCatalog(storeId: string, tenantId: string): Promise<StandardResponse<GetStoreStockCatalogResponse>>;
264
+
265
+ /** GET `/private/inventory/lens` — lente de inventario del retailer; `period` y `storeId` solo aplican a `filter=list`. */
266
+ getInventoryLens(
267
+ tenantId: string,
268
+ retailerId: string,
269
+ query: InventoryLensQuery,
270
+ ): Promise<StandardResponse<InventoryLensResponse>>;
262
271
  }