@azure-tools/typespec-autorest 0.42.0-dev.2 → 0.42.0-dev.3

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.
@@ -56,7 +56,7 @@ export function setRefProducer(program, entity, refProducer) {
56
56
  export function getRef(program, entity, params) {
57
57
  const refOrProducer = program.stateMap(refTargetsKey).get(entity);
58
58
  if (typeof refOrProducer === "function") {
59
- return refOrProducer(program, entity, params !== null && params !== void 0 ? params : {});
59
+ return refOrProducer(program, entity, params ?? {});
60
60
  }
61
61
  else {
62
62
  return refOrProducer;
@@ -1 +1 @@
1
- {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../src/decorators.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAE/D,MAAM,CAAC,MAAM,SAAS,GAAG,UAAU,CAAC;AAOpC,MAAM,UAAU,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAC;AAChD;;;;;;;GAOG;AACH,MAAM,UAAU,QAAQ,CACtB,OAAyB,EACzB,MAAY,EACZ,SAAiB,EACjB,KAAa;IAEb,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IAC5B,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC/C,CAAC;SAAM,IACL,OAAO;SACJ,QAAQ,CAAC,UAAU,CAAC;SACpB,GAAG,CAAC,MAAM,CAAC;SACX,IAAI,CAAC,CAAC,CAAU,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,IAAI,CAAC,CAAC,SAAS,KAAK,SAAS,CAAC,EACvE,CAAC;QACD,gBAAgB,CAAC,OAAO,EAAE;YACxB,IAAI,EAAE,mBAAmB;YACzB,MAAM,EAAE,MAAM;SACf,CAAC,CAAC;IACL,CAAC;IACD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC;QAC5C,SAAS;QACT,KAAK;KACN,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,OAAgB,EAAE,MAAY;IACxD,OAAO,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AAClD,CAAC;AAoBD,MAAM,aAAa,GAAG,iBAAiB,CAAC,cAAc,CAAC,CAAC;AACxD;;;;;;GAMG;AACH,MAAM,UAAU,OAAO,CAAC,OAAyB,EAAE,MAA6B,EAAE,OAAe;IAC/F,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAC/D,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,cAAc,CAC5B,OAAgB,EAChB,MAA6B,EAC7B,WAAwB;IAExB,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;AAC3D,CAAC;AAED,MAAM,UAAU,MAAM,CACpB,OAAgB,EAChB,MAAY,EACZ,MAA0B;IAE1B,MAAM,aAAa,GAAG,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAClE,IAAI,OAAO,aAAa,KAAK,UAAU,EAAE,CAAC;QACxC,OAAO,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,EAAE,CAAC,CAAC;IACtD,CAAC;SAAM,CAAC;QACN,OAAO,aAAa,CAAC;IACvB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../src/decorators.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAE/D,MAAM,CAAC,MAAM,SAAS,GAAG,UAAU,CAAC;AAOpC,MAAM,UAAU,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAC;AAChD;;;;;;;GAOG;AACH,MAAM,UAAU,QAAQ,CACtB,OAAyB,EACzB,MAAY,EACZ,SAAiB,EACjB,KAAa;IAEb,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IAC5B,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC/C,CAAC;SAAM,IACL,OAAO;SACJ,QAAQ,CAAC,UAAU,CAAC;SACpB,GAAG,CAAC,MAAM,CAAC;SACX,IAAI,CAAC,CAAC,CAAU,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,IAAI,CAAC,CAAC,SAAS,KAAK,SAAS,CAAC,EACvE,CAAC;QACD,gBAAgB,CAAC,OAAO,EAAE;YACxB,IAAI,EAAE,mBAAmB;YACzB,MAAM,EAAE,MAAM;SACf,CAAC,CAAC;IACL,CAAC;IACD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC;QAC5C,SAAS;QACT,KAAK;KACN,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,OAAgB,EAAE,MAAY;IACxD,OAAO,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AAClD,CAAC;AAoBD,MAAM,aAAa,GAAG,iBAAiB,CAAC,cAAc,CAAC,CAAC;AACxD;;;;;;GAMG;AACH,MAAM,UAAU,OAAO,CAAC,OAAyB,EAAE,MAA6B,EAAE,OAAe;IAC/F,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAC/D,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,cAAc,CAC5B,OAAgB,EAChB,MAA6B,EAC7B,WAAwB;IAExB,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;AAC3D,CAAC;AAED,MAAM,UAAU,MAAM,CACpB,OAAgB,EAChB,MAAY,EACZ,MAA0B;IAE1B,MAAM,aAAa,GAAG,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAClE,IAAI,OAAO,aAAa,KAAK,UAAU,EAAE,CAAC;QACxC,OAAO,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,IAAI,EAAE,CAAC,CAAC;IACtD,CAAC;SAAM,CAAC;QACN,OAAO,aAAa,CAAC;IACvB,CAAC;AACH,CAAC"}
@@ -1,15 +1,3 @@
1
- var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
2
- if (kind === "m") throw new TypeError("Private method is not writable");
3
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
4
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
5
- return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
6
- };
7
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
8
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
9
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
10
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
11
- };
12
- var _JsonSchemaReader_doc, _JsonSchemaReader_defs;
13
1
  export function sortWithJsonSchema(value, jsonSchema, ref) {
14
2
  const schema = ref ? resolveJsonRef(ref, jsonSchema) : jsonSchema;
15
3
  return internalSort(value, schema, new JsonSchemaReader(jsonSchema));
@@ -20,13 +8,13 @@ function internalSort(value, relativeSchema, reader) {
20
8
  }
21
9
  const resolvedRelativeSchema = relativeSchema && resolveSchema(relativeSchema, reader);
22
10
  if (Array.isArray(value)) {
23
- const itemsSchema = (resolvedRelativeSchema === null || resolvedRelativeSchema === void 0 ? void 0 : resolvedRelativeSchema.type) === "array" ? resolvedRelativeSchema.items : undefined;
11
+ const itemsSchema = resolvedRelativeSchema?.type === "array" ? resolvedRelativeSchema.items : undefined;
24
12
  return value.map((x) => internalSort(x, itemsSchema, reader));
25
13
  }
26
14
  const objectSchema = resolvedRelativeSchema;
27
- const properties = (objectSchema === null || objectSchema === void 0 ? void 0 : objectSchema.properties) && Object.keys(objectSchema.properties);
15
+ const properties = objectSchema?.properties && Object.keys(objectSchema.properties);
28
16
  const keys = Object.keys(value);
29
- const ordering = objectSchema === null || objectSchema === void 0 ? void 0 : objectSchema["x-ordering"];
17
+ const ordering = objectSchema?.["x-ordering"];
30
18
  if (ordering === "url") {
31
19
  keys.sort(compareUrl);
32
20
  }
@@ -49,9 +37,10 @@ function internalSort(value, relativeSchema, reader) {
49
37
  });
50
38
  }
51
39
  return keys.reduce((o, key) => {
52
- var _a, _b, _c;
53
40
  const v = value[key];
54
- const propertySchema = (_c = (_b = (_a = objectSchema === null || objectSchema === void 0 ? void 0 : objectSchema.properties) === null || _a === void 0 ? void 0 : _a[key]) !== null && _b !== void 0 ? _b : resolvePatternProperties(key, objectSchema === null || objectSchema === void 0 ? void 0 : objectSchema.patternProperties)) !== null && _c !== void 0 ? _c : resolveAdditionalProperties(objectSchema === null || objectSchema === void 0 ? void 0 : objectSchema.additionalProperties);
41
+ const propertySchema = objectSchema?.properties?.[key] ??
42
+ resolvePatternProperties(key, objectSchema?.patternProperties) ??
43
+ resolveAdditionalProperties(objectSchema?.additionalProperties);
55
44
  if (propertySchema !== undefined) {
56
45
  o[key] = internalSort(v, propertySchema, reader);
57
46
  }
@@ -141,24 +130,24 @@ function resolveAdditionalProperties(additionalProperties) {
141
130
  return additionalProperties;
142
131
  }
143
132
  class JsonSchemaReader {
133
+ #doc;
134
+ #defs = new Map();
144
135
  constructor(doc) {
145
- _JsonSchemaReader_doc.set(this, void 0);
146
- _JsonSchemaReader_defs.set(this, new Map());
147
- __classPrivateFieldSet(this, _JsonSchemaReader_doc, doc, "f");
136
+ this.#doc = doc;
148
137
  if (doc.$defs) {
149
138
  for (const value of Object.values(doc.$defs)) {
150
139
  if ("$id" in value && value.$id) {
151
- __classPrivateFieldGet(this, _JsonSchemaReader_defs, "f").set(value.$id, value);
140
+ this.#defs.set(value.$id, value);
152
141
  }
153
142
  }
154
143
  }
155
144
  }
156
145
  resolveRef(ref) {
157
146
  if (ref.includes("#")) {
158
- return resolveJsonRef(ref, __classPrivateFieldGet(this, _JsonSchemaReader_doc, "f"));
147
+ return resolveJsonRef(ref, this.#doc);
159
148
  }
160
149
  else {
161
- const schema = __classPrivateFieldGet(this, _JsonSchemaReader_defs, "f").get(ref);
150
+ const schema = this.#defs.get(ref);
162
151
  if (schema === undefined) {
163
152
  throw new Error(`JsonSchemaSorter: Cannot find schema with $id ${ref}`);
164
153
  }
@@ -171,5 +160,4 @@ class JsonSchemaReader {
171
160
  }
172
161
  }
173
162
  }
174
- _JsonSchemaReader_doc = new WeakMap(), _JsonSchemaReader_defs = new WeakMap();
175
163
  //# sourceMappingURL=sorter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sorter.js","sourceRoot":"","sources":["../../../src/json-schema-sorter/sorter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sorter.js","sourceRoot":"","sources":["../../../src/json-schema-sorter/sorter.ts"],"names":[],"mappings":"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"}
@@ -15,10 +15,9 @@ const defaultOptions = {
15
15
  "include-x-typespec-name": "never",
16
16
  };
17
17
  export async function $onEmit(context) {
18
- var _a;
19
18
  const resolvedOptions = { ...defaultOptions, ...context.options };
20
19
  const tcgcSdkContext = createSdkContext(context, "@azure-tools/typespec-autorest");
21
- const armTypesDir = interpolatePath((_a = resolvedOptions["arm-types-dir"]) !== null && _a !== void 0 ? _a : "{project-root}/../../common-types/resource-management", {
20
+ const armTypesDir = interpolatePath(resolvedOptions["arm-types-dir"] ?? "{project-root}/../../common-types/resource-management", {
22
21
  "project-root": context.program.projectRoot,
23
22
  "emitter-output-dir": context.emitterOutputDir,
24
23
  });
@@ -46,6 +45,7 @@ function getEmitterDetails(program) {
46
45
  * referenced.
47
46
  */
48
47
  class Ref {
48
+ value;
49
49
  toJSON() {
50
50
  compilerAssert(this.value, "Reference value never set.");
51
51
  return this.value;
@@ -121,7 +121,6 @@ function createOAPIEmitter(program, tcgcSdkContext, options) {
121
121
  }
122
122
  return { emitOpenAPI };
123
123
  function initializeEmitter(service, multipleService, version) {
124
- var _a, _b;
125
124
  const auth = processAuth(service.type);
126
125
  const info = resolveInfo(program, service.type);
127
126
  root = {
@@ -129,7 +128,7 @@ function createOAPIEmitter(program, tcgcSdkContext, options) {
129
128
  info: {
130
129
  title: "(title)",
131
130
  ...info,
132
- version: (_a = version !== null && version !== void 0 ? version : info === null || info === void 0 ? void 0 : info.version) !== null && _a !== void 0 ? _a : "0000-00-00",
131
+ version: version ?? info?.version ?? "0000-00-00",
133
132
  "x-typespec-generated": getEmitterDetails(program),
134
133
  },
135
134
  schemes: ["https"],
@@ -137,8 +136,8 @@ function createOAPIEmitter(program, tcgcSdkContext, options) {
137
136
  externalDocs: getExternalDocs(program, service.type),
138
137
  produces: [], // Pre-initialize produces and consumes so that
139
138
  consumes: [], // they show up at the top of the document
140
- security: auth === null || auth === void 0 ? void 0 : auth.security,
141
- securityDefinitions: (_b = auth === null || auth === void 0 ? void 0 : auth.securitySchemes) !== null && _b !== void 0 ? _b : {},
139
+ security: auth?.security,
140
+ securityDefinitions: auth?.securitySchemes ?? {},
142
141
  tags: [],
143
142
  paths: {},
144
143
  "x-ms-paths": {},
@@ -160,7 +159,6 @@ function createOAPIEmitter(program, tcgcSdkContext, options) {
160
159
  outputFile = resolveOutputFile(program, service, multipleService, options, version);
161
160
  }
162
161
  function resolveHost(program, namespace) {
163
- var _a;
164
162
  const servers = getServers(program, namespace);
165
163
  if (servers === undefined) {
166
164
  return {};
@@ -196,7 +194,7 @@ function createOAPIEmitter(program, tcgcSdkContext, options) {
196
194
  for (const prop of server.parameters.values()) {
197
195
  const param = getOpenAPI2Parameter(prop, "path", Visibility.Read);
198
196
  if (prop.type.kind === "Scalar" &&
199
- ignoreDiagnostics(program.checker.isTypeAssignableTo((_a = prop.type.projectionBase) !== null && _a !== void 0 ? _a : prop.type, program.checker.getStdType("url"), prop.type))) {
197
+ ignoreDiagnostics(program.checker.isTypeAssignableTo(prop.type.projectionBase ?? prop.type, program.checker.getStdType("url"), prop.type))) {
200
198
  param["x-ms-skip-url-encoding"] = true;
201
199
  }
202
200
  parameters.push(param);
@@ -335,8 +333,7 @@ function createOAPIEmitter(program, tcgcSdkContext, options) {
335
333
  }
336
334
  }
337
335
  function requiresXMsPaths(path, operation) {
338
- var _a;
339
- const isShared = (_a = isSharedRoute(program, operation)) !== null && _a !== void 0 ? _a : false;
336
+ const isShared = isSharedRoute(program, operation) ?? false;
340
337
  if (path.includes("?")) {
341
338
  return true;
342
339
  }
@@ -347,11 +344,10 @@ function createOAPIEmitter(program, tcgcSdkContext, options) {
347
344
  return path.replace(/\/?\?.*/, "");
348
345
  }
349
346
  function emitOperation(operation) {
350
- var _a, _b;
351
347
  let { path: fullPath, operation: op, verb, parameters } = operation;
352
348
  let pathsObject = root.paths;
353
349
  const pathWithoutAnyQuery = getPathWithoutQuery(fullPath);
354
- if (((_a = root.paths[pathWithoutAnyQuery]) === null || _a === void 0 ? void 0 : _a[verb]) === undefined) {
350
+ if (root.paths[pathWithoutAnyQuery]?.[verb] === undefined) {
355
351
  fullPath = pathWithoutAnyQuery;
356
352
  pathsObject = root.paths;
357
353
  }
@@ -359,7 +355,7 @@ function createOAPIEmitter(program, tcgcSdkContext, options) {
359
355
  // if the key already exists in x-ms-paths, append
360
356
  // the operation id.
361
357
  if (fullPath.includes("?")) {
362
- if (((_b = root["x-ms-paths"]) === null || _b === void 0 ? void 0 : _b[fullPath]) !== undefined) {
358
+ if (root["x-ms-paths"]?.[fullPath] !== undefined) {
363
359
  fullPath += `&_overload=${operation.operation.name}`;
364
360
  }
365
361
  }
@@ -453,8 +449,7 @@ function createOAPIEmitter(program, tcgcSdkContext, options) {
453
449
  return true;
454
450
  }
455
451
  function isBytes(type) {
456
- var _a;
457
- const baseType = (_a = type.projectionBase) !== null && _a !== void 0 ? _a : type;
452
+ const baseType = type.projectionBase ?? type;
458
453
  return ignoreDiagnostics(program.checker.isTypeAssignableTo(baseType, program.checker.getStdType("bytes"), type));
459
454
  }
460
455
  function isBinaryPayload(body, contentType) {
@@ -519,16 +514,14 @@ function createOAPIEmitter(program, tcgcSdkContext, options) {
519
514
  return codes;
520
515
  }
521
516
  function getResponseDescriptionForStatusCode(statusCode) {
522
- var _a;
523
517
  if (statusCode === "default") {
524
518
  return "An unexpected error response.";
525
519
  }
526
- return (_a = getStatusCodeDescription(statusCode)) !== null && _a !== void 0 ? _a : "unknown";
520
+ return getStatusCodeDescription(statusCode) ?? "unknown";
527
521
  }
528
522
  function emitResponseObject(statusCode, response) {
529
- var _a, _b, _c;
530
- const openapiResponse = (_a = currentEndpoint.responses[statusCode]) !== null && _a !== void 0 ? _a : {
531
- description: (_b = response.description) !== null && _b !== void 0 ? _b : getResponseDescriptionForStatusCode(statusCode),
523
+ const openapiResponse = currentEndpoint.responses[statusCode] ?? {
524
+ description: response.description ?? getResponseDescriptionForStatusCode(statusCode),
532
525
  };
533
526
  if (isErrorModel(program, response.type) && statusCode !== "default") {
534
527
  openapiResponse["x-ms-error-response"] = true;
@@ -537,7 +530,7 @@ function createOAPIEmitter(program, tcgcSdkContext, options) {
537
530
  let body;
538
531
  for (const data of response.responses) {
539
532
  if (data.headers && Object.keys(data.headers).length > 0) {
540
- (_c = openapiResponse.headers) !== null && _c !== void 0 ? _c : (openapiResponse.headers = {});
533
+ openapiResponse.headers ??= {};
541
534
  for (const [key, value] of Object.entries(data.headers)) {
542
535
  openapiResponse.headers[key] = getResponseHeader(value);
543
536
  }
@@ -580,7 +573,6 @@ function createOAPIEmitter(program, tcgcSdkContext, options) {
580
573
  return getRelativePathFromDirectory(getDirectoryPath(outputFile), absoluteRef, false);
581
574
  }
582
575
  function getSchemaOrRef(type, visibility) {
583
- var _a;
584
576
  const refUrl = getRef(program, type, { version: context.version, service: context.service });
585
577
  if (refUrl) {
586
578
  return {
@@ -606,7 +598,7 @@ function createOAPIEmitter(program, tcgcSdkContext, options) {
606
598
  return { type: "number", enum: [type.value] };
607
599
  }
608
600
  else {
609
- return { type: "string", enum: [(_a = type.value) !== null && _a !== void 0 ? _a : type.name] };
601
+ return { type: "string", enum: [type.value ?? type.name] };
610
602
  }
611
603
  }
612
604
  if (type.kind === "ModelProperty") {
@@ -691,17 +683,15 @@ function createOAPIEmitter(program, tcgcSdkContext, options) {
691
683
  const encodedName = resolveEncodedName(program, type, "application/json");
692
684
  // Pick the value set via `encodedName` or default back to the legacy projection otherwise.
693
685
  // `resolveEncodedName` will return the original name if no @encodedName so we have to do that check
694
- return encodedName === type.name ? viaProjection !== null && viaProjection !== void 0 ? viaProjection : type.name : encodedName;
686
+ return encodedName === type.name ? viaProjection ?? type.name : encodedName;
695
687
  }
696
688
  function getClientName(type) {
697
- var _a;
698
689
  const viaProjection = getProjectedName(program, type, "client");
699
690
  const clientName = getClientNameOverride(tcgcSdkContext, type);
700
- return (_a = clientName !== null && clientName !== void 0 ? clientName : viaProjection) !== null && _a !== void 0 ? _a : type.name;
691
+ return clientName ?? viaProjection ?? type.name;
701
692
  }
702
693
  function emitEndpointParameters(methodParams, visibility) {
703
- var _a, _b;
704
- const consumes = (_b = (_a = methodParams.body) === null || _a === void 0 ? void 0 : _a.contentTypes) !== null && _b !== void 0 ? _b : [];
694
+ const consumes = methodParams.body?.contentTypes ?? [];
705
695
  for (const httpOpParam of methodParams.parameters) {
706
696
  const shared = params.get(httpOpParam.param);
707
697
  if (shared) {
@@ -819,9 +809,8 @@ function createOAPIEmitter(program, tcgcSdkContext, options) {
819
809
  }
820
810
  }
821
811
  function getOpenAPI2Parameter(param, kind, visibility, name, bodySchema) {
822
- var _a;
823
812
  const ph = {
824
- name: name !== null && name !== void 0 ? name : param.name,
813
+ name: name ?? param.name,
825
814
  in: kind,
826
815
  required: !param.optional,
827
816
  description: getDoc(program, param),
@@ -840,11 +829,11 @@ function createOAPIEmitter(program, tcgcSdkContext, options) {
840
829
  Object.assign(ph, getFormDataSchema(param.type, visibility, ph.name));
841
830
  }
842
831
  else {
843
- const collectionFormat = (_a = (kind === "query"
832
+ const collectionFormat = (kind === "query"
844
833
  ? getQueryParamOptions(program, param)
845
834
  : kind === "header"
846
835
  ? getHeaderFieldOptions(program, param)
847
- : undefined)) === null || _a === void 0 ? void 0 : _a.format;
836
+ : undefined)?.format;
848
837
  if (collectionFormat === "multi" && !["query", "header", "formData"].includes(ph.in)) {
849
838
  reportDiagnostic(program, { code: "invalid-multi-collection-format", target: param });
850
839
  }
@@ -950,7 +939,6 @@ function createOAPIEmitter(program, tcgcSdkContext, options) {
950
939
  }
951
940
  }
952
941
  async function loadExamples(version) {
953
- var _a;
954
942
  if (options.examplesDirectory) {
955
943
  const exampleDir = version
956
944
  ? resolvePath(options.examplesDirectory, version)
@@ -1003,7 +991,7 @@ function createOAPIEmitter(program, tcgcSdkContext, options) {
1003
991
  reportDiagnostic(program, {
1004
992
  code: "example-loading",
1005
993
  messageId: "default",
1006
- format: { filename: fileName, error: (_a = err === null || err === void 0 ? void 0 : err.toString()) !== null && _a !== void 0 ? _a : "" },
994
+ format: { filename: fileName, error: err?.toString() ?? "" },
1007
995
  target: NoTarget,
1008
996
  });
1009
997
  }
@@ -1053,7 +1041,6 @@ function createOAPIEmitter(program, tcgcSdkContext, options) {
1053
1041
  return {};
1054
1042
  }
1055
1043
  function getSchemaForEnum(e) {
1056
- var _a;
1057
1044
  const values = [];
1058
1045
  if (e.members.size === 0) {
1059
1046
  reportUnsupportedUnion("empty");
@@ -1066,7 +1053,7 @@ function createOAPIEmitter(program, tcgcSdkContext, options) {
1066
1053
  continue;
1067
1054
  }
1068
1055
  else {
1069
- values.push((_a = option.value) !== null && _a !== void 0 ? _a : option.name);
1056
+ values.push(option.value ?? option.name);
1070
1057
  }
1071
1058
  }
1072
1059
  const schema = { type, description: getDoc(program, e) };
@@ -1166,8 +1153,7 @@ function createOAPIEmitter(program, tcgcSdkContext, options) {
1166
1153
  }
1167
1154
  }
1168
1155
  function ifArrayItemContainsIdentifier(program, array) {
1169
- var _a;
1170
- if (((_a = array.indexer.value) === null || _a === void 0 ? void 0 : _a.kind) !== "Model") {
1156
+ if (array.indexer.value?.kind !== "Model") {
1171
1157
  return true;
1172
1158
  }
1173
1159
  return (getExtensions(program, array).has("x-ms-identifiers") ||
@@ -1177,7 +1163,6 @@ function createOAPIEmitter(program, tcgcSdkContext, options) {
1177
1163
  return getSchemaForType(variant.type, visibility);
1178
1164
  }
1179
1165
  function getDefaultValue(type) {
1180
- var _a;
1181
1166
  switch (type.kind) {
1182
1167
  case "String":
1183
1168
  return type.value;
@@ -1188,7 +1173,7 @@ function createOAPIEmitter(program, tcgcSdkContext, options) {
1188
1173
  case "Tuple":
1189
1174
  return type.values.map(getDefaultValue);
1190
1175
  case "EnumMember":
1191
- return (_a = type.value) !== null && _a !== void 0 ? _a : type.name;
1176
+ return type.value ?? type.name;
1192
1177
  case "Intrinsic":
1193
1178
  return isNullType(type)
1194
1179
  ? null
@@ -1208,10 +1193,9 @@ function createOAPIEmitter(program, tcgcSdkContext, options) {
1208
1193
  }
1209
1194
  }
1210
1195
  function includeDerivedModel(model) {
1211
- var _a, _b;
1212
1196
  return (!isTemplateDeclaration(model) &&
1213
- (((_a = model.templateMapper) === null || _a === void 0 ? void 0 : _a.args) === undefined ||
1214
- ((_b = model.templateMapper) === null || _b === void 0 ? void 0 : _b.args.length) === 0 ||
1197
+ (model.templateMapper?.args === undefined ||
1198
+ model.templateMapper?.args.length === 0 ||
1215
1199
  model.derivedModels.length > 0));
1216
1200
  }
1217
1201
  function getDiscriminatorValue(model) {
@@ -1295,7 +1279,7 @@ function createOAPIEmitter(program, tcgcSdkContext, options) {
1295
1279
  continue;
1296
1280
  }
1297
1281
  }
1298
- if (!metadataInfo.isOptional(prop, visibility) || prop.name === (discriminator === null || discriminator === void 0 ? void 0 : discriminator.propertyName)) {
1282
+ if (!metadataInfo.isOptional(prop, visibility) || prop.name === discriminator?.propertyName) {
1299
1283
  if (!modelSchema.required) {
1300
1284
  modelSchema.required = [];
1301
1285
  }
@@ -1412,14 +1396,13 @@ function createOAPIEmitter(program, tcgcSdkContext, options) {
1412
1396
  }
1413
1397
  // Return any string literal values for type
1414
1398
  function getStringValues(type) {
1415
- var _a;
1416
1399
  switch (type.kind) {
1417
1400
  case "String":
1418
1401
  return [type.value];
1419
1402
  case "Union":
1420
1403
  return [...type.variants.values()].flatMap((x) => getStringValues(x.type)).filter((x) => x);
1421
1404
  case "EnumMember":
1422
- return typeof type.value !== "number" ? [(_a = type.value) !== null && _a !== void 0 ? _a : type.name] : [];
1405
+ return typeof type.value !== "number" ? [type.value ?? type.name] : [];
1423
1406
  case "UnionVariant":
1424
1407
  return getStringValues(type.type);
1425
1408
  default:
@@ -1532,7 +1515,7 @@ function createOAPIEmitter(program, tcgcSdkContext, options) {
1532
1515
  function mergeFormatAndEncoding(format, encoding, encodeAsFormat) {
1533
1516
  switch (format) {
1534
1517
  case undefined:
1535
- return encodeAsFormat !== null && encodeAsFormat !== void 0 ? encodeAsFormat : encoding;
1518
+ return encodeAsFormat ?? encoding;
1536
1519
  case "date-time":
1537
1520
  switch (encoding) {
1538
1521
  case "rfc3339":
@@ -1549,10 +1532,10 @@ function createOAPIEmitter(program, tcgcSdkContext, options) {
1549
1532
  case "ISO8601":
1550
1533
  return "duration";
1551
1534
  default:
1552
- return encodeAsFormat !== null && encodeAsFormat !== void 0 ? encodeAsFormat : encoding;
1535
+ return encodeAsFormat ?? encoding;
1553
1536
  }
1554
1537
  default:
1555
- return encodeAsFormat !== null && encodeAsFormat !== void 0 ? encodeAsFormat : encoding;
1538
+ return encodeAsFormat ?? encoding;
1556
1539
  }
1557
1540
  }
1558
1541
  function applyExternalDocs(typespecType, target) {
@@ -1562,7 +1545,6 @@ function createOAPIEmitter(program, tcgcSdkContext, options) {
1562
1545
  }
1563
1546
  }
1564
1547
  function addXMSEnum(type, schema) {
1565
- var _a;
1566
1548
  if (type.node && type.node.parent && type.node.parent.kind === SyntaxKind.ModelStatement) {
1567
1549
  schema["x-ms-enum"] = {
1568
1550
  name: type.node.parent.id.sv,
@@ -1585,7 +1567,7 @@ function createOAPIEmitter(program, tcgcSdkContext, options) {
1585
1567
  const description = getDoc(program, member);
1586
1568
  values.push({
1587
1569
  name: member.name,
1588
- value: (_a = member.value) !== null && _a !== void 0 ? _a : member.name,
1570
+ value: member.value ?? member.name,
1589
1571
  description,
1590
1572
  });
1591
1573
  if (description || member.value !== undefined) {
@@ -1775,7 +1757,7 @@ function createOAPIEmitter(program, tcgcSdkContext, options) {
1775
1757
  flow: oaiFlowName,
1776
1758
  authorizationUrl: flow.authorizationUrl,
1777
1759
  tokenUrl: flow.tokenUrl,
1778
- scopes: Object.fromEntries(flow.scopes.map((x) => { var _a; return [x.value, (_a = x.description) !== null && _a !== void 0 ? _a : ""]; })),
1760
+ scopes: Object.fromEntries(flow.scopes.map((x) => [x.value, x.description ?? ""])),
1779
1761
  },
1780
1762
  flow.scopes.map((x) => x.value),
1781
1763
  ];
@@ -1820,11 +1802,10 @@ export function sortOpenAPIDocument(doc) {
1820
1802
  return sorted;
1821
1803
  }
1822
1804
  function resolveOutputFile(program, service, multipleServices, options, version) {
1823
- var _a;
1824
1805
  const azureResourceProviderFolder = options.azureResourceProviderFolder;
1825
1806
  if (azureResourceProviderFolder) {
1826
1807
  const info = resolveInfo(program, service.type);
1827
- version = (_a = version !== null && version !== void 0 ? version : info === null || info === void 0 ? void 0 : info.version) !== null && _a !== void 0 ? _a : "0000-00-00";
1808
+ version = version ?? info?.version ?? "0000-00-00";
1828
1809
  }
1829
1810
  const interpolated = interpolatePath(options.outputFile, {
1830
1811
  "azure-resource-provider-folder": azureResourceProviderFolder,
@@ -1832,7 +1813,7 @@ function resolveOutputFile(program, service, multipleServices, options, version)
1832
1813
  ? getNamespaceFullName(service.type)
1833
1814
  : undefined,
1834
1815
  "version-status": azureResourceProviderFolder
1835
- ? (version === null || version === void 0 ? void 0 : version.includes("preview"))
1816
+ ? version?.includes("preview")
1836
1817
  ? "preview"
1837
1818
  : "stable"
1838
1819
  : undefined,
@@ -1 +1 @@
1
- {"version":3,"file":"openapi.js","sourceRoot":"","sources":["../../src/openapi.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openapi.js","sourceRoot":"","sources":["../../src/openapi.ts"],"names":[],"mappings":"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"}
package/dist/src/utils.js CHANGED
@@ -68,7 +68,7 @@ export function isReadonlyProperty(program, property) {
68
68
  const visibility = getVisibility(program, property);
69
69
  // note: multiple visibilities that include read are not handled using
70
70
  // readonly: true, but using separate schemas.
71
- return (visibility === null || visibility === void 0 ? void 0 : visibility.length) === 1 && visibility[0] === "read";
71
+ return visibility?.length === 1 && visibility[0] === "read";
72
72
  }
73
73
  function pascalCaseForOperationId(name) {
74
74
  return name
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,eAAe,EACf,aAAa,EACb,iBAAiB,EACjB,SAAS,EACT,kBAAkB,GACnB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AASzC;;;;;;;;;;GAUG;AACH,MAAM,UAAU,YAAY,CAAC,OAAgB,EAAE,IAAU;IACvD,IAAI,eAAe,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC;QACnC,OAAO,KAAK,CAAC;IACf,CAAC;IACD,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,KAAK,OAAO;YACV,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAChD,KAAK,QAAQ;YACX,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,kBAAkB,CAAC,IAAI,CAAC,CAAC;QACrE,KAAK,MAAM,CAAC;QACZ,KAAK,OAAO;YACV,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;QACpB;YACE,OAAO,IAAI,CAAC;IAChB,CAAC;AACH,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAA+B,EAAE,SAAoB;IACtF,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC;IAC3C,MAAM,mBAAmB,GAAG,cAAc,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAC/D,IAAI,mBAAmB,EAAE,CAAC;QACxB,OAAO,mBAAmB,CAAC;IAC7B,CAAC;IAED,MAAM,aAAa,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;IAC/C,IAAI,SAAS,CAAC,SAAS,EAAE,CAAC;QACxB,OAAO,wBAAwB,CAAC,GAAG,aAAa,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,aAAa,EAAE,CAAC,CAAC;IAC5F,CAAC;IACD,MAAM,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC;IACtC,IACE,SAAS,KAAK,SAAS;QACvB,iBAAiB,CAAC,OAAO,EAAE,SAAS,CAAC;QACrC,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC,EAC7B,CAAC;QACD,OAAO,UAAU,CAAC,aAAa,CAAC,CAAC;IACnC,CAAC;IAED,OAAO,wBAAwB,CAAC,GAAG,SAAS,CAAC,IAAI,IAAI,aAAa,EAAE,CAAC,CAAC;AACxE,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAgB,EAAE,QAAuB;IAC1E,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IACpD,sEAAsE;IACtE,8CAA8C;IAC9C,OAAO,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,MAAM,MAAK,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC;AAC9D,CAAC;AAED,SAAS,wBAAwB,CAAC,IAAY;IAC5C,OAAO,IAAI;SACR,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;SACzB,IAAI,CAAC,GAAG,CAAC,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,eAAe,EACf,aAAa,EACb,iBAAiB,EACjB,SAAS,EACT,kBAAkB,GACnB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AASzC;;;;;;;;;;GAUG;AACH,MAAM,UAAU,YAAY,CAAC,OAAgB,EAAE,IAAU;IACvD,IAAI,eAAe,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC;QACnC,OAAO,KAAK,CAAC;IACf,CAAC;IACD,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,KAAK,OAAO;YACV,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAChD,KAAK,QAAQ;YACX,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,kBAAkB,CAAC,IAAI,CAAC,CAAC;QACrE,KAAK,MAAM,CAAC;QACZ,KAAK,OAAO;YACV,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;QACpB;YACE,OAAO,IAAI,CAAC;IAChB,CAAC;AACH,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAA+B,EAAE,SAAoB;IACtF,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC;IAC3C,MAAM,mBAAmB,GAAG,cAAc,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAC/D,IAAI,mBAAmB,EAAE,CAAC;QACxB,OAAO,mBAAmB,CAAC;IAC7B,CAAC;IAED,MAAM,aAAa,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;IAC/C,IAAI,SAAS,CAAC,SAAS,EAAE,CAAC;QACxB,OAAO,wBAAwB,CAAC,GAAG,aAAa,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,aAAa,EAAE,CAAC,CAAC;IAC5F,CAAC;IACD,MAAM,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC;IACtC,IACE,SAAS,KAAK,SAAS;QACvB,iBAAiB,CAAC,OAAO,EAAE,SAAS,CAAC;QACrC,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC,EAC7B,CAAC;QACD,OAAO,UAAU,CAAC,aAAa,CAAC,CAAC;IACnC,CAAC;IAED,OAAO,wBAAwB,CAAC,GAAG,SAAS,CAAC,IAAI,IAAI,aAAa,EAAE,CAAC,CAAC;AACxE,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAgB,EAAE,QAAuB;IAC1E,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IACpD,sEAAsE;IACtE,8CAA8C;IAC9C,OAAO,UAAU,EAAE,MAAM,KAAK,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC;AAC9D,CAAC;AAED,SAAS,wBAAwB,CAAC,IAAY;IAC5C,OAAO,IAAI;SACR,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;SACzB,IAAI,CAAC,GAAG,CAAC,CAAC;AACf,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@azure-tools/typespec-autorest",
3
- "version": "0.42.0-dev.2",
3
+ "version": "0.42.0-dev.3",
4
4
  "author": "Microsoft Corporation",
5
5
  "description": "TypeSpec library for emitting openapi from the TypeSpec REST protocol binding",
6
6
  "homepage": "https://azure.github.io/typespec-azure",
@@ -41,7 +41,7 @@
41
41
  ],
42
42
  "peerDependencies": {
43
43
  "@azure-tools/typespec-azure-core": "~0.41.0 || >=0.42.0-dev <0.42.0",
44
- "@azure-tools/typespec-client-generator-core": "~0.41.0 || >=0.42.0-dev <0.42.0",
44
+ "@azure-tools/typespec-client-generator-core": "~0.41.2 || >=0.42.0-dev <0.42.0",
45
45
  "@typespec/compiler": "~0.55.0 || >=0.56.0-dev <0.56.0",
46
46
  "@typespec/http": "~0.55.0 || >=0.56.0-dev <0.56.0",
47
47
  "@typespec/openapi": "~0.55.0 || >=0.56.0-dev <0.56.0",
@@ -50,25 +50,22 @@
50
50
  },
51
51
  "devDependencies": {
52
52
  "@azure-tools/typespec-azure-core": "~0.41.0 || >=0.42.0-dev <0.42.0",
53
- "@azure-tools/typespec-client-generator-core": "~0.41.0 || >=0.42.0-dev <0.42.0",
53
+ "@azure-tools/typespec-client-generator-core": "~0.41.2 || >=0.42.0-dev <0.42.0",
54
54
  "@types/node": "~18.11.19",
55
55
  "@typespec/compiler": "~0.55.0 || >=0.56.0-dev <0.56.0",
56
- "@typespec/eslint-config-typespec": "~0.55.0 || >=0.56.0-dev <0.56.0",
57
- "@typespec/eslint-plugin": "~0.55.0 || >=0.56.0-dev <0.56.0",
58
56
  "@typespec/http": "~0.55.0 || >=0.56.0-dev <0.56.0",
59
57
  "@typespec/json-schema": "~0.55.0 || >=0.56.0-dev <0.56.0",
60
58
  "@typespec/library-linter": "~0.55.0 || >=0.56.0-dev <0.56.0",
61
59
  "@typespec/openapi": "~0.55.0 || >=0.56.0-dev <0.56.0",
62
60
  "@typespec/rest": "~0.55.0 || >=0.56.0-dev <0.56.0",
63
61
  "@typespec/versioning": "~0.55.0 || >=0.56.0-dev <0.56.0",
64
- "@vitest/coverage-v8": "^1.4.0",
65
- "@vitest/ui": "^1.4.0",
62
+ "@vitest/coverage-v8": "^1.5.0",
63
+ "@vitest/ui": "^1.5.0",
66
64
  "c8": "^9.1.0",
67
- "change-case": "~5.4.3",
68
- "eslint": "^8.57.0",
65
+ "change-case": "~5.4.4",
69
66
  "rimraf": "~5.0.5",
70
- "typescript": "~5.4.3",
71
- "vitest": "^1.4.0",
67
+ "typescript": "~5.4.5",
68
+ "vitest": "^1.5.0",
72
69
  "@typespec/tspd": "~0.46.0"
73
70
  },
74
71
  "dependencies": {},
@@ -82,8 +79,8 @@
82
79
  "test:watch": "vitest -w",
83
80
  "test:ui": "vitest --ui",
84
81
  "test:ci": "vitest run --coverage --reporter=junit --reporter=default",
85
- "lint": "eslint . --ext .ts --max-warnings=0",
86
- "lint:fix": "eslint . --fix --ext .ts",
82
+ "lint": "eslint . --max-warnings=0",
83
+ "lint:fix": "eslint . --fix ",
87
84
  "regen-docs": "tspd doc . --enable-experimental --output-dir ../../docs/emitters/typespec-autorest/reference"
88
85
  }
89
86
  }