@typespec/http-server-csharp 0.58.0-alpha.9-dev.0 → 0.58.0-dev.0

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 (46) hide show
  1. package/README.md +69 -6
  2. package/dist/src/cli/cli.js +92 -43
  3. package/dist/src/cli/cli.js.map +1 -1
  4. package/dist/src/lib/attributes.d.ts.map +1 -1
  5. package/dist/src/lib/attributes.js +65 -31
  6. package/dist/src/lib/attributes.js.map +1 -1
  7. package/dist/src/lib/boilerplate.d.ts +1 -1
  8. package/dist/src/lib/boilerplate.d.ts.map +1 -1
  9. package/dist/src/lib/boilerplate.js +153 -31
  10. package/dist/src/lib/boilerplate.js.map +1 -1
  11. package/dist/src/lib/doc.d.ts +5 -0
  12. package/dist/src/lib/doc.d.ts.map +1 -0
  13. package/dist/src/lib/doc.js +237 -0
  14. package/dist/src/lib/doc.js.map +1 -0
  15. package/dist/src/lib/interfaces.d.ts +48 -4
  16. package/dist/src/lib/interfaces.d.ts.map +1 -1
  17. package/dist/src/lib/interfaces.js +89 -28
  18. package/dist/src/lib/interfaces.js.map +1 -1
  19. package/dist/src/lib/lib.d.ts +32 -3
  20. package/dist/src/lib/lib.d.ts.map +1 -1
  21. package/dist/src/lib/lib.js +57 -2
  22. package/dist/src/lib/lib.js.map +1 -1
  23. package/dist/src/lib/project.d.ts +5 -0
  24. package/dist/src/lib/project.d.ts.map +1 -0
  25. package/dist/src/lib/project.js +101 -0
  26. package/dist/src/lib/project.js.map +1 -0
  27. package/dist/src/lib/scaffolding.d.ts +7 -5
  28. package/dist/src/lib/scaffolding.d.ts.map +1 -1
  29. package/dist/src/lib/scaffolding.js +113 -40
  30. package/dist/src/lib/scaffolding.js.map +1 -1
  31. package/dist/src/lib/service.d.ts.map +1 -1
  32. package/dist/src/lib/service.js +496 -587
  33. package/dist/src/lib/service.js.map +1 -1
  34. package/dist/src/lib/type-helpers.d.ts +5 -1
  35. package/dist/src/lib/type-helpers.d.ts.map +1 -1
  36. package/dist/src/lib/type-helpers.js +32 -3
  37. package/dist/src/lib/type-helpers.js.map +1 -1
  38. package/dist/src/lib/utils.d.ts +79 -7
  39. package/dist/src/lib/utils.d.ts.map +1 -1
  40. package/dist/src/lib/utils.js +971 -36
  41. package/dist/src/lib/utils.js.map +1 -1
  42. package/package.json +39 -26
  43. package/dist/src/lib/testing/index.d.ts +0 -3
  44. package/dist/src/lib/testing/index.d.ts.map +0 -1
  45. package/dist/src/lib/testing/index.js +0 -7
  46. package/dist/src/lib/testing/index.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../src/lib/interfaces.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../src/lib/interfaces.ts"],"names":[],"mappings":"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"}
