@nmxjs/api 1.1.14 → 1.1.16

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.
@@ -25,7 +25,7 @@ class ApiRouteCoreModule {
25
25
  if (!servicesInfo.length) {
26
26
  return null;
27
27
  }
28
- return servicesInfo.reduce((res, v) => deepmerge(res, v.options));
28
+ return servicesInfo.reduce((res, v) => deepmerge(res, v.options), {});
29
29
  },
30
30
  inject: servicesKeys,
31
31
  },
@@ -1 +1 @@
1
- {"version":3,"file":"ApiRouteCoreModule.js","sourceRoot":"","sources":["../../src/ApiRouterCore/ApiRouteCoreModule.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ApiRouteCoreModule.js","sourceRoot":"","sources":["../../src/ApiRouterCore/ApiRouteCoreModule.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,10 @@
1
1
  /// <reference types="types" />
2
+ import { ClientNats } from '@nestjs/microservices';
2
3
  import { IConfig } from '@nmxjs/config';
3
4
  import type { ICreateApiServiceOptions, IApiServiceWithInfo } from '../../ApiService';
4
5
  export declare class CreateApiService {
5
6
  protected readonly config: IConfig;
7
+ protected readonly clients: Map<string, ClientNats>;
6
8
  constructor(config: IConfig);
7
9
  call(options: ICreateApiServiceOptions): Promise<IApiServiceWithInfo>;
8
10
  }
@@ -17,10 +17,10 @@ const objHash = require("object-hash");
17
17
  const microservices_1 = require("@nestjs/microservices");
18
18
  const common_1 = require("@nestjs/common");
19
19
  const config_1 = require("@nmxjs/config");
20
- const clients = new Map();
21
20
  let CreateApiService = class CreateApiService {
22
21
  constructor(config) {
23
22
  this.config = config;
23
+ this.clients = new Map();
24
24
  }
25
25
  async call(options) {
26
26
  const natsOptions = {
@@ -28,22 +28,22 @@ let CreateApiService = class CreateApiService {
28
28
  options: Object.assign({ servers: this.config.transport.services.map(v => `nats://${v.host || '127.0.0.1'}:${v.port || 4222}`).sort() }, (this.config.transport.keepaliveTimeMs ? { pingInterval: this.config.transport.keepaliveTimeMs } : {})),
29
29
  };
30
30
  const key = objHash(natsOptions);
31
- let client = clients.get(key);
31
+ let client = this.clients.get(key);
32
32
  if (!client) {
33
33
  client = microservices_1.ClientProxyFactory.create(natsOptions);
34
+ this.clients.set(key, client);
34
35
  await client.connect();
35
- clients.set(key, client);
36
+ const onClose = () => {
37
+ client.close();
38
+ this.clients.delete(key);
39
+ };
40
+ process.once('SIGTERM', onClose);
41
+ process.once('SIGINT', onClose);
36
42
  }
37
43
  const service = Object.keys(options.schema).reduce((res, methodName) => {
38
44
  res[methodName] = data => client.send(`${options.subService || options.service}.${methodName}`, data);
39
45
  return res;
40
46
  }, {});
41
- const onClose = () => {
42
- client.close();
43
- clients.delete(key);
44
- };
45
- process.once('SIGTERM', onClose);
46
- process.once('SIGINT', onClose);
47
47
  return {
48
48
  serviceName: options.service,
49
49
  options: natsOptions,
@@ -1 +1 @@
1
- {"version":3,"file":"CreateApiService.js","sourceRoot":"","sources":["../../../src/NatsTransport/services/CreateApiService.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,uCAAuC;AACvC,yDAAmF;AACnF,2CAAoD;AAEpD,0CAAmD;AAGnD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAsB,CAAC;AAGvC,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;IAC3B,YAAkD,MAAe;QAAf,WAAM,GAAN,MAAM,CAAS;IAAG,CAAC;IAE9D,KAAK,CAAC,IAAI,CAAC,OAAiC;QACjD,MAAM,WAAW,GAAgB;YAC/B,SAAS,EAAE,yBAAS,CAAC,IAAI;YACzB,OAAO,kBACL,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,IAAI,IAAI,WAAW,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IACzG,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAC1G;SACF,CAAC;QAEF,MAAM,GAAG,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;QACjC,IAAI,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAE9B,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,GAAG,kCAAkB,CAAC,MAAM,CAAC,WAAW,CAAe,CAAC;YAC9D,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;YACvB,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAC3B,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE;YACrE,GAAG,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,OAAO,IAAI,UAAU,EAAE,EAAE,IAAI,CAAC,CAAC;YACtG,OAAO,GAAG,CAAC;QACb,CAAC,EAAE,EAAE,CAAC,CAAC;QAEP,MAAM,OAAO,GAAG,GAAG,EAAE;YACnB,MAAM,CAAC,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACtB,CAAC,CAAC;QAEF,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QACjC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAEhC,OAAO;YACL,WAAW,EAAE,OAAO,CAAC,OAAO;YAC5B,OAAO,EAAE,WAAW;YACpB,OAAO;SACR,CAAC;IACJ,CAAC;CACF,CAAA;AAxCY,4CAAgB;2BAAhB,gBAAgB;IAD5B,IAAA,mBAAU,GAAE;IAEE,WAAA,IAAA,eAAM,EAAC,kBAAS,CAAC,CAAA;;GADnB,gBAAgB,CAwC5B"}
1
+ {"version":3,"file":"CreateApiService.js","sourceRoot":"","sources":["../../../src/NatsTransport/services/CreateApiService.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,uCAAuC;AACvC,yDAAmF;AACnF,2CAAoD;AAEpD,0CAAmD;AAI5C,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;IAG3B,YAA+B,MAAkC;QAAf,WAAM,GAAN,MAAM,CAAS;QAF9C,YAAO,GAAG,IAAI,GAAG,EAAsB,CAAC;IAES,CAAC;IAE9D,KAAK,CAAC,IAAI,CAAC,OAAiC;QACjD,MAAM,WAAW,GAAgB;YAC/B,SAAS,EAAE,yBAAS,CAAC,IAAI;YACzB,OAAO,kBACL,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,IAAI,IAAI,WAAW,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IACzG,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAC1G;SACF,CAAC;QAEF,MAAM,GAAG,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;QACjC,IAAI,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAEnC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,GAAG,kCAAkB,CAAC,MAAM,CAAC,WAAW,CAAe,CAAC;YAC9D,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YAC9B,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;YACvB,MAAM,OAAO,GAAG,GAAG,EAAE;gBACnB,MAAM,CAAC,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAC3B,CAAC,CAAC;YAEF,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YACjC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAClC,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE;YACrE,GAAG,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,OAAO,IAAI,UAAU,EAAE,EAAE,IAAI,CAAC,CAAC;YACtG,OAAO,GAAG,CAAC;QACb,CAAC,EAAE,EAAE,CAAC,CAAC;QAEP,OAAO;YACL,WAAW,EAAE,OAAO,CAAC,OAAO;YAC5B,OAAO,EAAE,WAAW;YACpB,OAAO;SACR,CAAC;IACJ,CAAC;CACF,CAAA;AAzCY,4CAAgB;2BAAhB,gBAAgB;IAD5B,IAAA,mBAAU,GAAE;IAIE,WAAA,IAAA,eAAM,EAAC,kBAAS,CAAC,CAAA;;GAHnB,gBAAgB,CAyC5B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nmxjs/api",
3
- "version": "1.1.14",
3
+ "version": "1.1.16",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",