@azure-tools/typespec-go 0.7.0 → 0.8.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/dist/codegen.go/src/constants.d.ts.map +1 -1
  2. package/dist/codegen.go/src/constants.js +1 -5
  3. package/dist/codegen.go/src/constants.js.map +1 -1
  4. package/dist/codegen.go/src/example.js +1 -1
  5. package/dist/codegen.go/src/example.js.map +1 -1
  6. package/dist/codegen.go/src/fake/servers.js +1 -0
  7. package/dist/codegen.go/src/fake/servers.js.map +1 -1
  8. package/dist/codegen.go/src/gomod.js +7 -9
  9. package/dist/codegen.go/src/gomod.js.map +1 -1
  10. package/dist/codegen.go/src/helpers.js +1 -1
  11. package/dist/codegen.go/src/helpers.js.map +1 -1
  12. package/dist/codegen.go/src/models.d.ts.map +1 -1
  13. package/dist/codegen.go/src/models.js +108 -81
  14. package/dist/codegen.go/src/models.js.map +1 -1
  15. package/dist/codegen.go/src/operations.d.ts.map +1 -1
  16. package/dist/codegen.go/src/operations.js +1 -5
  17. package/dist/codegen.go/src/operations.js.map +1 -1
  18. package/dist/codegen.go/src/version.d.ts +7 -0
  19. package/dist/codegen.go/src/version.d.ts.map +1 -1
  20. package/dist/codegen.go/src/version.js +10 -3
  21. package/dist/codegen.go/src/version.js.map +1 -1
  22. package/dist/codemodel.go/src/client.d.ts +1 -3
  23. package/dist/codemodel.go/src/client.d.ts.map +1 -1
  24. package/dist/codemodel.go/src/client.js +0 -1
  25. package/dist/codemodel.go/src/client.js.map +1 -1
  26. package/dist/codemodel.go/src/package.d.ts +41 -9
  27. package/dist/codemodel.go/src/package.d.ts.map +1 -1
  28. package/dist/codemodel.go/src/package.js +0 -18
  29. package/dist/codemodel.go/src/package.js.map +1 -1
  30. package/dist/typespec-go/src/emitter.js +4 -3
  31. package/dist/typespec-go/src/emitter.js.map +1 -1
  32. package/dist/typespec-go/src/lib.d.ts +1 -1
  33. package/dist/typespec-go/src/lib.d.ts.map +1 -1
  34. package/dist/typespec-go/src/lib.js +6 -6
  35. package/dist/typespec-go/src/lib.js.map +1 -1
  36. package/dist/typespec-go/src/tcgcadapter/adapter.d.ts.map +1 -1
  37. package/dist/typespec-go/src/tcgcadapter/adapter.js +10 -2
  38. package/dist/typespec-go/src/tcgcadapter/adapter.js.map +1 -1
  39. package/dist/typespec-go/src/tcgcadapter/clients.d.ts.map +1 -1
  40. package/dist/typespec-go/src/tcgcadapter/clients.js +62 -37
  41. package/dist/typespec-go/src/tcgcadapter/clients.js.map +1 -1
  42. package/dist/typespec-go/src/tcgcadapter/types.d.ts +0 -1
  43. package/dist/typespec-go/src/tcgcadapter/types.d.ts.map +1 -1
  44. package/dist/typespec-go/src/tcgcadapter/types.js +16 -42
  45. package/dist/typespec-go/src/tcgcadapter/types.js.map +1 -1
  46. package/package.json +21 -21
@@ -12,6 +12,11 @@ const EmitterOptionsSchema = {
12
12
  nullable: true,
13
13
  description: 'Semantic version of azcore without the leading \'v\' to use if different from the default version (e.g. 1.2.3).',
14
14
  },
