@azure-tools/typespec-autorest 0.64.0-dev.2 → 0.64.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.
package/README.md CHANGED
@@ -163,6 +163,12 @@ Determine whether and how to emit schemas for common-types rather than referenci
163
163
 
164
164
  Strategy for applying XML serialization metadata to schemas.
165
165
 
166
+ ### `output-splitting`
167
+
168
+ **Type:** `"legacy-feature-files"`
169
+
170
+ Determines whether output should be split into multiple files. The only supported option for splitting is "legacy-feature-files", which uses the typespec-azure-resource-manager `@feature` decorators to split into output files based on feature.
171
+
166
172
  ## Decorators
167
173
 
168
174
  ### Autorest
@@ -1,4 +1,4 @@
1
- import { EmitContext, Program } from "@typespec/compiler";
1
+ import { EmitContext, Program, Service } from "@typespec/compiler";
2
2
  import { AutorestEmitterOptions } from "./lib.js";
3
3
  import { AutorestDocumentEmitterOptions } from "./openapi.js";
4
4
  import type { AutorestServiceRecord } from "./types.js";
@@ -19,5 +19,6 @@ interface ResolvedAutorestEmitterOptions extends AutorestDocumentEmitterOptions
19
19
  export declare function $onEmit(context: EmitContext<AutorestEmitterOptions>): Promise<void>;
20
20
  export declare function resolveAutorestOptions(program: Program, emitterOutputDir: string, options: AutorestEmitterOptions): ResolvedAutorestEmitterOptions;
21
21
  export declare function getAllServicesAtAllVersions(program: Program, options: ResolvedAutorestEmitterOptions): Promise<AutorestServiceRecord[]>;
22
+ export declare function resolveOutputFile(program: Program, service: Service, multipleServices: boolean, options: ResolvedAutorestEmitterOptions, version?: string, feature?: string): string;
22
23
  export {};
23
24
  //# sourceMappingURL=emit.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"emit.d.ts","sourceRoot":"","sources":["../../src/emit.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,WAAW,EAQX,OAAO,EAIR,MAAM,oBAAoB,CAAC;AAO5B,OAAO,EAAE,sBAAsB,EAA+B,MAAM,UAAU,CAAC;AAC/E,OAAO,EACL,8BAA8B,EAG/B,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAEV,qBAAqB,EAEtB,MAAM,YAAY,CAAC;AAGpB;;GAEG;AACH,UAAU,8BAA+B,SAAQ,8BAA8B;IAC7E,QAAQ,CAAC,2BAA2B,CAAC,EAAE,MAAM,CAAC;IAE9C;;;OAGG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAEjC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC3B;AAUD,wBAAsB,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,sBAAsB,CAAC,iBAWzE;AAED,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,OAAO,EAChB,gBAAgB,EAAE,MAAM,EACxB,OAAO,EAAE,sBAAsB,GAC9B,8BAA8B,CAuChC;AAED,wBAAsB,2BAA2B,CAC/C,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,8BAA8B,GACtC,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAkFlC"}
