@dxos/protobuf-compiler 2.33.9-dev.b6f4ca19 → 2.33.9-dev.bba8fc00

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 (54) hide show
  1. package/dist/src/generator/context.d.ts +6 -0
  2. package/dist/src/generator/context.d.ts.map +1 -0
  3. package/dist/src/generator/context.js +6 -0
  4. package/dist/src/generator/context.js.map +1 -0
  5. package/dist/src/generator/declaration-generator.d.ts +2 -2
  6. package/dist/src/generator/declaration-generator.d.ts.map +1 -1
  7. package/dist/src/generator/declaration-generator.js +6 -6
  8. package/dist/src/generator/declaration-generator.js.map +1 -1
  9. package/dist/src/generator/enum.d.ts +2 -1
  10. package/dist/src/generator/enum.d.ts.map +1 -1
  11. package/dist/src/generator/enum.js +13 -1
  12. package/dist/src/generator/enum.js.map +1 -1
  13. package/dist/src/generator/file-generator.d.ts.map +1 -1
  14. package/dist/src/generator/file-generator.js +5 -1
  15. package/dist/src/generator/file-generator.js.map +1 -1
  16. package/dist/src/generator/message.d.ts +5 -2
  17. package/dist/src/generator/message.d.ts.map +1 -1
  18. package/dist/src/generator/message.js +13 -4
  19. package/dist/src/generator/message.js.map +1 -1
  20. package/dist/src/generator/serializer-definition-generator.d.ts +0 -1
  21. package/dist/src/generator/serializer-definition-generator.d.ts.map +1 -1
  22. package/dist/src/generator/service.d.ts +2 -2
  23. package/dist/src/generator/service.d.ts.map +1 -1
  24. package/dist/src/generator/service.js +11 -3
  25. package/dist/src/generator/service.js.map +1 -1
  26. package/dist/test/proto/gen/dxos/test/another.d.ts +4 -0
  27. package/dist/test/proto/gen/dxos/test/another.d.ts.map +1 -1
  28. package/dist/test/proto/gen/dxos/test/any.d.ts +5 -1
  29. package/dist/test/proto/gen/dxos/test/any.d.ts.map +1 -1
  30. package/dist/test/proto/gen/dxos/test/extensions.d.ts +14 -2
  31. package/dist/test/proto/gen/dxos/test/extensions.d.ts.map +1 -1
  32. package/dist/test/proto/gen/dxos/test/testfoo.d.ts +6 -2
  33. package/dist/test/proto/gen/dxos/test/testfoo.d.ts.map +1 -1
  34. package/dist/test/proto/gen/dxos/test.d.ts +106 -29
  35. package/dist/test/proto/gen/dxos/test.d.ts.map +1 -1
  36. package/dist/test/proto/gen/dxos/test.js +8 -0
  37. package/dist/test/proto/gen/dxos/test.js.map +1 -1
  38. package/dist/test/proto/gen/google/protobuf.d.ts +82 -82
  39. package/dist/test/proto/gen/google/protobuf.d.ts.map +1 -1
  40. package/dist/test/proto/gen/index.d.ts.map +1 -1
  41. package/dist/test/proto/gen/index.js +1 -1
  42. package/dist/test/proto/gen/index.js.map +1 -1
  43. package/dist/test/schema.test.js +18 -1
  44. package/dist/test/schema.test.js.map +1 -1
  45. package/dist/test/service.test.js +1 -0
  46. package/dist/test/service.test.js.map +1 -1
  47. package/dist/tsconfig.tsbuildinfo +1 -1
  48. package/package.json +2 -2
  49. package/src/generator/context.ts +10 -0
  50. package/src/generator/declaration-generator.ts +7 -7
  51. package/src/generator/enum.ts +26 -9
  52. package/src/generator/file-generator.ts +7 -1
  53. package/src/generator/message.ts +17 -6
  54. package/src/generator/service.ts +14 -3
@@ -0,0 +1,6 @@
1
+ import { SubstitutionsMap } from '../parser';
2
+ export interface GeneratorContext {
3
+ outputFilename: string;
4
+ subs: SubstitutionsMap;
5
+ }
6
+ //# sourceMappingURL=context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/generator/context.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAE7C,MAAM,WAAW,gBAAgB;IAC/B,cAAc,EAAE,MAAM,CAAA;IACtB,IAAI,EAAE,gBAAgB,CAAA;CACvB"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ //
3
+ // Copyright 2022 DXOS.org
4
+ //
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ //# sourceMappingURL=context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/generator/context.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE"}
@@ -1,6 +1,6 @@
1
1
  import * as protobufjs from 'protobufjs';
2
2
  import * as ts from 'typescript';
3
- import { SubstitutionsMap } from '../parser';
4
- export declare function createDeclarations(types: protobufjs.ReflectionObject[], subs: SubstitutionsMap): Generator<ts.Statement>;
3
+ import { GeneratorContext } from './context';
4
+ export declare function createDeclarations(types: protobufjs.ReflectionObject[], ctx: GeneratorContext): Generator<ts.Statement>;
5
5
  export declare const createTypeDictionary: (root: protobufjs.NamespaceBase) => ts.InterfaceDeclaration;
6
6
  //# sourceMappingURL=declaration-generator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"declaration-generator.d.ts","sourceRoot":"","sources":["../../../src/generator/declaration-generator.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,UAAU,MAAM,YAAY,CAAC;AACzC,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAGjC,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAQ7C,wBAAkB,kBAAkB,CAAE,KAAK,EAAE,UAAU,CAAC,gBAAgB,EAAE,EAAE,IAAI,EAAE,gBAAgB,GAAG,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,CAuB3H;AAeD,eAAO,MAAM,oBAAoB,SAAU,WAAW,aAAa,4BAclE,CAAC"}
