@azure-tools/typespec-azure-resource-manager 0.70.0-dev.0 → 0.70.0-dev.10

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.
Files changed (83) hide show
  1. package/README.md +150 -10
  2. package/dist/generated-defs/Azure.ResourceManager.BaseTypes.d.ts +35 -0
  3. package/dist/generated-defs/Azure.ResourceManager.BaseTypes.d.ts.map +1 -0
  4. package/dist/generated-defs/Azure.ResourceManager.BaseTypes.js +2 -0
  5. package/dist/generated-defs/Azure.ResourceManager.BaseTypes.js.map +1 -0
  6. package/dist/generated-defs/Azure.ResourceManager.BaseTypes.ts-test.d.ts +2 -0
  7. package/dist/generated-defs/Azure.ResourceManager.BaseTypes.ts-test.d.ts.map +1 -0
  8. package/dist/generated-defs/Azure.ResourceManager.BaseTypes.ts-test.js +8 -0
  9. package/dist/generated-defs/Azure.ResourceManager.BaseTypes.ts-test.js.map +1 -0
  10. package/dist/generated-defs/Azure.ResourceManager.Private.d.ts +12 -0
  11. package/dist/generated-defs/Azure.ResourceManager.Private.d.ts.map +1 -1
  12. package/dist/generated-defs/Azure.ResourceManager.d.ts +66 -25
  13. package/dist/generated-defs/Azure.ResourceManager.d.ts.map +1 -1
  14. package/dist/src/base-types.d.ts +16 -0
  15. package/dist/src/base-types.d.ts.map +1 -0
  16. package/dist/src/base-types.js +30 -0
  17. package/dist/src/base-types.js.map +1 -0
  18. package/dist/src/index.d.ts +1 -0
  19. package/dist/src/index.d.ts.map +1 -1
  20. package/dist/src/index.js +1 -0
  21. package/dist/src/index.js.map +1 -1
  22. package/dist/src/lib.d.ts +17 -2
  23. package/dist/src/lib.d.ts.map +1 -1
  24. package/dist/src/lib.js +6 -0
  25. package/dist/src/lib.js.map +1 -1
  26. package/dist/src/linter.d.ts.map +1 -1
  27. package/dist/src/linter.js +8 -0
  28. package/dist/src/linter.js.map +1 -1
  29. package/dist/src/private.decorators.d.ts.map +1 -1
  30. package/dist/src/private.decorators.js +20 -2
  31. package/dist/src/private.decorators.js.map +1 -1
  32. package/dist/src/resource.d.ts +6 -2
  33. package/dist/src/resource.d.ts.map +1 -1
  34. package/dist/src/resource.js +8 -0
  35. package/dist/src/resource.js.map +1 -1
  36. package/dist/src/rules/arm-agent-base-type-child-resources.d.ts +4 -0
  37. package/dist/src/rules/arm-agent-base-type-child-resources.d.ts.map +1 -0
  38. package/dist/src/rules/arm-agent-base-type-child-resources.js +94 -0
  39. package/dist/src/rules/arm-agent-base-type-child-resources.js.map +1 -0
  40. package/dist/src/rules/arm-agent-base-type-lifecycle-operations.d.ts +4 -0
  41. package/dist/src/rules/arm-agent-base-type-lifecycle-operations.d.ts.map +1 -0
  42. package/dist/src/rules/arm-agent-base-type-lifecycle-operations.js +99 -0
  43. package/dist/src/rules/arm-agent-base-type-lifecycle-operations.js.map +1 -0
  44. package/dist/src/rules/arm-custom-resource-usage-discourage.d.ts.map +1 -1
  45. package/dist/src/rules/arm-custom-resource-usage-discourage.js +44 -2
  46. package/dist/src/rules/arm-custom-resource-usage-discourage.js.map +1 -1
  47. package/dist/src/rules/arm-feature-file-usage-discourage.d.ts +4 -0
  48. package/dist/src/rules/arm-feature-file-usage-discourage.d.ts.map +1 -0
  49. package/dist/src/rules/arm-feature-file-usage-discourage.js +24 -0
  50. package/dist/src/rules/arm-feature-file-usage-discourage.js.map +1 -0
  51. package/dist/src/rules/no-reserved-resource-property.d.ts +4 -0
  52. package/dist/src/rules/no-reserved-resource-property.d.ts.map +1 -0
  53. package/dist/src/rules/no-reserved-resource-property.js +50 -0
  54. package/dist/src/rules/no-reserved-resource-property.js.map +1 -0
  55. package/dist/src/state.d.ts +2 -0
  56. package/dist/src/state.d.ts.map +1 -1
  57. package/dist/src/state.js +3 -0
  58. package/dist/src/state.js.map +1 -1
  59. package/dist/src/tsp-index.d.ts.map +1 -1
  60. package/dist/src/tsp-index.js +8 -1
  61. package/dist/src/tsp-index.js.map +1 -1
  62. package/lib/arm.tsp +2 -0
  63. package/lib/base-types/agent.tsp +425 -0
  64. package/lib/base-types/base-types.tsp +45 -0
  65. package/lib/common-types/common-types.tsp +1 -1
  66. package/lib/common-types/nsp-operations.tsp +5 -5
  67. package/lib/common-types/types.tsp +2 -3
  68. package/lib/decorators.tsp +81 -11
  69. package/lib/extension/operations.tsp +8 -6
  70. package/lib/foundations/arm.foundations.tsp +22 -11
  71. package/lib/interfaces.tsp +24 -14
  72. package/lib/legacy-types/extension.tsp +1 -1
  73. package/lib/legacy-types/operations.tsp +9 -5
  74. package/lib/legacy-types/private-endpoints.tsp +4 -4
  75. package/lib/models.tsp +1 -1
  76. package/lib/operations.tsp +31 -19
  77. package/lib/parameters.tsp +3 -3
  78. package/lib/private-endpoints.tsp +9 -9
  79. package/lib/private-links.tsp +3 -3
  80. package/lib/private.decorators.tsp +16 -0
  81. package/lib/responses.tsp +17 -12
  82. package/package.json +4 -4
  83. package/lib/common-types/customer-managed-keys-ref.tsp +0 -43
