@azure-tools/typespec-ts 0.30.1 → 0.31.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.
- package/CHANGELOG.md +19 -0
- package/dist/src/contextManager.d.ts +4 -0
- package/dist/src/contextManager.d.ts.map +1 -1
- package/dist/src/contextManager.js.map +1 -1
- package/dist/src/framework/declaration.d.ts +9 -0
- package/dist/src/framework/declaration.d.ts.map +1 -0
- package/dist/src/framework/declaration.js +28 -0
- package/dist/src/framework/declaration.js.map +1 -0
- package/dist/src/framework/hooks/binder.d.ts +25 -0
- package/dist/src/framework/hooks/binder.d.ts.map +1 -0
- package/dist/src/framework/hooks/binder.js +168 -0
- package/dist/src/framework/hooks/binder.js.map +1 -0
- package/dist/src/framework/hooks/sdkTypes.d.ts +12 -0
- package/dist/src/framework/hooks/sdkTypes.d.ts.map +1 -0
- package/dist/src/framework/hooks/sdkTypes.js +67 -0
- package/dist/src/framework/hooks/sdkTypes.js.map +1 -0
- package/dist/src/framework/reference.d.ts +2 -0
- package/dist/src/framework/reference.d.ts.map +1 -0
- package/dist/src/framework/reference.js +8 -0
- package/dist/src/framework/reference.js.map +1 -0
- package/dist/src/framework/refkey.d.ts +7 -0
- package/dist/src/framework/refkey.d.ts.map +1 -0
- package/dist/src/framework/refkey.js +22 -0
- package/dist/src/framework/refkey.js.map +1 -0
- package/dist/src/framework/sample.d.ts +2 -0
- package/dist/src/framework/sample.d.ts.map +1 -0
- package/dist/src/framework/sample.js +71 -0
- package/dist/src/framework/sample.js.map +1 -0
- package/dist/src/framework/utils/tsmorph-helpers.d.ts +2 -0
- package/dist/src/framework/utils/tsmorph-helpers.d.ts.map +1 -0
- package/dist/src/framework/utils/tsmorph-helpers.js +2 -0
- package/dist/src/framework/utils/tsmorph-helpers.js.map +1 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +7 -8
- package/dist/src/index.js.map +1 -1
- package/dist/src/lib.d.ts +10 -1
- package/dist/src/lib.d.ts.map +1 -1
- package/dist/src/lib.js +6 -0
- package/dist/src/lib.js.map +1 -1
- package/dist/src/modular/buildClassicalClient.d.ts.map +1 -1
- package/dist/src/modular/buildClassicalClient.js +6 -5
- package/dist/src/modular/buildClassicalClient.js.map +1 -1
- package/dist/src/modular/buildClientContext.d.ts.map +1 -1
- package/dist/src/modular/buildClientContext.js +8 -4
- package/dist/src/modular/buildClientContext.js.map +1 -1
- package/dist/src/modular/buildCodeModel.d.ts.map +1 -1
- package/dist/src/modular/buildCodeModel.js +22 -11
- package/dist/src/modular/buildCodeModel.js.map +1 -1
- package/dist/src/modular/buildOperations.d.ts +1 -2
- package/dist/src/modular/buildOperations.d.ts.map +1 -1
- package/dist/src/modular/buildOperations.js +3 -9
- package/dist/src/modular/buildOperations.js.map +1 -1
- package/dist/src/modular/buildRootIndex.js +1 -1
- package/dist/src/modular/buildRootIndex.js.map +1 -1
- package/dist/src/modular/buildSerializeUtils.d.ts.map +1 -1
- package/dist/src/modular/buildSerializeUtils.js +2 -1
- package/dist/src/modular/buildSerializeUtils.js.map +1 -1
- package/dist/src/modular/helpers/clientHelpers.d.ts +4 -0
- package/dist/src/modular/helpers/clientHelpers.d.ts.map +1 -1
- package/dist/src/modular/helpers/clientHelpers.js +15 -1
- package/dist/src/modular/helpers/clientHelpers.js.map +1 -1
- package/dist/src/modular/helpers/namingHelpers.d.ts +1 -0
- package/dist/src/modular/helpers/namingHelpers.d.ts.map +1 -1
- package/dist/src/modular/helpers/namingHelpers.js +3 -1
- package/dist/src/modular/helpers/namingHelpers.js.map +1 -1
- package/dist/src/modular/helpers/operationHelpers.d.ts.map +1 -1
- package/dist/src/modular/helpers/operationHelpers.js +60 -40
- package/dist/src/modular/helpers/operationHelpers.js.map +1 -1
- package/dist/src/modular/helpers/typeHelpers.d.ts.map +1 -1
- package/dist/src/modular/helpers/typeHelpers.js +6 -1
- package/dist/src/modular/helpers/typeHelpers.js.map +1 -1
- package/dist/src/modular/modularCodeModel.d.ts +2 -0
- package/dist/src/modular/modularCodeModel.d.ts.map +1 -1
- package/dist/src/transform/transformApiVersionInfo.d.ts.map +1 -1
- package/dist/src/transform/transformApiVersionInfo.js +3 -5
- package/dist/src/transform/transformApiVersionInfo.js.map +1 -1
- package/dist/src/transform/transformHelperFunctionDetails.d.ts.map +1 -1
- package/dist/src/transform/transformHelperFunctionDetails.js +7 -10
- package/dist/src/transform/transformHelperFunctionDetails.js.map +1 -1
- package/dist/src/transform/transformParameters.d.ts.map +1 -1
- package/dist/src/transform/transformParameters.js +5 -7
- package/dist/src/transform/transformParameters.js.map +1 -1
- package/dist/src/transform/transformPaths.d.ts.map +1 -1
- package/dist/src/transform/transformPaths.js +4 -6
- package/dist/src/transform/transformPaths.js.map +1 -1
- package/dist/src/transform/transformResponses.d.ts.map +1 -1
- package/dist/src/transform/transformResponses.js +70 -16
- package/dist/src/transform/transformResponses.js.map +1 -1
- package/dist/src/transform/transformSchemas.d.ts.map +1 -1
- package/dist/src/transform/transformSchemas.js +5 -6
- package/dist/src/transform/transformSchemas.js.map +1 -1
- package/dist/src/transform/transformTelemetryInfo.d.ts.map +1 -1
- package/dist/src/transform/transformTelemetryInfo.js +3 -6
- package/dist/src/transform/transformTelemetryInfo.js.map +1 -1
- package/dist/src/transform/transfromRLCOptions.d.ts.map +1 -1
- package/dist/src/transform/transfromRLCOptions.js +5 -6
- package/dist/src/transform/transfromRLCOptions.js.map +1 -1
- package/dist/src/utils/modelUtils.d.ts +3 -3
- package/dist/src/utils/modelUtils.d.ts.map +1 -1
- package/dist/src/utils/modelUtils.js +42 -24
- package/dist/src/utils/modelUtils.js.map +1 -1
- package/dist/src/utils/operationUtil.d.ts +2 -2
- package/dist/src/utils/operationUtil.d.ts.map +1 -1
- package/dist/src/utils/operationUtil.js +5 -7
- package/dist/src/utils/operationUtil.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +23 -23
- package/src/contextManager.ts +4 -0
- package/src/framework/declaration.ts +100 -0
- package/src/framework/hooks/binder.ts +259 -0
- package/src/framework/hooks/sdkTypes.ts +101 -0
- package/src/framework/reference.ts +9 -0
- package/src/framework/refkey.ts +28 -0
- package/src/framework/sample.ts +92 -0
- package/src/framework/utils/tsmorph-helpers.ts +0 -0
- package/src/index.ts +8 -10
- package/src/lib.ts +6 -0
- package/src/modular/buildClassicalClient.ts +11 -4
- package/src/modular/buildClientContext.ts +11 -5
- package/src/modular/buildCodeModel.ts +25 -21
- package/src/modular/buildOperations.ts +13 -41
- package/src/modular/buildRootIndex.ts +1 -1
- package/src/modular/buildSerializeUtils.ts +2 -1
- package/src/modular/helpers/clientHelpers.ts +25 -1
- package/src/modular/helpers/namingHelpers.ts +4 -1
- package/src/modular/helpers/operationHelpers.ts +86 -45
- package/src/modular/helpers/typeHelpers.ts +6 -1
- package/src/modular/modularCodeModel.ts +2 -0
- package/src/transform/transformApiVersionInfo.ts +3 -6
- package/src/transform/transformHelperFunctionDetails.ts +9 -9
- package/src/transform/transformParameters.ts +5 -6
- package/src/transform/transformPaths.ts +5 -9
- package/src/transform/transformResponses.ts +92 -19
- package/src/transform/transformSchemas.ts +6 -5
- package/src/transform/transformTelemetryInfo.ts +3 -5
- package/src/transform/transfromRLCOptions.ts +5 -10
- package/src/utils/modelUtils.ts +49 -39
- package/src/utils/operationUtil.ts +6 -12
- package/dist/src/modular/serialization/collectionUtils.d.ts +0 -3
- package/dist/src/modular/serialization/collectionUtils.d.ts.map +0 -1
- package/dist/src/modular/serialization/collectionUtils.js +0 -17
- package/dist/src/modular/serialization/collectionUtils.js.map +0 -1
- package/dist/src/modular/serialization/index.d.ts +0 -5
- package/dist/src/modular/serialization/index.d.ts.map +0 -1
- package/dist/src/modular/serialization/index.js +0 -155
- package/dist/src/modular/serialization/index.js.map +0 -1
- package/dist/src/modular/serialization/operationHelpers.d.ts +0 -37
- package/dist/src/modular/serialization/operationHelpers.d.ts.map +0 -1
- package/dist/src/modular/serialization/operationHelpers.js +0 -457
- package/dist/src/modular/serialization/operationHelpers.js.map +0 -1
- package/dist/src/modular/serialization/serializeArray.d.ts +0 -5
- package/dist/src/modular/serialization/serializeArray.d.ts.map +0 -1
- package/dist/src/modular/serialization/serializeArray.js +0 -33
- package/dist/src/modular/serialization/serializeArray.js.map +0 -1
- package/dist/src/modular/serialization/serializeDateTime.d.ts +0 -4
- package/dist/src/modular/serialization/serializeDateTime.d.ts.map +0 -1
- package/dist/src/modular/serialization/serializeDateTime.js +0 -19
- package/dist/src/modular/serialization/serializeDateTime.js.map +0 -1
- package/dist/src/modular/serialization/serializeHeaders.d.ts +0 -7
- package/dist/src/modular/serialization/serializeHeaders.d.ts.map +0 -1
- package/dist/src/modular/serialization/serializeHeaders.js +0 -44
- package/dist/src/modular/serialization/serializeHeaders.js.map +0 -1
- package/dist/src/modular/serialization/serializers.d.ts +0 -17
- package/dist/src/modular/serialization/serializers.d.ts.map +0 -1
- package/dist/src/modular/serialization/serializers.js +0 -175
- package/dist/src/modular/serialization/serializers.js.map +0 -1
- package/dist/src/modular/serialization/util.d.ts +0 -27
- package/dist/src/modular/serialization/util.d.ts.map +0 -1
- package/dist/src/modular/serialization/util.js +0 -115
- package/dist/src/modular/serialization/util.js.map +0 -1
- package/dist/src/reify/index.d.ts +0 -12
- package/dist/src/reify/index.d.ts.map +0 -1
- package/dist/src/reify/index.js +0 -22
- package/dist/src/reify/index.js.map +0 -1
- package/src/modular/serialization/collectionUtils.ts +0 -20
- package/src/modular/serialization/index.ts +0 -267
- package/src/modular/serialization/operationHelpers.ts +0 -659
- package/src/modular/serialization/serializeArray.ts +0 -51
- package/src/modular/serialization/serializeDateTime.ts +0 -22
- package/src/modular/serialization/serializeHeaders.ts +0 -64
- package/src/modular/serialization/serializers.ts +0 -304
- package/src/modular/serialization/util.ts +0 -171
- package/src/modular/static/karma.conf.cjs +0 -120
- package/src/reify/index.ts +0 -41
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { pascalCase, NameType, normalizeName } from "@azure-tools/rlc-common";
|
|
2
|
-
import { listOperationGroups, listOperationsInOperationGroup } from "@azure-tools/typespec-client-generator-core";
|
|
3
|
-
import { getDoc,
|
|
4
|
-
import { getAuthentication
|
|
2
|
+
import { getHttpOperationWithCache, listOperationGroups, listOperationsInOperationGroup } from "@azure-tools/typespec-client-generator-core";
|
|
3
|
+
import { getDoc, NoTarget } from "@typespec/compiler";
|
|
4
|
+
import { getAuthentication } from "@typespec/http";
|
|
5
5
|
import { reportDiagnostic } from "../lib.js";
|
|
6
6
|
import { getRLCClients } from "../utils/clientUtils.js";
|
|
7
7
|
import { getDefaultService } from "../utils/modelUtils.js";
|
|
@@ -142,13 +142,12 @@ function getHierarchyClient(emitterOptions) {
|
|
|
142
142
|
}
|
|
143
143
|
function detectIfNameConflicts(dpgContext) {
|
|
144
144
|
const clients = getRLCClients(dpgContext);
|
|
145
|
-
const program = dpgContext.program;
|
|
146
145
|
for (const client of clients) {
|
|
147
146
|
// only consider it's conflict when there are conflicts in the same client
|
|
148
147
|
const nameSet = new Set();
|
|
149
148
|
const clientOperations = listOperationsInOperationGroup(dpgContext, client);
|
|
150
149
|
for (const clientOp of clientOperations) {
|
|
151
|
-
const route =
|
|
150
|
+
const route = getHttpOperationWithCache(dpgContext, clientOp);
|
|
152
151
|
const name = getOperationName(dpgContext, route.operation);
|
|
153
152
|
if (nameSet.has(name)) {
|
|
154
153
|
return true;
|
|
@@ -161,7 +160,7 @@ function detectIfNameConflicts(dpgContext) {
|
|
|
161
160
|
for (const operationGroup of operationGroups) {
|
|
162
161
|
const operations = listOperationsInOperationGroup(dpgContext, operationGroup);
|
|
163
162
|
for (const op of operations) {
|
|
164
|
-
const route =
|
|
163
|
+
const route = getHttpOperationWithCache(dpgContext, op);
|
|
165
164
|
const name = getOperationName(dpgContext, route.operation);
|
|
166
165
|
if (nameSet.has(name)) {
|
|
167
166
|
return true;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transfromRLCOptions.js","sourceRoot":"","sources":["../../../src/transform/transfromRLCOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,QAAQ,EACR,aAAa,EAKd,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,mBAAmB,EACnB,8BAA8B,EAC/B,MAAM,6CAA6C,CAAC;AACrD,OAAO,
|
|
1
|
+
{"version":3,"file":"transfromRLCOptions.js","sourceRoot":"","sources":["../../../src/transform/transfromRLCOptions.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,17 +4,17 @@ import { HttpOperation } from "@typespec/http";
|
|
|
4
4
|
import { GetSchemaOptions, SdkContext } from "./interfaces.js";
|
|
5
5
|
export declare const BINARY_TYPE_UNION = "string | Uint8Array | ReadableStream<Uint8Array> | NodeJS.ReadableStream";
|
|
6
6
|
export declare const BINARY_AND_FILE_TYPE_UNION = "string | Uint8Array | ReadableStream<Uint8Array> | NodeJS.ReadableStream | File";
|
|
7
|
-
export declare function getBinaryType(usage: SchemaContext[]): "
|
|
7
|
+
export declare function getBinaryType(usage: SchemaContext[]): "string | Uint8Array | ReadableStream<Uint8Array> | NodeJS.ReadableStream" | "Uint8Array";
|
|
8
8
|
export declare function isByteOrByteUnion(dpgContext: SdkContext, type: Type): boolean;
|
|
9
9
|
export declare function enrichBinaryTypeInBody(schema: any): any;
|
|
10
10
|
export declare function getSchemaForType(dpgContext: SdkContext, typeInput: Type, options?: GetSchemaOptions): any;
|
|
11
|
-
export declare function getEffectiveModelFromType(
|
|
11
|
+
export declare function getEffectiveModelFromType(context: SdkContext, type: Type): Type;
|
|
12
12
|
export declare function includeDerivedModel(model: Model, needRef?: boolean): boolean;
|
|
13
13
|
export declare function getTypeName(schema: Schema, usage?: SchemaContext[]): string;
|
|
14
14
|
export declare function getSerializeTypeName(program: Program, schema: Schema, usage?: SchemaContext[]): string;
|
|
15
15
|
export declare function getImportedModelName(schema: Schema, usage?: SchemaContext[]): string[];
|
|
16
16
|
export declare function getFormattedPropertyDoc(program: Program, type: ModelProperty | Type, schemaType: any, sperator?: string): string | undefined;
|
|
17
|
-
export declare function getBodyType(
|
|
17
|
+
export declare function getBodyType(route: HttpOperation): Type | undefined;
|
|
18
18
|
/**
|
|
19
19
|
* Predict if the default value exists in param, we would follow the rules:
|
|
20
20
|
* 1. If we have specific default literal in param
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modelUtils.d.ts","sourceRoot":"","sources":["../../../src/utils/modelUtils.ts"],"names":[],"mappings":"AAGA,OAAO,EAML,YAAY,EACZ,MAAM,EACN,aAAa,EACd,MAAM,yBAAyB,CAAC;AAUjC,OAAO,EA+BL,KAAK,EACL,aAAa,EAGb,OAAO,EAEP,OAAO,EAEP,IAAI,EACJ,KAAK,EAGN,MAAM,oBAAoB,CAAC;AAC5B,OAAO,
|
|
1
|
+
{"version":3,"file":"modelUtils.d.ts","sourceRoot":"","sources":["../../../src/utils/modelUtils.ts"],"names":[],"mappings":"AAGA,OAAO,EAML,YAAY,EACZ,MAAM,EACN,aAAa,EACd,MAAM,yBAAyB,CAAC;AAUjC,OAAO,EA+BL,KAAK,EACL,aAAa,EAGb,OAAO,EAEP,OAAO,EAEP,IAAI,EACJ,KAAK,EAGN,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAIL,aAAa,EAEd,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAS/D,eAAO,MAAM,iBAAiB,6EAC8C,CAAC;AAE7E,eAAO,MAAM,0BAA0B,oFAAgC,CAAC;AAExE,wBAAgB,aAAa,CAAC,KAAK,EAAE,aAAa,EAAE,6FAInD;AAED,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,WAGnE;AA8BD,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,GAAG,OAkBjD;AAED,wBAAgB,gBAAgB,CAC9B,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,IAAI,EACf,OAAO,CAAC,EAAE,gBAAgB,OA4F3B;AACD,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,UAAU,EACnB,IAAI,EAAE,IAAI,GACT,IAAI,CAcN;AACD,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,KAAK,EACZ,OAAO,GAAE,OAAe,GACvB,OAAO,CAST;AA4jCD,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,aAAa,EAAE,GAAG,MAAM,CAG3E;AAED,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,MAAM,EACd,KAAK,CAAC,EAAE,aAAa,EAAE,GACtB,MAAM,CA0BR;AAED,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,EACd,KAAK,CAAC,EAAE,aAAa,EAAE,GACtB,MAAM,EAAE,CAoDV;AAoDD,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,aAAa,GAAG,IAAI,EAC1B,UAAU,EAAE,GAAG,EACf,QAAQ,GAAE,MAAe,sBAW1B;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,GAAG,SAAS,CAGlE;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,UAAU,EACtB,KAAK,CAAC,EAAE,aAAa,yCAmBtB;AAoBD,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,GAAG,SAAS,CAevE;AACD;;GAEG;AACH,wBAAgB,0BAA0B,CACxC,UAAU,EAAE,UAAU,GACrB,MAAM,GAAG,SAAS,CAKpB;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,GAAG,OAanC;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,IAAI,uCAM3D;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,IAAI,GAAG,OAAO,CAYxE;AAGD,wBAAgB,kBAAkB,CAAC,CAAC,CAAC,EAAE,IAAI,GAAG,OAAO,CAIpD;AAeD,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,WAErD;AAGD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,IAAI,WAK9C;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,YAAY,EACpB,OAAO,GAAE;IACP,cAAc,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC7B,KAAK,CAAC,EAAE,aAAa,EAAE,CAAC;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;CAChB,UAgCP;AA4CD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,aAAa,GACtB,OAAO,CAMT;AAED,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,KAAK,GAAG,KAAK,GAClB,KAAK,CAyBP"}
|
|
@@ -4,7 +4,7 @@ import { isArraySchema, NameType, normalizeName, SchemaContext } from "@azure-to
|
|
|
4
4
|
import { getPagedResult, getUnionAsEnum } from "@azure-tools/typespec-azure-core";
|
|
5
5
|
import { getDefaultApiVersion, getWireName, isApiVersion } from "@azure-tools/typespec-client-generator-core";
|
|
6
6
|
import { getDiscriminator, getDoc, getEffectiveModelType, getEncode, getFormat, getFriendlyName, getMaxLength, getMaxValue, getMinLength, getMinValue, getPattern, getProperty, getPropertyType, getSummary, getVisibility, isArrayModelType, isNeverType, isNullType, isNumericType, isRecordModelType, isSecret, isStringType, isTemplateDeclaration, isUnknownType, listServices, NoTarget, isType } from "@typespec/compiler";
|
|
7
|
-
import {
|
|
7
|
+
import { getHeaderFieldName, getPathParamName, getQueryParamName, isStatusCode } from "@typespec/http";
|
|
8
8
|
import { reportDiagnostic } from "../lib.js";
|
|
9
9
|
import { hasMediaType, isMediaTypeMultipartFormData, KnownMediaType } from "./mediaTypes.js";
|
|
10
10
|
import { getModelNamespaceName } from "./namespaceUtils.js";
|
|
@@ -67,7 +67,7 @@ export function getSchemaForType(dpgContext, typeInput, options) {
|
|
|
67
67
|
var _a, _b, _c, _d;
|
|
68
68
|
const program = dpgContext.program;
|
|
69
69
|
const { usage } = options !== null && options !== void 0 ? options : {};
|
|
70
|
-
const type = getEffectiveModelFromType(
|
|
70
|
+
const type = getEffectiveModelFromType(dpgContext, typeInput);
|
|
71
71
|
const builtinType = getSchemaForLiteral(type);
|
|
72
72
|
if (builtinType !== undefined) {
|
|
73
73
|
// add in description elements for types derived from primitive types (SecureString, etc.)
|
|
@@ -157,13 +157,13 @@ export function getSchemaForType(dpgContext, typeInput, options) {
|
|
|
157
157
|
});
|
|
158
158
|
return undefined;
|
|
159
159
|
}
|
|
160
|
-
export function getEffectiveModelFromType(
|
|
160
|
+
export function getEffectiveModelFromType(context, type) {
|
|
161
161
|
/**
|
|
162
162
|
* If type is an anonymous model, tries to find a named model that has the same
|
|
163
163
|
* set of properties when non-schema properties are excluded.
|
|
164
164
|
*/
|
|
165
165
|
if (type.kind === "Model" && type.name === "") {
|
|
166
|
-
const effective = getEffectiveModelType(program, type, (property) => isSchemaProperty(program, property));
|
|
166
|
+
const effective = getEffectiveModelType(context.program, type, (property) => isSchemaProperty(context.program, property));
|
|
167
167
|
if (effective.name) {
|
|
168
168
|
return effective;
|
|
169
169
|
}
|
|
@@ -255,30 +255,43 @@ function getSchemaForUnion(dpgContext, union, options) {
|
|
|
255
255
|
var _a;
|
|
256
256
|
const [asEnum, _] = getUnionAsEnum(union);
|
|
257
257
|
const variants = Array.from(union.variants.values());
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
values.push(getSchemaForType(dpgContext, variant.type, { ...options, needRef: false }));
|
|
262
|
-
}
|
|
263
|
-
if (asEnum === null || asEnum === void 0 ? void 0 : asEnum.open) {
|
|
264
|
-
values = [];
|
|
258
|
+
const values = [];
|
|
259
|
+
let namedUnionMember = false;
|
|
260
|
+
if ((asEnum === null || asEnum === void 0 ? void 0 : asEnum.open) && asEnum.members.size > 0) {
|
|
265
261
|
for (const [_, member] of asEnum.members.entries()) {
|
|
266
|
-
|
|
262
|
+
const memberType = getSchemaForType(dpgContext, member.type, {
|
|
267
263
|
...options,
|
|
268
264
|
needRef: false
|
|
269
|
-
})
|
|
265
|
+
});
|
|
266
|
+
values.push(memberType);
|
|
267
|
+
if (memberType.name) {
|
|
268
|
+
namedUnionMember = true;
|
|
269
|
+
}
|
|
270
|
+
}
|
|
271
|
+
}
|
|
272
|
+
else {
|
|
273
|
+
for (const variant of variants) {
|
|
274
|
+
// We already know it's not a model type
|
|
275
|
+
const variantType = getSchemaForType(dpgContext, variant.type, {
|
|
276
|
+
...options,
|
|
277
|
+
needRef: false
|
|
278
|
+
});
|
|
279
|
+
values.push(variantType);
|
|
280
|
+
if (variantType.typeName) {
|
|
281
|
+
namedUnionMember = true;
|
|
282
|
+
}
|
|
270
283
|
}
|
|
271
284
|
}
|
|
272
285
|
const schema = {};
|
|
273
286
|
if (values.length > 0) {
|
|
274
287
|
schema.enum = values;
|
|
275
|
-
const unionAlias = (asEnum === null || asEnum === void 0 ? void 0 : asEnum.open) && (asEnum === null || asEnum === void 0 ? void 0 : asEnum.kind)
|
|
276
|
-
? asEnum.kind
|
|
288
|
+
const unionAlias = (asEnum === null || asEnum === void 0 ? void 0 : asEnum.open) && (asEnum === null || asEnum === void 0 ? void 0 : asEnum.kind) && !namedUnionMember
|
|
289
|
+
? asEnum.kind + (asEnum.nullable ? " | null" : "")
|
|
277
290
|
: values
|
|
278
291
|
.map((item) => { var _a; return `${(_a = getTypeName(item, [SchemaContext.Input])) !== null && _a !== void 0 ? _a : item}`; })
|
|
279
292
|
.join(" | ");
|
|
280
|
-
const outputUnionAlias = (asEnum === null || asEnum === void 0 ? void 0 : asEnum.open) && (asEnum === null || asEnum === void 0 ? void 0 : asEnum.kind)
|
|
281
|
-
? asEnum.kind
|
|
293
|
+
const outputUnionAlias = (asEnum === null || asEnum === void 0 ? void 0 : asEnum.open) && (asEnum === null || asEnum === void 0 ? void 0 : asEnum.kind) && !namedUnionMember
|
|
294
|
+
? asEnum.kind + (asEnum.nullable ? " | null" : "")
|
|
282
295
|
: values
|
|
283
296
|
.map((item) => { var _a; return `${(_a = getTypeName(item, [SchemaContext.Output])) !== null && _a !== void 0 ? _a : item}`; })
|
|
284
297
|
.join(" | ");
|
|
@@ -589,6 +602,9 @@ function getSchemaForModel(dpgContext, model, options) {
|
|
|
589
602
|
if (!prop.optional) {
|
|
590
603
|
propSchema.required = true;
|
|
591
604
|
}
|
|
605
|
+
if (name === '"propBoolean"') {
|
|
606
|
+
prop;
|
|
607
|
+
}
|
|
592
608
|
const propertyDescription = getFormattedPropertyDoc(program, prop, propSchema);
|
|
593
609
|
propSchema.usage = usage;
|
|
594
610
|
// Use the description from ModelProperty not derived from Model Type
|
|
@@ -1174,7 +1190,14 @@ function getPriorityName(schema, usage) {
|
|
|
1174
1190
|
: (_c = (_b = schema.outputTypeName) !== null && _b !== void 0 ? _b : schema.typeName) !== null && _c !== void 0 ? _c : schema.name;
|
|
1175
1191
|
}
|
|
1176
1192
|
function getEnumStringDescription(type) {
|
|
1177
|
-
if (type.name === "string"
|
|
1193
|
+
if ((type.name === "string" ||
|
|
1194
|
+
type.alias === "string" ||
|
|
1195
|
+
type.name === "number" ||
|
|
1196
|
+
type.alias === "number" ||
|
|
1197
|
+
type.name === "boolean" ||
|
|
1198
|
+
type.alias === "boolean") &&
|
|
1199
|
+
type.enum &&
|
|
1200
|
+
type.enum.length > 0) {
|
|
1178
1201
|
return `Possible values: ${type.enum
|
|
1179
1202
|
.map((e) => {
|
|
1180
1203
|
return e.type;
|
|
@@ -1211,14 +1234,9 @@ export function getFormattedPropertyDoc(program, type, schemaType, sperator = "\
|
|
|
1211
1234
|
}
|
|
1212
1235
|
return propertyDoc !== null && propertyDoc !== void 0 ? propertyDoc : enhancedDocFromType;
|
|
1213
1236
|
}
|
|
1214
|
-
export function getBodyType(
|
|
1237
|
+
export function getBodyType(route) {
|
|
1215
1238
|
var _a;
|
|
1216
1239
|
const bodyModel = (_a = route.parameters.body) === null || _a === void 0 ? void 0 : _a.type;
|
|
1217
|
-
if (bodyModel) {
|
|
1218
|
-
const metadataInfo = createMetadataInfo(program);
|
|
1219
|
-
const payloadType = metadataInfo.getEffectivePayloadType(bodyModel, Visibility.All);
|
|
1220
|
-
return payloadType;
|
|
1221
|
-
}
|
|
1222
1240
|
return bodyModel;
|
|
1223
1241
|
}
|
|
1224
1242
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modelUtils.js","sourceRoot":"","sources":["../../../src/utils/modelUtils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"modelUtils.js","sourceRoot":"","sources":["../../../src/utils/modelUtils.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,8 +18,8 @@ export declare function getOperationStatuscode(response: HttpOperationResponse):
|
|
|
18
18
|
export declare function getOperationGroupName(dpgContext: SdkContext, route?: HttpOperation): string;
|
|
19
19
|
export declare function getOperationGroupName(dpgContext: SdkContext, operation?: Operation): string;
|
|
20
20
|
export declare function getOperationName(dpgContext: SdkContext, operation: Operation): string;
|
|
21
|
-
export declare function isDefaultStatusCode(statusCodes: HttpStatusCodesEntry):
|
|
22
|
-
export declare function isDefinedStatusCode(statusCodes: HttpStatusCodesEntry):
|
|
21
|
+
export declare function isDefaultStatusCode(statusCodes: HttpStatusCodesEntry): statusCodes is "*";
|
|
22
|
+
export declare function isDefinedStatusCode(statusCodes: HttpStatusCodesEntry): statusCodes is number | import("@typespec/http").HttpStatusCodeRange;
|
|
23
23
|
export declare function isBinaryPayload(dpgContext: SdkContext, body: Type, contentType: string | string[]): boolean;
|
|
24
24
|
export declare function isLongRunningOperation(program: Program, operation: HttpOperation): boolean;
|
|
25
25
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"operationUtil.d.ts","sourceRoot":"","sources":["../../../src/utils/operationUtil.ts"],"names":[],"mappings":"AAGA,OAAO,EAKL,kBAAkB,EAGlB,KAAK,EACL,gBAAgB,EAChB,aAAa,EACd,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAGL,mBAAmB,EACpB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,
|
|
1
|
+
{"version":3,"file":"operationUtil.d.ts","sourceRoot":"","sources":["../../../src/utils/operationUtil.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,9 +2,7 @@
|
|
|
2
2
|
// Licensed under the MIT License.
|
|
3
3
|
import { getLroLogicalResponseName, getResponseTypeName, NameType, normalizeName, OPERATION_LRO_HIGH_PRIORITY, OPERATION_LRO_LOW_PRIORITY } from "@azure-tools/rlc-common";
|
|
4
4
|
import { getLroMetadata, getPagedResult } from "@azure-tools/typespec-azure-core";
|
|
5
|
-
import { getWireName, listOperationGroups, listOperationsInOperationGroup } from "@azure-tools/typespec-client-generator-core";
|
|
6
|
-
import { ignoreDiagnostics } from "@typespec/compiler";
|
|
7
|
-
import { getHttpOperation } from "@typespec/http";
|
|
5
|
+
import { getHttpOperationWithCache, getWireName, listOperationGroups, listOperationsInOperationGroup } from "@azure-tools/typespec-client-generator-core";
|
|
8
6
|
import { KnownMediaType, knownMediaType } from "./mediaTypes.js";
|
|
9
7
|
import { isByteOrByteUnion } from "./modelUtils.js";
|
|
10
8
|
import { getOperationNamespaceInterfaceName } from "./namespaceUtils.js";
|
|
@@ -195,7 +193,7 @@ export function hasPollingOperations(client, dpgContext) {
|
|
|
195
193
|
const program = dpgContext.program;
|
|
196
194
|
const clientOperations = listOperationsInOperationGroup(dpgContext, client);
|
|
197
195
|
for (const clientOp of clientOperations) {
|
|
198
|
-
const route =
|
|
196
|
+
const route = getHttpOperationWithCache(dpgContext, clientOp);
|
|
199
197
|
// ignore overload base operation
|
|
200
198
|
if (route.overloads && ((_a = route.overloads) === null || _a === void 0 ? void 0 : _a.length) > 0) {
|
|
201
199
|
continue;
|
|
@@ -208,7 +206,7 @@ export function hasPollingOperations(client, dpgContext) {
|
|
|
208
206
|
for (const operationGroup of operationGroups) {
|
|
209
207
|
const operations = listOperationsInOperationGroup(dpgContext, operationGroup);
|
|
210
208
|
for (const op of operations) {
|
|
211
|
-
const route =
|
|
209
|
+
const route = getHttpOperationWithCache(dpgContext, op);
|
|
212
210
|
// ignore overload base operation
|
|
213
211
|
if (route.overloads && ((_b = route.overloads) === null || _b === void 0 ? void 0 : _b.length) > 0) {
|
|
214
212
|
continue;
|
|
@@ -234,7 +232,7 @@ export function hasPagingOperations(client, dpgContext) {
|
|
|
234
232
|
const program = dpgContext.program;
|
|
235
233
|
const clientOperations = listOperationsInOperationGroup(dpgContext, client);
|
|
236
234
|
for (const clientOp of clientOperations) {
|
|
237
|
-
const route =
|
|
235
|
+
const route = getHttpOperationWithCache(dpgContext, clientOp);
|
|
238
236
|
// ignore overload base operation
|
|
239
237
|
if (route.overloads && ((_a = route.overloads) === null || _a === void 0 ? void 0 : _a.length) > 0) {
|
|
240
238
|
continue;
|
|
@@ -247,7 +245,7 @@ export function hasPagingOperations(client, dpgContext) {
|
|
|
247
245
|
for (const operationGroup of operationGroups) {
|
|
248
246
|
const operations = listOperationsInOperationGroup(dpgContext, operationGroup);
|
|
249
247
|
for (const op of operations) {
|
|
250
|
-
const route =
|
|
248
|
+
const route = getHttpOperationWithCache(dpgContext, op);
|
|
251
249
|
// ignore overload base operation
|
|
252
250
|
if (route.overloads && ((_b = route.overloads) === null || _b === void 0 ? void 0 : _b.length) > 0) {
|
|
253
251
|
continue;
|