@texturehq/device 1.7.1 → 1.7.2

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 (29) hide show
  1. package/dist/common/axios.d.ts +3 -0
  2. package/dist/common/axios.d.ts.map +1 -0
  3. package/dist/common/axios.js +29 -0
  4. package/dist/common/axios.js.map +1 -0
  5. package/dist/deviceModel/getDeviceModel/index.d.ts +5 -1
  6. package/dist/deviceModel/getDeviceModel/index.d.ts.map +1 -1
  7. package/dist/deviceModel/getDeviceModel/index.js +5 -18
  8. package/dist/deviceModel/getDeviceModel/index.js.map +1 -1
  9. package/dist/deviceModel/getDeviceModelByManufacturerSlug/index.d.ts +5 -6
  10. package/dist/deviceModel/getDeviceModelByManufacturerSlug/index.d.ts.map +1 -1
  11. package/dist/deviceModel/getDeviceModelByManufacturerSlug/index.js +6 -4
  12. package/dist/deviceModel/getDeviceModelByManufacturerSlug/index.js.map +1 -1
  13. package/dist/deviceModel/getDeviceModels/index.d.ts +1 -0
  14. package/dist/deviceModel/getDeviceModels/index.d.ts.map +1 -1
  15. package/dist/deviceModel/getDeviceModels/index.js +6 -21
  16. package/dist/deviceModel/getDeviceModels/index.js.map +1 -1
  17. package/dist/manufacturer/getManufacturer/index.d.ts +5 -6
  18. package/dist/manufacturer/getManufacturer/index.d.ts.map +1 -1
  19. package/dist/manufacturer/getManufacturer/index.js +6 -4
  20. package/dist/manufacturer/getManufacturer/index.js.map +1 -1
  21. package/dist/manufacturer/getManufacturers/index.d.ts +1 -0
  22. package/dist/manufacturer/getManufacturers/index.d.ts.map +1 -1
  23. package/dist/manufacturer/getManufacturers/index.js +5 -5
  24. package/dist/manufacturer/getManufacturers/index.js.map +1 -1
  25. package/package.json +2 -1
  26. package/dist/common/utils/retryAxios.d.ts +0 -18
  27. package/dist/common/utils/retryAxios.d.ts.map +0 -1
  28. package/dist/common/utils/retryAxios.js +0 -31
  29. package/dist/common/utils/retryAxios.js.map +0 -1
@@ -0,0 +1,3 @@
1
+ import { AxiosInstance } from "axios";
2
+ export declare function getAxios(): AxiosInstance;
3
+ //# sourceMappingURL=axios.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"axios.d.ts","sourceRoot":"","sources":["../../src/common/axios.ts"],"names":[],"mappings":"AAAA,OAAc,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAQ7C,wBAAgB,QAAQ,IAAI,aAAa,CAkBxC"}
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.getAxios = getAxios;
7
+ const axios_1 = __importDefault(require("axios"));
8
+ const axios_retry_1 = __importDefault(require("axios-retry"));
9
+ const axios_cache_interceptor_1 = require("axios-cache-interceptor");
10
+ const logger_1 = require("./logger");
11
+ const logger = logger_1.baseLogger.function("getAxios");
12
+ let axios = null;
13
+ function getAxios() {
14
+ if (axios) {
15
+ return axios;
16
+ }
17
+ axios = (0, axios_cache_interceptor_1.setupCache)(axios_1.default.create());
18
+ const retryConfig = {
19
+ retries: 3,
20
+ retryDelay: axios_retry_1.default.exponentialDelay,
21
+ onRetry: (retryCount, error) => {
22
+ logger.warn("retryCount", { retryCount });
23
+ logger.warn("error", { error });
24
+ },
25
+ };
26
+ (0, axios_retry_1.default)(axios, retryConfig);
27
+ return axios;
28
+ }
29
+ //# sourceMappingURL=axios.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"axios.js","sourceRoot":"","sources":["../../src/common/axios.ts"],"names":[],"mappings":";;;;;AAQA,4BAkBC;AA1BD,kDAA6C;AAC7C,8DAA4D;AAC5D,qEAAqD;AACrD,qCAAsC;AAEtC,MAAM,MAAM,GAAG,mBAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;AAC/C,IAAI,KAAK,GAAyB,IAAI,CAAC;AAEvC,SAAgB,QAAQ;IACtB,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK,GAAG,IAAA,oCAAU,EAAC,eAAK,CAAC,MAAM,EAAE,CAAC,CAAC;IAEnC,MAAM,WAAW,GAAsB;QACrC,OAAO,EAAE,CAAC;QACV,UAAU,EAAE,qBAAU,CAAC,gBAAgB;QACvC,OAAO,EAAE,CAAC,UAAU,EAAE,KAAK,EAAE,EAAE;YAC7B,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;YAC1C,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAClC,CAAC;KACF,CAAC;IAEF,IAAA,qBAAU,EAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IAC/B,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -20,10 +20,14 @@ export interface GetDeviceModelOptions {
20
20
  */
21
21
  logger?: Logger;
22
22
  }
23
+ type CachedDeviceModel = (DeviceModel & {
24
+ cached?: boolean;
25
+ }) | null;
23
26
  /**
24
27
  * Retrieves a device model from the Device CMS.
25
28
  * @param options The options to use during the getDeviceModel operation.
26
29
  * @returns {Promise<DeviceModel | null>} The device model retrieved from the CMS or null if no device model was found.
27
30
  */
28
- export declare const getDeviceModel: (options: GetDeviceModelOptions) => Promise<DeviceModel | null>;
31
+ export declare const getDeviceModel: (options: GetDeviceModelOptions) => Promise<CachedDeviceModel>;
32
+ export {};
29
33
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/deviceModel/getDeviceModel/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAI3C,OAAO,EAAE,WAAW,EAAqB,MAAM,aAAa,CAAC;AAI7D,MAAM,WAAW,qBAAqB;IACpC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAKD;;;;GAIG;AACH,eAAO,MAAM,cAAc,YAAmB,qBAAqB,KAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAmD/F,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/deviceModel/getDeviceModel/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAI3C,OAAO,EAAE,WAAW,EAAqB,MAAM,aAAa,CAAC;AAK7D,MAAM,WAAW,qBAAqB;IACpC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,KAAK,iBAAiB,GAAG,CAAC,WAAW,GAAG;IAAE,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,GAAG,IAAI,CAAC;AAErE;;;;GAIG;AACH,eAAO,MAAM,cAAc,YAAmB,qBAAqB,KAAG,OAAO,CAAC,iBAAiB,CAyC9F,CAAC"}
@@ -1,17 +1,12 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.getDeviceModel = void 0;
7
- const axios_1 = __importDefault(require("axios"));
8
4
  const logger_1 = require("../../common/logger");
9
5
  const exceptions_1 = require("../../common/exceptions");
10
6
  const entities_1 = require("../entities");
11
7
  const constants_1 = require("../../common/constants");