@@ -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,4 @@
1
+ export declare const armAgentBaseTypeChildResourcesRule: import("@typespec/compiler").LinterRuleDefinition<"arm-agent-base-type-child-resources", {
2
+ readonly default: import("@typespec/compiler").CallableMessage<["missing"]>;
3
+ }, Record<string, never>>;
4
+ //# sourceMappingURL=arm-agent-base-type-child-resources.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"arm-agent-base-type-child-resources.d.ts","sourceRoot":"","sources":["../../../src/rules/arm-agent-base-type-child-resources.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,kCAAkC;;yBA+F7C,CAAC"}
@@ -0,0 +1,94 @@
1
+ import { createRule, getNamespaceFullName, paramMessage } from "@typespec/compiler";
2
+ import { getParentResource } from "@typespec/rest";
3
+ import { getAzureBaseTypes } from "../base-types.js";
4
+ import { getArmResources } from "../resource.js";
5
+ export const armAgentBaseTypeChildResourcesRule = createRule({
6
+ name: "arm-agent-base-type-child-resources",
7
+ severity: "warning",
8
+ description: "Resources decorated with @azureBaseType for the Agent base type must have both a Conversation and a Response child resource.",
9
+ url: "https://azure.github.io/typespec-azure/docs/libraries/azure-resource-manager/rules/arm-agent-base-type-child-resources",
10
+ messages: {
11
+ default: paramMessage `Agent resources must have both a Conversation and a Response child resource. Missing: ${"missing"}.`,
12
+ },
13
+ create(context) {
14
+ return {
15
+ root: (program) => {
16
+ const resources = getArmResources(program);
17
+ // Identify agent resources
18
+ const agentResources = resources.filter((r) => hasAgentBaseType(r.typespecType));
19
+ for (const agentResource of agentResources) {
20
+ // Find child resources whose @parentResource points to this agent
21
+ const children = resources.filter((r) => {
22
+ const parent = getParentResource(context.program, r.typespecType);
23
+ return parent === agentResource.typespecType;
24
+ });
25
+ let hasConversation = false;
26
+ let hasResponse = false;
27
+ for (const child of children) {
28
+ const childProps = child.typespecType.properties.get("properties");
29
+ if (childProps?.type.kind === "Model") {
30
+ if (isConversationProperties(childProps.type)) {
31
+ hasConversation = true;
32
+ }
33
+ if (isResponseProperties(childProps.type)) {
34
+ hasResponse = true;
35
+ }
36
+ }
37
+ }
38
+ const missing = [];
39
+ if (!hasConversation)
40
+ missing.push("Conversation");
41
+ if (!hasResponse)
42
+ missing.push("Response");
43
+ if (missing.length > 0) {
44
+ context.reportDiagnostic({
45
+ format: { missing: missing.join(", ") },
46
+ target: agentResource.typespecType,
47
+ });
48
+ }
49
+ }
50
+ },
51
+ };
52
+ function hasAgentBaseType(model) {
53
+ const directTypes = getAzureBaseTypes(context.program, model);
54
+ if (directTypes && isAgent(directTypes))
55
+ return true;
56
+ if (model.sourceModels) {
57
+ for (const source of model.sourceModels) {
58
+ const sourceTypes = getAzureBaseTypes(context.program, source.model);
59
+ if (sourceTypes && isAgent(sourceTypes))
60
+ return true;
61
+ }
62
+ }
63
+ return false;
64
+ }
65
+ function isAgent(types) {
66
+ return types.some((bt) => bt.baseType === "Agent");
67
+ }
68
+ function isConversationProperties(model) {
69
+ return checkModelName(model, "ConversationProperties");
70
+ }
71
+ function isResponseProperties(model) {
72
+ return checkModelName(model, "ResponseProperties");
73
+ }
74
+ function checkModelName(model, name) {
75
+ if (model.name === name) {
76
+ const ns = model.namespace ? getNamespaceFullName(model.namespace) : "";
77
+ if (ns === "Azure.ResourceManager.BaseTypes.Agents")
78
+ return true;
79
+ }
80
+ if (model.baseModel) {
81
+ if (checkModelName(model.baseModel, name))
82
+ return true;
83
+ }
84
+ if (model.sourceModels) {
85
+ for (const source of model.sourceModels) {
86
+ if (checkModelName(source.model, name))
87
+ return true;
88
+ }
89
+ }
90
+ return false;
91
+ }
92
+ },
93
+ });
94
+ //# sourceMappingURL=arm-agent-base-type-child-resources.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"arm-agent-base-type-child-resources.js","sourceRoot":"","sources":["../../../src/rules/arm-agent-base-type-child-resources.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,UAAU,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACpG,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAEnD,OAAO,EAAqB,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjD,MAAM,CAAC,MAAM,kCAAkC,GAAG,UAAU,CAAC;IAC3D,IAAI,EAAE,qCAAqC;IAC3C,QAAQ,EAAE,SAAS;IACnB,WAAW,EACT,8HAA8H;IAChI,GAAG,EAAE,wHAAwH;IAC7H,QAAQ,EAAE;QACR,OAAO,EAAE,YAAY,CAAA,yFAAyF,SAAS,GAAG;KAC3H;IACD,MAAM,CAAC,OAAO;QACZ,OAAO;YACL,IAAI,EAAE,CAAC,OAAgB,EAAE,EAAE;gBACzB,MAAM,SAAS,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;gBAE3C,2BAA2B;gBAC3B,MAAM,cAAc,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;gBAEjF,KAAK,MAAM,aAAa,IAAI,cAAc,EAAE,CAAC;oBAC3C,kEAAkE;oBAClE,MAAM,QAAQ,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;wBACtC,MAAM,MAAM,GAAG,iBAAiB,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC;wBAClE,OAAO,MAAM,KAAK,aAAa,CAAC,YAAY,CAAC;oBAC/C,CAAC,CAAC,CAAC;oBAEH,IAAI,eAAe,GAAG,KAAK,CAAC;oBAC5B,IAAI,WAAW,GAAG,KAAK,CAAC;oBAExB,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;wBAC7B,MAAM,UAAU,GAAG,KAAK,CAAC,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;wBACnE,IAAI,UAAU,EAAE,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;4BACtC,IAAI,wBAAwB,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gCAC9C,eAAe,GAAG,IAAI,CAAC;4BACzB,CAAC;4BACD,IAAI,oBAAoB,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gCAC1C,WAAW,GAAG,IAAI,CAAC;4BACrB,CAAC;wBACH,CAAC;oBACH,CAAC;oBAED,MAAM,OAAO,GAAa,EAAE,CAAC;oBAC7B,IAAI,CAAC,eAAe;wBAAE,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;oBACnD,IAAI,CAAC,WAAW;wBAAE,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;oBAE3C,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACvB,OAAO,CAAC,gBAAgB,CAAC;4BACvB,MAAM,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;4BACvC,MAAM,EAAE,aAAa,CAAC,YAAY;yBACnC,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;YACH,CAAC;SACF,CAAC;QAEF,SAAS,gBAAgB,CAAC,KAAY;YACpC,MAAM,WAAW,GAAG,iBAAiB,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC9D,IAAI,WAAW,IAAI,OAAO,CAAC,WAAW,CAAC;gBAAE,OAAO,IAAI,CAAC;YAErD,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;gBACvB,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;oBACxC,MAAM,WAAW,GAAG,iBAAiB,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;oBACrE,IAAI,WAAW,IAAI,OAAO,CAAC,WAAW,CAAC;wBAAE,OAAO,IAAI,CAAC;gBACvD,CAAC;YACH,CAAC;YAED,OAAO,KAAK,CAAC;QACf,CAAC;QAED,SAAS,OAAO,CAAC,KAA0B;YACzC,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC;QACrD,CAAC;QAED,SAAS,wBAAwB,CAAC,KAAY;YAC5C,OAAO,cAAc,CAAC,KAAK,EAAE,wBAAwB,CAAC,CAAC;QACzD,CAAC;QAED,SAAS,oBAAoB,CAAC,KAAY;YACxC,OAAO,cAAc,CAAC,KAAK,EAAE,oBAAoB,CAAC,CAAC;QACrD,CAAC;QAED,SAAS,cAAc,CAAC,KAAY,EAAE,IAAY;YAChD,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;gBACxB,MAAM,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,oBAAoB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACxE,IAAI,EAAE,KAAK,wCAAwC;oBAAE,OAAO,IAAI,CAAC;YACnE,CAAC;YACD,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;gBACpB,IAAI,cAAc,CAAC,KAAK,CAAC,SAAS,EAAE,IAAI,CAAC;oBAAE,OAAO,IAAI,CAAC;YACzD,CAAC;YACD,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;gBACvB,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;oBACxC,IAAI,cAAc,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC;wBAAE,OAAO,IAAI,CAAC;gBACtD,CAAC;YACH,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,4 @@
1
+ export declare const armAgentBaseTypeLifecycleOperationsRule: import("@typespec/compiler").LinterRuleDefinition<"arm-agent-base-type-lifecycle-operations", {
2
+ readonly default: import("@typespec/compiler").CallableMessage<["resourceName", "missing"]>;
3
+ }, Record<string, never>>;
4
+ //# sourceMappingURL=arm-agent-base-type-lifecycle-operations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"arm-agent-base-type-lifecycle-operations.d.ts","sourceRoot":"","sources":["../../../src/rules/arm-agent-base-type-lifecycle-operations.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,uCAAuC;;yBAiGlD,CAAC"}
@@ -0,0 +1,99 @@
1
+ import { createRule, getNamespaceFullName, paramMessage } from "@typespec/compiler";
2
+ import { getParentResource } from "@typespec/rest";
3
+ import { getAzureBaseTypes } from "../base-types.js";
4
+ import { getArmResources } from "../resource.js";
5
+ export const armAgentBaseTypeLifecycleOperationsRule = createRule({
6
+ name: "arm-agent-base-type-lifecycle-operations",
7
+ severity: "warning",
8
+ description: "Conversation and Response child resources of an Agent must define create, read, update, and delete lifecycle operations.",
9
+ url: "https://azure.github.io/typespec-azure/docs/libraries/azure-resource-manager/rules/arm-agent-base-type-lifecycle-operations",
10
+ messages: {
11
+ default: paramMessage `Resource "${"resourceName"}" is missing required lifecycle operations: ${"missing"}.`,
12
+ },
13
+ create(context) {
14
+ return {
15
+ root: (program) => {
16
+ const resources = getArmResources(program);
17
+ // Identify agent resources
18
+ const agentResources = resources.filter((r) => hasAgentBaseType(r.typespecType));
19
+ for (const agentResource of agentResources) {
20
+ // Find child resources whose @parentResource points to this agent
21
+ const children = resources.filter((r) => {
22
+ const parent = getParentResource(context.program, r.typespecType);
23
+ return parent === agentResource.typespecType;
24
+ });
25
+ for (const child of children) {
26
+ const childProps = child.typespecType.properties.get("properties");
27
+ if (childProps?.type.kind !== "Model")
28
+ continue;
29
+ const isConversation = isConversationProperties(childProps.type);
30
+ const isResponse = isResponseProperties(childProps.type);
31
+ if (!isConversation && !isResponse)
32
+ continue;
33
+ // Check lifecycle operations
34
+ const lifecycle = child.operations.lifecycle;
35
+ const missing = [];
36
+ if (!lifecycle.createOrUpdate)
37
+ missing.push("create");
38
+ if (!lifecycle.read)
39
+ missing.push("read");
40
+ if (!lifecycle.update)
41
+ missing.push("update");
42
+ if (!lifecycle.delete)
43
+ missing.push("delete");
44
+ if (missing.length > 0) {
45
+ context.reportDiagnostic({
46
+ format: {
47
+ resourceName: child.typespecType.name,
48
+ missing: missing.join(", "),
49
+ },
50
+ target: child.typespecType,
51
+ });
52
+ }
53
+ }
54
+ }
55
+ },
56
+ };
57
+ function hasAgentBaseType(model) {
58
+ const directTypes = getAzureBaseTypes(context.program, model);
59
+ if (directTypes && isAgent(directTypes))
60
+ return true;
61
+ if (model.sourceModels) {
62
+ for (const source of model.sourceModels) {
63
+ const sourceTypes = getAzureBaseTypes(context.program, source.model);
64
+ if (sourceTypes && isAgent(sourceTypes))
65
+ return true;
66
+ }
67
+ }
68
+ return false;
69
+ }
70
+ function isAgent(types) {
71
+ return types.some((bt) => bt.baseType === "Agent");
72
+ }
73
+ function isConversationProperties(model) {
74
+ return checkModelName(model, "ConversationProperties");
75
+ }
76
+ function isResponseProperties(model) {
77
+ return checkModelName(model, "ResponseProperties");
78
+ }
79
+ function checkModelName(model, name) {
80
+ if (model.name === name) {
81
+ const ns = model.namespace ? getNamespaceFullName(model.namespace) : "";
82
+ if (ns === "Azure.ResourceManager.BaseTypes.Agents")
83
+ return true;
84
+ }
85
+ if (model.baseModel) {
86
+ if (checkModelName(model.baseModel, name))
87
+ return true;
88
+ }
89
+ if (model.sourceModels) {
90
+ for (const source of model.sourceModels) {
91
+ if (checkModelName(source.model, name))
92
+ return true;
93
+ }
94
+ }
95
+ return false;
96
+ }
97
+ },
98
+ });
99
+ //# sourceMappingURL=arm-agent-base-type-lifecycle-operations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"arm-agent-base-type-lifecycle-operations.js","sourceRoot":"","sources":["../../../src/rules/arm-agent-base-type-lifecycle-operations.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"arm-custom-resource-usage-discourage.d.ts","sourceRoot":"","sources":["../../../src/rules/arm-custom-resource-usage-discourage.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,gCAAgC;;yBAoB3C,CAAC"}
1
+ {"version":3,"file":"arm-custom-resource-usage-discourage.d.ts","sourceRoot":"","sources":["../../../src/rules/arm-custom-resource-usage-discourage.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,gCAAgC;;yBAuB3C,CAAC"}
@@ -1,5 +1,7 @@
1
- import { createRule } from "@typespec/compiler";
1
+ import { createRule, isTemplateInstance } from "@typespec/compiler";
2
+ import { SyntaxKind } from "@typespec/compiler/ast";
2
3
  import { isCustomAzureResource } from "../resource.js";
4
+ const armCustomResourceUsageDiscourageCode = "@azure-tools/typespec-azure-resource-manager/arm-custom-resource-usage-discourage";
3
5
  export const armCustomResourceUsageDiscourage = createRule({
4
6
  name: "arm-custom-resource-usage-discourage",
5
7
  severity: "warning",
@@ -11,7 +13,8 @@ export const armCustomResourceUsageDiscourage = createRule({
11
13
  create(context) {
12
14
  return {
13
15
  model: (model) => {
14
- if (isCustomAzureResource(context.program, model)) {
16
+ if (isCustomAzureResource(context.program, model) &&
17
+ !hasSuppressedCustomResourceTemplateBase(context.program, model)) {
15
18
  context.reportDiagnostic({
16
19
  code: "arm-custom-resource-usage-discourage",
17
20
  target: model,
@@ -21,4 +24,43 @@ export const armCustomResourceUsageDiscourage = createRule({
21
24
  };
22
25
  },
23
26
  });
27
+ function hasSuppressedCustomResourceTemplateBase(program, model) {
28
+ return hasSuppressedCustomResourceTemplate(program, model, new Set());
29
+ }
30
+ function hasSuppressedCustomResourceTemplate(program, model, visited) {
31
+ if (visited.has(model)) {
32
+ return false;
33
+ }
34
+ visited.add(model);
35
+ if (isTemplateInstance(model) && hasSuppression(model.node)) {
36
+ return true;
37
+ }
38
+ if (model.baseModel && hasSuppressedCustomResourceTemplate(program, model.baseModel, visited)) {
39
+ return true;
40
+ }
41
+ for (const sourceModel of model.sourceModels) {
42
+ if (hasSuppressedCustomResourceTemplate(program, sourceModel.model, visited)) {
43
+ return true;
44
+ }
45
+ }
46
+ return false;
47
+ }
48
+ function hasSuppression(node) {
49
+ let current = node;
50
+ while (current) {
51
+ for (const directive of current.directives ?? []) {
52
+ const firstArgument = directive.arguments[0];
53
+ if (directive.target.sv === "suppress" &&
54
+ firstArgument &&
55
+ ((firstArgument.kind === SyntaxKind.StringLiteral &&
56
+ firstArgument.value === armCustomResourceUsageDiscourageCode) ||
57
+ (firstArgument.kind === SyntaxKind.Identifier &&
58
+ firstArgument.sv === armCustomResourceUsageDiscourageCode))) {
59
+ return true;
60
+ }
61
+ }
62
+ current = current.parent;
63
+ }
64
+ return false;
65
+ }
24
66
  //# sourceMappingURL=arm-custom-resource-usage-discourage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"arm-custom-resource-usage-discourage.js","sourceRoot":"","sources":["../../../src/rules/arm-custom-resource-usage-discourage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAS,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAEvD,MAAM,CAAC,MAAM,gCAAgC,GAAG,UAAU,CAAC;IACzD,IAAI,EAAE,sCAAsC;IAC5C,QAAQ,EAAE,SAAS;IACnB,WAAW,EAAE,qDAAqD;IAClE,GAAG,EAAE,yHAAyH;IAC9H,QAAQ,EAAE;QACR,OAAO,EAAE,oKAAoK;KAC9K;IACD,MAAM,CAAC,OAAO;QACZ,OAAO;YACL,KAAK,EAAE,CAAC,KAAY,EAAE,EAAE;gBACtB,IAAI,qBAAqB,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC;oBAClD,OAAO,CAAC,gBAAgB,CAAC;wBACvB,IAAI,EAAE,sCAAsC;wBAC5C,MAAM,EAAE,KAAK;qBACd,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"arm-custom-resource-usage-discourage.js","sourceRoot":"","sources":["../../../src/rules/arm-custom-resource-usage-discourage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAkB,MAAM,oBAAoB,CAAC;AACpF,OAAO,EAAE,UAAU,EAAa,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAEvD,MAAM,oCAAoC,GACxC,mFAAmF,CAAC;AAEtF,MAAM,CAAC,MAAM,gCAAgC,GAAG,UAAU,CAAC;IACzD,IAAI,EAAE,sCAAsC;IAC5C,QAAQ,EAAE,SAAS;IACnB,WAAW,EAAE,qDAAqD;IAClE,GAAG,EAAE,yHAAyH;IAC9H,QAAQ,EAAE;QACR,OAAO,EAAE,oKAAoK;KAC9K;IACD,MAAM,CAAC,OAAO;QACZ,OAAO;YACL,KAAK,EAAE,CAAC,KAAY,EAAE,EAAE;gBACtB,IACE,qBAAqB,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC;oBAC7C,CAAC,uCAAuC,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,EAChE,CAAC;oBACD,OAAO,CAAC,gBAAgB,CAAC;wBACvB,IAAI,EAAE,sCAAsC;wBAC5C,MAAM,EAAE,KAAK;qBACd,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,SAAS,uCAAuC,CAAC,OAAgB,EAAE,KAAY;IAC7E,OAAO,mCAAmC,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,GAAG,EAAS,CAAC,CAAC;AAC/E,CAAC;AAED,SAAS,mCAAmC,CAC1C,OAAgB,EAChB,KAAY,EACZ,OAAmB;IAEnB,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAEnB,IAAI,kBAAkB,CAAC,KAAK,CAAC,IAAI,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5D,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,KAAK,CAAC,SAAS,IAAI,mCAAmC,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,CAAC;QAC9F,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,MAAM,WAAW,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;QAC7C,IAAI,mCAAmC,CAAC,OAAO,EAAE,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC;YAC7E,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,cAAc,CAAC,IAAsB;IAC5C,IAAI,OAAO,GAAG,IAAI,CAAC;IACnB,OAAO,OAAO,EAAE,CAAC;QACf,KAAK,MAAM,SAAS,IAAI,OAAO,CAAC,UAAU,IAAI,EAAE,EAAE,CAAC;YACjD,MAAM,aAAa,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YAC7C,IACE,SAAS,CAAC,MAAM,CAAC,EAAE,KAAK,UAAU;gBAClC,aAAa;gBACb,CAAC,CAAC,aAAa,CAAC,IAAI,KAAK,UAAU,CAAC,aAAa;oBAC/C,aAAa,CAAC,KAAK,KAAK,oCAAoC,CAAC;oBAC7D,CAAC,aAAa,CAAC,IAAI,KAAK,UAAU,CAAC,UAAU;wBAC3C,aAAa,CAAC,EAAE,KAAK,oCAAoC,CAAC,CAAC,EAC/D,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QACD,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IAC3B,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -0,0 +1,4 @@
1
+ export declare const armFeatureFileUsageDiscourage: import("@typespec/compiler").LinterRuleDefinition<"arm-feature-file-usage-discourage", {
2
+ readonly default: "Avoid using the @featureFiles decorator. Its usage should be limited to brownfield services migration and requires explicit approval.";
3
+ }, Record<string, never>>;
4
+ //# sourceMappingURL=arm-feature-file-usage-discourage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"arm-feature-file-usage-discourage.d.ts","sourceRoot":"","sources":["../../../src/rules/arm-feature-file-usage-discourage.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,6BAA6B;;yBAoBxC,CAAC"}
@@ -0,0 +1,24 @@
1
+ import { createRule } from "@typespec/compiler";
2
+ import { getFeatureFileSet } from "../resource.js";
3
+ export const armFeatureFileUsageDiscourage = createRule({
4
+ name: "arm-feature-file-usage-discourage",
5
+ severity: "warning",
6
+ description: "Verify the usage of @featureFiles decorator.",
7
+ url: "https://azure.github.io/typespec-azure/docs/libraries/azure-resource-manager/rules/arm-feature-file-usage-discourage",
8
+ messages: {
9
+ default: `Avoid using the @featureFiles decorator. Its usage should be limited to brownfield services migration and requires explicit approval.`,
10
+ },
11
+ create(context) {
12
+ return {
13
+ namespace: (namespace) => {
14
+ if (getFeatureFileSet(context.program, namespace)) {
15
+ context.reportDiagnostic({
16
+ code: "arm-feature-file-usage-discourage",
17
+ target: namespace,
18
+ });
19
+ }
20
+ },
21
+ };
22
+ },
23
+ });
24
+ //# sourceMappingURL=arm-feature-file-usage-discourage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"arm-feature-file-usage-discourage.js","sourceRoot":"","sources":["../../../src/rules/arm-feature-file-usage-discourage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAa,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAEnD,MAAM,CAAC,MAAM,6BAA6B,GAAG,UAAU,CAAC;IACtD,IAAI,EAAE,mCAAmC;IACzC,QAAQ,EAAE,SAAS;IACnB,WAAW,EAAE,8CAA8C;IAC3D,GAAG,EAAE,sHAAsH;IAC3H,QAAQ,EAAE;QACR,OAAO,EAAE,uIAAuI;KACjJ;IACD,MAAM,CAAC,OAAO;QACZ,OAAO;YACL,SAAS,EAAE,CAAC,SAAoB,EAAE,EAAE;gBAClC,IAAI,iBAAiB,CAAC,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE,CAAC;oBAClD,OAAO,CAAC,gBAAgB,CAAC;wBACvB,IAAI,EAAE,mCAAmC;wBACzC,MAAM,EAAE,SAAS;qBAClB,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,4 @@
1
+ export declare const noReservedResourcePropertyRule: import("@typespec/compiler").LinterRuleDefinition<"no-reserved-resource-property", {
2
+ readonly default: import("@typespec/compiler").CallableMessage<["propertyName", "reason"]>;
3
+ }, Record<string, never>>;
4
+ //# sourceMappingURL=no-reserved-resource-property.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"no-reserved-resource-property.d.ts","sourceRoot":"","sources":["../../../src/rules/no-reserved-resource-property.ts"],"names":[],"mappings":"AAuBA,eAAO,MAAM,8BAA8B;;yBAkCzC,CAAC"}
@@ -0,0 +1,50 @@
1
+ import { createRule, getProperty, paramMessage } from "@typespec/compiler";
2
+ import { getArmResource } from "../resource.js";
3
+ import { getProperties } from "./utils.js";
4
+ /**
5
+ * Property names that are reserved and must not appear in a resource's property bag, written with
6
+ * their canonical casing and mapped to the reason each name is reserved. Names are matched
7
+ * case-insensitively. Add a new entry here to reserve an additional resource property name.
8
+ */
9
+ const reservedProperties = new Map([
10
+ ["billingData", "platform billing integration"],
11
+ ]);
12
+ /**
13
+ * Case-insensitive lookup keyed by the lowercased reserved name. Both the reserved names and the
14
+ * resource property names are lowercased when compared, while diagnostics report the reserved name
15
+ * with its canonical casing.
16
+ */
17
+ const reservedPropertiesByLowerName = new Map([...reservedProperties].map(([name, reason]) => [name.toLowerCase(), { name, reason }]));
18
+ export const noReservedResourcePropertyRule = createRule({
19
+ name: "no-reserved-resource-property",
20
+ description: "Reserved property names (for example 'billingData') must not be present in a resource's property bag. The property name is matched case-insensitively.",
21
+ severity: "warning",
22
+ url: "https://azure.github.io/typespec-azure/docs/libraries/azure-resource-manager/rules/no-reserved-resource-property",
23
+ messages: {
24
+ default: paramMessage `Property "${"propertyName"}" is not allowed in the resource property bag. This property name is reserved for ${"reason"}.`,
25
+ },
26
+ create(context) {
27
+ return {
28
+ model: (model) => {
29
+ const resourceModel = getArmResource(context.program, model);
30
+ if (resourceModel === undefined) {
31
+ return;
32
+ }
33
+ const resourceProperties = getProperty(model, "properties")?.type;
34
+ if (resourceProperties === undefined || resourceProperties.kind !== "Model") {
35
+ return;
36
+ }
37
+ for (const property of getProperties(resourceProperties)) {
38
+ const reserved = reservedPropertiesByLowerName.get(property.name.toLowerCase());
39
+ if (reserved !== undefined) {
40
+ context.reportDiagnostic({
41
+ format: { propertyName: reserved.name, reason: reserved.reason },
42
+ target: property,
43
+ });
44
+ }
45
+ }
46
+ },
47
+ };
48
+ },
49
+ });
50
+ //# sourceMappingURL=no-reserved-resource-property.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"no-reserved-resource-property.js","sourceRoot":"","sources":["../../../src/rules/no-reserved-resource-property.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElF,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3C;;;;GAIG;AACH,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAiB;IACjD,CAAC,aAAa,EAAE,8BAA8B,CAAC;CAChD,CAAC,CAAC;AAEH;;;;GAIG;AACH,MAAM,6BAA6B,GAAG,IAAI,GAAG,CAC3C,CAAC,GAAG,kBAAkB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CACxF,CAAC;AAEF,MAAM,CAAC,MAAM,8BAA8B,GAAG,UAAU,CAAC;IACvD,IAAI,EAAE,+BAA+B;IACrC,WAAW,EACT,wJAAwJ;IAC1J,QAAQ,EAAE,SAAS;IACnB,GAAG,EAAE,kHAAkH;IACvH,QAAQ,EAAE;QACR,OAAO,EAAE,YAAY,CAAA,aAAa,cAAc,qFAAqF,QAAQ,GAAG;KACjJ;IACD,MAAM,CAAC,OAAO;QACZ,OAAO;YACL,KAAK,EAAE,CAAC,KAAY,EAAE,EAAE;gBACtB,MAAM,aAAa,GAAG,cAAc,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;gBAC7D,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;oBAChC,OAAO;gBACT,CAAC;gBAED,MAAM,kBAAkB,GAAG,WAAW,CAAC,KAAK,EAAE,YAAY,CAAC,EAAE,IAAI,CAAC;gBAClE,IAAI,kBAAkB,KAAK,SAAS,IAAI,kBAAkB,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;oBAC5E,OAAO;gBACT,CAAC;gBAED,KAAK,MAAM,QAAQ,IAAI,aAAa,CAAC,kBAAkB,CAAC,EAAE,CAAC;oBACzD,MAAM,QAAQ,GAAG,6BAA6B,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;oBAChF,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;wBAC3B,OAAO,CAAC,gBAAgB,CAAC;4BACvB,MAAM,EAAE,EAAE,YAAY,EAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE;4BAChE,MAAM,EAAE,QAAQ;yBACjB,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
@@ -20,6 +20,7 @@ export declare const ArmStateKeys: {
20
20
  customAzureResource: symbol;
21
21
  armFeature: symbol;
22
22
  armFeatureSet: symbol;
23
+ armFeatureFileSet: symbol;
23
24
  armFeatureOptions: symbol;
24
25
  azureResourceBase: symbol;
25
26
  renamePathParameters: symbol;
@@ -30,5 +31,6 @@ export declare const ArmStateKeys: {
30
31
  armExternalType: symbol;
31
32
  inlineAzureType: symbol;
32
33
  genericResource: symbol;
34
+ azureBaseTypes: symbol;
33
35
  };
34
36
  //# sourceMappingURL=state.d.ts.map