1
+ {"version":3,"file":"declaration-generator.d.ts","sourceRoot":"","sources":["../../../src/generator/declaration-generator.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,UAAU,MAAM,YAAY,CAAC;AACzC,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAGjC,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAQ7C,wBAAkB,kBAAkB,CAAE,KAAK,EAAE,UAAU,CAAC,gBAAgB,EAAE,EAAE,GAAG,EAAE,gBAAgB,GAAG,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,CAuB1H;AAeD,eAAO,MAAM,oBAAoB,SAAU,WAAW,aAAa,4BAclE,CAAC"}
@@ -35,23 +35,23 @@ const message_1 = require("./message");
35
35
  const service_1 = require("./service");
36
36
  const types_1 = require("./types");
37
37
  const f = ts.factory;
38
- function* createDeclarations(types, subs) {
38
+ function* createDeclarations(types, ctx) {
39
39
  for (const obj of types) {
40
40
  if (obj instanceof protobufjs.Enum) {
41
- yield (0, enum_1.createEnumDeclaration)(obj);
41
+ yield (0, enum_1.createEnumDeclaration)(obj, ctx);
42
42
  }
43
43
  else if (obj instanceof protobufjs.Service) {
44
- yield (0, service_1.createServiceDeclaration)(obj, subs);
44
+ yield (0, service_1.createServiceDeclaration)(obj, ctx);
45
45
  }
46
46
  else if (obj instanceof protobufjs.Type) {
47
- yield (0, message_1.createMessageDeclaration)(obj, subs);
48
- const nested = Array.from(createDeclarations(obj.nestedArray, subs));
47
+ yield (0, message_1.createMessageDeclaration)(obj, ctx);
48
+ const nested = Array.from(createDeclarations(obj.nestedArray, ctx));
49
49
  if (nested.length > 0) {
50
50
  yield f.createModuleDeclaration(undefined, [f.createToken(ts.SyntaxKind.ExportKeyword)], f.createIdentifier(obj.name), f.createModuleBlock(nested), ts.NodeFlags.Namespace);
51
51
  }
52
52
  }
53
53
  else if (obj instanceof protobufjs.Namespace) {
54
- yield* createDeclarations(obj.nestedArray, subs);
54
+ yield* createDeclarations(obj.nestedArray, ctx);
55
55
  }
56
56
  }
57
57
  }
@@ -1 +1 @@
1
- {"version":3,"file":"declaration-generator.js","sourceRoot":"","sources":["../../../src/generator/declaration-generator.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;AAEF,uDAAyC;AACzC,+CAAiC;AAEjC,8CAA4D;AAE5D,iCAA+C;AAC/C,uCAAqD;AACrD,uCAAqD;AACrD,mCAA2C;AAE3C,MAAM,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC;AAErB,QAAgB,CAAC,CAAC,kBAAkB,CAAE,KAAoC,EAAE,IAAsB;IAChG,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE;QACvB,IAAI,GAAG,YAAY,UAAU,CAAC,IAAI,EAAE;YAClC,MAAM,IAAA,4BAAqB,EAAC,GAAG,CAAC,CAAC;SAClC;aAAM,IAAI,GAAG,YAAY,UAAU,CAAC,OAAO,EAAE;YAC5C,MAAM,IAAA,kCAAwB,EAAC,GAAG,EAAE,IAAI,CAAC,CAAC;SAC3C;aAAM,IAAI,GAAG,YAAY,UAAU,CAAC,IAAI,EAAE;YACzC,MAAM,IAAA,kCAAwB,EAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YAE1C,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC;YACrE,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;gBACrB,MAAM,CAAC,CAAC,uBAAuB,CAC7B,SAAS,EACT,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,EAC5C,CAAC,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,EAC5B,CAAC,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAC3B,EAAE,CAAC,SAAS,CAAC,SAAS,CACvB,CAAC;aACH;SACF;aAAM,IAAI,GAAG,YAAY,UAAU,CAAC,SAAS,EAAE;YAC9C,KAAM,CAAC,CAAC,kBAAkB,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;SACnD;KACF;AACH,CAAC;AAvBD,gDAuBC;AAED,QAAS,CAAC,CAAC,kBAAkB,CAAE,IAA8B;IAC3D,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,WAAW,EAAE;QAClC,IAAI,GAAG,YAAY,UAAU,CAAC,IAAI,EAAE;YAClC,MAAM,GAAG,CAAC;SACX;aAAM,IAAI,GAAG,YAAY,UAAU,CAAC,IAAI,EAAE;YACzC,MAAM,GAAG,CAAC;YACV,KAAM,CAAC,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC;SACjC;aAAM,IAAI,GAAG,YAAY,UAAU,CAAC,SAAS,EAAE;YAC9C,KAAM,CAAC,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC;SACjC;KACF;AACH,CAAC;AAEM,MAAM,oBAAoB,GAAG,CAAC,IAA8B,EAAE,EAAE,CAAC,CAAC,CAAC,0BAA0B,CAClG,SAAS,EACT,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,EAC5C,OAAO,EACP,SAAS,EACT,SAAS,EACT,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;KACjC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;KACpD,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,uBAAuB,CACpC,SAAS,EACT,CAAC,CAAC,mBAAmB,CAAC,IAAA,wCAA2B,EAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EACjE,SAAS,EACT,IAAA,wBAAgB,EAAC,IAAI,CAAC,CACvB,CAAC,CACL,CAAC;AAdW,QAAA,oBAAoB,wBAc/B"}
1
+ {"version":3,"file":"declaration-generator.js","sourceRoot":"","sources":["../../../src/generator/declaration-generator.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import * as protobufjs from 'protobufjs';
2
2
  import * as ts from 'typescript';
3
- export declare const createEnumDeclaration: (type: protobufjs.Enum) => ts.EnumDeclaration;
3
+ import { GeneratorContext } from './context';
4
+ export declare const createEnumDeclaration: (type: protobufjs.Enum, ctx: GeneratorContext) => ts.EnumDeclaration;
4
5
  //# sourceMappingURL=enum.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"enum.d.ts","sourceRoot":"","sources":["../../../src/generator/enum.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,UAAU,MAAM,YAAY,CAAC;AACzC,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAIjC,eAAO,MAAM,qBAAqB,SAAU,WAAW,IAAI,uBAQ1D,CAAC"}
1
+ {"version":3,"file":"enum.d.ts","sourceRoot":"","sources":["../../../src/generator/enum.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,UAAU,MAAM,YAAY,CAAC;AACzC,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAEjC,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAK7C,eAAO,MAAM,qBAAqB,SAAU,WAAW,IAAI,OAAO,gBAAgB,uBAqBjF,CAAC"}
@@ -27,8 +27,20 @@ var __importStar = (this && this.__importStar) || function (mod) {
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
29
  exports.createEnumDeclaration = void 0;
30
+ const path_1 = require("path");
30
31
  const ts = __importStar(require("typescript"));
32
+ const doc_comment_1 = require("./doc-comment");
31
33
  const f = ts.factory;
32
- const createEnumDeclaration = (type) => f.createEnumDeclaration(undefined, [f.createToken(ts.SyntaxKind.ExportKeyword)], type.name, Object.entries(type.values).map(([name, id]) => f.createEnumMember(name, f.createNumericLiteral(id))));
34
+ const createEnumDeclaration = (type, ctx) => {
35
+ const declaration = f.createEnumDeclaration(undefined, [f.createToken(ts.SyntaxKind.ExportKeyword)], type.name, Object.entries(type.values).map(([name, id]) => f.createEnumMember(name, f.createNumericLiteral(id))));
36
+ const commentSections = type.comment ? [type.comment] : [];
37
+ if (type.filename) {
38
+ commentSections.push(`Defined in:\n {@link file://./${(0, path_1.relative)((0, path_1.dirname)(ctx.outputFilename), type.filename)}}`);
39
+ }
40
+ if (commentSections.length === 0) {
41
+ return declaration;
42
+ }
43
+ return (0, doc_comment_1.attachDocComment)(declaration, commentSections.join('\n\n'));
44
+ };
33
45
  exports.createEnumDeclaration = createEnumDeclaration;
34
46
  //# sourceMappingURL=enum.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"enum.js","sourceRoot":"","sources":["../../../src/generator/enum.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;AAGF,+CAAiC;AAEjC,MAAM,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC;AAEd,MAAM,qBAAqB,GAAG,CAAC,IAAqB,EAAE,EAAE,CAAC,CAAC,CAAC,qBAAqB,CACrF,SAAS,EACT,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,EAC5C,IAAI,CAAC,IAAI,EACT,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAChE,IAAI,EACJ,CAAC,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAC3B,CAAC,CACH,CAAC;AARW,QAAA,qBAAqB,yBAQhC"}
1
+ {"version":3,"file":"enum.js","sourceRoot":"","sources":["../../../src/generator/enum.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;AAEF,+BAAyC;AAEzC,+CAAiC;AAGjC,+CAAiD;AAEjD,MAAM,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC;AAEd,MAAM,qBAAqB,GAAG,CAAC,IAAqB,EAAE,GAAqB,EAAE,EAAE;IACpF,MAAM,WAAW,GAAG,CAAC,CAAC,qBAAqB,CACzC,SAAS,EACT,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,EAC5C,IAAI,CAAC,IAAI,EACT,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAChE,IAAI,EACJ,CAAC,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAC3B,CAAC,CACH,CAAC;IAEF,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3D,IAAI,IAAI,CAAC,QAAQ,EAAE;QACjB,eAAe,CAAC,IAAI,CAAC,kCAAkC,IAAA,eAAQ,EAAC,IAAA,cAAO,EAAC,GAAG,CAAC,cAAc,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;KACjH;IAED,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE;QAChC,OAAO,WAAW,CAAC;KACpB;IAED,OAAO,IAAA,8BAAgB,EAAC,WAAW,EAAE,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;AACrE,CAAC,CAAC;AArBW,QAAA,qBAAqB,yBAqBhC"}
@@ -1 +1 @@
1
- {"version":3,"file":"file-generator.d.ts","sourceRoot":"","sources":["../../../src/generator/file-generator.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAEjC,OAAO,EAAgB,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAc7C,eAAO,MAAM,yBAAyB,UAAW,GAAG,gBAAgB,EAAE,iBAAiB,gBAAgB,UAAU,MAAM,aAAa,MAAM,uBAAuB,eAAe,GAAG,SAAS,mBAAmB,MAAM,EAAE,kBAkBtN,CAAC;AAEF,eAAO,MAAM,qBAAqB,wBAAyB,eAAe,GAAG,SAAS,QAAQ,GAAG,IAAI,cAAc,MAAM,cAAc,MAAM,EAAE,kBAqB9I,CAAC;AAWF,eAAO,MAAM,uBAAuB,cAAe,MAAM,WAGxD,CAAC"}
1
+ {"version":3,"file":"file-generator.d.ts","sourceRoot":"","sources":["../../../src/generator/file-generator.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAEjC,OAAO,EAAgB,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAe7C,eAAO,MAAM,yBAAyB,UAAW,GAAG,gBAAgB,EAAE,iBAAiB,gBAAgB,UAAU,MAAM,aAAa,MAAM,uBAAuB,eAAe,GAAG,SAAS,mBAAmB,MAAM,EAAE,kBAuBtN,CAAC;AAEF,eAAO,MAAM,qBAAqB,wBAAyB,eAAe,GAAG,SAAS,QAAQ,GAAG,IAAI,cAAc,MAAM,cAAc,MAAM,EAAE,kBAqB9I,CAAC;AAWF,eAAO,MAAM,uBAAuB,cAAe,MAAM,WAGxD,CAAC"}
@@ -38,7 +38,11 @@ const f = ts.factory;
38
38
  const createSubstitutionsImport = (substitutionsModule, context) => substitutionsModule && ts.factory.createImportDeclaration([], [], ts.factory.createImportClause(false, ts.factory.createIdentifier('substitutions'), undefined), ts.factory.createStringLiteral(substitutionsModule.importSpecifier(context)));
39
39
  const createNamespaceSourceFile = (types, substitutions, outDir, namespace, substitutionsModule, otherNamespaces) => {
40
40
  const outFile = (0, path_1.join)(outDir, (0, exports.getFileNameForNamespace)(namespace));
41
- const declarations = Array.from((0, declaration_generator_1.createDeclarations)(types, substitutions));
41
+ const ctx = {
42
+ outputFilename: outFile,
43
+ subs: substitutions
44
+ };
45
+ const declarations = Array.from((0, declaration_generator_1.createDeclarations)(types, ctx));
42
46
  const substitutionsImport = substitutionsModule && createSubstitutionsImport(substitutionsModule, (0, path_1.dirname)(outFile));
43
47
  const otherNamespaceImports = createNamespaceImports(otherNamespaces.filter(ns => ns !== namespace), outDir, (0, path_1.dirname)(outFile));
44
48
  return ts.factory.createSourceFile([
@@ -1 +1 @@
1
- {"version":3,"file":"file-generator.js","sourceRoot":"","sources":["../../../src/generator/file-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"file-generator.js","sourceRoot":"","sources":["../../../src/generator/file-generator.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,8 @@
1
1
  import * as protobufjs from 'protobufjs';
2
2
  import * as ts from 'typescript';
3
- import { SubstitutionsMap } from '../parser';
4
- export declare const createMessageDeclaration: (type: protobufjs.Type, subs: SubstitutionsMap) => ts.InterfaceDeclaration;
3
+ import { GeneratorContext } from './context';
4
+ /**
5
+ * {@link file://./../configure.ts#l5}
6
+ */
7
+ export declare const createMessageDeclaration: (type: protobufjs.Type, ctx: GeneratorContext) => ts.InterfaceDeclaration;
5
8
  //# sourceMappingURL=message.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../../src/generator/message.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,UAAU,MAAM,YAAY,CAAC;AACzC,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAEjC,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAM7C,eAAO,MAAM,wBAAwB,SAAU,WAAW,IAAI,QAAQ,gBAAgB,4BAyBrF,CAAC"}
1
+ {"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../../src/generator/message.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,UAAU,MAAM,YAAY,CAAC;AACzC,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAEjC,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAM7C;;GAEG;AACH,eAAO,MAAM,wBAAwB,SAAU,WAAW,IAAI,OAAO,gBAAgB,4BAgCpF,CAAC"}
@@ -27,20 +27,29 @@ var __importStar = (this && this.__importStar) || function (mod) {
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
29
  exports.createMessageDeclaration = void 0;
30
+ const path_1 = require("path");
30
31
  const ts = __importStar(require("typescript"));
31
32
  const doc_comment_1 = require("./doc-comment");
32
33
  const field_1 = require("./field");
33
34
  const f = ts.factory;
34
- const createMessageDeclaration = (type, subs) => {
35
+ /**
36
+ * {@link file://./../configure.ts#l5}
37
+ */
38
+ const createMessageDeclaration = (type, ctx) => {
35
39
  const declaration = f.createInterfaceDeclaration(undefined, [f.createToken(ts.SyntaxKind.ExportKeyword)], type.name, undefined, undefined, type.fieldsArray.map(field => {
36
- const signature = f.createPropertySignature(undefined, field.name.includes('.') ? f.createStringLiteral(field.name) : field.name, field.required ? undefined : f.createToken(ts.SyntaxKind.QuestionToken), (0, field_1.getFieldType)(field, subs));
40
+ const isRequired = field.required || (!field.getOption('proto3_optional') && !field.repeated && !field.map && !field.partOf);
41
+ const signature = f.createPropertySignature(undefined, field.name.includes('.') ? f.createStringLiteral(field.name) : field.name, isRequired ? undefined : f.createToken(ts.SyntaxKind.QuestionToken), (0, field_1.getFieldType)(field, ctx.subs));
37
42
  const docComment = getFieldDocComment(field);
38
43
  return docComment ? (0, doc_comment_1.attachDocComment)(signature, docComment) : signature;
39
44
  }));
40
- if (!type.comment) {
45
+ const commentSections = type.comment ? [type.comment] : [];
46
+ if (type.filename) {
47
+ commentSections.push(`Defined in:\n {@link file://./${(0, path_1.relative)((0, path_1.dirname)(ctx.outputFilename), type.filename)}}`);
48
+ }
49
+ if (commentSections.length === 0) {
41
50
  return declaration;
42
51
  }
43
- return (0, doc_comment_1.attachDocComment)(declaration, type.comment);
52
+ return (0, doc_comment_1.attachDocComment)(declaration, commentSections.join('\n\n'));
44
53
  };
45
54
  exports.createMessageDeclaration = createMessageDeclaration;
46
55
  const getFieldDocComment = (field) => {
@@ -1 +1 @@
1
- {"version":3,"file":"message.js","sourceRoot":"","sources":["../../../src/generator/message.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;AAGF,+CAAiC;AAGjC,+CAAiD;AACjD,mCAAuC;AAEvC,MAAM,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC;AAEd,MAAM,wBAAwB,GAAG,CAAC,IAAqB,EAAE,IAAsB,EAAE,EAAE;IACxF,MAAM,WAAW,GAAG,CAAC,CAAC,0BAA0B,CAC9C,SAAS,EACT,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,EAC5C,IAAI,CAAC,IAAI,EACT,SAAS,EACT,SAAS,EACT,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;QAC3B,MAAM,SAAS,GAAG,CAAC,CAAC,uBAAuB,CACzC,SAAS,EACT,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EACzE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EACvE,IAAA,oBAAY,EAAC,KAAK,EAAE,IAAI,CAAC,CAC1B,CAAC;QAEF,MAAM,UAAU,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAC7C,OAAO,UAAU,CAAC,CAAC,CAAC,IAAA,8BAAgB,EAAC,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC1E,CAAC,CAAC,CACH,CAAC;IAEF,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;QACjB,OAAO,WAAW,CAAC;KACpB;IAED,OAAO,IAAA,8BAAgB,EAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;AACrD,CAAC,CAAC;AAzBW,QAAA,wBAAwB,4BAyBnC;AAEF,MAAM,kBAAkB,GAAG,CAAC,KAAuB,EAAE,EAAE;IACrD,MAAM,QAAQ,GAAa,EAAE,CAAC;IAE9B,IAAI,KAAK,CAAC,OAAO,EAAE;QACjB,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;KAC9B;IAED,IAAI,KAAK,CAAC,OAAO,EAAE;QACjB,QAAQ,CAAC,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,OAAO,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;KACvI;IAED,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;QACzB,OAAO,SAAS,CAAC;KAClB;SAAM;QACL,OAAO,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;KAC9B;AACH,CAAC,CAAC"}
1
+ {"version":3,"file":"message.js","sourceRoot":"","sources":["../../../src/generator/message.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import protobufjs from 'protobufjs';
3
2
  import * as ts from 'typescript';
4
3
  import { ModuleSpecifier } from '../module-specifier';
@@ -1 +1 @@
1
- {"version":3,"file":"serializer-definition-generator.d.ts","sourceRoot":"","sources":["../../../src/generator/serializer-definition-generator.ts"],"names":[],"mappings":";AAIA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAEjC,OAAO,EAAgB,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAKpE,eAAO,MAAM,0BAA0B,wBAAyB,eAAe,GAAG,SAAS,QAAQ,WAAW,IAAI,cAAc,MAAM,KAAG;IAAE,OAAO,EAAE,GAAG,SAAS,EAAE,CAAC;IAAC,SAAS,GAAG,SAAS,EAAE,CAAA;CAmD1L,CAAC"}
1
+ {"version":3,"file":"serializer-definition-generator.d.ts","sourceRoot":"","sources":["../../../src/generator/serializer-definition-generator.ts"],"names":[],"mappings":"AAIA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAEjC,OAAO,EAAgB,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAKpE,eAAO,MAAM,0BAA0B,wBAAyB,eAAe,GAAG,SAAS,QAAQ,WAAW,IAAI,cAAc,MAAM,KAAG;IAAE,OAAO,EAAE,GAAG,SAAS,EAAE,CAAC;IAAC,SAAS,GAAG,SAAS,EAAE,CAAA;CAmD1L,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import * as protobufjs from 'protobufjs';
2
2
  import * as ts from 'typescript';
3
- import { SubstitutionsMap } from '../parser';
4
- export declare const createServiceDeclaration: (type: protobufjs.Service, subs: SubstitutionsMap) => ts.InterfaceDeclaration;
3
+ import { GeneratorContext } from './context';
4
+ export declare const createServiceDeclaration: (type: protobufjs.Service, ctx: GeneratorContext) => ts.InterfaceDeclaration;
5
5
  export declare const createServicesDictionary: (root: protobufjs.NamespaceBase) => ts.InterfaceDeclaration;
6
6
  //# sourceMappingURL=service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../src/generator/service.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,UAAU,MAAM,YAAY,CAAC;AACzC,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAGjC,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAsC7C,eAAO,MAAM,wBAAwB,SAAU,WAAW,OAAO,QAAQ,gBAAgB,KAAG,GAAG,oBAsB9F,CAAC;AAaF,eAAO,MAAM,wBAAwB,SAAU,WAAW,aAAa,4BActE,CAAC"}
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../src/generator/service.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,UAAU,MAAM,YAAY,CAAC;AACzC,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAIjC,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAsC7C,eAAO,MAAM,wBAAwB,SAAU,WAAW,OAAO,OAAO,gBAAgB,KAAG,GAAG,oBA+B7F,CAAC;AAaF,eAAO,MAAM,wBAAwB,SAAU,WAAW,aAAa,4BActE,CAAC"}
@@ -31,6 +31,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
31
31
  Object.defineProperty(exports, "__esModule", { value: true });
32
32
  exports.createServicesDictionary = exports.createServiceDeclaration = void 0;
33
33
  const node_assert_1 = __importDefault(require("node:assert"));
34
+ const path_1 = require("path");
34
35
  const protobufjs = __importStar(require("protobufjs"));
35
36
  const ts = __importStar(require("typescript"));
36
37
  const namespaces_1 = require("../namespaces");
@@ -51,14 +52,21 @@ const createRpcMethodType = (method, service, subs) => {
51
52
  const outputTypeMonad = method.responseStream ? f.createIdentifier('Stream') : f.createIdentifier('Promise');
52
53
  return f.createFunctionTypeNode(undefined, [f.createParameterDeclaration(undefined, undefined, undefined, 'request', undefined, requestType)], f.createTypeReferenceNode(outputTypeMonad, [responseType]));
53
54
  };
54
- const createServiceDeclaration = (type, subs) => {
55
+ const createServiceDeclaration = (type, ctx) => {
55
56
  const declaration = f.createInterfaceDeclaration(undefined, [f.createToken(ts.SyntaxKind.ExportKeyword)], type.name, undefined, undefined, type.methodsArray
56
57
  .filter(m => !m.requestStream)
57
58
  .map(method => {
58
- const sig = f.createPropertySignature(undefined, mapRpcMethodName(method.name), undefined, createRpcMethodType(method, type, subs));
59
+ const sig = f.createPropertySignature(undefined, mapRpcMethodName(method.name), undefined, createRpcMethodType(method, type, ctx.subs));
59
60
  return method.comment ? (0, doc_comment_1.attachDocComment)(sig, method.comment) : sig;
60
61
  }));
61
- return type.comment ? (0, doc_comment_1.attachDocComment)(declaration, type.comment) : declaration;
62
+ const commentSections = type.comment ? [type.comment] : [];
63
+ if (type.filename) {
64
+ commentSections.push(`Defined in:\n {@link file://./${(0, path_1.relative)((0, path_1.dirname)(ctx.outputFilename), type.filename)}}`);
65
+ }
66
+ if (commentSections.length === 0) {
67
+ return declaration;
68
+ }
69
+ return (0, doc_comment_1.attachDocComment)(declaration, commentSections.join('\n\n'));
62
70
  };
63
71
  exports.createServiceDeclaration = createServiceDeclaration;
64
72
  function* getServices(root) {
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../../../src/generator/service.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEF,8DAAiC;AACjC,uDAAyC;AACzC,+CAAiC;AAEjC,8CAA4D;AAE5D,+CAAiD;AACjD,mCAAkD;AAElD,MAAM,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC;AAErB,MAAM,WAAW,GAAG,CAAC,MAAyB,EAAE,OAA2B,EAAE,IAAsB,EAA8B,EAAE;;IACjI,MAAM,CAAC,OAAO,EAAE,CAAC;IACjB,OAAO;QACL,IAAA,aAAK,EAAC,MAAA,MAAM,CAAC,mBAAmB,mCAAI,MAAM,CAAC,WAAW,EAAE,OAAO,EAAE,IAAI,CAAC;QACtE,IAAA,aAAK,EAAC,MAAA,MAAM,CAAC,oBAAoB,mCAAI,MAAM,CAAC,YAAY,EAAE,OAAO,EAAE,IAAI,CAAC;KACzE,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,CAAC,MAAyB,EAAE,OAA2B,EAAE,IAAsB,EAAE,EAAE;IAC7G,IAAA,qBAAM,EAAC,CAAC,MAAM,CAAC,aAAa,EAAE,2CAA2C,CAAC,CAAC;IAE3E,MAAM,CAAC,WAAW,EAAE,YAAY,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IAEvE,MAAM,eAAe,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAE7G,OAAO,CAAC,CAAC,sBAAsB,CAC7B,SAAS,EACT,CAAC,CAAC,CAAC,0BAA0B,CAC3B,SAAS,EACT,SAAS,EACT,SAAS,EACT,SAAS,EACT,SAAS,EACT,WAAW,CACZ,CAAC,EACF,CAAC,CAAC,uBAAuB,CACvB,eAAe,EACf,CAAC,YAAY,CAAC,CACf,CACF,CAAC;AACJ,CAAC,CAAC;AAEK,MAAM,wBAAwB,GAAG,CAAC,IAAwB,EAAE,IAAsB,EAA2B,EAAE;IACpH,MAAM,WAAW,GAAG,CAAC,CAAC,0BAA0B,CAC9C,SAAS,EACT,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,EAC5C,IAAI,CAAC,IAAI,EACT,SAAS,EACT,SAAS,EACT,IAAI,CAAC,YAAY;SACd,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC;SAC7B,GAAG,CAAC,MAAM,CAAC,EAAE;QACZ,MAAM,GAAG,GAAG,CAAC,CAAC,uBAAuB,CACnC,SAAS,EACT,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,EAC7B,SAAS,EACT,mBAAmB,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CACxC,CAAC;QAEF,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,IAAA,8BAAgB,EAAC,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IACtE,CAAC,CAAC,CACL,CAAC;IAEF,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAA,8BAAgB,EAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;AAClF,CAAC,CAAC;AAtBW,QAAA,wBAAwB,4BAsBnC;AAEF,QAAS,CAAC,CAAC,WAAW,CAAE,IAA8B;IACpD,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,WAAW,EAAE;QAClC,IAAI,GAAG,YAAY,UAAU,CAAC,OAAO,EAAE;YACrC,MAAM,GAAG,CAAC;YACV,KAAM,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;SAC1B;aAAM,IAAI,GAAG,YAAY,UAAU,CAAC,SAAS,EAAE;YAC9C,KAAM,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;SAC1B;KACF;AACH,CAAC;AAEM,MAAM,wBAAwB,GAAG,CAAC,IAA8B,EAAE,EAAE,CAAC,CAAC,CAAC,0BAA0B,CACtG,SAAS,EACT,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,EAC5C,UAAU,EACV,SAAS,EACT,SAAS,EACT,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;KAC1B,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;KACpD,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,uBAAuB,CACpC,SAAS,EACT,CAAC,CAAC,mBAAmB,CAAC,IAAA,wCAA2B,EAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EACjE,SAAS,EACT,IAAA,wBAAgB,EAAC,IAAI,CAAC,CACvB,CAAC,CACL,CAAC;AAdW,QAAA,wBAAwB,4BAcnC;AAEF,MAAM,gBAAgB,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,iBAAiB,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../../../src/generator/service.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,7 @@
1
+ /**
2
+ * Defined in:
3
+ * {@link file://./../../../another.proto}
4
+ */
1
5
  export interface AnotherMessage {
2
6
  }
3
7
  //# sourceMappingURL=another.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"another.d.ts","sourceRoot":"","sources":["../../../../../../test/proto/gen/dxos/test/another.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,cAAc;CAC9B"}
1
+ {"version":3,"file":"another.d.ts","sourceRoot":"","sources":["../../../../../../test/proto/gen/dxos/test/another.ts"],"names":[],"mappings":"AAOA;;;GAGG;AACH,MAAM,WAAW,cAAc;CAC9B"}
@@ -1,4 +1,8 @@
1
+ /**
2
+ * Defined in:
3
+ * {@link file://./../../../any.proto}
4
+ */
1
5
  export interface Any {
2
- bar?: number;
6
+ bar: number;
3
7
  }
4
8
  //# sourceMappingURL=any.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"any.d.ts","sourceRoot":"","sources":["../../../../../../test/proto/gen/dxos/test/any.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,GAAG;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;CAChB"}
1
+ {"version":3,"file":"any.d.ts","sourceRoot":"","sources":["../../../../../../test/proto/gen/dxos/test/any.ts"],"names":[],"mappings":"AAOA;;;GAGG;AACH,MAAM,WAAW,GAAG;IAChB,GAAG,EAAE,MAAM,CAAC;CACf"}
@@ -1,6 +1,14 @@
1
+ /**
2
+ * Defined in:
3
+ * {@link file://./../../../extensions.proto}
4
+ */
1
5
  export interface OptionsObject {
2
- field?: number;
6
+ field: number;
3
7
  }
8
+ /**
9
+ * Defined in:
10
+ * {@link file://./../../../extensions.proto}
11
+ */
4
12
  export interface WithDefaultField {
5
13
  /**
6
14
  * Tag
@@ -9,8 +17,12 @@ export interface WithDefaultField {
9
17
  * - (defaultValue) = "latest"
10
18
  * - (optionsObj).field = 3
11
19
  */
12
- tag?: string;
20
+ tag: string;
13
21
  }
22
+ /**
23
+ * Defined in:
24
+ * {@link file://./../../../extensions.proto}
25
+ */
14
26
  export interface ContainingMessageWithExtensions {
15
27
  str?: string;
16
28
  msg?: WithDefaultField;
@@ -1 +1 @@
1
- {"version":3,"file":"extensions.d.ts","sourceRoot":"","sources":["../../../../../../test/proto/gen/dxos/test/extensions.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,aAAa;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AACD,MAAM,WAAW,gBAAgB;IAC7B;;;;;;OAMG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;CAChB;AACD,MAAM,WAAW,+BAA+B;IAC5C,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,gBAAgB,CAAC;CAC1B"}
1
+ {"version":3,"file":"extensions.d.ts","sourceRoot":"","sources":["../../../../../../test/proto/gen/dxos/test/extensions.ts"],"names":[],"mappings":"AAOA;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC1B,KAAK,EAAE,MAAM,CAAC;CACjB;AACD;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC7B;;;;;;OAMG;IACH,GAAG,EAAE,MAAM,CAAC;CACf;AACD;;;GAGG;AACH,MAAM,WAAW,+BAA+B;IAC5C,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,gBAAgB,CAAC;CAC1B"}
@@ -1,5 +1,9 @@
1
+ /**
2
+ * Defined in:
3
+ * {@link file://./../../../../../../protobuf-test/src/foo.proto}
4
+ */
1
5
  export interface TestFoo {
2
- fizz?: number;
3
- bazz?: string;
6
+ fizz: number;
7
+ bazz: string;
4
8
  }
5
9
  //# sourceMappingURL=testfoo.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"testfoo.d.ts","sourceRoot":"","sources":["../../../../../../test/proto/gen/dxos/test/testfoo.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,OAAO;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB"}
1
+ {"version":3,"file":"testfoo.d.ts","sourceRoot":"","sources":["../../../../../../test/proto/gen/dxos/test/testfoo.ts"],"names":[],"mappings":"AAOA;;;GAGG;AACH,MAAM,WAAW,OAAO;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CAChB"}
@@ -2,60 +2,104 @@ import type { Stream } from "@dxos/codec-protobuf";
2
2
  import substitutions from "../../substitutions";
3
3
  import * as dxos_test_any from "./test/any";
4
4
  import * as dxos_test_testfoo from "./test/testfoo";
5
+ /**
6
+ * Defined in:
7
+ * {@link file://./../../schema.proto}
8
+ */
5
9
  export interface Key {
6
10
  data: Uint8Array;
7
11
  }
12
+ /**
13
+ * Defined in:
14
+ * {@link file://./../../schema.proto}
15
+ */
8
16
  export interface Any {
9
- foo?: string;
17
+ foo: string;
10
18
  }
19
+ /**
20
+ * Defined in:
21
+ * {@link file://./../../schema.proto}
22
+ */
11
23
  export interface Scalars {
12
- doubleField?: number;
13
- floatField?: number;
14
- int32Field?: number;
15
- int64Field?: string;
16
- uint32Field?: number;
17
- uint64Field?: string;
18
- sint32Field?: number;
19
- sint64Field?: string;
20
- fixed32Field?: number;
21
- fixed64Field?: string;
22
- sfixed32Field?: number;
23
- sfixed64Field?: string;
24
- boolField?: boolean;
25
- stringField?: string;
26
- bytesField?: Uint8Array;
24
+ doubleField: number;
25
+ floatField: number;
26
+ int32Field: number;
27
+ int64Field: string;
28
+ uint32Field: number;
29
+ uint64Field: string;
30
+ sint32Field: number;
31
+ sint64Field: string;
32
+ fixed32Field: number;
33
+ fixed64Field: string;
34
+ sfixed32Field: number;
35
+ sfixed64Field: string;
36
+ boolField: boolean;
37
+ stringField: string;
38
+ bytesField: Uint8Array;
27
39
  }
40
+ /**
41
+ * Defined in:
42
+ * {@link file://./../../schema.proto}
43
+ */
28
44
  export interface ComplexFields {
29
45
  repeatedField?: ReturnType<(typeof substitutions)["dxos.test.Key"]["decode"]>[];
30
46
  requiredField: ReturnType<(typeof substitutions)["dxos.test.Key"]["decode"]>;
31
47
  mappedField?: Partial<Record<string, ReturnType<(typeof substitutions)["dxos.test.Key"]["decode"]>>>;
32
- inner?: ComplexFields.Inner;
33
- myAny?: Any;
34
- googleAny?: ReturnType<(typeof substitutions)["google.protobuf.Any"]["decode"]>;
35
- importedAny?: dxos_test_any.Any;
48
+ inner: ComplexFields.Inner;
49
+ myAny: Any;
50
+ googleAny: ReturnType<(typeof substitutions)["google.protobuf.Any"]["decode"]>;
51
+ importedAny: dxos_test_any.Any;
52
+ /**
53
+ * Options:
54
+ * - proto3_optional = true
55
+ */
36
56
  fooTest?: dxos_test_testfoo.TestFoo;
37
57
  }
38
58
  export declare namespace ComplexFields {
59
+ /**
60
+ * Defined in:
61
+ * {@link file://./../../schema.proto}
62
+ */
39
63
  interface Inner {
40
- foo?: string;
41
- bar?: ComplexFields.InnerEnum;
64
+ foo: string;
65
+ bar: ComplexFields.InnerEnum;
42
66
  }
67
+ /**
68
+ * Defined in:
69
+ * {@link file://./../../schema.proto}
70
+ */
43
71
  enum InnerEnum {
44
72
  FOO = 1,
45
73
  BAR = 2
46
74
  }
47
75
  }
76
+ /**
77
+ * Defined in:
78
+ * {@link file://./../../schema.proto}
79
+ */
48
80
  export interface WithTimestamp {
49
- timestamp?: ReturnType<(typeof substitutions)["google.protobuf.Timestamp"]["decode"]>;
81
+ timestamp: ReturnType<(typeof substitutions)["google.protobuf.Timestamp"]["decode"]>;
50
82
  }
83
+ /**
84
+ * Defined in:
85
+ * {@link file://./../../schema.proto}
86
+ */
51
87
  export interface Outer {
52
- inner?: ComplexFields.Inner;
88
+ inner: ComplexFields.Inner;
53
89
  }
54
90
  export declare namespace Outer {
91
+ /**
92
+ * Defined in:
93
+ * {@link file://./../../schema.proto}
94
+ */
55
95
  interface Inner {
56
- inner?: ComplexFields.InnerEnum;
96
+ inner: ComplexFields.InnerEnum;
57
97
  }
58
98
  }
99
+ /**
100
+ * Defined in:
101
+ * {@link file://./../../schema.proto}
102
+ */
59
103
  export declare enum TaskType {
60
104
  IN_PROGRESS = 1,
61
105
  COMPLETED = 2
@@ -63,14 +107,20 @@ export declare enum TaskType {
63
107
  /**
64
108
  * Task.
65
109
  * Comments can be multiline.
110
+ *
111
+ * Defined in:
112
+ * {@link file://./../../schema.proto}
66
113
  */
67
114
  export interface Task {
68
115
  /**
69
116
  * Task id
70
117
  */
71
- id?: string;
118
+ id: string;
72
119
  /**
73
120
  * Task title
121
+ *
122
+ * Options:
123
+ * - proto3_optional = true
74
124
  */
75
125
  title?: string;
76
126
  /**
@@ -79,19 +129,38 @@ export interface Task {
79
129
  */
80
130
  key: ReturnType<(typeof substitutions)["dxos.test.Key"]["decode"]>;
81
131
  type: TaskType;
132
+ /**
133
+ * Options:
134
+ * - proto3_optional = true
135
+ */
82
136
  googleAny?: ReturnType<(typeof substitutions)["google.protobuf.Any"]["decode"]>;
83
137
  }
138
+ /**
139
+ * Defined in:
140
+ * {@link file://./../../schema.proto}
141
+ */
84
142
  export interface TaskList {
85
143
  tasks?: Task[];
86
144
  }
145
+ /**
146
+ * Defined in:
147
+ * {@link file://./../../schema.proto}
148
+ */
87
149
  export interface SubstitutedByInterface {
88
- foo?: string;
150
+ foo: string;
89
151
  }
152
+ /**
153
+ * Defined in:
154
+ * {@link file://./../../schema.proto}
155
+ */
90
156
  export interface TaskCount {
91
- count?: number;
157
+ count: number;
92
158
  }
93
159
  /**
94
160
  * Test service definition.
161
+ *
162
+ * Defined in:
163
+ * {@link file://./../../schema.proto}
95
164
  */
96
165
  export interface TestService {
97
166
  /**
@@ -103,9 +172,17 @@ export interface TestService {
103
172
  */
104
173
  subscribeTasks: (request: ReturnType<(typeof substitutions)["dxos.test.Key"]["decode"]>) => Stream<Task>;
105
174
  }
175
+ /**
176
+ * Defined in:
177
+ * {@link file://./../../schema.proto}
178
+ */
106
179
  export interface WithEmptyField {
107
- emptyField?: void;
180
+ emptyField: void;
108
181
  }
182
+ /**
183
+ * Defined in:
184
+ * {@link file://./../../schema.proto}
185
+ */
109
186
  export interface ServiceWithEmpty {
110
187
  emptyRpc: (request: void) => Promise<void>;
111
188
  emptyStreamRpc: (request: void) => Stream<void>;