12
8
  const manufacturer_1 = require("../../manufacturer");
13
- // In-memory cache for device models
14
- const deviceModelCache = new Map();
9
+ const axios_1 = require("../../common/axios");
15
10
  /**
16
11
  * Retrieves a device model from the Device CMS.
17
12
  * @param options The options to use during the getDeviceModel operation.
@@ -21,18 +16,10 @@ const getDeviceModel = async (options) => {
21
16
  const defaultLogger = logger_1.baseLogger.function("getDeviceModel");
22
17
  const { slug, baseApiUrl = constants_1.PRODUCTION_BASE_URL, baseImageUrl = constants_1.PRODUCTION_BASE_URL, logger = defaultLogger, } = options;
23
18
  const operation = logger.operation("get device model from Payload CMS API");
19
+ const axios = (0, axios_1.getAxios)();
24
20
  try {
25
21
  operation.start({ options });
26
- // Generate cache key based on slug and baseApiUrl
27
- const cacheKey = `${slug}:${baseApiUrl}`;
28
- // Check if device model is in the cache
29
- if (deviceModelCache.has(cacheKey)) {
30
- const cachedDeviceModel = deviceModelCache.get(cacheKey);
31
- operation.end({ deviceModel: cachedDeviceModel, fromCache: true });
32
- return cachedDeviceModel;
33
- }
34
- // If not in cache, fetch from API
35
- const response = await axios_1.default.get(`${baseApiUrl}/api/device_models?where[slug][equals]=${slug}`);
22
+ const response = await axios.get(`${baseApiUrl}/api/device_models?where[slug][equals]=${slug}`);
36
23
  if (response.status !== 200) {
37
24
  const errorMessage = `Request to ${baseApiUrl}/api/device_models failed with status ${response.status}`;
38
25
  operation.fail(errorMessage);
@@ -49,8 +36,8 @@ const getDeviceModel = async (options) => {
49
36
  ...result,
50
37
  manufacturer: (0, manufacturer_1.parseManufacturer)(result.manufacturer, baseImageUrl),
51
38
  });
52
- // Add to cache
53
- deviceModelCache.set(cacheKey, deviceModel);
39
+ // @ts-expect-error Property 'cached' does not exist
40
+ deviceModel.cached = response?.cached;
54
41
  operation.end({ deviceModel });
55
42
  return deviceModel;
56
43
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/deviceModel/getDeviceModel/index.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAE1B,gDAAiD;AAEjD,wDAAuD;AACvD,0CAA6D;AAC7D,sDAA6D;AAC7D,qDAAuD;AAuBvD,oCAAoC;AACpC,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAuB,CAAC;AAExD;;;;GAIG;AACI,MAAM,cAAc,GAAG,KAAK,EAAE,OAA8B,EAA+B,EAAE;IAClG,MAAM,aAAa,GAAG,mBAAU,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IAC5D,MAAM,EACJ,IAAI,EACJ,UAAU,GAAG,+BAAmB,EAChC,YAAY,GAAG,+BAAmB,EAClC,MAAM,GAAG,aAAa,GACvB,GAAG,OAAO,CAAC;IACZ,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,uCAAuC,CAAC,CAAC;IAE5E,IAAI,CAAC;QACH,SAAS,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;QAE7B,kDAAkD;QAClD,MAAM,QAAQ,GAAG,GAAG,IAAI,IAAI,UAAU,EAAE,CAAC;QAEzC,wCAAwC;QACxC,IAAI,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YACnC,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACzD,SAAS,CAAC,GAAG,CAAC,EAAE,WAAW,EAAE,iBAAiB,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACnE,OAAO,iBAAgC,CAAC;QAC1C,CAAC;QAED,kCAAkC;QAClC,MAAM,QAAQ,GAAG,MAAM,eAAK,CAAC,GAAG,CAAqB,GAAG,UAAU,0CAA0C,IAAI,EAAE,CAAC,CAAC;QACpH,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC5B,MAAM,YAAY,GAAG,cAAc,UAAU,yCAAyC,QAAQ,CAAC,MAAM,EAAE,CAAC;YACxG,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC7B,MAAM,IAAI,yBAAY,CAAC,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QACxD,CAAC;QAED,IAAI,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC,EAAE,CAAC;YACvC,SAAS,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;YAC5C,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACrC,IAAI,CAAC,MAAM,CAAC,YAAY;YAAE,MAAM,IAAI,KAAK,CAAC,eAAe,MAAM,CAAC,EAAE,wBAAwB,CAAC,CAAC;QAC5F,MAAM,WAAW,GAAG,4BAAiB,CAAC,KAAK,CAAC;YAC1C,GAAG,MAAM;YACT,YAAY,EAAE,IAAA,gCAAiB,EAAC,MAAM,CAAC,YAAY,EAAE,YAAY,CAAC;SACnE,CAAC,CAAC;QAEH,eAAe;QACf,gBAAgB,CAAC,GAAG,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QAE5C,SAAS,CAAC,GAAG,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;QAC/B,OAAO,WAAW,CAAC;IACrB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,SAAS,CAAC,IAAI,CAAC,0EAA0E,CAAC,CAAC;QAC3F,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC,CAAC;AAnDW,QAAA,cAAc,kBAmDzB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/deviceModel/getDeviceModel/index.ts"],"names":[],"mappings":";;;AACA,gDAAiD;AAEjD,wDAAuD;AACvD,0CAA6D;AAC7D,sDAA6D;AAC7D,qDAAuD;AACvD,8CAA8C;AAyB9C;;;;GAIG;AACI,MAAM,cAAc,GAAG,KAAK,EAAE,OAA8B,EAA8B,EAAE;IACjG,MAAM,aAAa,GAAG,mBAAU,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IAC5D,MAAM,EACJ,IAAI,EACJ,UAAU,GAAG,+BAAmB,EAChC,YAAY,GAAG,+BAAmB,EAClC,MAAM,GAAG,aAAa,GACvB,GAAG,OAAO,CAAC;IACZ,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,uCAAuC,CAAC,CAAC;IAE5E,MAAM,KAAK,GAAG,IAAA,gBAAQ,GAAE,CAAC;IAEzB,IAAI,CAAC;QACH,SAAS,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;QAC7B,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAAqB,GAAG,UAAU,0CAA0C,IAAI,EAAE,CAAC,CAAC;QACpH,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC5B,MAAM,YAAY,GAAG,cAAc,UAAU,yCAAyC,QAAQ,CAAC,MAAM,EAAE,CAAC;YACxG,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC7B,MAAM,IAAI,yBAAY,CAAC,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QACxD,CAAC;QAED,IAAI,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC,EAAE,CAAC;YACvC,SAAS,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;YAC5C,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACrC,IAAI,CAAC,MAAM,CAAC,YAAY;YAAE,MAAM,IAAI,KAAK,CAAC,eAAe,MAAM,CAAC,EAAE,wBAAwB,CAAC,CAAC;QAC5F,MAAM,WAAW,GAAsB,4BAAiB,CAAC,KAAK,CAAC;YAC7D,GAAG,MAAM;YACT,YAAY,EAAE,IAAA,gCAAiB,EAAC,MAAM,CAAC,YAAY,EAAE,YAAY,CAAC;SACnE,CAAC,CAAC;QAEH,oDAAoD;QACpD,WAAW,CAAC,MAAM,GAAG,QAAQ,EAAE,MAAM,CAAC;QAEtC,SAAS,CAAC,GAAG,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;QAC/B,OAAO,WAAW,CAAC;IACrB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,SAAS,CAAC,IAAI,CAAC,0EAA0E,CAAC,CAAC;QAC3F,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC,CAAC;AAzCW,QAAA,cAAc,kBAyCzB"}
@@ -1,6 +1,5 @@
1
1
  import { Logger } from "@texturehq/logger";
2
2
  import { DeviceModel } from "../entities";
3
- import { RetryOptions } from "../../common/utils/retryAxios";
4
3
  export interface GetDeviceModelByManufacturerSlugOptions {
5
4
  /**
6
5
  * The slug of the device model provided by the manufacturer API.
@@ -22,15 +21,15 @@ export interface GetDeviceModelByManufacturerSlugOptions {
22
21
  * The logger instance to use during the getDeviceModel operation.
23
22
  */
