@azure-tools/typespec-azure-resource-manager 0.59.0-dev.0 → 0.59.0-dev.2

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.
@@ -41,4 +41,5 @@ export declare const $armProviderNamespace: ArmProviderNamespaceDecorator;
41
41
  * @returns {string | undefined} ARM provider namespace
42
42
  */
43
43
  export declare function getArmProviderNamespace(program: Program, entity: Namespace | Model): string | undefined;
44
+ export declare function resolveProviderNamespace(program: Program, ns?: Namespace | undefined): Namespace | undefined;
44
45
  //# sourceMappingURL=namespace.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"namespace.d.ts","sourceRoot":"","sources":["../../src/namespace.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,EAEL,SAAS,EAET,OAAO,EAGR,MAAM,oBAAoB,CAAC;AAM5B,OAAO,EACL,4BAA4B,EAC5B,6BAA6B,EAC7B,4BAA4B,EAC7B,MAAM,4CAA4C,CAAC;AA8BpD;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,EAAE,4BASlC,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,GAAG,OAAO,CAErF;AAED,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,SAAS,GAAG,SAAS,GAC/B,OAAO,CAIT;AASD;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,EAAE,4BAalC,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,SAAS,GACnB,SAAS,EAAE,GAAG,SAAS,CAEzB;AAQD;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,EAAE,6BA0HnC,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,SAAS,GAAG,KAAK,GACxB,MAAM,GAAG,SAAS,CAWpB"}
1
+ {"version":3,"file":"namespace.d.ts","sourceRoot":"","sources":["../../src/namespace.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,EAEL,SAAS,EAET,OAAO,EAGR,MAAM,oBAAoB,CAAC;AAM5B,OAAO,EACL,4BAA4B,EAC5B,6BAA6B,EAC7B,4BAA4B,EAC7B,MAAM,4CAA4C,CAAC;AA8BpD;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,EAAE,4BASlC,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,GAAG,OAAO,CAErF;AAED,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,SAAS,GAAG,SAAS,GAC/B,OAAO,CAIT;AASD;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,EAAE,4BAalC,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,SAAS,GACnB,SAAS,EAAE,GAAG,SAAS,CAEzB;AAQD;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,EAAE,6BA0HnC,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,SAAS,GAAG,KAAK,GACxB,MAAM,GAAG,SAAS,CAWpB;AAmBD,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,OAAO,EAChB,EAAE,CAAC,EAAE,SAAS,GAAG,SAAS,GACzB,SAAS,GAAG,SAAS,CAavB"}
@@ -210,4 +210,17 @@ function getArmProviderFromNamespace(program, ns) {
210
210
  }
211
211
  return undefined;
212
212
  }
213
+ export function resolveProviderNamespace(program, ns) {
214
+ ns = ns ?? program.getGlobalNamespaceType();
215
+ if (program.stateMap(ArmStateKeys.armProviderNamespaces).get(ns)) {
216
+ return ns;
217
+ }
218
+ for (const child of ns.namespaces.values()) {
219
+ const providerNs = resolveProviderNamespace(program, child);
220
+ if (providerNs) {
221
+ return providerNs;
222
+ }
223
+ }
224
+ return undefined;
225
+ }
213
226
  //# sourceMappingURL=namespace.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"namespace.js","sourceRoot":"","sources":["../../src/namespace.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"namespace.js","sourceRoot":"","sources":["../../src/namespace.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ import { HttpOperation } from "@typespec/http";
3
3
  import { ArmResourceActionDecorator, ArmResourceCollectionActionDecorator, ArmResourceCreateOrUpdateDecorator, ArmResourceDeleteDecorator, ArmResourceListDecorator, ArmResourceReadDecorator, ArmResourceUpdateDecorator } from "../generated-defs/Azure.ResourceManager.js";
4
4
  import { ArmOperationOptions, ArmOperationRouteDecorator } from "../generated-defs/Azure.ResourceManager.Legacy.js";
5
5
  export type ArmLifecycleOperationKind = "read" | "createOrUpdate" | "update" | "delete";
