@azure-tools/typespec-azure-resource-manager 0.36.0-dev.5 → 0.36.0-dev.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -12,6 +12,7 @@ npm install @azure-tools/typespec-azure-resource-manager
12
12
 
13
13
  ### Azure.ResourceManager
14
14
 
15
+ - [`@armCommonTypesVersion`](#@armcommontypesversion)
15
16
  - [`@armLibraryNamespace`](#@armlibrarynamespace)
16
17
  - [`@armProviderNamespace`](#@armprovidernamespace)
17
18
  - [`@armProviderNameValue`](#@armprovidernamevalue)
@@ -32,6 +33,25 @@ npm install @azure-tools/typespec-azure-resource-manager
32
33
  - [`@tenantResource`](#@tenantresource)
33
34
  - [`@useLibraryNamespace`](#@uselibrarynamespace)
34
35
 
36
+ #### `@armCommonTypesVersion`
37
+
38
+ This decorator is used either on a namespace or a version enum value to indicate
39
+ the version of the ARM common-types to use for refs in emitted Swagger files.
40
+
41
+ ```typespec
42
+ @Azure.ResourceManager.armCommonTypesVersion(version: valueof string | EnumMember)
43
+ ```
44
+
45
+ ##### Target
46
+
47
+ `union Namespace | EnumMember`
48
+
49
+ ##### Parameters
50
+
51
+ | Name | Type | Description |
52
+ | ------- | ------------------------------------ | ------------------------------------------------------------------------------------------------------------------ |
53
+ | version | `valueof union string \| EnumMember` | The Azure.ResourceManager.CommonTypes.Versions for the desired common-types version or an equivalent string value. |
54
+
35
55
  #### `@armLibraryNamespace`
36
56
 
37
57
  `@armLibraryNamespace` designates a namespace as containign ARM Provider information.
@@ -1,8 +1,25 @@
1
- import { Type } from "@typespec/compiler";
1
+ import { DecoratorContext, Enum, EnumMember, Namespace, Program, Type } from "@typespec/compiler";
2
+ export interface ArmCommonTypeVersions {
3
+ type: Enum;
4
+ allVersions: EnumMember[];
5
+ }
6
+ export declare function getArmCommonTypesVersions(program: Program): ArmCommonTypeVersions | undefined;
2
7
  /**
3
8
  * Check if a given model or model property is an ARM common type.
4
9
  * @param {Type} entity - The entity to be checked.
5
10
  * @return {boolean} - A boolean value indicating whether an entity is an ARM common type.
6
11
  */
7
12
  export declare function isArmCommonType(entity: Type): boolean;
13
+ /**
14
+ * `@armCommonTypesVersion` sets the ARM common-types version used by the service.
15
+ * @param {DecoratorContext} context DecoratorContext object
16
+ * @param {type} entity Target of the decorator. Must be `Namespace` or `EnumMember` type
17
+ */
18
+ export declare function $armCommonTypesVersion(context: DecoratorContext, entity: Namespace | EnumMember, version: string | EnumMember): void;
19
+ /**
20
+ * Returns the ARM common-types version used by the service.
21
+ * @param {DecoratorContext} context DecoratorContext object
22
+ * @param {type} entity Target of the decorator. Must be `Namespace` or `EnumMember` type
23
+ */
24
+ export declare function getArmCommonTypesVersion(program: Program, entity: Namespace | EnumMember): string | undefined;
8
25
  //# sourceMappingURL=common-types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"common-types.d.ts","sourceRoot":"","sources":["../../src/common-types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAEjE;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,IAAI,GAAG,OAAO,CAQrD"}
1
+ {"version":3,"file":"common-types.d.ts","sourceRoot":"","sources":["../../src/common-types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,IAAI,EACJ,UAAU,EACV,SAAS,EACT,OAAO,EACP,IAAI,EAEL,MAAM,oBAAoB,CAAC;AAG5B,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,IAAI,CAAC;IACX,WAAW,EAAE,UAAU,EAAE,CAAC;CAC3B;AAED,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,OAAO,GAAG,qBAAqB,GAAG,SAAS,CAK7F;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,IAAI,GAAG,OAAO,CAQrD;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,SAAS,GAAG,UAAU,EAC9B,OAAO,EAAE,MAAM,GAAG,UAAU,QAK7B;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,SAAS,GAAG,UAAU,GAC7B,MAAM,GAAG,SAAS,CAEpB"}
@@ -1,4 +1,11 @@
1
- import { isTypeSpecValueTypeOf } from "@typespec/compiler";
1
+ import { isTypeSpecValueTypeOf, } from "@typespec/compiler";
2
+ import { ArmStateKeys } from "./state.js";
3
+ export function getArmCommonTypesVersions(program) {
4
+ // There is a single instance of ArmCommonTypeVersions stored inside of the
5
+ // state map so just pull the first (only) item from the map.
6
+ const map = program.stateMap(ArmStateKeys.armCommonTypesVersions);
7
+ return map === null || map === void 0 ? void 0 : map.values().next().value;
8
+ }
2
9
  /**
3
10
  * Check if a given model or model property is an ARM common type.
4
11
  * @param {Type} entity - The entity to be checked.
@@ -11,4 +18,22 @@ export function isArmCommonType(entity) {
11
18
  }
12
19
  return false;
13
20
  }
21
+ /**
22
+ * `@armCommonTypesVersion` sets the ARM common-types version used by the service.
23
+ * @param {DecoratorContext} context DecoratorContext object
24
+ * @param {type} entity Target of the decorator. Must be `Namespace` or `EnumMember` type
25
+ */
26
+ export function $armCommonTypesVersion(context, entity, version) {
27
+ context.program
28
+ .stateMap(ArmStateKeys.armCommonTypesVersion)
29
+ .set(entity, typeof version === "string" ? version : version.name);
30
+ }
31
+ /**
32
+ * Returns the ARM common-types version used by the service.
33
+ * @param {DecoratorContext} context DecoratorContext object
34
+ * @param {type} entity Target of the decorator. Must be `Namespace` or `EnumMember` type
35
+ */
36
+ export function getArmCommonTypesVersion(program, entity) {
37
+ return program.stateMap(ArmStateKeys.armCommonTypesVersion).get(entity);
38
+ }
14
39
  //# sourceMappingURL=common-types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"common-types.js","sourceRoot":"","sources":["../../src/common-types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAQ,MAAM,oBAAoB,CAAC;AAEjE;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,MAAY;IAC1C,MAAM,gBAAgB,GAAG,CAAC,sBAAsB,EAAE,qBAAqB,CAAC,CAAC;IACzE,IAAI,qBAAqB,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC,EAAE;QAC7D,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,EAAE,CAC/C,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,KAAK,eAAe,CAAC,CACpE,CAAC;KACH;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"common-types.js","sourceRoot":"","sources":["../../src/common-types.ts"],"names":[],"mappings":"AAAA,OAAO,EAOL,qBAAqB,GACtB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAO1C,MAAM,UAAU,yBAAyB,CAAC,OAAgB;IACxD,2EAA2E;IAC3E,6DAA6D;IAC7D,MAAM,GAAG,GAAmB,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,sBAAsB,CAAC,CAAC;IAClF,OAAO,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,MAAM,GAAG,IAAI,GAAG,KAAY,CAAC;AAC3C,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,MAAY;IAC1C,MAAM,gBAAgB,GAAG,CAAC,sBAAsB,EAAE,qBAAqB,CAAC,CAAC;IACzE,IAAI,qBAAqB,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC,EAAE;QAC7D,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,EAAE,CAC/C,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,KAAK,eAAe,CAAC,CACpE,CAAC;KACH;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,sBAAsB,CACpC,OAAyB,EACzB,MAA8B,EAC9B,OAA4B;IAE5B,OAAO,CAAC,OAAO;SACZ,QAAQ,CAAC,YAAY,CAAC,qBAAqB,CAAC;SAC5C,GAAG,CAAC,MAAM,EAAE,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AACvE,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,wBAAwB,CACtC,OAAgB,EAChB,MAA8B;IAE9B,OAAO,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AAC1E,CAAC"}
package/dist/src/lib.d.ts CHANGED
@@ -29,6 +29,9 @@ export declare const $lib: import("@typespec/compiler").TypeSpecLibrary<{
29
29
  "arm-resource-missing": {
30
30
  default: import("@typespec/compiler").CallableMessage<[string]>;
31
31
  };
32
+ "arm-common-types-incompatible-version": {
33
+ default: import("@typespec/compiler").CallableMessage<[string, string]>;
34
+ };
32
35
  "decorator-in-namespace": {
33
36
  default: import("@typespec/compiler").CallableMessage<[string]>;
34
37
  };
@@ -36,7 +39,7 @@ export declare const $lib: import("@typespec/compiler").TypeSpecLibrary<{
36
39
  notResourceType: import("@typespec/compiler").CallableMessage<[string, string]>;
37
40
  };
38
41
  }, Record<string, any>>;
39
- export declare const reportDiagnostic: <C extends "single-arm-provider" | "decorator-param-wrong-type" | "arm-resource-circular-ancestry" | "arm-resource-duplicate-base-parameter" | "arm-resource-missing-name-property" | "arm-resource-missing-name-key-decorator" | "arm-resource-missing-name-segment-decorator" | "arm-resource-missing-arm-namespace" | "arm-resource-invalid-base-type" | "arm-resource-missing" | "decorator-in-namespace" | "parent-type", M extends keyof {
42
+ export declare const reportDiagnostic: <C extends "single-arm-provider" | "decorator-param-wrong-type" | "arm-resource-circular-ancestry" | "arm-resource-duplicate-base-parameter" | "arm-resource-missing-name-property" | "arm-resource-missing-name-key-decorator" | "arm-resource-missing-name-segment-decorator" | "arm-resource-missing-arm-namespace" | "arm-resource-invalid-base-type" | "arm-resource-missing" | "arm-common-types-incompatible-version" | "decorator-in-namespace" | "parent-type", M extends keyof {
40
43
  "single-arm-provider": {
41
44
  default: string;
42
45
  };
@@ -67,6 +70,9 @@ export declare const reportDiagnostic: <C extends "single-arm-provider" | "decor
67
70
  "arm-resource-missing": {
68
71
  default: import("@typespec/compiler").CallableMessage<[string]>;
69
72
  };
73
+ "arm-common-types-incompatible-version": {
74
+ default: import("@typespec/compiler").CallableMessage<[string, string]>;
75
+ };
70
76
  "decorator-in-namespace": {
71
77
  default: import("@typespec/compiler").CallableMessage<[string]>;
72
78
  };
@@ -104,13 +110,16 @@ export declare const reportDiagnostic: <C extends "single-arm-provider" | "decor
104
110
  "arm-resource-missing": {
105
111
  default: import("@typespec/compiler").CallableMessage<[string]>;
106
112
  };
113
+ "arm-common-types-incompatible-version": {
114
+ default: import("@typespec/compiler").CallableMessage<[string, string]>;
115
+ };
107
116
  "decorator-in-namespace": {
108
117
  default: import("@typespec/compiler").CallableMessage<[string]>;
109
118
  };
110
119
  "parent-type": {
111
120
  notResourceType: import("@typespec/compiler").CallableMessage<[string, string]>;
112
121
  };
113
- }, C, M>) => void, createDiagnostic: <C extends "single-arm-provider" | "decorator-param-wrong-type" | "arm-resource-circular-ancestry" | "arm-resource-duplicate-base-parameter" | "arm-resource-missing-name-property" | "arm-resource-missing-name-key-decorator" | "arm-resource-missing-name-segment-decorator" | "arm-resource-missing-arm-namespace" | "arm-resource-invalid-base-type" | "arm-resource-missing" | "decorator-in-namespace" | "parent-type", M extends keyof {
122
+ }, C, M>) => void, createDiagnostic: <C extends "single-arm-provider" | "decorator-param-wrong-type" | "arm-resource-circular-ancestry" | "arm-resource-duplicate-base-parameter" | "arm-resource-missing-name-property" | "arm-resource-missing-name-key-decorator" | "arm-resource-missing-name-segment-decorator" | "arm-resource-missing-arm-namespace" | "arm-resource-invalid-base-type" | "arm-resource-missing" | "arm-common-types-incompatible-version" | "decorator-in-namespace" | "parent-type", M extends keyof {
114
123
  "single-arm-provider": {
115
124
  default: string;
116
125
  };
@@ -141,6 +150,9 @@ export declare const reportDiagnostic: <C extends "single-arm-provider" | "decor
141
150
  "arm-resource-missing": {
142
151
  default: import("@typespec/compiler").CallableMessage<[string]>;
143
152
  };
153
+ "arm-common-types-incompatible-version": {
154
+ default: import("@typespec/compiler").CallableMessage<[string, string]>;
155
+ };
144
156
  "decorator-in-namespace": {
145
157
  default: import("@typespec/compiler").CallableMessage<[string]>;
146
158
  };
@@ -178,6 +190,9 @@ export declare const reportDiagnostic: <C extends "single-arm-provider" | "decor
178
190
  "arm-resource-missing": {
179
191
  default: import("@typespec/compiler").CallableMessage<[string]>;
180
192
  };
193
+ "arm-common-types-incompatible-version": {
194
+ default: import("@typespec/compiler").CallableMessage<[string, string]>;
195
+ };
181
196
  "decorator-in-namespace": {
182
197
  default: import("@typespec/compiler").CallableMessage<[string]>;
183
198
  };
@@ -1 +1 @@
1
- {"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../../src/lib.ts"],"names":[],"mappings":"AAwBA,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBAmJf,CAAC;AAEH,eAAO,MAAQ,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAAE,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oDAAS,CAAC"}
1
+ {"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../../src/lib.ts"],"names":[],"mappings":"AAyBA,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBA4Jf,CAAC;AAEH,eAAO,MAAQ,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAAE,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oDAAS,CAAC"}
package/dist/src/lib.js CHANGED
@@ -1,4 +1,5 @@
1
1
  import { createTypeSpecLibrary, paramMessage } from "@typespec/compiler";
2
+ import { armCommonTypesVersionRule } from "./rules/arm-common-types-version.js";
2
3
  import { armResourceActionNoSegmentRule } from "./rules/arm-resource-action-no-segment.js";
3
4
  import { armResourceDuplicatePropertiesRule } from "./rules/arm-resource-duplicate-property.js";
4
5
  import { interfacesRule } from "./rules/arm-resource-interfaces.js";
@@ -84,6 +85,12 @@ export const $lib = createTypeSpecLibrary({
84
85
  default: paramMessage `No @armResource registration found for type ${"type"}`,
85
86
  },
86
87
  },
88
+ "arm-common-types-incompatible-version": {
89
+ severity: "warning",
90
+ messages: {
91
+ default: paramMessage `No ARM common-types version for this type satisfies the expected version ${"selectedVersion"}. This type only supports the following version(s): ${"supportedVersions"}`,
92
+ },
93
+ },
87
94
  "decorator-in-namespace": {
88
95
  severity: "error",
89
96
  messages: {
@@ -110,6 +117,7 @@ export const $lib = createTypeSpecLibrary({
110
117
  patchOperationsRule,
111
118
  armResourcePathInvalidCharsRule,
112
119
  armResourceProvisioningStateRule,
120
+ armCommonTypesVersionRule,
113
121
  beyondNestingRule,
114
122
  coreOperationsRule,
115
123
  deleteOperationMissingRule,
@@ -136,6 +144,8 @@ export const $lib = createTypeSpecLibrary({
136
144
  [`@azure-tools/typespec-azure-resource-manager/${patchOperationsRule.name}`]: true,
137
145
  [`@azure-tools/typespec-azure-resource-manager/${armResourcePathInvalidCharsRule.name}`]: true,
138
146
  [`@azure-tools/typespec-azure-resource-manager/${armResourceProvisioningStateRule.name}`]: true,
147
+ // TODO: Enable this rule once azure-rest-api-specs repo is ready (issue #3839)
148
+ [`@azure-tools/typespec-azure-resource-manager/${armCommonTypesVersionRule.name}`]: false,
139
149
  [`@azure-tools/typespec-azure-resource-manager/${beyondNestingRule.name}`]: true,
140
150
  [`@azure-tools/typespec-azure-resource-manager/${coreOperationsRule.name}`]: true,
141
151
  [`@azure-tools/typespec-azure-resource-manager/${deleteOperationMissingRule.name}`]: true,
@@ -1 +1 @@
1
- {"version":3,"file":"lib.js","sourceRoot":"","sources":["../../src/lib.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lib.js","sourceRoot":"","sources":["../../src/lib.ts"],"names":[],"mappings":"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"}
@@ -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,EACR,MAAM,oBAAoB,CAAC;AAQ5B;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,SAAS,QAQhF;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,GAAG,OAAO,CAErF;AASD;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,SAAS,EACjB,GAAG,UAAU,EAAE,SAAS,EAAE,QAU3B;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,SAAS,GACnB,SAAS,EAAE,GAAG,SAAS,CAEzB;AAQD;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,SAAS,EACjB,oBAAoB,CAAC,EAAE,MAAM,QAgG9B;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,SAAS,GAAG,KAAK,GACxB,MAAM,GAAG,SAAS,CAiBpB"}
1
+ {"version":3,"file":"namespace.d.ts","sourceRoot":"","sources":["../../src/namespace.ts"],"names":[],"mappings":"AACA,OAAO,EACL,gBAAgB,EAChB,KAAK,EAEL,SAAS,EAET,OAAO,EAGR,MAAM,oBAAoB,CAAC;AAQ5B;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,SAAS,QAQhF;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,GAAG,OAAO,CAErF;AASD;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,SAAS,EACjB,GAAG,UAAU,EAAE,SAAS,EAAE,QAU3B;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,SAAS,GACnB,SAAS,EAAE,GAAG,SAAS,CAEzB;AAQD;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,SAAS,EACjB,oBAAoB,CAAC,EAAE,MAAM,QAgG9B;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,SAAS,GAAG,KAAK,GACxB,MAAM,GAAG,SAAS,CAiBpB"}
@@ -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, Interface, Model, ModelProperty, Operation, Program, Tuple } from "@typespec/compiler";
1
+ import { DecoratorContext, Enum, EnumMember, Interface, Model, ModelProperty, Operation, Program, Tuple } from "@typespec/compiler";
2
2
  import { ArmResourceDetails } from "./resource.js";
3
3
  export declare const namespace = "Azure.ResourceManager.Private";
4
4
  export declare function $omitIfEmpty(context: DecoratorContext, entity: Model, propertyName: string): void;
@@ -15,7 +15,7 @@ export declare function isResourceParameterBaseFor(program: Program, property: M
15
15
  * @param {string?} referenceFile Optional common file path
16
16
  * @returns void
17
17
  */
18
- export declare function $armCommonParameter(context: DecoratorContext, entity: ModelProperty, parameterName?: string, version?: string, referenceFile?: string): void;
18
+ export declare function $armCommonParameter(context: DecoratorContext, entity: ModelProperty, parameterName?: string, version?: string | EnumMember | Model, referenceFile?: string): void;
19
19
  /**
20
20
  * Using ARM common definition for a Model
21
21
  * @param {DecoratorContext} context DecoratorContext object
@@ -25,7 +25,7 @@ export declare function $armCommonParameter(context: DecoratorContext, entity: M
25
25
  * @param {string?} referenceFile Optional common file path
26
26
  * @returns {void}
27
27
  */
28
- export declare function $armCommonDefinition(context: DecoratorContext, entity: Model, definitionName?: string, version?: string, referenceFile?: string): void;
28
+ export declare function $armCommonDefinition(context: DecoratorContext, entity: Model, definitionName?: string, version?: string | EnumMember | Model, referenceFile?: string): void;
29
29
  /**
30
30
  * This decorator dynamically assigns the serviceNamespace from the containing
31
31
  * namespace to the string literal value of the path parameter to which this
@@ -61,4 +61,5 @@ export declare function isArmOperationsListInterface(program: Program, type: Int
61
61
  export declare function $armResourceInternal(context: DecoratorContext, resourceType: Model, propertiesType: Model): void;
62
62
  export declare function listArmResources(program: Program): ArmResourceDetails[];
63
63
  export declare function getArmResource(program: Program, resourceType: Model): ArmResourceDetails | undefined;
64
+ export declare function $armCommonTypesVersions(context: DecoratorContext, enumType: Enum): void;
64
65
  //# sourceMappingURL=private.decorators.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"private.decorators.d.ts","sourceRoot":"","sources":["../../src/private.decorators.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,gBAAgB,EAChB,SAAS,EACT,KAAK,EACL,aAAa,EACb,SAAS,EACT,OAAO,EAEP,KAAK,EAGN,MAAM,oBAAoB,CAAC;AAI5B,OAAO,EACL,kBAAkB,EAKnB,MAAM,eAAe,CAAC;AAGvB,eAAO,MAAM,SAAS,kCAAkC,CAAC;AAEzD,wBAAgB,YAAY,CAAC,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,QAU1F;AAED,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,KAAK,EACb,YAAY,EAAE,KAAK,QAepB;AAED,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,aAAa,EACrB,MAAM,EAAE,KAAK,QAUd;AAED,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,aAAa,GACtB,MAAM,EAAE,GAAG,SAAS,CAEtB;AAED,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,aAAa,EACvB,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAMT;AAgBD;;;;;;;;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;AAMD;;;;;;;;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,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;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,gBAAgB,EACzB,YAAY,EAAE,KAAK,EACnB,cAAc,EAAE,KAAK,QAkFtB;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,kBAAkB,EAAE,CAEvE;AAED,wBAAgB,cAAc,CAC5B,OAAO,EAAE,OAAO,EAChB,YAAY,EAAE,KAAK,GAClB,kBAAkB,GAAG,SAAS,CAEhC"}
1
+ {"version":3,"file":"private.decorators.d.ts","sourceRoot":"","sources":["../../src/private.decorators.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,gBAAgB,EAChB,IAAI,EACJ,UAAU,EACV,SAAS,EACT,KAAK,EACL,aAAa,EACb,SAAS,EACT,OAAO,EAEP,KAAK,EAGN,MAAM,oBAAoB,CAAC;AAM5B,OAAO,EACL,kBAAkB,EAKnB,MAAM,eAAe,CAAC;AAGvB,eAAO,MAAM,SAAS,kCAAkC,CAAC;AAIzD,wBAAgB,YAAY,CAAC,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,QAU1F;AAED,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,KAAK,EACb,YAAY,EAAE,KAAK,QAepB;AAED,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,aAAa,EACrB,MAAM,EAAE,KAAK,QAUd;AAED,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,aAAa,GACtB,MAAM,EAAE,GAAG,SAAS,CAEtB;AAED,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,aAAa,EACvB,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAMT;AAkLD;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,aAAa,EACrB,aAAa,CAAC,EAAE,MAAM,EACtB,OAAO,CAAC,EAAE,MAAM,GAAG,UAAU,GAAG,KAAK,EACrC,aAAa,CAAC,EAAE,MAAM,GACrB,IAAI,CAeN;AAED;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,KAAK,EACb,cAAc,CAAC,EAAE,MAAM,EACvB,OAAO,CAAC,EAAE,MAAM,GAAG,UAAU,GAAG,KAAK,EACrC,aAAa,CAAC,EAAE,MAAM,GACrB,IAAI,CAeN;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;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,gBAAgB,EACzB,YAAY,EAAE,KAAK,EACnB,cAAc,EAAE,KAAK,QAkFtB;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,kBAAkB,EAAE,CAEvE;AAED,wBAAgB,cAAc,CAC5B,OAAO,EAAE,OAAO,EAChB,YAAY,EAAE,KAAK,GAClB,kBAAkB,GAAG,SAAS,CAEhC;AAiBD,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,IAAI,QAKhF"}
@@ -1,11 +1,14 @@
1
- import { $useRef } from "@azure-tools/typespec-autorest";
1
+ import { setRefProducer } from "@azure-tools/typespec-autorest";
2
2
  import { $visibility, getKeyName, getTypeName, } from "@typespec/compiler";
3
3
  import { getSegment } from "@typespec/rest";
4
+ import { getVersionDependencies } from "@typespec/versioning";
5
+ import { getArmCommonTypesVersion, getArmCommonTypesVersions } from "./common-types.js";
4
6
  import { reportDiagnostic } from "./lib.js";
5
7
  import { getArmProviderNamespace, isArmLibraryNamespace } from "./namespace.js";
6
8
  import { getArmResourceKind, getResourceBaseType, resolveResourceBaseType, } from "./resource.js";
7
9
  import { ArmStateKeys } from "./state.js";
8
10
  export const namespace = "Azure.ResourceManager.Private";
11
+ const ArmCommonTypesDefaultVersion = "v3";
9
12
  export function $omitIfEmpty(context, entity, propertyName) {
10
13
  const modelProp = getProperty(entity, propertyName);
11
14
  if (modelProp &&
@@ -51,6 +54,121 @@ function isResourceParameterBaseForInternal(program, property, resolvedBaseType)
51
54
  }
52
55
  return false;
53
56
  }
57
+ function resolveCommonTypesVersion(program, params) {
58
+ var _a;
59
+ let selectedVersion;
60
+ const { allVersions } = (_a = getArmCommonTypesVersions(program)) !== null && _a !== void 0 ? _a : {};
61
+ if (params.service) {
62
+ const versionMap = getVersionDependencies(program, params.service.type);
63
+ // If the service is versioned, extract the common-types version from the
64
+ // service version enum
65
+ if (params.version && versionMap) {
66
+ for (const [_, version] of versionMap) {
67
+ if (!("enumMember" in version)) {
68
+ const foundVersion = Array.from(version.keys()).find((v) => v.name === params.version);
69
+ if (foundVersion) {
70
+ selectedVersion = getArmCommonTypesVersion(program, foundVersion.enumMember);
71
+ }
72
+ }
73
+ else if (version.name === params.version) {
74
+ selectedVersion = getArmCommonTypesVersion(program, version.enumMember);
75
+ }
76
+ }
77
+ }
78
+ // Extract the version from the service namespace instead
79
+ if (selectedVersion === undefined) {
80
+ selectedVersion = getArmCommonTypesVersion(program, params.service.type);
81
+ }
82
+ }
83
+ return {
84
+ selectedVersion,
85
+ allVersions: allVersions !== null && allVersions !== void 0 ? allVersions : [],
86
+ };
87
+ }
88
+ function getArmTypesPath(program) {
89
+ return program.getOption("arm-types-path") || "{arm-types-dir}";
90
+ }
91
+ function storeCommonTypeRecord(context, entity, kind, stateKey, name, version, referenceFile) {
92
+ var _a, _b;
93
+ const getCommonTypeRecords = (program, entity) => {
94
+ var _a;
95
+ return (_a = program.stateMap(stateKey).get(entity)) !== null && _a !== void 0 ? _a : { records: {} };
96
+ };
97
+ const basePath = getArmTypesPath(context.program).trim();
98
+ // NOTE: Right now we don't try to prevent multiple versions from declaring that they are the default
99
+ let isDefault = false;
100
+ if (version && typeof version !== "string" && version.kind === "Model") {
101
+ isDefault = !!version.properties.get("isDefault");
102
+ version = (_a = version.properties.get("version")) === null || _a === void 0 ? void 0 : _a.type;
103
+ }
104
+ // for backward compatibility, skip if we are trying to access a non-default file and emit the type
105
+ if ((version || referenceFile) && basePath.endsWith(".json"))
106
+ return;
107
+ if (!version)
108
+ version = ArmCommonTypesDefaultVersion;
109
+ if (!referenceFile)
110
+ referenceFile = "types.json";
111
+ const versionStr = typeof version === "string" ? version : version.name;
112
+ const records = (_b = context.program.stateMap(stateKey).get(entity)) !== null && _b !== void 0 ? _b : {
113
+ records: {},
114
+ };
115
+ records.records[versionStr] = {
116
+ name,
117
+ version: versionStr,
118
+ basePath,
119
+ referenceFile,
120
+ };
121
+ if (isDefault) {
122
+ records.defaultKey = versionStr;
123
+ }
124
+ context.program.stateMap(stateKey).set(entity, records);
125
+ const refProducer = (program, entity, params) => {
126
+ const { records, defaultKey } = getCommonTypeRecords(program, entity);
127
+ const commonTypes = resolveCommonTypesVersion(program, params);
128
+ const selectedVersion = commonTypes.selectedVersion;
129
+ // Find closest version that matches the dependency (based on version enum order)
130
+ let record;
131
+ if (selectedVersion) {
132
+ let foundSelectedVersion = false;
133
+ for (const version of commonTypes.allVersions) {
134
+ if (!foundSelectedVersion) {
135
+ if (selectedVersion !== version.name) {
136
+ continue;
137
+ }
138
+ foundSelectedVersion = true;
139
+ }
140
+ const maybeRecord = records[version.name];
141
+ if (maybeRecord) {
142
+ record = maybeRecord;
143
+ break;
144
+ }
145
+ }
146
+ }
147
+ else {
148
+ // If no version was found, use the default version
149
+ record = records[defaultKey !== null && defaultKey !== void 0 ? defaultKey : ArmCommonTypesDefaultVersion];
150
+ }
151
+ if (record) {
152
+ return record.basePath.endsWith(".json")
153
+ ? `${record.basePath}#/${kind}/${record.name}`
154
+ : `${record.basePath}/${record.version}/${record.referenceFile}#/${kind}/${record.name}`;
155
+ }
156
+ else {
157
+ reportDiagnostic(program, {
158
+ code: "arm-common-types-incompatible-version",
159
+ target: entity,
160
+ format: {
161
+ selectedVersion: selectedVersion !== null && selectedVersion !== void 0 ? selectedVersion : ArmCommonTypesDefaultVersion,
162
+ supportedVersions: Object.keys(records).join(", "),
163
+ },
164
+ });
165
+ }
166
+ return undefined;
167
+ };
168
+ // Instead of applying $useRef, call setRefProducer directly to set a function
169
+ // that can generate the ref depending on how the service spec is configured
170
+ setRefProducer(context.program, entity, refProducer);
171
+ }
54
172
  /**
55
173
  * Refer an model property to be a common ARM parameter
56
174
  * @param {DecoratorContext} context DecoratorContext object
@@ -65,21 +183,7 @@ export function $armCommonParameter(context, entity, parameterName, version, ref
65
183
  if (!parameterName) {
66
184
  parameterName = entity.name;
67
185
  }
68
- const basePath = getArmTypesPath(context.program).trim();
69
- // for backward compatibility, skip if we are trying to access a non-default file and emit the type
70
- if ((version || referenceFile) && basePath.endsWith(".json"))
71
- return;
72
- if (!version)
73
- version = "v3";
74
- if (!referenceFile)
75
- referenceFile = "types.json";
76
- const path = basePath.endsWith(".json")
77
- ? `${basePath}#/parameters/${parameterName}`
78
- : `${basePath}/${version}/${referenceFile}#/parameters/${parameterName}`;
79
- context.call($useRef, entity, path);
80
- }
81
- function getArmTypesPath(program) {
82
- return program.getOption("arm-types-path") || "{arm-types-dir}";
186
+ storeCommonTypeRecord(context, entity, "parameters", ArmStateKeys.armCommonParameters, parameterName, version, referenceFile);
83
187
  }
84
188
  /**
85
189
  * Using ARM common definition for a Model
@@ -95,18 +199,7 @@ export function $armCommonDefinition(context, entity, definitionName, version, r
95
199
  if (!definitionName) {
96
200
  definitionName = entity.name;
97
201
  }
98
- const basePath = getArmTypesPath(context.program).trim();
99
- // for backward compatibility, skip if we are trying to access a non-default file and emit the type
100
- if ((version || referenceFile) && basePath.endsWith(".json"))
101
- return;
102
- if (!version)
103
- version = "v3";
104
- if (!referenceFile)
105
- referenceFile = "types.json";
106
- const path = basePath.endsWith(".json")
107
- ? `${basePath}#/definitions/${definitionName}`
108
- : `${basePath}/${version}/${referenceFile}#/definitions/${definitionName}`;
109
- context.call($useRef, entity, path);
202
+ storeCommonTypeRecord(context, entity, "definitions", ArmStateKeys.armCommonDefinitions, definitionName, version, referenceFile);
110
203
  }
111
204
  /**
112
205
  * This decorator dynamically assigns the serviceNamespace from the containing
@@ -271,4 +364,10 @@ function hasProperty(program, model) {
271
364
  return hasProperty(program, model.baseModel);
272
365
  return false;
273
366
  }
367
+ export function $armCommonTypesVersions(context, enumType) {
368
+ context.program.stateMap(ArmStateKeys.armCommonTypesVersions).set(enumType, {
369
+ type: enumType,
370
+ allVersions: Array.from(enumType.members.values()).reverse(),
371
+ });
372
+ }
274
373
  //# sourceMappingURL=private.decorators.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"private.decorators.js","sourceRoot":"","sources":["../../src/private.decorators.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"private.decorators.js","sourceRoot":"","sources":["../../src/private.decorators.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * The @armCommonTypesVersion decorator should be used to set the ARM
3
+ * common-types version used by the service.
4
+ */
5
+ export declare const armCommonTypesVersionRule: import("@typespec/compiler").LinterRuleDefinition<"arm-common-types-version", {
6
+ readonly default: "Specify the ARM common-types version using the @armCommonTypesVersion decorator on the service namespace or on each version of the service version enum.";
7
+ }>;
8
+ //# sourceMappingURL=arm-common-types-version.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"arm-common-types-version.d.ts","sourceRoot":"","sources":["../../../src/rules/arm-common-types-version.ts"],"names":[],"mappings":"AAMA;;;GAGG;AACH,eAAO,MAAM,yBAAyB;;EAsCpC,CAAC"}
@@ -0,0 +1,43 @@
1
+ import { createRule } from "@typespec/compiler";
2
+ import { getAllHttpServices } from "@typespec/http";
3
+ import { getVersion } from "@typespec/versioning";
4
+ import { getArmCommonTypesVersion } from "../common-types.js";
5
+ import { getArmProviderNamespace } from "../namespace.js";
6
+ /**
7
+ * The @armCommonTypesVersion decorator should be used to set the ARM
8
+ * common-types version used by the service.
9
+ */
10
+ export const armCommonTypesVersionRule = createRule({
11
+ name: "arm-common-types-version",
12
+ severity: "warning",
13
+ description: "Specify the ARM common-types version using @armCommonTypesVersion.",
14
+ messages: {
15
+ default: "Specify the ARM common-types version using the @armCommonTypesVersion decorator on the service namespace or on each version of the service version enum.",
16
+ },
17
+ create(context) {
18
+ return {
19
+ root: (program) => {
20
+ const [services, _] = getAllHttpServices(program);
21
+ for (const service of services) {
22
+ if (!getArmProviderNamespace(program, service.namespace)) {
23
+ continue;
24
+ }
25
+ const versionMap = getVersion(program, service.namespace);
26
+ // If the namespace is versioned and not all versions have the
27
+ // common-types version and if the service namespace doesn't have a
28
+ // common-types version, raise a diagnostic.
29
+ if (!(versionMap &&
30
+ versionMap
31
+ .getVersions()
32
+ .every((version) => !!getArmCommonTypesVersion(program, version.enumMember))) &&
33
+ !getArmCommonTypesVersion(program, service.namespace)) {
34
+ context.reportDiagnostic({
35
+ target: service.namespace,
36
+ });
37
+ }
38
+ }
39
+ },
40
+ };
41
+ },
42
+ });
43
+ //# sourceMappingURL=arm-common-types-version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"arm-common-types-version.js","sourceRoot":"","sources":["../../../src/rules/arm-common-types-version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiC,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAE1D;;;GAGG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,UAAU,CAAC;IAClD,IAAI,EAAE,0BAA0B;IAChC,QAAQ,EAAE,SAAS;IACnB,WAAW,EAAE,oEAAoE;IACjF,QAAQ,EAAE;QACR,OAAO,EACL,0JAA0J;KAC7J;IACD,MAAM,CAAC,OAAO;QACZ,OAAO;YACL,IAAI,EAAE,CAAC,OAAgB,EAAE,EAAE;gBACzB,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;gBAClD,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;oBAC9B,IAAI,CAAC,uBAAuB,CAAC,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,EAAE;wBACxD,SAAS;qBACV;oBAED,MAAM,UAAU,GAAG,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;oBAC1D,8DAA8D;oBAC9D,mEAAmE;oBACnE,4CAA4C;oBAC5C,IACE,CAAC,CACC,UAAU;wBACV,UAAU;6BACP,WAAW,EAAE;6BACb,KAAK,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,wBAAwB,CAAC,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAC/E;wBACD,CAAC,wBAAwB,CAAC,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,EACrD;wBACA,OAAO,CAAC,gBAAgB,CAAC;4BACvB,MAAM,EAAE,OAAO,CAAC,SAAS;yBAC1B,CAAC,CAAC;qBACJ;iBACF;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
@@ -6,8 +6,12 @@ export declare const ArmStateKeys: {
6
6
  armResources: symbol;
7
7
  armLibraryNamespaces: symbol;
8
8
  usesArmLibraryNamespaces: symbol;
9
+ armCommonTypesVersion: symbol;
9
10
  armResourcesCached: symbol;
10
11
  armSingletonResources: symbol;
11
12
  resourceBaseType: symbol;
13
+ armCommonDefinitions: symbol;
14
+ armCommonParameters: symbol;
15
+ armCommonTypesVersions: symbol;
12
16
  };
13
17
  //# sourceMappingURL=state.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../src/state.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,YAAY;;;;;;;;;;;CAaxB,CAAC"}
1
+ {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../src/state.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;CAmBxB,CAAC"}
package/dist/src/state.js CHANGED
@@ -12,9 +12,14 @@ export const ArmStateKeys = {
12
12
  armResources: azureResourceManagerCreateStateSymbol("armResources"),
13
13
  armLibraryNamespaces: azureResourceManagerCreateStateSymbol("armLibraryNamespaces"),
14
14
  usesArmLibraryNamespaces: azureResourceManagerCreateStateSymbol("usesArmLibraryNamespaces"),
15
+ armCommonTypesVersion: azureResourceManagerCreateStateSymbol("armCommonTypesVersion"),
15
16
  // resource.ts
16
17
  armResourcesCached: azureResourceManagerCreateStateSymbol("armResourcesCached"),
17
18
  armSingletonResources: azureResourceManagerCreateStateSymbol("armSingletonResources"),
18
19
  resourceBaseType: azureResourceManagerCreateStateSymbol("resourceBaseTypeKey"),
20
+ // private.decorator.ts
21
+ armCommonDefinitions: azureResourceManagerCreateStateSymbol("armCommonDefinitions"),
22
+ armCommonParameters: azureResourceManagerCreateStateSymbol("armCommonParameters"),
23
+ armCommonTypesVersions: azureResourceManagerCreateStateSymbol("armCommonTypesVersions"),
19
24
  };
20
25
  //# sourceMappingURL=state.js.map
@@ -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,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;IAE3F,cAAc;IACd,kBAAkB,EAAE,qCAAqC,CAAC,oBAAoB,CAAC;IAC/E,qBAAqB,EAAE,qCAAqC,CAAC,uBAAuB,CAAC;IACrF,gBAAgB,EAAE,qCAAqC,CAAC,qBAAqB,CAAC;CAC/E,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,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;IAErF,cAAc;IACd,kBAAkB,EAAE,qCAAqC,CAAC,oBAAoB,CAAC;IAC/E,qBAAqB,EAAE,qCAAqC,CAAC,uBAAuB,CAAC;IACrF,gBAAgB,EAAE,qCAAqC,CAAC,qBAAqB,CAAC;IAE9E,uBAAuB;IACvB,oBAAoB,EAAE,qCAAqC,CAAC,sBAAsB,CAAC;IACnF,mBAAmB,EAAE,qCAAqC,CAAC,qBAAqB,CAAC;IACjF,sBAAsB,EAAE,qCAAqC,CAAC,wBAAwB,CAAC;CACxF,CAAC"}
@@ -8,7 +8,9 @@ namespace Azure.ResourceManager.Foundations;
8
8
  /**
9
9
  * A list of REST API operations supported by an Azure Resource Provider. It contains an URL link to get the next set of results.
10
10
  */
11
- @armCommonDefinition
11
+ @armCommonDefinition("OperationListResult", Azure.ResourceManager.CommonTypes.Versions.v3)
12
+ @armCommonDefinition("OperationListResult", Azure.ResourceManager.CommonTypes.Versions.v4)
13
+ @armCommonDefinition("OperationListResult", Azure.ResourceManager.CommonTypes.Versions.v5)
12
14
  @doc("""
13
15
  A list of REST API operations supported by an Azure Resource Provider. It contains an URL link to get the next set of results.
14
16
  """)
@@ -37,7 +39,9 @@ model ArmResource {
37
39
  /**
38
40
  * The base tracked resource.
39
41
  */
40
- @armCommonDefinition("TrackedResource")
42
+ @armCommonDefinition("TrackedResource", Azure.ResourceManager.CommonTypes.Versions.v3)
43
+ @armCommonDefinition("TrackedResource", Azure.ResourceManager.CommonTypes.Versions.v4)
44
+ @armCommonDefinition("TrackedResource", Azure.ResourceManager.CommonTypes.Versions.v5)
41
45
  @doc("The resource model definition for an Azure Resource Manager tracked top level resource")
42
46
  model TrackedResourceBase extends ArmResource {
43
47
  @doc("The geo-location where the resource lives")
@@ -51,7 +55,9 @@ model TrackedResourceBase extends ArmResource {
51
55
  * The base proxy resource.
52
56
  */
53
57
  @doc("The base proxy resource.")
54
- @armCommonDefinition("ProxyResource")
58
+ @armCommonDefinition("ProxyResource", Azure.ResourceManager.CommonTypes.Versions.v3)
59
+ @armCommonDefinition("ProxyResource", Azure.ResourceManager.CommonTypes.Versions.v4)
60
+ @armCommonDefinition("ProxyResource", Azure.ResourceManager.CommonTypes.Versions.v5)
55
61
  model ProxyResourceBase extends ArmResource {}
56
62
 
57
63
  /**
@@ -59,7 +65,9 @@ model ProxyResourceBase extends ArmResource {}
59
65
  */
60
66
  // Note that ProxyResource is the base definition for both kinds of resources
61
67
  @doc("The base extension resource.")
62
- @armCommonDefinition("ProxyResource")
68
+ @armCommonDefinition("ProxyResource", Azure.ResourceManager.CommonTypes.Versions.v3)
69
+ @armCommonDefinition("ProxyResource", Azure.ResourceManager.CommonTypes.Versions.v4)
70
+ @armCommonDefinition("ProxyResource", Azure.ResourceManager.CommonTypes.Versions.v5)
63
71
  model ExtensionResourceBase extends ArmResource {}
64
72
 
65
73
  /**
@@ -113,7 +121,9 @@ enum ActionType {
113
121
  /**
114
122
  * Localized display information for and operation.
115
123
  */
116
- @armCommonDefinition
124
+ @armCommonDefinition("OperationDisplay", Azure.ResourceManager.CommonTypes.Versions.v3)
125
+ @armCommonDefinition("OperationDisplay", Azure.ResourceManager.CommonTypes.Versions.v4)
126
+ @armCommonDefinition("OperationDisplay", Azure.ResourceManager.CommonTypes.Versions.v5)
117
127
  @doc("Localized display information for and operation.")
118
128
  model OperationDisplay {
119
129
  @doc("""
@@ -138,7 +148,9 @@ model OperationDisplay {
138
148
  /**
139
149
  * The current status of an async operation.
140
150
  */
141
- @armCommonDefinition
151
+ @armCommonDefinition("OperationStatusResult", Azure.ResourceManager.CommonTypes.Versions.v3)
152
+ @armCommonDefinition("OperationStatusResult", Azure.ResourceManager.CommonTypes.Versions.v4)
153
+ @armCommonDefinition("OperationStatusResult", Azure.ResourceManager.CommonTypes.Versions.v5)
142
154
  @doc("The current status of an async operation.")
143
155
  model OperationStatusResult {
144
156
  @doc("Fully qualified ID for the async operation.")
@@ -171,7 +183,9 @@ model OperationStatusResult {
171
183
  /**
172
184
  * The error detail.
173
185
  */
174
- @armCommonDefinition
186
+ @armCommonDefinition("ErrorDetail", Azure.ResourceManager.CommonTypes.Versions.v3)
187
+ @armCommonDefinition("ErrorDetail", Azure.ResourceManager.CommonTypes.Versions.v4)
188
+ @armCommonDefinition("ErrorDetail", Azure.ResourceManager.CommonTypes.Versions.v5)
175
189
  @doc("The error detail.")
176
190
  model ErrorDetail {
177
191
  @doc("The error code.")
@@ -256,7 +270,9 @@ model ExtensionBaseParameters is TenantBaseParameters {
256
270
  /**
257
271
  * The resource management error additional info.
258
272
  */
259
- @armCommonDefinition
273
+ @armCommonDefinition("ErrorAdditionalInfo", Azure.ResourceManager.CommonTypes.Versions.v3)
274
+ @armCommonDefinition("ErrorAdditionalInfo", Azure.ResourceManager.CommonTypes.Versions.v4)
275
+ @armCommonDefinition("ErrorAdditionalInfo", Azure.ResourceManager.CommonTypes.Versions.v5)
260
276
  @doc("The resource management error additional info.")
261
277
  model ErrorAdditionalInfo {
262
278
  @doc("The additional info type.")
@@ -301,7 +317,9 @@ enum createdByType {
301
317
  /**
302
318
  * Metadata pertaining to creation and last modification of the resource.
303
319
  */
304
- @armCommonDefinition("systemData")
320
+ @armCommonDefinition("systemData", Azure.ResourceManager.CommonTypes.Versions.v3)
321
+ @armCommonDefinition("systemData", Azure.ResourceManager.CommonTypes.Versions.v4)
322
+ @armCommonDefinition("systemData", Azure.ResourceManager.CommonTypes.Versions.v5)
305
323
  @doc("Metadata pertaining to creation and last modification of the resource.")
306
324
  model SystemData {
307
325
  @visibility("read")
@@ -332,7 +350,19 @@ model SystemData {
332
350
  /**
333
351
  * The properties of the managed service identities assigned to this resource.
334
352
  */
335
- @armCommonDefinition("ManagedServiceIdentity", "v4", "managedidentity.json")
353
+ @armCommonDefinition(
354
+ "ManagedServiceIdentity",
355
+ {
356
+ version: Azure.ResourceManager.CommonTypes.Versions.v4,
357
+ isDefault: true,
358
+ },
359
+ "managedidentity.json"
360
+ )
361
+ @armCommonDefinition(
362
+ "ManagedServiceIdentity",
363
+ Azure.ResourceManager.CommonTypes.Versions.v5,
364
+ "managedidentity.json"
365
+ )
336
366
  @doc("The properties of the managed service identities assigned to this resource.")
337
367
  model ManagedIdentityProperties {
338
368
  @doc("The Active Directory tenant id of the principal.")
@@ -353,7 +383,19 @@ model ManagedIdentityProperties {
353
383
  /**
354
384
  * The properties of the service-assigned identity associated with this resource.
355
385
  */
356
- @armCommonDefinition("SystemAssignedServiceIdentity", "v4", "managedidentity.json")
386
+ @armCommonDefinition(
387
+ "SystemAssignedServiceIdentity",
388
+ {
389
+ version: Azure.ResourceManager.CommonTypes.Versions.v4,
390
+ isDefault: true,
391
+ },
392
+ "managedidentity.json"
393
+ )
394
+ @armCommonDefinition(
395
+ "SystemAssignedServiceIdentity",
396
+ Azure.ResourceManager.CommonTypes.Versions.v5,
397
+ "managedidentity.json"
398
+ )
357
399
  @doc("The properties of the service-assigned identity associated with this resource.")
358
400
  model ManagedSystemIdentityProperties {
359
401
  @doc("The Active Directory tenant id of the principal.")
@@ -492,7 +534,9 @@ model ResourceGroupScope<TResource extends ArmResource> is ResourceParentParamet
492
534
  * Details of the resource plan.
493
535
  */
494
536
  @doc("Details of the resource plan.")
495
- @armCommonDefinition("Plan")
537
+ @armCommonDefinition("Plan", Azure.ResourceManager.CommonTypes.Versions.v3)
538
+ @armCommonDefinition("Plan", Azure.ResourceManager.CommonTypes.Versions.v4)
539
+ @armCommonDefinition("Plan", Azure.ResourceManager.CommonTypes.Versions.v5)
496
540
  model ResourcePlanType {
497
541
  @doc("A user defined name of the 3rd Party Artifact that is being procured.")
498
542
  name: string;
@@ -514,7 +558,9 @@ model ResourcePlanType {
514
558
  * The SKU (Stock Keeping Unit) assigned to this resource.
515
559
  */
516
560
  @doc("The SKU (Stock Keeping Unit) assigned to this resource.")
517
- @armCommonDefinition("Sku")
561
+ @armCommonDefinition("Sku", Azure.ResourceManager.CommonTypes.Versions.v3)
562
+ @armCommonDefinition("Sku", Azure.ResourceManager.CommonTypes.Versions.v4)
563
+ @armCommonDefinition("Sku", Azure.ResourceManager.CommonTypes.Versions.v5)
518
564
  model ResourceSkuType {
519
565
  @doc("The name of the SKU, usually a combination of letters and numbers, for example, 'P3'")
520
566
  name: string;
@@ -568,7 +614,9 @@ model ProxyResourceUpdateModel<
568
614
  /**
569
615
  * Details of a REST API operation, returned from the Resource Provider Operations API
570
616
  */
571
- @armCommonDefinition
617
+ @armCommonDefinition("Operation", Azure.ResourceManager.CommonTypes.Versions.v3)
618
+ @armCommonDefinition("Operation", Azure.ResourceManager.CommonTypes.Versions.v4)
619
+ @armCommonDefinition("Operation", Azure.ResourceManager.CommonTypes.Versions.v5)
572
620
  @doc("Details of a REST API operation, returned from the Resource Provider Operations API")
573
621
  model Operation {
574
622
  @doc("""
@@ -606,14 +654,18 @@ model OperationIdParameter {
606
654
  @path
607
655
  @minLength(1)
608
656
  @doc("The ID of an ongoing async operation.")
609
- @armCommonParameter("OperationIdParameter")
657
+ @armCommonParameter("OperationIdParameter", Azure.ResourceManager.CommonTypes.Versions.v3)
658
+ @armCommonParameter("OperationIdParameter", Azure.ResourceManager.CommonTypes.Versions.v4)
659
+ @armCommonParameter("OperationIdParameter", Azure.ResourceManager.CommonTypes.Versions.v5)
610
660
  operationId: string;
611
661
  }
612
662
 
613
663
  /**
614
664
  * The check availability request body.
615
665
  */
616
- @armCommonDefinition
666
+ @armCommonDefinition("CheckNameAvailabilityRequest", Azure.ResourceManager.CommonTypes.Versions.v3)
667
+ @armCommonDefinition("CheckNameAvailabilityRequest", Azure.ResourceManager.CommonTypes.Versions.v4)
668
+ @armCommonDefinition("CheckNameAvailabilityRequest", Azure.ResourceManager.CommonTypes.Versions.v5)
617
669
  @doc("The check availability request body.")
618
670
  model CheckNameAvailabilityRequest {
619
671
  @doc("The name of the resource for which availability needs to be checked.")
@@ -638,7 +690,9 @@ enum CheckNameAvailabilityReason {
638
690
  /**
639
691
  * The check availability result.
640
692
  */
641
- @armCommonDefinition
693
+ @armCommonDefinition("CheckNameAvailabilityResponse", Azure.ResourceManager.CommonTypes.Versions.v3)
694
+ @armCommonDefinition("CheckNameAvailabilityResponse", Azure.ResourceManager.CommonTypes.Versions.v4)
695
+ @armCommonDefinition("CheckNameAvailabilityResponse", Azure.ResourceManager.CommonTypes.Versions.v5)
642
696
  @doc("The check availability result.")
643
697
  model CheckNameAvailabilityResponse {
644
698
  @doc("Indicates if the resource name is available.")
package/lib/arm.tsp CHANGED
@@ -7,6 +7,7 @@ import "@azure-tools/typespec-autorest";
7
7
  import "@azure-tools/typespec-azure-core";
8
8
 
9
9
  import "./arm.foundations.tsp";
10
+ import "./common-types.tsp";
10
11
  import "./private.decorators.tsp";
11
12
  import "./models.tsp";
12
13
  import "./operations.tsp";
@@ -0,0 +1,18 @@
1
+ import "@typespec/versioning";
2
+
3
+ using TypeSpec.Versioning;
4
+
5
+ namespace Azure.ResourceManager.CommonTypes;
6
+
7
+ @Private.armCommonTypesVersions
8
+ @doc("The ARM common-types versions.")
9
+ enum Versions {
10
+ @doc("The ARM v3 common types.")
11
+ v3,
12
+
13
+ @doc("The ARM v4 common types.")
14
+ v4,
15
+
16
+ @doc("The ARM v5 common types.")
17
+ v5,
18
+ }
@@ -44,7 +44,11 @@ model CustomerManagedKeyEncryption {
44
44
  }
45
45
 
46
46
  @doc("All encryption configuration for a resource.")
47
- @armCommonDefinition("encryption", "v5", "customermanagedkeys.json")
47
+ @armCommonDefinition(
48
+ "encryption",
49
+ Azure.ResourceManager.CommonTypes.Versions.v5,
50
+ "customermanagedkeys.json"
51
+ )
48
52
  model EncryptionConfiguration {
49
53
  @doc("Indicates if infrastructure encryption is enabled or disabled.")
50
54
  infrastructureEncryption?: InfrastructureEncryption;
@@ -175,3 +175,14 @@ extern dec armResourceList(target: Operation, resourceType: Model);
175
175
  * @param _ DEPRECATED
176
176
  */
177
177
  extern dec armResourceOperations(target: Interface, _?: unknown);
178
+
179
+ /**
180
+ * This decorator is used either on a namespace or a version enum value to indicate
181
+ * the version of the ARM common-types to use for refs in emitted Swagger files.
182
+ *
183
+ * @param version The Azure.ResourceManager.CommonTypes.Versions for the desired common-types version or an equivalent string value.
184
+ */
185
+ extern dec armCommonTypesVersion(
186
+ target: Namespace | EnumMember,
187
+ version: valueof string | EnumMember
188
+ );
@@ -14,7 +14,9 @@ model ApiVersionParameter {
14
14
  @query("api-version")
15
15
  @minLength(1)
16
16
  @doc("The API version to use for this operation.")
17
- @armCommonParameter("ApiVersionParameter")
17
+ @armCommonParameter("ApiVersionParameter", Azure.ResourceManager.CommonTypes.Versions.v3)
18
+ @armCommonParameter("ApiVersionParameter", Azure.ResourceManager.CommonTypes.Versions.v4)
19
+ @armCommonParameter("ApiVersionParameter", Azure.ResourceManager.CommonTypes.Versions.v5)
18
20
  @resourceParameterBaseFor(
19
21
  [
20
22
  ResourceHome.ResourceGroup,
@@ -36,7 +38,9 @@ model SubscriptionIdParameter {
36
38
  @minLength(1)
37
39
  @segment("subscriptions")
38
40
  @doc("The ID of the target subscription.")
39
- @armCommonParameter("SubscriptionIdParameter")
41
+ @armCommonParameter("SubscriptionIdParameter", Azure.ResourceManager.CommonTypes.Versions.v3)
42
+ @armCommonParameter("SubscriptionIdParameter", Azure.ResourceManager.CommonTypes.Versions.v4)
43
+ @armCommonParameter("SubscriptionIdParameter", Azure.ResourceManager.CommonTypes.Versions.v5)
40
44
  @resourceParameterBaseFor(
41
45
  [ResourceHome.ResourceGroup, ResourceHome.Subscription, ResourceHome.Location]
42
46
  )
@@ -52,7 +56,9 @@ model LocationParameter {
52
56
  @minLength(1)
53
57
  @segment("locations")
54
58
  @doc("The location name.")
55
- @armCommonParameter("LocationParameter")
59
+ @armCommonParameter("LocationParameter", Azure.ResourceManager.CommonTypes.Versions.v3)
60
+ @armCommonParameter("LocationParameter", Azure.ResourceManager.CommonTypes.Versions.v4)
61
+ @armCommonParameter("LocationParameter", Azure.ResourceManager.CommonTypes.Versions.v5)
56
62
  @resourceParameterBaseFor([ResourceHome.Location])
57
63
  location: string;
58
64
  }
@@ -68,7 +74,9 @@ model ResourceGroupParameter {
68
74
  @segment("resourceGroups")
69
75
  @pattern("^[-\\w\\._\\(\\)]+$")
70
76
  @doc("The name of the resource group. The name is case insensitive.")
71
- @armCommonParameter("ResourceGroupNameParameter")
77
+ @armCommonParameter("ResourceGroupNameParameter", Azure.ResourceManager.CommonTypes.Versions.v3)
78
+ @armCommonParameter("ResourceGroupNameParameter", Azure.ResourceManager.CommonTypes.Versions.v4)
79
+ @armCommonParameter("ResourceGroupNameParameter", Azure.ResourceManager.CommonTypes.Versions.v5)
72
80
  @resourceParameterBaseFor([ResourceHome.ResourceGroup])
73
81
  resourceGroupName: string;
74
82
  }
@@ -13,7 +13,19 @@ using Azure.ResourceManager.Private;
13
13
  namespace Azure.ResourceManager;
14
14
 
15
15
  /** The private endpoint resource */
16
- @armCommonDefinition("PrivateEndpoint", "v4", "privatelinks.json")
16
+ @armCommonDefinition(
17
+ "PrivateEndpoint",
18
+ {
19
+ version: Azure.ResourceManager.CommonTypes.Versions.v4,
20
+ isDefault: true,
21
+ },
22
+ "privatelinks.json"
23
+ )
24
+ @armCommonDefinition(
25
+ "PrivateEndpoint",
26
+ Azure.ResourceManager.CommonTypes.Versions.v5,
27
+ "privatelinks.json"
28
+ )
17
29
  model PrivateEndpoint {
18
30
  /** The resource identifier for private endpoint */
19
31
  id?: ResourceIdentifier<[
@@ -30,7 +42,19 @@ model PrivateEndpointConnection extends Azure.ResourceManager.Foundations.ProxyR
30
42
  }
31
43
 
32
44
  /** Properties of he private endpoint connection resource */
33
- @armCommonDefinition("PrivateEndpointConnectionProperties", "v4", "privatelinks.json")
45
+ @armCommonDefinition(
46
+ "PrivateEndpointConnectionProperties",
47
+ {
48
+ version: Azure.ResourceManager.CommonTypes.Versions.v4,
49
+ isDefault: true,
50
+ },
51
+ "privatelinks.json"
52
+ )
53
+ @armCommonDefinition(
54
+ "PrivateEndpointConnectionProperties",
55
+ Azure.ResourceManager.CommonTypes.Versions.v5,
56
+ "privatelinks.json"
57
+ )
34
58
  model PrivateEndpointConnectionProperties {
35
59
  /** The group identifiers for the private endpoint resource */
36
60
  @visibility("read")
@@ -47,7 +71,19 @@ model PrivateEndpointConnectionProperties {
47
71
  }
48
72
 
49
73
  /** A collection of information about the state of the connection between service consumer and provider. */
50
- @armCommonDefinition("PrivateLinkServiceConnectionState", "v4", "privatelinks.json")
74
+ @armCommonDefinition(
75
+ "PrivateLinkServiceConnectionState",
76
+ {
77
+ version: Azure.ResourceManager.CommonTypes.Versions.v4,
78
+ isDefault: true,
79
+ },
80
+ "privatelinks.json"
81
+ )
82
+ @armCommonDefinition(
83
+ "PrivateLinkServiceConnectionState",
84
+ Azure.ResourceManager.CommonTypes.Versions.v5,
85
+ "privatelinks.json"
86
+ )
51
87
  model PrivateLinkServiceConnectionState {
52
88
  /** Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service. */
53
89
  status?: PrivateEndpointServiceConnectionStatus;
@@ -89,7 +125,19 @@ model PrivateLinkResource extends Azure.ResourceManager.Foundations.ProxyResourc
89
125
 
90
126
  /** Properties of a private link resource. */
91
127
  #suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-provisioning-state" "Matches current common code"
92
- @armCommonDefinition("PrivateLinkResourceProperties", "v4", "privatelinks.json")
128
+ @armCommonDefinition(
129
+ "PrivateLinkResourceProperties",
130
+ {
131
+ version: Azure.ResourceManager.CommonTypes.Versions.v4,
132
+ isDefault: true,
133
+ },
134
+ "privatelinks.json"
135
+ )
136
+ @armCommonDefinition(
137
+ "PrivateLinkResourceProperties",
138
+ Azure.ResourceManager.CommonTypes.Versions.v5,
139
+ "privatelinks.json"
140
+ )
93
141
  model PrivateLinkResourceProperties {
94
142
  /** The private link resource group id. */
95
143
  @visibility("read")
@@ -122,7 +170,19 @@ model PrivateLinkResourceListResult {
122
170
  model PrivateEndpointConnectionParameter<TSegment extends valueof string = "privateEndpointConnections"> {
123
171
  /** The name of the private endpoint connection associated with the Azure resource. */
124
172
  @path
125
- @armCommonParameter("PrivateEndpointConnectionName", "v4", "privatelinks.json")
173
+ @armCommonParameter(
174
+ "PrivateEndpointConnectionName",
175
+ {
176
+ version: Azure.ResourceManager.CommonTypes.Versions.v4,
177
+ isDefault: true,
178
+ },
179
+ "privatelinks.json"
180
+ )
181
+ @armCommonParameter(
182
+ "PrivateEndpointConnectionName",
183
+ Azure.ResourceManager.CommonTypes.Versions.v5,
184
+ "privatelinks.json"
185
+ )
126
186
  @TypeSpec.Rest.segment(TSegment)
127
187
  @key("privateEndpointConnectionName")
128
188
  name: string;
@@ -14,6 +14,15 @@ extern dec armUpdateProviderNamespace(target: Reflection.Operation);
14
14
  */
15
15
  extern dec assignProviderNameValue(target: ModelProperty, resource: Model);
16
16
 
17
+ /**
18
+ * Describes the shape of model literals accepted by the `version` parameter of
19
+ * the `armCommonDefinition` and `armCommonParameter` decorators.
20
+ */
21
+ alias ArmCommonTypeVersionSpec = {
22
+ version: string | EnumMember;
23
+ isDefault: boolean;
24
+ };
25
+
17
26
  /**
18
27
  * @param definitionName Definition name
19
28
  * @param version Arm Version
@@ -22,7 +31,7 @@ extern dec assignProviderNameValue(target: ModelProperty, resource: Model);
22
31
  extern dec armCommonDefinition(
23
32
  target: Model,
24
33
  definitionName?: valueof string,
25
- version?: valueof string,
34
+ version?: EnumMember | ArmCommonTypeVersionSpec | valueof string,
26
35
  referenceFile?: valueof string
27
36
  );
28
37
 
@@ -34,7 +43,7 @@ extern dec armCommonDefinition(
34
43
  extern dec armCommonParameter(
35
44
  target: ModelProperty,
36
45
  definitionName?: valueof string,
37
- version?: valueof string,
46
+ version?: EnumMember | ArmCommonTypeVersionSpec | valueof string,
38
47
  referenceFile?: valueof string
39
48
  );
40
49
 
@@ -68,3 +77,8 @@ extern dec resourceBaseParametersOf(target: Model, propertyName: Model);
68
77
  * @param values Values
69
78
  */
70
79
  extern dec resourceParameterBaseFor(target: ModelProperty, values: unknown[]);
80
+
81
+ /**
82
+ * Marks an enum as representing the valid `common-types` versions.
83
+ */
84
+ extern dec armCommonTypesVersions(target: Enum);
package/lib/responses.tsp CHANGED
@@ -108,7 +108,9 @@ model ArmResourceCreatedSyncResponse<TResource extends Azure.ResourceManager.Fou
108
108
  * The standard ARM error response
109
109
  */
110
110
  @error
111
- @armCommonDefinition
111
+ @armCommonDefinition("ErrorResponse", Azure.ResourceManager.CommonTypes.Versions.v3)
112
+ @armCommonDefinition("ErrorResponse", Azure.ResourceManager.CommonTypes.Versions.v4)
113
+ @armCommonDefinition("ErrorResponse", Azure.ResourceManager.CommonTypes.Versions.v5)
112
114
  @doc("Common error response for all Azure Resource Manager APIs to return error details for failed operations.")
113
115
  model ErrorResponse {
114
116
  @doc("The error object.")
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@azure-tools/typespec-azure-resource-manager",
3
- "version": "0.36.0-dev.5",
3
+ "version": "0.36.0-dev.8",
4
4
  "author": "Microsoft Corporation",
5
5
  "description": "TypeSpec Azure Resource Manager library",
6
6
  "homepage": "https://azure.github.io/typespec-azure",
@@ -19,17 +19,13 @@
19
19
  "main": "dist/src/index.js",
20
20
  "tspMain": "lib/arm.tsp",
21
21
  "exports": {
22
- ".": "./dist/src/index.js",
23
- "./testing": "./dist/src/testing/index.js"
24
- },
25
- "typesVersions": {
26
- "*": {
27
- "*": [
28
- "./dist/src/index.d.ts"
29
- ],
30
- "testing": [
31
- "./dist/src/testing/index.d.ts"
32
- ]
22
+ ".": {
23
+ "types": "./dist/src/index.d.ts",
24
+ "default": "./dist/src/index.js"
25
+ },
26
+ "./testing": {
27
+ "types": "./dist/src/testing/index.d.ts",
28
+ "default": "./dist/src/testing/index.js"
33
29
  }
34
30
  },
35
31
  "type": "module",
@@ -44,7 +40,7 @@
44
40
  "peerDependencies": {
45
41
  "@typespec/compiler": "~0.49.0 || >=0.50.0-dev <0.50.0",
46
42
  "@azure-tools/typespec-azure-core": "~0.35.1 || >=0.36.0-dev <0.36.0",
47
- "@azure-tools/typespec-autorest": "~0.35.1 || >=0.36.0-dev <0.36.0",
43
+ "@azure-tools/typespec-autorest": "~0.35.2 || >=0.36.0-dev <0.36.0",
48
44
  "@typespec/openapi": "~0.49.0 || >=0.50.0-dev <0.50.0",
49
45
  "@typespec/rest": "~0.49.0 || >=0.50.0-dev <0.50.0",
50
46
  "@typespec/http": "~0.49.0 || >=0.50.0-dev <0.50.0",
@@ -54,7 +50,7 @@
54
50
  "@typespec/compiler": "~0.49.0 || >=0.50.0-dev <0.50.0",
55
51
  "@typespec/openapi": "~0.49.0 || >=0.50.0-dev <0.50.0",
56
52
  "@azure-tools/typespec-azure-core": "~0.35.1 || >=0.36.0-dev <0.36.0",
57
- "@azure-tools/typespec-autorest": "~0.35.1 || >=0.36.0-dev <0.36.0",
53
+ "@azure-tools/typespec-autorest": "~0.35.2 || >=0.36.0-dev <0.36.0",
58
54
  "@typespec/rest": "~0.49.0 || >=0.50.0-dev <0.50.0",
59
55
  "@typespec/http": "~0.49.0 || >=0.50.0-dev <0.50.0",
60
56
  "@typespec/versioning": "~0.49.0 || >=0.50.0-dev <0.50.0",