@nmxjs/api 1.1.23 → 1.1.24

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,4 +1,5 @@
1
1
  export interface IGenerateProtoMessagesOptions {
2
2
  messageName: string;
3
3
  objSchema: object;
4
+ existMessageNames: string[];
4
5
  }
@@ -1,4 +1,7 @@
1
1
  import { IGenerateProtoMessagesOptions } from '../interfaces';
2
2
  export declare class GenerateProtoMessagesService {
3
- call({ messageName, objSchema }: IGenerateProtoMessagesOptions): string[];
3
+ call({ messageName, objSchema, existMessageNames }: IGenerateProtoMessagesOptions): {
4
+ data: string[];
5
+ messageNames: string[];
6
+ };
4
7
  }
@@ -9,9 +9,19 @@ Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.GenerateProtoMessagesService = void 0;
10
10
  const common_1 = require("@nestjs/common");
11
11
  let GenerateProtoMessagesService = class GenerateProtoMessagesService {
12
- call({ messageName, objSchema }) {
12
+ call({ messageName, objSchema, existMessageNames }) {
13
+ let messageNames = [messageName];
14
+ if (existMessageNames.find(v => v === messageName)) {
15
+ return {
16
+ data: [],
17
+ messageNames: [],
18
+ };
19
+ }
13
20
  if (!objSchema) {
14
- return [`message ${messageName} {}\n\n`];
21
+ return {
22
+ data: [`message ${messageName} {}\n\n`],
23
+ messageNames,
24
+ };
15
25
  }
16
26
  const fieldsResult = [`message ${messageName} {\n`];
17
27
  const nestedResult = [];
@@ -37,16 +47,22 @@ let GenerateProtoMessagesService = class GenerateProtoMessagesService {
37
47
  }
38
48
  else {
39
49
  fieldStr += `${fieldData.type.name} `;
40
- nestedResult.push(...this.call({
50
+ const res = this.call({
41
51
  messageName: fieldData.type.name,
42
52
  objSchema: fieldData.type,
43
- }));
53
+ existMessageNames: [...messageNames, ...existMessageNames],
54
+ });
55
+ nestedResult.push(...res.data);
56
+ messageNames = Array.from(new Set([...messageNames, ...res.messageNames]));
44
57
  }
45
58
  fieldStr += `${fieldName} = ${i + 1};\n`;
46
59
  fieldsResult.push(fieldStr);
47
60
  });
48
61
  fieldsResult.push('}\n\n');
49
- return [...fieldsResult.join(''), ...nestedResult];
62
+ return {
63
+ data: [...fieldsResult.join(''), ...nestedResult],
64
+ messageNames,
65
+ };
50
66
  }
51
67
  };
52
68
  exports.GenerateProtoMessagesService = GenerateProtoMessagesService;
