@azure-tools/typespec-autorest 0.43.0-dev.1 → 0.43.0-dev.11
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 +6 -0
- package/dist/src/decorators.d.ts +2 -23
- package/dist/src/decorators.d.ts.map +1 -1
- package/dist/src/decorators.js +2 -18
- package/dist/src/decorators.js.map +1 -1
- package/dist/src/emit.d.ts +3 -2
- package/dist/src/emit.d.ts.map +1 -1
- package/dist/src/emit.js +94 -39
- package/dist/src/emit.js.map +1 -1
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +1 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/lib.d.ts +5 -0
- package/dist/src/lib.d.ts.map +1 -1
- package/dist/src/lib.js +7 -0
- package/dist/src/lib.js.map +1 -1
- package/dist/src/openapi.d.ts +7 -15
- package/dist/src/openapi.d.ts.map +1 -1
- package/dist/src/openapi.js +207 -60
- package/dist/src/openapi.js.map +1 -1
- package/dist/src/openapi2-document.d.ts +19 -2
- package/dist/src/openapi2-document.d.ts.map +1 -1
- package/dist/src/types.d.ts +48 -0
- package/dist/src/types.d.ts.map +1 -0
- package/dist/src/types.js +2 -0
- package/dist/src/types.js.map +1 -0
- package/package.json +9 -7
- package/schema/dist/schema.js +1 -1
package/README.md
CHANGED
|
@@ -124,6 +124,12 @@ This extension is meant for debugging and should not be depended on.
|
|
|
124
124
|
|
|
125
125
|
Create read-only property schema for lro status
|
|
126
126
|
|
|
127
|
+
#### `emit-lro-options`
|
|
128
|
+
|
|
129
|
+
**Type:** `"none" | "final-state-only" | "all"`
|
|
130
|
+
|
|
131
|
+
Determine whether and how to emit x-ms-long-running-operation-options for lro resolution
|
|
132
|
+
|
|
127
133
|
## Decorators
|
|
128
134
|
|
|
129
135
|
### Autorest
|
package/dist/src/decorators.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { DecoratorContext, Model, ModelProperty, Program,
|
|
1
|
+
import { DecoratorContext, Model, ModelProperty, Program, Type } from "@typespec/compiler";
|
|
2
2
|
export declare const namespace = "Autorest";
|
|
3
3
|
export interface Example {
|
|
4
4
|
pathOrUri: string;
|
|
@@ -14,18 +14,6 @@ export interface Example {
|
|
|
14
14
|
*/
|
|
15
15
|
export declare function $example(context: DecoratorContext, entity: Type, pathOrUri: string, title: string): void;
|
|
16
16
|
export declare function getExamples(program: Program, entity: Type): Example[] | undefined;
|
|
17
|
-
/**
|
|
18
|
-
* Parameters that may be passed to a RefProducer function. Specific RefProducer
|
|
19
|
-
* functions may define additional parameters.
|
|
20
|
-
*/
|
|
21
|
-
export interface RefProducerParams {
|
|
22
|
-
service?: Service;
|
|
23
|
-
version?: string;
|
|
24
|
-
}
|
|
25
|
-
/**
|
|
26
|
-
* A function that can produce a ref path at the time it is requested.
|
|
27
|
-
*/
|
|
28
|
-
export type RefProducer = (program: Program, entity: Model | ModelProperty, params: RefProducerParams) => string | undefined;
|
|
29
17
|
/**
|
|
30
18
|
* `@useRef` - is used to replace the TypeSpec model type in emitter output with a pre-existing named OpenAPI schema such as ARM common types.
|
|
31
19
|
*
|
|
@@ -34,14 +22,5 @@ export type RefProducer = (program: Program, entity: Model | ModelProperty, para
|
|
|
34
22
|
* `@useRef` can be specified on Models and ModelProperty.
|
|
35
23
|
*/
|
|
36
24
|
export declare function $useRef(context: DecoratorContext, entity: Model | ModelProperty, jsonRef: string): void;
|
|
37
|
-
|
|
38
|
-
* Configures a "ref producer" for the given entity. A ref producer is a
|
|
39
|
-
* function that returns a ref path for the given entity, possibly altered by
|
|
40
|
-
* the options provided to the function (like the service and version).
|
|
41
|
-
*
|
|
42
|
-
* @param {function} param producer - path or Uri to an OpenAPI schema.
|
|
43
|
-
*
|
|
44
|
-
*/
|
|
45
|
-
export declare function setRefProducer(program: Program, entity: Model | ModelProperty, refProducer: RefProducer): void;
|
|
46
|
-
export declare function getRef(program: Program, entity: Type, params?: RefProducerParams): string | undefined;
|
|
25
|
+
export declare function getRef(program: Program, entity: Type): string | undefined;
|
|
47
26
|
//# sourceMappingURL=decorators.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decorators.d.ts","sourceRoot":"","sources":["../../src/decorators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"decorators.d.ts","sourceRoot":"","sources":["../../src/decorators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAG3F,eAAO,MAAM,SAAS,aAAa,CAAC;AAEpC,MAAM,WAAW,OAAO;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;CACf;AAGD;;;;;;;GAOG;AACH,wBAAgB,QAAQ,CACtB,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,IAAI,EACZ,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,QAoBd;AAED,wBAAgB,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,GAAG,OAAO,EAAE,GAAG,SAAS,CAEjF;AAGD;;;;;;GAMG;AACH,wBAAgB,OAAO,CAAC,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,KAAK,GAAG,aAAa,EAAE,OAAO,EAAE,MAAM,QAEhG;AAED,wBAAgB,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,GAAG,MAAM,GAAG,SAAS,CAGzE"}
|
package/dist/src/decorators.js
CHANGED
|
@@ -42,24 +42,8 @@ const refTargetsKey = createStateSymbol("autorest.ref");
|
|
|
42
42
|
export function $useRef(context, entity, jsonRef) {
|
|
43
43
|
context.program.stateMap(refTargetsKey).set(entity, jsonRef);
|
|
44
44
|
}
|
|
45
|
-
|
|
46
|
-
* Configures a "ref producer" for the given entity. A ref producer is a
|
|
47
|
-
* function that returns a ref path for the given entity, possibly altered by
|
|
48
|
-
* the options provided to the function (like the service and version).
|
|
49
|
-
*
|
|
50
|
-
* @param {function} param producer - path or Uri to an OpenAPI schema.
|
|
51
|
-
*
|
|
52
|
-
*/
|
|
53
|
-
export function setRefProducer(program, entity, refProducer) {
|
|
54
|
-
program.stateMap(refTargetsKey).set(entity, refProducer);
|
|
55
|
-
}
|
|
56
|
-
export function getRef(program, entity, params) {
|
|
45
|
+
export function getRef(program, entity) {
|
|
57
46
|
const refOrProducer = program.stateMap(refTargetsKey).get(entity);
|
|
58
|
-
|
|
59
|
-
return refOrProducer(program, entity, params ?? {});
|
|
60
|
-
}
|
|
61
|
-
else {
|
|
62
|
-
return refOrProducer;
|
|
63
|
-
}
|
|
47
|
+
return refOrProducer;
|
|
64
48
|
}
|
|
65
49
|
//# sourceMappingURL=decorators.js.map
|
|
@@ -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;
|
|
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;AAED,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,MAAM,UAAU,MAAM,CAAC,OAAgB,EAAE,MAAY;IACnD,MAAM,aAAa,GAAG,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAClE,OAAO,aAAa,CAAC;AACvB,CAAC"}
|
package/dist/src/emit.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { SdkContext } from "@azure-tools/typespec-client-generator-core";
|
|
2
1
|
import { EmitContext, Program } from "@typespec/compiler";
|
|
3
2
|
import { AutorestEmitterOptions } from "./lib.js";
|
|
4
3
|
import { AutorestDocumentEmitterOptions } from "./openapi.js";
|
|
4
|
+
import type { AutorestServiceRecord } from "./types.js";
|
|
5
5
|
/**
|
|
6
6
|
* Extended options specific to the emitting of the typespec-autorest emitter
|
|
7
7
|
*/
|
|
@@ -17,6 +17,7 @@ interface ResolvedAutorestEmitterOptions extends AutorestDocumentEmitterOptions
|
|
|
17
17
|
readonly version?: string;
|
|
18
18
|
}
|
|
19
19
|
export declare function $onEmit(context: EmitContext<AutorestEmitterOptions>): Promise<void>;
|
|
20
|
-
export declare function
|
|
20
|
+
export declare function resolveAutorestOptions(program: Program, emitterOutputDir: string, options: AutorestEmitterOptions): ResolvedAutorestEmitterOptions;
|
|
21
|
+
export declare function getAllServicesAtAllVersions(program: Program, options: ResolvedAutorestEmitterOptions): Promise<AutorestServiceRecord[]>;
|
|
21
22
|
export {};
|
|
22
23
|
//# sourceMappingURL=emit.d.ts.map
|
package/dist/src/emit.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emit.d.ts","sourceRoot":"","sources":["../../src/emit.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"emit.d.ts","sourceRoot":"","sources":["../../src/emit.ts"],"names":[],"mappings":"AACA,OAAO,EACL,WAAW,EAEX,OAAO,EAUR,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,sBAAsB,EAAa,MAAM,UAAU,CAAC;AAC7D,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;AASD,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,CAuBhC;AAED,wBAAsB,2BAA2B,CAC/C,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,8BAA8B,GACtC,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAwFlC"}
|
package/dist/src/emit.js
CHANGED
|
@@ -10,14 +10,20 @@ const defaultOptions = {
|
|
|
10
10
|
"include-x-typespec-name": "never",
|
|
11
11
|
};
|
|
12
12
|
export async function $onEmit(context) {
|
|
13
|
-
const
|
|
13
|
+
const tracer = getTracer(context.program);
|
|
14
|
+
const options = resolveAutorestOptions(context.program, context.emitterOutputDir, context.options);
|
|
15
|
+
tracer.trace("options", JSON.stringify(options, null, 2));
|
|
16
|
+
await emitAllServiceAtAllVersions(context.program, options);
|
|
17
|
+
}
|
|
18
|
+
export function resolveAutorestOptions(program, emitterOutputDir, options) {
|
|
19
|
+
const resolvedOptions = { ...defaultOptions, ...options };
|
|
14
20
|
const armTypesDir = interpolatePath(resolvedOptions["arm-types-dir"] ?? "{project-root}/../../common-types/resource-management", {
|
|
15
|
-
"project-root":
|
|
16
|
-
"emitter-output-dir":
|
|
21
|
+
"project-root": program.projectRoot,
|
|
22
|
+
"emitter-output-dir": emitterOutputDir,
|
|
17
23
|
});
|
|
18
|
-
|
|
24
|
+
return {
|
|
19
25
|
outputFile: resolvedOptions["output-file"],
|
|
20
|
-
outputDir:
|
|
26
|
+
outputDir: emitterOutputDir,
|
|
21
27
|
azureResourceProviderFolder: resolvedOptions["azure-resource-provider-folder"],
|
|
22
28
|
examplesDirectory: resolvedOptions["examples-directory"],
|
|
23
29
|
version: resolvedOptions["version"],
|
|
@@ -27,26 +33,25 @@ export async function $onEmit(context) {
|
|
|
27
33
|
includeXTypeSpecName: resolvedOptions["include-x-typespec-name"],
|
|
28
34
|
armTypesDir,
|
|
29
35
|
useReadOnlyStatusSchema: resolvedOptions["use-read-only-status-schema"],
|
|
36
|
+
emitLroOptions: resolvedOptions["emit-lro-options"],
|
|
30
37
|
};
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
const tcgcSdkContext = createSdkContext(
|
|
38
|
+
}
|
|
39
|
+
export async function getAllServicesAtAllVersions(program, options) {
|
|
40
|
+
const tcgcSdkContext = createSdkContext({ program, options: {} }, "@azure-tools/typespec-autorest", {
|
|
34
41
|
versionStrategy: "ignore",
|
|
35
42
|
});
|
|
36
|
-
await emitAllServiceAtAllVersions(context.program, tcgcSdkContext, options);
|
|
37
|
-
}
|
|
38
|
-
export async function emitAllServiceAtAllVersions(program, tcgcSdkContext, options) {
|
|
39
43
|
const services = listServices(program);
|
|
40
44
|
if (services.length === 0) {
|
|
41
45
|
services.push({ type: program.getGlobalNamespaceType() });
|
|
42
46
|
}
|
|
47
|
+
const serviceRecords = [];
|
|
43
48
|
for (const service of services) {
|
|
44
49
|
const originalProgram = program;
|
|
45
50
|
const versions = buildVersionProjections(program, service.type).filter((v) => !options.version || options.version === v.version);
|
|
46
|
-
|
|
51
|
+
if (versions.length === 1 && versions[0].version === undefined) {
|
|
47
52
|
let projectedProgram;
|
|
48
|
-
if (
|
|
49
|
-
projectedProgram = program = projectProgram(originalProgram,
|
|
53
|
+
if (versions[0].projections.length > 0) {
|
|
54
|
+
projectedProgram = program = projectProgram(originalProgram, versions[0].projections);
|
|
50
55
|
}
|
|
51
56
|
const projectedServiceNs = projectedProgram
|
|
52
57
|
? projectedProgram.projector.projectedTypes.get(service.type)
|
|
@@ -56,36 +61,86 @@ export async function emitAllServiceAtAllVersions(program, tcgcSdkContext, optio
|
|
|
56
61
|
: getService(program, projectedServiceNs);
|
|
57
62
|
const context = {
|
|
58
63
|
program,
|
|
59
|
-
outputFile: resolveOutputFile(program,
|
|
64
|
+
outputFile: resolveOutputFile(program, service, services.length > 1, options),
|
|
60
65
|
service: projectedService,
|
|
61
|
-
version: record.version,
|
|
62
66
|
tcgcSdkContext,
|
|
63
67
|
};
|
|
64
68
|
const result = await getOpenAPIForService(context, options);
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
69
|
+
serviceRecords.push({
|
|
70
|
+
service,
|
|
71
|
+
versioned: false,
|
|
72
|
+
...result,
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
const serviceRecord = {
|
|
77
|
+
service,
|
|
78
|
+
versioned: true,
|
|
79
|
+
versions: [],
|
|
80
|
+
};
|
|
81
|
+
serviceRecords.push(serviceRecord);
|
|
82
|
+
for (const record of versions) {
|
|
83
|
+
const projectedProgram = (program = projectProgram(originalProgram, record.projections));
|
|
84
|
+
const projectedServiceNs = projectedProgram
|
|
85
|
+
? projectedProgram.projector.projectedTypes.get(service.type)
|
|
86
|
+
: service.type;
|
|
87
|
+
const projectedService = projectedServiceNs === program.getGlobalNamespaceType()
|
|
88
|
+
? { type: program.getGlobalNamespaceType() }
|
|
89
|
+
: getService(program, projectedServiceNs);
|
|
90
|
+
const context = {
|
|
91
|
+
program,
|
|
92
|
+
outputFile: resolveOutputFile(program, projectedService, services.length > 1, options, record.version),
|
|
93
|
+
service: projectedService,
|
|
94
|
+
version: record.version,
|
|
95
|
+
tcgcSdkContext,
|
|
96
|
+
};
|
|
97
|
+
const result = await getOpenAPIForService(context, options);
|
|
98
|
+
serviceRecord.versions.push({
|
|
99
|
+
...result,
|
|
100
|
+
service: projectedService,
|
|
101
|
+
version: record.version,
|
|
73
102
|
});
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
return serviceRecords;
|
|
107
|
+
}
|
|
108
|
+
async function emitAllServiceAtAllVersions(program, options) {
|
|
109
|
+
const services = await getAllServicesAtAllVersions(program, options);
|
|
110
|
+
if (program.compilerOptions.noEmit || program.hasError()) {
|
|
111
|
+
return;
|
|
112
|
+
}
|
|
113
|
+
for (const serviceRecord of services) {
|
|
114
|
+
if (serviceRecord.versioned) {
|
|
115
|
+
for (const documentRecord of serviceRecord.versions) {
|
|
116
|
+
await emitOutput(program, documentRecord, options);
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
else {
|
|
120
|
+
await emitOutput(program, serviceRecord, options);
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
async function emitOutput(program, result, options) {
|
|
125
|
+
const sortedDocument = sortOpenAPIDocument(result.document);
|
|
126
|
+
// Write out the OpenAPI document to the output path
|
|
127
|
+
await emitFile(program, {
|
|
128
|
+
path: result.outputFile,
|
|
129
|
+
content: prettierOutput(JSON.stringify(sortedDocument, null, 2)),
|
|
130
|
+
newLine: options.newLine,
|
|
131
|
+
});
|
|
132
|
+
// Copy examples to the output directory
|
|
133
|
+
if (options.examplesDirectory && result.operationExamples.length > 0) {
|
|
134
|
+
const examplesPath = resolvePath(getDirectoryPath(result.outputFile), "examples");
|
|
135
|
+
await program.host.mkdirp(examplesPath);
|
|
136
|
+
for (const { examples } of result.operationExamples) {
|
|
137
|
+
if (examples) {
|
|
138
|
+
for (const { relativePath, file } of Object.values(examples)) {
|
|
139
|
+
await emitFile(program, {
|
|
140
|
+
path: resolvePath(examplesPath, relativePath),
|
|
141
|
+
content: file.text,
|
|
142
|
+
newLine: options.newLine,
|
|
143
|
+
});
|
|
89
144
|
}
|
|
90
145
|
}
|
|
91
146
|
}
|
package/dist/src/emit.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emit.js","sourceRoot":"","sources":["../../src/emit.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"emit.js","sourceRoot":"","sources":["../../src/emit.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export * from "./decorators.js";
|
|
2
|
-
export { $onEmit } from "./emit.js";
|
|
2
|
+
export { $onEmit, getAllServicesAtAllVersions, resolveAutorestOptions } from "./emit.js";
|
|
3
3
|
export { $lib, AutorestEmitterOptions } from "./lib.js";
|
|
4
4
|
export { getOpenAPIForService, sortOpenAPIDocument, type AutorestDocumentEmitterOptions, } from "./openapi.js";
|
|
5
5
|
export type * from "./openapi2-document.js";
|
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,2BAA2B,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AACzF,OAAO,EAAE,IAAI,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AACxD,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,KAAK,8BAA8B,GACpC,MAAM,cAAc,CAAC;AACtB,mBAAmB,wBAAwB,CAAC;AAC5C,YAAY,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC"}
|
package/dist/src/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export * from "./decorators.js";
|
|
2
|
-
export { $onEmit } from "./emit.js";
|
|
2
|
+
export { $onEmit, getAllServicesAtAllVersions, resolveAutorestOptions } from "./emit.js";
|
|
3
3
|
export { $lib } from "./lib.js";
|
|
4
4
|
export { getOpenAPIForService, sortOpenAPIDocument, } from "./openapi.js";
|
|
5
5
|
//# sourceMappingURL=index.js.map
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,2BAA2B,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AACzF,OAAO,EAAE,IAAI,EAA0B,MAAM,UAAU,CAAC;AACxD,OAAO,EACL,oBAAoB,EACpB,mBAAmB,GAEpB,MAAM,cAAc,CAAC"}
|
package/dist/src/lib.d.ts
CHANGED
|
@@ -74,6 +74,11 @@ export interface AutorestEmitterOptions {
|
|
|
74
74
|
* @default false
|
|
75
75
|
*/
|
|
76
76
|
"use-read-only-status-schema"?: boolean;
|
|
77
|
+
/**
|
|
78
|
+
* Determines whether and how to emit the x-ms-long-running-operation-options
|
|
79
|
+
* @default "final-state-only"
|
|
80
|
+
*/
|
|
81
|
+
"emit-lro-options"?: "none" | "final-state-only" | "all";
|
|
77
82
|
}
|
|
78
83
|
export declare const $lib: import("@typespec/compiler").TypeSpecLibrary<{
|
|
79
84
|
"duplicate-body-types": {
|
package/dist/src/lib.d.ts.map
CHANGED
|
@@ -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,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,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;
|
|
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,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,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;CAC1D;AAqOD,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iCAAgC,CAAC;AAClD,eAAO,MAAQ,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAAE,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sDAAE,iBAAiB,4BAAE,SAAS,wFAAS,CAAC"}
|
package/dist/src/lib.js
CHANGED
|
@@ -88,6 +88,13 @@ const EmitterOptionsSchema = {
|
|
|
88
88
|
default: false,
|
|
89
89
|
description: "Create read-only property schema for lro status",
|
|
90
90
|
},
|
|
91
|
+
"emit-lro-options": {
|
|
92
|
+
type: "string",
|
|
93
|
+
enum: ["none", "final-state-only", "all"],
|
|
94
|
+
nullable: true,
|
|
95
|
+
default: "final-state-only",
|
|
96
|
+
description: "Determine whether and how to emit x-ms-long-running-operation-options for lro resolution",
|
|
97
|
+
},
|
|
91
98
|
},
|
|
92
99
|
required: [],
|
|
93
100
|
};
|
package/dist/src/lib.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lib.js","sourceRoot":"","sources":["../../src/lib.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAkB,YAAY,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"lib.js","sourceRoot":"","sources":["../../src/lib.ts"],"names":[],"mappings":"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"}
|
package/dist/src/openapi.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { SourceFile } from "@typespec/compiler";
|
|
2
1
|
import { OpenAPI2Document } from "./openapi2-document.js";
|
|
2
|
+
import type { AutorestEmitterResult } from "./types.js";
|
|
3
3
|
import { AutorestEmitterContext } from "./utils.js";
|
|
4
4
|
/**
|
|
5
5
|
* Options to configure the behavior of the Autorest document emitter.
|
|
@@ -28,21 +28,13 @@ export interface AutorestDocumentEmitterOptions {
|
|
|
28
28
|
* @default "omit"
|
|
29
29
|
*/
|
|
30
30
|
readonly versionEnumStrategy?: "omit" | "include";
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
readonly document: OpenAPI2Document;
|
|
38
|
-
readonly operationExamples: OperationExamples[];
|
|
31
|
+
/**
|
|
32
|
+
* Determines whether and how to emit x-ms-long-running-operation-options
|
|
33
|
+
* to describe resolution of asynchronous operations
|
|
34
|
+
* @default "final-state-only"
|
|
35
|
+
*/
|
|
36
|
+
readonly emitLroOptions?: "none" | "final-state-only" | "all";
|
|
39
37
|
}
|
|
40
38
|
export declare function getOpenAPIForService(context: AutorestEmitterContext, options: AutorestDocumentEmitterOptions): Promise<AutorestEmitterResult>;
|
|
41
39
|
export declare function sortOpenAPIDocument(doc: OpenAPI2Document): OpenAPI2Document;
|
|
42
|
-
interface LoadedExample {
|
|
43
|
-
readonly relativePath: string;
|
|
44
|
-
readonly file: SourceFile;
|
|
45
|
-
readonly data: any;
|
|
46
|
-
}
|
|
47
|
-
export {};
|
|
48
40
|
//# sourceMappingURL=openapi.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openapi.d.ts","sourceRoot":"","sources":["../../src/openapi.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"openapi.d.ts","sourceRoot":"","sources":["../../src/openapi.ts"],"names":[],"mappings":"AAkIA,OAAO,EACL,gBAAgB,EAkBjB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,qBAAqB,EAAiB,MAAM,YAAY,CAAC;AACvE,OAAO,EAAE,sBAAsB,EAAqC,MAAM,YAAY,CAAC;AAOvF;;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;CAC/D;AA4CD,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,sBAAsB,EAC/B,OAAO,EAAE,8BAA8B,GACtC,OAAO,CAAC,qBAAqB,CAAC,CAujEhC;AAQD,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,gBAAgB,GAAG,gBAAgB,CAK3E"}
|