24
23
  logger?: Logger;
25
- /**
26
- * Optional retry options object.
27
- */
28
- retryOptions?: RetryOptions;
29
24
  }
25
+ type CachedDeviceModel = (DeviceModel & {
26
+ cached?: boolean;
27
+ }) | null;
30
28
  /**
31
29
  * Retrieves a device model from the Device CMS.
32
30
  * @param options The options to use during the getDeviceModel operation.
33
31
  * @returns {Promise<DeviceModel | null>} The device model retrieved from the CMS or null if no device model was found.
34
32
  */
35
- export declare const getDeviceModelByManufacturerSlug: (options: GetDeviceModelByManufacturerSlugOptions) => Promise<DeviceModel | null>;
33
+ export declare const getDeviceModelByManufacturerSlug: (options: GetDeviceModelByManufacturerSlugOptions) => Promise<CachedDeviceModel>;
34
+ export {};
36
35
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/deviceModel/getDeviceModelByManufacturerSlug/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAI3C,OAAO,EAAE,WAAW,EAAqB,MAAM,aAAa,CAAC;AAG7D,OAAO,EAAE,YAAY,EAAuB,MAAM,+BAA+B,CAAC;AAElF,MAAM,WAAW,uCAAuC;IACtD;;;;OAIG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B;AAED;;;;GAIG;AACH,eAAO,MAAM,gCAAgC,YAClC,uCAAuC,KAC/C,OAAO,CAAC,WAAW,GAAG,IAAI,CAgD5B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/deviceModel/getDeviceModelByManufacturerSlug/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAI3C,OAAO,EAAE,WAAW,EAAqB,MAAM,aAAa,CAAC;AAK7D,MAAM,WAAW,uCAAuC;IACtD;;;;OAIG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,KAAK,iBAAiB,GAAG,CAAC,WAAW,GAAG;IAAE,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,GAAG,IAAI,CAAC;AAErE;;;;GAIG;AACH,eAAO,MAAM,gCAAgC,YAClC,uCAAuC,KAC/C,OAAO,CAAC,iBAAiB,CAoD3B,CAAC"}
@@ -6,7 +6,7 @@ const exceptions_1 = require("../../common/exceptions");
6
6
  const entities_1 = require("../entities");
7
7
  const constants_1 = require("../../common/constants");
8
8
  const manufacturer_1 = require("../../manufacturer");
9
- const retryAxios_1 = require("../../common/utils/retryAxios");
9
+ const axios_1 = require("../../common/axios");
10
10
  /**
11
11
  * Retrieves a device model from the Device CMS.
12
12
  * @param options The options to use during the getDeviceModel operation.
@@ -14,12 +14,12 @@ const retryAxios_1 = require("../../common/utils/retryAxios");
14
14
  */