6
- export type ArmOperationKind = ArmLifecycleOperationKind | "list" | "action";
6
+ export type ArmOperationKind = ArmLifecycleOperationKind | "list" | "action" | "other";
7
7
  export interface ArmResourceOperation extends ArmResourceOperationData {
8
8
  path: string;
9
9
  httpOperation: HttpOperation;
@@ -14,6 +14,17 @@ export interface ArmLifecycleOperations {
14
14
  update?: ArmResourceOperation;
15
15
  delete?: ArmResourceOperation;
16
16
  }
17
+ export interface ArmResourceLifecycleOperations {
18
+ read?: ArmResourceOperation[];
19
+ createOrUpdate?: ArmResourceOperation[];
20
+ update?: ArmResourceOperation[];
21
+ delete?: ArmResourceOperation[];
22
+ }
23
+ export interface ArmResolvedOperationsForResource {
24
+ lifecycle: ArmResourceLifecycleOperations;
25
+ lists: ArmResourceOperation[];
26
+ actions: ArmResourceOperation[];
27
+ }
17
28
  export interface ArmResourceOperations {
18
29
  lifecycle: ArmLifecycleOperations;
19
30
  lists: {
@@ -29,7 +40,20 @@ interface ArmResourceOperationData {
29
40
  operation: Operation;
30
41
  operationGroup: string;
31
42
  }
43
+ /** Identifying information for an arm operation */
44
+ interface ArmOperationIdentifier {
45
+ name: string;
46
+ kind: ArmOperationKind;
47
+ operationGroup: string;
48
+ operation: Operation;
49
+ resource?: Model;
50
+ }
32
51
  export declare function resolveResourceOperations(program: Program, resourceType: Model): ArmResourceOperations;
52
+ export declare const getArmOperationList: (program: Program, type: Model) => Set<ArmOperationIdentifier> | undefined, setArmOperationList: (program: Program, type: Model, value: Set<ArmOperationIdentifier>) => void;
53
+ export declare function getArmResourceOperationList(program: Program, resourceType: Model): Set<ArmOperationIdentifier>;
54
+ export declare function addArmResourceOperation(program: Program, resourceType: Model, operationData: ArmOperationIdentifier): void;
55
+ export declare const getArmResourceOperationData: (program: Program, type: Operation) => ArmResourceOperationData | undefined, setArmResourceOperationData: (program: Program, type: Operation, value: ArmResourceOperationData) => void;
56
+ export declare function setArmOperationIdentifier(program: Program, target: Operation, resourceType: Model, data: ArmResourceOperationData): void;
33
57
  export declare const $armResourceRead: ArmResourceReadDecorator;
34
58
  export declare const $armResourceCreateOrUpdate: ArmResourceCreateOrUpdateDecorator;
35
59
  export declare const $armResourceUpdate: ArmResourceUpdateDecorator;
@@ -1 +1 @@
1
- {"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../../src/operations.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,gBAAgB,EAGhB,KAAK,EACL,SAAS,EACT,OAAO,EACR,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAA4B,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAYzE,OAAO,EACL,0BAA0B,EAC1B,oCAAoC,EACpC,kCAAkC,EAClC,0BAA0B,EAC1B,wBAAwB,EACxB,wBAAwB,EACxB,0BAA0B,EAC3B,MAAM,4CAA4C,CAAC;AACpD,OAAO,EACL,mBAAmB,EACnB,0BAA0B,EAC3B,MAAM,mDAAmD,CAAC;AAY3D,MAAM,MAAM,yBAAyB,GAAG,MAAM,GAAG,gBAAgB,GAAG,QAAQ,GAAG,QAAQ,CAAC;AACxF,MAAM,MAAM,gBAAgB,GAAG,yBAAyB,GAAG,MAAM,GAAG,QAAQ,CAAC;AAE7E,MAAM,WAAW,oBAAqB,SAAQ,wBAAwB;IACpE,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,aAAa,CAAC;CAC9B;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,CAAC,EAAE,oBAAoB,CAAC;IAC5B,cAAc,CAAC,EAAE,oBAAoB,CAAC;IACtC,MAAM,CAAC,EAAE,oBAAoB,CAAC;IAC9B,MAAM,CAAC,EAAE,oBAAoB,CAAC;CAC/B;AAED,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,sBAAsB,CAAC;IAClC,KAAK,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,oBAAoB,CAAA;KAAE,CAAC;IAC/C,OAAO,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,oBAAoB,CAAA;KAAE,CAAC;CAClD;AAED,UAAU,wBAAwB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,gBAAgB,CAAC;IACvB,SAAS,EAAE,SAAS,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;CACxB;AA8CD,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,OAAO,EAChB,YAAY,EAAE,KAAK,GAClB,qBAAqB,CAYvB;AA8BD,eAAO,MAAM,gBAAgB,EAAE,wBAO9B,CAAC;AAEF,eAAO,MAAM,0BAA0B,EAAE,kCAOxC,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,0BAOhC,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,0BAOhC,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,wBAyB9B,CAAC;AAEF,wBAAgB,gCAAgC,CAC9C,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,SAAS,EACjB,YAAY,EAAE,KAAK,EACnB,cAAc,CAAC,EAAE,MAAM,EACvB,sBAAsB,CAAC,EAAE,MAAM,EAC/B,oBAAoB,CAAC,EAAE,OAAO,QAuD/B;AA6BD,eAAO,MAAM,kBAAkB,EAAE,0BAiChC,CAAC;AASF,eAAO,MAAM,4BAA4B,EAAE,oCAK1C,CAAC;AAEF,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,GAAG,OAAO,CAElF;AAED,eAAO,MAAM,kBAAkB,EAAE,0BAchC,CAAC;AAEF,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,GAAG,mBAAmB,CAuBxF"}
1
+ {"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../../src/operations.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { $doc, getFriendlyName, ignoreDiagnostics, } from "@typespec/compiler";
2
+ import { useStateMap } from "@typespec/compiler/utils";
2
3
  import { $route, getHttpOperation } from "@typespec/http";
3
4
  import { $actionSegment, $autoRoute, $createsOrReplacesResource, $deletesResource, $readsResource, $updatesResource, getActionSegment, getParentResource, getSegment, } from "@typespec/rest";
4
5
  import { reportDiagnostic } from "./lib.js";
@@ -51,6 +52,41 @@ function setResourceLifecycleOperation(context, target, resourceType, kind) {
51
52
  operationGroup: target.interface.name,
52
53
  };
53
54
  operations.lifecycle[kind] = operation;
55
+ setArmOperationIdentifier(context.program, target, resourceType, {
56
+ name: target.name,
57
+ kind: kind,
58
+ operation: target,
59
+ operationGroup: target.interface.name,
60
+ });
61
+ }
62
+ export const [getArmOperationList, setArmOperationList] = useStateMap(ArmStateKeys.resourceOperationList);
63
+ export function getArmResourceOperationList(program, resourceType) {
64
+ let operations = getArmOperationList(program, resourceType);
65
+ if (operations === undefined) {
66
+ operations = new Set();
67
+ setArmOperationList(program, resourceType, operations);
68
+ }
69
+ return operations;
70
+ }
71
+ export function addArmResourceOperation(program, resourceType, operationData) {
72
+ const operations = getArmResourceOperationList(program, resourceType);
73
+ operations.add(operationData);
74
+ setArmOperationList(program, resourceType, operations);
75
+ }
76
+ export const [getArmResourceOperationData, setArmResourceOperationData] = useStateMap(ArmStateKeys.armResourceOperationData);
77
+ export function setArmOperationIdentifier(program, target, resourceType, data) {
78
+ const operationId = {
79
+ name: data.name,
80
+ kind: data.kind,
81
+ operation: target,
82
+ operationGroup: data.operationGroup,
83
+ resource: resourceType,
84
+ };
85
+ // Initialize the operations for the resource type if not already done
86
+ if (!getArmResourceOperationData(program, target)) {
87
+ setArmResourceOperationData(program, target, operationId);
88
+ }
89
+ addArmResourceOperation(program, resourceType, operationId);
54
90
  }
55
91
  export const $armResourceRead = (context, target, resourceType) => {
56
92
  context.call($readsResource, target, resourceType);
@@ -85,6 +121,19 @@ export const $armResourceList = (context, target, resourceType) => {
85
121
  operationGroup: target.interface.name,
86
122
  };
87
123
  operations.lists[target.name] = operation;
124
+ addArmResourceOperation(context.program, resourceType, {
125
+ name: target.name,
126
+ kind: "list",
127
+ operation: target,
128
+ operationGroup: target.interface.name,
129
+ resource: resourceType,
130
+ });
131
+ setArmOperationIdentifier(context.program, target, resourceType, {
132
+ name: target.name,
133
+ kind: "list",
134
+ operation: target,
135
+ operationGroup: target.interface.name,
136
+ });
88
137
  };
89
138
  export function armRenameListByOperationInternal(context, entity, resourceType, parentTypeName, parentFriendlyTypeName, applyOperationRename) {
90
139
  const { program } = context;
@@ -169,6 +218,19 @@ export const $armResourceAction = (context, target, resourceType) => {
169
218
  operationGroup: target.interface.name,
170
219
  };
171
220
  operations.actions[target.name] = operation;
221
+ addArmResourceOperation(program, resourceType, {
222
+ name: target.name,
223
+ kind: "action",
224
+ operation: target,
225
+ operationGroup: target.interface.name,
226
+ resource: resourceType,
227
+ });
228
+ setArmOperationIdentifier(context.program, target, resourceType, {
229
+ name: target.name,
230
+ kind: "action",
231
+ operation: target,
232
+ operationGroup: target.interface.name,
233
+ });
172
234
  const segment = getSegment(program, target) ?? getActionSegment(program, target);
173
235
  if (!segment) {
174
236
  // Also apply the @actionSegment decorator to the operation
@@ -1 +1 @@
1
- {"version":3,"file":"operations.js","sourceRoot":"","sources":["../../src/operations.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EAEJ,eAAe,EACf,iBAAiB,GAIlB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAiB,MAAM,gBAAgB,CAAC;AACzE,OAAO,EACL,cAAc,EACd,UAAU,EACV,0BAA0B,EAC1B,gBAAgB,EAChB,cAAc,EACd,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,UAAU,GACX,MAAM,gBAAgB,CAAC;AAcxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,gBAAgB,GACjB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AA2C1C,SAAS,wBAAwB,CAC/B,OAAgB,EAChB,YAAmB;IAEnB,IAAI,UAAU,GAAG,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IACxF,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,UAAU,GAAG,EAAE,SAAS,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;QACvD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;IACrF,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,qBAAqB,CAC5B,OAAgB,EAChB,IAAO;IAEP,MAAM,MAAM,GAAyC,EAAE,CAAC;IACxD,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAC/C,MAAM,aAAa,GAAkB,iBAAiB,CACpD,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,CAC1C,CAAC;QACF,MAAM,CAAC,GAAG,CAAC,GAAG;YACZ,GAAG,IAAI;YACP,IAAI,EAAE,aAAa,CAAC,IAAI;YACxB,aAAa,EAAE,aAAa;SAC7B,CAAC;IACJ,CAAC;IACD,OAAO,MAAa,CAAC;AACvB,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,OAAgB,EAChB,YAAmB;IAEnB,MAAM,UAAU,GAAG,wBAAwB,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IAEnE,yCAAyC;IACzC,OAAO;QACL,SAAS,EAAE,qBAAqB,CAC9B,OAAO,EACP,UAAU,CAAC,SAAqD,CACjE;QACD,OAAO,EAAE,qBAAqB,CAAC,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC;QAC3D,KAAK,EAAE,qBAAqB,CAAC,OAAO,EAAE,UAAU,CAAC,KAAK,CAAC;KACxD,CAAC;AACJ,CAAC;AAED,SAAS,6BAA6B,CACpC,OAAyB,EACzB,MAAiB,EACjB,YAAmB,EACnB,IAA+B;IAE/B,2DAA2D;IAC3D,IACE,MAAM,CAAC,SAAS,KAAK,SAAS;QAC9B,MAAM,CAAC,SAAS,CAAC,IAAI,KAAK,SAAS;QACnC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,EACnD,CAAC;QACD,OAAO;IACT,CAAC;IAED,8EAA8E;IAC9E,wDAAwD;IACxD,MAAM,UAAU,GAAG,wBAAwB,CAAC,OAAO,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IAC3E,MAAM,SAAS,GAAkC;QAC/C,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,IAAI;QACJ,SAAS,EAAE,MAAM;QACjB,cAAc,EAAE,MAAM,CAAC,SAAS,CAAC,IAAI;KACtC,CAAC;IAEF,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,SAAiC,CAAC;AACjE,CAAC;AAED,MAAM,CAAC,MAAM,gBAAgB,GAA6B,CACxD,OAAyB,EACzB,MAAiB,EACjB,YAAmB,EACnB,EAAE;IACF,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;IACnD,6BAA6B,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC;AACvE,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAuC,CAC5E,OAAyB,EACzB,MAAiB,EACjB,YAAmB,EACnB,EAAE;IACF,OAAO,CAAC,IAAI,CAAC,0BAA0B,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;IAC/D,6BAA6B,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,gBAAgB,CAAC,CAAC;AACjF,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAA+B,CAC5D,OAAyB,EACzB,MAAiB,EACjB,YAAmB,EACnB,EAAE;IACF,OAAO,CAAC,IAAI,CAAC,gBAAgB,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;IACrD,6BAA6B,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;AACzE,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAA+B,CAC5D,OAAyB,EACzB,MAAiB,EACjB,YAAmB,EACnB,EAAE;IACF,OAAO,CAAC,IAAI,CAAC,gBAAgB,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;IACrD,6BAA6B,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;AACzE,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAA6B,CACxD,OAAyB,EACzB,MAAiB,EACjB,YAAmB,EACnB,EAAE;IACF,2DAA2D;IAC3D,IACE,MAAM,CAAC,SAAS,KAAK,SAAS;QAC9B,MAAM,CAAC,SAAS,CAAC,IAAI,KAAK,SAAS;QACnC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,EACnD,CAAC;QACD,OAAO;IACT,CAAC;IAED,8EAA8E;IAC9E,wDAAwD;IACxD,MAAM,UAAU,GAAG,wBAAwB,CAAC,OAAO,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IAC3E,MAAM,SAAS,GAAkC;QAC/C,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,IAAI,EAAE,MAAM;QACZ,SAAS,EAAE,MAAM;QACjB,cAAc,EAAE,MAAM,CAAC,SAAS,CAAC,IAAI;KACtC,CAAC;IAEF,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,SAAiC,CAAC;AACpE,CAAC,CAAC;AAEF,MAAM,UAAU,gCAAgC,CAC9C,OAAyB,EACzB,MAAiB,EACjB,YAAmB,EACnB,cAAuB,EACvB,sBAA+B,EAC/B,oBAA8B;IAE9B,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IAC5B,IACE,cAAc,KAAK,SAAS;QAC5B,cAAc,KAAK,EAAE;QACrB,sBAAsB,KAAK,SAAS;QACpC,sBAAsB,KAAK,EAAE,EAC7B,CAAC;QACD,CAAC,cAAc,EAAE,sBAAsB,CAAC,GAAG,gBAAgB,CAAC,OAAO,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IAC7F,CAAC;IACD,MAAM,UAAU,GAAG,iBAAiB,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IAC5D,IACE,UAAU;QACV,CAAC,oBAAoB,CAAC,OAAO,EAAE,UAAU,CAAC;QAC1C,CAAC,qBAAqB,CAAC,OAAO,EAAE,UAAU,CAAC,EAC3C,CAAC;QACD,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QACnE,IACE,CAAC,kBAAkB;YACnB,YAAY,CAAC,SAAS,KAAK,SAAS;YACpC,qBAAqB,CAAC,OAAO,EAAE,YAAY,CAAC,SAAS,CAAC;YAEtD,OAAO;QACT,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACxB,gBAAgB,CAAC,OAAO,EAAE;gBACxB,IAAI,EAAE,aAAa;gBACnB,SAAS,EAAE,iBAAiB;gBAC5B,MAAM,EAAE,YAAY;gBACpB,MAAM,EAAE,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,IAAI,EAAE;aAC7D,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,2DAA2D;QAC3D,cAAc,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IACnF,CAAC;IAED,iCAAiC;IACjC,OAAO,CAAC,IAAI,CACV,IAAI,EACJ,MAAM,EACN,QAAQ,YAAY,CAAC,IAAI,iBACvB,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,sBAChC,EAAE,EACF,SAAgB,CACjB,CAAC;IAEF,IAAI,oBAAoB,KAAK,SAAS,IAAI,oBAAoB,KAAK,IAAI,EAAE,CAAC;QACxE,yBAAyB;QACzB,MAAM,CAAC,IAAI;YACT,cAAc,KAAK,WAAW,IAAI,cAAc,KAAK,SAAS,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC;gBACzF,CAAC,CAAC,MAAM;gBACR,CAAC,CAAC,SAAS,cAAc,EAAE,CAAC;IAClC,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,OAAgB,EAAE,QAAe;IACzD,MAAM,MAAM,GAAG,iBAAiB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IACpD,IAAI,MAAM,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,qBAAqB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC;QAChG,MAAM,UAAU,GAAG,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC;QACnE,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtD,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QAClB,CAAC;QACD,OAAO;YACL,UAAU;YACV,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;SAC1F,CAAC;IACJ,CAAC;IACD,QAAQ,mBAAmB,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,CAAC;QAC/C,KAAK,gBAAgB,CAAC,SAAS;YAC7B,OAAO,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QACjC,KAAK,gBAAgB,CAAC,QAAQ;YAC5B,OAAO,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QAClC,KAAK,gBAAgB,CAAC,YAAY;YAChC,OAAO,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC;QAC1C,KAAK,gBAAgB,CAAC,MAAM;YAC1B,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC9B,KAAK,gBAAgB,CAAC,aAAa,CAAC;QACpC;YACE,OAAO,CAAC,eAAe,EAAE,gBAAgB,CAAC,CAAC;IAC/C,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,kBAAkB,GAA+B,CAC5D,OAAyB,EACzB,MAAiB,EACjB,YAAmB,EACnB,EAAE;IACF,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IAE5B,2DAA2D;IAC3D,IACE,MAAM,CAAC,SAAS,KAAK,SAAS;QAC9B,MAAM,CAAC,SAAS,CAAC,IAAI,KAAK,SAAS;QACnC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,EACnD,CAAC;QACD,OAAO;IACT,CAAC;IAED,8EAA8E;IAC9E,wDAAwD;IACxD,MAAM,UAAU,GAAG,wBAAwB,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACnE,MAAM,SAAS,GAAkC;QAC/C,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,IAAI,EAAE,QAAQ;QACd,SAAS,EAAE,MAAM;QACjB,cAAc,EAAE,MAAM,CAAC,SAAS,CAAC,IAAI;KACtC,CAAC;IAEF,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,SAAiC,CAAC;IAEpE,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACjF,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,2DAA2D;QAC3D,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM,EAAE,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAClE,CAAC;AACH,CAAC,CAAC;AAEF,SAAS,YAAY,CAAC,IAAY;IAChC,IAAI,IAAI,KAAK,EAAE,EAAE,CAAC;QAChB,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;AACnD,CAAC;AAED,MAAM,CAAC,MAAM,4BAA4B,GAAyC,CAChF,OAAyB,EACzB,MAAiB,EACjB,EAAE;IACF,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,2BAA2B,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AACvF,CAAC,CAAC;AAEF,MAAM,UAAU,qBAAqB,CAAC,OAAgB,EAAE,MAAiB;IACvE,OAAO,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,2BAA2B,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC;AACzF,CAAC;AAED,MAAM,CAAC,MAAM,kBAAkB,GAA+B,CAC5D,OAAyB,EACzB,MAAiB,EACjB,OAA6B,EAC7B,EAAE;IACF,MAAM,KAAK,GAAuB,OAAO,EAAE,KAAK,CAAC;IAEjD,IAAI,CAAC,KAAK,IAAI,CAAC,OAAO,EAAE,cAAc,EAAE,CAAC;QACvC,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QACjC,OAAO;IACT,CAAC;IACD,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IACtC,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,UAAU,eAAe,CAAC,OAAgB,EAAE,MAAiB;IACjE,IAAI,OAAO,GAAoC,SAAS,CAAC;IACzD,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QACrB,OAAO,GAAG,OAAO,IAAI,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC3F,IAAI,OAAO;YAAE,OAAO,OAAO,CAAC;IAC9B,CAAC;IACD,IAAI,MAAM,CAAC,eAAe,EAAE,SAAS,EAAE,CAAC;QACtC,OAAO;YACL,OAAO;gBACP,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;IAC1F,CAAC;IACD,IAAI,MAAM,CAAC,eAAe,EAAE,SAAS,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3D,OAAO;YACL,OAAO;gBACP,OAAO;qBACJ,QAAQ,CAAC,YAAY,CAAC,gBAAgB,CAAC;qBACvC,GAAG,CAAC,MAAM,CAAC,eAAe,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;IACjE,CAAC;IAED,IAAI,OAAO;QAAE,OAAO,OAAO,CAAC;IAC5B,OAAO;QACL,cAAc,EAAE,KAAK;KACtB,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"operations.js","sourceRoot":"","sources":["../../src/operations.ts"],"names":[],"mappings":"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"}
@@ -1,29 +1,82 @@
1
- import { ArrayModelType, Model, ModelProperty, Program } from "@typespec/compiler";
1
+ import { ArrayModelType, Model, ModelProperty, Namespace, Program } from "@typespec/compiler";
2
2
  import { ArmProviderNameValueDecorator, ArmResourceOperationsDecorator, ArmVirtualResourceDecorator, ExtensionResourceDecorator, IdentifiersDecorator, LocationResourceDecorator, ResourceBaseTypeDecorator, ResourceGroupResourceDecorator, SingletonDecorator, SubscriptionResourceDecorator, TenantResourceDecorator } from "../generated-defs/Azure.ResourceManager.js";
3
3
  import { CustomAzureResourceDecorator } from "../generated-defs/Azure.ResourceManager.Legacy.js";
4
- import { ArmResourceOperations } from "./operations.js";
5
- export type ArmResourceKind = "Tracked" | "Proxy" | "Extension" | "Virtual" | "Custom";
4
+ import { ArmOperationKind, ArmResolvedOperationsForResource, ArmResourceOperation, ArmResourceOperations } from "./operations.js";
5
+ export type ArmResourceKind = "Tracked" | "Proxy" | "Extension" | "Virtual" | "Custom" | "BuiltIn";
6
6
  /**
7
- * Interface for ARM resource detail base.
7
+ * The base details for all kinds of resources
8
8
  *
9
9
  * @interface
10
10
  */
11
11
  export interface ArmResourceDetailsBase {
12
+ /**
13
+ * The name of the resource.
14
+ */
12
15
  name: string;
16
+ /** The category of resource */
13
17
  kind: ArmResourceKind;
18
+ /** The RP namespace */
14
19
  armProviderNamespace: string;
20
+ /** The name parameter for the resource */
15
21
  keyName: string;
22
+ /** The type name / collection name of the resource */
16
23
  collectionName: string;
24
+ /** A reference to the TypeSpec type */
17
25
  typespecType: Model;
18
26
  }
27
+ /** Details for RP resources */
19
28
  export interface ArmResourceDetails extends ArmResourceDetailsBase {
29
+ /** The set of lifecycle operations and actions for the resource */
20
30
  operations: ArmResourceOperations;
31
+ /** RPaaS-specific value for resource type */
21
32
  resourceTypePath?: string;
22
33
  }
34
+ /** Representation of a resource used but not provided by the RP */
23
35
  export interface ArmVirtualResourceDetails {
36
+ /** The base kind for resources not provided by RPs */
24
37
  kind: "Virtual";
38
+ /** The provider namespace for the provider of this resource */
25
39
  provider?: string;
26
40
  }
41
+ /** New base details for resolved resources */
42
+ export interface ResourceMetadata {
43
+ /** The model type for the resource */
44
+ type: Model;
45
+ /** The kind of resource (extension | tracked | proxy | custom | virtual | built-in) */
46
+ kind: ArmResourceKind;
47
+ /** The provider namespace */
48
+ providerNamespace: string;
49
+ }
50
+ /** New details for a resolved resource */
51
+ export interface ResolvedResource extends ResourceMetadata {
52
+ /** The set of resolved operations for a resource. For most
53
+ resources there will be 1 returned record */
54
+ operations?: ResolvedOperations[];
55
+ }
56
+ export interface ResolvedResources {
57
+ resources?: ResolvedResource[];
58
+ unassociatedOperations?: ArmResourceOperation[];
59
+ }
60
+ export interface ResolvedOperationResourceInfo {
61
+ /** The resource type (The actual resource type string will be "${provider}/${types.join("/")}) */
62
+ resourceType: ResourceType;
63
+ /** The path to the instance of a resource */
64
+ resourceInstancePath: string;
65
+ }
66
+ /** Resolved operations, including operations for non-arm resources */
67
+ export interface ResolvedOperations extends ResolvedOperationResourceInfo {
68
+ /** The lifecycle and action operations using this resourceInstancePath (or the parent path) */
69
+ operations: ArmResolvedOperationsForResource;
70
+ /** Other operations associated with this resource */
71
+ associatedOperations?: ArmResourceOperation[];
72
+ }
73
+ /** Description of the resource type */
74
+ export interface ResourceType {
75
+ /** The provider namespace */
76
+ provider: string;
77
+ /** The type of the resource, including all ancestor types (in order) */
78
+ types: string[];
79
+ }
27
80
  /**
28
81
  * Marks the given resource as an external resource
29
82
  * @param context The decorator context
@@ -61,6 +114,18 @@ export declare function isCustomAzureResource(program: Program, target: Model):
61
114
  * so that operation route details are certain to be present.
62
115
  */
63
116
  export declare function getArmResources(program: Program): ArmResourceDetails[];
117
+ export declare const getResolvedResources: (program: Program, type: Namespace) => ResolvedResources | undefined, setResolvedResources: (program: Program, type: Namespace, value: ResolvedResources) => void;
118
+ export declare function resolveArmResources(program: Program): ResolvedResources;
119
+ export declare function getResourcePathElements(path: string, kind: ArmOperationKind): ResolvedOperationResourceInfo | undefined;
120
+ export declare function isResourceOperationMatch(source: {
121
+ resourceType: ResourceType;
122
+ resourceInstancePath: string;
123
+ }, target: {
124
+ resourceType: ResourceType;
125
+ resourceInstancePath: string;
126
+ }): boolean;
127
+ export declare function getUnassociatedOperations(program: Program): ArmResourceOperation[];
128
+ export declare function resolveArmResourceOperations(program: Program, resourceType: Model): ResolvedOperations[];
64
129
  export { getArmResource } from "./private.decorators.js";
65
130
  export declare function getArmResourceInfo(program: Program, resourceType: Model): ArmResourceDetails | undefined;
66
131
  export declare function getArmResourceKind(resourceType: Model): ArmResourceKind | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"resource.d.ts","sourceRoot":"","sources":["../../src/resource.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resource.d.ts","sourceRoot":"","sources":["../../src/resource.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,11 @@
1
1
  import { getAllProperties } from "@azure-tools/typespec-azure-core";
2
- import { $tag, getProperty as compilerGetProperty, getKeyName, getTags, isArrayModelType, isGlobalNamespace, isNeverType, isTemplateDeclaration, } from "@typespec/compiler";
3
- import { isPathParam } from "@typespec/http";
2
+ import { $tag, getProperty as compilerGetProperty, getKeyName, getTags, isArrayModelType, isGlobalNamespace, isNeverType, isTemplateDeclaration, isTemplateDeclarationOrInstance, isTemplateInstance, } from "@typespec/compiler";
3
+ import { useStateMap } from "@typespec/compiler/utils";
4
+ import { getHttpOperation, isPathParam } from "@typespec/http";
4
5
  import { $autoRoute, getParentResource, getSegment } from "@typespec/rest";
5
6
  import { reportDiagnostic } from "./lib.js";
6
- import { getArmProviderNamespace, isArmLibraryNamespace } from "./namespace.js";
7
- import { resolveResourceOperations } from "./operations.js";
7
+ import { getArmProviderNamespace, isArmLibraryNamespace, resolveProviderNamespace, } from "./namespace.js";
8
+ import { getArmResourceOperationData, getArmResourceOperationList, resolveResourceOperations, } from "./operations.js";
8
9
  import { getArmResource, listArmResources, registerArmResource } from "./private.decorators.js";
9
10
  import { ArmStateKeys } from "./state.js";
10
11
  /**
@@ -180,6 +181,313 @@ export function getArmResources(program) {
180
181
  }
181
182
  return resources;
182
183
  }
184
+ export const [getResolvedResources, setResolvedResources] = useStateMap(ArmStateKeys.armResolvedResources);
185
+ export function resolveArmResources(program) {
186
+ const provider = resolveProviderNamespace(program);
187
+ if (provider === undefined)
188
+ return {};
189
+ const resolvedResources = getResolvedResources(program, provider);
190
+ if (resolvedResources?.resources !== undefined && resolvedResources.resources.length > 0) {
191
+ // Return the cached resource details
192
+ return resolvedResources;
193
+ }
194
+ // We haven't generated the full resource details yet
195
+ const resources = [];
196
+ for (const resource of listArmResources(program)) {
197
+ const operations = resolveArmResourceOperations(program, resource.typespecType);
198
+ const fullResource = {
199
+ type: resource.typespecType,
200
+ kind: getArmResourceKind(resource.typespecType) ??
201
+ (operations.length > 0 ? "Tracked" : "Virtual"),
202
+ providerNamespace: resource.armProviderNamespace,
203
+ operations: operations,
204
+ };
205
+ resources.push(fullResource);
206
+ }
207
+ // Add the unmarked operations
208
+ const resolved = {
209
+ resources: resources,
210
+ unassociatedOperations: getUnassociatedOperations(program).filter((op) => !isArmResourceOperation(program, op.operation)),
211
+ };
212
+ setResolvedResources(program, provider, resolved);
213
+ return resolved;
214
+ }
215
+ function isVariableSegment(segment) {
216
+ return (segment.startsWith("{") && segment.endsWith("}")) || segment === "default";
217
+ }
218
+ function getResourceInfo(program, operation) {
219
+ return getResourcePathElements(operation.httpOperation.path, operation.kind);
220
+ }
221
+ export function getResourcePathElements(path, kind) {
222
+ const segments = path.split("/").filter((s) => s.length > 0);
223
+ const providerIndex = segments.findLastIndex((s) => s === "providers");
224
+ if (providerIndex === -1 || providerIndex === segments.length - 1)
225
+ return undefined;
226
+ const provider = segments[providerIndex + 1];
227
+ const typeSegments = [];
228
+ const instanceSegments = segments.slice(0, providerIndex + 2);
229
+ for (let i = providerIndex + 2; i < segments.length; i += 2) {
230
+ if (isVariableSegment(segments[i])) {
231
+ return undefined;
232
+ }
233
+ if (i + 1 < segments.length && isVariableSegment(segments[i + 1])) {
234
+ typeSegments.push(segments[i]);
235
+ instanceSegments.push(segments[i]);
236
+ instanceSegments.push(segments[i + 1]);
237
+ }
238
+ else if (i + 1 === segments.length) {
239
+ switch (kind) {
240
+ case "list":
241
+ typeSegments.push(segments[i]);
242
+ instanceSegments.push(segments[i]);
243
+ instanceSegments.push("{name}");
244
+ break;
245
+ default:
246
+ break;
247
+ }
248
+ break;
249
+ }
250
+ }
251
+ if (provider !== undefined && typeSegments.length > 0) {
252
+ return {
253
+ resourceType: {
254
+ provider: provider,
255
+ types: typeSegments,
256
+ },
257
+ resourceInstancePath: `/${instanceSegments.join("/")}`,
258
+ };
259
+ }
260
+ return undefined;
261
+ }
262
+ function tryAddLifecycleOperation(resourceType, sourceOperation, targetOperation) {
263
+ const pathSegments = sourceOperation.httpOperation.path
264
+ .split("/")
265
+ .filter((s) => s.length > 0);
266
+ const isInstanceOperation = isVariableSegment(pathSegments[pathSegments.length - 1]);
267
+ const isResourceCollectionOperation = !isInstanceOperation &&
268
+ pathSegments[pathSegments.length - 1] === resourceType.types[resourceType.types.length - 1];
269
+ switch (sourceOperation.httpOperation.verb) {
270
+ case "get":
271
+ if (isInstanceOperation) {
272
+ if (targetOperation.operations.lifecycle.read === undefined) {
273
+ targetOperation.operations.lifecycle.read = [];
274
+ }
275
+ addUniqueOperation(sourceOperation, targetOperation.operations.lifecycle.read);
276
+ return true;
277
+ }
278
+ if (!isResourceCollectionOperation) {
279
+ addUniqueOperation(sourceOperation, targetOperation.operations.actions || []);
280
+ return true;
281
+ }
282
+ if (targetOperation.operations.lists === undefined) {
283
+ targetOperation.operations.lists = [];
284
+ }
285
+ addUniqueOperation(sourceOperation, targetOperation.operations.lists);
286
+ return true;
287
+ case "put":
288
+ if (!isInstanceOperation) {
289
+ return false;
290
+ }
291
+ if (targetOperation.operations.lifecycle.createOrUpdate === undefined) {
292
+ targetOperation.operations.lifecycle.createOrUpdate = [];
293
+ }
294
+ addUniqueOperation(sourceOperation, targetOperation.operations.lifecycle.createOrUpdate);
295
+ return true;
296
+ case "patch":
297
+ if (!isInstanceOperation) {
298
+ return false;
299
+ }
300
+ if (targetOperation.operations.lifecycle.update === undefined) {
301
+ targetOperation.operations.lifecycle.update = [];
302
+ }
303
+ addUniqueOperation(sourceOperation, targetOperation.operations.lifecycle.update);
304
+ return true;
305
+ case "delete":
306
+ if (!isInstanceOperation) {
307
+ return false;
308
+ }
309
+ if (targetOperation.operations.lifecycle.delete === undefined) {
310
+ targetOperation.operations.lifecycle.delete = [];
311
+ }
312
+ addUniqueOperation(sourceOperation, targetOperation.operations.lifecycle.delete);
313
+ return true;
314
+ case "post":
315
+ case "head":
316
+ if (isInstanceOperation) {
317
+ return false;
318
+ }
319
+ if (targetOperation.operations.actions === undefined) {
320
+ targetOperation.operations.actions = [];
321
+ }
322
+ addUniqueOperation(sourceOperation, targetOperation.operations.actions);
323
+ return true;
324
+ default:
325
+ return false;
326
+ }
327
+ }
328
+ function addAssociatedOperation(sourceOperation, targetOperation) {
329
+ if (!targetOperation.associatedOperations) {
330
+ targetOperation.associatedOperations = [];
331
+ }
332
+ addUniqueOperation(sourceOperation, targetOperation.associatedOperations);
333
+ }
334
+ export function isResourceOperationMatch(source, target) {
335
+ if (source.resourceType.provider.toLowerCase() !== target.resourceType.provider.toLowerCase())
336
+ return false;
337
+ if (source.resourceType.types.length !== target.resourceType.types.length)
338
+ return false;
339
+ for (let i = 0; i < source.resourceType.types.length; i++) {
340
+ if (source.resourceType.types[i].toLowerCase() !== target.resourceType.types[i].toLowerCase())
341
+ return false;
342
+ }
343
+ const sourceSegments = source.resourceInstancePath.split("/");
344
+ const targetSegments = target.resourceInstancePath.split("/");
345
+ if (sourceSegments.length !== targetSegments.length)
346
+ return false;
347
+ for (let i = 0; i < sourceSegments.length; i++) {
348
+ if (!isVariableSegment(sourceSegments[i])) {
349
+ if (isVariableSegment(targetSegments[i])) {
350
+ return false;
351
+ }
352
+ if (sourceSegments[i].toLowerCase() !== targetSegments[i].toLowerCase())
353
+ return false;
354
+ }
355
+ else if (!isVariableSegment(targetSegments[i]))
356
+ return false;
357
+ }
358
+ return true;
359
+ }
360
+ export function getUnassociatedOperations(program) {
361
+ return getAllOperations(program)
362
+ .map((op) => getResourceOperation(program, op))
363
+ .filter((op) => op !== undefined);
364
+ }
365
+ function getResourceOperation(program, operation) {
366
+ if (operation.kind !== "Operation")
367
+ return undefined;
368
+ if (!operation.isFinished)
369
+ return undefined;
370
+ if (isTemplateDeclarationOrInstance(operation) && !isTemplateInstance(operation))
371
+ return undefined;
372
+ if (operation.interface === undefined || operation.interface.name === undefined)
373
+ return undefined;
374
+ if (isTemplateDeclarationOrInstance(operation.interface) &&
375
+ !isTemplateInstance(operation.interface))
376
+ return undefined;
377
+ const [httpOp, _] = getHttpOperation(program, operation);
378
+ return {
379
+ path: httpOp.path,
380
+ httpOperation: httpOp,
381
+ name: operation.name,
382
+ kind: "other",
383
+ operation: operation,
384
+ operationGroup: operation.interface.name,
385
+ };
386
+ }
387
+ function isArmResourceOperation(program, operation) {
388
+ if (operation.kind !== "Operation")
389
+ return false;
390
+ if (operation.isFinished === false)
391
+ return false;
392
+ if (isTemplateDeclarationOrInstance(operation) && !isTemplateInstance(operation))
393
+ return false;
394
+ return getArmResourceOperationData(program, operation) !== undefined;
395
+ }
396
+ function getAllOperations(program, container) {
397
+ container = container || resolveProviderNamespace(program);
398
+ if (!container) {
399
+ return [];
400
+ }
401
+ const operations = [];
402
+ for (const op of container.operations.values()) {
403
+ if (op.kind === "Operation" &&
404
+ op.isFinished &&
405
+ (!isTemplateDeclarationOrInstance(op) || isTemplateInstance(op)) &&
406
+ !isArmResourceOperation(program, op)) {
407
+ operations.push(op);
408
+ }
409
+ }
410
+ if (container.kind === "Namespace") {
411
+ for (const child of container.namespaces.values()) {
412
+ operations.push(...getAllOperations(program, child));
413
+ }
414
+ for (const iface of container.interfaces.values()) {
415
+ operations.push(...getAllOperations(program, iface));
416
+ }
417
+ }
418
+ return operations;
419
+ }
420
+ function addUniqueOperation(operation, operations) {
421
+ if (!operations.some((op) => op.name.toLowerCase() === operation.name.toLowerCase() &&
422
+ op.operationGroup.toLowerCase() === operation.operationGroup.toLowerCase())) {
423
+ operations.push(operation);
424
+ }
425
+ }
426
+ export function resolveArmResourceOperations(program, resourceType) {
427
+ const resolvedOperations = new Set();
428
+ const operations = getArmResourceOperationList(program, resourceType);
429
+ for (const operation of operations) {
430
+ const armOperation = getResourceOperation(program, operation.operation);
431
+ if (armOperation === undefined)
432
+ continue;
433
+ armOperation.kind = operation.kind;
434
+ const resourceInfo = getResourceInfo(program, armOperation);
435
+ if (resourceInfo === undefined)
436
+ continue;
437
+ let matched = false;
438
+ // Check if we already have an operation for this resource
439
+ for (const resolvedOp of resolvedOperations) {
440
+ if (isResourceOperationMatch(resourceInfo, resolvedOp)) {
441
+ matched = true;
442
+ if (tryAddLifecycleOperation(resourceInfo.resourceType, armOperation, resolvedOp)) {
443
+ continue;
444
+ }
445
+ addAssociatedOperation(armOperation, resolvedOp);
446
+ continue;
447
+ }
448
+ }
449
+ if (matched)
450
+ continue;
451
+ // If we don't have an operation for this resource, create a new one
452
+ const newOperation = {
453
+ resourceType: resourceInfo.resourceType,
454
+ resourceInstancePath: resourceInfo.resourceInstancePath,
455
+ operations: {
456
+ lifecycle: {
457
+ read: undefined,
458
+ createOrUpdate: undefined,
459
+ update: undefined,
460
+ delete: undefined,
461
+ },
462
+ actions: [],
463
+ lists: [],
464
+ },
465
+ associatedOperations: [],
466
+ };
467
+ if (!tryAddLifecycleOperation(resourceInfo.resourceType, armOperation, newOperation)) {
468
+ addAssociatedOperation(armOperation, newOperation);
469
+ }
470
+ resolvedOperations.add(newOperation);
471
+ }
472
+ return [...resolvedOperations.values()].toSorted((a, b) => {
473
+ // Sort by provider, type, then instance path
474
+ if (a.resourceType.types.length < b.resourceType.types.length)
475
+ return -1;
476
+ if (a.resourceType.types.length > b.resourceType.types.length)
477
+ return 1;
478
+ const aSegments = a.resourceInstancePath.split("/");
479
+ const bSegments = b.resourceInstancePath.split("/");
480
+ if (aSegments.length < bSegments.length)
481
+ return -1;
482
+ if (aSegments.length > bSegments.length)
483
+ return 1;
484
+ if (a.resourceInstancePath.toLowerCase() < b.resourceInstancePath.toLowerCase())
485
+ return -1;
486
+ if (a.resourceInstancePath.toLowerCase() > b.resourceInstancePath.toLowerCase())
487
+ return 1;
488
+ return 0;
489
+ });
490
+ }
183
491
  export { getArmResource } from "./private.decorators.js";
184
492
  export function getArmResourceInfo(program, resourceType) {
185
493
  const resourceInfo = getArmResource(program, resourceType);
@@ -1 +1 @@
1
- {"version":3,"file":"resource.js","sourceRoot":"","sources":["../../src/resource.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resource.js","sourceRoot":"","sources":["../../src/resource.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,9 @@ export declare const ArmStateKeys: {
10
10
  armCommonTypesVersion: symbol;
11
11
  armIdentifiers: symbol;
12
12
  externalTypeRef: symbol;
13
+ armResourceOperationData: symbol;
14
+ resourceOperationList: symbol;
15
+ armResolvedResources: symbol;
13
16
  armResourcesCached: symbol;
14
17
  armSingletonResources: symbol;
15
18
  resourceBaseType: symbol;
@@ -1 +1 @@
1
- {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../src/state.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;CA6BxB,CAAC"}
1
+ {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../src/state.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;CAgCxB,CAAC"}
package/dist/src/state.js CHANGED
@@ -16,7 +16,10 @@ export const ArmStateKeys = {
16
16
  armCommonTypesVersion: azureResourceManagerCreateStateSymbol("armCommonTypesVersion"),
17
17
  armIdentifiers: azureResourceManagerCreateStateSymbol("armIdentifiers"),
18
18
  externalTypeRef: azureResourceManagerCreateStateSymbol("externalTypeRef"),
19
+ armResourceOperationData: azureResourceManagerCreateStateSymbol("armResourceOperationData"),
20
+ resourceOperationList: azureResourceManagerCreateStateSymbol("resourceOperationList"),
19
21
  // resource.ts
22
+ armResolvedResources: azureResourceManagerCreateStateSymbol("armResolvedResources"),
20
23
  armResourcesCached: azureResourceManagerCreateStateSymbol("armResourcesCached"),
21
24
  armSingletonResources: azureResourceManagerCreateStateSymbol("armSingletonResources"),
22
25
  resourceBaseType: azureResourceManagerCreateStateSymbol("resourceBaseTypeKey"),
@@ -1 +1 @@
1
- {"version":3,"file":"state.js","sourceRoot":"","sources":["../../src/state.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,qBAAqB;AACrB,2DAA2D;AAC3D,SAAS,qCAAqC,CAAC,IAAY;IACzD,OAAO,MAAM,CAAC,GAAG,CAAC,gDAAgD,IAAI,EAAE,CAAC,CAAC;AAC5E,CAAC;AAED,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,gBAAgB,EAAE,qCAAqC,CAAC,kBAAkB,CAAC;IAC3E,qBAAqB,EAAE,qCAAqC,CAAC,uBAAuB,CAAC;IACrF,qBAAqB,EAAE,qCAAqC,CAAC,uBAAuB,CAAC;IACrF,2BAA2B,EAAE,qCAAqC,CAAC,6BAA6B,CAAC;IACjG,qBAAqB,EAAE,qCAAqC,CAAC,oBAAoB,CAAC;IAClF,YAAY,EAAE,qCAAqC,CAAC,cAAc,CAAC;IACnE,oBAAoB,EAAE,qCAAqC,CAAC,sBAAsB,CAAC;IACnF,wBAAwB,EAAE,qCAAqC,CAAC,0BAA0B,CAAC;IAC3F,qBAAqB,EAAE,qCAAqC,CAAC,uBAAuB,CAAC;IACrF,cAAc,EAAE,qCAAqC,CAAC,gBAAgB,CAAC;IACvE,eAAe,EAAE,qCAAqC,CAAC,iBAAiB,CAAC;IAEzE,cAAc;IACd,kBAAkB,EAAE,qCAAqC,CAAC,oBAAoB,CAAC;IAC/E,qBAAqB,EAAE,qCAAqC,CAAC,uBAAuB,CAAC;IACrF,gBAAgB,EAAE,qCAAqC,CAAC,qBAAqB,CAAC;IAC9E,kBAAkB,EAAE,qCAAqC,CAAC,qBAAqB,CAAC;IAChF,mBAAmB,EAAE,qCAAqC,CAAC,qBAAqB,CAAC;IAEjF,uBAAuB;IACvB,iBAAiB,EAAE,qCAAqC,CAAC,mBAAmB,CAAC;IAC7E,2BAA2B,EAAE,qCAAqC,CAAC,6BAA6B,CAAC;IAEjG,oCAAoC;IACpC,oBAAoB,EAAE,qCAAqC,CAAC,sBAAsB,CAAC;IACnF,mBAAmB,EAAE,qCAAqC,CAAC,qBAAqB,CAAC;IACjF,sBAAsB,EAAE,qCAAqC,CAAC,wBAAwB,CAAC;IACvF,gBAAgB,EAAE,qCAAqC,CAAC,kBAAkB,CAAC;CAC5E,CAAC"}
1
+ {"version":3,"file":"state.js","sourceRoot":"","sources":["../../src/state.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,qBAAqB;AACrB,2DAA2D;AAC3D,SAAS,qCAAqC,CAAC,IAAY;IACzD,OAAO,MAAM,CAAC,GAAG,CAAC,gDAAgD,IAAI,EAAE,CAAC,CAAC;AAC5E,CAAC;AAED,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,gBAAgB,EAAE,qCAAqC,CAAC,kBAAkB,CAAC;IAC3E,qBAAqB,EAAE,qCAAqC,CAAC,uBAAuB,CAAC;IACrF,qBAAqB,EAAE,qCAAqC,CAAC,uBAAuB,CAAC;IACrF,2BAA2B,EAAE,qCAAqC,CAAC,6BAA6B,CAAC;IACjG,qBAAqB,EAAE,qCAAqC,CAAC,oBAAoB,CAAC;IAClF,YAAY,EAAE,qCAAqC,CAAC,cAAc,CAAC;IACnE,oBAAoB,EAAE,qCAAqC,CAAC,sBAAsB,CAAC;IACnF,wBAAwB,EAAE,qCAAqC,CAAC,0BAA0B,CAAC;IAC3F,qBAAqB,EAAE,qCAAqC,CAAC,uBAAuB,CAAC;IACrF,cAAc,EAAE,qCAAqC,CAAC,gBAAgB,CAAC;IACvE,eAAe,EAAE,qCAAqC,CAAC,iBAAiB,CAAC;IACzE,wBAAwB,EAAE,qCAAqC,CAAC,0BAA0B,CAAC;IAC3F,qBAAqB,EAAE,qCAAqC,CAAC,uBAAuB,CAAC;IAErF,cAAc;IACd,oBAAoB,EAAE,qCAAqC,CAAC,sBAAsB,CAAC;IACnF,kBAAkB,EAAE,qCAAqC,CAAC,oBAAoB,CAAC;IAC/E,qBAAqB,EAAE,qCAAqC,CAAC,uBAAuB,CAAC;IACrF,gBAAgB,EAAE,qCAAqC,CAAC,qBAAqB,CAAC;IAC9E,kBAAkB,EAAE,qCAAqC,CAAC,qBAAqB,CAAC;IAChF,mBAAmB,EAAE,qCAAqC,CAAC,qBAAqB,CAAC;IAEjF,uBAAuB;IACvB,iBAAiB,EAAE,qCAAqC,CAAC,mBAAmB,CAAC;IAC7E,2BAA2B,EAAE,qCAAqC,CAAC,6BAA6B,CAAC;IAEjG,oCAAoC;IACpC,oBAAoB,EAAE,qCAAqC,CAAC,sBAAsB,CAAC;IACnF,mBAAmB,EAAE,qCAAqC,CAAC,qBAAqB,CAAC;IACjF,sBAAsB,EAAE,qCAAqC,CAAC,wBAAwB,CAAC;IACvF,gBAAgB,EAAE,qCAAqC,CAAC,kBAAkB,CAAC;CAC5E,CAAC"}
@@ -276,7 +276,7 @@ interface RoutedOperations<
276
276
  @doc("List a {name}", Resource)
277
277
  @get
278
278
  @listsResource(Resource)
279
- @segmentOf(Resource)
279
+ @segmentOf(ResourceTypeParameter)
280
280
  @armOperationRoute(OverrideRouteOptions)
281
281
  @armResourceList(Resource)
282
282
  @Private.armUpdateProviderNamespace
@@ -286,7 +286,7 @@ interface RoutedOperations<
286
286
  Response extends {} = ArmResponse<ResourceListResult<Resource>>,
287
287
  OverrideErrorType extends {} = ErrorType,
288
288
  OverrideRouteOptions extends valueof ArmOperationOptions = ResourceRoute
289
- >(...ParentParameters, ...Parameters): Response | ErrorType;
289
+ >(...ParentParameters, ...Parameters): Response | OverrideErrorType;
290
290
 
291
291
  /**
292
292
  * A synchronous resource action.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@azure-tools/typespec-azure-resource-manager",
3
- "version": "0.59.0-dev.0",
3
+ "version": "0.59.0-dev.2",
4
4
  "author": "Microsoft Corporation",
5
5
  "description": "TypeSpec Azure Resource Manager library",
6
6
  "homepage": "https://azure.github.io/typespec-azure",
@@ -45,23 +45,23 @@
45
45
  },
46
46
  "peerDependencies": {
47
47
  "@azure-tools/typespec-azure-core": "^0.58.0 || >=0.59.0-dev <0.59.0",
48
- "@typespec/compiler": "^1.2.0",
49
- "@typespec/http": "^1.2.0",
50
- "@typespec/openapi": "^1.2.0",
51
- "@typespec/rest": "^0.72.0 || >=0.73.0-dev <0.73.0",
52
- "@typespec/versioning": "^0.72.0 || >=0.73.0-dev <0.73.0"
48
+ "@typespec/compiler": "^1.2.1",
49
+ "@typespec/http": "^1.2.1",
50
+ "@typespec/openapi": "^1.2.1",
51
+ "@typespec/rest": "^0.72.1 || >=0.73.0-dev <0.73.0",
52
+ "@typespec/versioning": "^0.72.1 || >=0.73.0-dev <0.73.0"
53
53
  },
54
54
  "devDependencies": {
55
55
  "@azure-tools/typespec-azure-core": "^0.58.0 || >=0.59.0-dev <0.59.0",
56
- "@types/node": "~24.0.3",
56
+ "@types/node": "~24.1.0",
57
57
  "@types/pluralize": "^0.0.33",
58
- "@typespec/compiler": "^1.2.0",
59
- "@typespec/http": "^1.2.0",
60
- "@typespec/library-linter": "^0.72.0 || >=0.73.0-dev <0.73.0",
61
- "@typespec/openapi": "^1.2.0",
62
- "@typespec/rest": "^0.72.0 || >=0.73.0-dev <0.73.0",
63
- "@typespec/tspd": "^0.72.0 || >=0.73.0-dev <0.73.0",
64
- "@typespec/versioning": "^0.72.0 || >=0.73.0-dev <0.73.0",
58
+ "@typespec/compiler": "^1.2.1",
59
+ "@typespec/http": "^1.2.1",
60
+ "@typespec/library-linter": "^0.72.1 || >=0.73.0-dev <0.73.0",
61
+ "@typespec/openapi": "^1.2.1",
62
+ "@typespec/rest": "^0.72.1 || >=0.73.0-dev <0.73.0",
63
+ "@typespec/tspd": "^0.72.1 || >=0.73.0-dev <0.73.0",
64
+ "@typespec/versioning": "^0.72.1 || >=0.73.0-dev <0.73.0",
65
65
  "@vitest/coverage-v8": "^3.1.2",
66
66
  "@vitest/ui": "^3.1.2",
67
67
  "c8": "^10.1.3",