1
+ {"version":3,"file":"emit.d.ts","sourceRoot":"","sources":["../../src/emit.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,WAAW,EAQX,OAAO,EAGP,OAAO,EACR,MAAM,oBAAoB,CAAC;AAO5B,OAAO,EAAE,sBAAsB,EAA+B,MAAM,UAAU,CAAC;AAC/E,OAAO,EACL,8BAA8B,EAI/B,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAEV,qBAAqB,EAEtB,MAAM,YAAY,CAAC;AAGpB;;GAEG;AACH,UAAU,8BAA+B,SAAQ,8BAA8B;IAC7E,QAAQ,CAAC,2BAA2B,CAAC,EAAE,MAAM,CAAC;IAE9C;;;OAGG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAEjC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC3B;AAUD,wBAAsB,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,sBAAsB,CAAC,iBAWzE;AAED,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,OAAO,EAChB,gBAAgB,EAAE,MAAM,EACxB,OAAO,EAAE,sBAAsB,GAC9B,8BAA8B,CAwChC;AAsBD,wBAAsB,2BAA2B,CAC/C,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,8BAA8B,GACtC,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAoHlC;AAqFD,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,OAAO,EAChB,gBAAgB,EAAE,OAAO,EACzB,OAAO,EAAE,8BAA8B,EACvC,OAAO,CAAC,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,MAAM,GACf,MAAM,CAsBR"}
package/dist/src/emit.js CHANGED
@@ -4,7 +4,7 @@ import { unsafe_mutateSubgraphWithNamespace, } from "@typespec/compiler/experime
4
4
  import { resolveInfo } from "@typespec/openapi";
5
5
  import { getVersioningMutators } from "@typespec/versioning";
6
6
  import { getTracer, reportDiagnostic } from "./lib.js";
7
- import { getOpenAPIForService, sortOpenAPIDocument, } from "./openapi.js";
7
+ import { createDocumentProxy, getOpenAPIForService, sortOpenAPIDocument, } from "./openapi.js";
8
8
  const defaultOptions = {
9
9
  "output-file": "{azure-resource-provider-folder}/{service-name}/{version-status}/{version}/openapi.json",
10
10
  "new-line": "lf",
@@ -46,11 +46,23 @@ export function resolveAutorestOptions(program, emitterOutputDir, options) {
46
46
  emitLroOptions: resolvedOptions["emit-lro-options"],
47
47
  emitCommonTypesSchema: resolvedOptions["emit-common-types-schema"],
48
48
  xmlStrategy: resolvedOptions["xml-strategy"],
49
+ outputSplitting: resolvedOptions["output-splitting"],
49
50
  };
50
51
  }
51
- export async function getAllServicesAtAllVersions(program, options) {
52
+ function getEmitterContext(program, service, options, multiService = false, version) {
52
53
  const tcgcSdkContext = createTCGCContext(program, "@azure-tools/typespec-autorest");
53
54
  tcgcSdkContext.enableLegacyHierarchyBuilding = true;
55
+ return {
56
+ program,
57
+ outputFile: resolveOutputFile(program, service, multiService, options, version),
58
+ service: service,
59
+ tcgcSdkContext,
60
+ proxy: createDocumentProxy(program, service, options, version),
61
+ version: version,
62
+ multiService: multiService,
63
+ };
64
+ }
65
+ export async function getAllServicesAtAllVersions(program, options) {
54
66
  const services = listServices(program);
55
67
  if (services.length === 0) {
56
68
  services.push({ type: program.getGlobalNamespaceType() });
@@ -59,32 +71,30 @@ export async function getAllServicesAtAllVersions(program, options) {
59
71
  for (const service of services) {
60
72
  const versions = getVersioningMutators(program, service.type);
61
73
  if (versions === undefined) {
62
- const context = {
63
- program,
64
- outputFile: resolveOutputFile(program, service, services.length > 1, options),
65
- service: service,
66
- tcgcSdkContext,
67
- };
68
- const result = await getOpenAPIForService(context, options);
69
- serviceRecords.push({
70
- service,
71
- versioned: false,
72
- ...result,
73
- });
74
+ const context = getEmitterContext(program, service, options, services.length > 1);
75
+ const results = await getOpenAPIForService(context, options);
76
+ for (const result of results) {
77
+ const newResult = { ...result };
78
+ newResult.outputFile = resolveOutputFile(program, service, services.length > 1, options, undefined, result.feature);
79
+ serviceRecords.push({
80
+ service,
81
+ versioned: false,
82
+ ...newResult,
83
+ });
84
+ }
74
85
  }
75
86
  else if (versions.kind === "transient") {
76
- const context = {
77
- program,
78
- outputFile: resolveOutputFile(program, service, services.length > 1, options),
79
- service: service,
80
- tcgcSdkContext,
81
- };
82
- const result = await getVersionSnapshotDocument(context, versions.mutator, options);
83
- serviceRecords.push({
84
- service,
85
- versioned: false,
86
- ...result,
87
- });
87
+ const context = getEmitterContext(program, service, options, services.length > 1);
88
+ const results = await getVersionSnapshotDocument(context, versions.mutator, options, services.length > 1);
89
+ for (const result of results) {
90
+ const newResult = { ...result };
91
+ newResult.outputFile = resolveOutputFile(program, service, services.length > 1, options, undefined, result.feature);
92
+ serviceRecords.push({
93
+ service,
94
+ versioned: false,
95
+ ...newResult,
96
+ });
97
+ }
88
98
  }
89
99
  else {
90
100
  const filteredVersions = versions.snapshots.filter((v) => !options.version || options.version === v.version?.value);
@@ -98,28 +108,28 @@ export async function getAllServicesAtAllVersions(program, options) {
98
108
  };
99
109
  serviceRecords.push(serviceRecord);
100
110
  for (const record of filteredVersions) {
101
- const context = {
102
- program,
103
- outputFile: resolveOutputFile(program, service, services.length > 1, options, record.version?.value),
104
- service,
105
- version: record.version?.value,
106
- tcgcSdkContext,
107
- };
108
- const result = await getVersionSnapshotDocument(context, record.mutator, options);
109
- serviceRecord.versions.push({
110
- ...result,
111
- service,
112
- version: record.version.value,
113
- });
111
+ const context = getEmitterContext(program, service, options, services.length > 1, record.version?.value);
112
+ const results = await getVersionSnapshotDocument(context, record.mutator, options, services.length > 1);
113
+ for (const result of results) {
114
+ const newResult = { ...result };
115
+ newResult.outputFile = resolveOutputFile(program, service, services.length > 1, options, record.version.value, result.feature);
116
+ serviceRecord.versions.push({
117
+ ...newResult,
118
+ service,
119
+ version: record.version.value,
120
+ });
121
+ }
114
122
  }
115
123
  }
116
124
  }
117
125
  return serviceRecords;
118
126
  }
119
- async function getVersionSnapshotDocument(context, mutator, options) {
127
+ async function getVersionSnapshotDocument(context, mutator, options, multiService = false) {
120
128
  const subgraph = unsafe_mutateSubgraphWithNamespace(context.program, [mutator], context.service.type);
121
129
  compilerAssert(subgraph.type.kind === "Namespace", "Should not have mutated to another type");
122
- const document = await getOpenAPIForService({ ...context, service: getService(context.program, subgraph.type) }, options);
130
+ const service = getService(context.program, subgraph.type);
131
+ const newContext = getEmitterContext(context.program, service, options, multiService, context.version);
132
+ const document = await getOpenAPIForService(newContext, options);
123
133
  return document;
124
134
  }
125
135
  async function emitAllServiceAtAllVersions(program, options) {
@@ -139,6 +149,9 @@ async function emitAllServiceAtAllVersions(program, options) {
139
149
  }
140
150
  }
141
151
  async function emitOutput(program, result, options) {
152
+ const currentFeature = result.feature;
153
+ if (currentFeature !== undefined && result.context.proxy !== undefined)
154
+ result.context.proxy.setCurrentFeature(currentFeature);
142
155
  const sortedDocument = sortOpenAPIDocument(result.document);
143
156
  // Write out the OpenAPI document to the output path
144
157
  await emitFile(program, {
@@ -166,7 +179,7 @@ async function emitOutput(program, result, options) {
166
179
  function prettierOutput(output) {
167
180
  return output + "\n";
168
181
  }
169
- function resolveOutputFile(program, service, multipleServices, options, version) {
182
+ export function resolveOutputFile(program, service, multipleServices, options, version, feature) {
170
183
  const azureResourceProviderFolder = options.azureResourceProviderFolder;
171
184
  if (azureResourceProviderFolder) {
172
185
  const info = resolveInfo(program, service.type);
@@ -183,6 +196,7 @@ function resolveOutputFile(program, service, multipleServices, options, version)
183
196
  : "stable"
184
197
  : undefined,
185
198
  version,
199
+ feature,
186
200
  });
187
201
  return resolvePath(options.outputDir, interpolated);
188
202
  }
@@ -1 +1 @@
1
- {"version":3,"file":"emit.js","sourceRoot":"","sources":["../../src/emit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"emit.js","sourceRoot":"","sources":["../../src/emit.ts"],"names":[],"mappings":"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"}
package/dist/src/lib.d.ts CHANGED
@@ -97,6 +97,11 @@ export interface AutorestEmitterOptions {
97
97
  * @default "xml-service"
98
98
  */
99
99
  "xml-strategy"?: "xml-service" | "none";
100
+ /**
101
+ * Determines whether output should be split into multiple files. The only supported option for splitting is "legacy-feature-files",
102
+ * which uses the typespec-azure-resource-manager `@feature` decorators to split into output files based on feature.
103
+ */
104
+ "output-splitting"?: "legacy-feature-files";
100
105
  }
101
106
  export declare const $lib: import("@typespec/compiler").TypeSpecLibrary<{
102
107
  "duplicate-body-types": {
@@ -1 +1 @@
1
- {"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../../src/lib.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;OAEG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAE9B,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,gCAAgC,CAAC,EAAE,MAAM,CAAC;IAE1C;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE3B;;;OAGG;IACH,wBAAwB,CAAC,EAAE,OAAO,CAAC;IAEnC;;;OAGG;IACH,uBAAuB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAE7C;;;;OAIG;IACH,yBAAyB,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC;IAEpD;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;;OAGG;IACH,6BAA6B,CAAC,EAAE,OAAO,CAAC;IAExC;;;OAGG;IACH,kBAAkB,CAAC,EAAE,MAAM,GAAG,kBAAkB,GAAG,KAAK,CAAC;IAEzD;;;OAGG;IACH,0BAA0B,CAAC,EAAE,OAAO,GAAG,wBAAwB,CAAC;IAEhE;;;;;;;OAOG;IACH,cAAc,CAAC,EAAE,aAAa,GAAG,MAAM,CAAC;CACzC;AAiID,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gDA+IN,CAAC;AAEZ,eAAO,MAAQ,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAAE,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sDAAa,iBAAiB,wCAAE,SAAS,wFAAS,CAAC"}
1
+ {"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../../src/lib.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;OAEG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAE9B,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,gCAAgC,CAAC,EAAE,MAAM,CAAC;IAE1C;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE3B;;;OAGG;IACH,wBAAwB,CAAC,EAAE,OAAO,CAAC;IAEnC;;;OAGG;IACH,uBAAuB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAE7C;;;;OAIG;IACH,yBAAyB,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC;IAEpD;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;;OAGG;IACH,6BAA6B,CAAC,EAAE,OAAO,CAAC;IAExC;;;OAGG;IACH,kBAAkB,CAAC,EAAE,MAAM,GAAG,kBAAkB,GAAG,KAAK,CAAC;IAEzD;;;OAGG;IACH,0BAA0B,CAAC,EAAE,OAAO,GAAG,wBAAwB,CAAC;IAEhE;;;;;;;OAOG;IACH,cAAc,CAAC,EAAE,aAAa,GAAG,MAAM,CAAC;IAExC;;;OAGG;IACH,kBAAkB,CAAC,EAAE,sBAAsB,CAAC;CAC7C;AAwID,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gDA+IN,CAAC;AAEZ,eAAO,MAAQ,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAAE,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sDAAa,iBAAiB,wCAAE,SAAS,wFAAS,CAAC"}
package/dist/src/lib.js CHANGED
@@ -116,6 +116,12 @@ const EmitterOptionsSchema = {
116
116
  default: "xml-service",
117
117
  description: "Strategy for applying XML serialization metadata to schemas.",
118
118
  },
119
+ "output-splitting": {
120
+ type: "string",
121
+ enum: ["legacy-feature-files"],
122
+ nullable: true,
123
+ description: 'Determines whether output should be split into multiple files. The only supported option for splitting is "legacy-feature-files", which uses the typespec-azure-resource-manager `@feature` decorators to split into output files based on feature.',
124
+ },
119
125
  },
120
126
  required: [],
121
127
  };
@@ -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,5 +1,6 @@
1
+ import { Program, Service } from "@typespec/compiler";
1
2
  import { OpenAPI2Document } from "./openapi2-document.js";
2
- import type { AutorestEmitterResult } from "./types.js";
3
+ import { OpenApi2DocumentProxy, type AutorestEmitterResult } from "./types.js";
3
4
  import { AutorestEmitterContext } from "./utils.js";
4
5
  /**
5
6
  * Options to configure the behavior of the Autorest document emitter.
@@ -40,7 +41,13 @@ export interface AutorestDocumentEmitterOptions {
40
41
  */
41
42
  readonly emitCommonTypesSchema?: "never" | "for-visibility-changes";
42
43
  readonly xmlStrategy: "xml-service" | "none";
44
+ /**
45
+ * Determines whether output should be split into multiple files. The only supported option for splitting is "legacy-feature-files",
46
+ */
47
+ readonly outputSplitting?: "legacy-feature-files";
43
48
  }
44
- export declare function getOpenAPIForService(context: AutorestEmitterContext, options: AutorestDocumentEmitterOptions): Promise<AutorestEmitterResult>;
49
+ export declare function getOpenAPIForService(context: AutorestEmitterContext, options: AutorestDocumentEmitterOptions): Promise<AutorestEmitterResult[]>;
45
50
  export declare function sortOpenAPIDocument(doc: OpenAPI2Document): OpenAPI2Document;
51
+ export declare function createDocumentProxy(program: Program, service: Service, options: AutorestDocumentEmitterOptions, version?: string): OpenApi2DocumentProxy;
52
+ export declare function createDefaultDocumentProxy(program: Program, service: Service, options: AutorestDocumentEmitterOptions, version?: string): OpenApi2DocumentProxy;
46
53
  //# sourceMappingURL=openapi.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"openapi.d.ts","sourceRoot":"","sources":["../../src/openapi.ts"],"names":[],"mappings":"AAyJA,OAAO,EAEL,gBAAgB,EAsBjB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,qBAAqB,EAAiB,MAAM,YAAY,CAAC;AACvE,OAAO,EACL,sBAAsB,EAIvB,MAAM,YAAY,CAAC;AAQpB;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAEpC;;;OAGG;IACH,QAAQ,CAAC,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAExC;;OAEG;IACH,QAAQ,CAAC,oBAAoB,EAAE,aAAa,GAAG,OAAO,CAAC;IAEvD;;OAEG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAE7B;;OAEG;IACH,QAAQ,CAAC,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAE3C;;;OAGG;IACH,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAElD;;;;OAIG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,kBAAkB,GAAG,KAAK,CAAC;IAE9D;;;OAGG;IACH,QAAQ,CAAC,qBAAqB,CAAC,EAAE,OAAO,GAAG,wBAAwB,CAAC;IAEpE,QAAQ,CAAC,WAAW,EAAE,aAAa,GAAG,MAAM,CAAC;CAC9C;AAyDD,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,sBAAsB,EAC/B,OAAO,EAAE,8BAA8B,GACtC,OAAO,CAAC,qBAAqB,CAAC,CAs/EhC;AAQD,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,gBAAgB,GAAG,gBAAgB,CAK3E"}
1
+ {"version":3,"file":"openapi.d.ts","sourceRoot":"","sources":["../../src/openapi.ts"],"names":[],"mappings":"AAgCA,OAAO,EAgBL,OAAO,EAEP,OAAO,EAyDR,MAAM,oBAAoB,CAAC;AAmD5B,OAAO,EAEL,gBAAgB,EAsBjB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAEL,qBAAqB,EAGrB,KAAK,qBAAqB,EAE3B,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,sBAAsB,EAIvB,MAAM,YAAY,CAAC;AAQpB;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAEpC;;;OAGG;IACH,QAAQ,CAAC,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAExC;;OAEG;IACH,QAAQ,CAAC,oBAAoB,EAAE,aAAa,GAAG,OAAO,CAAC;IAEvD;;OAEG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAE7B;;OAEG;IACH,QAAQ,CAAC,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAE3C;;;OAGG;IACH,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAElD;;;;OAIG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,kBAAkB,GAAG,KAAK,CAAC;IAE9D;;;OAGG;IACH,QAAQ,CAAC,qBAAqB,CAAC,EAAE,OAAO,GAAG,wBAAwB,CAAC;IAEpE,QAAQ,CAAC,WAAW,EAAE,aAAa,GAAG,MAAM,CAAC;IAC7C;;OAEG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,sBAAsB,CAAC;CACnD;AAOD,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,sBAAsB,EAC/B,OAAO,EAAE,8BAA8B,GACtC,OAAO,CAAC,qBAAqB,EAAE,CAAC,CA05ElC;AAQD,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,gBAAgB,GAAG,gBAAgB,CAK3E;AA2HD,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,8BAA8B,EACvC,OAAO,CAAC,EAAE,MAAM,GACf,qBAAqB,CAYvB;AAED,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,8BAA8B,EACvC,OAAO,CAAC,EAAE,MAAM,GACf,qBAAqB,CAyHvB"}