15
15
  const getDeviceModelByManufacturerSlug = async (options) => {
16
16
  const defaultLogger = logger_1.baseLogger.function("getDeviceModelByManufacturerSlug");
17
- const { slug, baseApiUrl = constants_1.PRODUCTION_BASE_URL, logger = defaultLogger, retryOptions } = options;
17
+ const { slug, baseApiUrl = constants_1.PRODUCTION_BASE_URL, logger = defaultLogger } = options;
18
18
  const operation = logger.operation("get device model by manufacturer slug from Payload CMS API");
19
- const axiosInstance = (0, retryAxios_1.configureAxiosRetry)(logger, retryOptions);
19
+ const axios = (0, axios_1.getAxios)();
20
20
  try {
21
21
  operation.start({ options });
22
- const response = await axiosInstance.get(`${baseApiUrl}/api/manufacturer_slugs?where[slug][equals]=${slug}`);
22
+ const response = await axios.get(`${baseApiUrl}/api/manufacturer_slugs?where[slug][equals]=${slug}`);
23
23
  if (response.status !== 200) {
24
24
  const errorMessage = `Request to ${baseApiUrl}/api/manufacturer_slugs failed with status ${response.status}`;
25
25
  operation.fail({ slug: options.slug, status: response.status }, errorMessage);
@@ -43,6 +43,8 @@ const getDeviceModelByManufacturerSlug = async (options) => {
43
43
  ...result,
44
44
  manufacturer,
45
45
  });
46
+ // @ts-expect-error Property 'cached' does not exist
47
+ deviceModel.cached = response?.cached;
46
48
  operation.end({ deviceModel });
47
49
  return deviceModel;
48
50
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/deviceModel/getDeviceModelByManufacturerSlug/index.ts"],"names":[],"mappings":";;;AACA,gDAAiD;AAEjD,wDAAuD;AACvD,0CAA6D;AAC7D,sDAA6D;AAC7D,qDAAqD;AACrD,8DAAkF;AA6BlF;;;;GAIG;AACI,MAAM,gCAAgC,GAAG,KAAK,EACnD,OAAgD,EACnB,EAAE;IAC/B,MAAM,aAAa,GAAG,mBAAU,CAAC,QAAQ,CAAC,kCAAkC,CAAC,CAAC;IAC9E,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,+BAAmB,EAAE,MAAM,GAAG,aAAa,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC;IACjG,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,4DAA4D,CAAC,CAAC;IAEjG,MAAM,aAAa,GAAG,IAAA,gCAAmB,EAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAEhE,IAAI,CAAC;QACH,SAAS,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;QAC7B,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,GAAG,CACtC,GAAG,UAAU,+CAA+C,IAAI,EAAE,CACnE,CAAC;QACF,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC5B,MAAM,YAAY,GAAG,cAAc,UAAU,8CAA8C,QAAQ,CAAC,MAAM,EAAE,CAAC;YAC7G,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,EAAE,YAAY,CAAC,CAAC;YAC9E,MAAM,IAAI,yBAAY,CAAC,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QACxD,CAAC;QAED,IAAI,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC,EAAE,CAAC;YACvC,SAAS,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;YAC5C,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;QAClD,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;QACzG,MAAM,YAAY,GAAG,MAAM,IAAA,8BAAe,EAAC;YACzC,GAAG,OAAO;YACV,IAAI,EAAE,MAAM,CAAC,YAAY,EAAE,IAAI;SAChC,CAAC,CAAC;QACH,MAAM,WAAW,GAAG,4BAAiB,CAAC,KAAK,CAAC;YAC1C,GAAG,MAAM;YACT,YAAY;SACb,CAAC,CAAC;QACH,SAAS,CAAC,GAAG,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;QAC/B,OAAO,WAAW,CAAC;IACrB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,SAAS,CAAC,IAAI,CACZ;YACE,KAAK;YACL,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,UAAU;SACX,EACD,0EAA0E,CAC3E,CAAC;QACF,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC,CAAC;AAlDW,QAAA,gCAAgC,oCAkD3C"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/deviceModel/getDeviceModelByManufacturerSlug/index.ts"],"names":[],"mappings":";;;AACA,gDAAiD;AAEjD,wDAAuD;AACvD,0CAA6D;AAC7D,sDAA6D;AAC7D,qDAAqD;AACrD,8CAA8C;AA2B9C;;;;GAIG;AACI,MAAM,gCAAgC,GAAG,KAAK,EACnD,OAAgD,EACpB,EAAE;IAC9B,MAAM,aAAa,GAAG,mBAAU,CAAC,QAAQ,CAAC,kCAAkC,CAAC,CAAC;IAC9E,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,+BAAmB,EAAE,MAAM,GAAG,aAAa,EAAE,GAAG,OAAO,CAAC;IACnF,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,4DAA4D,CAAC,CAAC;IAEjG,MAAM,KAAK,GAAG,IAAA,gBAAQ,GAAE,CAAC;IAEzB,IAAI,CAAC;QACH,SAAS,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;QAC7B,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAC9B,GAAG,UAAU,+CAA+C,IAAI,EAAE,CACnE,CAAC;QACF,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC5B,MAAM,YAAY,GAAG,cAAc,UAAU,8CAA8C,QAAQ,CAAC,MAAM,EAAE,CAAC;YAC7G,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,EAAE,YAAY,CAAC,CAAC;YAC9E,MAAM,IAAI,yBAAY,CAAC,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QACxD,CAAC;QAED,IAAI,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC,EAAE,CAAC;YACvC,SAAS,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;YAC5C,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;QAClD,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;QACzG,MAAM,YAAY,GAAG,MAAM,IAAA,8BAAe,EAAC;YACzC,GAAG,OAAO;YACV,IAAI,EAAE,MAAM,CAAC,YAAY,EAAE,IAAI;SAChC,CAAC,CAAC;QACH,MAAM,WAAW,GAAsB,4BAAiB,CAAC,KAAK,CAAC;YAC7D,GAAG,MAAM;YACT,YAAY;SACb,CAAC,CAAC;QAEH,oDAAoD;QACpD,WAAW,CAAC,MAAM,GAAG,QAAQ,EAAE,MAAM,CAAC;QAEtC,SAAS,CAAC,GAAG,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;QAC/B,OAAO,WAAW,CAAC;IACrB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,SAAS,CAAC,IAAI,CACZ;YACE,KAAK;YACL,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,UAAU;SACX,EACD,0EAA0E,CAC3E,CAAC;QACF,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC,CAAC;AAtDW,QAAA,gCAAgC,oCAsD3C"}
@@ -40,6 +40,7 @@ export interface GetDeviceModelsResponse {
40
40
  limit: number;
41
41
  page: number;
42
42
  pageCount: number;
43
+ cached?: boolean;
43
44
  }