15
+ 'containing-module': {
16
+ type: 'string',
17
+ nullable: true,
18
+ description: 'The module into which the package is being emitted. Mutually exclusive with module.',
19
+ },
15
20
  'disallow-unknown-fields': {
16
21
  type: 'boolean',
17
22
  nullable: true,
@@ -45,12 +50,7 @@ const EmitterOptionsSchema = {
45
50
  'module': {
46
51
  type: 'string',
47
52
  nullable: true,
48
- description: 'The name of the Go module written to go.mod. Omit to skip go.mod generation. When module is specified, module-version must also be specified.',
49
- },
50
- 'module-version': {
51
- type: 'string',
52
- nullable: true,
53
- description: 'Initial semantic version of the Go module without the leading \'v\'. (e.g. 1.2.3). Defaults to 0.1.0.',
53
+ description: 'The module identity to use in go.mod. Mutually exclusive with containing-module.',
54
54
  },
55
55
  'rawjson-as-bytes': {
56
56
  type: 'boolean',
@@ -1 +1 @@
1
- {"version":3,"file":"lib.js","sourceRoot":"","sources":["../../../src/lib.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lib.js","sourceRoot":"","sources":["../../../src/lib.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../../src/tcgcadapter/adapter.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,KAAK,EAAE,MAAM,oCAAoC,CAAC;AAGzD,OAAO,EAAE,WAAW,EAAY,MAAM,oBAAoB,CAAC;AAO3D,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,WAAW,CAAC,gBAAgB,CAAC,GAAG,OAAO,CAAC,EAAE,CAAC,SAAS,CAAC,CAyDrG"}
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../../src/tcgcadapter/adapter.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,KAAK,EAAE,MAAM,oCAAoC,CAAC;AAGzD,OAAO,EAAE,WAAW,EAAY,MAAM,oBAAoB,CAAC;AAO3D,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,WAAW,CAAC,gBAAgB,CAAC,GAAG,OAAO,CAAC,EAAE,CAAC,SAAS,CAAC,CAiErG"}
@@ -39,9 +39,17 @@ export async function tcgcToGoCodeModel(context) {
39
39
  ...sdkContext.sdkPackage.metadata,
40
40
  emitterVersion: packageJson['version']
41
41
  };
42
+ if (context.options['containing-module'] && context.options.module) {
43
+ throw new AdapterError('InvalidArgument', 'module and containing-module are mutually exclusive', NoTarget);
44
+ }
42
45
  if (context.options.module) {
43
- const moduleVersion = context.options['module-version'] ?? '0.1.0';
44
- codeModel.options.module = new go.Module(context.options.module, moduleVersion);
46
+ codeModel.options.module = context.options.module;
47
+ }
48
+ else if (context.options['containing-module']) {
49
+ codeModel.options.containingModule = context.options['containing-module'];
50
+ }
51
+ else {
52
+ throw new AdapterError('InvalidArgument', 'missing argument module or containing-module', NoTarget);
45
53
  }
46
54
  if (context.options['rawjson-as-bytes']) {
47
55
  codeModel.options.rawJSONAsBytes = true;
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../../src/tcgcadapter/adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../../src/tcgcadapter/adapter.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"clients.d.ts","sourceRoot":"","sources":["../../../../src/tcgcadapter/clients.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,IAAI,MAAM,6CAA6C,CAAC;AAKpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAwC,WAAW,EAAE,MAAM,YAAY,CAAC;AAG/E,qBAAa,aAAa;IACxB,OAAO,CAAC,EAAE,CAAc;IACxB,OAAO,CAAC,IAAI,CAAmB;IAK/B,OAAO,CAAC,YAAY,CAAkC;gBAE1C,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,gBAAgB;IAQnD,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,gBAAgB,CAAC;IAY/D,OAAO,CAAC,oBAAoB;IAuH5B,OAAO,CAAC,aAAa;IAUrB,OAAO,CAAC,WAAW;IAmEnB,OAAO,CAAC,YAAY;IASpB,OAAO,CAAC,cAAc;IAgDtB,OAAO,CAAC,qBAAqB;IA4K7B,OAAO,CAAC,gBAAgB;IAcxB,OAAO,CAAC,oBAAoB;IA8F5B,OAAO,CAAC,0BAA0B;IAiBlC,OAAO,CAAC,qBAAqB;IAwH7B;;;;;;;;;;OAUG;IACH,OAAO,CAAC,iBAAiB;IAoDzB,OAAO,CAAC,mBAAmB;IAoB3B,OAAO,CAAC,qBAAqB;IAS7B,OAAO,CAAC,4BAA4B;IAQpC,OAAO,CAAC,6BAA6B;IAQrC,OAAO,CAAC,mBAAmB;IAoB3B,OAAO,CAAC,0BAA0B;IAwElC,OAAO,CAAC,gBAAgB;CAgGzB"}
1
+ {"version":3,"file":"clients.d.ts","sourceRoot":"","sources":["../../../../src/tcgcadapter/clients.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,IAAI,MAAM,6CAA6C,CAAC;AAKpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAuB,WAAW,EAAE,MAAM,YAAY,CAAC;AAG9D,qBAAa,aAAa;IACxB,OAAO,CAAC,EAAE,CAAc;IACxB,OAAO,CAAC,IAAI,CAAmB;IAK/B,OAAO,CAAC,YAAY,CAAkC;gBAE1C,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,gBAAgB;IAQnD,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,gBAAgB,CAAC;IAY/D,OAAO,CAAC,oBAAoB;IAuJ5B,OAAO,CAAC,aAAa;IAUrB,OAAO,CAAC,WAAW;IAmEnB,OAAO,CAAC,YAAY;IASpB,OAAO,CAAC,cAAc;IAiDtB,OAAO,CAAC,qBAAqB;IA4K7B,OAAO,CAAC,gBAAgB;IAcxB,OAAO,CAAC,oBAAoB;IA8F5B,OAAO,CAAC,0BAA0B;IAiBlC,OAAO,CAAC,qBAAqB;IAwH7B;;;;;;;;;;OAUG;IACH,OAAO,CAAC,iBAAiB;IAoDzB,OAAO,CAAC,mBAAmB;IAoB3B,OAAO,CAAC,qBAAqB;IAS7B,OAAO,CAAC,4BAA4B;IAQpC,OAAO,CAAC,6BAA6B;IAQrC,OAAO,CAAC,mBAAmB;IAoB3B,OAAO,CAAC,0BAA0B;IAwElC,OAAO,CAAC,gBAAgB;CAgGzB"}
@@ -8,7 +8,7 @@ import { NoTarget } from '@typespec/compiler';
8
8
  import * as go from '../../../codemodel.go/src/index.js';
9
9
  import { capitalize, createOptionsTypeDescription, createResponseEnvelopeDescription, ensureNameCase, getEscapedReservedName, uncapitalize } from '../../../naming.go/src/naming.js';
10
10
  import { AdapterError } from './errors.js';
11
- import { getEndpointType, isTypePassedByValue } from './types.js';
11
+ import { isTypePassedByValue } from './types.js';
12
12
  // used to convert SDK clients and their methods to Go code model types
13
13
  export class clientAdapter {
14
14
  ta;
@@ -69,53 +69,78 @@ export class clientAdapter {
69
69
  else if (docs.description) {
70
70
  docs.description = `${clientName} - ${docs.description}`;
71
71
  }
72
- else {
72
+ else if (clientName.length > 6) {
73
73
  // strip clientName's "Client" suffix
74
74
  const groupName = clientName.substring(0, clientName.length - 6);
75
75
  docs.summary = `${clientName} contains the methods for the ${groupName} group.`;
76
76
  }
77
+ else {
78
+ // the client name is simply "Client"
79
+ docs.summary = `${clientName} contains the methods for the service.`;
80
+ }
77
81
  const goClient = new go.Client(clientName, docs, go.newClientOptions(this.ta.codeModel.type, clientName));
78
82
  goClient.parent = parent;
79
83
  // anything other than public means non-instantiable client
80
84
  if (sdkClient.clientInitialization.initializedBy & tcgc.InitializedByFlags.Individually) {
81
85
  for (const param of sdkClient.clientInitialization.parameters) {
82
- if (param.kind === 'credential') {
83
- // skip this for now as we don't generate client constructors
84
- continue;
85
- }
86
- else if (param.kind === 'endpoint') {
87
- const paramType = getEndpointType(param);
88
- // this will either be a fixed or templated host
89
- // don't set the fixed host for ARM as it isn't used
90
- if (this.ta.codeModel.type !== 'azure-arm') {
91
- goClient.host = paramType.serverUrl;
92
- }
93
- if (paramType.templateArguments.length === 0) {
94
- // this is the param for the fixed host, don't create a param for it
95
- if (!this.ta.codeModel.host) {
96
- this.ta.codeModel.host = goClient.host;
86
+ switch (param.kind) {
87
+ case 'credential':
88
+ // skip this for now as we don't generate client constructors
89
+ continue;
90
+ case 'endpoint': {
91
+ if (this.ta.codeModel.type === 'azure-arm') {
92
+ // for ARM, the endpoint is handled via the azcore/arm.Client
93
+ // so we don't need to adapt it.
94
+ continue;
97
95
  }
98
- else if (this.ta.codeModel.host !== goClient.host) {
99
- throw new AdapterError('InternalError', `client ${goClient.name} has a conflicting host ${goClient.host}`, NoTarget);
96
+ let endpointType;
97
+ switch (param.type.kind) {
98
+ case 'endpoint':
99
+ // single endpoint without any supplemental path
100
+ endpointType = param.type;
101
+ break;
102
+ case 'union':
103
+ // this is a union of endpoints. the first is the endpoint plus
104
+ // the supplemental path. the second is a "raw" endpoint which
105
+ // requires the caller to provide the complete endpoint. we only
106
+ // expose the former at present. languages that support overloads
107
+ // MAY support both but it's not a requirement.
108
+ endpointType = param.type.variantTypes[0];
100
109
  }
101
- }
102
- else {
103
- goClient.templatedHost = true;
104
- for (const templateArg of paramType.templateArguments) {
105
- goClient.parameters.push(this.adaptURIParam(templateArg));
110
+ for (let i = 0; i < endpointType.templateArguments.length; ++i) {
111
+ const templateArg = endpointType.templateArguments[i];
112
+ if (i === 0) {
113
+ // the first template arg is always the endpoint parameter.
114
+ // note that the types of the param and the field are different.
115
+ // NOTE: we use param.name here instead of templateArg.name as
116
+ // the former has the fixed name "endpoint" which is what we want.
117
+ const adaptedParam = this.adaptURIParam(templateArg);
118
+ adaptedParam.docs.summary = templateArg.summary;
119
+ adaptedParam.docs.description = templateArg.doc;
120
+ goClient.parameters.push(adaptedParam);
121
+ // if the server's URL is *only* the endpoint parameter then we're done.
122
+ // this is the param.type.kind === 'endpoint' case.
123
+ if (endpointType.serverUrl === `{${templateArg.serializedName}}`) {
124
+ break;
125
+ }
126
+ goClient.templatedHost = endpointType.serverUrl;
127
+ continue;
128
+ }
129
+ const adaptedParam = this.adaptURIParam(templateArg);
130
+ adaptedParam.docs.summary = templateArg.summary;
131
+ adaptedParam.docs.description = templateArg.doc;
132
+ goClient.parameters.push(adaptedParam);
106
133
  }
134
+ break;
107
135
  }
108
- continue;
109
- }
110
- else if (param.kind === 'method') {
111
- // some client params, notably api-version, can be explicitly
112
- // defined in the operation signature:
113
- // e.g. op withQueryApiVersion(@query("api-version") apiVersion: string)
114
- // these get propagated to sdkMethod.operation.parameters thus they
115
- // will be adapted in adaptMethodParameters()
116
- continue;
136
+ case 'method':
137
+ // some client params, notably api-version, can be explicitly
138
+ // defined in the operation signature:
139
+ // e.g. op withQueryApiVersion(@query("api-version") apiVersion: string)
140
+ // these get propagated to sdkMethod.operation.parameters thus they
141
+ // will be adapted in adaptMethodParameters()
142
+ continue;
117
143
  }
118
- goClient.parameters.push(this.adaptURIParam(param));
119
144
  }
120
145
  }
121
146
  else if (parent) {
@@ -123,7 +148,6 @@ export class clientAdapter {
123
148
  // NOTE: we must propagate parant params before a potential recursive call
124
149
  // to create a child client that will need to inherit our client params.
125
150
  goClient.templatedHost = parent.templatedHost;
126
- goClient.host = parent.host;
127
151
  // make a copy of the client params. this is to prevent
128
152
  // client method params from being shared across clients
129
153
  // as not all client method params might be uniform.
@@ -251,9 +275,10 @@ export class clientAdapter {
251
275
  optionalParamsGroupName = uncapitalize(optionalParamsGroupName);
252
276
  }
253
277
  let optsGroupName = 'options';
254
- // if there's an existing parameter with the name options then pick something else
278
+ // if there's an existing required parameter with the name options then pick something else.
279
+ // optional params will be inside the options type, so they can never collide.
255
280
  for (const param of sdkMethod.parameters) {
256
- if (param.name === optsGroupName) {
281
+ if (!param.optional && param.name === optsGroupName) {
257
282
  optsGroupName = 'opts';
258
283
  break;
259
284
  }
@@ -1 +1 @@
1
- {"version":3,"file":"clients.js","sourceRoot":"","sources":["../../../../src/tcgcadapter/clients.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"clients.js","sourceRoot":"","sources":["../../../../src/tcgcadapter/clients.ts"],"names":[],"mappings":"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"}
@@ -21,7 +21,6 @@ export declare class typeAdapter {
21
21
  private adaptBytesType;
22
22
  private getLiteralValue;
23
23
  }
24
- export declare function getEndpointType(param: tcgc.SdkEndpointParameter): tcgc.SdkEndpointType;
25
24
  export declare function isTypePassedByValue(type: tcgc.SdkType): boolean;
26
25
  export declare function adaptXMLInfo(decorators: Array<tcgc.DecoratorInfo>, field?: go.ModelField): go.XMLInfo | undefined;
27
26
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/tcgcadapter/types.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,IAAI,MAAM,6CAA6C,CAAC;AAGpE,OAAO,KAAK,EAAE,MAAM,oCAAoC,CAAC;AAKzD,qBAAa,WAAW;IAEtB,QAAQ,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC;IAGjC,OAAO,CAAC,KAAK,CAA2B;IACxC,OAAO,CAAC,WAAW,CAAgC;gBAEvC,SAAS,EAAE,EAAE,CAAC,SAAS;IAOnC,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU;IAyFtC,OAAO,CAAC,iBAAiB;IAkCzB,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,kBAAkB,EAAE,OAAO,EAAE,uBAAuB,EAAE,OAAO,GAAG,EAAE,CAAC,QAAQ;IAkG3G,OAAO,CAAC,WAAW;IAYnB,iBAAiB,CAAC,OAAO,EAAE,OAAO,GAAG,EAAE,CAAC,QAAQ;IAiBhD,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,EAAE,CAAC,QAAQ;IAgBlD,OAAO,CAAC,cAAc;IA6ItB,OAAO,CAAC,eAAe;IAiBvB,OAAO,CAAC,gBAAgB;IAoCxB,OAAO,CAAC,QAAQ;IAyEhB,OAAO,CAAC,uBAAuB;IAU/B,OAAO,CAAC,aAAa;IA8CrB,OAAO,CAAC,iBAAiB;IAmBzB,OAAO,CAAC,cAAc;IAetB,OAAO,CAAC,eAAe;CA2GxB;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,IAAI,CAAC,oBAAoB,wBAc/D;AA6DD,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,GAAG,OAAO,CAO/D;AA0CD,wBAAgB,YAAY,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,UAAU,GAAG,EAAE,CAAC,OAAO,GAAG,SAAS,CAwDjH"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/tcgcadapter/types.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,IAAI,MAAM,6CAA6C,CAAC;AAGpE,OAAO,KAAK,EAAE,MAAM,oCAAoC,CAAC;AAKzD,qBAAa,WAAW;IAEtB,QAAQ,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC;IAGjC,OAAO,CAAC,KAAK,CAA2B;IACxC,OAAO,CAAC,WAAW,CAAgC;gBAEvC,SAAS,EAAE,EAAE,CAAC,SAAS;IAOnC,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU;IA+EtC,OAAO,CAAC,iBAAiB;IAkCzB,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,kBAAkB,EAAE,OAAO,EAAE,uBAAuB,EAAE,OAAO,GAAG,EAAE,CAAC,QAAQ;IAkG3G,OAAO,CAAC,WAAW;IAYnB,iBAAiB,CAAC,OAAO,EAAE,OAAO,GAAG,EAAE,CAAC,QAAQ;IAiBhD,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,EAAE,CAAC,QAAQ;IAgBlD,OAAO,CAAC,cAAc;IA6ItB,OAAO,CAAC,eAAe;IAkBvB,OAAO,CAAC,gBAAgB;IAoCxB,OAAO,CAAC,QAAQ;IA2EhB,OAAO,CAAC,uBAAuB;IAU/B,OAAO,CAAC,aAAa;IAuCrB,OAAO,CAAC,iBAAiB;IAmBzB,OAAO,CAAC,cAAc;IAetB,OAAO,CAAC,eAAe;CA2GxB;AA6DD,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,GAAG,OAAO,CAO/D;AAgDD,wBAAgB,YAAY,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,UAAU,GAAG,EAAE,CAAC,OAAO,GAAG,SAAS,CAwDjH"}
@@ -83,18 +83,8 @@ export class typeAdapter {
83
83
  }
84
84
  // now adapt model fields
85
85
  for (const modelType of modelTypes) {
86
- const content = aggregateProperties(modelType.tcgc);
86
+ const content = aggregateProperties(sdkContext, modelType.tcgc);
87
87
  for (const prop of values(content.props)) {
88
- if (prop.kind === 'header') {
89
- // the common case here is the @header decorator specifying
90
- // the content-type for the model. we can just skip it.
91
- // TODO: follow up with tcgc to see if we can remove the entry.
92
- continue;
93
- }
94
- if (prop.kind === 'query') {
95
- // skip query params for now, wait for confirming visibility behavior
96
- continue;
97
- }
98
88
  const field = this.getModelField(prop, modelType.tcgc);
99
89
  modelType.go.fields.push(field);
100
90
  }
@@ -424,14 +414,15 @@ export class typeAdapter {
424
414
  if (constType) {
425
415
  return constType;
426
416
  }
427
- constType = new go.Constant(constTypeName, getPrimitiveType(enumType.valueType), `Possible${constTypeName}Values`);
417
+ const accessPrefix = enumType.access === 'internal' ? 'p' : 'P';
418
+ constType = new go.Constant(constTypeName, getPrimitiveType(enumType.valueType), `${accessPrefix}ossible${constTypeName}Values`);
428
419
  constType.values = this.getConstantValues(constType, enumType.values);
429
420
  constType.docs.summary = enumType.summary;
430
421
  constType.docs.description = enumType.doc;
431
422
  this.types.set(constTypeName, constType);
432
423
  return constType;
433
424
  }
434
- getInterfaceType(model, parent) {
425
+ getInterfaceType(model) {
435
426
  if (model.name.length === 0) {
436
427
  throw new AdapterError('InternalError', 'unnamed model', tsp.NoTarget);
437
428
  }
@@ -459,8 +450,8 @@ export class typeAdapter {
459
450
  throw new AdapterError('InternalError', `failed to find discriminator field for type ${model.name}`, tsp.NoTarget);
460
451
  }
461
452
  iface = new go.Interface(ifaceName, discriminatorField);
462
- if (parent) {
463
- iface.parent = parent;
453
+ if (model.baseModel && model.baseModel.discriminatedSubtypes) {
454
+ iface.parent = this.getInterfaceType(model.baseModel);
464
455
  }
465
456
  this.types.set(ifaceName, iface);
466
457
  return iface;
@@ -503,6 +494,8 @@ export class typeAdapter {
503
494
  if (!iface) {
504
495
  throw new AdapterError('InternalError', `failed to find discriminator interface name for type ${model.name}`, tsp.NoTarget);
505
496
  }
497
+ }
498
+ if (model.discriminatorValue) {
506
499
  // find the discriminator property and create the discriminator literal based on it
507
500
  for (const prop of model.properties) {
508
501
  if (prop.kind === 'property' && prop.discriminator) {
@@ -544,9 +537,6 @@ export class typeAdapter {
544
537
  }
545
538
  }
546
539
  getModelField(prop, modelType) {
547
- if (prop.kind !== 'path' && prop.kind !== 'property') {
548
- throw new AdapterError('UnsupportedTsp', `unsupported kind ${prop.kind} for property ${prop.name} in model ${modelType.name}`, prop.__raw?.node ?? tsp.NoTarget);
549
- }
550
540
  const annotations = new go.ModelFieldAnnotations(prop.optional === false, false, false, false);
551
541
  // for multipart/form data containing models, default to fields not being pointer-to-type as we
552
542
  // don't have to deal with JSON patch shenanigans. only the optional fields will be pointer-to-type.
@@ -572,13 +562,7 @@ export class typeAdapter {
572
562
  const field = new go.ModelField(naming.capitalize(naming.ensureNameCase(prop.name)), type, fieldByValue, prop.serializedName, annotations);
573
563
  field.docs.summary = prop.summary;
574
564
  field.docs.description = prop.doc;
575
- if (prop.kind === 'path') {
576
- // for ARM resources, a property of kind path is usually the model
577
- // key and will be exposed as a discrete method parameter. this also
578
- // means that the value is read-only.
579
- annotations.readOnly = true;
580
- }
581
- else if (prop.discriminator && modelType.discriminatorValue) {
565
+ if (prop.discriminator && modelType.discriminatorValue) {
582
566
  // the presence of modelType.discriminatorValue tells us that this
583
567
  // property is on a model that's not the root discriminator
584
568
  annotations.isDiscriminator = true;
@@ -725,22 +709,6 @@ export class typeAdapter {
725
709
  // TODO: tcgc doesn't support duration as a literal value
726
710
  }
727
711
  }
728
- export function getEndpointType(param) {
729
- // for multiple endpoint, currently we only generate the first one
730
- let endpointType;
731
- if (param.type.kind === 'endpoint') {
732
- endpointType = param.type;
733
- }
734
- else {
735
- endpointType = param.type.variantTypes[0];
736
- }
737
- // for endpoint with only a template argument with default value, we fall back to constant endpoint
738
- if (endpointType.templateArguments.length === 1 && endpointType.templateArguments[0].clientDefaultValue) {
739
- endpointType.serverUrl = endpointType.templateArguments[0].clientDefaultValue;
740
- endpointType.templateArguments = [];
741
- }
742
- return endpointType;
743
- }
744
712
  function getPrimitiveType(type) {
745
713
  switch (type.kind) {
746
714
  case 'boolean':
@@ -807,15 +775,21 @@ export function isTypePassedByValue(type) {
807
775
  }
808
776
  // aggregate the properties from the provided type and its parent types.
809
777
  // this includes any inherited additional properties.
810
- function aggregateProperties(model) {
778
+ function aggregateProperties(sdkContext, model) {
811
779
  const allProps = new Array();
812
780
  for (const prop of model.properties) {
781
+ if (tcgc.isHttpMetadata(sdkContext, prop)) {
782
+ continue;
783
+ }
813
784
  allProps.push(prop);
814
785
  }
815
786
  let addlProps = model.additionalProperties;
816
787
  let parent = model.baseModel;
817
788
  while (parent) {
818
789
  for (const parentProp of parent.properties) {
790
+ if (tcgc.isHttpMetadata(sdkContext, parentProp)) {
791
+ continue;
792
+ }
819
793
  const exists = values(allProps).where(p => { return p.name === parentProp.name; }).first();
820
794
  if (exists) {
821
795
  // don't add the duplicate. the TS compiler has better enforcement than OpenAPI