@azure-tools/typespec-azure-resource-manager 0.31.0-dev.3 → 0.31.0-dev.4

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.
@@ -1,5 +1,5 @@
1
1
  export declare const namespace = "Azure.ResourceManager.Foundations";
2
- import { DecoratorContext, Interface, Model, ModelProperty, Program, Type } from "@typespec/compiler";
2
+ import { DecoratorContext, Interface, Model, ModelProperty, Operation, Program } from "@typespec/compiler";
3
3
  /**
4
4
  * Using ARM common definition for a Model
5
5
  * @param {DecoratorContext} context DecoratorContext object
@@ -9,7 +9,7 @@ import { DecoratorContext, Interface, Model, ModelProperty, Program, Type } from
9
9
  * @param {string?} referenceFile Optional common file path
10
10
  * @returns {void}
11
11
  */
12
- export declare function $armCommonDefinition(context: DecoratorContext, entity: Type, definitionName?: string, version?: string, referenceFile?: string): void;
12
+ export declare function $armCommonDefinition(context: DecoratorContext, entity: Model, definitionName?: string, version?: string, referenceFile?: string): void;
13
13
  /**
14
14
  * Refer an model property to be a common ARM parameter
15
15
  * @param {DecoratorContext} context DecoratorContext object
@@ -19,7 +19,7 @@ export declare function $armCommonDefinition(context: DecoratorContext, entity:
19
19
  * @param {string?} referenceFile Optional common file path
20
20
  * @returns void
21
21
  */
22
- export declare function $armCommonParameter(context: DecoratorContext, entity: Type, parameterName?: string, version?: string, referenceFile?: string): void;
22
+ export declare function $armCommonParameter(context: DecoratorContext, entity: ModelProperty, parameterName?: string, version?: string, referenceFile?: string): void;
23
23
  /**
24
24
  * This decorator dynamically assigns the serviceNamespace from the containing
25
25
  * namespace to the string literal value of the path parameter to which this
@@ -36,7 +36,7 @@ export declare function $assignProviderNameValue(context: DecoratorContext, targ
36
36
  * @param {Type} entity Entity to set namespace. Must be a `Operation`.
37
37
  * @returns
38
38
  */
39
- export declare function $armUpdateProviderNamespace(context: DecoratorContext, entity: Type): void;
39
+ export declare function $armUpdateProviderNamespace(context: DecoratorContext, entity: Operation): void;
40
40
  /**
41
41
  * Check if an interface is extending the Azure.ResourceManager.Operations interface.
42
42
  */