44
45
  /**
45
46
  * Retrieves a collection of device models from the Device CMS.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/deviceModel/getDeviceModels/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAI3C,OAAO,EAAE,WAAW,EAAqB,MAAM,aAAa,CAAC;AAI7D,MAAM,WAAW,sBAAsB;IACrC;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,uBAAuB;IACtC,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB;AAKD;;;;GAIG;AACH,eAAO,MAAM,eAAe,aAAmB,sBAAsB,KAAQ,OAAO,CAAC,uBAAuB,CAmE3G,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/deviceModel/getDeviceModels/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAI3C,OAAO,EAAE,WAAW,EAAqB,MAAM,aAAa,CAAC;AAK7D,MAAM,WAAW,sBAAsB;IACrC;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,uBAAuB;IACtC,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;;;GAIG;AACH,eAAO,MAAM,eAAe,aAAmB,sBAAsB,KAAQ,OAAO,CAAC,uBAAuB,CAuD3G,CAAC"}
@@ -1,17 +1,12 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.getDeviceModels = void 0;
7
- const axios_1 = __importDefault(require("axios"));
8
4
  const logger_1 = require("../../common/logger");
9
5
  const exceptions_1 = require("../../common/exceptions");
10
6
  const entities_1 = require("../entities");
11
7
  const constants_1 = require("../../common/constants");
12
8
  const manufacturer_1 = require("../../manufacturer");
13
- // In-memory cache for device models collections
14
- const deviceModelsCache = new Map();
9
+ const axios_1 = require("../../common/axios");
15
10
  /**
16
11
  * Retrieves a collection of device models from the Device CMS.
17
12
  * @param options The options to use during the geDeviceModels operation.
@@ -21,26 +16,16 @@ const getDeviceModels = async (options = {}) => {
21
16
  const defaultLogger = logger_1.baseLogger.function("getDeviceModels");
22
17
  const { limit = 10, page = 1, baseApiUrl = constants_1.PRODUCTION_BASE_URL, baseImageUrl = constants_1.PRODUCTION_BASE_URL, logger = defaultLogger, slugs = [], } = options;
23
18
  const operation = logger.operation("get device models from Payload CMS API");
19
+ const axios = (0, axios_1.getAxios)();
24
20
  try {
25
21
  operation.start({ options });
26
- // Generate cache key based on query parameters
27
- const manufacturerParam = options.manufacturer ? options.manufacturer : "";
28
- const slugsParam = slugs.length ? slugs.join(",") : "";
29
- const cacheKey = `${baseApiUrl}:${manufacturerParam}:${limit}:${page}:${slugsParam}`;
30
- // Check if the response is in the cache
31
- if (deviceModelsCache.has(cacheKey)) {
32
- const cachedResult = deviceModelsCache.get(cacheKey);
33
- operation.end({ result: cachedResult, fromCache: true });
34
- return cachedResult;
35
- }
36
- // If not in cache, fetch from API
37
22
  let response;
38
23
  if (options.manufacturer) {
39
- response = await axios_1.default.get(`${baseApiUrl}/api/device_models/filter_by_manufacturer?limit=${limit}&page=${page}&manufacturer=${options.manufacturer}`);
24
+ response = await axios.get(`${baseApiUrl}/api/device_models/filter_by_manufacturer?limit=${limit}&page=${page}&manufacturer=${options.manufacturer}`);
40
25
  }
41
26
  else {
42
27
  const slugQuery = slugs.length ? `&where[slug][in]=${slugs.join(",")}` : "";
43
- response = await axios_1.default.get(`${baseApiUrl}/api/device_models?limit=${limit}&page=${page}${slugQuery}`);
28
+ response = await axios.get(`${baseApiUrl}/api/device_models?limit=${limit}&page=${page}${slugQuery}`);
44
29
  }
45
30
  if (response.status !== 200) {
46
31
  const errorMessage = `Request to ${baseApiUrl}/api/device_models failed with status ${response.status}`;
@@ -61,8 +46,8 @@ const getDeviceModels = async (options = {}) => {
61
46
  page: response.data.page,
62
47
  pageCount: response.data.totalPages,
63
48
  };
64
- // Add to cache
65
- deviceModelsCache.set(cacheKey, result);
49
+ // @ts-expect-error Property 'cached' does not exist
50
+ result.cached = response?.cached;
66
51
  operation.end({ result });
67
52
  return result;
68
53
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/deviceModel/getDeviceModels/index.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAE1B,gDAAiD;AAEjD,wDAAuD;AACvD,0CAA6D;AAC7D,sDAA6D;AAC7D,qDAAuD;AA6CvD,gDAAgD;AAChD,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAmC,CAAC;AAErE;;;;GAIG;AACI,MAAM,eAAe,GAAG,KAAK,EAAE,UAAkC,EAAE,EAAoC,EAAE;IAC9G,MAAM,aAAa,GAAG,mBAAU,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;IAC7D,MAAM,EACJ,KAAK,GAAG,EAAE,EACV,IAAI,GAAG,CAAC,EACR,UAAU,GAAG,+BAAmB,EAChC,YAAY,GAAG,+BAAmB,EAClC,MAAM,GAAG,aAAa,EACtB,KAAK,GAAG,EAAE,GACX,GAAG,OAAO,CAAC;IACZ,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,wCAAwC,CAAC,CAAC;IAE7E,IAAI,CAAC;QACH,SAAS,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;QAE7B,+CAA+C;QAC/C,MAAM,iBAAiB,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3E,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACvD,MAAM,QAAQ,GAAG,GAAG,UAAU,IAAI,iBAAiB,IAAI,KAAK,IAAI,IAAI,IAAI,UAAU,EAAE,CAAC;QAErF,wCAAwC;QACxC,IAAI,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YACpC,MAAM,YAAY,GAAG,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACrD,SAAS,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACzD,OAAO,YAAuC,CAAC;QACjD,CAAC;QAED,kCAAkC;QAClC,IAAI,QAAQ,CAAC;QACb,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;YACzB,QAAQ,GAAG,MAAM,eAAK,CAAC,GAAG,CACxB,GAAG,UAAU,mDAAmD,KAAK,SAAS,IAAI,iBAAiB,OAAO,CAAC,YAAY,EAAE,CAC1H,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,oBAAoB,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5E,QAAQ,GAAG,MAAM,eAAK,CAAC,GAAG,CACxB,GAAG,UAAU,4BAA4B,KAAK,SAAS,IAAI,GAAG,SAAS,EAAE,CAC1E,CAAC;QACJ,CAAC;QACD,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC5B,MAAM,YAAY,GAAG,cAAc,UAAU,yCAAyC,QAAQ,CAAC,MAAM,EAAE,CAAC;YACxG,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC7B,MAAM,IAAI,yBAAY,CAAC,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QACxD,CAAC;QACD,MAAM,MAAM,GAA4B;YACtC,YAAY,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;gBAC3C,IAAI,CAAC,GAAG,CAAC,YAAY;oBAAE,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;gBACxF,OAAO,4BAAiB,CAAC,KAAK,CAAC;oBAC7B,GAAG,GAAG;oBACN,YAAY,EAAE,IAAA,gCAAiB,EAAC,GAAG,CAAC,YAAY,EAAE,YAAY,CAAC;iBAChE,CAAC,CAAC;YACL,CAAC,CAAC;YACF,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,SAAS;YAC9B,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK;YAC1B,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI;YACxB,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,UAAU;SACpC,CAAC;QAEF,eAAe;QACf,iBAAiB,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAExC,SAAS,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;QAC1B,OAAO,MAAM,CAAC;IAChB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,SAAS,CAAC,IAAI,CAAC,2EAA2E,CAAC,CAAC;QAC5F,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC,CAAC;AAnEW,QAAA,eAAe,mBAmE1B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/deviceModel/getDeviceModels/index.ts"],"names":[],"mappings":";;;AACA,gDAAiD;AAEjD,wDAAuD;AACvD,0CAA6D;AAC7D,sDAA6D;AAC7D,qDAAuD;AACvD,8CAA8C;AA8C9C;;;;GAIG;AACI,MAAM,eAAe,GAAG,KAAK,EAAE,UAAkC,EAAE,EAAoC,EAAE;IAC9G,MAAM,aAAa,GAAG,mBAAU,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;IAC7D,MAAM,EACJ,KAAK,GAAG,EAAE,EACV,IAAI,GAAG,CAAC,EACR,UAAU,GAAG,+BAAmB,EAChC,YAAY,GAAG,+BAAmB,EAClC,MAAM,GAAG,aAAa,EACtB,KAAK,GAAG,EAAE,GACX,GAAG,OAAO,CAAC;IACZ,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,wCAAwC,CAAC,CAAC;IAE7E,MAAM,KAAK,GAAG,IAAA,gBAAQ,GAAE,CAAC;IAEzB,IAAI,CAAC;QACH,SAAS,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;QAC7B,IAAI,QAAQ,CAAC;QACb,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;YACzB,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CACxB,GAAG,UAAU,mDAAmD,KAAK,SAAS,IAAI,iBAAiB,OAAO,CAAC,YAAY,EAAE,CAC1H,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,oBAAoB,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5E,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CACxB,GAAG,UAAU,4BAA4B,KAAK,SAAS,IAAI,GAAG,SAAS,EAAE,CAC1E,CAAC;QACJ,CAAC;QACD,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC5B,MAAM,YAAY,GAAG,cAAc,UAAU,yCAAyC,QAAQ,CAAC,MAAM,EAAE,CAAC;YACxG,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC7B,MAAM,IAAI,yBAAY,CAAC,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QACxD,CAAC;QACD,MAAM,MAAM,GAA4B;YACtC,YAAY,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;gBAC3C,IAAI,CAAC,GAAG,CAAC,YAAY;oBAAE,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;gBACxF,OAAO,4BAAiB,CAAC,KAAK,CAAC;oBAC7B,GAAG,GAAG;oBACN,YAAY,EAAE,IAAA,gCAAiB,EAAC,GAAG,CAAC,YAAY,EAAE,YAAY,CAAC;iBAChE,CAAC,CAAC;YACL,CAAC,CAAC;YACF,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,SAAS;YAC9B,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK;YAC1B,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI;YACxB,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,UAAU;SACpC,CAAC;QAEF,oDAAoD;QACpD,MAAM,CAAC,MAAM,GAAG,QAAQ,EAAE,MAAM,CAAC;QAEjC,SAAS,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;QAC1B,OAAO,MAAM,CAAC;IAChB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,SAAS,CAAC,IAAI,CAAC,2EAA2E,CAAC,CAAC;QAC5F,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC,CAAC;AAvDW,QAAA,eAAe,mBAuD1B"}
@@ -1,6 +1,5 @@
1
1
  import { Logger } from "@texturehq/logger";
2
2
  import { Manufacturer } from "../entities";
3
- import { RetryOptions } from "../../common/utils/retryAxios";
4
3
  export interface GetManufacturerOptions {
5
4
  /**
6
5
  * The slug of the manufacturer to retrieve from the CMS.
@@ -20,15 +19,15 @@ export interface GetManufacturerOptions {
20
19
  * The logger instance to use during the getManufacturers operation.
21
20
  */