@@ -1 +1 @@
1
- {"version":3,"file":"GenerateProtoMessagesService.js","sourceRoot":"","sources":["../../../src/GrpcTransport/services/GenerateProtoMessagesService.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAA4C;AAIrC,IAAM,4BAA4B,GAAlC,MAAM,4BAA4B;IAChC,IAAI,CAAC,EAAE,WAAW,EAAE,SAAS,EAAiC;QACnE,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,CAAC,WAAW,WAAW,SAAS,CAAC,CAAC;QAC3C,CAAC;QAED,MAAM,YAAY,GAAa,CAAC,WAAW,WAAW,MAAM,CAAC,CAAC;QAC9D,MAAM,YAAY,GAAa,EAAE,CAAC;QAElC,MAAM,cAAc,GAAa,OAAO,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;QAEtG,cAAc,CAAC,OAAO,CAAC,CAAC,aAAa,EAAE,CAAC,EAAE,EAAE;YAC1C,MAAM,CAAC,EAAE,SAAS,CAAC,GAAG,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC/C,MAAM,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;YAChE,IAAI,QAAQ,GAAG,MAAM,CAAC;YAEtB,IAAI,SAAS,CAAC,KAAK,EAAE,CAAC;gBACpB,QAAQ,IAAI,WAAW,CAAC;YAC1B,CAAC;YAED,IAAI,SAAS,CAAC,IAAI,KAAK,MAAM,IAAI,SAAS,CAAC,IAAI,EAAE,CAAC;gBAChD,QAAQ,IAAI,SAAS,CAAC;YACxB,CAAC;iBAAM,IAAI,SAAS,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBACrC,QAAQ,IAAI,SAAS,CAAC;YACxB,CAAC;iBAAM,IAAI,SAAS,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBACtC,QAAQ,IAAI,OAAO,CAAC;YACtB,CAAC;iBAAM,IAAI,SAAS,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBACrC,QAAQ,IAAI,yBAAyB,CAAC;YACxC,CAAC;iBAAM,CAAC;gBACN,QAAQ,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC;gBACtC,YAAY,CAAC,IAAI,CACf,GAAG,IAAI,CAAC,IAAI,CAAC;oBACX,WAAW,EAAE,SAAS,CAAC,IAAI,CAAC,IAAI;oBAChC,SAAS,EAAE,SAAS,CAAC,IAAI;iBAC1B,CAAC,CACH,CAAC;YACJ,CAAC;YAED,QAAQ,IAAI,GAAG,SAAS,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC;YAEzC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;QAEH,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAE3B,OAAO,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,GAAG,YAAY,CAAC,CAAC;IACrD,CAAC;CACF,CAAA;AA/CY,oEAA4B;uCAA5B,4BAA4B;IADxC,IAAA,mBAAU,GAAE;GACA,4BAA4B,CA+CxC"}
1
+ {"version":3,"file":"GenerateProtoMessagesService.js","sourceRoot":"","sources":["../../../src/GrpcTransport/services/GenerateProtoMessagesService.ts"],"names":[],"mappings":"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"}
@@ -34,19 +34,26 @@ let GenerateProtoService = class GenerateProtoService {
34
34
  `service ${protoServiceName} {\n`,
35
35
  ];
36
36
  const protoMessages = [];
37
+ const existMessageNames = [];
37
38
  for (const methodName of Object.keys(schema)) {
38
39
  const upperMethodName = (0, utils_1.firstLetterUpperCase)({ str: methodName });
39
40
  const requestMethodName = `${upperMethodName}Request`;
40
41
  const responseMethodName = `${upperMethodName}Response`;
41
42
  protoFileData.push(` rpc ${methodName} (${requestMethodName}) returns (${responseMethodName}) {}\n`);
42
- protoMessages.push(...this.generateProtoMessagesService.call({
43
+ let res = this.generateProtoMessagesService.call({
43
44
  messageName: requestMethodName,
44
45
  objSchema: schema[methodName].request,
45
- }));
46
- protoMessages.push(...this.generateProtoMessagesService.call({
46
+ existMessageNames,
47
+ });
48
+ protoMessages.push(...res.data);
49
+ existMessageNames.push(...res.messageNames);
50
+ res = this.generateProtoMessagesService.call({
47
51
  messageName: responseMethodName,
48
52
  objSchema: schema[methodName].response,
49
- }));
53
+ existMessageNames,
54
+ });
55
+ protoMessages.push(...res.data);
56
+ existMessageNames.push(...res.messageNames);
50
57
  }
51
58
  protoFileData.push('}\n\n');
52
59
  fs.writeFileSync(protoPath, [...protoFileData, ...protoMessages.join('')].join(''));
@@ -1 +1 @@
1
- {"version":3,"file":"GenerateProtoService.js","sourceRoot":"","sources":["../../../src/GrpcTransport/services/GenerateProtoService.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yBAAyB;AACzB,yBAAyB;AACzB,6BAA6B;AAC7B,2CAA4C;AAC5C,wCAAoD;AAEpD,mEAAgE;AAChE,iFAA8E;AAGvE,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;IAC/B,YACqB,qBAA4C,EAC5C,4BAA0D;QAD1D,0BAAqB,GAArB,qBAAqB,CAAuB;QAC5C,iCAA4B,GAA5B,4BAA4B,CAA8B;IAC5E,CAAC;IAEG,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,EAA4B;QACvD,MAAM,WAAW,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC7D,MAAM,SAAS,GAAG,IAAA,4BAAoB,EAAC,EAAE,GAAG,EAAE,WAAW,EAAE,CAAC,CAAC;QAC7D,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,GAAG,SAAS,QAAQ,CAAC,CAAC;QAC/D,MAAM,gBAAgB,GAAG,GAAG,SAAS,SAAS,CAAC;QAC/C,MAAM,aAAa,GAAG;YACpB,wBAAwB;YACxB,WAAW,WAAW,OAAO;YAC7B,4CAA4C;YAC5C,WAAW,gBAAgB,MAAM;SAClC,CAAC;QACF,MAAM,aAAa,GAAa,EAAE,CAAC;QAEnC,KAAK,MAAM,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7C,MAAM,eAAe,GAAG,IAAA,4BAAoB,EAAC,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,CAAC;YAClE,MAAM,iBAAiB,GAAG,GAAG,eAAe,SAAS,CAAC;YACtD,MAAM,kBAAkB,GAAG,GAAG,eAAe,UAAU,CAAC;YACxD,aAAa,CAAC,IAAI,CAAC,WAAW,UAAU,KAAK,iBAAiB,cAAc,kBAAkB,QAAQ,CAAC,CAAC;YAExG,aAAa,CAAC,IAAI,CAChB,GAAG,IAAI,CAAC,4BAA4B,CAAC,IAAI,CAAC;gBACxC,WAAW,EAAE,iBAAiB;gBAC9B,SAAS,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC,OAAO;aACtC,CAAC,CACH,CAAC;YAEF,aAAa,CAAC,IAAI,CAChB,GAAG,IAAI,CAAC,4BAA4B,CAAC,IAAI,CAAC;gBACxC,WAAW,EAAE,kBAAkB;gBAC/B,SAAS,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC,QAAQ;aACvC,CAAC,CACH,CAAC;QACJ,CAAC;QAED,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAE5B,EAAE,CAAC,aAAa,CAAC,SAAS,EAAE,CAAC,GAAG,aAAa,EAAE,GAAG,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QAEpF,OAAO;YACL,SAAS;YACT,WAAW;YACX,gBAAgB;SACjB,CAAC;IACJ,CAAC;CACF,CAAA;AAlDY,oDAAoB;+BAApB,oBAAoB;IADhC,IAAA,mBAAU,GAAE;qCAGiC,6CAAqB;QACd,2DAA4B;GAHpE,oBAAoB,CAkDhC"}
1
+ {"version":3,"file":"GenerateProtoService.js","sourceRoot":"","sources":["../../../src/GrpcTransport/services/GenerateProtoService.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yBAAyB;AACzB,yBAAyB;AACzB,6BAA6B;AAC7B,2CAA4C;AAC5C,wCAAoD;AAEpD,mEAAgE;AAChE,iFAA8E;AAGvE,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;IAC/B,YACqB,qBAA4C,EAC5C,4BAA0D;QAD1D,0BAAqB,GAArB,qBAAqB,CAAuB;QAC5C,iCAA4B,GAA5B,4BAA4B,CAA8B;IAC5E,CAAC;IAEG,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,EAA4B;QACvD,MAAM,WAAW,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC7D,MAAM,SAAS,GAAG,IAAA,4BAAoB,EAAC,EAAE,GAAG,EAAE,WAAW,EAAE,CAAC,CAAC;QAC7D,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,GAAG,SAAS,QAAQ,CAAC,CAAC;QAC/D,MAAM,gBAAgB,GAAG,GAAG,SAAS,SAAS,CAAC;QAC/C,MAAM,aAAa,GAAG;YACpB,wBAAwB;YACxB,WAAW,WAAW,OAAO;YAC7B,4CAA4C;YAC5C,WAAW,gBAAgB,MAAM;SAClC,CAAC;QACF,MAAM,aAAa,GAAa,EAAE,CAAC;QACnC,MAAM,iBAAiB,GAAa,EAAE,CAAC;QAEvC,KAAK,MAAM,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7C,MAAM,eAAe,GAAG,IAAA,4BAAoB,EAAC,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,CAAC;YAClE,MAAM,iBAAiB,GAAG,GAAG,eAAe,SAAS,CAAC;YACtD,MAAM,kBAAkB,GAAG,GAAG,eAAe,UAAU,CAAC;YACxD,aAAa,CAAC,IAAI,CAAC,WAAW,UAAU,KAAK,iBAAiB,cAAc,kBAAkB,QAAQ,CAAC,CAAC;YAExG,IAAI,GAAG,GAAG,IAAI,CAAC,4BAA4B,CAAC,IAAI,CAAC;gBAC/C,WAAW,EAAE,iBAAiB;gBAC9B,SAAS,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC,OAAO;gBACrC,iBAAiB;aAClB,CAAC,CAAC;YAEH,aAAa,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;YAChC,iBAAiB,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,YAAY,CAAC,CAAC;YAE5C,GAAG,GAAG,IAAI,CAAC,4BAA4B,CAAC,IAAI,CAAC;gBAC3C,WAAW,EAAE,kBAAkB;gBAC/B,SAAS,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC,QAAQ;gBACtC,iBAAiB;aAClB,CAAC,CAAC;YAEH,aAAa,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;YAChC,iBAAiB,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,YAAY,CAAC,CAAC;QAC9C,CAAC;QAED,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAE5B,EAAE,CAAC,aAAa,CAAC,SAAS,EAAE,CAAC,GAAG,aAAa,EAAE,GAAG,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QAEpF,OAAO;YACL,SAAS;YACT,WAAW;YACX,gBAAgB;SACjB,CAAC;IACJ,CAAC;CACF,CAAA;AAvDY,oDAAoB;+BAApB,oBAAoB;IADhC,IAAA,mBAAU,GAAE;qCAGiC,6CAAqB;QACd,2DAA4B;GAHpE,oBAAoB,CAuDhC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nmxjs/api",
3
- "version": "1.1.23",
3
+ "version": "1.1.24",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",