@@ -1 +1 @@
1
- {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../../src/internal.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,SAAS,sCAAsC,CAAC;AAG7D,OAAO,EACL,gBAAgB,EAChB,SAAS,EACT,KAAK,EACL,aAAa,EAEb,OAAO,EAEP,IAAI,EAEL,MAAM,oBAAoB,CAAC;AAS5B;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,IAAI,EACZ,cAAc,CAAC,EAAE,MAAM,EACvB,OAAO,CAAC,EAAE,MAAM,EAChB,aAAa,CAAC,EAAE,MAAM,GACrB,IAAI,CAqBN;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,IAAI,EACZ,aAAa,CAAC,EAAE,MAAM,EACtB,OAAO,CAAC,EAAE,MAAM,EAChB,aAAa,CAAC,EAAE,MAAM,GACrB,IAAI,CAqBN;AAED;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,aAAa,EACrB,YAAY,EAAE,KAAK,GAClB,IAAI,CAON;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,IAAI,QA4BlF;AAED;;GAEG;AACH,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,GAAG,OAAO,CAWvF"}
1
+ {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../../src/internal.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,SAAS,sCAAsC,CAAC;AAG7D,OAAO,EACL,gBAAgB,EAChB,SAAS,EACT,KAAK,EACL,aAAa,EACb,SAAS,EACT,OAAO,EAER,MAAM,oBAAoB,CAAC;AAS5B;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,KAAK,EACb,cAAc,CAAC,EAAE,MAAM,EACvB,OAAO,CAAC,EAAE,MAAM,EAChB,aAAa,CAAC,EAAE,MAAM,GACrB,IAAI,CAiBN;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,aAAa,EACrB,aAAa,CAAC,EAAE,MAAM,EACtB,OAAO,CAAC,EAAE,MAAM,EAChB,aAAa,CAAC,EAAE,MAAM,GACrB,IAAI,CAiBN;AAED;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,aAAa,EACrB,YAAY,EAAE,KAAK,GAClB,IAAI,CAON;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,SAAS,QAwBvF;AAED;;GAEG;AACH,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,GAAG,OAAO,CAWvF"}
@@ -1,6 +1,5 @@
1
1
  export const namespace = "Azure.ResourceManager.Foundations";
2
2
  import { $useRef } from "@azure-tools/typespec-autorest";
3
- import { validateDecoratorTarget, } from "@typespec/compiler";
4
3
  import { getSegment } from "@typespec/rest";
5
4
  import { reportDiagnostic } from "./lib.js";
6
5
  import { getArmProviderNamespace } from "./namespace.js";
@@ -17,9 +16,6 @@ function getArmTypesPath(program) {
17
16
  * @returns {void}
18
17
  */
19
18
  export function $armCommonDefinition(context, entity, definitionName, version, referenceFile) {
20
- if (!validateDecoratorTarget(context, entity, "@armCommonDefinition", "Model")) {
21
- return;
22
- }
23
19
  // Use the name of the model type if not specified
24
20
  if (!definitionName) {
25
21
  definitionName = entity.name;
@@ -47,9 +43,6 @@ export function $armCommonDefinition(context, entity, definitionName, version, r
47
43
  * @returns void
48
44
  */
49
45
  export function $armCommonParameter(context, entity, parameterName, version, referenceFile) {
50
- if (!validateDecoratorTarget(context, entity, "@armCommonParameter", "ModelProperty")) {
51
- return;
52
- }
53
46
  // Use the name of the model type if not specified
54
47
  if (!parameterName) {
55
48
  parameterName = entity.name;
@@ -91,9 +84,6 @@ export function $assignProviderNameValue(context, target, resourceType) {
91
84
  */
92
85
  export function $armUpdateProviderNamespace(context, entity) {
93
86
  const { program } = context;
94
- if (!validateDecoratorTarget(context, entity, "@armUpdateProviderNamespace", "Operation")) {
95
- return;
96
- }
97
87
  const operation = entity;
98
88
  const opInterface = operation.interface;
99
89
  if (opInterface && opInterface.namespace) {
@@ -1 +1 @@
1
- {"version":3,"file":"internal.js","sourceRoot":"","sources":["../../src/internal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"internal.js","sourceRoot":"","sources":["../../src/internal.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,SAAS,GAAG,mCAAmC,CAAC;AAE7D,OAAO,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAC;AAUzD,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAEzD,SAAS,eAAe,CAAC,OAAgB;IACvC,OAAO,OAAO,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,iBAAiB,CAAC;AAClE,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,oBAAoB,CAClC,OAAyB,EACzB,MAAa,EACb,cAAuB,EACvB,OAAgB,EAChB,aAAsB;IAEtB,kDAAkD;IAClD,IAAI,CAAC,cAAc,EAAE;QACnB,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC;KAC9B;IAED,MAAM,QAAQ,GAAW,eAAe,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;IAEjE,mGAAmG;IACnG,IAAI,CAAC,OAAO,IAAI,aAAa,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC;QAAE,OAAO;IACrE,IAAI,CAAC,OAAO;QAAE,OAAO,GAAG,IAAI,CAAC;IAC7B,IAAI,CAAC,aAAa;QAAE,aAAa,GAAG,YAAY,CAAC;IACjD,MAAM,IAAI,GAAW,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC;QAC7C,CAAC,CAAC,GAAG,QAAQ,iBAAiB,cAAc,EAAE;QAC9C,CAAC,CAAC,GAAG,QAAQ,IAAI,OAAO,IAAI,aAAa,iBAAiB,cAAc,EAAE,CAAC;IAE7E,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;AACtC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,mBAAmB,CACjC,OAAyB,EACzB,MAAqB,EACrB,aAAsB,EACtB,OAAgB,EAChB,aAAsB;IAEtB,kDAAkD;IAClD,IAAI,CAAC,aAAa,EAAE;QAClB,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC;KAC7B;IAED,MAAM,QAAQ,GAAW,eAAe,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;IAEjE,mGAAmG;IACnG,IAAI,CAAC,OAAO,IAAI,aAAa,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC;QAAE,OAAO;IACrE,IAAI,CAAC,OAAO;QAAE,OAAO,GAAG,IAAI,CAAC;IAC7B,IAAI,CAAC,aAAa;QAAE,aAAa,GAAG,YAAY,CAAC;IAEjD,MAAM,IAAI,GAAW,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC;QAC7C,CAAC,CAAC,GAAG,QAAQ,gBAAgB,aAAa,EAAE;QAC5C,CAAC,CAAC,GAAG,QAAQ,IAAI,OAAO,IAAI,aAAa,gBAAgB,aAAa,EAAE,CAAC;IAC3E,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;AACtC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,wBAAwB,CACtC,OAAyB,EACzB,MAAqB,EACrB,YAAmB;IAEnB,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IAE5B,MAAM,oBAAoB,GAAG,uBAAuB,CAAC,OAAO,EAAE,YAAqB,CAAC,CAAC;IACrF,IAAI,oBAAoB,EAAE;QACvB,MAAM,CAAC,IAAsB,CAAC,KAAK,GAAG,oBAAoB,CAAC;KAC7D;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,2BAA2B,CAAC,OAAyB,EAAE,MAAiB;IACtF,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IAE5B,MAAM,SAAS,GAAG,MAAmB,CAAC;IACtC,MAAM,WAAW,GAAG,SAAS,CAAC,SAAS,CAAC;IACxC,IAAI,WAAW,IAAI,WAAW,CAAC,SAAS,EAAE;QACxC,MAAM,oBAAoB,GAAG,uBAAuB,CAAC,OAAO,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;QACrF,IAAI,oBAAoB,EAAE;YACxB,yDAAyD;YACzD,MAAM,aAAa,GAAG,SAAS,CAAC,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YACtE,IAAI,aAAa,EAAE;gBACjB,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE;oBACxC,gBAAgB,CAAC,OAAO,EAAE;wBACxB,IAAI,EAAE,4BAA4B;wBAClC,SAAS,EAAE,4BAA4B;wBACvC,MAAM,EAAE,aAAa;qBACtB,CAAC,CAAC;oBACH,OAAO;iBACR;gBAED,aAAa,CAAC,IAAI,CAAC,KAAK,GAAG,oBAAoB,CAAC;aACjD;SACF;KACF;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,4BAA4B,CAAC,OAAgB,EAAE,IAAe;IAC5E,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY,EAAE;QAC9B,OAAO,KAAK,CAAC;KACd;IACD,MAAM,aAAa,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAClD,IAAI,aAAa,EAAE;QACjB,IAAI,UAAU,CAAC,OAAO,EAAE,aAAa,CAAC,KAAK,YAAY,EAAE;YACvD,OAAO,IAAI,CAAC;SACb;KACF;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -1,11 +1,11 @@
1
- import { DecoratorContext, Model, Namespace, Program, Type } from "@typespec/compiler";
1
+ import { DecoratorContext, Model, Namespace, Program } from "@typespec/compiler";
2
2
  /**
3
3
  * `@armProviderNamespace` sets the ARM provider namespace.
4
4
  * @param {DecoratorContext} context DecoratorContext object
5
5
  * @param {type} entity Target of the decorator. Must be `namespace` type
6
6
  * @param {string} armProviderNamespace Provider namespace
7
7
  */
8
- export declare function $armProviderNamespace(context: DecoratorContext, entity: Type, armProviderNamespace?: string): void;
8
+ export declare function $armProviderNamespace(context: DecoratorContext, entity: Namespace, armProviderNamespace?: string): void;
9
9
  /**
10
10
  * Get the ARM provider namespace for a given entity
11
11
  * @param {Program} program
@@ -1 +1 @@
1
- {"version":3,"file":"namespace.d.ts","sourceRoot":"","sources":["../../src/namespace.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,gBAAgB,EAEhB,KAAK,EAEL,SAAS,EAET,OAAO,EACP,IAAI,EAEL,MAAM,oBAAoB,CAAC;AAS5B;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,IAAI,EACZ,oBAAoB,CAAC,EAAE,MAAM,QAsF9B;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,SAAS,GAAG,KAAK,GACxB,MAAM,GAAG,SAAS,CAepB"}
1
+ {"version":3,"file":"namespace.d.ts","sourceRoot":"","sources":["../../src/namespace.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,gBAAgB,EAEhB,KAAK,EAEL,SAAS,EAET,OAAO,EACR,MAAM,oBAAoB,CAAC;AAS5B;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,SAAS,EACjB,oBAAoB,CAAC,EAAE,MAAM,QAmF9B;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,SAAS,GAAG,KAAK,GACxB,MAAM,GAAG,SAAS,CAepB"}
@@ -1,5 +1,5 @@
1
1
  import { __unsupported_enable_checkStandardOperations } from "@azure-tools/typespec-azure-core";
2
- import { addService, getNamespaceFullName, validateDecoratorTarget, } from "@typespec/compiler";
2
+ import { addService, getNamespaceFullName, } from "@typespec/compiler";
3
3
  import * as http from "@typespec/http";
4
4
  import { getAuthentication, setAuthentication, setRouteOptionsForNamespace } from "@typespec/http";
5
5
  import { getResourceTypeForKeyParam } from "@typespec/rest";
@@ -14,9 +14,6 @@ const armProviderNamespacesKey = createStateSymbol("armProviderNamespaces");
14
14
  */
15
15
  export function $armProviderNamespace(context, entity, armProviderNamespace) {
16
16
  const { program } = context;
17
- if (!validateDecoratorTarget(context, entity, "@armProviderNamespace", "Namespace")) {
18
- return;
19
- }
20
17
  if (program.stateMap(armProviderNamespacesKey).size > 0) {
21
18
  reportDiagnostic(program, {
22
19
  code: "single-arm-provider",
@@ -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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"}
@@ -1,4 +1,4 @@
1
- import { DecoratorContext, Model, Operation, Program, Type } from "@typespec/compiler";
1
+ import { DecoratorContext, Model, Operation, Program } from "@typespec/compiler";
2
2
  import { HttpOperation } from "@typespec/http";
3
3
  export type ArmLifecycleOperationKind = "read" | "createOrUpdate" | "update" | "delete";
4
4
  export type ArmOperationKind = ArmLifecycleOperationKind | "list" | "action";
@@ -28,14 +28,14 @@ interface ArmResourceOperationData {
28
28
  operationGroup: string;
29
29
  }
30
30
  export declare function resolveResourceOperations(program: Program, resourceType: Model): ArmResourceOperations;
31
- export declare function $armResourceRead(context: DecoratorContext, target: Type, resourceType: Type): void;
32
- export declare function $armResourceCreateOrUpdate(context: DecoratorContext, target: Type, resourceType: Type): void;
33
- export declare function $armResourceUpdate(context: DecoratorContext, target: Type, resourceType: Type): void;
34
- export declare function $armResourceDelete(context: DecoratorContext, target: Type, resourceType: Type): void;
35
- export declare function $armResourceList(context: DecoratorContext, target: Type, resourceType: Type): void;
36
- export declare function $armRenameListByOperation(context: DecoratorContext, entity: Type, resourceType: Type, parentTypeName?: string, parentFriendlyTypeName?: string): void;
37
- export declare function $armResourceAction(context: DecoratorContext, target: Type, resourceType: Type): void;
38
- export declare function $armResourceCollectionAction(context: DecoratorContext, target: Type): void;
31
+ export declare function $armResourceRead(context: DecoratorContext, target: Operation, resourceType: Model): void;
32
+ export declare function $armResourceCreateOrUpdate(context: DecoratorContext, target: Operation, resourceType: Model): void;
33
+ export declare function $armResourceUpdate(context: DecoratorContext, target: Operation, resourceType: Model): void;
34
+ export declare function $armResourceDelete(context: DecoratorContext, target: Operation, resourceType: Model): void;
35
+ export declare function $armResourceList(context: DecoratorContext, target: Operation, resourceType: Model): void;
36
+ export declare function $armRenameListByOperation(context: DecoratorContext, entity: Operation, resourceType: Model, parentTypeName?: string, parentFriendlyTypeName?: string): void;
37
+ export declare function $armResourceAction(context: DecoratorContext, target: Operation, resourceType: Model): void;
38
+ export declare function $armResourceCollectionAction(context: DecoratorContext, target: Operation): void;
39
39
  export declare function isArmCollectionAction(program: Program, target: Operation): boolean;
40
40
  export {};
41
41
  //# sourceMappingURL=operations.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../../src/operations.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,gBAAgB,EAEhB,KAAK,EACL,SAAS,EACT,OAAO,EACP,IAAI,EAGL,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAoB,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAKjE,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;AA+CD,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,OAAO,EAChB,YAAY,EAAE,KAAK,GAClB,qBAAqB,CAYvB;AAwCD,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,QAE3F;AAED,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,IAAI,EACZ,YAAY,EAAE,IAAI,QASnB;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,QAE7F;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,QAE7F;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,QA8B3F;AAED,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,IAAI,EACZ,YAAY,EAAE,IAAI,EAClB,cAAc,CAAC,EAAE,MAAM,EACvB,sBAAsB,CAAC,EAAE,MAAM,QAqDhC;AAkBD,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,QAsC7F;AASD,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,IAAI,QAInF;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,GAAG,OAAO,CAElF"}
1
+ {"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../../src/operations.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,gBAAgB,EAEhB,KAAK,EACL,SAAS,EACT,OAAO,EACR,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAoB,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAKjE,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;AA+CD,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,OAAO,EAChB,YAAY,EAAE,KAAK,GAClB,qBAAqB,CAYvB;AA2BD,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,SAAS,EACjB,YAAY,EAAE,KAAK,QAGpB;AAED,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,SAAS,EACjB,YAAY,EAAE,KAAK,QASpB;AAED,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,SAAS,EACjB,YAAY,EAAE,KAAK,QAGpB;AAED,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,SAAS,EACjB,YAAY,EAAE,KAAK,QAGpB;AAED,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,SAAS,EACjB,YAAY,EAAE,KAAK,QAkBpB;AAED,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,SAAS,EACjB,YAAY,EAAE,KAAK,EACnB,cAAc,CAAC,EAAE,MAAM,EACvB,sBAAsB,CAAC,EAAE,MAAM,QAyChC;AAkBD,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,SAAS,EACjB,YAAY,EAAE,KAAK,QA0BpB;AASD,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,SAAS,QAExF;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,GAAG,OAAO,CAElF"}
@@ -1,4 +1,4 @@
1
- import { $doc, ignoreDiagnostics, validateDecoratorParamType, validateDecoratorTarget, } from "@typespec/compiler";
1
+ import { $doc, ignoreDiagnostics, } from "@typespec/compiler";
2
2
  import { getHttpOperation } from "@typespec/http";
3
3
  import { $actionSegment, getActionSegment, getParentResource, getSegment } from "@typespec/rest";
4
4
  import { createStateSymbol, reportDiagnostic } from "./lib.js";
@@ -35,15 +35,6 @@ export function resolveResourceOperations(program, resourceType) {
35
35
  };
36
36
  }
37
37
  function setResourceLifecycleOperation(context, target, resourceType, kind, decoratorName) {
38
- // If the properties type is a template parameter, this must be a templated type
39
- if (resourceType.kind === "TemplateParameter") {
40
- return;
41
- }
42
- if (!validateDecoratorTarget(context, target, decoratorName, "Operation") ||
43
- // eslint-disable-next-line deprecation/deprecation
44
- !validateDecoratorParamType(context.program, target, resourceType, "Model")) {
45
- return;
46
- }
47
38
  // Only register methods from non-templated interface types
48
39
  if (target.interface === undefined || target.interface.node.templateParameters.length > 0) {
49
40
  return;
@@ -72,15 +63,6 @@ export function $armResourceDelete(context, target, resourceType) {
72
63
  setResourceLifecycleOperation(context, target, resourceType, "delete", "@armResourceDelete");
73
64
  }
74
65
  export function $armResourceList(context, target, resourceType) {
75
- // If the properties type is a template parameter, this must be a templated type
76
- if (resourceType.kind === "TemplateParameter") {
77
- return;
78
- }
79
- if (!validateDecoratorTarget(context, target, "@armResourceList", "Operation") ||
80
- // eslint-disable-next-line deprecation/deprecation
81
- !validateDecoratorParamType(context.program, target, resourceType, "Model")) {
82
- return;
83
- }
84
66
  // Only register methods from non-templated interface types
85
67
  if (target.interface === undefined || target.interface.node.templateParameters.length > 0) {
86
68
  return;
@@ -98,15 +80,6 @@ export function $armResourceList(context, target, resourceType) {
98
80
  }
99
81
  export function $armRenameListByOperation(context, entity, resourceType, parentTypeName, parentFriendlyTypeName) {
100
82
  const { program } = context;
101
- if (resourceType.kind === "TemplateParameter") {
102
- // Don't execute when this decorator is being applied within a templated interface
103
- return;
104
- }
105
- if (!validateDecoratorTarget(context, entity, "@armRenameListByOperation", "Operation") ||
106
- // eslint-disable-next-line deprecation/deprecation
107
- !validateDecoratorParamType(program, entity, resourceType, "Model")) {
108
- return;
109
- }
110
83
  if (parentTypeName === undefined ||
111
84
  parentTypeName === "" ||
112
85
  parentFriendlyTypeName === undefined ||
@@ -151,15 +124,6 @@ function getArmParentName(program, resource) {
151
124
  export function $armResourceAction(context, target, resourceType) {
152
125
  var _a;
153
126
  const { program } = context;
154
- // If the properties type is a template parameter, this must be a templated type
155
- if (resourceType.kind === "TemplateParameter") {
156
- return;
157
- }
158
- if (!validateDecoratorTarget(context, target, "@armResourceAction", "Operation") ||
159
- // eslint-disable-next-line deprecation/deprecation
160
- !validateDecoratorParamType(program, target, resourceType, "Model")) {
161
- return;
162
- }
163
127
  // Only register methods from non-templated interface types
164
128
  if (target.interface === undefined || target.interface.node.templateParameters.length > 0) {
165
129
  return;
@@ -187,8 +151,6 @@ function uncapitalize(name) {
187
151
  return name[0].toLowerCase() + name.substring(1);
188
152
  }
189
153
  export function $armResourceCollectionAction(context, target) {
190
- if (!validateDecoratorTarget(context, target, "@armResourceCollectionAction", "Operation"))
191
- return;
192
154
  context.program.stateMap(armResourceCollectionActionKey).set(target, true);
193
155
  }
194
156
  export function isArmCollectionAction(program, target) {
@@ -1 +1 @@
1
- {"version":3,"file":"operations.js","sourceRoot":"","sources":["../../src/operations.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EAEJ,iBAAiB,EAKjB,0BAA0B,EAC1B,uBAAuB,GACxB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,gBAAgB,EAAiB,MAAM,gBAAgB,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjG,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AA2C1F,MAAM,wBAAwB,GAAG,iBAAiB,CAAC,uBAAuB,CAAC,CAAC;AAC5E,MAAM,8BAA8B,GAAG,iBAAiB,CAAC,6BAA6B,CAAC,CAAC;AAExF,SAAS,wBAAwB,CAC/B,OAAgB,EAChB,YAAmB;IAEnB,IAAI,UAAU,GAAG,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAC9E,IAAI,CAAC,UAAU,EAAE;QACf,UAAU,GAAG,EAAE,SAAS,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;QACvD,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;KAC1E;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;QAC9C,MAAM,aAAa,GAAG,iBAAiB,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;QACnF,MAAM,CAAC,GAAG,CAAC,GAAG;YACZ,GAAG,IAAI;YACP,IAAI,EAAE,aAAa,CAAC,IAAI;YACxB,aAAa,EAAE,aAAa;SAC7B,CAAC;KACH;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,MAAY,EACZ,YAAkB,EAClB,IAA+B,EAC/B,aAAqB;IAErB,gFAAgF;IAChF,IAAI,YAAY,CAAC,IAAI,KAAK,mBAAmB,EAAE;QAC7C,OAAO;KACR;IAED,IACE,CAAC,uBAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,WAAW,CAAC;QACrE,mDAAmD;QACnD,CAAC,0BAA0B,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,CAAC,EAC3E;QACA,OAAO;KACR;IAED,2DAA2D;IAC3D,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE;QACzF,OAAO;KACR;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,UAAU,gBAAgB,CAAC,OAAyB,EAAE,MAAY,EAAE,YAAkB;IAC1F,6BAA6B,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,kBAAkB,CAAC,CAAC;AAC3F,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,OAAyB,EACzB,MAAY,EACZ,YAAkB;IAElB,6BAA6B,CAC3B,OAAO,EACP,MAAM,EACN,YAAY,EACZ,gBAAgB,EAChB,4BAA4B,CAC7B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,OAAyB,EAAE,MAAY,EAAE,YAAkB;IAC5F,6BAA6B,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,oBAAoB,CAAC,CAAC;AAC/F,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,OAAyB,EAAE,MAAY,EAAE,YAAkB;IAC5F,6BAA6B,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,oBAAoB,CAAC,CAAC;AAC/F,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,OAAyB,EAAE,MAAY,EAAE,YAAkB;IAC1F,gFAAgF;IAChF,IAAI,YAAY,CAAC,IAAI,KAAK,mBAAmB,EAAE;QAC7C,OAAO;KACR;IAED,IACE,CAAC,uBAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,kBAAkB,EAAE,WAAW,CAAC;QAC1E,mDAAmD;QACnD,CAAC,0BAA0B,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,CAAC,EAC3E;QACA,OAAO;KACR;IAED,2DAA2D;IAC3D,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE;QACzF,OAAO;KACR;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;AAED,MAAM,UAAU,yBAAyB,CACvC,OAAyB,EACzB,MAAY,EACZ,YAAkB,EAClB,cAAuB,EACvB,sBAA+B;IAE/B,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IAC5B,IAAI,YAAY,CAAC,IAAI,KAAK,mBAAmB,EAAE;QAC7C,kFAAkF;QAClF,OAAO;KACR;IAED,IACE,CAAC,uBAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,2BAA2B,EAAE,WAAW,CAAC;QACnF,mDAAmD;QACnD,CAAC,0BAA0B,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,CAAC,EACnE;QACA,OAAO;KACR;IAED,IACE,cAAc,KAAK,SAAS;QAC5B,cAAc,KAAK,EAAE;QACrB,sBAAsB,KAAK,SAAS;QACpC,sBAAsB,KAAK,EAAE,EAC7B;QACA,CAAC,cAAc,EAAE,sBAAsB,CAAC,GAAG,gBAAgB,CAAC,OAAO,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;KAC5F;IACD,MAAM,UAAU,GAAG,iBAAiB,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IAC5D,IAAI,UAAU,EAAE;QACd,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QACnE,IAAI,CAAC,kBAAkB,EAAE;YACvB,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;SACR;QAED,2DAA2D;QAC3D,cAAc,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;KAClF;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,yBAAyB;IACzB,MAAM,CAAC,IAAI,GAAG,cAAc,KAAK,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,cAAc,EAAE,CAAC;AACpF,CAAC;AAED,SAAS,gBAAgB,CAAC,OAAgB,EAAE,QAAe;IACzD,QAAQ,mBAAmB,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE;QAC9C,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;KAC9C;AACH,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,OAAyB,EAAE,MAAY,EAAE,YAAkB;;IAC5F,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IAE5B,gFAAgF;IAChF,IAAI,YAAY,CAAC,IAAI,KAAK,mBAAmB,EAAE;QAC7C,OAAO;KACR;IAED,IACE,CAAC,uBAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,oBAAoB,EAAE,WAAW,CAAC;QAC5E,mDAAmD;QACnD,CAAC,0BAA0B,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,CAAC,EACnE;QACA,OAAO;KACR;IAED,2DAA2D;IAC3D,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE;QACzF,OAAO;KACR;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,MAAA,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,mCAAI,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACjF,IAAI,CAAC,OAAO,EAAE;QACZ,2DAA2D;QAC3D,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM,EAAE,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;KACjE;AACH,CAAC;AAED,SAAS,YAAY,CAAC,IAAY;IAChC,IAAI,IAAI,KAAK,EAAE,EAAE;QACf,OAAO,IAAI,CAAC;KACb;IACD,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;AACnD,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,OAAyB,EAAE,MAAY;IAClF,IAAI,CAAC,uBAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,8BAA8B,EAAE,WAAW,CAAC;QACxF,OAAO;IACT,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,8BAA8B,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AAC7E,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,OAAgB,EAAE,MAAiB;IACvE,OAAO,OAAO,CAAC,QAAQ,CAAC,8BAA8B,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC;AAC/E,CAAC"}
1
+ {"version":3,"file":"operations.js","sourceRoot":"","sources":["../../src/operations.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { DecoratorContext, Model, ModelProperty, Program, Type } from "@typespec/compiler";
1
+ import { DecoratorContext, Interface, Model, ModelProperty, Operation, Program, Tuple } from "@typespec/compiler";
2
2
  import { ArmResourceOperations } from "./operations.js";
3
3
  export type ArmResourceKind = "Tracked" | "Proxy" | "Extension";
4
4
  /**
@@ -39,7 +39,7 @@ export declare function getArmResourceKind(resourceType: Model): ArmResourceKind
39
39
  * decorator, so it also gets applied to the type which absorbs the `TrackedResource<T>`
40
40
  * definition by using the `is` keyword.
41
41
  */
42
- export declare function $armResourceInternal(context: DecoratorContext, resourceType: Type, propertiesType: Type): void;
42
+ export declare function $armResourceInternal(context: DecoratorContext, resourceType: Model, propertiesType: Model): void;
43
43
  /**
44
44
  * This decorator is used to identify interfaces containing resource operations.
45
45
  * When applied, it marks the interface with the `@autoRoute` decorator so that
@@ -50,14 +50,14 @@ export declare function $armResourceInternal(context: DecoratorContext, resource
50
50
  * of the operations will be grouped based on the interface name in generated
51
51
  * clients.
52
52
  */
53
- export declare function $armResourceOperations(context: DecoratorContext, interfaceType: Type): void;
53
+ export declare function $armResourceOperations(context: DecoratorContext, interfaceType: Interface): void;
54
54
  /**
55
55
  * This decorator is used to mark a resource type as a "singleton", a type with
56
56
  * only one instance. The standard set of resource operations can be applied to
57
57
  * such a resource type, they will generate the correct routes and parameter
58
58
  * lists.
59
59
  */
60
- export declare function $singleton(context: DecoratorContext, resourceType: Type, keyValue?: string): void;
60
+ export declare function $singleton(context: DecoratorContext, resourceType: Model, keyValue?: string): void;
61
61
  export declare function isSingletonResource(program: Program, resourceType: Model): boolean;
62
62
  export declare function getSingletonResourceKey(program: Program, resourceType: Model): string | undefined;
63
63
  export declare enum ResourceBaseType {
@@ -67,15 +67,15 @@ export declare enum ResourceBaseType {
67
67
  ResourceGroup = "ResourceGroup",
68
68
  Extension = "Extension"
69
69
  }
70
- export declare function $tenantResource(context: DecoratorContext, entity: Type): void;
71
- export declare function $subscriptionResource(context: DecoratorContext, entity: Type): void;
72
- export declare function $locationResource(context: DecoratorContext, entity: Type): void;
73
- export declare function $resourceGroupResource(context: DecoratorContext, entity: Type): void;
74
- export declare function $extensionResource(context: DecoratorContext, entity: Type): void;
75
- export declare function $armProviderNameValue(context: DecoratorContext, entity: Type): void;
76
- export declare function $resourceParameterBaseFor(context: DecoratorContext, entity: Type, values: Type): void;
77
- export declare function $resourceBaseParametersOf(context: DecoratorContext, entity: Type, resourceType: Type): void;
78
- export declare function $omitIfEmpty(context: DecoratorContext, entity: Type, propertyName: string): void;
70
+ export declare function $tenantResource(context: DecoratorContext, entity: Model): void;
71
+ export declare function $subscriptionResource(context: DecoratorContext, entity: Model): void;
72
+ export declare function $locationResource(context: DecoratorContext, entity: Model): void;
73
+ export declare function $resourceGroupResource(context: DecoratorContext, entity: Model): void;
74
+ export declare function $extensionResource(context: DecoratorContext, entity: Model): void;
75
+ export declare function $armProviderNameValue(context: DecoratorContext, entity: Operation): void;
76
+ export declare function $resourceParameterBaseFor(context: DecoratorContext, entity: ModelProperty, values: Tuple): void;
77
+ export declare function $resourceBaseParametersOf(context: DecoratorContext, entity: Model, resourceType: Model): void;
78
+ export declare function $omitIfEmpty(context: DecoratorContext, entity: Model, propertyName: string): void;
79
79
  export declare function isResourceParameterBaseFor(program: Program, property: ModelProperty, resourceBaseType: string): boolean;
80
80
  export declare function getResourceParameterBases(program: Program, property: ModelProperty): string[] | undefined;
81
81
  export declare function getResourceBaseType(program: Program, resource: Model): ResourceBaseType;
@@ -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,4 +1,4 @@
1
- import { $tag, $visibility, getKeyName, getTags, getTypeName, isGlobalNamespace, validateDecoratorParamType, validateDecoratorTarget, } from "@typespec/compiler";
1
+ import { $tag, $visibility, getKeyName, getTags, getTypeName, isGlobalNamespace, } from "@typespec/compiler";
2
2
  import { $autoRoute, getParentResource, getSegment } from "@typespec/rest";
3
3
  import { createStateSymbol, reportDiagnostic } from "./lib.js";
4
4
  import { getArmProviderNamespace } from "./namespace.js";
@@ -78,15 +78,6 @@ export function getArmResourceKind(resourceType) {
78
78
  */
79
79
  export function $armResourceInternal(context, resourceType, propertiesType) {
80
80
  const { program } = context;
81
- // If the properties type is a template parameter, this must be a templated type
82
- if (propertiesType.kind === "TemplateParameter") {
83
- return;
84
- }
85
- if (!validateDecoratorTarget(context, resourceType, "@armResource", "Model") ||
86
- // eslint-disable-next-line deprecation/deprecation
87
- !validateDecoratorParamType(program, resourceType, propertiesType, "Model")) {
88
- return;
89
- }
90
81
  if (resourceType.namespace && getTypeName(resourceType.namespace) === "Azure.ResourceManager") {
91
82
  // The @armResource decorator will be evaluated on instantiations of
92
83
  // base templated resource types like TrackedResource<SomeResource>,
@@ -167,9 +158,6 @@ export function $armResourceInternal(context, resourceType, propertiesType) {
167
158
  */
168
159
  export function $armResourceOperations(context, interfaceType) {
169
160
  const { program } = context;
170
- if (!validateDecoratorTarget(context, interfaceType, "@armResourceOperations", "Interface")) {
171
- return undefined;
172
- }
173
161
  // All resource interfaces should use @autoRoute
174
162
  context.call($autoRoute, interfaceType);
175
163
  // If no tag is given for the interface, tag it with the interface name
@@ -184,9 +172,6 @@ export function $armResourceOperations(context, interfaceType) {
184
172
  * lists.
185
173
  */
186
174
  export function $singleton(context, resourceType, keyValue = "default") {
187
- if (!validateDecoratorTarget(context, resourceType, "@singleton", "Model")) {
188
- return undefined;
189
- }
190
175
  context.program.stateMap(armSingletonResourcesKey).set(resourceType, keyValue);
191
176
  }
192
177
  export function isSingletonResource(program, resourceType) {
@@ -206,38 +191,21 @@ export var ResourceBaseType;
206
191
  const resourceBaseTypeKey = createStateSymbol("resourceBaseTypeKey");
207
192
  const parameterBaseTypesKey = createStateSymbol("parameterBaseTypesKey");
208
193
  export function $tenantResource(context, entity) {
209
- if (!validateDecoratorTarget(context, entity, "@tenantResource", "Model")) {
210
- return;
211
- }
212
194
  setResourceBaseType(context.program, entity, "Tenant");
213
195
  }
214
196
  export function $subscriptionResource(context, entity) {
215
- if (!validateDecoratorTarget(context, entity, "@subscriptionResource", "Model")) {
216
- return;
217
- }
218
197
  setResourceBaseType(context.program, entity, "Subscription");
219
198
  }
220
199
  export function $locationResource(context, entity) {
221
- if (!validateDecoratorTarget(context, entity, "@locationResource", "Model")) {
222
- return;
223
- }
224
200
  setResourceBaseType(context.program, entity, "Location");
225
201
  }
226
202
  export function $resourceGroupResource(context, entity) {
227
- if (!validateDecoratorTarget(context, entity, "@resourceGroupResource", "Model")) {
228
- return;
229
- }
230
203
  setResourceBaseType(context.program, entity, "ResourceGroup");
231
204
  }
232
205
  export function $extensionResource(context, entity) {
233
- if (!validateDecoratorTarget(context, entity, "@extensionResource", "Model")) {
234
- return;
235
- }
236
206
  setResourceBaseType(context.program, entity, "Extension");
237
207
  }
238
208
  export function $armProviderNameValue(context, entity) {
239
- if (!validateDecoratorTarget(context, entity, "@armProviderNameValue", "Operation"))
240
- return;
241
209
  const armProvider = getServiceNamespace(context.program, entity);
242
210
  if (armProvider === undefined)
243
211
  return;
@@ -265,12 +233,6 @@ function getServiceNamespace(program, type) {
265
233
  }
266
234
  }
267
235
  export function $resourceParameterBaseFor(context, entity, values) {
268
- if (!validateDecoratorTarget(context, entity, "@resourceParameterBaseFor", "ModelProperty")) {
269
- return;
270
- }
271
- if (!validateDecoratorTarget(context, values, "@resourceParameterBaseFor", "Tuple")) {
272
- return;
273
- }
274
236
  const resolvedValues = [];
275
237
  for (const value of values.values) {
276
238
  if (value.kind !== "EnumMember") {
@@ -281,12 +243,6 @@ export function $resourceParameterBaseFor(context, entity, values) {
281
243
  context.program.stateMap(parameterBaseTypesKey).set(entity, resolvedValues);
282
244
  }
283
245
  export function $resourceBaseParametersOf(context, entity, resourceType) {
284
- if (!validateDecoratorTarget(context, entity, "@resourceBaseParameterseOf", "Model")) {
285
- return;
286
- }
287
- if (!validateDecoratorTarget(context, resourceType, "@resourceBaseParameterseOf", "Model")) {
288
- return;
289
- }
290
246
  const targetResourceBaseType = getResourceBaseType(context.program, resourceType);
291
247
  const removedProperties = [];
292
248
  for (const [propertyName, property] of entity.properties) {
@@ -298,9 +254,6 @@ export function $resourceBaseParametersOf(context, entity, resourceType) {
298
254
  }
299
255
  }
300
256
  export function $omitIfEmpty(context, entity, propertyName) {
301
- if (!validateDecoratorTarget(context, entity, "@omitIfEmpty", "Model")) {
302
- return;
303
- }
304
257
  const modelProp = getProperty(entity, propertyName);
305
258
  if (modelProp &&
306
259
  modelProp.type.kind === "Model" &&
@@ -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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"}
@@ -0,0 +1,37 @@
1
+ namespace Azure.ResourceManager.Foundations;
2
+
3
+ using TypeSpec.Reflection;
4
+
5
+ /**
6
+ * Update the ARM provider namespace for a given entity.
7
+ */
8
+ extern dec armUpdateProviderNamespace(target: Reflection.Operation);
9
+
10
+ /**
11
+ * @param resource Resource model
12
+ */
13
+ extern dec assignProviderNameValue(target: ModelProperty, resource: Model);
14
+
15
+ /**
16
+ * @param definitionName Definition name
17
+ * @param version Arm Version
18
+ * @param referenceFile Reference file
19
+ */
20
+ extern dec armCommonDefinition(
21
+ target: Model,
22
+ definitionName?: string,
23
+ version?: string,
24
+ referenceFile?: string
25
+ );
26
+
27
+ /**
28
+ * @param definitionName Definition name
29
+ * @param version Arm Version
30
+ * @param referenceFile Reference file
31
+ */
32
+ extern dec armCommonParameter(
33
+ target: ModelProperty,
34
+ definitionName?: string,
35
+ version?: string,
36
+ referenceFile?: string
37
+ );
package/lib/arm.tsp CHANGED
@@ -8,6 +8,7 @@ import "@azure-tools/typespec-autorest";
8
8
  import "@azure-tools/typespec-azure-core";
9
9
 
10
10
  import "./arm.foundations.tsp";
11
+ import "./arm.foundations.decorators.tsp";
11
12
  import "./models.tsp";
12
13
  import "./operations.tsp";
13
14
  import "./decorators.tsp";
@@ -96,4 +96,91 @@ extern dec armProviderNameValue(target: Operation | object);
96
96
  /**
97
97
  * Marks the operation as being a collection action
98
98
  */
99
- extern dec armResourceCollectionAction(target: Operation | object);
99
+ extern dec armResourceCollectionAction(target: Operation);
100
+
101
+ /**
102
+ * Marks the operation as being a collection action
103
+ * @param resourceType Resource
104
+ * @param parentTypeName: Parent type name.
105
+ * @param parentFriendlyTypeName Friendly name for parent.
106
+ */
107
+ extern dec armRenameListByOperation(
108
+ target: Operation,
109
+ resourceType: Model,
110
+ parentTypeName?: string,
111
+ parentFriendlyTypeName?: string
112
+ );
113
+
114
+ /**
115
+ * @param resourceType Resource model
116
+ */
117
+ extern dec armResourceAction(target: Operation, resourceType: Model);
118
+
119
+ /**
120
+ * @param resourceType Resource model
121
+ */
122
+ extern dec armResourceCreateOrUpdate(target: Operation, resourceType: Model);
123
+
124
+ /**
125
+ * @param resourceType Resource model
126
+ */
127
+ extern dec armResourceRead(target: Operation, resourceType: Model);
128
+
129
+ /**
130
+ * @param resourceType Resource model
131
+ */
132
+ extern dec armResourceUpdate(target: Operation, resourceType: Model);
133
+
134
+ /**
135
+ * @param resourceType Resource model
136
+ */
137
+ extern dec armResourceDelete(target: Operation, resourceType: Model);
138
+
139
+ /**
140
+ * @param resourceType Resource model
141
+ */
142
+ extern dec armResourceList(target: Operation, resourceType: Model);
143
+
144
+ /**
145
+ * This decorator is used to identify ARM resource types and extract their
146
+ * metadata. It is *not* meant to be used directly by a spec author, it instead
147
+ * gets implicitly applied when the spec author defines a model type in this form:
148
+ *
149
+ * `model Server is TrackedResource<ServerProperties>;`
150
+ *
151
+ * The `TrackedResource<T>` type (and other associated base types) use the `@armResource`
152
+ * decorator, so it also gets applied to the type which absorbs the `TrackedResource<T>`
153
+ * definition by using the `is` keyword.
154
+ *
155
+ * @param properties Arm resource properties
156
+ */
157
+ extern dec armResourceInternal(target: Model, properties: Model);
158
+
159
+ /**
160
+ * This decorator is used to identify interfaces containing resource operations.
161
+ * When applied, it marks the interface with the `@autoRoute` decorator so that
162
+ * all of its contained operations will have their routes generated
163
+ * automatically.
164
+ *
165
+ * It also adds a `@tag` decorator bearing the name of the interface so that all
166
+ * of the operations will be grouped based on the interface name in generated
167
+ * clients.
168
+ * @param _ DEPRECATED
169
+ */
170
+ extern dec armResourceOperations(target: Interface, _?: unknown);
171
+
172
+ /**
173
+ * Omit a property in the target model.
174
+ * @internal
175
+ * @param propertyName Name of the property to omit
176
+ */
177
+ extern dec omitIfEmpty(target: Model, propertyName: string);
178
+
179
+ /**
180
+ * @param propertyName Name of the property to omit
181
+ */
182
+ extern dec resourceBaseParametersOf(target: Model, propertyName: Model);
183
+ /**
184
+ * @param values Values
185
+ */
186
+ extern dec resourceParameterBaseFor(target: ModelProperty, values: unknown[]);
@@ -155,8 +155,8 @@ interface ResourceListBySubscription<TResource extends ArmResource> {
155
155
  interface ResourceListByParent<
156
156
  TResource extends ArmResource,
157
157
  TBaseParameters = BaseParameters<TResource>,
158
- TParentName = "",
159
- TParentFriendlyName = ""
158
+ TParentName extends string = "",
159
+ TParentFriendlyName extends string = ""
160
160
  > {
161
161
  /**
162
162
  * List resources by parent.
package/lib/models.tsp CHANGED
@@ -15,7 +15,7 @@ namespace Azure.ResourceManager;
15
15
  @doc("Concrete tracked resource types can be created by aliasing this type using a specific property type.")
16
16
  @armResourceInternal(TProperties)
17
17
  @includeInapplicableMetadataInPayload(false)
18
- model TrackedResource<TProperties> extends TrackedResourceBase {
18
+ model TrackedResource<TProperties extends {}> extends TrackedResourceBase {
19
19
  @doc("The resource-specific properties for this resource.")
20
20
  @visibility("read", "create")
21
21
  @extension("x-ms-client-flatten", true)
@@ -31,7 +31,7 @@ model TrackedResource<TProperties> extends TrackedResourceBase {
31
31
  @doc("Concrete proxy resource types can be created by aliasing this type using a specific property type.")
32
32
  @armResourceInternal(TProperties)
33
33
  @includeInapplicableMetadataInPayload(false)
34
- model ProxyResource<TProperties> extends ProxyResourceBase {
34
+ model ProxyResource<TProperties extends {}> extends ProxyResourceBase {
35
35
  @doc("The resource-specific properties for this resource.")
36
36
  @visibility("read", "create")
37
37
  @extension("x-ms-client-flatten", true)
@@ -48,7 +48,7 @@ model ProxyResource<TProperties> extends ProxyResourceBase {
48
48
  @doc("Concrete extension resource types can be created by aliasing this type using a specific property type.")
49
49
  @armResourceInternal(TProperties)
50
50
  @includeInapplicableMetadataInPayload(false)
51
- model ExtensionResource<TProperties> extends ExtensionResourceBase {
51
+ model ExtensionResource<TProperties extends {}> extends ExtensionResourceBase {
52
52
  @doc("The resource-specific properties for this resource.")
53
53
  @visibility("read", "create")
54
54
  @extension("x-ms-client-flatten", true)
@@ -76,7 +76,7 @@ model ParentKeysOf<TResource> {}
76
76
  * Model describing the provider namespace.
77
77
  * @template TResource The resource provided by the namespace.
78
78
  */
79
- model ProviderNamespace<TResource> {
79
+ model ProviderNamespace<TResource extends {}> {
80
80
  @path
81
81
  @segment("providers")
82
82
  @assignProviderNameValue(TResource)
@@ -38,8 +38,8 @@ op ArmListBySubscription<TResource extends ArmResource>(
38
38
  op ArmResourceListByParent<
39
39
  TResource extends ArmResource,
40
40
  TBaseParameters = BaseParameters<TResource>,
41
- TParentName = "",
42
- TParentFriendlyName = ""
41
+ TParentName extends string = "",
42
+ TParentFriendlyName extends string = ""
43
43
  >(
44
44
  ...ResourceParentParameters<TResource, TBaseParameters>
45
45
  ): ArmResponse<ResourceListResult<TResource>> | ErrorResponse;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@azure-tools/typespec-azure-resource-manager",
3
- "version": "0.31.0-dev.3",
3
+ "version": "0.31.0-dev.4",
4
4
  "author": "Microsoft Corporation",
5
5
  "description": "TypeSpec Azure Resource Manager library",
6
6
  "homepage": "https://azure.github.io/typespec-azure",