eslint-plugin-obsidian 3.0.0-alpha.6 → 3.0.0-alpha.7
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/dto/class.d.ts +4 -1
- package/dist/dto/class.d.ts.map +1 -1
- package/dist/dto/class.js +10 -0
- package/dist/dto/class.js.map +1 -1
- package/dist/dto/classFile.d.ts +1 -0
- package/dist/dto/classFile.d.ts.map +1 -1
- package/dist/dto/classFile.js +3 -0
- package/dist/dto/classFile.js.map +1 -1
- package/dist/dto/file.d.ts +2 -0
- package/dist/dto/file.d.ts.map +1 -1
- package/dist/dto/file.js +13 -0
- package/dist/dto/file.js.map +1 -1
- package/dist/rules/unresolvedProviderDependencies/classResolver.d.ts +8 -0
- package/dist/rules/unresolvedProviderDependencies/classResolver.d.ts.map +1 -0
- package/dist/rules/unresolvedProviderDependencies/classResolver.js +15 -0
- package/dist/rules/unresolvedProviderDependencies/classResolver.js.map +1 -0
- package/dist/rules/unresolvedProviderDependencies/createRule.d.ts.map +1 -1
- package/dist/rules/unresolvedProviderDependencies/createRule.js +2 -1
- package/dist/rules/unresolvedProviderDependencies/createRule.js.map +1 -1
- package/dist/rules/unresolvedProviderDependencies/dependencyResolver.d.ts +4 -1
- package/dist/rules/unresolvedProviderDependencies/dependencyResolver.d.ts.map +1 -1
- package/dist/rules/unresolvedProviderDependencies/dependencyResolver.js +14 -5
- package/dist/rules/unresolvedProviderDependencies/dependencyResolver.js.map +1 -1
- package/dist/rules/unresolvedProviderDependencies/subgraphResolver.d.ts +4 -1
- package/dist/rules/unresolvedProviderDependencies/subgraphResolver.d.ts.map +1 -1
- package/dist/rules/unresolvedProviderDependencies/subgraphResolver.js +15 -2
- package/dist/rules/unresolvedProviderDependencies/subgraphResolver.js.map +1 -1
- package/dist/utils/filter.d.ts +2 -0
- package/dist/utils/filter.d.ts.map +1 -0
- package/dist/utils/filter.js +7 -0
- package/dist/utils/filter.js.map +1 -0
- package/package.json +3 -3
package/dist/dto/class.d.ts
CHANGED
|
@@ -4,12 +4,15 @@ import { Method } from './method';
|
|
|
4
4
|
export declare class Clazz {
|
|
5
5
|
node: TSESTree.ClassDeclaration;
|
|
6
6
|
constructor(node: TSESTree.ClassDeclaration);
|
|
7
|
+
get isAbstract(): boolean;
|
|
7
8
|
isDecoratedWithIgnoreCase(decoratorName: string): boolean;
|
|
8
9
|
get decoratorNames(): string[];
|
|
9
10
|
get decorators(): Decorator[];
|
|
11
|
+
get superClass(): string | null;
|
|
10
12
|
get body(): TSESTree.ClassElement[];
|
|
13
|
+
mapDecoratedMethods<T>(decoratorName: string, mapper: (method: Method) => T): T[];
|
|
11
14
|
getDecoratedMethods(decoratorName: string): Method[];
|
|
12
15
|
requireDecoratorIgnoreCase(name: string): Decorator;
|
|
13
|
-
|
|
16
|
+
get name(): string | undefined;
|
|
14
17
|
}
|
|
15
18
|
//# sourceMappingURL=class.d.ts.map
|
package/dist/dto/class.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"class.d.ts","sourceRoot":"","sources":["../../src/dto/class.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"class.d.ts","sourceRoot":"","sources":["../../src/dto/class.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAGlC,qBAAa,KAAK;IACG,IAAI,EAAE,QAAQ,CAAC,gBAAgB;gBAA/B,IAAI,EAAE,QAAQ,CAAC,gBAAgB;IAIlD,IAAI,UAAU,YAEb;IAEM,yBAAyB,CAAC,aAAa,EAAE,MAAM;IAItD,IAAI,cAAc,aAIjB;IAED,IAAI,UAAU,gBAIb;IAED,IAAI,UAAU,kBAEb;IAED,IAAI,IAAI,4BAEP;IAEM,mBAAmB,CAAC,CAAC,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,CAAC,GAAG,CAAC,EAAE;IAIjF,mBAAmB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,EAAE;IAOpD,0BAA0B,CAAC,IAAI,EAAE,MAAM;IAQ9C,IAAW,IAAI,uBAEd;CACF"}
|
package/dist/dto/class.js
CHANGED
|
@@ -5,12 +5,16 @@ const decorator_1 = require("./decorator");
|
|
|
5
5
|
const assertions_1 = require("../utils/assertions");
|
|
6
6
|
const ast_1 = require("../utils/ast");
|
|
7
7
|
const method_1 = require("./method");
|
|
8
|
+
const identifier_1 = require("./identifier");
|
|
8
9
|
class Clazz {
|
|
9
10
|
node;
|
|
10
11
|
constructor(node) {
|
|
11
12
|
this.node = node;
|
|
12
13
|
(0, assertions_1.assertDefined)(this.node);
|
|
13
14
|
}
|
|
15
|
+
get isAbstract() {
|
|
16
|
+
return this.node.abstract;
|
|
17
|
+
}
|
|
14
18
|
isDecoratedWithIgnoreCase(decoratorName) {
|
|
15
19
|
return this.decoratorNames.some(name => name.toLowerCase() === decoratorName.toLowerCase());
|
|
16
20
|
}
|
|
@@ -24,9 +28,15 @@ class Clazz {
|
|
|
24
28
|
return new decorator_1.Decorator(decorator);
|
|
25
29
|
});
|
|
26
30
|
}
|
|
31
|
+
get superClass() {
|
|
32
|
+
return this.node.superClass && new identifier_1.Identifier(this.node.superClass).name;
|
|
33
|
+
}
|
|
27
34
|
get body() {
|
|
28
35
|
return this.node.body.body;
|
|
29
36
|
}
|
|
37
|
+
mapDecoratedMethods(decoratorName, mapper) {
|
|
38
|
+
return this.getDecoratedMethods(decoratorName).map(mapper);
|
|
39
|
+
}
|
|
30
40
|
getDecoratedMethods(decoratorName) {
|
|
31
41
|
return this.body
|
|
32
42
|
.filter(ast_1.isMethodDefinition)
|
package/dist/dto/class.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"class.js","sourceRoot":"","sources":["../../src/dto/class.ts"],"names":[],"mappings":";;;AACA,2CAAwC;AACxC,oDAAoD;AACpD,sCAAkD;AAClD,qCAAkC;
|
|
1
|
+
{"version":3,"file":"class.js","sourceRoot":"","sources":["../../src/dto/class.ts"],"names":[],"mappings":";;;AACA,2CAAwC;AACxC,oDAAoD;AACpD,sCAAkD;AAClD,qCAAkC;AAClC,6CAA0C;AAE1C,MAAa,KAAK;IACG;IAAnB,YAAmB,IAA+B;QAA/B,SAAI,GAAJ,IAAI,CAA2B;QAChD,IAAA,0BAAa,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;IAC5B,CAAC;IAEM,yBAAyB,CAAC,aAAqB;QACpD,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,aAAa,CAAC,WAAW,EAAE,CAAC,CAAC;IAC9F,CAAC;IAED,IAAI,cAAc;QAChB,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,SAAoB,EAAE,EAAE;YAClD,OAAO,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC;QAC1C,CAAC,CAAC,IAAI,EAAE,CAAC;IACX,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,SAA6B,EAAE,EAAE;YACxE,OAAO,IAAI,qBAAS,CAAC,SAAS,CAAC,CAAC;QAClC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,uBAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC;IAC3E,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;IAC7B,CAAC;IAEM,mBAAmB,CAAI,aAAqB,EAAE,MAA6B;QAChF,OAAO,IAAI,CAAC,mBAAmB,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC7D,CAAC;IAEM,mBAAmB,CAAC,aAAqB;QAC9C,OAAO,IAAI,CAAC,IAAI;aACb,MAAM,CAAC,wBAAkB,CAAC;aAC1B,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,eAAM,CAAC,IAAI,CAAC,CAAC;aAC7B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,yBAAyB,CAAC,aAAa,CAAC,CAAC,CAAC;IACvE,CAAC;IAEM,0BAA0B,CAAC,IAAY;QAC5C,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,UAAqB,EAAE,EAAE;YAC/D,OAAO,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,WAAW,EAAE,CAAC;QAChF,CAAC,CAAC,CAAC;QACH,IAAA,0BAAa,EAAC,SAAS,EAAE,aAAa,IAAI,uBAAuB,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAC9E,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,IAAW,IAAI;QACb,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC;IAC5B,CAAC;CACF;AAvDD,sBAuDC"}
|
package/dist/dto/classFile.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"classFile.d.ts","sourceRoot":"","sources":["../../src/dto/classFile.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAEvC,qBAAa,SAAS;aAEF,KAAK,EAAE,KAAK;aACZ,OAAO,EAAE,MAAM,EAAE;aACjB,IAAI,EAAE,MAAM;gBAFZ,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,MAAM,EAAE,EACjB,IAAI,EAAE,MAAM;
|
|
1
|
+
{"version":3,"file":"classFile.d.ts","sourceRoot":"","sources":["../../src/dto/classFile.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAEvC,qBAAa,SAAS;aAEF,KAAK,EAAE,KAAK;aACZ,OAAO,EAAE,MAAM,EAAE;aACjB,IAAI,EAAE,MAAM;gBAFZ,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,MAAM,EAAE,EACjB,IAAI,EAAE,MAAM;IAG9B,IAAI,UAAU,kBAEb;CACF"}
|
package/dist/dto/classFile.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"classFile.js","sourceRoot":"","sources":["../../src/dto/classFile.ts"],"names":[],"mappings":";;;AAGA,MAAa,SAAS;IAEF;IACA;IACA;IAHlB,YACkB,KAAY,EACZ,OAAiB,EACjB,IAAY;QAFZ,UAAK,GAAL,KAAK,CAAO;QACZ,YAAO,GAAP,OAAO,CAAU;QACjB,SAAI,GAAJ,IAAI,CAAQ;IAC3B,CAAC;
|
|
1
|
+
{"version":3,"file":"classFile.js","sourceRoot":"","sources":["../../src/dto/classFile.ts"],"names":[],"mappings":";;;AAGA,MAAa,SAAS;IAEF;IACA;IACA;IAHlB,YACkB,KAAY,EACZ,OAAiB,EACjB,IAAY;QAFZ,UAAK,GAAL,KAAK,CAAO;QACZ,YAAO,GAAP,OAAO,CAAU;QACjB,SAAI,GAAJ,IAAI,CAAQ;IAC3B,CAAC;IAEJ,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;IAC/B,CAAC;CACF;AAVD,8BAUC"}
|
package/dist/dto/file.d.ts
CHANGED
|
@@ -13,6 +13,8 @@ export declare class File {
|
|
|
13
13
|
toClassWithImports(): ClassFile[];
|
|
14
14
|
get imports(): Import[];
|
|
15
15
|
get graphs(): Clazz[];
|
|
16
|
+
findClass(byName: string): ClassFile | undefined;
|
|
17
|
+
private get classes();
|
|
16
18
|
get variables(): Variable[];
|
|
17
19
|
}
|
|
18
20
|
//# sourceMappingURL=file.d.ts.map
|
package/dist/dto/file.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../src/dto/file.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAOhC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,qBAAa,IAAI;IAEH,OAAO,CAAC,OAAO;IAAoB,OAAO,CAAC,IAAI;gBAD/C,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,MAAM;IAG7C,YAAY,CAAC,IAAI,EAAE,MAAM;IAQhC,OAAO,KAAK,UAAU,GAIrB;IAED,OAAO,KAAK,IAAI,GAEf;IAEM,kBAAkB;IAMzB,IAAI,OAAO,aAIV;IAED,IAAI,MAAM,IASA,KAAK,EAAE,CAChB;IAED,IAAI,SAAS,eAMZ;CACF"}
|
|
1
|
+
{"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../src/dto/file.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAOhC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,qBAAa,IAAI;IAEH,OAAO,CAAC,OAAO;IAAoB,OAAO,CAAC,IAAI;gBAD/C,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,MAAM;IAG7C,YAAY,CAAC,IAAI,EAAE,MAAM;IAQhC,OAAO,KAAK,UAAU,GAIrB;IAED,OAAO,KAAK,IAAI,GAEf;IAEM,kBAAkB;IAMzB,IAAI,OAAO,aAIV;IAED,IAAI,MAAM,IASA,KAAK,EAAE,CAChB;IAED,SAAS,CAAC,MAAM,EAAE,MAAM;IAKxB,OAAO,KAAK,OAAO,GAQlB;IAED,IAAI,SAAS,eAMZ;CACF"}
|
package/dist/dto/file.js
CHANGED
|
@@ -50,6 +50,19 @@ class File {
|
|
|
50
50
|
return clazz ? clazz.isDecoratedWithIgnoreCase('Graph') : false;
|
|
51
51
|
});
|
|
52
52
|
}
|
|
53
|
+
findClass(byName) {
|
|
54
|
+
const clazz = this.classes.find($clazz => $clazz.name === byName);
|
|
55
|
+
return clazz && new classFile_1.ClassFile(clazz, this.imports, this.path);
|
|
56
|
+
}
|
|
57
|
+
get classes() {
|
|
58
|
+
return this.body
|
|
59
|
+
.filter(ast_1.isClassLike)
|
|
60
|
+
.map((node) => {
|
|
61
|
+
const clazz = (0, ast_1.getClassDeclaration)(node);
|
|
62
|
+
return clazz && new class_1.Clazz(clazz);
|
|
63
|
+
})
|
|
64
|
+
.filter(Boolean);
|
|
65
|
+
}
|
|
53
66
|
get variables() {
|
|
54
67
|
return this.body
|
|
55
68
|
.filter(ast_1.isVariableDeclaration)
|
package/dist/dto/file.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file.js","sourceRoot":"","sources":["../../src/dto/file.ts"],"names":[],"mappings":";;;AACA,mCAAgC;AAChC,sCAKsB;AACtB,qCAAkC;AAClC,2CAAwC;AACxC,oDAAoD;AACpD,yCAAsC;AAEtC,MAAa,IAAI;IAEK;IAAmC;IAAvD,YAAoB,OAAyB,EAAU,IAAY;QAA/C,YAAO,GAAP,OAAO,CAAkB;QAAU,SAAI,GAAJ,IAAI,CAAQ;IAAI,CAAC;IAEjE,YAAY,CAAC,IAAY;QAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;YAC1C,OAAO,IAAI,EAAE,EAAE,EAAE,IAAI,KAAK,IAAI,CAAC;QACjC,CAAC,CAAC,CAAC;QACH,IAAA,0BAAa,EAAC,KAAK,EAAE,SAAS,IAAI,oBAAoB,CAAC,CAAC;QACxD,OAAO,IAAI,aAAK,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC;IAED,IAAY,UAAU;QACpB,OAAO,IAAI,CAAC,IAAI;aACb,MAAM,CAAC,iBAAW,CAAC;aACnB,GAAG,CAAC,yBAAmB,CAAC,CAAC;IAC9B,CAAC;IAED,IAAY,IAAI;QACd,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;IAC3B,CAAC;IAEM,kBAAkB;QACvB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YAC/B,OAAO,IAAI,qBAAS,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QACvD,CAAC,CAAC,CAAC;IACL,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,IAAI;aACb,MAAM,CAAC,yBAAmB,CAAC;aAC3B,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,eAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IACnC,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,IAAI;aACb,MAAM,CAAC,iBAAW,CAAC;aACnB,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YACZ,MAAM,KAAK,GAAG,IAAA,yBAAmB,EAAC,IAAI,CAAC,CAAC;YACxC,OAAO,KAAK,IAAI,IAAI,aAAK,CAAC,KAAK,CAAC,CAAC;QACnC,CAAC,CAAC;aACD,MAAM,CAAC,CAAC,KAAwB,EAAE,EAAE;YACnC,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,yBAAyB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QAClE,CAAC,CAAY,CAAC;IAClB,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,IAAI;aACb,MAAM,CAAC,2BAAqB,CAAC;aAC7B,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC;aAC9B,IAAI,EAAE;aACN,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,mBAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;IACrC,CAAC;CACF;
|
|
1
|
+
{"version":3,"file":"file.js","sourceRoot":"","sources":["../../src/dto/file.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { ClassFile } from '../../dto/classFile';
|
|
2
|
+
import type { FileReader } from '../../framework/fileReader';
|
|
3
|
+
export declare class ClassResolver {
|
|
4
|
+
private fileReader;
|
|
5
|
+
constructor(fileReader: FileReader);
|
|
6
|
+
resolve(clazz: string, from: ClassFile): ClassFile | undefined;
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=classResolver.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"classResolver.d.ts","sourceRoot":"","sources":["../../../src/rules/unresolvedProviderDependencies/classResolver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAE7D,qBAAa,aAAa;IACZ,OAAO,CAAC,UAAU;gBAAV,UAAU,EAAE,UAAU;IAEnC,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS;CAI9C"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ClassResolver = void 0;
|
|
4
|
+
class ClassResolver {
|
|
5
|
+
fileReader;
|
|
6
|
+
constructor(fileReader) {
|
|
7
|
+
this.fileReader = fileReader;
|
|
8
|
+
}
|
|
9
|
+
resolve(clazz, from) {
|
|
10
|
+
const classPath = from.imports.find($import => $import.includes(clazz));
|
|
11
|
+
return classPath && this.fileReader.read(from.path, classPath.path).findClass(clazz);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
exports.ClassResolver = ClassResolver;
|
|
15
|
+
//# sourceMappingURL=classResolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"classResolver.js","sourceRoot":"","sources":["../../../src/rules/unresolvedProviderDependencies/classResolver.ts"],"names":[],"mappings":";;;AAGA,MAAa,aAAa;IACJ;IAApB,YAAoB,UAAsB;QAAtB,eAAU,GAAV,UAAU,CAAY;IAAI,CAAC;IAExC,OAAO,CAAC,KAAa,EAAE,IAAe;QAC3C,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;QACxE,OAAO,SAAS,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IACvF,CAAC;CACF;AAPD,sCAOC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createRule.d.ts","sourceRoot":"","sources":["../../../src/rules/unresolvedProviderDependencies/createRule.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAEzD,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"createRule.d.ts","sourceRoot":"","sources":["../../../src/rules/unresolvedProviderDependencies/createRule.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAEzD,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAMxD,wBAAgB,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU;4BASnC,QAAQ,CAAC,iBAAiB;2BAG3B,QAAQ,CAAC,gBAAgB;EAInD"}
|
|
@@ -6,9 +6,10 @@ const graphHandler_1 = require("./graphHandler");
|
|
|
6
6
|
const dependencyResolver_1 = require("./dependencyResolver");
|
|
7
7
|
const import_1 = require("../../dto/import");
|
|
8
8
|
const subgraphResolver_1 = require("./subgraphResolver");
|
|
9
|
+
const classResolver_1 = require("./classResolver");
|
|
9
10
|
function create(context, fileReader) {
|
|
10
11
|
const imports = [];
|
|
11
|
-
const dependencyResolver = new dependencyResolver_1.DependencyResolver(new subgraphResolver_1.SubgraphResolver(fileReader));
|
|
12
|
+
const dependencyResolver = new dependencyResolver_1.DependencyResolver(new subgraphResolver_1.SubgraphResolver(fileReader, new classResolver_1.ClassResolver(fileReader)), new classResolver_1.ClassResolver(fileReader));
|
|
12
13
|
const graphHandler = new graphHandler_1.GraphHandler(context, dependencyResolver);
|
|
13
14
|
return {
|
|
14
15
|
ImportDeclaration(node) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createRule.js","sourceRoot":"","sources":["../../../src/rules/unresolvedProviderDependencies/createRule.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"createRule.js","sourceRoot":"","sources":["../../../src/rules/unresolvedProviderDependencies/createRule.ts"],"names":[],"mappings":";;AAUA,wBAgBC;AAzBD,2CAAwC;AAExC,iDAA8C;AAE9C,6DAA0D;AAC1D,6CAA0C;AAC1C,yDAAsD;AACtD,mDAAgD;AAEhD,SAAgB,MAAM,CAAC,OAAgB,EAAE,UAAsB;IAC7D,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,kBAAkB,GAAG,IAAI,uCAAkB,CAC/C,IAAI,mCAAgB,CAAC,UAAU,EAAE,IAAI,6BAAa,CAAC,UAAU,CAAC,CAAC,EAC/D,IAAI,6BAAa,CAAC,UAAU,CAAC,CAC9B,CAAC;IACF,MAAM,YAAY,GAAG,IAAI,2BAAY,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;IAEnE,OAAO;QACL,iBAAiB,CAAC,IAAgC;YAChD,OAAO,CAAC,IAAI,CAAC,IAAI,eAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QACjC,CAAC;QACD,gBAAgB,CAAC,IAA+B;YAC9C,YAAY,CAAC,MAAM,CAAC,IAAI,aAAK,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;QAChD,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -2,11 +2,14 @@ import type { Import } from '../../dto/import';
|
|
|
2
2
|
import type { Clazz } from '../../dto/class';
|
|
3
3
|
import type { SubgraphResolver } from './subgraphResolver';
|
|
4
4
|
import type { Context } from '../../dto/context';
|
|
5
|
+
import type { ClassResolver } from './classResolver';
|
|
5
6
|
export declare class DependencyResolver {
|
|
6
7
|
private subgraphResolver;
|
|
7
|
-
|
|
8
|
+
private classResolver;
|
|
9
|
+
constructor(subgraphResolver: SubgraphResolver, classResolver: ClassResolver);
|
|
8
10
|
resolve(context: Context, clazz: Clazz, imports: Import[]): string[];
|
|
9
11
|
private getDependenciesFromSubgraphs;
|
|
10
12
|
private getGraphDependencies;
|
|
13
|
+
private getDependenciesFromSuperClass;
|
|
11
14
|
}
|
|
12
15
|
//# sourceMappingURL=dependencyResolver.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dependencyResolver.d.ts","sourceRoot":"","sources":["../../../src/rules/unresolvedProviderDependencies/dependencyResolver.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"dependencyResolver.d.ts","sourceRoot":"","sources":["../../../src/rules/unresolvedProviderDependencies/dependencyResolver.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErD,qBAAa,kBAAkB;IAE3B,OAAO,CAAC,gBAAgB;IACxB,OAAO,CAAC,aAAa;gBADb,gBAAgB,EAAE,gBAAgB,EAClC,aAAa,EAAE,aAAa;IAG/B,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE;IAShE,OAAO,CAAC,4BAA4B;IAMpC,OAAO,CAAC,oBAAoB;IAI5B,OAAO,CAAC,6BAA6B;CAOtC"}
|
|
@@ -4,25 +4,34 @@ exports.DependencyResolver = void 0;
|
|
|
4
4
|
const classFile_1 = require("../../dto/classFile");
|
|
5
5
|
class DependencyResolver {
|
|
6
6
|
subgraphResolver;
|
|
7
|
-
|
|
7
|
+
classResolver;
|
|
8
|
+
constructor(subgraphResolver, classResolver) {
|
|
8
9
|
this.subgraphResolver = subgraphResolver;
|
|
10
|
+
this.classResolver = classResolver;
|
|
9
11
|
}
|
|
10
12
|
resolve(context, clazz, imports) {
|
|
11
13
|
const classWithImports = new classFile_1.ClassFile(clazz, imports, context.currentFilePath);
|
|
12
14
|
return [
|
|
13
15
|
...this.getGraphDependencies(classWithImports),
|
|
14
16
|
...this.getDependenciesFromSubgraphs(classWithImports),
|
|
17
|
+
...this.getDependenciesFromSuperClass(classWithImports),
|
|
15
18
|
];
|
|
16
19
|
}
|
|
17
20
|
getDependenciesFromSubgraphs(clazz) {
|
|
18
21
|
return this.subgraphResolver
|
|
19
22
|
.resolve(clazz)
|
|
20
|
-
.flatMap(this.getGraphDependencies);
|
|
23
|
+
.flatMap($clazz => this.getGraphDependencies($clazz));
|
|
21
24
|
}
|
|
22
25
|
getGraphDependencies({ clazz }) {
|
|
23
|
-
return clazz
|
|
24
|
-
|
|
25
|
-
|
|
26
|
+
return clazz.mapDecoratedMethods('Provides', method => method.name) ?? [];
|
|
27
|
+
}
|
|
28
|
+
getDependenciesFromSuperClass(clazz) {
|
|
29
|
+
if (!clazz.superClass || clazz.superClass === 'ObjectGraph')
|
|
30
|
+
return [];
|
|
31
|
+
return this.classResolver
|
|
32
|
+
.resolve(clazz.superClass, clazz)
|
|
33
|
+
?.clazz
|
|
34
|
+
?.mapDecoratedMethods('Provides', method => method.name) ?? [];
|
|
26
35
|
}
|
|
27
36
|
}
|
|
28
37
|
exports.DependencyResolver = DependencyResolver;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dependencyResolver.js","sourceRoot":"","sources":["../../../src/rules/unresolvedProviderDependencies/dependencyResolver.ts"],"names":[],"mappings":";;;AAAA,mDAAgD;
|
|
1
|
+
{"version":3,"file":"dependencyResolver.js","sourceRoot":"","sources":["../../../src/rules/unresolvedProviderDependencies/dependencyResolver.ts"],"names":[],"mappings":";;;AAAA,mDAAgD;AAOhD,MAAa,kBAAkB;IAEnB;IACA;IAFV,YACU,gBAAkC,EAClC,aAA4B;QAD5B,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,kBAAa,GAAb,aAAa,CAAe;IAClC,CAAC;IAEE,OAAO,CAAC,OAAgB,EAAE,KAAY,EAAE,OAAiB;QAC9D,MAAM,gBAAgB,GAAG,IAAI,qBAAS,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;QAChF,OAAO;YACL,GAAG,IAAI,CAAC,oBAAoB,CAAC,gBAAgB,CAAC;YAC9C,GAAG,IAAI,CAAC,4BAA4B,CAAC,gBAAgB,CAAC;YACtD,GAAG,IAAI,CAAC,6BAA6B,CAAC,gBAAgB,CAAC;SACxD,CAAC;IACJ,CAAC;IAEO,4BAA4B,CAAC,KAAgB;QACnD,OAAO,IAAI,CAAC,gBAAgB;aACzB,OAAO,CAAC,KAAK,CAAC;aACd,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC;IAC1D,CAAC;IAEO,oBAAoB,CAAC,EAAE,KAAK,EAAa;QAC/C,OAAO,KAAK,CAAC,mBAAmB,CAAC,UAAU,EAAE,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IAC5E,CAAC;IAEO,6BAA6B,CAAC,KAAgB;QACpD,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,UAAU,KAAK,aAAa;YAAE,OAAO,EAAE,CAAC;QACvE,OAAO,IAAI,CAAC,aAAa;aACtB,OAAO,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC;YACjC,EAAE,KAAK;YACP,EAAE,mBAAmB,CAAC,UAAU,EAAE,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IACnE,CAAC;CACF;AAhCD,gDAgCC"}
|
|
@@ -1,12 +1,15 @@
|
|
|
1
1
|
import { ClassFile } from '../../dto/classFile';
|
|
2
2
|
import type { FileReader } from '../../framework/fileReader';
|
|
3
|
+
import { ClassResolver } from './classResolver';
|
|
3
4
|
export declare class SubgraphResolver {
|
|
4
5
|
private fileReader;
|
|
5
|
-
|
|
6
|
+
private classResolver;
|
|
7
|
+
constructor(fileReader: FileReader, classResolver: ClassResolver);
|
|
6
8
|
resolve(clazz: ClassFile): ClassFile[];
|
|
7
9
|
private getImportedGraphs;
|
|
8
10
|
private getImportedSubgraphClasses;
|
|
9
11
|
private getLocalGraphs;
|
|
12
|
+
private getExtendedGraphs;
|
|
10
13
|
private getSubgraphsPropertyFromGraphDecorator;
|
|
11
14
|
private getLocalSubgraphClasses;
|
|
12
15
|
private createLocalGraphClasses;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subgraphResolver.d.ts","sourceRoot":"","sources":["../../../src/rules/unresolvedProviderDependencies/subgraphResolver.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAGhD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"subgraphResolver.d.ts","sourceRoot":"","sources":["../../../src/rules/unresolvedProviderDependencies/subgraphResolver.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAGhD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD,qBAAa,gBAAgB;IACf,OAAO,CAAC,UAAU;IAAc,OAAO,CAAC,aAAa;gBAA7C,UAAU,EAAE,UAAU,EAAU,aAAa,EAAE,aAAa;IAEzE,OAAO,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS,EAAE;IAU7C,OAAO,CAAC,iBAAiB;IAKzB,OAAO,CAAC,0BAA0B;IAclC,OAAO,CAAC,cAAc;IAKtB,OAAO,CAAC,iBAAiB;IAKzB,OAAO,CAAC,sCAAsC;IAM9C,OAAO,CAAC,uBAAuB;IAO/B,OAAO,CAAC,uBAAuB;IAQ/B,OAAO,CAAC,qCAAqC;IAO7C,OAAO,CAAC,kBAAkB;CAO3B"}
|
|
@@ -4,16 +4,22 @@ exports.SubgraphResolver = void 0;
|
|
|
4
4
|
const ast_1 = require("../../utils/ast");
|
|
5
5
|
const classFile_1 = require("../../dto/classFile");
|
|
6
6
|
const file_1 = require("../../dto/file");
|
|
7
|
+
const filter_1 = require("../../utils/filter");
|
|
7
8
|
class SubgraphResolver {
|
|
8
9
|
fileReader;
|
|
9
|
-
|
|
10
|
+
classResolver;
|
|
11
|
+
constructor(fileReader, classResolver) {
|
|
10
12
|
this.fileReader = fileReader;
|
|
13
|
+
this.classResolver = classResolver;
|
|
11
14
|
}
|
|
12
15
|
resolve(clazz) {
|
|
13
16
|
return [
|
|
14
17
|
...this.getImportedGraphs(clazz),
|
|
15
18
|
...this.getLocalGraphs(clazz),
|
|
16
|
-
|
|
19
|
+
...this.getExtendedGraphs(clazz),
|
|
20
|
+
]
|
|
21
|
+
.filter(filter_1.nonNull)
|
|
22
|
+
.flatMap(g => [g, ...this.resolve(g)]);
|
|
17
23
|
}
|
|
18
24
|
getImportedGraphs(clazz) {
|
|
19
25
|
const subgraphs = this.getSubgraphsPropertyFromGraphDecorator(clazz);
|
|
@@ -37,7 +43,14 @@ class SubgraphResolver {
|
|
|
37
43
|
const subgraphs = this.getSubgraphsPropertyFromGraphDecorator(clazz);
|
|
38
44
|
return this.getLocalSubgraphClasses(subgraphs, clazz);
|
|
39
45
|
}
|
|
46
|
+
getExtendedGraphs(clazz) {
|
|
47
|
+
if (!clazz.superClass || clazz.superClass === 'ObjectGraph')
|
|
48
|
+
return [];
|
|
49
|
+
return [this.classResolver.resolve(clazz.superClass, clazz)];
|
|
50
|
+
}
|
|
40
51
|
getSubgraphsPropertyFromGraphDecorator({ clazz }) {
|
|
52
|
+
if (clazz.isAbstract)
|
|
53
|
+
return undefined;
|
|
41
54
|
const graphDecorator = clazz.requireDecoratorIgnoreCase('Graph');
|
|
42
55
|
return graphDecorator.getProperty('subgraphs');
|
|
43
56
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subgraphResolver.js","sourceRoot":"","sources":["../../../src/rules/unresolvedProviderDependencies/subgraphResolver.ts"],"names":[],"mappings":";;;AACA,yCAAqE;AACrE,mDAAgD;AAEhD,yCAAsC;AAGtC,MAAa,gBAAgB;IACP;
|
|
1
|
+
{"version":3,"file":"subgraphResolver.js","sourceRoot":"","sources":["../../../src/rules/unresolvedProviderDependencies/subgraphResolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"filter.d.ts","sourceRoot":"","sources":["../../src/utils/filter.ts"],"names":[],"mappings":"AAAA,wBAAgB,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,KAAK,IAAI,WAAW,CAAC,OAAO,KAAK,CAAC,CAEvE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"filter.js","sourceRoot":"","sources":["../../src/utils/filter.ts"],"names":[],"mappings":";;AAAA,0BAEC;AAFD,SAAgB,OAAO,CAAI,KAAQ;IACjC,OAAO,KAAK,KAAK,SAAS,CAAC;AAC7B,CAAC"}
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "eslint-plugin-obsidian",
|
|
3
3
|
"description": "ESLint rules for Obsidian",
|
|
4
4
|
"main": "dist/index.js",
|
|
5
|
-
"version": "3.0.0-alpha.
|
|
5
|
+
"version": "3.0.0-alpha.7",
|
|
6
6
|
"scripts": {
|
|
7
7
|
"build": "npx tsc --project tsconfig.prod.json",
|
|
8
8
|
"test": "npx jest",
|
|
@@ -37,11 +37,11 @@
|
|
|
37
37
|
"@types/eslint": "^9.6.1",
|
|
38
38
|
"@types/node": "20.16.x",
|
|
39
39
|
"@typescript-eslint/eslint-plugin": "^8.4.0",
|
|
40
|
-
"@typescript-eslint/parser": "8.4.0",
|
|
40
|
+
"@typescript-eslint/parser": "^8.4.0",
|
|
41
41
|
"@typescript-eslint/rule-tester": "^8.4.0",
|
|
42
42
|
"@typescript-eslint/types": "^8.4.0",
|
|
43
43
|
"@typescript-eslint/typescript-estree": "^8.4.0",
|
|
44
|
-
"@typescript-eslint/utils": "8.4.0",
|
|
44
|
+
"@typescript-eslint/utils": "^8.4.0",
|
|
45
45
|
"cross-env": "^7.0.3",
|
|
46
46
|
"eslint": "^9.9.1",
|
|
47
47
|
"eslint-plugin-jest": "^28.8.3",
|