@@ -5,48 +5,105 @@ export class CSharpType {
5
5
  isBuiltIn;
6
6
  isValueType;
7
7
  isNullable;
8
+ isClass;
9
+ isCollection;
8
10
  constructor(input) {
9
11
  this.name = input.name;
10
12
  this.namespace = input.namespace;
11
13
  this.isBuiltIn = input.isBuiltIn !== undefined ? input.isBuiltIn : input.namespace === "System";
12
14
  this.isValueType = input.isValueType !== undefined ? input.isValueType : false;
13
15
  this.isNullable = input.isNullable !== undefined ? input.isNullable : false;
16
+ this.isClass = input.isClass !== undefined ? input.isClass : false;
17
+ this.isCollection = input.isCollection !== undefined ? input.isCollection : false;
14
18
  }
15
19
  isNamespaceInScope(scope, visited) {
16
20
  if (this.isBuiltIn)
17
21
  return true;
18
- if (scope === undefined)
19
- return false;
20
- if (!visited)
21
- visited = new Set();
22
- if (visited.has(scope))
23
- return false;
24
- visited.add(scope);
25
- switch (scope.kind) {
26
- case "namespace": {
27
- if (scope.namespace.startsWith(this.namespace))
28
- return true;
29
- return this.isNamespaceInScope(scope.parentScope, visited);
30
- }
31
- case "sourceFile": {
32
- for (const entry of scope.sourceFile.imports.keys()) {
33
- if (entry === this.namespace) {
34
- return true;
35
- }
36
- }
37
- return this.isNamespaceInScope(scope.sourceFile.globalScope, visited);
38
- }
39
- default:
40
- return false;
41
- }
22
+ return checkOrAddNamespaceToScope(this.namespace, scope, visited);
42
23
  }
43
24
  getTypeReference(scope) {
44
- return `${this.isNamespaceInScope(scope) ? "" : this.namespace + "."}${this.name}`;
25
+ return this.isNamespaceInScope(scope) ? this.name : `${this.namespace}.${this.name}`;
45
26
  }
46
27
  equals(other) {
47
28
  return this.name === other?.name && this.namespace === other?.namespace;
48
29
  }
49
30
  }
31
+ export function checkOrAddNamespaceToScope(ns, scope, visited) {
32
+ if (!ns)
33
+ return false;
34
+ if (scope === undefined)
35
+ return false;
36
+ if (!visited)
37
+ visited = new Set();
38
+ if (visited.has(scope))
39
+ return false;
40
+ visited.add(scope);
41
+ switch (scope.kind) {
42
+ case "namespace": {
43
+ if (scope.namespace.startsWith(ns))
44
+ return true;
45
+ return checkOrAddNamespaceToScope(ns, scope.parentScope, visited);
46
+ }
47
+ case "sourceFile": {
48
+ const fileNameSpace = scope.sourceFile.meta["ResolvedNamespace"];
49
+ if (fileNameSpace && fileNameSpace.startsWith(ns))
50
+ return true;
51
+ if (scope.sourceFile.imports.has(ns))
52
+ return true;
53
+ scope.sourceFile.imports.set(ns, [ns]);
54
+ return true;
55
+ }
56
+ default:
57
+ return false;
58
+ }
59
+ }
60
+ export var CollectionType;
61
+ (function (CollectionType) {
62
+ CollectionType["ISet"] = "ISet";
63
+ CollectionType["ICollection"] = "ICollection";
64
+ CollectionType["IEnumerable"] = "IEnumerable";
65
+ CollectionType["Array"] = "[]";
66
+ })(CollectionType || (CollectionType = {}));
67
+ export function resolveCollectionType(option) {
68
+ switch (option) {
69
+ case "enumerable":
70
+ return CollectionType.IEnumerable;
71
+ case "array":
72
+ default:
73
+ return CollectionType.Array;
74
+ }
75
+ }
76
+ export class CSharpCollectionType extends CSharpType {
77
+ collectionType;
78
+ itemTypeName;
79
+ static implementationType = {
80
+ [CollectionType.ISet]: "HashSet",
81
+ [CollectionType.ICollection]: "List",
82
+ [CollectionType.IEnumerable]: "List",
83
+ [CollectionType.Array]: "[]",
84
+ };
85
+ constructor(csharpType, collectionType, itemTypeName) {
86
+ super(csharpType);
87
+ this.collectionType = collectionType;
88
+ this.itemTypeName = itemTypeName;
89
+ }
90
+ getTypeReference(scope) {
91
+ if (this.isNamespaceInScope(scope)) {
92
+ return this.name;
93
+ }
94
+ return `${this.collectionType}<${this.namespace}.${this.itemTypeName}>`;
95
+ }
96
+ getImplementationType() {
97
+ switch (this.collectionType) {
98
+ case CollectionType.ISet:
99
+ case CollectionType.ICollection:
100
+ case CollectionType.IEnumerable:
101
+ return `new ${CSharpCollectionType.implementationType[this.collectionType]}<${this.itemTypeName}>()`;
102
+ default:
103
+ return `[]`;
104
+ }
105
+ }
106
+ }
50
107
  export class CSharpValue {
51
108
  value;
52
109
  }
@@ -210,14 +267,18 @@ export var NameCasingType;
210
267
  })(NameCasingType || (NameCasingType = {}));
211
268
  export class LibrarySourceFile {
212
269
  constructor(params) {
213
- this.path = params.path !== undefined ? params.path : "lib/";
270
+ this.path = params.path || "generated/lib/";
214
271
  this.filename = params.filename;
215
- this.source = params.emitter.createSourceFile(`${this.path}/${this.filename}`);
272
+ const source = params.emitter.createSourceFile(`${this.path}/${this.filename}`);
273
+ this.conditional = params.conditional || false;
216
274
  this.emitted = {
217
- path: this.source.path,
275
+ path: source.path,
218
276
  contents: params.getContents(),
219
277
  };
278
+ source.meta = { emitted: this.emitted, conditional: this.conditional };
279
+ this.source = source;
220
280
  }
281
+ conditional;
221
282
  filename;
222
283
  source;
223
284
  emitted;
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../../src/lib/interfaces.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../../src/lib/interfaces.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,25 @@
1
+ import { CollectionType } from "./interfaces.js";
1
2
  export interface CSharpServiceEmitterOptions {
2
3
  /**Skip formatting of output. Default is false (generated c-sharp files are formatted) */
3
4
  "skip-format"?: boolean;
4
5
  /** Choose which service artifacts to emit. Default is 'all'.*/
5
6
  "output-type"?: "models" | "all";
6
- /** Emit mock implementations of business logic and setup code. Allows the service to respond to requests with mock responses.*/
7
- "emit-mocks"?: "none" | "all";
7
+ /** Emit mock implementations of business logic, setup code, and project files. Allows the service to respond to requests with mock responses.*/
8
+ "emit-mocks"?: "none" | "mocks-only" | "mocks-and-project-files";
8
9
  /** Configure a Swagger UI endpoint in the development configuration. */
9
10
  "use-swaggerui"?: boolean;
10
11
  /** Use openapi at the given path for generating SwaggerUI endpoints. By default, this will be 'openapi/openapi.yaml' if the 'use-swaggerui' option is enabled. */
11
12
  "openapi-path"?: string;
13
+ /** When generating mock files, overwrite any existing files with the same name. */
14
+ overwrite?: boolean;
15
+ /** The generated project name. */
16
+ "project-name"?: string;
17
+ /** The http port number to use when hosting the service locally */
18
+ "http-port"?: number;
19
+ /** The https port number to use when hosting the service locally */
20
+ "https-port"?: number;
21
+ /** Specifies the collection type to use: 'array' or 'enumerable'. The default is 'enumerable'." */
22
+ "collection-type"?: "array" | "enumerable";
12
23
  }
13
24
  export declare const $lib: import("@typespec/compiler").TypeSpecLibrary<{
14
25
  "invalid-identifier": {
@@ -32,8 +43,11 @@ export declare const $lib: import("@typespec/compiler").TypeSpecLibrary<{
32
43
  "invalid-interpolation": {
33
44
  readonly default: import("@typespec/compiler").CallableMessage<[]>;
34
45
  };
46
+ "get-request-body": {
47
+ readonly default: import("@typespec/compiler").CallableMessage<[]>;
48
+ };
35
49
  }, CSharpServiceEmitterOptions, never>;
36
- export declare const reportDiagnostic: <C extends "invalid-identifier" | "anonymous-model" | "missing-type-parent" | "no-numeric" | "unrecognized-scalar" | "invalid-intrinsic" | "invalid-interpolation", M extends keyof {
50
+ export declare const reportDiagnostic: <C extends "invalid-identifier" | "anonymous-model" | "missing-type-parent" | "no-numeric" | "unrecognized-scalar" | "invalid-intrinsic" | "invalid-interpolation" | "get-request-body", M extends keyof {
37
51
  "invalid-identifier": {
38
52
  readonly default: import("@typespec/compiler").CallableMessage<["identifier", "location"]>;
39
53
  };
@@ -55,6 +69,9 @@ export declare const reportDiagnostic: <C extends "invalid-identifier" | "anonym
55
69
  "invalid-interpolation": {
56
70
  readonly default: import("@typespec/compiler").CallableMessage<[]>;
57
71
  };
72
+ "get-request-body": {
73
+ readonly default: import("@typespec/compiler").CallableMessage<[]>;
74
+ };
58
75
  }[C]>(program: import("@typespec/compiler").Program, diag: import("@typespec/compiler").DiagnosticReport<{
59
76
  "invalid-identifier": {
60
77
  readonly default: import("@typespec/compiler").CallableMessage<["identifier", "location"]>;
@@ -77,6 +94,18 @@ export declare const reportDiagnostic: <C extends "invalid-identifier" | "anonym
77
94
  "invalid-interpolation": {
78
95
  readonly default: import("@typespec/compiler").CallableMessage<[]>;
79
96
  };
97
+ "get-request-body": {
98
+ readonly default: import("@typespec/compiler").CallableMessage<[]>;
99
+ };
80
100
  }, C, M>) => void, createStateSymbol: (name: string) => symbol, getTracer: (program: import("@typespec/compiler").Program) => import("@typespec/compiler").Tracer;
81
101
  export type CSharpServiceLibrary = typeof $lib;
102
+ export declare class CSharpServiceOptions {
103
+ private static instance;
104
+ collectionType: CollectionType;
105
+ private constructor();
106
+ static getInstance(): CSharpServiceOptions;
107
+ initialize(options: {
108
+ "collection-type"?: string;
109
+ }): void;
110
+ }
82
111
  //# sourceMappingURL=lib.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../../../src/lib/lib.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,2BAA2B;IAC1C,yFAAyF;IACzF,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,gEAAgE;IAChE,aAAa,CAAC,EAAE,QAAQ,GAAG,KAAK,CAAC;IACjC,gIAAgI;IAChI,YAAY,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;IAC9B,wEAAwE;IACxE,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,kKAAkK;IAClK,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AA6CD,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;sCAiDf,CAAC;AAEH,eAAO,MAAQ,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAAE,iBAAiB,4BAAE,SAAS,wFAAS,CAAC;AAEvE,MAAM,MAAM,oBAAoB,GAAG,OAAO,IAAI,CAAC"}
1
+ {"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../../../src/lib/lib.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAyB,MAAM,iBAAiB,CAAC;AAExE,MAAM,WAAW,2BAA2B;IAC1C,yFAAyF;IACzF,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,gEAAgE;IAChE,aAAa,CAAC,EAAE,QAAQ,GAAG,KAAK,CAAC;IACjC,gJAAgJ;IAChJ,YAAY,CAAC,EAAE,MAAM,GAAG,YAAY,GAAG,yBAAyB,CAAC;IACjE,wEAAwE;IACxE,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,kKAAkK;IAClK,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,mFAAmF;IACnF,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,kCAAkC;IAClC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,mEAAmE;IACnE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oEAAoE;IACpE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mGAAmG;IACnG,iBAAiB,CAAC,EAAE,OAAO,GAAG,YAAY,CAAC;CAC5C;AA4ED,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;sCA0Df,CAAC;AAEH,eAAO,MAAQ,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAAE,iBAAiB,4BAAE,SAAS,wFAAS,CAAC;AAEvE,MAAM,MAAM,oBAAoB,GAAG,OAAO,IAAI,CAAC;AAE/C,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAuB;IACvC,cAAc,EAAE,cAAc,CAAC;IAEtC,OAAO;WAIO,WAAW,IAAI,oBAAoB;IAO1C,UAAU,CAAC,OAAO,EAAE;QAAE,iBAAiB,CAAC,EAAE,MAAM,CAAA;KAAE;CAG1D"}
@@ -1,4 +1,5 @@
1
1
  import { createTypeSpecLibrary, paramMessage } from "@typespec/compiler";
2
+ import { CollectionType, resolveCollectionType } from "./interfaces.js";
2
3
  const EmitterOptionsSchema = {
3
4
  type: "object",
4
5
  additionalProperties: false,
@@ -17,10 +18,10 @@ const EmitterOptionsSchema = {
17
18
  },
18
19
  "emit-mocks": {
19
20
  type: "string",
20
- enum: ["all", "none"],
21
+ enum: ["mocks-and-project-files", "mocks-only", "none"],
21
22
  nullable: true,
22
23
  default: "none",
23
- description: "Emits mock implementations of business logic, enabling the service to respond to requests before a real implementation is provided",
24
+ description: "Emits mock implementations of business logic, setup code, and project files, enabling the service to respond to requests before a real implementation is provided",
24
25
  },
25
26
  "use-swaggerui": {
26
27
  type: "boolean",
@@ -34,11 +35,43 @@ const EmitterOptionsSchema = {
34
35
  default: null,
35
36
  description: "Use openapi at the given path for generating SwaggerUI endpoints. By default, this will be 'openapi/openapi.yaml' if the 'use-swaggerui' option is enabled. ",
36
37
  },
38
+ overwrite: {
39
+ type: "boolean",
40
+ nullable: true,
41
+ default: false,
42
+ description: "When generating mock and project files, overwrite any existing files with the same name.",
43
+ },
44
+ "project-name": {
45
+ type: "string",
46
+ nullable: true,
47
+ default: "ServiceProject",
48
+ description: "The name of the generated project.",
49
+ },
50
+ "http-port": {
51
+ type: "number",
52
+ nullable: true,
53
+ description: "The service http port when hosting the project locally.",
54
+ },
55
+ "https-port": {
56
+ type: "number",
57
+ nullable: true,
58
+ description: "The service https port when hosting the project locally.",
59
+ },
60
+ "collection-type": {
61
+ type: "string",
62
+ enum: ["array", "enumerable"],
63
+ nullable: true,
64
+ default: "array",
65
+ description: "Specifies the collection type to use: 'array' or 'enumerable'. The default is 'array'.",
66
+ },
37
67
  },
38
68
  required: [],
39
69
  };
40
70
  export const $lib = createTypeSpecLibrary({
41
71
  name: "@typespec/http-server-csharp",
72
+ capabilities: {
73
+ dryRun: true,
74
+ },
42
75
  diagnostics: {
43
76
  "invalid-identifier": {
44
77
  severity: "warning",
@@ -82,10 +115,32 @@ export const $lib = createTypeSpecLibrary({
82
115
  default: paramMessage `StringTemplate types should only reference literal-valued constants, enum members, or literal-valued model properties. The interpolated value will not contain one or more referenced elements in generated code.`,
83
116
  },
84
117
  },
118
+ "get-request-body": {
119
+ severity: "warning",
120
+ messages: {
121
+ default: paramMessage `Get operations should not have request bodies. Generating an operation and interface without parameters, your business logic will use HttpContext to interpret Request properties.`,
122
+ },
123
+ },
85
124
  },
86
125
  emitter: {
87
126
  options: EmitterOptionsSchema,
88
127
  },
89
128
  });
90
129
  export const { reportDiagnostic, createStateSymbol, getTracer } = $lib;
130
+ export class CSharpServiceOptions {
131
+ static instance;
132
+ collectionType;
133
+ constructor() {
134
+ this.collectionType = CollectionType.Array;
135
+ }
136
+ static getInstance() {
137
+ if (!CSharpServiceOptions.instance) {
138
+ CSharpServiceOptions.instance = new CSharpServiceOptions();
139
+ }
140
+ return CSharpServiceOptions.instance;
141
+ }
142
+ initialize(options) {
143
+ this.collectionType = resolveCollectionType(options["collection-type"]);
144
+ }
145
+ }
91
146
  //# sourceMappingURL=lib.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"lib.js","sourceRoot":"","sources":["../../../src/lib/lib.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAkB,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAezF,MAAM,oBAAoB,GAAgD;IACxE,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,UAAU,EAAE;QACV,aAAa,EAAE;YACb,IAAI,EAAE,SAAS;YACf,QAAQ,EAAE,IAAI;YACd,WAAW,EACT,oGAAoG;SACvG;QACD,aAAa,EAAE;YACb,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC;YACvB,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE,KAAK;YACd,WAAW,EACT,uFAAuF;SAC1F;QACD,YAAY,EAAE;YACZ,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC;YACrB,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE,MAAM;YACf,WAAW,EACT,oIAAoI;SACvI;QACD,eAAe,EAAE;YACf,IAAI,EAAE,SAAS;YACf,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE,KAAK;YACd,WAAW,EAAE,kEAAkE;SAChF;QACD,cAAc,EAAE;YACd,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE,IAAI;YACb,WAAW,EACT,8JAA8J;SACjK;KACF;IACD,QAAQ,EAAE,EAAE;CACb,CAAC;AAEF,MAAM,CAAC,MAAM,IAAI,GAAG,qBAAqB,CAAC;IACxC,IAAI,EAAE,8BAA8B;IACpC,WAAW,EAAE;QACX,oBAAoB,EAAE;YACpB,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,uBAAuB,YAAY,QAAQ,UAAU,EAAE;aAC7E;SACF;QACD,iBAAiB,EAAE;YACjB,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,qIAAqI,aAAa,mBAAmB;aAC3L;SACF;QACD,qBAAqB,EAAE;YACrB,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,uBAAuB,MAAM,IAAI,MAAM,GAAG;aAChE;SACF;QACD,YAAY,EAAE;YACZ,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,SAAS,YAAY,sFAAsF,YAAY,yGAAyG;aACtP;SACF;QACD,qBAAqB,EAAE;YACrB,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,eAAe,UAAU,iFAAiF;aAChI;SACF;QACD,mBAAmB,EAAE;YACnB,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,kBAAkB,UAAU,8FAA8F;aAChJ;SACF;QACD,uBAAuB,EAAE;YACvB,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,oNAAoN;aAC1O;SACF;KACF;IACD,OAAO,EAAE;QACP,OAAO,EAAE,oBAAmE;KAC7E;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC"}
1
+ {"version":3,"file":"lib.js","sourceRoot":"","sources":["../../../src/lib/lib.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { AssetEmitter } from "@typespec/asset-emitter";
2
+ import { LibrarySourceFile } from "./interfaces.js";
3
+ import { CSharpServiceEmitterOptions } from "./lib.js";
4
+ export declare function getProjectHelpers(emitter: AssetEmitter<string, CSharpServiceEmitterOptions>, projectName: string, useSwaggerUI: boolean, httpPort: number, httpsPort: number): LibrarySourceFile[];
5
+ //# sourceMappingURL=project.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../../src/lib/project.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,2BAA2B,EAAE,MAAM,UAAU,CAAC;AAEvD,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,YAAY,CAAC,MAAM,EAAE,2BAA2B,CAAC,EAC1D,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,OAAO,EACrB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,GAChB,iBAAiB,EAAE,CAgCrB"}
@@ -0,0 +1,101 @@
1
+ import { LibrarySourceFile } from "./interfaces.js";
2
+ export function getProjectHelpers(emitter, projectName, useSwaggerUI, httpPort, httpsPort) {
3
+ const result = [
4
+ new LibrarySourceFile({
5
+ filename: `${projectName}.csproj`,
6
+ emitter: emitter,
7
+ getContents: () => getProjectFile(useSwaggerUI),
8
+ path: ".",
9
+ conditional: true,
10
+ }),
11
+ new LibrarySourceFile({
12
+ filename: "appsettings.json",
13
+ emitter: emitter,
14
+ getContents: getAppSettings,
15
+ path: ".",
16
+ conditional: true,
17
+ }),
18
+ new LibrarySourceFile({
19
+ filename: "appsettings.Development.json",
20
+ emitter: emitter,
21
+ getContents: getDeveloperAppSettings,
22
+ path: ".",
23
+ conditional: true,
24
+ }),
25
+ new LibrarySourceFile({
26
+ filename: "launchSettings.json",
27
+ emitter: emitter,
28
+ getContents: () => getLaunchSettings(httpPort, httpsPort),
29
+ path: "Properties",
30
+ conditional: true,
31
+ }),
32
+ ];
33
+ return result;
34
+ }
35
+ function getProjectFile(useSwaggerUI) {
36
+ return `<Project Sdk="Microsoft.NET.Sdk.Web">
37
+
38
+ <PropertyGroup>
39
+ <TargetFramework>net9.0</TargetFramework>
40
+ <Nullable>enable</Nullable>
41
+ <ImplicitUsings>enable</ImplicitUsings>
42
+ </PropertyGroup>
43
+
44
+ ${useSwaggerUI
45
+ ? ` <ItemGroup>
46
+ <PackageReference Include="SwashBuckle.AspNetCore" Version="7.3.1" />
47
+ </ItemGroup>`
48
+ : ""}
49
+
50
+ </Project>
51
+ `;
52
+ }
53
+ function getAppSettings() {
54
+ return `{
55
+ "Logging": {
56
+ "LogLevel": {
57
+ "Default": "Information",
58
+ "Microsoft.AspNetCore": "Warning"
59
+ }
60
+ },
61
+ "AllowedHosts": "*"
62
+ }
63
+ `;
64
+ }
65
+ function getDeveloperAppSettings() {
66
+ return `{
67
+ "Logging": {
68
+ "LogLevel": {
69
+ "Default": "Information",
70
+ "Microsoft.AspNetCore": "Warning"
71
+ }
72
+ }
73
+ }
74
+ `;
75
+ }
76
+ function getLaunchSettings(httpPort, httpsPort) {
77
+ return `{
78
+ "$schema": "https://json.schemastore.org/launchsettings.json",
79
+ "profiles": {
80
+ "https": {
81
+ "commandName": "Project",
82
+ "dotnetRunMessages": true,
83
+ "launchBrowser": true,
84
+ "applicationUrl": "https://localhost:${httpsPort};http://localhost:${httpPort}",
85
+ "environmentVariables": {
86
+ "ASPNETCORE_ENVIRONMENT": "Development"
87
+ }
88
+ },
89
+ "http": {
90
+ "commandName": "Project",
91
+ "dotnetRunMessages": true,
92
+ "launchBrowser": true,
93
+ "applicationUrl": "http://localhost:${httpPort}",
94
+ "environmentVariables": {
95
+ "ASPNETCORE_ENVIRONMENT": "Development"
96
+ }
97
+ }
98
+ }
99
+ }`;
100
+ }
101
+ //# sourceMappingURL=project.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project.js","sourceRoot":"","sources":["../../../src/lib/project.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAGpD,MAAM,UAAU,iBAAiB,CAC/B,OAA0D,EAC1D,WAAmB,EACnB,YAAqB,EACrB,QAAgB,EAChB,SAAiB;IAEjB,MAAM,MAAM,GAAwB;QAClC,IAAI,iBAAiB,CAAC;YACpB,QAAQ,EAAE,GAAG,WAAW,SAAS;YACjC,OAAO,EAAE,OAAO;YAChB,WAAW,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,YAAY,CAAC;YAC/C,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,IAAI;SAClB,CAAC;QACF,IAAI,iBAAiB,CAAC;YACpB,QAAQ,EAAE,kBAAkB;YAC5B,OAAO,EAAE,OAAO;YAChB,WAAW,EAAE,cAAc;YAC3B,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,IAAI;SAClB,CAAC;QACF,IAAI,iBAAiB,CAAC;YACpB,QAAQ,EAAE,8BAA8B;YACxC,OAAO,EAAE,OAAO;YAChB,WAAW,EAAE,uBAAuB;YACpC,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,IAAI;SAClB,CAAC;QACF,IAAI,iBAAiB,CAAC;YACpB,QAAQ,EAAE,qBAAqB;YAC/B,OAAO,EAAE,OAAO;YAChB,WAAW,EAAE,GAAG,EAAE,CAAC,iBAAiB,CAAC,QAAQ,EAAE,SAAS,CAAC;YACzD,IAAI,EAAE,YAAY;YAClB,WAAW,EAAE,IAAI;SAClB,CAAC;KACH,CAAC;IACF,OAAO,MAAM,CAAC;AAChB,CAAC;AACD,SAAS,cAAc,CAAC,YAAqB;IAC3C,OAAO;;;;;;;;EASP,YAAY;QACV,CAAC,CAAC;;eAES;QACX,CAAC,CAAC,EACN;;;CAGC,CAAC;AACF,CAAC;AACD,SAAS,cAAc;IACrB,OAAO;;;;;;;;;CASR,CAAC;AACF,CAAC;AAED,SAAS,uBAAuB;IAC9B,OAAO;;;;;;;;CAQR,CAAC;AACF,CAAC;AAED,SAAS,iBAAiB,CAAC,QAAgB,EAAE,SAAiB;IAC5D,OAAO;;;;;;;+CAOsC,SAAS,qBAAqB,QAAQ;;;;;;;;;8CASvC,QAAQ;;;;;;IAMlD,CAAC;AACL,CAAC"}
@@ -1,5 +1,6 @@
1
- import { AssetEmitter } from "@typespec/compiler/emitter-framework";
2
- import { LibrarySourceFile } from "./interfaces.js";
1
+ import { AssetEmitter } from "@typespec/asset-emitter";
2
+ import { CSharpCollectionType, CSharpType, LibrarySourceFile } from "./interfaces.js";
3
+ import { CSharpServiceEmitterOptions } from "./lib.js";
3
4
  export interface BusinessLogicImplementation {
4
5
  namespace: string;
5
6
  interfaceName: string;
@@ -10,11 +11,12 @@ export interface BusinessLogicImplementation {
10
11
  export interface BusinessLogicMethod {
11
12
  methodName: string;
12
13
  methodParams: string;
13
- returnType: string;
14
+ returnTypeName: string;
15
+ returnType: CSharpType | CSharpCollectionType;
14
16
  instantiatedReturnType?: string;
15
17
  }
16
18
  export type BusinessLogicRegistrations = Map<string, BusinessLogicImplementation>;
17
19
  export type BusinessLogicRegistration = [string, BusinessLogicImplementation];
18
- export declare function getScaffoldingHelpers(emitter: AssetEmitter<string, Record<string, never>>, useSwagger: boolean, openApiPath: string): LibrarySourceFile[];
19
- export declare function getBusinessLogicImplementations(emitter: AssetEmitter<string, Record<string, never>>, registrations: BusinessLogicRegistrations): LibrarySourceFile[];
20
+ export declare function getScaffoldingHelpers(emitter: AssetEmitter<string, CSharpServiceEmitterOptions>, useSwagger: boolean, openApiPath: string, hasMockRegistration: boolean): LibrarySourceFile[];
21
+ export declare function getBusinessLogicImplementations(emitter: AssetEmitter<string, Record<string, never>>, registrations: BusinessLogicRegistrations, useSwagger: boolean, openApiPath: string): LibrarySourceFile[];
20
22
  //# sourceMappingURL=scaffolding.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"scaffolding.d.ts","sourceRoot":"","sources":["../../../src/lib/scaffolding.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAQ,MAAM,sCAAsC,CAAC;AAE1E,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD,MAAM,WAAW,2BAA2B;IAC1C,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,mBAAmB,EAAE,CAAC;CAChC;AAED,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,sBAAsB,CAAC,EAAE,MAAM,CAAC;CACjC;AAED,MAAM,MAAM,0BAA0B,GAAG,GAAG,CAAC,MAAM,EAAE,2BAA2B,CAAC,CAAC;AAClF,MAAM,MAAM,yBAAyB,GAAG,CAAC,MAAM,EAAE,2BAA2B,CAAC,CAAC;AAE9E,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,EACpD,UAAU,EAAE,OAAO,EACnB,WAAW,EAAE,MAAM,GAClB,iBAAiB,EAAE,CAqBrB;AAED,wBAAgB,+BAA+B,CAC7C,OAAO,EAAE,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,EACpD,aAAa,EAAE,0BAA0B,GACxC,iBAAiB,EAAE,CAyBrB"}
1
+ {"version":3,"file":"scaffolding.d.ts","sourceRoot":"","sources":["../../../src/lib/scaffolding.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAQ,MAAM,yBAAyB,CAAC;AAE7D,OAAO,EAAE,oBAAoB,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACtF,OAAO,EAAE,2BAA2B,EAAE,MAAM,UAAU,CAAC;AAEvD,MAAM,WAAW,2BAA2B;IAC1C,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,mBAAmB,EAAE,CAAC;CAChC;AAED,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,UAAU,GAAG,oBAAoB,CAAC;IAC9C,sBAAsB,CAAC,EAAE,MAAM,CAAC;CACjC;AAED,MAAM,MAAM,0BAA0B,GAAG,GAAG,CAAC,MAAM,EAAE,2BAA2B,CAAC,CAAC;AAClF,MAAM,MAAM,yBAAyB,GAAG,CAAC,MAAM,EAAE,2BAA2B,CAAC,CAAC;AAE9E,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,YAAY,CAAC,MAAM,EAAE,2BAA2B,CAAC,EAC1D,UAAU,EAAE,OAAO,EACnB,WAAW,EAAE,MAAM,EACnB,mBAAmB,EAAE,OAAO,GAC3B,iBAAiB,EAAE,CA8BrB;AAED,wBAAgB,+BAA+B,CAC7C,OAAO,EAAE,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,EACpD,aAAa,EAAE,0BAA0B,EACzC,UAAU,EAAE,OAAO,EACnB,WAAW,EAAE,MAAM,GAClB,iBAAiB,EAAE,CA4BrB"}