@typespec/http-client-csharp 0.1.9-alpha.20240730.2 → 0.1.9-alpha.20240731.1
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/dist/emitter/lib/client-model-builder.d.ts +0 -2
- package/dist/emitter/lib/client-model-builder.d.ts.map +1 -1
- package/dist/emitter/lib/client-model-builder.js +116 -162
- package/dist/emitter/lib/client-model-builder.js.map +1 -1
- package/dist/emitter/lib/converter.js +9 -4
- package/dist/emitter/lib/converter.js.map +1 -1
- package/dist/emitter/lib/operation.d.ts +5 -5
- package/dist/emitter/lib/operation.d.ts.map +1 -1
- package/dist/emitter/lib/operation.js +235 -245
- package/dist/emitter/lib/operation.js.map +1 -1
- package/dist/emitter/lib/service-authentication.d.ts +2 -2
- package/dist/emitter/lib/service-authentication.d.ts.map +1 -1
- package/dist/emitter/lib/service-authentication.js +74 -43
- package/dist/emitter/lib/service-authentication.js.map +1 -1
- package/dist/emitter/lib/utils.js.map +1 -1
- package/dist/generator/Microsoft.Generator.CSharp.ClientModel.StubLibrary.dll +0 -0
- package/dist/generator/Microsoft.Generator.CSharp.ClientModel.StubLibrary.pdb +0 -0
- package/dist/generator/Microsoft.Generator.CSharp.ClientModel.dll +0 -0
- package/dist/generator/Microsoft.Generator.CSharp.ClientModel.pdb +0 -0
- package/dist/generator/Microsoft.Generator.CSharp.Customization.dll +0 -0
- package/dist/generator/Microsoft.Generator.CSharp.Customization.pdb +0 -0
- package/dist/generator/Microsoft.Generator.CSharp.Input.dll +0 -0
- package/dist/generator/Microsoft.Generator.CSharp.Input.pdb +0 -0
- package/dist/generator/Microsoft.Generator.CSharp.dll +0 -0
- package/dist/generator/Microsoft.Generator.CSharp.pdb +0 -0
- package/package.json +1 -1
|
@@ -1,53 +1,84 @@
|
|
|
1
1
|
// Copyright (c) Microsoft Corporation. All rights reserved.
|
|
2
2
|
// Licensed under the MIT License. See License.txt in the project root for license information.
|
|
3
3
|
import { Logger } from "./logger.js";
|
|
4
|
-
export function processServiceAuthentication(
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
4
|
+
export function processServiceAuthentication(sdkPackage) {
|
|
5
|
+
let authClientParameter = undefined;
|
|
6
|
+
for (const client of sdkPackage.clients) {
|
|
7
|
+
for (const parameter of client.initialization.properties) {
|
|
8
|
+
if (parameter.kind === "credential") {
|
|
9
|
+
authClientParameter = parameter;
|
|
10
|
+
break;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
if (!authClientParameter) {
|
|
15
|
+
return undefined;
|
|
16
|
+
}
|
|
17
|
+
if (authClientParameter.type.kind === "credential") {
|
|
18
|
+
return processAuthType(authClientParameter.type);
|
|
19
|
+
}
|
|
20
|
+
const inputAuth = {};
|
|
21
|
+
for (const authType of authClientParameter.type.values) {
|
|
22
|
+
// TODO: TCGC might change to []SdkCredentialType
|
|
23
|
+
const auth = processAuthType(authType);
|
|
24
|
+
if (auth?.ApiKey) {
|
|
25
|
+
inputAuth.ApiKey = auth.ApiKey;
|
|
26
|
+
}
|
|
27
|
+
if (auth?.OAuth2) {
|
|
28
|
+
inputAuth.OAuth2 = auth.OAuth2;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
return inputAuth;
|
|
32
|
+
}
|
|
33
|
+
function processAuthType(credentialType) {
|
|
34
|
+
const scheme = credentialType.scheme;
|
|
35
|
+
switch (scheme.type) {
|
|
36
|
+
case "apiKey":
|
|
37
|
+
return { ApiKey: { Name: scheme.name } };
|
|
38
|
+
case "oauth2":
|
|
39
|
+
return processOAuth2(scheme);
|
|
40
|
+
case "http":
|
|
41
|
+
{
|
|
42
|
+
const schemeOrApiKeyPrefix = scheme.scheme;
|
|
43
|
+
switch (schemeOrApiKeyPrefix) {
|
|
44
|
+
case "basic":
|
|
45
|
+
Logger.getInstance().warn(`${schemeOrApiKeyPrefix} auth method is currently not supported.`);
|
|
46
|
+
return undefined;
|
|
47
|
+
case "bearer":
|
|
48
|
+
return {
|
|
49
|
+
ApiKey: {
|
|
50
|
+
Name: "Authorization",
|
|
51
|
+
Prefix: "Bearer",
|
|
52
|
+
},
|
|
32
53
|
};
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
54
|
+
default:
|
|
55
|
+
return {
|
|
56
|
+
ApiKey: {
|
|
57
|
+
Name: "Authorization",
|
|
58
|
+
Prefix: schemeOrApiKeyPrefix,
|
|
59
|
+
},
|
|
38
60
|
};
|
|
39
|
-
|
|
40
|
-
break;
|
|
41
|
-
default:
|
|
42
|
-
throw new Error("Not supported authentication.");
|
|
61
|
+
}
|
|
43
62
|
}
|
|
44
|
-
|
|
63
|
+
break;
|
|
64
|
+
default:
|
|
65
|
+
throw new Error(`un-supported authentication scheme ${scheme.type}`);
|
|
45
66
|
}
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
67
|
+
}
|
|
68
|
+
function processOAuth2(scheme) {
|
|
69
|
+
let scopes = undefined;
|
|
70
|
+
for (const flow of scheme.flows) {
|
|
71
|
+
if (flow.scopes) {
|
|
72
|
+
scopes ??= new Set();
|
|
73
|
+
for (const scope of flow.scopes) {
|
|
74
|
+
scopes.add(scope.value);
|
|
75
|
+
}
|
|
76
|
+
}
|
|
50
77
|
}
|
|
51
|
-
return
|
|
78
|
+
return scopes
|
|
79
|
+
? {
|
|
80
|
+
OAuth2: { Scopes: Array.from(scopes.values()) },
|
|
81
|
+
}
|
|
82
|
+
: undefined;
|
|
52
83
|
}
|
|
53
84
|
//# sourceMappingURL=service-authentication.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service-authentication.js","sourceRoot":"","sources":["../../../emitter/src/lib/service-authentication.ts"],"names":[],"mappings":"AAAA,4DAA4D;AAC5D,+FAA+F;
|
|
1
|
+
{"version":3,"file":"service-authentication.js","sourceRoot":"","sources":["../../../emitter/src/lib/service-authentication.ts"],"names":[],"mappings":"AAAA,4DAA4D;AAC5D,+FAA+F;AAU/F,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,MAAM,UAAU,4BAA4B,CAC1C,UAAwC;IAExC,IAAI,mBAAmB,GAAuC,SAAS,CAAC;IACxE,KAAK,MAAM,MAAM,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;QACxC,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,cAAc,CAAC,UAAU,EAAE,CAAC;YACzD,IAAI,SAAS,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBACpC,mBAAmB,GAAG,SAAS,CAAC;gBAChC,MAAM;YACR,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACzB,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,mBAAmB,CAAC,IAAI,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;QACnD,OAAO,eAAe,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACnD,CAAC;IACD,MAAM,SAAS,GAAc,EAAE,CAAC;IAChC,KAAK,MAAM,QAAQ,IAAI,mBAAmB,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACvD,iDAAiD;QACjD,MAAM,IAAI,GAAG,eAAe,CAAC,QAA6B,CAAC,CAAC;QAC5D,IAAI,IAAI,EAAE,MAAM,EAAE,CAAC;YACjB,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QACjC,CAAC;QACD,IAAI,IAAI,EAAE,MAAM,EAAE,CAAC;YACjB,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QACjC,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,eAAe,CAAC,cAAiC;IACxD,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC;IACrC,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;QACpB,KAAK,QAAQ;YACX,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,EAAe,CAAC;QACxD,KAAK,QAAQ;YACX,OAAO,aAAa,CAAC,MAAM,CAAC,CAAC;QAC/B,KAAK,MAAM;YACT,CAAC;gBACC,MAAM,oBAAoB,GAAG,MAAM,CAAC,MAAM,CAAC;gBAC3C,QAAQ,oBAAoB,EAAE,CAAC;oBAC7B,KAAK,OAAO;wBACV,MAAM,CAAC,WAAW,EAAE,CAAC,IAAI,CACvB,GAAG,oBAAoB,0CAA0C,CAClE,CAAC;wBACF,OAAO,SAAS,CAAC;oBACnB,KAAK,QAAQ;wBACX,OAAO;4BACL,MAAM,EAAE;gCACN,IAAI,EAAE,eAAe;gCACrB,MAAM,EAAE,QAAQ;6BACjB;yBACW,CAAC;oBACjB;wBACE,OAAO;4BACL,MAAM,EAAE;gCACN,IAAI,EAAE,eAAe;gCACrB,MAAM,EAAE,oBAAoB;6BAC7B;yBACW,CAAC;gBACnB,CAAC;YACH,CAAC;YACD,MAAM;QACR;YACE,MAAM,IAAI,KAAK,CAAC,sCAAsC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;IACzE,CAAC;AACH,CAAC;AAED,SAAS,aAAa,CAAC,MAAgC;IACrD,IAAI,MAAM,GAA4B,SAAS,CAAC;IAChD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QAChC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,MAAM,KAAK,IAAI,GAAG,EAAU,CAAC;YAC7B,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBAChC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC1B,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,MAAM;QACX,CAAC,CAAE;YACC,MAAM,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE;SAClC;QACjB,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../emitter/src/lib/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,cAAc,EACd,WAAW,GACZ,MAAM,6CAA6C,CAAC;AAGrD,OAAO,EAAE,2BAA2B,EAAE,MAAM,2CAA2C,CAAC;AAGxF,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAE9D,MAAM,UAAU,UAAU,CAAC,GAAW;IACpC,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,KAAY;IAC7C,IAAI,KAAK,CAAC,IAAI,KAAK,EAAE,IAAI,KAAK,CAAC,cAAc,IAAI,KAAK,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;QAC3E,OAAO,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAE,EAAY,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACzF,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,WAAW,CACzB,OAAmB,EACnB,IAAoE;IAEpE,MAAM,IAAI,GAAG,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC3C,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO;QAAE,OAAO,IAAI,CAAC;IACvC,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;QACvB,MAAM,YAAY,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAC9C,IAAI,YAAY,KAAK,EAAE,EAAE,CAAC;YACxB,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,EAAE,IAAa,CAAC,CAAC;YACrD,OAAO,QAAQ,CAAC,IAAI,CAAC;QACvB,CAAC;QACD,OAAO,YAAY,CAAC;IACtB,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,kCAAkC,CAChD,UAAoB,EACpB,IAAY,EACZ,aAAqB;IAErB,MAAM,aAAa,GAAY,aAAa,CAAC,WAAW,EAAE,KAAK,cAAc,CAAC;IAC9E,MAAM,SAAS,GAAc;QAC3B,IAAI,EAAE,QAAQ;KACf,CAAC;IACF,OAAO;QACL,IAAI,EAAE,IAAI;QACV,aAAa,EAAE,aAAa;QAC5B,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,eAAe,CAAC,MAAM;QAChC,YAAY,EAAE,KAAK;QACnB,mBAAmB,EAAE,KAAK;QAC1B,aAAa,EAAE,aAAa;QAC5B,UAAU,EAAE,IAAI;QAChB,UAAU,EAAE,KAAK;QACjB,eAAe,EAAE,KAAK;QACtB,OAAO,EAAE,KAAK;QACd,IAAI,EAAE,2BAA2B,CAAC,QAAQ;QAC1C,YAAY,EACV,UAAU,CAAC,MAAM,KAAK,CAAC;YACrB,CAAC,CAAE;gBACC,IAAI,EAAE,SAAS;gBACf,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC;aACH;YACrB,CAAC,CAAC,SAAS;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../emitter/src/lib/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,cAAc,EACd,WAAW,GACZ,MAAM,6CAA6C,CAAC;AAGrD,OAAO,EAAE,2BAA2B,EAAE,MAAM,2CAA2C,CAAC;AAGxF,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAE9D,MAAM,UAAU,UAAU,CAAC,GAAW;IACpC,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,KAAY;IAC7C,IAAI,KAAK,CAAC,IAAI,KAAK,EAAE,IAAI,KAAK,CAAC,cAAc,IAAI,KAAK,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;QAC3E,OAAO,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAE,EAAY,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACzF,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,WAAW,CACzB,OAAmB,EACnB,IAAoE;IAEpE,MAAM,IAAI,GAAG,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC3C,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO;QAAE,OAAO,IAAI,CAAC;IACvC,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;QACvB,MAAM,YAAY,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAC9C,IAAI,YAAY,KAAK,EAAE,EAAE,CAAC;YACxB,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,EAAE,IAAa,CAAC,CAAC;YACrD,OAAO,QAAQ,CAAC,IAAI,CAAC;QACvB,CAAC;QACD,OAAO,YAAY,CAAC;IACtB,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,kCAAkC,CAChD,UAAoB,EACpB,IAAY,EACZ,aAAqB;IAErB,MAAM,aAAa,GAAY,aAAa,CAAC,WAAW,EAAE,KAAK,cAAc,CAAC;IAC9E,MAAM,SAAS,GAAc;QAC3B,IAAI,EAAE,QAAQ;KACf,CAAC;IACF,OAAO;QACL,IAAI,EAAE,IAAI;QACV,aAAa,EAAE,aAAa;QAC5B,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,eAAe,CAAC,MAAM;QAChC,YAAY,EAAE,KAAK;QACnB,mBAAmB,EAAE,KAAK;QAC1B,aAAa,EAAE,aAAa;QAC5B,UAAU,EAAE,IAAI;QAChB,UAAU,EAAE,KAAK;QACjB,eAAe,EAAE,KAAK;QACtB,OAAO,EAAE,KAAK;QACd,IAAI,EAAE,2BAA2B,CAAC,QAAQ;QAC1C,YAAY,EACV,UAAU,CAAC,MAAM,KAAK,CAAC;YACrB,CAAC,CAAE;gBACC,IAAI,EAAE,SAAS;gBACf,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC;aACH;YACrB,CAAC,CAAC,SAAS;KAChB,CAAC;AACJ,CAAC"}
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@typespec/http-client-csharp",
|
|
3
|
-
"version": "0.1.9-alpha.
|
|
3
|
+
"version": "0.1.9-alpha.20240731.1",
|
|
4
4
|
"author": "Microsoft Corporation",
|
|
5
5
|
"description": "The typespec library that can be used to generate C# models from a TypeSpec REST protocol binding",
|
|
6
6
|
"homepage": "https://github.com/Microsoft/typespec",
|