@effect/language-service 0.0.4 → 0.0.5
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/_mjs/transformer.mjs +12 -1
- package/_mjs/transformer.mjs.map +1 -1
- package/package.json +1 -1
- package/transformer.d.ts +5 -1
- package/transformer.d.ts.map +1 -1
- package/transformer.js +13 -2
- package/transformer.js.map +1 -1
package/_mjs/transformer.mjs
CHANGED
|
@@ -13,9 +13,10 @@ class RefCounted {
|
|
|
13
13
|
return this.counter;
|
|
14
14
|
}
|
|
15
15
|
}
|
|
16
|
-
export default function
|
|
16
|
+
export default function effectPlugin(program, options) {
|
|
17
17
|
const checker = program.getTypeChecker();
|
|
18
18
|
const traceFilter = createFilter(options?.trace?.include, options?.trace?.exclude);
|
|
19
|
+
const debugFilter = createFilter(options?.debug?.include ?? [], options?.debug?.exclude ?? (options?.debug?.include ? [] : ["**/*"]));
|
|
19
20
|
const optimizeFilter = createFilter(options?.optimize?.include, options?.optimize?.exclude);
|
|
20
21
|
const removeUnusedImports = options?.removeUnusedImports ?? true;
|
|
21
22
|
return {
|
|
@@ -42,6 +43,13 @@ export default function transformer(program, options) {
|
|
|
42
43
|
return undefined;
|
|
43
44
|
}
|
|
44
45
|
}
|
|
46
|
+
const debugVisitor = node => {
|
|
47
|
+
const visited = ts.visitEachChild(node, debugVisitor, ctx);
|
|
48
|
+
if (ts.isArrowFunction(visited)) {
|
|
49
|
+
return ctx.factory.updateArrowFunction(visited, visited.modifiers, visited.typeParameters, visited.parameters, visited.type, visited.equalsGreaterThanToken, ts.isBlock(visited.body) ? ctx.factory.updateBlock(visited.body, [ctx.factory.createDebuggerStatement(), ...visited.body.statements]) : ctx.factory.createBlock([ctx.factory.createDebuggerStatement(), ctx.factory.createReturnStatement(visited.body)]));
|
|
50
|
+
}
|
|
51
|
+
return ts.visitEachChild(node, debugVisitor, ctx);
|
|
52
|
+
};
|
|
45
53
|
const traceVisitor = node => {
|
|
46
54
|
const visited = ts.visitEachChild(node, traceVisitor, ctx);
|
|
47
55
|
if (ts.isCallExpression(visited)) {
|
|
@@ -111,6 +119,9 @@ export default function transformer(program, options) {
|
|
|
111
119
|
if (traceFilter(sourceFile.fileName)) {
|
|
112
120
|
visited = ts.visitNode(visited, traceVisitor);
|
|
113
121
|
}
|
|
122
|
+
if (debugFilter(sourceFile.fileName)) {
|
|
123
|
+
visited = ts.visitNode(visited, debugVisitor);
|
|
124
|
+
}
|
|
114
125
|
if (removeUnusedImports) {
|
|
115
126
|
visited = ts.visitNode(visited, usedImportsVisitor);
|
|
116
127
|
}
|
package/_mjs/transformer.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transformer.mjs","mappings":"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","names":["createFilter","ts","RefCounted","constructor","ref","get","counter","count","transformer","program","options","checker","getTypeChecker","traceFilter","trace","include","exclude","optimizeFilter","optimize","removeUnusedImports","before","ctx","sourceFile","isDeclarationFile","tracer","factory","createUniqueName","fileName","getOriginal","node","current","getTrace","pos","getStart","nodeEnd","getLineAndCharacterOfPosition","createBinaryExpression","createToken","SyntaxKind","PlusToken","createStringLiteral","line","character","e","undefined","traceVisitor","visited","visitEachChild","isCallExpression","shouldEmbedTrace","signature","getResolvedSignature","declaration","getAllJSDocTags","tag","tagName","text","comment","length","getSymbolAtLocation","expression","getJsDocTags","filter","name","map","d","join","isPropertyAccessExpression","createCallExpression","createPropertyAccessExpression","findSource","isSourceFile","parent","optimizeVisitor","arguments","isJSDocSignature","includes","getText","expr","visitNode","i","usedImportsVisitor","isImportDeclaration","importClause","namedBindings","isNamedImports","elements","forEach","specifier","used","isNamespaceImport","isIdentifier","isImportSpecifier","declarations","statements","push","createImportDeclaration","createImportClause","createNamespaceImport","createVariableStatement","createVariableDeclarationList","createVariableDeclaration","NodeFlags","Const","statement","updateSourceFile","every","referencedFiles","typeReferenceDirectives","hasNoDefaultLib","libReferenceDirectives"],"sourceRoot":"","sources":["../../src/transformer.ts"],"sourcesContent":[null]}
|
|
1
|
+
{"version":3,"file":"transformer.mjs","mappings":"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","names":["createFilter","ts","RefCounted","constructor","ref","get","counter","count","effectPlugin","program","options","checker","getTypeChecker","traceFilter","trace","include","exclude","debugFilter","debug","optimizeFilter","optimize","removeUnusedImports","before","ctx","sourceFile","isDeclarationFile","tracer","factory","createUniqueName","fileName","getOriginal","node","current","getTrace","pos","getStart","nodeEnd","getLineAndCharacterOfPosition","createBinaryExpression","createToken","SyntaxKind","PlusToken","createStringLiteral","line","character","e","undefined","debugVisitor","visited","visitEachChild","isArrowFunction","updateArrowFunction","modifiers","typeParameters","parameters","type","equalsGreaterThanToken","isBlock","body","updateBlock","createDebuggerStatement","statements","createBlock","createReturnStatement","traceVisitor","isCallExpression","shouldEmbedTrace","signature","getResolvedSignature","declaration","getAllJSDocTags","tag","tagName","text","comment","length","getSymbolAtLocation","expression","getJsDocTags","filter","name","map","d","join","isPropertyAccessExpression","createCallExpression","createPropertyAccessExpression","findSource","isSourceFile","parent","optimizeVisitor","arguments","isJSDocSignature","includes","getText","expr","visitNode","i","usedImportsVisitor","isImportDeclaration","importClause","namedBindings","isNamedImports","elements","forEach","specifier","used","isNamespaceImport","isIdentifier","isImportSpecifier","declarations","push","createImportDeclaration","createImportClause","createNamespaceImport","createVariableStatement","createVariableDeclarationList","createVariableDeclaration","NodeFlags","Const","statement","updateSourceFile","every","referencedFiles","typeReferenceDirectives","hasNoDefaultLib","libReferenceDirectives"],"sourceRoot":"","sources":["../../src/transformer.ts"],"sourcesContent":[null]}
|
package/package.json
CHANGED
package/transformer.d.ts
CHANGED
|
@@ -7,11 +7,15 @@ declare module "typescript" {
|
|
|
7
7
|
used?: number;
|
|
8
8
|
}
|
|
9
9
|
}
|
|
10
|
-
export default function
|
|
10
|
+
export default function effectPlugin(program: ts.Program, options?: {
|
|
11
11
|
trace?: {
|
|
12
12
|
include?: Array<string>;
|
|
13
13
|
exclude?: Array<string>;
|
|
14
14
|
};
|
|
15
|
+
debug?: {
|
|
16
|
+
include?: Array<string>;
|
|
17
|
+
exclude?: Array<string>;
|
|
18
|
+
};
|
|
15
19
|
optimize?: {
|
|
16
20
|
include?: Array<string>;
|
|
17
21
|
exclude?: Array<string>;
|
package/transformer.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transformer.d.ts","sourceRoot":"","sources":["../../src/transformer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,YAAY,CAAA;AAc3B,OAAO,QAAQ,YAAY,CAAC;IAC1B,UAAiB,eAAe;QAC9B,IAAI,CAAC,EAAE,MAAM,CAAA;KACd;IACD,UAAiB,eAAe;QAC9B,IAAI,CAAC,EAAE,MAAM,CAAA;KACd;CACF;AAED,MAAM,CAAC,OAAO,UAAU,
|
|
1
|
+
{"version":3,"file":"transformer.d.ts","sourceRoot":"","sources":["../../src/transformer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,YAAY,CAAA;AAc3B,OAAO,QAAQ,YAAY,CAAC;IAC1B,UAAiB,eAAe;QAC9B,IAAI,CAAC,EAAE,MAAM,CAAA;KACd;IACD,UAAiB,eAAe;QAC9B,IAAI,CAAC,EAAE,MAAM,CAAA;KACd;CACF;AAED,MAAM,CAAC,OAAO,UAAU,YAAY,CAClC,OAAO,EAAE,EAAE,CAAC,OAAO,EACnB,OAAO,CAAC,EAAE;IACR,KAAK,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QAAC,OAAO,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;KAAE,CAAA;IAC5D,KAAK,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QAAC,OAAO,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;KAAE,CAAA;IAC5D,QAAQ,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QAAC,OAAO,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;KAAE,CAAA;IAC/D,mBAAmB,CAAC,EAAE,OAAO,CAAA;CAC9B;gBAWa,GAAG,qBAAqB,gBACd,GAAG,UAAU;EA4OtC"}
|
package/transformer.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.default =
|
|
6
|
+
exports.default = effectPlugin;
|
|
7
7
|
var _pluginutils = /*#__PURE__*/require("@rollup/pluginutils");
|
|
8
8
|
var _typescript = /*#__PURE__*/_interopRequireDefault( /*#__PURE__*/require("typescript"));
|
|
9
9
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
@@ -20,9 +20,10 @@ class RefCounted {
|
|
|
20
20
|
return this.counter;
|
|
21
21
|
}
|
|
22
22
|
}
|
|
23
|
-
function
|
|
23
|
+
function effectPlugin(program, options) {
|
|
24
24
|
const checker = program.getTypeChecker();
|
|
25
25
|
const traceFilter = (0, _pluginutils.createFilter)(options?.trace?.include, options?.trace?.exclude);
|
|
26
|
+
const debugFilter = (0, _pluginutils.createFilter)(options?.debug?.include ?? [], options?.debug?.exclude ?? (options?.debug?.include ? [] : ["**/*"]));
|
|
26
27
|
const optimizeFilter = (0, _pluginutils.createFilter)(options?.optimize?.include, options?.optimize?.exclude);
|
|
27
28
|
const removeUnusedImports = options?.removeUnusedImports ?? true;
|
|
28
29
|
return {
|
|
@@ -49,6 +50,13 @@ function transformer(program, options) {
|
|
|
49
50
|
return undefined;
|
|
50
51
|
}
|
|
51
52
|
}
|
|
53
|
+
const debugVisitor = node => {
|
|
54
|
+
const visited = _typescript.default.visitEachChild(node, debugVisitor, ctx);
|
|
55
|
+
if (_typescript.default.isArrowFunction(visited)) {
|
|
56
|
+
return ctx.factory.updateArrowFunction(visited, visited.modifiers, visited.typeParameters, visited.parameters, visited.type, visited.equalsGreaterThanToken, _typescript.default.isBlock(visited.body) ? ctx.factory.updateBlock(visited.body, [ctx.factory.createDebuggerStatement(), ...visited.body.statements]) : ctx.factory.createBlock([ctx.factory.createDebuggerStatement(), ctx.factory.createReturnStatement(visited.body)]));
|
|
57
|
+
}
|
|
58
|
+
return _typescript.default.visitEachChild(node, debugVisitor, ctx);
|
|
59
|
+
};
|
|
52
60
|
const traceVisitor = node => {
|
|
53
61
|
const visited = _typescript.default.visitEachChild(node, traceVisitor, ctx);
|
|
54
62
|
if (_typescript.default.isCallExpression(visited)) {
|
|
@@ -118,6 +126,9 @@ function transformer(program, options) {
|
|
|
118
126
|
if (traceFilter(sourceFile.fileName)) {
|
|
119
127
|
visited = _typescript.default.visitNode(visited, traceVisitor);
|
|
120
128
|
}
|
|
129
|
+
if (debugFilter(sourceFile.fileName)) {
|
|
130
|
+
visited = _typescript.default.visitNode(visited, debugVisitor);
|
|
131
|
+
}
|
|
121
132
|
if (removeUnusedImports) {
|
|
122
133
|
visited = _typescript.default.visitNode(visited, usedImportsVisitor);
|
|
123
134
|
}
|
package/transformer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transformer.js","mappings":"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","names":["RefCounted","constructor","ref","get","counter","count","transformer","program","options","checker","getTypeChecker","traceFilter","trace","include","exclude","optimizeFilter","optimize","removeUnusedImports","before","ctx","sourceFile","isDeclarationFile","tracer","factory","createUniqueName","fileName","getOriginal","node","current","getTrace","pos","getStart","nodeEnd","getLineAndCharacterOfPosition","createBinaryExpression","createToken","ts","SyntaxKind","PlusToken","createStringLiteral","line","character","e","undefined","traceVisitor","visited","visitEachChild","isCallExpression","shouldEmbedTrace","signature","getResolvedSignature","declaration","getAllJSDocTags","tag","tagName","text","comment","length","getSymbolAtLocation","expression","getJsDocTags","filter","name","map","d","join","isPropertyAccessExpression","createCallExpression","createPropertyAccessExpression","findSource","isSourceFile","parent","optimizeVisitor","arguments","isJSDocSignature","includes","getText","expr","visitNode","i","usedImportsVisitor","isImportDeclaration","importClause","namedBindings","isNamedImports","elements","forEach","specifier","used","isNamespaceImport","isIdentifier","isImportSpecifier","declarations","statements","push","createImportDeclaration","createImportClause","createNamespaceImport","createVariableStatement","createVariableDeclarationList","createVariableDeclaration","NodeFlags","Const","statement","updateSourceFile","every","referencedFiles","typeReferenceDirectives","hasNoDefaultLib","libReferenceDirectives"],"sourceRoot":"","sources":["../../src/transformer.ts"],"sourcesContent":[null]}
|
|
1
|
+
{"version":3,"file":"transformer.js","mappings":"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","names":["RefCounted","constructor","ref","get","counter","count","effectPlugin","program","options","checker","getTypeChecker","traceFilter","trace","include","exclude","debugFilter","debug","optimizeFilter","optimize","removeUnusedImports","before","ctx","sourceFile","isDeclarationFile","tracer","factory","createUniqueName","fileName","getOriginal","node","current","getTrace","pos","getStart","nodeEnd","getLineAndCharacterOfPosition","createBinaryExpression","createToken","ts","SyntaxKind","PlusToken","createStringLiteral","line","character","e","undefined","debugVisitor","visited","visitEachChild","isArrowFunction","updateArrowFunction","modifiers","typeParameters","parameters","type","equalsGreaterThanToken","isBlock","body","updateBlock","createDebuggerStatement","statements","createBlock","createReturnStatement","traceVisitor","isCallExpression","shouldEmbedTrace","signature","getResolvedSignature","declaration","getAllJSDocTags","tag","tagName","text","comment","length","getSymbolAtLocation","expression","getJsDocTags","filter","name","map","d","join","isPropertyAccessExpression","createCallExpression","createPropertyAccessExpression","findSource","isSourceFile","parent","optimizeVisitor","arguments","isJSDocSignature","includes","getText","expr","visitNode","i","usedImportsVisitor","isImportDeclaration","importClause","namedBindings","isNamedImports","elements","forEach","specifier","used","isNamespaceImport","isIdentifier","isImportSpecifier","declarations","push","createImportDeclaration","createImportClause","createNamespaceImport","createVariableStatement","createVariableDeclarationList","createVariableDeclaration","NodeFlags","Const","statement","updateSourceFile","every","referencedFiles","typeReferenceDirectives","hasNoDefaultLib","libReferenceDirectives"],"sourceRoot":"","sources":["../../src/transformer.ts"],"sourcesContent":[null]}
|