@azure-typespec/http-client-csharp-mgmt 1.0.0-alpha.20251224.1 → 1.0.0-alpha.20251228.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/emitter.js +1 -1
- package/dist/emitter/emitter.js.map +1 -1
- package/dist/emitter/options.d.ts +1 -0
- package/dist/emitter/options.d.ts.map +1 -1
- package/dist/emitter/options.js +6 -0
- package/dist/emitter/options.js.map +1 -1
- package/dist/emitter/resolve-arm-resources-converter.d.ts +38 -0
- package/dist/emitter/resolve-arm-resources-converter.d.ts.map +1 -0
- package/dist/emitter/resolve-arm-resources-converter.js +373 -0
- package/dist/emitter/resolve-arm-resources-converter.js.map +1 -0
- package/dist/emitter/resource-detection.d.ts +3 -2
- package/dist/emitter/resource-detection.d.ts.map +1 -1
- package/dist/emitter/resource-detection.js +137 -140
- package/dist/emitter/resource-detection.js.map +1 -1
- package/dist/generator/Azure.Generator.Management.deps.json +2 -2
- package/dist/generator/Azure.Generator.Management.dll +0 -0
- package/dist/generator/Azure.Generator.Management.pdb +0 -0
- package/dist/generator/net10.0/Azure.Generator.Management.deps.json +2 -2
- package/dist/generator/net10.0/Azure.Generator.Management.dll +0 -0
- package/dist/generator/net10.0/Azure.Generator.Management.pdb +0 -0
- package/package.json +1 -1
package/dist/emitter/emitter.js
CHANGED
|
@@ -11,7 +11,7 @@ export async function $onEmit(context) {
|
|
|
11
11
|
context.options["model-namespace"] ??= true;
|
|
12
12
|
await $onAzureEmit(context);
|
|
13
13
|
function updateCodeModel(codeModel, sdkContext) {
|
|
14
|
-
updateClients(codeModel, sdkContext);
|
|
14
|
+
updateClients(codeModel, sdkContext, context.options);
|
|
15
15
|
setFlattenProperty(codeModel, sdkContext);
|
|
16
16
|
return codeModel;
|
|
17
17
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emitter.js","sourceRoot":"","sources":["../../emitter/src/emitter.ts"],"names":[],"mappings":"AAAA,4DAA4D;AAC5D,+FAA+F;AAM/F,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,EACL,sBAAsB,EACtB,wBAAwB,EACzB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAIxD,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,OAA6C;IACzE,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,2BAA2B,CAAC;IAClE,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC,GAAG,eAAe,CAAC;IACvD,OAAO,CAAC,OAAO,CAAC,wBAAwB,CAAC,KAAK,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;IAC9D,OAAO,CAAC,OAAO,CAAC,qBAAqB,CAAC,KAAK,sBAAsB,CAAC;IAClE,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;IAC5C,MAAM,YAAY,CAAC,OAAO,CAAC,CAAC;IAE5B,SAAS,eAAe,CACtB,SAAoB,EACpB,UAAgC;QAEhC,aAAa,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"emitter.js","sourceRoot":"","sources":["../../emitter/src/emitter.ts"],"names":[],"mappings":"AAAA,4DAA4D;AAC5D,+FAA+F;AAM/F,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,EACL,sBAAsB,EACtB,wBAAwB,EACzB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAIxD,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,OAA6C;IACzE,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,2BAA2B,CAAC;IAClE,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC,GAAG,eAAe,CAAC;IACvD,OAAO,CAAC,OAAO,CAAC,wBAAwB,CAAC,KAAK,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;IAC9D,OAAO,CAAC,OAAO,CAAC,qBAAqB,CAAC,KAAK,sBAAsB,CAAC;IAClE,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;IAC5C,MAAM,YAAY,CAAC,OAAO,CAAC,CAAC;IAE5B,SAAS,eAAe,CACtB,SAAoB,EACpB,UAAgC;QAEhC,aAAa,CAAC,SAAS,EAAE,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;QACtD,kBAAkB,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;QAC1C,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB,CACzB,SAAoB,EACpB,UAAgC;IAEhC,KAAK,MAAM,KAAK,IAAI,UAAU,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;QACjD,KAAK,MAAM,QAAQ,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YACxC,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACrB,MAAM,gCAAgC,GAAkB;oBACtD,IAAI,EAAE,wBAAwB;oBAC9B,SAAS,EAAE,EAAE;iBACd,CAAC;gBACF,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;YAC7D,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC"}
|
|
@@ -2,6 +2,7 @@ import { AzureEmitterOptions } from "@azure-typespec/http-client-csharp";
|
|
|
2
2
|
import { JSONSchemaType } from "@typespec/compiler";
|
|
3
3
|
export interface AzureMgmtEmitterOptions extends AzureEmitterOptions {
|
|
4
4
|
"enable-wire-path-attribute"?: boolean;
|
|
5
|
+
"use-legacy-resource-detection"?: boolean;
|
|
5
6
|
}
|
|
6
7
|
export declare const AzureMgmtEmitterOptionsSchema: JSONSchemaType<AzureMgmtEmitterOptions>;
|
|
7
8
|
//# sourceMappingURL=options.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../emitter/src/options.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,mBAAmB,EAEpB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,MAAM,WAAW,uBAAwB,SAAQ,mBAAmB;IAClE,4BAA4B,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../emitter/src/options.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,mBAAmB,EAEpB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,MAAM,WAAW,uBAAwB,SAAQ,mBAAmB;IAClE,4BAA4B,CAAC,EAAE,OAAO,CAAC;IACvC,+BAA+B,CAAC,EAAE,OAAO,CAAC;CAC3C;AAED,eAAO,MAAM,6BAA6B,EAAE,cAAc,CAAC,uBAAuB,CAqB/E,CAAC"}
|
package/dist/emitter/options.js
CHANGED
|
@@ -11,6 +11,12 @@ export const AzureMgmtEmitterOptionsSchema = {
|
|
|
11
11
|
nullable: true,
|
|
12
12
|
description: "Whether to enable the WirePathAttribute on model properties. The default value is 'false'.",
|
|
13
13
|
default: false
|
|
14
|
+
},
|
|
15
|
+
"use-legacy-resource-detection": {
|
|
16
|
+
type: "boolean",
|
|
17
|
+
nullable: true,
|
|
18
|
+
description: "Whether to use the legacy custom resource detection logic instead of the standardized resolveArmResources API from @azure-tools/typespec-azure-resource-manager. When true, uses the legacy logic. When false, uses the resolveArmResources API.",
|
|
19
|
+
default: true
|
|
14
20
|
}
|
|
15
21
|
}
|
|
16
22
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.js","sourceRoot":"","sources":["../../emitter/src/options.ts"],"names":[],"mappings":"AAAA,4DAA4D;AAC5D,+FAA+F;AAE/F,OAAO,EAEL,yBAAyB,EAC1B,MAAM,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"options.js","sourceRoot":"","sources":["../../emitter/src/options.ts"],"names":[],"mappings":"AAAA,4DAA4D;AAC5D,+FAA+F;AAE/F,OAAO,EAEL,yBAAyB,EAC1B,MAAM,oCAAoC,CAAC;AAQ5C,MAAM,CAAC,MAAM,6BAA6B,GACxC;IACE,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,UAAU,EAAE;QACV,GAAG,yBAAyB,CAAC,UAAU;QACvC,4BAA4B,EAAE;YAC5B,IAAI,EAAE,SAAS;YACf,QAAQ,EAAE,IAAI;YACd,WAAW,EACT,4FAA4F;YAC9F,OAAO,EAAE,KAAK;SACf;QACD,+BAA+B,EAAE;YAC/B,IAAI,EAAE,SAAS;YACf,QAAQ,EAAE,IAAI;YACd,WAAW,EACT,kPAAkP;YACpP,OAAO,EAAE,IAAI;SACd;KACF;CACF,CAAC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This module provides conversion functionality between the resolveArmResources API
|
|
3
|
+
* (from @azure-tools/typespec-azure-resource-manager) and our internal ArmProviderSchema format.
|
|
4
|
+
*
|
|
5
|
+
* The resolveArmResources API is a standardized way to extract ARM resource information
|
|
6
|
+
* from TypeSpec definitions. This converter transforms its output to match our existing
|
|
7
|
+
* schema structure used throughout the codebase.
|
|
8
|
+
*
|
|
9
|
+
* Key differences between the two formats:
|
|
10
|
+
* - resolveArmResources returns a Provider object with ResolvedResource entries
|
|
11
|
+
* - ArmProviderSchema uses ArmResourceSchema with ResourceMetadata
|
|
12
|
+
* - Operation categorization may differ between the two approaches
|
|
13
|
+
*
|
|
14
|
+
* Usage:
|
|
15
|
+
* ```typescript
|
|
16
|
+
* const schema = convertProviderToArmProviderSchema(program, sdkContext);
|
|
17
|
+
* ```
|
|
18
|
+
*
|
|
19
|
+
* Note: This is the first step towards migrating to use resolveArmResources.
|
|
20
|
+
* The converter is designed to maintain compatibility with existing code while
|
|
21
|
+
* allowing gradual migration to the standardized API.
|
|
22
|
+
*/
|
|
23
|
+
import { Program } from "@typespec/compiler";
|
|
24
|
+
import { ArmProviderSchema } from "./resource-metadata.js";
|
|
25
|
+
import { CSharpEmitterContext } from "@typespec/http-client-csharp";
|
|
26
|
+
/**
|
|
27
|
+
* Resolves ARM resources from TypeSpec definitions using the standard resolveArmResources API
|
|
28
|
+
* and returns them in our ArmProviderSchema format.
|
|
29
|
+
*
|
|
30
|
+
* This function wraps the standard resolveArmResources API from typespec-azure-resource-manager
|
|
31
|
+
* and converts the result to our internal schema format for compatibility with existing code.
|
|
32
|
+
*
|
|
33
|
+
* @param program - The TypeSpec program
|
|
34
|
+
* @param sdkContext - The emitter context to map models
|
|
35
|
+
* @returns The ARM provider schema in our expected format
|
|
36
|
+
*/
|
|
37
|
+
export declare function resolveArmResources(program: Program, sdkContext: CSharpEmitterContext): ArmProviderSchema;
|
|
38
|
+
//# sourceMappingURL=resolve-arm-resources-converter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolve-arm-resources-converter.d.ts","sourceRoot":"","sources":["../../emitter/src/resolve-arm-resources-converter.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,EAAE,OAAO,EAAa,MAAM,oBAAoB,CAAC;AAMxD,OAAO,EACL,iBAAiB,EAOlB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAKpE;;;;;;;;;;GAUG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,oBAAoB,GAC/B,iBAAiB,CAwJnB"}
|
|
@@ -0,0 +1,373 @@
|
|
|
1
|
+
// Copyright (c) Microsoft Corporation. All rights reserved.
|
|
2
|
+
// Licensed under the MIT License. See License.txt in the project root for license information.
|
|
3
|
+
import { resolveArmResources as resolveArmResourcesFromLibrary } from "@azure-tools/typespec-azure-resource-manager";
|
|
4
|
+
import { ResourceOperationKind, ResourceScope } from "./resource-metadata.js";
|
|
5
|
+
import { getCrossLanguageDefinitionId } from "@azure-tools/typespec-client-generator-core";
|
|
6
|
+
/**
|
|
7
|
+
* Resolves ARM resources from TypeSpec definitions using the standard resolveArmResources API
|
|
8
|
+
* and returns them in our ArmProviderSchema format.
|
|
9
|
+
*
|
|
10
|
+
* This function wraps the standard resolveArmResources API from typespec-azure-resource-manager
|
|
11
|
+
* and converts the result to our internal schema format for compatibility with existing code.
|
|
12
|
+
*
|
|
13
|
+
* @param program - The TypeSpec program
|
|
14
|
+
* @param sdkContext - The emitter context to map models
|
|
15
|
+
* @returns The ARM provider schema in our expected format
|
|
16
|
+
*/
|
|
17
|
+
export function resolveArmResources(program, sdkContext) {
|
|
18
|
+
const provider = resolveArmResourcesFromLibrary(program);
|
|
19
|
+
// Convert resources
|
|
20
|
+
const resources = [];
|
|
21
|
+
const processedResources = new Set();
|
|
22
|
+
const schemaToResolvedResource = new Map();
|
|
23
|
+
if (provider.resources) {
|
|
24
|
+
for (const resolvedResource of provider.resources) {
|
|
25
|
+
// Get the model from SDK context
|
|
26
|
+
const modelId = getCrossLanguageDefinitionId(sdkContext, resolvedResource.type);
|
|
27
|
+
if (!modelId) {
|
|
28
|
+
continue;
|
|
29
|
+
}
|
|
30
|
+
// Create a unique key for this resource to avoid duplicates
|
|
31
|
+
const resourceKey = `${modelId}|${resolvedResource.resourceInstancePath}`;
|
|
32
|
+
if (processedResources.has(resourceKey)) {
|
|
33
|
+
continue;
|
|
34
|
+
}
|
|
35
|
+
processedResources.add(resourceKey);
|
|
36
|
+
// Convert to our resource schema format
|
|
37
|
+
const metadata = convertResolvedResourceToMetadata(sdkContext, resolvedResource);
|
|
38
|
+
const resource = {
|
|
39
|
+
resourceModelId: modelId,
|
|
40
|
+
metadata
|
|
41
|
+
};
|
|
42
|
+
resources.push(resource);
|
|
43
|
+
schemaToResolvedResource.set(resource, resolvedResource);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
// Convert non-resource methods
|
|
47
|
+
const nonResourceMethods = [];
|
|
48
|
+
// after the parentResourceId and resource scopes are populated, we can reorganize the metadata that is missing resourceIdPattern
|
|
49
|
+
const validResources = resources.filter(r => r.metadata.resourceIdPattern !== "");
|
|
50
|
+
const incompleteResources = resources.filter(r => r.metadata.resourceIdPattern === "");
|
|
51
|
+
// now we populate parentResourceId in all resources. Incomplete resources are also handled here because when merging their methods into others, we need correct parentResourceId
|
|
52
|
+
const validResourceMap = new Map();
|
|
53
|
+
for (const resource of validResources) {
|
|
54
|
+
const resolved = schemaToResolvedResource.get(resource);
|
|
55
|
+
if (resolved) {
|
|
56
|
+
validResourceMap.set(resolved.resourceInstancePath, resource);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
for (const resource of resources) {
|
|
60
|
+
const resolved = schemaToResolvedResource.get(resource);
|
|
61
|
+
if (!resolved)
|
|
62
|
+
continue;
|
|
63
|
+
let parent = resolved.parent;
|
|
64
|
+
while (parent) {
|
|
65
|
+
// Check if this parent is a valid resource in our set
|
|
66
|
+
const parentResource = validResourceMap.get(parent.resourceInstancePath);
|
|
67
|
+
if (parentResource) {
|
|
68
|
+
resource.metadata.parentResourceId = parentResource.metadata.resourceIdPattern;
|
|
69
|
+
resource.metadata.parentResourceModelId = parentResource.resourceModelId;
|
|
70
|
+
break;
|
|
71
|
+
}
|
|
72
|
+
parent = parent.parent;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
// then we merge the methods in incomplete resources to their parents or siblings
|
|
76
|
+
for (const resource of incompleteResources) {
|
|
77
|
+
const metadata = resource.metadata;
|
|
78
|
+
let merged = false;
|
|
79
|
+
// First try to merge with parent if it exists
|
|
80
|
+
if (metadata.parentResourceModelId) {
|
|
81
|
+
const parent = validResources.find(r => r.resourceModelId === metadata.parentResourceModelId);
|
|
82
|
+
if (parent) {
|
|
83
|
+
parent.metadata.methods.push(...metadata.methods);
|
|
84
|
+
merged = true;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
if (!merged) {
|
|
88
|
+
// No parent or parent not found - try to find another entry for the same model
|
|
89
|
+
const sibling = validResources.find(r => r.resourceModelId === resource.resourceModelId);
|
|
90
|
+
if (sibling) {
|
|
91
|
+
sibling.metadata.methods.push(...metadata.methods);
|
|
92
|
+
merged = true;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
// If there's no parent and no other entry to merge with, treat all methods as non-resource methods
|
|
96
|
+
if (!merged) {
|
|
97
|
+
for (const method of metadata.methods) {
|
|
98
|
+
nonResourceMethods.push({
|
|
99
|
+
methodId: method.methodId,
|
|
100
|
+
operationPath: method.operationPath,
|
|
101
|
+
operationScope: method.operationScope
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
// populate the resourceScope for list operations
|
|
107
|
+
// first we find all the converted list operations
|
|
108
|
+
const listOperations = [];
|
|
109
|
+
for (const resource of validResources) {
|
|
110
|
+
for (const method of resource.metadata.methods) {
|
|
111
|
+
if (method.kind === ResourceOperationKind.List) {
|
|
112
|
+
listOperations.push(method);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
// then we gather all the resourceInstancePath for all resources as candidates
|
|
117
|
+
const resourceInstancePaths = validResources.map(r => r.metadata.resourceIdPattern.split('/').filter(s => s.length > 0));
|
|
118
|
+
// now we assign one of the most matched resourceInstancePath in above candidates to each list operation's resourceScope
|
|
119
|
+
for (const listOp of listOperations) {
|
|
120
|
+
const validCandidates = [];
|
|
121
|
+
const listOperationPathSegments = listOp.operationPath.split('/').filter(s => s.length > 0);
|
|
122
|
+
for (const candidatePath of resourceInstancePaths) {
|
|
123
|
+
if (canBeListResourceScope(listOperationPathSegments, candidatePath)) {
|
|
124
|
+
validCandidates.push(candidatePath);
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
// now we have a list of candidates that can be the resourceScope for this list.
|
|
128
|
+
// we take the longest as the resourceScope of this list
|
|
129
|
+
if (validCandidates.length > 0) {
|
|
130
|
+
validCandidates.sort((a, b) => b.length - a.length);
|
|
131
|
+
listOp.resourceScope = '/' + validCandidates[0].join('/');
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
if (provider.providerOperations) {
|
|
135
|
+
for (const operation of provider.providerOperations) {
|
|
136
|
+
// Get method ID from the operation
|
|
137
|
+
const methodId = getMethodIdFromOperation(sdkContext, operation.operation);
|
|
138
|
+
if (!methodId) {
|
|
139
|
+
continue;
|
|
140
|
+
}
|
|
141
|
+
nonResourceMethods.push({
|
|
142
|
+
methodId,
|
|
143
|
+
operationPath: operation.path,
|
|
144
|
+
// TODO: this is also temporary because resolveArmResources does not have the scope of a provider operation
|
|
145
|
+
operationScope: getOperationScopeFromPath(operation.path)
|
|
146
|
+
});
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
return {
|
|
150
|
+
resources: validResources,
|
|
151
|
+
nonResourceMethods
|
|
152
|
+
};
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* Converts a ResolvedResource to ResourceMetadata format
|
|
156
|
+
*/
|
|
157
|
+
function convertResolvedResourceToMetadata(sdkContext, resolvedResource) {
|
|
158
|
+
const methods = [];
|
|
159
|
+
const resourceScope = convertScopeToResourceScope(resolvedResource.scope);
|
|
160
|
+
let resourceIdPattern = "";
|
|
161
|
+
// Convert lifecycle operations
|
|
162
|
+
if (resolvedResource.operations.lifecycle) {
|
|
163
|
+
const lifecycle = resolvedResource.operations.lifecycle;
|
|
164
|
+
if (lifecycle.read && lifecycle.read.length > 0) {
|
|
165
|
+
for (const readOp of lifecycle.read) {
|
|
166
|
+
const methodId = getMethodIdFromOperation(sdkContext, readOp.operation);
|
|
167
|
+
if (methodId) {
|
|
168
|
+
methods.push({
|
|
169
|
+
methodId,
|
|
170
|
+
kind: ResourceOperationKind.Read,
|
|
171
|
+
operationPath: readOp.path,
|
|
172
|
+
operationScope: resourceScope,
|
|
173
|
+
resourceScope: resolvedResource.resourceInstancePath
|
|
174
|
+
});
|
|
175
|
+
// Use the first read operation's path as the resource ID pattern
|
|
176
|
+
if (!resourceIdPattern) {
|
|
177
|
+
resourceIdPattern = readOp.path;
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
if (lifecycle.createOrUpdate && lifecycle.createOrUpdate.length > 0) {
|
|
183
|
+
for (const createOp of lifecycle.createOrUpdate) {
|
|
184
|
+
const methodId = getMethodIdFromOperation(sdkContext, createOp.operation);
|
|
185
|
+
if (methodId) {
|
|
186
|
+
methods.push({
|
|
187
|
+
methodId,
|
|
188
|
+
kind: ResourceOperationKind.Create,
|
|
189
|
+
operationPath: createOp.path,
|
|
190
|
+
operationScope: resourceScope,
|
|
191
|
+
resourceScope: resolvedResource.resourceInstancePath
|
|
192
|
+
});
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
if (lifecycle.update && lifecycle.update.length > 0) {
|
|
197
|
+
for (const updateOp of lifecycle.update) {
|
|
198
|
+
const methodId = getMethodIdFromOperation(sdkContext, updateOp.operation);
|
|
199
|
+
if (methodId) {
|
|
200
|
+
methods.push({
|
|
201
|
+
methodId,
|
|
202
|
+
kind: ResourceOperationKind.Update,
|
|
203
|
+
operationPath: updateOp.path,
|
|
204
|
+
operationScope: resourceScope,
|
|
205
|
+
resourceScope: resolvedResource.resourceInstancePath
|
|
206
|
+
});
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
if (lifecycle.delete && lifecycle.delete.length > 0) {
|
|
211
|
+
for (const deleteOp of lifecycle.delete) {
|
|
212
|
+
const methodId = getMethodIdFromOperation(sdkContext, deleteOp.operation);
|
|
213
|
+
if (methodId) {
|
|
214
|
+
methods.push({
|
|
215
|
+
methodId,
|
|
216
|
+
kind: ResourceOperationKind.Delete,
|
|
217
|
+
operationPath: deleteOp.path,
|
|
218
|
+
operationScope: resourceScope,
|
|
219
|
+
resourceScope: resolvedResource.resourceInstancePath
|
|
220
|
+
});
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
// Convert list operations
|
|
226
|
+
if (resolvedResource.operations.lists) {
|
|
227
|
+
for (const listOp of resolvedResource.operations.lists) {
|
|
228
|
+
const methodId = getMethodIdFromOperation(sdkContext, listOp.operation);
|
|
229
|
+
if (methodId) {
|
|
230
|
+
methods.push({
|
|
231
|
+
methodId,
|
|
232
|
+
kind: ResourceOperationKind.List,
|
|
233
|
+
operationPath: listOp.path,
|
|
234
|
+
// TODO: resolveArmResources is not returning the operation scope for list operations, so we calculate it from the path.
|
|
235
|
+
operationScope: getOperationScopeFromPath(listOp.path),
|
|
236
|
+
// TODO: resolveArmResources is not returning the resource scope for list operations, so this should be populated later.
|
|
237
|
+
resourceScope: undefined
|
|
238
|
+
});
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
// Convert action operations
|
|
243
|
+
if (resolvedResource.operations.actions) {
|
|
244
|
+
for (const actionOp of resolvedResource.operations.actions) {
|
|
245
|
+
const methodId = getMethodIdFromOperation(sdkContext, actionOp.operation);
|
|
246
|
+
if (methodId) {
|
|
247
|
+
methods.push({
|
|
248
|
+
methodId,
|
|
249
|
+
kind: ResourceOperationKind.Action,
|
|
250
|
+
operationPath: actionOp.path,
|
|
251
|
+
operationScope: resourceScope,
|
|
252
|
+
resourceScope: resolvedResource.resourceInstancePath
|
|
253
|
+
});
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
// Convert resource scope
|
|
258
|
+
const resourceScopeValue = convertScopeToResourceScope(resolvedResource.scope);
|
|
259
|
+
// Build resource type string
|
|
260
|
+
const resourceType = formatResourceType(resolvedResource.resourceType);
|
|
261
|
+
return {
|
|
262
|
+
// we only assign resourceIdPattern when this resource has a read operation, otherwise this is empty
|
|
263
|
+
resourceIdPattern: resourceIdPattern,
|
|
264
|
+
resourceType,
|
|
265
|
+
methods,
|
|
266
|
+
resourceScope: resourceScopeValue,
|
|
267
|
+
parentResourceId: undefined,
|
|
268
|
+
parentResourceModelId: undefined,
|
|
269
|
+
// TODO: Temporary - waiting for resolveArmResources API update to include singleton information
|
|
270
|
+
// Once the API includes this, we can remove this extraction logic
|
|
271
|
+
singletonResourceName: extractSingletonName(resolvedResource.resourceInstancePath),
|
|
272
|
+
resourceName: resolvedResource.resourceName
|
|
273
|
+
};
|
|
274
|
+
}
|
|
275
|
+
/**
|
|
276
|
+
* Get method ID (cross-language definition ID) from an Operation.
|
|
277
|
+
* Uses TCGC's getCrossLanguageDefinitionId utility directly.
|
|
278
|
+
*/
|
|
279
|
+
function getMethodIdFromOperation(sdkContext, operation) {
|
|
280
|
+
// Use TCGC's utility to get the cross-language definition ID directly
|
|
281
|
+
// CSharpEmitterContext extends SdkContext which extends TCGCContext
|
|
282
|
+
return getCrossLanguageDefinitionId(sdkContext, operation);
|
|
283
|
+
}
|
|
284
|
+
/**
|
|
285
|
+
* Convert scope string/object to ResourceScope enum
|
|
286
|
+
*/
|
|
287
|
+
function convertScopeToResourceScope(scope) {
|
|
288
|
+
if (!scope) {
|
|
289
|
+
// TODO: does it make sense that we have something without scope??
|
|
290
|
+
return ResourceScope.ResourceGroup; // Default
|
|
291
|
+
}
|
|
292
|
+
if (typeof scope === "string") {
|
|
293
|
+
switch (scope) {
|
|
294
|
+
case "Tenant":
|
|
295
|
+
return ResourceScope.Tenant;
|
|
296
|
+
case "Subscription":
|
|
297
|
+
return ResourceScope.Subscription;
|
|
298
|
+
case "ResourceGroup":
|
|
299
|
+
return ResourceScope.ResourceGroup;
|
|
300
|
+
case "ManagementGroup":
|
|
301
|
+
return ResourceScope.ManagementGroup;
|
|
302
|
+
case "Scope":
|
|
303
|
+
case "ExternalResource":
|
|
304
|
+
return ResourceScope.Extension;
|
|
305
|
+
default:
|
|
306
|
+
return ResourceScope.ResourceGroup;
|
|
307
|
+
}
|
|
308
|
+
}
|
|
309
|
+
// TODO: Schema update needed - when scope is a ResolvedResource (extension resource),
|
|
310
|
+
// our schema needs to support representing the specific parent resource, not just "Extension"
|
|
311
|
+
// If scope is a ResolvedResource, it's an extension resource
|
|
312
|
+
return ResourceScope.Extension;
|
|
313
|
+
}
|
|
314
|
+
/**
|
|
315
|
+
* Determine operation scope from path
|
|
316
|
+
*/
|
|
317
|
+
function getOperationScopeFromPath(path) {
|
|
318
|
+
if (path.startsWith("/{resourceUri}") || path.startsWith("/{scope}")) {
|
|
319
|
+
return ResourceScope.Extension;
|
|
320
|
+
}
|
|
321
|
+
else if (path.startsWith("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/")) {
|
|
322
|
+
return ResourceScope.ResourceGroup;
|
|
323
|
+
}
|
|
324
|
+
else if (path.startsWith("/subscriptions/{subscriptionId}/")) {
|
|
325
|
+
return ResourceScope.Subscription;
|
|
326
|
+
}
|
|
327
|
+
else if (path.startsWith("/providers/Microsoft.Management/managementGroups/{managementGroupId}/")) {
|
|
328
|
+
return ResourceScope.ManagementGroup;
|
|
329
|
+
}
|
|
330
|
+
return ResourceScope.Tenant;
|
|
331
|
+
}
|
|
332
|
+
/**
|
|
333
|
+
* Format ResourceType to a string
|
|
334
|
+
*/
|
|
335
|
+
function formatResourceType(resourceType) {
|
|
336
|
+
return `${resourceType.provider}/${resourceType.types.join("/")}`;
|
|
337
|
+
}
|
|
338
|
+
/**
|
|
339
|
+
* Extract singleton resource name from path if it exists
|
|
340
|
+
*/
|
|
341
|
+
function extractSingletonName(path) {
|
|
342
|
+
// Check if the path ends with a fixed string instead of a parameter
|
|
343
|
+
const segments = path.split("/").filter(s => s.length > 0);
|
|
344
|
+
const lastSegment = segments[segments.length - 1];
|
|
345
|
+
// If the last segment is not a parameter (doesn't start with {), it's a singleton
|
|
346
|
+
if (lastSegment && !lastSegment.startsWith("{")) {
|
|
347
|
+
return lastSegment;
|
|
348
|
+
}
|
|
349
|
+
return undefined;
|
|
350
|
+
}
|
|
351
|
+
function canBeListResourceScope(listPathSegments, resourceInstancePathSegments) {
|
|
352
|
+
// Check if resourceInstancePath is a prefix of listPath
|
|
353
|
+
if (listPathSegments.length < resourceInstancePathSegments.length) {
|
|
354
|
+
return false;
|
|
355
|
+
}
|
|
356
|
+
for (let i = 0; i < resourceInstancePathSegments.length; i++) {
|
|
357
|
+
// if both segments are variables, we consider it as a match
|
|
358
|
+
if (listPathSegments[i].startsWith("{") && resourceInstancePathSegments[i].startsWith("{")) {
|
|
359
|
+
continue;
|
|
360
|
+
}
|
|
361
|
+
// if one of them is a variable, the other is not, we consider it as not a match
|
|
362
|
+
if (listPathSegments[i].startsWith("{") || resourceInstancePathSegments[i].startsWith("{")) {
|
|
363
|
+
return false;
|
|
364
|
+
}
|
|
365
|
+
// both are fixed strings, they must match
|
|
366
|
+
if (listPathSegments[i] !== resourceInstancePathSegments[i]) {
|
|
367
|
+
return false;
|
|
368
|
+
}
|
|
369
|
+
}
|
|
370
|
+
// here it means every segment in listPath matches the corresponding segment in resourceInstancePath
|
|
371
|
+
return true;
|
|
372
|
+
}
|
|
373
|
+
//# sourceMappingURL=resolve-arm-resources-converter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolve-arm-resources-converter.js","sourceRoot":"","sources":["../../emitter/src/resolve-arm-resources-converter.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,14 +2,15 @@ import { CodeModel, CSharpEmitterContext, InputClient } from "@typespec/http-cli
|
|
|
2
2
|
import { ArmProviderSchema } from "./resource-metadata.js";
|
|
3
3
|
import { SdkClientType, SdkContext, SdkHttpOperation, SdkServiceOperation } from "@azure-tools/typespec-client-generator-core";
|
|
4
4
|
import { AzureEmitterOptions } from "@azure-typespec/http-client-csharp";
|
|
5
|
-
|
|
5
|
+
import { AzureMgmtEmitterOptions } from "./options.js";
|
|
6
|
+
export declare function updateClients(codeModel: CodeModel, sdkContext: CSharpEmitterContext, options: AzureMgmtEmitterOptions): Promise<void>;
|
|
6
7
|
/**
|
|
7
8
|
* Builds the ARM provider schema by detecting all resources and non-resource methods.
|
|
8
9
|
* This is the main function that gathers all ARM-related information from the code model
|
|
9
10
|
* and consolidates it into a unified ArmProviderSchema structure.
|
|
10
11
|
*
|
|
11
12
|
* This function is exported for testing purposes and can be called directly from tests
|
|
12
|
-
* to validate the schema structure.
|
|
13
|
+
* to validate the schema structure using the legacy custom resource detection logic.
|
|
13
14
|
*
|
|
14
15
|
* @param sdkContext - The emitter context
|
|
15
16
|
* @param codeModel - The code model to analyze
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resource-detection.d.ts","sourceRoot":"","sources":["../../emitter/src/resource-detection.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,SAAS,EACT,oBAAoB,EACpB,WAAW,EAEZ,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAOL,iBAAiB,EAGlB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAGL,aAAa,EACb,UAAU,EACV,gBAAgB,EAGhB,mBAAmB,EACpB,MAAM,6CAA6C,CAAC;AAwBrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AAEzE,wBAAsB,aAAa,CACjC,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,oBAAoB,
|
|
1
|
+
{"version":3,"file":"resource-detection.d.ts","sourceRoot":"","sources":["../../emitter/src/resource-detection.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,SAAS,EACT,oBAAoB,EACpB,WAAW,EAEZ,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAOL,iBAAiB,EAGlB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAGL,aAAa,EACb,UAAU,EACV,gBAAgB,EAGhB,mBAAmB,EACpB,MAAM,6CAA6C,CAAC;AAwBrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AAEzE,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAEvD,wBAAsB,aAAa,CACjC,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,oBAAoB,EAChC,OAAO,EAAE,uBAAuB,iBAQjC;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,oBAAoB,EAChC,SAAS,EAAE,SAAS,GACnB,iBAAiB,CA4UnB;AA8SD,wBAAgB,gBAAgB,CAC9B,UAAU,EAAE,UAAU,CAAC,mBAAmB,EAAE,gBAAgB,CAAC,GAC5D,aAAa,CAAC,mBAAmB,CAAC,EAAE,CAOtC;AAED,wBAAgB,aAAa,CAAC,SAAS,EAAE,SAAS,GAAG,WAAW,EAAE,CAOjE"}
|
|
@@ -5,9 +5,12 @@ import { getClientType } from "@azure-tools/typespec-client-generator-core";
|
|
|
5
5
|
import pluralize from "pluralize";
|
|
6
6
|
import { armProviderSchema, armResourceActionName, armResourceCreateOrUpdateName, armResourceDeleteName, armResourceInternal, armResourceListName, armResourceReadName, armResourceUpdateName, armResourceWithParameter, extensionResourceOperationName, legacyExtensionResourceOperationName, legacyResourceOperationName, builtInResourceOperationName, parentResourceName, readsResourceName, resourceGroupResource, singleton, subscriptionResource, tenantResource } from "./sdk-context-options.js";
|
|
7
7
|
import { NoTarget } from "@typespec/compiler";
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
8
|
+
import { resolveArmResources } from "./resolve-arm-resources-converter.js";
|
|
9
|
+
export async function updateClients(codeModel, sdkContext, options) {
|
|
10
|
+
// Check if the use-legacy-resource-detection flag is disabled (i.e., use new resolveArmResources API)
|
|
11
|
+
const armProviderSchema = options?.["use-legacy-resource-detection"] === false
|
|
12
|
+
? resolveArmResources(sdkContext.program, sdkContext)
|
|
13
|
+
: buildArmProviderSchema(sdkContext, codeModel);
|
|
11
14
|
applyArmProviderSchemaDecorator(codeModel, armProviderSchema);
|
|
12
15
|
}
|
|
13
16
|
/**
|
|
@@ -16,13 +19,14 @@ export async function updateClients(codeModel, sdkContext) {
|
|
|
16
19
|
* and consolidates it into a unified ArmProviderSchema structure.
|
|
17
20
|
*
|
|
18
21
|
* This function is exported for testing purposes and can be called directly from tests
|
|
19
|
-
* to validate the schema structure.
|
|
22
|
+
* to validate the schema structure using the legacy custom resource detection logic.
|
|
20
23
|
*
|
|
21
24
|
* @param sdkContext - The emitter context
|
|
22
25
|
* @param codeModel - The code model to analyze
|
|
23
26
|
* @returns The unified ARM provider schema containing all resources and non-resource methods
|
|
24
27
|
*/
|
|
25
28
|
export function buildArmProviderSchema(sdkContext, codeModel) {
|
|
29
|
+
// Use the existing custom resource detection logic
|
|
26
30
|
const serviceMethods = new Map(getAllSdkClients(sdkContext)
|
|
27
31
|
.flatMap((c) => c.methods)
|
|
28
32
|
.map((obj) => [obj.crossLanguageDefinitionId, obj]));
|
|
@@ -44,9 +48,10 @@ export function buildArmProviderSchema(sdkContext, codeModel) {
|
|
|
44
48
|
// Process methods in two passes to ensure CRUD operations establish resource paths first
|
|
45
49
|
// This allows non-CRUD operations (like List) to find existing resource paths regardless of operation order
|
|
46
50
|
// Helper function to process a method and add it to the resource metadata
|
|
51
|
+
// the method type uses any here because its real type `InputServiceMethod` is not exported by MTG's emitter
|
|
47
52
|
const processMethod = (client, method) => {
|
|
48
53
|
const serviceMethod = serviceMethods.get(method.crossLanguageDefinitionId);
|
|
49
|
-
const
|
|
54
|
+
const { kind, modelId, explicitResourceName } = parseResourceOperation(serviceMethod, sdkContext);
|
|
50
55
|
if (modelId && kind && resourceModelIds.has(modelId)) {
|
|
51
56
|
// Determine the resource path from the CRUD operation
|
|
52
57
|
let resourcePath = "";
|
|
@@ -128,16 +133,8 @@ export function buildArmProviderSchema(sdkContext, codeModel) {
|
|
|
128
133
|
entry.resourceIdPattern = method.operation.path;
|
|
129
134
|
}
|
|
130
135
|
}
|
|
131
|
-
else if (modelId && kind) {
|
|
132
|
-
// no resource model found for this modelId, treat as non-resource method
|
|
133
|
-
nonResourceMethods.set(method.crossLanguageDefinitionId, {
|
|
134
|
-
methodId: method.crossLanguageDefinitionId,
|
|
135
|
-
operationPath: method.operation.path,
|
|
136
|
-
operationScope: getOperationScope(method.operation.path)
|
|
137
|
-
});
|
|
138
|
-
}
|
|
139
136
|
else {
|
|
140
|
-
// we
|
|
137
|
+
// we treat this method as a non-resource method when it does not have a kind or an associated resource model
|
|
141
138
|
nonResourceMethods.set(method.crossLanguageDefinitionId, {
|
|
142
139
|
methodId: method.crossLanguageDefinitionId,
|
|
143
140
|
operationPath: method.operation.path,
|
|
@@ -149,7 +146,7 @@ export function buildArmProviderSchema(sdkContext, codeModel) {
|
|
|
149
146
|
for (const client of clients) {
|
|
150
147
|
for (const method of client.methods) {
|
|
151
148
|
const serviceMethod = serviceMethods.get(method.crossLanguageDefinitionId);
|
|
152
|
-
const
|
|
149
|
+
const { kind } = parseResourceOperation(serviceMethod, sdkContext);
|
|
153
150
|
// Only process CRUD operations in the first pass
|
|
154
151
|
if (kind && isCRUDKind(kind)) {
|
|
155
152
|
processMethod(client, method);
|
|
@@ -160,7 +157,7 @@ export function buildArmProviderSchema(sdkContext, codeModel) {
|
|
|
160
157
|
for (const client of clients) {
|
|
161
158
|
for (const method of client.methods) {
|
|
162
159
|
const serviceMethod = serviceMethods.get(method.crossLanguageDefinitionId);
|
|
163
|
-
const
|
|
160
|
+
const { kind } = parseResourceOperation(serviceMethod, sdkContext);
|
|
164
161
|
// Only process non-CRUD operations in the second pass
|
|
165
162
|
if (kind && !isCRUDKind(kind)) {
|
|
166
163
|
processMethod(client, method);
|
|
@@ -195,7 +192,7 @@ export function buildArmProviderSchema(sdkContext, codeModel) {
|
|
|
195
192
|
for (const [otherKey, otherMetadata] of resourcePathToMetadataMap) {
|
|
196
193
|
if (otherKey !== metadataKey && otherMetadata.resourceIdPattern) {
|
|
197
194
|
// Check if this resource's path starts with the other resource's path
|
|
198
|
-
// e.g., "/providers/MgmtTypeSpec/bestPractices/{name}/versions/{versionName}"
|
|
195
|
+
// e.g., "/providers/MgmtTypeSpec/bestPractices/{name}/versions/{versionName}"
|
|
199
196
|
// is a child of "/providers/MgmtTypeSpec/bestPractices/{name}"
|
|
200
197
|
const thisPath = metadata.resourceIdPattern;
|
|
201
198
|
const potentialParentPath = otherMetadata.resourceIdPattern;
|
|
@@ -319,166 +316,166 @@ function parseResourceOperation(serviceMethod, sdkContext) {
|
|
|
319
316
|
switch (decorator.definition?.name) {
|
|
320
317
|
case readsResourceName:
|
|
321
318
|
case armResourceReadName:
|
|
322
|
-
return
|
|
323
|
-
ResourceOperationKind.Read,
|
|
324
|
-
getResourceModelId(sdkContext, decorator),
|
|
325
|
-
undefined // No explicit resource name for ARM operations
|
|
326
|
-
|
|
319
|
+
return {
|
|
320
|
+
kind: ResourceOperationKind.Read,
|
|
321
|
+
modelId: getResourceModelId(sdkContext, decorator),
|
|
322
|
+
explicitResourceName: undefined // No explicit resource name for ARM operations
|
|
323
|
+
};
|
|
327
324
|
case armResourceCreateOrUpdateName:
|
|
328
|
-
return
|
|
329
|
-
ResourceOperationKind.Create,
|
|
330
|
-
getResourceModelId(sdkContext, decorator),
|
|
331
|
-
undefined
|
|
332
|
-
|
|
325
|
+
return {
|
|
326
|
+
kind: ResourceOperationKind.Create,
|
|
327
|
+
modelId: getResourceModelId(sdkContext, decorator),
|
|
328
|
+
explicitResourceName: undefined
|
|
329
|
+
};
|
|
333
330
|
case armResourceUpdateName:
|
|
334
|
-
return
|
|
335
|
-
ResourceOperationKind.Update,
|
|
336
|
-
getResourceModelId(sdkContext, decorator),
|
|
337
|
-
undefined
|
|
338
|
-
|
|
331
|
+
return {
|
|
332
|
+
kind: ResourceOperationKind.Update,
|
|
333
|
+
modelId: getResourceModelId(sdkContext, decorator),
|
|
334
|
+
explicitResourceName: undefined
|
|
335
|
+
};
|
|
339
336
|
case armResourceDeleteName:
|
|
340
|
-
return
|
|
341
|
-
ResourceOperationKind.Delete,
|
|
342
|
-
getResourceModelId(sdkContext, decorator),
|
|
343
|
-
undefined
|
|
344
|
-
|
|
337
|
+
return {
|
|
338
|
+
kind: ResourceOperationKind.Delete,
|
|
339
|
+
modelId: getResourceModelId(sdkContext, decorator),
|
|
340
|
+
explicitResourceName: undefined
|
|
341
|
+
};
|
|
345
342
|
case armResourceListName:
|
|
346
|
-
return
|
|
347
|
-
ResourceOperationKind.List,
|
|
348
|
-
getResourceModelId(sdkContext, decorator),
|
|
349
|
-
undefined
|
|
350
|
-
|
|
343
|
+
return {
|
|
344
|
+
kind: ResourceOperationKind.List,
|
|
345
|
+
modelId: getResourceModelId(sdkContext, decorator),
|
|
346
|
+
explicitResourceName: undefined
|
|
347
|
+
};
|
|
351
348
|
case armResourceActionName:
|
|
352
|
-
return
|
|
353
|
-
ResourceOperationKind.Action,
|
|
354
|
-
getResourceModelId(sdkContext, decorator),
|
|
355
|
-
undefined
|
|
356
|
-
|
|
349
|
+
return {
|
|
350
|
+
kind: ResourceOperationKind.Action,
|
|
351
|
+
modelId: getResourceModelId(sdkContext, decorator),
|
|
352
|
+
explicitResourceName: undefined
|
|
353
|
+
};
|
|
357
354
|
case extensionResourceOperationName:
|
|
358
355
|
switch (decorator.args[2].jsValue) {
|
|
359
356
|
case "read":
|
|
360
|
-
return
|
|
361
|
-
ResourceOperationKind.Read,
|
|
362
|
-
getResourceModelIdCore(sdkContext, decorator.args[1].value, decorator.definition?.name),
|
|
363
|
-
undefined
|
|
364
|
-
|
|
357
|
+
return {
|
|
358
|
+
kind: ResourceOperationKind.Read,
|
|
359
|
+
modelId: getResourceModelIdCore(sdkContext, decorator.args[1].value, decorator.definition?.name),
|
|
360
|
+
explicitResourceName: undefined
|
|
361
|
+
};
|
|
365
362
|
case "createOrUpdate":
|
|
366
|
-
return
|
|
367
|
-
ResourceOperationKind.Create,
|
|
368
|
-
getResourceModelIdCore(sdkContext, decorator.args[1].value, decorator.definition?.name),
|
|
369
|
-
undefined
|
|
370
|
-
|
|
363
|
+
return {
|
|
364
|
+
kind: ResourceOperationKind.Create,
|
|
365
|
+
modelId: getResourceModelIdCore(sdkContext, decorator.args[1].value, decorator.definition?.name),
|
|
366
|
+
explicitResourceName: undefined
|
|
367
|
+
};
|
|
371
368
|
case "update":
|
|
372
|
-
return
|
|
373
|
-
ResourceOperationKind.Update,
|
|
374
|
-
getResourceModelIdCore(sdkContext, decorator.args[1].value, decorator.definition?.name),
|
|
375
|
-
undefined
|
|
376
|
-
|
|
369
|
+
return {
|
|
370
|
+
kind: ResourceOperationKind.Update,
|
|
371
|
+
modelId: getResourceModelIdCore(sdkContext, decorator.args[1].value, decorator.definition?.name),
|
|
372
|
+
explicitResourceName: undefined
|
|
373
|
+
};
|
|
377
374
|
case "delete":
|
|
378
|
-
return
|
|
379
|
-
ResourceOperationKind.Delete,
|
|
380
|
-
getResourceModelIdCore(sdkContext, decorator.args[1].value, decorator.definition?.name),
|
|
381
|
-
undefined
|
|
382
|
-
|
|
375
|
+
return {
|
|
376
|
+
kind: ResourceOperationKind.Delete,
|
|
377
|
+
modelId: getResourceModelIdCore(sdkContext, decorator.args[1].value, decorator.definition?.name),
|
|
378
|
+
explicitResourceName: undefined
|
|
379
|
+
};
|
|
383
380
|
case "list":
|
|
384
|
-
return
|
|
385
|
-
ResourceOperationKind.List,
|
|
386
|
-
getResourceModelIdCore(sdkContext, decorator.args[1].value, decorator.definition?.name),
|
|
387
|
-
undefined
|
|
388
|
-
|
|
381
|
+
return {
|
|
382
|
+
kind: ResourceOperationKind.List,
|
|
383
|
+
modelId: getResourceModelIdCore(sdkContext, decorator.args[1].value, decorator.definition?.name),
|
|
384
|
+
explicitResourceName: undefined
|
|
385
|
+
};
|
|
389
386
|
case "action":
|
|
390
|
-
return
|
|
391
|
-
ResourceOperationKind.Action,
|
|
392
|
-
getResourceModelIdCore(sdkContext, decorator.args[1].value, decorator.definition?.name),
|
|
393
|
-
undefined
|
|
394
|
-
|
|
387
|
+
return {
|
|
388
|
+
kind: ResourceOperationKind.Action,
|
|
389
|
+
modelId: getResourceModelIdCore(sdkContext, decorator.args[1].value, decorator.definition?.name),
|
|
390
|
+
explicitResourceName: undefined
|
|
391
|
+
};
|
|
395
392
|
}
|
|
396
393
|
break;
|
|
397
394
|
case legacyExtensionResourceOperationName:
|
|
398
395
|
case legacyResourceOperationName:
|
|
399
396
|
switch (decorator.args[1].jsValue) {
|
|
400
397
|
case "read":
|
|
401
|
-
return
|
|
402
|
-
ResourceOperationKind.Read,
|
|
403
|
-
getResourceModelIdCore(sdkContext, decorator.args[0].value, decorator.definition?.name),
|
|
398
|
+
return {
|
|
399
|
+
kind: ResourceOperationKind.Read,
|
|
400
|
+
modelId: getResourceModelIdCore(sdkContext, decorator.args[0].value, decorator.definition?.name),
|
|
404
401
|
// Extract the explicit resource name if available (4th parameter in LegacyOperations)
|
|
405
|
-
decorator.args.length > 3 ? decorator.args[3].jsValue : undefined
|
|
406
|
-
|
|
402
|
+
explicitResourceName: decorator.args.length > 3 ? decorator.args[3].jsValue : undefined
|
|
403
|
+
};
|
|
407
404
|
case "createOrUpdate":
|
|
408
|
-
return
|
|
409
|
-
ResourceOperationKind.Create,
|
|
410
|
-
getResourceModelIdCore(sdkContext, decorator.args[0].value, decorator.definition?.name),
|
|
411
|
-
decorator.args.length > 3 ? decorator.args[3].jsValue : undefined
|
|
412
|
-
|
|
405
|
+
return {
|
|
406
|
+
kind: ResourceOperationKind.Create,
|
|
407
|
+
modelId: getResourceModelIdCore(sdkContext, decorator.args[0].value, decorator.definition?.name),
|
|
408
|
+
explicitResourceName: decorator.args.length > 3 ? decorator.args[3].jsValue : undefined
|
|
409
|
+
};
|
|
413
410
|
case "update":
|
|
414
|
-
return
|
|
415
|
-
ResourceOperationKind.Update,
|
|
416
|
-
getResourceModelIdCore(sdkContext, decorator.args[0].value, decorator.definition?.name),
|
|
417
|
-
decorator.args.length > 3 ? decorator.args[3].jsValue : undefined
|
|
418
|
-
|
|
411
|
+
return {
|
|
412
|
+
kind: ResourceOperationKind.Update,
|
|
413
|
+
modelId: getResourceModelIdCore(sdkContext, decorator.args[0].value, decorator.definition?.name),
|
|
414
|
+
explicitResourceName: decorator.args.length > 3 ? decorator.args[3].jsValue : undefined
|
|
415
|
+
};
|
|
419
416
|
case "delete":
|
|
420
|
-
return
|
|
421
|
-
ResourceOperationKind.Delete,
|
|
422
|
-
getResourceModelIdCore(sdkContext, decorator.args[0].value, decorator.definition?.name),
|
|
423
|
-
decorator.args.length > 3 ? decorator.args[3].jsValue : undefined
|
|
424
|
-
|
|
417
|
+
return {
|
|
418
|
+
kind: ResourceOperationKind.Delete,
|
|
419
|
+
modelId: getResourceModelIdCore(sdkContext, decorator.args[0].value, decorator.definition?.name),
|
|
420
|
+
explicitResourceName: decorator.args.length > 3 ? decorator.args[3].jsValue : undefined
|
|
421
|
+
};
|
|
425
422
|
case "list":
|
|
426
|
-
return
|
|
427
|
-
ResourceOperationKind.List,
|
|
428
|
-
getResourceModelIdCore(sdkContext, decorator.args[0].value, decorator.definition?.name),
|
|
429
|
-
decorator.args.length > 3 ? decorator.args[3].jsValue : undefined
|
|
430
|
-
|
|
423
|
+
return {
|
|
424
|
+
kind: ResourceOperationKind.List,
|
|
425
|
+
modelId: getResourceModelIdCore(sdkContext, decorator.args[0].value, decorator.definition?.name),
|
|
426
|
+
explicitResourceName: decorator.args.length > 3 ? decorator.args[3].jsValue : undefined
|
|
427
|
+
};
|
|
431
428
|
case "action":
|
|
432
|
-
return
|
|
433
|
-
ResourceOperationKind.Action,
|
|
434
|
-
getResourceModelIdCore(sdkContext, decorator.args[0].value, decorator.definition?.name),
|
|
435
|
-
decorator.args.length > 3 ? decorator.args[3].jsValue : undefined
|
|
436
|
-
|
|
429
|
+
return {
|
|
430
|
+
kind: ResourceOperationKind.Action,
|
|
431
|
+
modelId: getResourceModelIdCore(sdkContext, decorator.args[0].value, decorator.definition?.name),
|
|
432
|
+
explicitResourceName: decorator.args.length > 3 ? decorator.args[3].jsValue : undefined
|
|
433
|
+
};
|
|
437
434
|
}
|
|
438
|
-
return
|
|
435
|
+
return {};
|
|
439
436
|
case builtInResourceOperationName:
|
|
440
437
|
switch (decorator.args[2].jsValue) {
|
|
441
438
|
case "read":
|
|
442
|
-
return
|
|
443
|
-
ResourceOperationKind.Read,
|
|
444
|
-
getResourceModelIdCore(sdkContext, decorator.args[1].value, decorator.definition?.name),
|
|
445
|
-
undefined
|
|
446
|
-
|
|
439
|
+
return {
|
|
440
|
+
kind: ResourceOperationKind.Read,
|
|
441
|
+
modelId: getResourceModelIdCore(sdkContext, decorator.args[1].value, decorator.definition?.name),
|
|
442
|
+
explicitResourceName: undefined
|
|
443
|
+
};
|
|
447
444
|
case "createOrUpdate":
|
|
448
|
-
return
|
|
449
|
-
ResourceOperationKind.Create,
|
|
450
|
-
getResourceModelIdCore(sdkContext, decorator.args[1].value, decorator.definition?.name),
|
|
451
|
-
undefined
|
|
452
|
-
|
|
445
|
+
return {
|
|
446
|
+
kind: ResourceOperationKind.Create,
|
|
447
|
+
modelId: getResourceModelIdCore(sdkContext, decorator.args[1].value, decorator.definition?.name),
|
|
448
|
+
explicitResourceName: undefined
|
|
449
|
+
};
|
|
453
450
|
case "update":
|
|
454
|
-
return
|
|
455
|
-
ResourceOperationKind.Update,
|
|
456
|
-
getResourceModelIdCore(sdkContext, decorator.args[1].value, decorator.definition?.name),
|
|
457
|
-
undefined
|
|
458
|
-
|
|
451
|
+
return {
|
|
452
|
+
kind: ResourceOperationKind.Update,
|
|
453
|
+
modelId: getResourceModelIdCore(sdkContext, decorator.args[1].value, decorator.definition?.name),
|
|
454
|
+
explicitResourceName: undefined
|
|
455
|
+
};
|
|
459
456
|
case "delete":
|
|
460
|
-
return
|
|
461
|
-
ResourceOperationKind.Delete,
|
|
462
|
-
getResourceModelIdCore(sdkContext, decorator.args[1].value, decorator.definition?.name),
|
|
463
|
-
undefined
|
|
464
|
-
|
|
457
|
+
return {
|
|
458
|
+
kind: ResourceOperationKind.Delete,
|
|
459
|
+
modelId: getResourceModelIdCore(sdkContext, decorator.args[1].value, decorator.definition?.name),
|
|
460
|
+
explicitResourceName: undefined
|
|
461
|
+
};
|
|
465
462
|
case "list":
|
|
466
|
-
return
|
|
467
|
-
ResourceOperationKind.List,
|
|
468
|
-
getResourceModelIdCore(sdkContext, decorator.args[1].value, decorator.definition?.name),
|
|
469
|
-
undefined
|
|
470
|
-
|
|
463
|
+
return {
|
|
464
|
+
kind: ResourceOperationKind.List,
|
|
465
|
+
modelId: getResourceModelIdCore(sdkContext, decorator.args[1].value, decorator.definition?.name),
|
|
466
|
+
explicitResourceName: undefined
|
|
467
|
+
};
|
|
471
468
|
case "action":
|
|
472
|
-
return
|
|
473
|
-
ResourceOperationKind.Action,
|
|
474
|
-
getResourceModelIdCore(sdkContext, decorator.args[1].value, decorator.definition?.name),
|
|
475
|
-
undefined
|
|
476
|
-
|
|
469
|
+
return {
|
|
470
|
+
kind: ResourceOperationKind.Action,
|
|
471
|
+
modelId: getResourceModelIdCore(sdkContext, decorator.args[1].value, decorator.definition?.name),
|
|
472
|
+
explicitResourceName: undefined
|
|
473
|
+
};
|
|
477
474
|
}
|
|
478
|
-
return
|
|
475
|
+
return {};
|
|
479
476
|
}
|
|
480
477
|
}
|
|
481
|
-
return
|
|
478
|
+
return {};
|
|
482
479
|
}
|
|
483
480
|
function getParentResourceModelId(sdkContext, model) {
|
|
484
481
|
const decorators = model?.__raw?.decorators;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resource-detection.js","sourceRoot":"","sources":["../../emitter/src/resource-detection.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"resource-detection.js","sourceRoot":"","sources":["../../emitter/src/resource-detection.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
"compilationOptions": {},
|
|
7
7
|
"targets": {
|
|
8
8
|
".NETCoreApp,Version=v10.0": {
|
|
9
|
-
"Azure.Generator.Management/1.0.0-alpha.
|
|
9
|
+
"Azure.Generator.Management/1.0.0-alpha.20251228.1": {
|
|
10
10
|
"dependencies": {
|
|
11
11
|
"Azure.Core": "1.50.0",
|
|
12
12
|
"Azure.Generator": "1.0.0-alpha.20251215.3",
|
|
@@ -622,7 +622,7 @@
|
|
|
622
622
|
}
|
|
623
623
|
},
|
|
624
624
|
"libraries": {
|
|
625
|
-
"Azure.Generator.Management/1.0.0-alpha.
|
|
625
|
+
"Azure.Generator.Management/1.0.0-alpha.20251228.1": {
|
|
626
626
|
"type": "project",
|
|
627
627
|
"serviceable": false,
|
|
628
628
|
"sha512": ""
|
|
Binary file
|
|
Binary file
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
"compilationOptions": {},
|
|
7
7
|
"targets": {
|
|
8
8
|
".NETCoreApp,Version=v10.0": {
|
|
9
|
-
"Azure.Generator.Management/1.0.0-alpha.
|
|
9
|
+
"Azure.Generator.Management/1.0.0-alpha.20251228.1": {
|
|
10
10
|
"dependencies": {
|
|
11
11
|
"Azure.Core": "1.50.0",
|
|
12
12
|
"Azure.Generator": "1.0.0-alpha.20251215.3",
|
|
@@ -622,7 +622,7 @@
|
|
|
622
622
|
}
|
|
623
623
|
},
|
|
624
624
|
"libraries": {
|
|
625
|
-
"Azure.Generator.Management/1.0.0-alpha.
|
|
625
|
+
"Azure.Generator.Management/1.0.0-alpha.20251228.1": {
|
|
626
626
|
"type": "project",
|
|
627
627
|
"serviceable": false,
|
|
628
628
|
"sha512": ""
|
|
Binary file
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@azure-typespec/http-client-csharp-mgmt",
|
|
3
|
-
"version": "1.0.0-alpha.
|
|
3
|
+
"version": "1.0.0-alpha.20251228.1",
|
|
4
4
|
"author": "Microsoft Corporation",
|
|
5
5
|
"description": "TypeSpec library for emitting Azure management libraries for C#.",
|
|
6
6
|
"readme": "https://github.com/Azure/azure-sdk-for-net/blob/main/eng/packages/http-client-csharp-mgmt/README.md",
|