22
21
  logger?: Logger;
23
- /**
24
- * Optional retry options object.
25
- */
26
- retryOptions?: RetryOptions;
27
22
  }
23
+ type CachedManufacturer = (Manufacturer & {
24
+ cached?: boolean;
25
+ }) | null;
28
26
  /**
29
27
  * Retrieves a manufacturer from the Device CMS.
30
28
  * @param options The options to use during the getManufacturer operation.
31
29
  * @returns {Promise<Manufacturer | null>} The manufacturer retrieved from the CMS or null if no manufacturer was found.
32
30
  */
33
- export declare const getManufacturer: (options: GetManufacturerOptions) => Promise<Manufacturer | null>;
31
+ export declare const getManufacturer: (options: GetManufacturerOptions) => Promise<CachedManufacturer>;
32
+ export {};
34
33
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/manufacturer/getManufacturer/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAI3C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG3C,OAAO,EAAE,YAAY,EAAuB,MAAM,+BAA+B,CAAC;AAElF,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B;AAED;;;;GAIG;AACH,eAAO,MAAM,eAAe,YAAmB,sBAAsB,KAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CA2ClG,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/manufacturer/getManufacturer/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAI3C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAK3C,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,KAAK,kBAAkB,GAAG,CAAC,YAAY,GAAG;IAAE,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,GAAG,IAAI,CAAC;AAEvE;;;;GAIG;AACH,eAAO,MAAM,eAAe,YAAmB,sBAAsB,KAAG,OAAO,CAAC,kBAAkB,CA4CjG,CAAC"}
@@ -5,7 +5,7 @@ const logger_1 = require("../../common/logger");
5
5
  const exceptions_1 = require("../../common/exceptions");
6
6
  const constants_1 = require("../../common/constants");
7
7
  const parseManufacturer_1 = require("../parseManufacturer");
8
- const retryAxios_1 = require("../../common/utils/retryAxios");
8
+ const axios_1 = require("../../common/axios");
9
9
  /**
10
10
  * Retrieves a manufacturer from the Device CMS.
11
11
  * @param options The options to use during the getManufacturer operation.
@@ -13,12 +13,12 @@ const retryAxios_1 = require("../../common/utils/retryAxios");
13
13
  */
