@azure-tools/typespec-azure-resource-manager 0.62.0-dev.5 → 0.62.0-dev.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/rules/arm-resource-name-pattern.d.ts.map +1 -1
- package/dist/src/rules/arm-resource-name-pattern.js +2 -28
- package/dist/src/rules/arm-resource-name-pattern.js.map +1 -1
- package/dist/src/rules/secret-prop.d.ts.map +1 -1
- package/dist/src/rules/secret-prop.js +2 -1
- package/dist/src/rules/secret-prop.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"arm-resource-name-pattern.d.ts","sourceRoot":"","sources":["../../../src/rules/arm-resource-name-pattern.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"arm-resource-name-pattern.d.ts","sourceRoot":"","sources":["../../../src/rules/arm-resource-name-pattern.ts"],"names":[],"mappings":"AAeA;;GAEG;AACH,eAAO,MAAM,0BAA0B;;EA2BrC,CAAC"}
|
|
@@ -1,33 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { createAddDecoratorCodeFix, createRule, getPattern, } from "@typespec/compiler";
|
|
2
2
|
import { getArmResources } from "../resource.js";
|
|
3
|
-
// TODO: Replace this with a reusable implementation from the compiler package when implemented.
|
|
4
|
-
// Issue: https://github.com/microsoft/typespec/issues/3044
|
|
5
3
|
function createPatternCodeFix(diagnosticTarget) {
|
|
6
|
-
return
|
|
7
|
-
id: "add-pattern-decorator",
|
|
8
|
-
label: "Add `@pattern` decorator to the resource name property with the default ARM pattern.",
|
|
9
|
-
fix: (context) => {
|
|
10
|
-
const location = getSourceLocation(diagnosticTarget);
|
|
11
|
-
const { lineStart, indent } = findLineStartAndIndent(location);
|
|
12
|
-
const updatedLocation = { ...location, pos: lineStart };
|
|
13
|
-
return context.prependText(updatedLocation, `${indent}@pattern("^[a-zA-Z0-9-]{3,24}$")\n`);
|
|
14
|
-
},
|
|
15
|
-
});
|
|
16
|
-
}
|
|
17
|
-
function findLineStartAndIndent(location) {
|
|
18
|
-
const text = location.file.text;
|
|
19
|
-
let pos = location.pos;
|
|
20
|
-
let indent = 0;
|
|
21
|
-
while (pos > 0 && text[pos - 1] !== "\n") {
|
|
22
|
-
if ([" ", "\t", "\n"].includes(text[pos - 1])) {
|
|
23
|
-
indent++;
|
|
24
|
-
}
|
|
25
|
-
else {
|
|
26
|
-
indent = 0;
|
|
27
|
-
}
|
|
28
|
-
pos--;
|
|
29
|
-
}
|
|
30
|
-
return { lineStart: pos, indent: location.file.text.slice(pos, pos + indent) };
|
|
4
|
+
return createAddDecoratorCodeFix(diagnosticTarget, "pattern", ['"^[a-zA-Z0-9-]{3,24}$"']);
|
|
31
5
|
}
|
|
32
6
|
/**
|
|
33
7
|
* Verify that a delete operation only
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"arm-resource-name-pattern.js","sourceRoot":"","sources":["../../../src/rules/arm-resource-name-pattern.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"arm-resource-name-pattern.js","sourceRoot":"","sources":["../../../src/rules/arm-resource-name-pattern.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,yBAAyB,EACzB,UAAU,EACV,UAAU,GACX,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjD,SAAS,oBAAoB,CAAC,gBAAkC;IAC9D,OAAO,yBAAyB,CAAC,gBAAgB,EAAE,SAAS,EAAE,CAAC,wBAAwB,CAAC,CAAC,CAAC;AAC5F,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,UAAU,CAAC;IACnD,IAAI,EAAE,2BAA2B;IACjC,QAAQ,EAAE,SAAS;IACnB,GAAG,EAAE,0GAA0G;IAC/G,WAAW,EAAE,6EAA6E;IAC1F,QAAQ,EAAE;QACR,OAAO,EAAE,0MAA0M;KACpN;IACD,MAAM,CAAC,OAAO;QACZ,OAAO;YACL,IAAI,EAAE,CAAC,OAAgB,EAAE,EAAE;gBACzB,MAAM,SAAS,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;gBAC3C,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;oBACjC,yBAAyB;oBACzB,MAAM,YAAY,GAAG,QAAQ,CAAC,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBAClE,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;wBAC/B,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,CAAC;4BACvC,OAAO,CAAC,gBAAgB,CAAC;gCACvB,MAAM,EAAE,YAAY;gCACpB,SAAS,EAAE,CAAC,oBAAoB,CAAC,YAAY,CAAC,CAAC;6BAChD,CAAC,CAAC;wBACL,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,SAAS,UAAU,CAAC,OAAgB,EAAE,QAAuB;IAC3D,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC9C,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACpC,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;QACnD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"secret-prop.d.ts","sourceRoot":"","sources":["../../../src/rules/secret-prop.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"secret-prop.d.ts","sourceRoot":"","sources":["../../../src/rules/secret-prop.ts"],"names":[],"mappings":"AAkBA,eAAO,MAAM,cAAc;;EAkCzB,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { UsageFlags, createRule, isSecret, paramMessage, resolveUsages, } from "@typespec/compiler";
|
|
1
|
+
import { UsageFlags, createAddDecoratorCodeFix, createRule, isSecret, paramMessage, resolveUsages, } from "@typespec/compiler";
|
|
2
2
|
import { $ } from "@typespec/compiler/typekit";
|
|
3
3
|
function isKeyValuePairKeyProp(property) {
|
|
4
4
|
return (property.name === "key" &&
|
|
@@ -31,6 +31,7 @@ export const secretProprule = createRule({
|
|
|
31
31
|
format: {
|
|
32
32
|
propertyName: property.name,
|
|
33
33
|
},
|
|
34
|
+
codefixes: [createAddDecoratorCodeFix(property, "secret")],
|
|
34
35
|
});
|
|
35
36
|
}
|
|
36
37
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"secret-prop.js","sourceRoot":"","sources":["../../../src/rules/secret-prop.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,UAAU,EACV,UAAU,EACV,QAAQ,EACR,YAAY,EACZ,aAAa,GACd,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,CAAC,EAAE,MAAM,4BAA4B,CAAC;AAE/C,SAAS,qBAAqB,CAAC,QAAuB;IACpD,OAAO,CACL,QAAQ,CAAC,IAAI,KAAK,KAAK;QACvB,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,IAAI;QAChD,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,IAAI,KAAK,CAAC,CACtC,CAAC;AACJ,CAAC;AACD,MAAM,CAAC,MAAM,cAAc,GAAG,UAAU,CAAC;IACvC,IAAI,EAAE,aAAa;IACnB,WAAW,EAAE,kKAAkK;IAC/K,QAAQ,EAAE,SAAS;IACnB,GAAG,EAAE,gGAAgG;IACrG,QAAQ,EAAE;QACR,OAAO,EAAE,YAAY,CAAA,aAAa,cAAc,8HAA8H;KAC/K;IACD,MAAM,CAAC,OAAO;QACZ,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAAC;QACvE,OAAO;YACL,aAAa,EAAE,CAAC,QAAuB,EAAE,EAAE;gBACzC,IAAI,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;oBAC3E,OAAO;gBACT,CAAC;gBACD,MAAM,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBAC9B,IACE,4BAA4B,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAC3C,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC;oBACpC,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC;oBACzC,QAAQ,CAAC,IAAI,KAAK,EAAE,CAAC,OAAO,CAAC,MAAM;oBACnC,CAAC,qBAAqB,CAAC,QAAQ,CAAC,EAChC,CAAC;oBACD,OAAO,CAAC,gBAAgB,CAAC;wBACvB,MAAM,EAAE,QAAQ;wBAChB,MAAM,EAAE;4BACN,YAAY,EAAE,QAAQ,CAAC,IAAI;yBAC5B;
|
|
1
|
+
{"version":3,"file":"secret-prop.js","sourceRoot":"","sources":["../../../src/rules/secret-prop.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,UAAU,EACV,yBAAyB,EACzB,UAAU,EACV,QAAQ,EACR,YAAY,EACZ,aAAa,GACd,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,CAAC,EAAE,MAAM,4BAA4B,CAAC;AAE/C,SAAS,qBAAqB,CAAC,QAAuB;IACpD,OAAO,CACL,QAAQ,CAAC,IAAI,KAAK,KAAK;QACvB,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,IAAI;QAChD,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,IAAI,KAAK,CAAC,CACtC,CAAC;AACJ,CAAC;AACD,MAAM,CAAC,MAAM,cAAc,GAAG,UAAU,CAAC;IACvC,IAAI,EAAE,aAAa;IACnB,WAAW,EAAE,kKAAkK;IAC/K,QAAQ,EAAE,SAAS;IACnB,GAAG,EAAE,gGAAgG;IACrG,QAAQ,EAAE;QACR,OAAO,EAAE,YAAY,CAAA,aAAa,cAAc,8HAA8H;KAC/K;IACD,MAAM,CAAC,OAAO;QACZ,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAAC;QACvE,OAAO;YACL,aAAa,EAAE,CAAC,QAAuB,EAAE,EAAE;gBACzC,IAAI,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;oBAC3E,OAAO;gBACT,CAAC;gBACD,MAAM,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBAC9B,IACE,4BAA4B,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAC3C,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC;oBACpC,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC;oBACzC,QAAQ,CAAC,IAAI,KAAK,EAAE,CAAC,OAAO,CAAC,MAAM;oBACnC,CAAC,qBAAqB,CAAC,QAAQ,CAAC,EAChC,CAAC;oBACD,OAAO,CAAC,gBAAgB,CAAC;wBACvB,MAAM,EAAE,QAAQ;wBAChB,MAAM,EAAE;4BACN,YAAY,EAAE,QAAQ,CAAC,IAAI;yBAC5B;wBACD,SAAS,EAAE,CAAC,yBAAyB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;qBAC3D,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,iBAAiB,GAAG;IACxB,QAAQ;IACR,YAAY;IACZ,QAAQ;IACR,UAAU;IACV,KAAK;IACL,OAAO;IACP,MAAM;IACN,YAAY;CACb,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;AAE1C,+CAA+C;AAC/C,MAAM,eAAe,GAAG,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;AAC9E,SAAS,4BAA4B,CAAC,YAAoB;IACxD,MAAM,SAAS,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC;IAC7C,OAAO,CACL,iBAAiB,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAChE,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAChE,CAAC;AACJ,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@azure-tools/typespec-azure-resource-manager",
|
|
3
|
-
"version": "0.62.0-dev.
|
|
3
|
+
"version": "0.62.0-dev.6",
|
|
4
4
|
"author": "Microsoft Corporation",
|
|
5
5
|
"description": "TypeSpec Azure Resource Manager library",
|
|
6
6
|
"homepage": "https://azure.github.io/typespec-azure",
|