eslint-plugin-obsidian 2.12.1 → 2.13.1
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 +2 -0
- package/dist/dto/class.d.ts.map +1 -1
- package/dist/dto/class.js +6 -0
- package/dist/dto/class.js.map +1 -1
- package/dist/rules/unresolvedProviderDependencies/createRule.js +1 -1
- package/dist/rules/unresolvedProviderDependencies/createRule.js.map +1 -1
- package/dist/rules/unresolvedProviderDependencies/dependencyResolver.d.ts.map +1 -1
- package/dist/rules/unresolvedProviderDependencies/dependencyResolver.js +5 -6
- 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 +14 -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 +8 -0
- package/dist/utils/filter.js.map +1 -0
- package/package.json +1 -1
package/dist/dto/class.d.ts
CHANGED
|
@@ -4,10 +4,12 @@ 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
|
get decoratorNames(): string[];
|
|
8
9
|
get decorators(): Decorator[];
|
|
9
10
|
get superClass(): string | null;
|
|
10
11
|
get body(): TSESTree.ClassElement[];
|
|
12
|
+
mapDecoratedMethods<T>(decoratorName: string, mapper: (method: Method) => T): T[];
|
|
11
13
|
getDecoratedMethods(decoratorName: string): Method[];
|
|
12
14
|
requireDecorator(name: string): Decorator;
|
|
13
15
|
get name(): string | undefined;
|
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;AAGlC,qBAAa,KAAK;IACG,IAAI,EAAE,QAAQ,CAAC,gBAAgB;gBAA/B,IAAI,EAAE,QAAQ,CAAC,gBAAgB;IAIlD,IAAI,cAAc,aAIjB;IAED,IAAI,UAAU,gBAIb;IAED,IAAI,UAAU,kBAEb;IAED,IAAI,IAAI,4BAEP;IAEM,mBAAmB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,EAAE;IAOpD,gBAAgB,CAAC,IAAI,EAAE,MAAM;IAQpC,IAAW,IAAI,uBAEd;CACF"}
|
|
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;IAED,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,gBAAgB,CAAC,IAAI,EAAE,MAAM;IAQpC,IAAW,IAAI,uBAEd;CACF"}
|
package/dist/dto/class.js
CHANGED
|
@@ -11,6 +11,9 @@ class Clazz {
|
|
|
11
11
|
this.node = node;
|
|
12
12
|
(0, assertions_1.assertDefined)(this.node);
|
|
13
13
|
}
|
|
14
|
+
get isAbstract() {
|
|
15
|
+
return this.node.abstract;
|
|
16
|
+
}
|
|
14
17
|
get decoratorNames() {
|
|
15
18
|
return this.decorators.map((decorator) => {
|
|
16
19
|
return decorator.expression.callee.name;
|
|
@@ -28,6 +31,9 @@ class Clazz {
|
|
|
28
31
|
get body() {
|
|
29
32
|
return this.node.body.body;
|
|
30
33
|
}
|
|
34
|
+
mapDecoratedMethods(decoratorName, mapper) {
|
|
35
|
+
return this.getDecoratedMethods(decoratorName).map(mapper);
|
|
36
|
+
}
|
|
31
37
|
getDecoratedMethods(decoratorName) {
|
|
32
38
|
return this.body
|
|
33
39
|
.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;AAClC,6CAA0C;AAE1C,MAAa,KAAK;IAChB,YAAmB,IAA+B;QAA/B,SAAI,GAAJ,IAAI,CAA2B;QAChD,IAAA,0BAAa,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3B,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,MAAA,IAAI,CAAC,IAAI,CAAC,UAAU,mCAAI,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,CAAC,aAAqB;QAC9C,OAAO,IAAI,CAAC,IAAI;aACb,MAAM,CAAC,wBAAkB,CAAC;aAC1B,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,eAAM,CAAC,IAAI,CAAC,CAAC;aAC/B,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC,CAAC;IAC/D,CAAC;IAEM,gBAAgB,CAAC,IAAY;QAClC,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,UAAqB,EAAE,EAAE;YAC/D,OAAO,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,KAAK,IAAI,CAAC;QACpD,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,MAAA,IAAI,CAAC,IAAI,CAAC,EAAE,0CAAE,IAAI,CAAC;IAC5B,CAAC;CACF;
|
|
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;IAChB,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;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,MAAA,IAAI,CAAC,IAAI,CAAC,UAAU,mCAAI,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,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,eAAM,CAAC,IAAI,CAAC,CAAC;aAC/B,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC,CAAC;IAC/D,CAAC;IAEM,gBAAgB,CAAC,IAAY;QAClC,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,UAAqB,EAAE,EAAE;YAC/D,OAAO,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,KAAK,IAAI,CAAC;QACpD,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,MAAA,IAAI,CAAC,IAAI,CAAC,EAAE,0CAAE,IAAI,CAAC;IAC5B,CAAC;CACF;AAnDD,sBAmDC"}
|
|
@@ -9,7 +9,7 @@ const subgraphResolver_1 = require("./subgraphResolver");
|
|
|
9
9
|
const classResolver_1 = require("./classResolver");
|
|
10
10
|
function create(context, fileReader) {
|
|
11
11
|
const imports = [];
|
|
12
|
-
const dependencyResolver = new dependencyResolver_1.DependencyResolver(new subgraphResolver_1.SubgraphResolver(fileReader), new classResolver_1.ClassResolver(fileReader));
|
|
12
|
+
const dependencyResolver = new dependencyResolver_1.DependencyResolver(new subgraphResolver_1.SubgraphResolver(fileReader, new classResolver_1.ClassResolver(fileReader)), new classResolver_1.ClassResolver(fileReader));
|
|
13
13
|
const graphHandler = new graphHandler_1.GraphHandler(context, dependencyResolver);
|
|
14
14
|
return {
|
|
15
15
|
ImportDeclaration(node) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createRule.js","sourceRoot":"","sources":["../../../src/rules/unresolvedProviderDependencies/createRule.ts"],"names":[],"mappings":";;;AACA,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,CAAC,
|
|
1
|
+
{"version":3,"file":"createRule.js","sourceRoot":"","sources":["../../../src/rules/unresolvedProviderDependencies/createRule.ts"],"names":[],"mappings":";;;AACA,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;AAhBD,wBAgBC"}
|
|
@@ -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;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;
|
|
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"}
|
|
@@ -21,16 +21,15 @@ class DependencyResolver {
|
|
|
21
21
|
.flatMap(this.getGraphDependencies);
|
|
22
22
|
}
|
|
23
23
|
getGraphDependencies({ clazz }) {
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
.map((method) => method.name);
|
|
24
|
+
var _a;
|
|
25
|
+
return (_a = clazz.mapDecoratedMethods('Provides', (method) => method.name)) !== null && _a !== void 0 ? _a : [];
|
|
27
26
|
}
|
|
28
27
|
getDependenciesFromSuperClass(clazz) {
|
|
29
|
-
var _a, _b, _c
|
|
28
|
+
var _a, _b, _c;
|
|
30
29
|
if (!clazz.superClass || clazz.superClass === 'ObjectGraph')
|
|
31
30
|
return [];
|
|
32
|
-
return (
|
|
33
|
-
.resolve(clazz.superClass, clazz)) === null || _a === void 0 ? void 0 : _a.clazz) === null || _b === void 0 ? void 0 : _b.
|
|
31
|
+
return (_c = (_b = (_a = this.classResolver
|
|
32
|
+
.resolve(clazz.superClass, clazz)) === null || _a === void 0 ? void 0 : _a.clazz) === null || _b === void 0 ? void 0 : _b.mapDecoratedMethods('Provides', (method) => method.name)) !== null && _c !== void 0 ? _c : [];
|
|
34
33
|
}
|
|
35
34
|
}
|
|
36
35
|
exports.DependencyResolver = DependencyResolver;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dependencyResolver.js","sourceRoot":"","sources":["../../../src/rules/unresolvedProviderDependencies/dependencyResolver.ts"],"names":[],"mappings":";;;AAAA,mDAAgD;AAOhD,MAAa,kBAAkB;IAC7B,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,IAAI,CAAC,oBAAoB,CAAC,CAAC;IACxC,CAAC;IAEO,oBAAoB,CAAC,EAAE,KAAK,EAAa
|
|
1
|
+
{"version":3,"file":"dependencyResolver.js","sourceRoot":"","sources":["../../../src/rules/unresolvedProviderDependencies/dependencyResolver.ts"],"names":[],"mappings":";;;AAAA,mDAAgD;AAOhD,MAAa,kBAAkB;IAC7B,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,IAAI,CAAC,oBAAoB,CAAC,CAAC;IACxC,CAAC;IAEO,oBAAoB,CAAC,EAAE,KAAK,EAAa;;QAC/C,OAAO,MAAA,KAAK,CAAC,mBAAmB,CAAC,UAAU,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,mCAAI,EAAE,CAAC;IAC9E,CAAC;IAEO,6BAA6B,CAAC,KAAgB;;QACpD,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,UAAU,KAAK,aAAa;YAAE,OAAO,EAAE,CAAC;QACvE,OAAO,MAAA,MAAA,MAAA,IAAI,CAAC,aAAa;aACtB,OAAO,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,0CAC/B,KAAK,0CACL,mBAAmB,CAAC,UAAU,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,mCAAI,EAAE,CAAC;IACrE,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,15 +4,20 @@ 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
|
-
constructor(fileReader) {
|
|
9
|
+
constructor(fileReader, classResolver) {
|
|
9
10
|
this.fileReader = fileReader;
|
|
11
|
+
this.classResolver = classResolver;
|
|
10
12
|
}
|
|
11
13
|
resolve(clazz) {
|
|
12
14
|
return [
|
|
13
15
|
...this.getImportedGraphs(clazz),
|
|
14
16
|
...this.getLocalGraphs(clazz),
|
|
15
|
-
|
|
17
|
+
...this.getExtendedGraphs(clazz),
|
|
18
|
+
]
|
|
19
|
+
.filter(filter_1.nonNull)
|
|
20
|
+
.flatMap((g) => [g, ...this.resolve(g)]);
|
|
16
21
|
}
|
|
17
22
|
getImportedGraphs(clazz) {
|
|
18
23
|
const subgraphs = this.getSubgraphsPropertyFromGraphDecorator(clazz);
|
|
@@ -36,7 +41,14 @@ class SubgraphResolver {
|
|
|
36
41
|
const subgraphs = this.getSubgraphsPropertyFromGraphDecorator(clazz);
|
|
37
42
|
return this.getLocalSubgraphClasses(subgraphs, clazz);
|
|
38
43
|
}
|
|
44
|
+
getExtendedGraphs(clazz) {
|
|
45
|
+
if (!clazz.superClass || clazz.superClass === 'ObjectGraph')
|
|
46
|
+
return [];
|
|
47
|
+
return [this.classResolver.resolve(clazz.superClass, clazz)];
|
|
48
|
+
}
|
|
39
49
|
getSubgraphsPropertyFromGraphDecorator({ clazz }) {
|
|
50
|
+
if (clazz.isAbstract)
|
|
51
|
+
return undefined;
|
|
40
52
|
const graphDecorator = clazz.requireDecorator('Graph');
|
|
41
53
|
return graphDecorator.getProperty('subgraphs');
|
|
42
54
|
}
|
|
@@ -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;IAC3B,YAAoB,UAAsB;
|
|
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,SAAgB,OAAO,CAAI,KAAQ;IAC/B,OAAO,KAAK,KAAK,SAAS,CAAC;AAC/B,CAAC;AAFD,0BAEC"}
|
package/package.json
CHANGED