14
14
  const getManufacturer = async (options) => {
15
15
  const defaultLogger = logger_1.baseLogger.function("getManufacturer");
16
- const { slug, baseApiUrl = constants_1.PRODUCTION_BASE_URL, baseImageUrl = constants_1.PRODUCTION_BASE_URL, logger = defaultLogger, retryOptions, } = options;
16
+ const { slug, baseApiUrl = constants_1.PRODUCTION_BASE_URL, baseImageUrl = constants_1.PRODUCTION_BASE_URL, logger = defaultLogger, } = options;
17
17
  const operation = logger.operation("get manufacturer from Payload CMS API");
18
- const axiosInstance = (0, retryAxios_1.configureAxiosRetry)(logger, retryOptions);
18
+ const axios = (0, axios_1.getAxios)();
19
19
  try {
20
20
  operation.start({ options });
21
- const response = await axiosInstance.get(`${baseApiUrl}/api/manufacturers?where[slug][equals]=${slug}`);
21
+ const response = await axios.get(`${baseApiUrl}/api/manufacturers?where[slug][equals]=${slug}`);
22
22
  if (response.status !== 200) {
23
23
  const errorMessage = `Request to ${baseApiUrl}/api/manufacturers failed with status ${response.status}`;
24
24
  operation.fail(errorMessage);
@@ -35,6 +35,8 @@ const getManufacturer = async (options) => {
35
35
  return null;
36
36
  }
37
37
  const manufacturer = (0, parseManufacturer_1.parseManufacturer)(result, baseImageUrl);
38
+ // @ts-expect-error Property 'cached' does not exist
39
+ manufacturer.cached = response?.cached;
38
40
  operation.end({ manufacturer });
39
41
  return manufacturer;
40
42
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/manufacturer/getManufacturer/index.ts"],"names":[],"mappings":";;;AACA,gDAAiD;AAEjD,wDAAuD;AAEvD,sDAA6D;AAC7D,4DAAyD;AACzD,8DAAkF;AA2BlF;;;;GAIG;AACI,MAAM,eAAe,GAAG,KAAK,EAAE,OAA+B,EAAgC,EAAE;IACrG,MAAM,aAAa,GAAG,mBAAU,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;IAC7D,MAAM,EACJ,IAAI,EACJ,UAAU,GAAG,+BAAmB,EAChC,YAAY,GAAG,+BAAmB,EAClC,MAAM,GAAG,aAAa,EACtB,YAAY,GACb,GAAG,OAAO,CAAC;IACZ,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,uCAAuC,CAAC,CAAC;IAE5E,MAAM,aAAa,GAAG,IAAA,gCAAmB,EAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAEhE,IAAI,CAAC;QACH,SAAS,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;QAC7B,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,GAAG,CACtC,GAAG,UAAU,0CAA0C,IAAI,EAAE,CAC9D,CAAC;QACF,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC5B,MAAM,YAAY,GAAG,cAAc,UAAU,yCAAyC,QAAQ,CAAC,MAAM,EAAE,CAAC;YACxG,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC7B,MAAM,IAAI,yBAAY,CAAC,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QACxD,CAAC;QAED,IAAI,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC,EAAE,CAAC;YACvC,SAAS,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;YAC5C,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAErC,+CAA+C;QAC/C,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;YAC1B,SAAS,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;YACjE,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,YAAY,GAAG,IAAA,qCAAiB,EAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QAC7D,SAAS,CAAC,GAAG,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC;QAChC,OAAO,YAAY,CAAC;IACtB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,SAAS,CAAC,IAAI,CAAC,2EAA2E,CAAC,CAAC;QAC5F,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC,CAAC;AA3CW,QAAA,eAAe,mBA2C1B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/manufacturer/getManufacturer/index.ts"],"names":[],"mappings":";;;AACA,gDAAiD;AAEjD,wDAAuD;AAEvD,sDAA6D;AAC7D,4DAAyD;AACzD,8CAA8C;AAyB9C;;;;GAIG;AACI,MAAM,eAAe,GAAG,KAAK,EAAE,OAA+B,EAA+B,EAAE;IACpG,MAAM,aAAa,GAAG,mBAAU,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;IAC7D,MAAM,EACJ,IAAI,EACJ,UAAU,GAAG,+BAAmB,EAChC,YAAY,GAAG,+BAAmB,EAClC,MAAM,GAAG,aAAa,GACvB,GAAG,OAAO,CAAC;IACZ,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,uCAAuC,CAAC,CAAC;IAE5E,MAAM,KAAK,GAAG,IAAA,gBAAQ,GAAE,CAAC;IAEzB,IAAI,CAAC;QACH,SAAS,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;QAC7B,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAAqB,GAAG,UAAU,0CAA0C,IAAI,EAAE,CAAC,CAAC;QACpH,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC5B,MAAM,YAAY,GAAG,cAAc,UAAU,yCAAyC,QAAQ,CAAC,MAAM,EAAE,CAAC;YACxG,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC7B,MAAM,IAAI,yBAAY,CAAC,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QACxD,CAAC;QAED,IAAI,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC,EAAE,CAAC;YACvC,SAAS,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;YAC5C,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAErC,+CAA+C;QAC/C,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;YAC1B,SAAS,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;YACjE,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,YAAY,GAAuB,IAAA,qCAAiB,EAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QAEjF,oDAAoD;QACpD,YAAY,CAAC,MAAM,GAAG,QAAQ,EAAE,MAAM,CAAC;QAEvC,SAAS,CAAC,GAAG,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC;QAChC,OAAO,YAAY,CAAC;IACtB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,SAAS,CAAC,IAAI,CAAC,2EAA2E,CAAC,CAAC;QAC5F,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC,CAAC;AA5CW,QAAA,eAAe,mBA4C1B"}
@@ -41,6 +41,7 @@ export interface GetManufacturersResponse {
41
41
  limit: number;
42
42
  page: number;
43
43
  pageCount: number;
44
+ cached?: boolean;
44
45
  }
45
46
  /**
46
47
  * Retrieves a collection of manufacturer from the Device CMS.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/manufacturer/getManufacturers/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAI3C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG3C,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD,MAAM,WAAW,uBAAuB;IACtC;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,YAAY,CAAC,EAAE,YAAY,EAAE,CAAC;IAC9B;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,wBAAwB;IACvC,aAAa,EAAE,YAAY,EAAE,CAAC;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,aAAmB,uBAAuB,KAAQ,OAAO,CAAC,wBAAwB,CAoC9G,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/manufacturer/getManufacturers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAI3C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG3C,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAGzD,MAAM,WAAW,uBAAuB;IACtC;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,YAAY,CAAC,EAAE,YAAY,EAAE,CAAC;IAC9B;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,wBAAwB;IACvC,aAAa,EAAE,YAAY,EAAE,CAAC;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,aAAmB,uBAAuB,KAAQ,OAAO,CAAC,wBAAwB,CA0C9G,CAAC"}
@@ -1,14 +1,11 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.getManufacturers = void 0;
7
- const axios_1 = __importDefault(require("axios"));
8
4
  const logger_1 = require("../../common/logger");
9
5
  const exceptions_1 = require("../../common/exceptions");
10
6
  const constants_1 = require("../../common/constants");
11
7
  const parseManufacturer_1 = require("../parseManufacturer");
8
+ const axios_1 = require("../../common/axios");
12
9
  /**
13
10
  * Retrieves a collection of manufacturer from the Device CMS.
14
11
  * @param options The options to use during the getManufacturers operation.
@@ -18,10 +15,11 @@ const getManufacturers = async (options = {}) => {
18
15
  const defaultLogger = logger_1.baseLogger.function("getManufacturers");
19
16
  const { limit = 10, page = 1, baseApiUrl = constants_1.PRODUCTION_BASE_URL, baseImageUrl = constants_1.PRODUCTION_BASE_URL, logger = defaultLogger, slugs = [], } = options;
20
17
  const operation = logger.operation("get manufacturers from Payload CMS API");
18
+ const axios = (0, axios_1.getAxios)();
21
19
  try {
22
20
  const slugQuery = slugs.length ? `&where[slug][in]=${slugs.join(",")}` : "";
23
21
  operation.start({ options });
24
- const response = await axios_1.default.get(`${baseApiUrl}/api/manufacturers?limit=${limit}&page=${page}${slugQuery}`);
22
+ const response = await axios.get(`${baseApiUrl}/api/manufacturers?limit=${limit}&page=${page}${slugQuery}`);
25
23
  if (response.status !== 200) {
26
24
  const errorMessage = `Request to ${baseApiUrl}/api/manufacturers failed with status ${response.status}`;
27
25
  operation.fail(errorMessage);
@@ -34,6 +32,8 @@ const getManufacturers = async (options = {}) => {
34
32
  page: response.data.page,
35
33
  pageCount: response.data.totalPages,
36
34
  };
35
+ // @ts-expect-error Property 'cached' does not exist
36
+ result.cached = response?.cached;
37
37
  operation.end({ result });
38
38
  return result;
39
39
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/manufacturer/getManufacturers/index.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAE1B,gDAAiD;AAEjD,wDAAuD;AAEvD,sDAA6D;AAC7D,4DAAyD;AA8CzD;;;;GAIG;AACI,MAAM,gBAAgB,GAAG,KAAK,EAAE,UAAmC,EAAE,EAAqC,EAAE;IACjH,MAAM,aAAa,GAAG,mBAAU,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAC9D,MAAM,EACJ,KAAK,GAAG,EAAE,EACV,IAAI,GAAG,CAAC,EACR,UAAU,GAAG,+BAAmB,EAChC,YAAY,GAAG,+BAAmB,EAClC,MAAM,GAAG,aAAa,EACtB,KAAK,GAAG,EAAE,GACX,GAAG,OAAO,CAAC;IACZ,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,wCAAwC,CAAC,CAAC;IAE7E,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,oBAAoB,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5E,SAAS,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;QAC7B,MAAM,QAAQ,GAAG,MAAM,eAAK,CAAC,GAAG,CAC9B,GAAG,UAAU,4BAA4B,KAAK,SAAS,IAAI,GAAG,SAAS,EAAE,CAC1E,CAAC;QACF,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC5B,MAAM,YAAY,GAAG,cAAc,UAAU,yCAAyC,QAAQ,CAAC,MAAM,EAAE,CAAC;YACxG,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC7B,MAAM,IAAI,yBAAY,CAAC,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QACxD,CAAC;QACD,MAAM,MAAM,GAA6B;YACvC,aAAa,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAA,qCAAiB,EAAC,GAAG,EAAE,YAAY,CAAC,CAAC;YACpF,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,SAAS;YAC9B,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK;YAC1B,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI;YACxB,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,UAAU;SACpC,CAAC;QACF,SAAS,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;QAC1B,OAAO,MAAM,CAAC;IAChB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,SAAS,CAAC,IAAI,CAAC,2EAA2E,CAAC,CAAC;QAC5F,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC,CAAC;AApCW,QAAA,gBAAgB,oBAoC3B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/manufacturer/getManufacturers/index.ts"],"names":[],"mappings":";;;AACA,gDAAiD;AAEjD,wDAAuD;AAEvD,sDAA6D;AAC7D,4DAAyD;AAEzD,8CAA8C;AA8C9C;;;;GAIG;AACI,MAAM,gBAAgB,GAAG,KAAK,EAAE,UAAmC,EAAE,EAAqC,EAAE;IACjH,MAAM,aAAa,GAAG,mBAAU,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAC9D,MAAM,EACJ,KAAK,GAAG,EAAE,EACV,IAAI,GAAG,CAAC,EACR,UAAU,GAAG,+BAAmB,EAChC,YAAY,GAAG,+BAAmB,EAClC,MAAM,GAAG,aAAa,EACtB,KAAK,GAAG,EAAE,GACX,GAAG,OAAO,CAAC;IACZ,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,wCAAwC,CAAC,CAAC;IAE7E,MAAM,KAAK,GAAG,IAAA,gBAAQ,GAAE,CAAC;IAEzB,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,oBAAoB,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5E,SAAS,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;QAC7B,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAC9B,GAAG,UAAU,4BAA4B,KAAK,SAAS,IAAI,GAAG,SAAS,EAAE,CAC1E,CAAC;QACF,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC5B,MAAM,YAAY,GAAG,cAAc,UAAU,yCAAyC,QAAQ,CAAC,MAAM,EAAE,CAAC;YACxG,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC7B,MAAM,IAAI,yBAAY,CAAC,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QACxD,CAAC;QACD,MAAM,MAAM,GAA6B;YACvC,aAAa,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAA,qCAAiB,EAAC,GAAG,EAAE,YAAY,CAAC,CAAC;YACpF,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,SAAS;YAC9B,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK;YAC1B,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI;YACxB,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,UAAU;SACpC,CAAC;QAEF,oDAAoD;QACpD,MAAM,CAAC,MAAM,GAAG,QAAQ,EAAE,MAAM,CAAC;QAEjC,SAAS,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;QAC1B,OAAO,MAAM,CAAC;IAChB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,SAAS,CAAC,IAAI,CAAC,2EAA2E,CAAC,CAAC;QAC5F,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC,CAAC;AA1CW,QAAA,gBAAgB,oBA0C3B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@texturehq/device",
3
- "version": "1.7.1",
3
+ "version": "1.7.2",
4
4
  "author": "Will Laeri <will@texture.energy>",
5
5
  "description": "A type-safe client for validating device data",
6
6
  "main": "dist/index.js",
@@ -31,6 +31,7 @@
31
31
  "dependencies": {
32
32
  "@texturehq/logger": "^2.0.0",
33
33
  "axios": "^1.6.7",
34
+ "axios-cache-interceptor": "^1.8.0",
34
35
  "axios-retry": "^4.5.0",
35
36
  "zod": "^3.22.4"
36
37
  }
@@ -1,18 +0,0 @@
1
- import { AxiosInstance } from "axios";
2
- import { Logger } from "@texturehq/logger";
3
- export interface RetryOptions {
4
- /**
5
- * The number of retries to attempt before failing.
6
- * @default 3
7
- */
8
- retries?: number;
9
- }
10
- /**
11
- * Configures axios instance with retry capabilities
12
- * @param logger Logger instance to use for retry logging
13
- * @param retryOptions Optional retry configuration
14
- * @param axiosInstance Optional axios instance to configure (defaults to global axios)
15
- * @returns The configured axios instance
16
- */
17
- export declare function configureAxiosRetry(logger: Logger, retryOptions?: RetryOptions, axiosInstance?: AxiosInstance): AxiosInstance;
18
- //# sourceMappingURL=retryAxios.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"retryAxios.d.ts","sourceRoot":"","sources":["../../../src/common/utils/retryAxios.ts"],"names":[],"mappings":"AAAA,OAAc,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAE7C,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,MAAM,WAAW,YAAY;IAC3B;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,MAAM,EACd,YAAY,CAAC,EAAE,YAAY,EAC3B,aAAa,GAAE,aAAqB,GACnC,aAAa,CAgBf"}
@@ -1,31 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.configureAxiosRetry = configureAxiosRetry;
7
- const axios_1 = __importDefault(require("axios"));
8
- const axios_retry_1 = __importDefault(require("axios-retry"));
9
- /**
10
- * Configures axios instance with retry capabilities
11
- * @param logger Logger instance to use for retry logging
12
- * @param retryOptions Optional retry configuration
13
- * @param axiosInstance Optional axios instance to configure (defaults to global axios)
14
- * @returns The configured axios instance
15
- */
16
- function configureAxiosRetry(logger, retryOptions, axiosInstance = axios_1.default) {
17
- if (!retryOptions) {
18
- return axiosInstance;
19
- }
20
- const retryConfig = {
21
- retries: retryOptions.retries || 3,
22
- retryDelay: axios_retry_1.default.exponentialDelay,
23
- onRetry: (retryCount, error) => {
24
- logger.warn("retryCount", { retryCount });
25
- logger.warn("error", { error });
26
- },
27
- };
28
- (0, axios_retry_1.default)(axiosInstance, retryConfig);
29
- return axiosInstance;
30
- }
31
- //# sourceMappingURL=retryAxios.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"retryAxios.js","sourceRoot":"","sources":["../../../src/common/utils/retryAxios.ts"],"names":[],"mappings":";;;;;AAmBA,kDAoBC;AAvCD,kDAA6C;AAC7C,8DAA4D;AAW5D;;;;;;GAMG;AACH,SAAgB,mBAAmB,CACjC,MAAc,EACd,YAA2B,EAC3B,gBAA+B,eAAK;IAEpC,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,MAAM,WAAW,GAAsB;QACrC,OAAO,EAAE,YAAY,CAAC,OAAO,IAAI,CAAC;QAClC,UAAU,EAAE,qBAAU,CAAC,gBAAgB;QACvC,OAAO,EAAE,CAAC,UAAU,EAAE,KAAK,EAAE,EAAE;YAC7B,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;YAC1C,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAClC,CAAC;KACF,CAAC;IAEF,IAAA,qBAAU,EAAC,aAAa,EAAE,WAAW,CAAC,CAAC;IACvC,OAAO,aAAa,CAAC;AACvB,CAAC"}