@azure-tools/typespec-azure-core 0.62.0-dev.1 → 0.62.0-dev.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/rules/require-versioned.d.ts.map +1 -1
- package/dist/src/rules/require-versioned.js +4 -12
- package/dist/src/rules/require-versioned.js.map +1 -1
- package/dist/src/rules/utils.d.ts +1 -5
- package/dist/src/rules/utils.d.ts.map +1 -1
- package/dist/src/rules/utils.js +0 -15
- package/dist/src/rules/utils.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"require-versioned.d.ts","sourceRoot":"","sources":["../../../src/rules/require-versioned.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"require-versioned.d.ts","sourceRoot":"","sources":["../../../src/rules/require-versioned.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,oBAAoB;;EAwB/B,CAAC"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { createAddDecoratorCodeFix, createRule, listServices, paramMessage, } from "@typespec/compiler";
|
|
2
2
|
import { getVersion } from "@typespec/versioning";
|
|
3
|
-
import { findLineStartAndIndent } from "./utils.js";
|
|
4
3
|
export const requireVersionedRule = createRule({
|
|
5
4
|
name: "require-versioned",
|
|
6
5
|
description: "Azure services should use the versioning library.",
|
|
@@ -27,15 +26,8 @@ export const requireVersionedRule = createRule({
|
|
|
27
26
|
},
|
|
28
27
|
});
|
|
29
28
|
function createAddVersionedCodeFix(namespace) {
|
|
30
|
-
return
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
fix(context) {
|
|
34
|
-
const location = getSourceLocation(namespace);
|
|
35
|
-
const { lineStart, indent } = findLineStartAndIndent(location);
|
|
36
|
-
const updatedLocation = { ...location, pos: lineStart };
|
|
37
|
-
return context.prependText(updatedLocation, `${indent}@versioned(Versions /* create an enum called Versions with your service version */)\n`);
|
|
38
|
-
},
|
|
39
|
-
};
|
|
29
|
+
return createAddDecoratorCodeFix(namespace, "versioned", [
|
|
30
|
+
"Versions /* create an enum called Versions with your service version */",
|
|
31
|
+
]);
|
|
40
32
|
}
|
|
41
33
|
//# sourceMappingURL=require-versioned.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"require-versioned.js","sourceRoot":"","sources":["../../../src/rules/require-versioned.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"require-versioned.js","sourceRoot":"","sources":["../../../src/rules/require-versioned.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,yBAAyB,EACzB,UAAU,EACV,YAAY,EAEZ,YAAY,GACb,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,MAAM,CAAC,MAAM,oBAAoB,GAAG,UAAU,CAAC;IAC7C,IAAI,EAAE,mBAAmB;IACzB,WAAW,EAAE,mDAAmD;IAChE,QAAQ,EAAE,SAAS;IACnB,GAAG,EAAE,0FAA0F;IAC/F,QAAQ,EAAE;QACR,OAAO,EAAE,YAAY,CAAA,kJAAkJ;KACxK;IACD,MAAM,CAAC,OAAO;QACZ,OAAO;YACL,IAAI,EAAE,CAAC,OAAO,EAAE,EAAE;gBAChB,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;gBACvC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;oBAC/B,IAAI,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;wBACpD,OAAO,CAAC,gBAAgB,CAAC;4BACvB,MAAM,EAAE,EAAE,WAAW,EAAE,OAAO,CAAC,IAAI,EAAE;4BACrC,MAAM,EAAE,OAAO,CAAC,IAAI;4BACpB,SAAS,EAAE,CAAC,yBAAyB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;yBACrD,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,SAAS,yBAAyB,CAAC,SAAoB;IACrD,OAAO,yBAAyB,CAAC,SAAS,EAAE,WAAW,EAAE;QACvD,yEAAyE;KAC1E,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CallableMessage, DecoratedType, DiagnosticTarget, Enum, EnumMember, Interface, LinterRuleContext, Model, ModelProperty, Namespace, Operation, Program, Scalar,
|
|
1
|
+
import { CallableMessage, DecoratedType, DiagnosticTarget, Enum, EnumMember, Interface, LinterRuleContext, Model, ModelProperty, Namespace, Operation, Program, Scalar, Type, Union, UnionVariant } from "@typespec/compiler";
|
|
2
2
|
type DeclarableType = Namespace | Model | ModelProperty | Enum | EnumMember | Union | UnionVariant | Scalar | Operation | Interface;
|
|
3
3
|
/**
|
|
4
4
|
* Returns the full namespace name for the given type, if available.
|
|
@@ -52,10 +52,6 @@ export declare function isPascalCaseWithAcceptedAcronyms(name: string, acceptedA
|
|
|
52
52
|
* @returns true if the name is in camelCase
|
|
53
53
|
*/
|
|
54
54
|
export declare function isCamelCaseNoAcronyms(name: string): boolean;
|
|
55
|
-
export declare function findLineStartAndIndent(location: SourceLocation): {
|
|
56
|
-
lineStart: number;
|
|
57
|
-
indent: string;
|
|
58
|
-
};
|
|
59
55
|
export declare function checkReferenceInDisallowedNamespace(context: LinterRuleContext<{
|
|
60
56
|
readonly default: CallableMessage<["ns"]>;
|
|
61
57
|
}>, origin: Type, type: Type, target: DiagnosticTarget, disallowedNamespace: "Private" | "Legacy"): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/rules/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,aAAa,EACb,gBAAgB,EAChB,IAAI,EACJ,UAAU,EAIV,SAAS,EAET,iBAAiB,EACjB,KAAK,EACL,aAAa,EACb,SAAS,EACT,SAAS,EACT,OAAO,EACP,MAAM,EACN,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/rules/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,aAAa,EACb,gBAAgB,EAChB,IAAI,EACJ,UAAU,EAIV,SAAS,EAET,iBAAiB,EACjB,KAAK,EACL,aAAa,EACb,SAAS,EACT,SAAS,EACT,OAAO,EACP,MAAM,EACN,IAAI,EACJ,KAAK,EACL,YAAY,EACb,MAAM,oBAAoB,CAAC;AAG5B,KAAK,cAAc,GACf,SAAS,GACT,KAAK,GACL,aAAa,GACb,IAAI,GACJ,UAAU,GACV,KAAK,GACL,YAAY,GACZ,MAAM,GACN,SAAS,GACT,SAAS,CAAC;AAEd;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,cAAc,GAAG,SAAS,GAAG,MAAM,CAU3F;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,cAAc,GAAG,OAAO,CAclF;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,SAAS,GAAG,SAAS,GAAG,OAAO,CAIxF;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,KAAK,WAE1C;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,KAAK,kBAEtD;AAED;;;;GAIG;AACH,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,SAAS,uBAM9D;AAED;;;;GAIG;AACH,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,SAAS,WAE9D;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAG5D;AAED,wBAAgB,gCAAgC,CAC9C,IAAI,EAAE,MAAM,EACZ,gBAAgB,EAAE,MAAM,EAAE,GACzB,OAAO,CAST;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAG3D;AAED,wBAAgB,mCAAmC,CACjD,OAAO,EAAE,iBAAiB,CAAC;IAAE,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;CAAE,CAAC,EACzE,MAAM,EAAE,IAAI,EACZ,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,gBAAgB,EACxB,mBAAmB,EAAE,SAAS,GAAG,QAAQ,QAc1C;AAED,wBAAgB,oCAAoC,CAClD,OAAO,EAAE,iBAAiB,CAAC;IAAE,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;CAAE,CAAC,EACzE,IAAI,EAAE,IAAI,GAAG,aAAa,EAC1B,mBAAmB,EAAE,SAAS,GAAG,QAAQ,QAiB1C"}
|
package/dist/src/rules/utils.js
CHANGED
|
@@ -110,21 +110,6 @@ export function isCamelCaseNoAcronyms(name) {
|
|
|
110
110
|
return true;
|
|
111
111
|
return /^[^a-zA-Z0-9]?[a-z][a-z0-9]*([A-Z][a-z0-9]+)*[A-Z]?$/.test(name);
|
|
112
112
|
}
|
|
113
|
-
export function findLineStartAndIndent(location) {
|
|
114
|
-
const text = location.file.text;
|
|
115
|
-
let pos = location.pos;
|
|
116
|
-
let indent = 0;
|
|
117
|
-
while (pos > 0 && text[pos - 1] !== "\n") {
|
|
118
|
-
if ([" ", "\t", "\n"].includes(text[pos - 1])) {
|
|
119
|
-
indent++;
|
|
120
|
-
}
|
|
121
|
-
else {
|
|
122
|
-
indent = 0;
|
|
123
|
-
}
|
|
124
|
-
pos--;
|
|
125
|
-
}
|
|
126
|
-
return { lineStart: pos, indent: location.file.text.slice(pos, pos + indent) };
|
|
127
|
-
}
|
|
128
113
|
export function checkReferenceInDisallowedNamespace(context, origin, type, target, disallowedNamespace) {
|
|
129
114
|
if (getLocationContext(context.program, origin).type !== "project") {
|
|
130
115
|
return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/rules/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,kBAAkB,EAClB,oBAAoB,EACpB,WAAW,EAEX,qBAAqB,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/rules/utils.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED