@trapi/metadata 1.2.2 → 1.2.3

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,5 +1,5 @@
1
1
  import type { CacheData, CacheOptionsInput } from './type';
2
- export declare class CacheDriver {
2
+ export declare class CacheClient {
3
3
  private readonly options;
4
4
  constructor(input?: string | boolean | CacheOptionsInput);
5
5
  save(data: CacheData): Promise<string | undefined>;
@@ -10,5 +10,6 @@ export declare class CacheDriver {
10
10
  clear(): Promise<void>;
11
11
  private buildFilePath;
12
12
  private buildFileName;
13
+ protected serialize(input: unknown): string;
13
14
  }
14
- //# sourceMappingURL=driver.d.ts.map
15
+ //# sourceMappingURL=client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"driver.d.ts","sourceRoot":"","sources":["../../src/cache/driver.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,SAAS,EAAgB,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAEzE,qBAAa,WAAW;IACpB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAe;gBAE3B,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,iBAAiB;IAMlD,IAAI,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAYlD,GAAG,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC;IA4BlE;;OAEG;IAGG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAwB5B,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,aAAa;CAMxB"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/cache/client.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,SAAS,EAAgB,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAEzE,qBAAa,WAAW;IACpB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAe;gBAE3B,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,iBAAiB;IAMlD,IAAI,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAYlD,GAAG,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC;IA4BlE;;OAEG;IAGG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAwB5B,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,aAAa;IAOrB,SAAS,CAAC,SAAS,CAAC,KAAK,EAAE,OAAO,GAAI,MAAM;CAiB/C"}
@@ -9,12 +9,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
9
9
  return (mod && mod.__esModule) ? mod : { "default": mod };
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.CacheDriver = void 0;
12
+ exports.CacheClient = void 0;
13
13
  const locter_1 = require("locter");
14
14
  const node_fs_1 = __importDefault(require("node:fs"));
15
15
  const node_path_1 = __importDefault(require("node:path"));
16
16
  const utils_1 = require("./utils");
17
- class CacheDriver {
17
+ class CacheClient {
18
18
  constructor(input) {
19
19
  this.options = (0, utils_1.buildCacheOptions)(input);
20
20
  }
@@ -24,7 +24,7 @@ class CacheDriver {
24
24
  return undefined;
25
25
  }
26
26
  const filePath = this.buildFilePath(undefined, data.sourceFilesSize);
27
- await node_fs_1.default.promises.writeFile(filePath, JSON.stringify(data));
27
+ await node_fs_1.default.promises.writeFile(filePath, this.serialize(data));
28
28
  return filePath;
29
29
  }
30
30
  async get(sourceFilesSize) {
@@ -79,6 +79,20 @@ class CacheDriver {
79
79
  }
80
80
  return `.swagger-${hash ?? (0, utils_1.generateFileHash)(sourceFilesSize)}.json`;
81
81
  }
82
+ serialize(input) {
83
+ let cache = [];
84
+ const str = JSON.stringify(input, (key, value) => {
85
+ if ((0, locter_1.isObject)(value) || Array.isArray(value)) {
86
+ if (cache.indexOf(value) !== -1) {
87
+ return undefined;
88
+ }
89
+ cache.push(value);
90
+ }
91
+ return value;
92
+ });
93
+ cache = undefined;
94
+ return str;
95
+ }
82
96
  }
83
- exports.CacheDriver = CacheDriver;
84
- //# sourceMappingURL=driver.js.map
97
+ exports.CacheClient = CacheClient;
98
+ //# sourceMappingURL=client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"driver.js","sourceRoot":"","sources":["../../src/cache/driver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/cache/client.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- export * from './driver';
1
+ export * from './client';
2
2
  export * from './type';
3
3
  export * from './utils';
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -20,7 +20,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
20
20
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
21
21
  };
22
22
  Object.defineProperty(exports, "__esModule", { value: true });
23
- __exportStar(require("./driver"), exports);
23
+ __exportStar(require("./client"), exports);
24
24
  __exportStar(require("./type"), exports);
25
25
  __exportStar(require("./utils"), exports);
26
26
  //# sourceMappingURL=index.js.map
@@ -20,7 +20,7 @@ class MetadataGenerator {
20
20
  this.circularDependencyResolvers = new Array();
21
21
  this.nodes = [];
22
22
  this.config = context.options;
23
- this.cache = new cache_1.CacheDriver(context.options.cache);
23
+ this.cache = new cache_1.CacheClient(context.options.cache);
24
24
  this.decoratorResolver = new decorator_1.DecoratorResolver();
25
25
  this.program = (0, typescript_1.createProgram)(context.sourceFiles, context.compilerOptions || {});
26
26
  this.typeChecker = this.program.getTypeChecker();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@trapi/metadata",
3
- "version": "1.2.2",
3
+ "version": "1.2.3",
4
4
  "description": "Generate REST-API metadata scheme from TypeScript Decorators.",
5
5
  "main": "./dist/index.js",
6
6
  "typings": "./dist/index.d.ts",