@effect/language-service 0.0.0
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/README.md +59 -0
- package/_mjs/ast.mjs +80 -0
- package/_mjs/ast.mjs.map +1 -0
- package/_mjs/config.mjs +24 -0
- package/_mjs/config.mjs.map +1 -0
- package/_mjs/diagnostics/definition.mjs +4 -0
- package/_mjs/diagnostics/definition.mjs.map +1 -0
- package/_mjs/diagnostics/ensureGetCallTrace.mjs +49 -0
- package/_mjs/diagnostics/ensureGetCallTrace.mjs.map +1 -0
- package/_mjs/diagnostics/index.mjs +9 -0
- package/_mjs/diagnostics/index.mjs.map +1 -0
- package/_mjs/diagnostics/noSyncWithConstant.mjs +36 -0
- package/_mjs/diagnostics/noSyncWithConstant.mjs.map +1 -0
- package/_mjs/diagnostics/removeCurryArrow.mjs +18 -0
- package/_mjs/diagnostics/removeCurryArrow.mjs.map +1 -0
- package/_mjs/index.mjs +111 -0
- package/_mjs/index.mjs.map +1 -0
- package/_mjs/refactors/addPipe.mjs +24 -0
- package/_mjs/refactors/addPipe.mjs.map +1 -0
- package/_mjs/refactors/asyncAwaitToGen.mjs +25 -0
- package/_mjs/refactors/asyncAwaitToGen.mjs.map +1 -0
- package/_mjs/refactors/asyncAwaitToGenTryPromise.mjs +30 -0
- package/_mjs/refactors/asyncAwaitToGenTryPromise.mjs.map +1 -0
- package/_mjs/refactors/definition.mjs +4 -0
- package/_mjs/refactors/definition.mjs.map +1 -0
- package/_mjs/refactors/functionToArrow.mjs +43 -0
- package/_mjs/refactors/functionToArrow.mjs.map +1 -0
- package/_mjs/refactors/index.mjs +19 -0
- package/_mjs/refactors/index.mjs.map +1 -0
- package/_mjs/refactors/removeCurryArrow.mjs +24 -0
- package/_mjs/refactors/removeCurryArrow.mjs.map +1 -0
- package/_mjs/refactors/removePipe.mjs +23 -0
- package/_mjs/refactors/removePipe.mjs.map +1 -0
- package/_mjs/refactors/toggleReturnTypeAnnotation.mjs +44 -0
- package/_mjs/refactors/toggleReturnTypeAnnotation.mjs.map +1 -0
- package/_mjs/refactors/toggleTypeAnnotation.mjs +37 -0
- package/_mjs/refactors/toggleTypeAnnotation.mjs.map +1 -0
- package/_mjs/utils.mjs +146 -0
- package/_mjs/utils.mjs.map +1 -0
- package/ast.d.ts +116 -0
- package/ast.d.ts.map +1 -0
- package/ast.js +100 -0
- package/ast.js.map +1 -0
- package/config.d.ts +10 -0
- package/config.d.ts.map +1 -0
- package/config.js +31 -0
- package/config.js.map +1 -0
- package/diagnostics/definition.d.ts +15 -0
- package/diagnostics/definition.d.ts.map +1 -0
- package/diagnostics/definition.js +10 -0
- package/diagnostics/definition.js.map +1 -0
- package/diagnostics/ensureGetCallTrace.d.ts +3 -0
- package/diagnostics/ensureGetCallTrace.d.ts.map +1 -0
- package/diagnostics/ensureGetCallTrace.js +58 -0
- package/diagnostics/ensureGetCallTrace.js.map +1 -0
- package/diagnostics/index.d.ts +7 -0
- package/diagnostics/index.d.ts.map +1 -0
- package/diagnostics/index.js +17 -0
- package/diagnostics/index.js.map +1 -0
- package/diagnostics/noSyncWithConstant.d.ts +3 -0
- package/diagnostics/noSyncWithConstant.d.ts.map +1 -0
- package/diagnostics/noSyncWithConstant.js +45 -0
- package/diagnostics/noSyncWithConstant.js.map +1 -0
- package/diagnostics/removeCurryArrow.d.ts +3 -0
- package/diagnostics/removeCurryArrow.d.ts.map +1 -0
- package/diagnostics/removeCurryArrow.js +27 -0
- package/diagnostics/removeCurryArrow.js.map +1 -0
- package/index.d.ts +2 -0
- package/index.d.ts.map +1 -0
- package/index.js +116 -0
- package/index.js.map +1 -0
- package/package.json +43 -0
- package/refactors/addPipe.d.ts +3 -0
- package/refactors/addPipe.d.ts.map +1 -0
- package/refactors/addPipe.js +33 -0
- package/refactors/addPipe.js.map +1 -0
- package/refactors/asyncAwaitToGen.d.ts +3 -0
- package/refactors/asyncAwaitToGen.d.ts.map +1 -0
- package/refactors/asyncAwaitToGen.js +34 -0
- package/refactors/asyncAwaitToGen.js.map +1 -0
- package/refactors/asyncAwaitToGenTryPromise.d.ts +3 -0
- package/refactors/asyncAwaitToGenTryPromise.d.ts.map +1 -0
- package/refactors/asyncAwaitToGenTryPromise.js +39 -0
- package/refactors/asyncAwaitToGenTryPromise.js.map +1 -0
- package/refactors/definition.d.ts +13 -0
- package/refactors/definition.d.ts.map +1 -0
- package/refactors/definition.js +10 -0
- package/refactors/definition.js.map +1 -0
- package/refactors/functionToArrow.d.ts +3 -0
- package/refactors/functionToArrow.d.ts.map +1 -0
- package/refactors/functionToArrow.js +52 -0
- package/refactors/functionToArrow.js.map +1 -0
- package/refactors/index.d.ts +12 -0
- package/refactors/index.d.ts.map +1 -0
- package/refactors/index.js +27 -0
- package/refactors/index.js.map +1 -0
- package/refactors/removeCurryArrow.d.ts +3 -0
- package/refactors/removeCurryArrow.d.ts.map +1 -0
- package/refactors/removeCurryArrow.js +33 -0
- package/refactors/removeCurryArrow.js.map +1 -0
- package/refactors/removePipe.d.ts +3 -0
- package/refactors/removePipe.d.ts.map +1 -0
- package/refactors/removePipe.js +32 -0
- package/refactors/removePipe.js.map +1 -0
- package/refactors/toggleReturnTypeAnnotation.d.ts +3 -0
- package/refactors/toggleReturnTypeAnnotation.d.ts.map +1 -0
- package/refactors/toggleReturnTypeAnnotation.js +53 -0
- package/refactors/toggleReturnTypeAnnotation.js.map +1 -0
- package/refactors/toggleTypeAnnotation.d.ts +3 -0
- package/refactors/toggleTypeAnnotation.d.ts.map +1 -0
- package/refactors/toggleTypeAnnotation.js +46 -0
- package/refactors/toggleTypeAnnotation.js.map +1 -0
- package/utils.d.ts +15 -0
- package/utils.d.ts.map +1 -0
- package/utils.js +163 -0
- package/utils.js.map +1 -0
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var T = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/core/io/Effect"));
|
|
8
|
+
var AST = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/language-service/ast"));
|
|
9
|
+
var _definition = /*#__PURE__*/require("@effect/language-service/refactors/definition");
|
|
10
|
+
var _utils = /*#__PURE__*/require("@effect/language-service/utils");
|
|
11
|
+
var Ch = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@tsplus/stdlib/collections/Chunk"));
|
|
12
|
+
var _Function = /*#__PURE__*/require("@tsplus/stdlib/data/Function");
|
|
13
|
+
var O = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@tsplus/stdlib/data/Maybe"));
|
|
14
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
15
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
16
|
+
var _default = /*#__PURE__*/(0, _definition.createRefactor)({
|
|
17
|
+
name: "effect/asyncAwaitToGenTryPromise",
|
|
18
|
+
description: "Convert to Effect.gen with failures",
|
|
19
|
+
apply: (sourceFile, textRange) => T.gen(function* ($) {
|
|
20
|
+
const ts = yield* $(T.service(AST.TypeScriptApi));
|
|
21
|
+
return (0, _Function.pipe)(AST.getNodesContainingRange(ts)(sourceFile, textRange), Ch.filter(ts.isFunctionDeclaration), Ch.filter(node => !!node.body), Ch.filter(node => !!(ts.getCombinedModifierFlags(node) & ts.ModifierFlags.Async)), Ch.head, O.map(node => ({
|
|
22
|
+
description: "Rewrite to Effect.gen with failures",
|
|
23
|
+
apply: T.gen(function* ($) {
|
|
24
|
+
const changeTracker = yield* $(T.service(AST.ChangeTrackerApi));
|
|
25
|
+
const importedEffectName = (0, _utils.findModuleImportIdentifierName)(ts)(sourceFile, "@effect/core/io/Effect");
|
|
26
|
+
const effectName = (0, _Function.pipe)(importedEffectName, O.getOrElse(() => "Effect"));
|
|
27
|
+
let errorCount = 0;
|
|
28
|
+
function createErrorADT() {
|
|
29
|
+
errorCount++;
|
|
30
|
+
return ts.factory.createObjectLiteralExpression([ts.factory.createPropertyAssignment("_tag", ts.factory.createAsExpression(ts.factory.createStringLiteral("Error" + errorCount), ts.factory.createTypeReferenceNode("const"))), ts.factory.createShorthandPropertyAssignment("error")]);
|
|
31
|
+
}
|
|
32
|
+
const newDeclaration = yield* $((0, _utils.transformAsyncAwaitToEffectGen)(node, effectName, expression => ts.factory.createCallExpression(ts.factory.createPropertyAccessExpression(ts.factory.createIdentifier(effectName), "tryCatchPromise"), undefined, [ts.factory.createArrowFunction(undefined, undefined, [], undefined, undefined, expression), ts.factory.createArrowFunction(undefined, undefined, [ts.factory.createParameterDeclaration(undefined, undefined, "error")], undefined, undefined, createErrorADT())])));
|
|
33
|
+
changeTracker.replaceNode(sourceFile, node, newDeclaration);
|
|
34
|
+
})
|
|
35
|
+
})));
|
|
36
|
+
})
|
|
37
|
+
});
|
|
38
|
+
exports.default = _default;
|
|
39
|
+
//# sourceMappingURL=asyncAwaitToGenTryPromise.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"asyncAwaitToGenTryPromise.js","mappings":"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","names":["name","description","apply","sourceFile","textRange","T","gen","$","ts","service","AST","TypeScriptApi","getNodesContainingRange","Ch","filter","isFunctionDeclaration","node","body","getCombinedModifierFlags","ModifierFlags","Async","head","O","map","changeTracker","ChangeTrackerApi","importedEffectName","effectName","getOrElse","errorCount","createErrorADT","factory","createObjectLiteralExpression","createPropertyAssignment","createAsExpression","createStringLiteral","createTypeReferenceNode","createShorthandPropertyAssignment","newDeclaration","expression","createCallExpression","createPropertyAccessExpression","createIdentifier","undefined","createArrowFunction","createParameterDeclaration","replaceNode"],"sourceRoot":"","sources":["../../../src/refactors/asyncAwaitToGenTryPromise.ts"],"sourcesContent":[null]}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type * as T from "@effect/core/io/Effect";
|
|
2
|
+
import type * as O from "@tsplus/stdlib/data/Maybe";
|
|
3
|
+
import type ts from "typescript/lib/tsserverlibrary";
|
|
4
|
+
export interface RefactorDefinition {
|
|
5
|
+
name: string;
|
|
6
|
+
description: string;
|
|
7
|
+
apply: <E>(sourceFile: ts.SourceFile, textRange: ts.TextRange) => T.Effect<typeof ts | ts.Program, E, O.Maybe<{
|
|
8
|
+
description: string;
|
|
9
|
+
apply: T.Effect<typeof ts | ts.Program | ts.textChanges.ChangeTracker, E, void>;
|
|
10
|
+
}>>;
|
|
11
|
+
}
|
|
12
|
+
export declare function createRefactor(definition: RefactorDefinition): RefactorDefinition;
|
|
13
|
+
//# sourceMappingURL=definition.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"definition.d.ts","sourceRoot":"","sources":["../../../src/refactors/definition.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,CAAC,MAAM,wBAAwB,CAAA;AAChD,OAAO,KAAK,KAAK,CAAC,MAAM,2BAA2B,CAAA;AACnD,OAAO,KAAK,EAAE,MAAM,gCAAgC,CAAA;AAEpD,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,CAAC,CAAC,EACP,UAAU,EAAE,EAAE,CAAC,UAAU,EACzB,SAAS,EAAE,EAAE,CAAC,SAAS,KACpB,CAAC,CAAC,MAAM,CACX,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,EACtB,CAAC,EACD,CAAC,CAAC,KAAK,CAAC;QACN,WAAW,EAAE,MAAM,CAAA;QACnB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,aAAa,EAAE,CAAC,EAAE,IAAI,CAAC,CAAA;KAChF,CAAC,CACH,CAAA;CACF;AAED,wBAAgB,cAAc,CAAC,UAAU,EAAE,kBAAkB,sBAE5D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"definition.js","mappings":";;;;;;AAoBM,SAAUA,cAAc,CAACC,UAA8B;EAC3D,OAAOA,UAAU;AACnB","names":["createRefactor","definition"],"sourceRoot":"","sources":["../../../src/refactors/definition.ts"],"sourcesContent":[null]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"functionToArrow.d.ts","sourceRoot":"","sources":["../../../src/refactors/functionToArrow.ts"],"names":[],"mappings":";AAOA,wBAwEE"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var T = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/core/io/Effect"));
|
|
8
|
+
var AST = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/language-service/ast"));
|
|
9
|
+
var _definition = /*#__PURE__*/require("@effect/language-service/refactors/definition");
|
|
10
|
+
var Ch = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@tsplus/stdlib/collections/Chunk"));
|
|
11
|
+
var _Function = /*#__PURE__*/require("@tsplus/stdlib/data/Function");
|
|
12
|
+
var O = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@tsplus/stdlib/data/Maybe"));
|
|
13
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
14
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
15
|
+
var _default = /*#__PURE__*/(0, _definition.createRefactor)({
|
|
16
|
+
name: "effect/functionToArrow",
|
|
17
|
+
description: "Convert to arrow",
|
|
18
|
+
apply: (sourceFile, textRange) => T.gen(function* ($) {
|
|
19
|
+
const ts = yield* $(T.service(AST.TypeScriptApi));
|
|
20
|
+
return (0, _Function.pipe)((0, _Function.pipe)(AST.getNodesContainingRange(ts)(sourceFile, textRange), Ch.filter(ts.isFunctionDeclaration)), Ch.concat((0, _Function.pipe)(AST.getNodesContainingRange(ts)(sourceFile, textRange), Ch.filter(ts.isMethodDeclaration))), Ch.filter(node => !!node.body), Ch.filter(node => !!node.name && AST.isNodeInRange(textRange)(node.name)), Ch.head, O.map(node => ({
|
|
21
|
+
description: "Convert to arrow",
|
|
22
|
+
apply: T.gen(function* ($) {
|
|
23
|
+
const changeTracker = yield* $(T.service(AST.ChangeTrackerApi));
|
|
24
|
+
const body = node.body;
|
|
25
|
+
let newBody = ts.factory.createBlock(body.statements);
|
|
26
|
+
if (body.statements.length === 1) {
|
|
27
|
+
const statement = body.statements[0];
|
|
28
|
+
if (statement && ts.isReturnStatement(statement) && statement.expression) {
|
|
29
|
+
newBody = statement.expression;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
let arrowFlags = ts.getCombinedModifierFlags(node);
|
|
33
|
+
arrowFlags &= ~ts.ModifierFlags.Export;
|
|
34
|
+
arrowFlags &= ~ts.ModifierFlags.Default;
|
|
35
|
+
const arrowModifiers = ts.factory.createModifiersFromModifierFlags(arrowFlags);
|
|
36
|
+
const arrowFunction = ts.factory.createArrowFunction(arrowModifiers, node.typeParameters, node.parameters, undefined, ts.factory.createToken(ts.SyntaxKind.EqualsGreaterThanToken), newBody);
|
|
37
|
+
let constFlags = ts.getCombinedModifierFlags(node);
|
|
38
|
+
constFlags &= ~arrowFlags;
|
|
39
|
+
const constModifiers = ts.factory.createModifiersFromModifierFlags(constFlags);
|
|
40
|
+
let newDeclaration = node;
|
|
41
|
+
if (ts.isMethodDeclaration(node)) {
|
|
42
|
+
newDeclaration = ts.factory.createPropertyDeclaration(constModifiers, node.name, undefined, undefined, arrowFunction);
|
|
43
|
+
} else if (ts.isFunctionDeclaration(node)) {
|
|
44
|
+
newDeclaration = ts.factory.createVariableStatement(constModifiers, ts.factory.createVariableDeclarationList([ts.factory.createVariableDeclaration(node.name, undefined, undefined, arrowFunction)], ts.NodeFlags.Const));
|
|
45
|
+
}
|
|
46
|
+
changeTracker.replaceNode(sourceFile, node, newDeclaration);
|
|
47
|
+
})
|
|
48
|
+
})));
|
|
49
|
+
})
|
|
50
|
+
});
|
|
51
|
+
exports.default = _default;
|
|
52
|
+
//# sourceMappingURL=functionToArrow.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"functionToArrow.js","mappings":"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","names":["name","description","apply","sourceFile","textRange","T","gen","$","ts","service","AST","TypeScriptApi","getNodesContainingRange","Ch","filter","isFunctionDeclaration","concat","isMethodDeclaration","node","body","isNodeInRange","head","O","map","changeTracker","ChangeTrackerApi","newBody","factory","createBlock","statements","length","statement","isReturnStatement","expression","arrowFlags","getCombinedModifierFlags","ModifierFlags","Export","Default","arrowModifiers","createModifiersFromModifierFlags","arrowFunction","createArrowFunction","typeParameters","parameters","undefined","createToken","SyntaxKind","EqualsGreaterThanToken","constFlags","constModifiers","newDeclaration","createPropertyDeclaration","createVariableStatement","createVariableDeclarationList","createVariableDeclaration","NodeFlags","Const","replaceNode"],"sourceRoot":"","sources":["../../../src/refactors/functionToArrow.ts"],"sourcesContent":[null]}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
declare const _default: {
|
|
2
|
+
asyncAwaitToGen: import("./definition").RefactorDefinition;
|
|
3
|
+
asyncAwaitToGenTryPromise: import("./definition").RefactorDefinition;
|
|
4
|
+
removePipe: import("./definition").RefactorDefinition;
|
|
5
|
+
addPipe: import("./definition").RefactorDefinition;
|
|
6
|
+
removeCurryArrow: import("./definition").RefactorDefinition;
|
|
7
|
+
functionToArrow: import("./definition").RefactorDefinition;
|
|
8
|
+
toggleTypeAnnotation: import("./definition").RefactorDefinition;
|
|
9
|
+
toggleReturnTypeAnnotation: import("./definition").RefactorDefinition;
|
|
10
|
+
};
|
|
11
|
+
export default _default;
|
|
12
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/refactors/index.ts"],"names":[],"mappings":";;;;;;;;;;AASA,wBASC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _addPipe = /*#__PURE__*/_interopRequireDefault( /*#__PURE__*/require("@effect/language-service/refactors/addPipe"));
|
|
8
|
+
var _asyncAwaitToGen = /*#__PURE__*/_interopRequireDefault( /*#__PURE__*/require("@effect/language-service/refactors/asyncAwaitToGen"));
|
|
9
|
+
var _asyncAwaitToGenTryPromise = /*#__PURE__*/_interopRequireDefault( /*#__PURE__*/require("@effect/language-service/refactors/asyncAwaitToGenTryPromise"));
|
|
10
|
+
var _functionToArrow = /*#__PURE__*/_interopRequireDefault( /*#__PURE__*/require("@effect/language-service/refactors/functionToArrow"));
|
|
11
|
+
var _removeCurryArrow = /*#__PURE__*/_interopRequireDefault( /*#__PURE__*/require("@effect/language-service/refactors/removeCurryArrow"));
|
|
12
|
+
var _removePipe = /*#__PURE__*/_interopRequireDefault( /*#__PURE__*/require("@effect/language-service/refactors/removePipe"));
|
|
13
|
+
var _toggleReturnTypeAnnotation = /*#__PURE__*/_interopRequireDefault( /*#__PURE__*/require("@effect/language-service/refactors/toggleReturnTypeAnnotation"));
|
|
14
|
+
var _toggleTypeAnnotation = /*#__PURE__*/_interopRequireDefault( /*#__PURE__*/require("@effect/language-service/refactors/toggleTypeAnnotation"));
|
|
15
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
16
|
+
var _default = {
|
|
17
|
+
asyncAwaitToGen: _asyncAwaitToGen.default,
|
|
18
|
+
asyncAwaitToGenTryPromise: _asyncAwaitToGenTryPromise.default,
|
|
19
|
+
removePipe: _removePipe.default,
|
|
20
|
+
addPipe: _addPipe.default,
|
|
21
|
+
removeCurryArrow: _removeCurryArrow.default,
|
|
22
|
+
functionToArrow: _functionToArrow.default,
|
|
23
|
+
toggleTypeAnnotation: _toggleTypeAnnotation.default,
|
|
24
|
+
toggleReturnTypeAnnotation: _toggleReturnTypeAnnotation.default
|
|
25
|
+
};
|
|
26
|
+
exports.default = _default;
|
|
27
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAA0F;AAAA,eAE3E;EACbA,eAAe,EAAfA,wBAAe;EACfC,yBAAyB,EAAzBA,kCAAyB;EACzBC,UAAU,EAAVA,mBAAU;EACVC,OAAO,EAAPA,gBAAO;EACPC,gBAAgB,EAAhBA,yBAAgB;EAChBC,eAAe,EAAfA,wBAAe;EACfC,oBAAoB,EAApBA,6BAAoB;EACpBC,0BAA0B,EAA1BA;CACD;AAAA","names":["asyncAwaitToGen","asyncAwaitToGenTryPromise","removePipe","addPipe","removeCurryArrow","functionToArrow","toggleTypeAnnotation","toggleReturnTypeAnnotation"],"sourceRoot":"","sources":["../../../src/refactors/index.ts"],"sourcesContent":[null]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"removeCurryArrow.d.ts","sourceRoot":"","sources":["../../../src/refactors/removeCurryArrow.ts"],"names":[],"mappings":";AAQA,wBAuBE"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var T = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/core/io/Effect"));
|
|
8
|
+
var AST = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/language-service/ast"));
|
|
9
|
+
var _definition = /*#__PURE__*/require("@effect/language-service/refactors/definition");
|
|
10
|
+
var _utils = /*#__PURE__*/require("@effect/language-service/utils");
|
|
11
|
+
var Ch = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@tsplus/stdlib/collections/Chunk"));
|
|
12
|
+
var _Function = /*#__PURE__*/require("@tsplus/stdlib/data/Function");
|
|
13
|
+
var O = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@tsplus/stdlib/data/Maybe"));
|
|
14
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
15
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
16
|
+
var _default = /*#__PURE__*/(0, _definition.createRefactor)({
|
|
17
|
+
name: "effect/removeCurryArrow",
|
|
18
|
+
description: "Remove arrow",
|
|
19
|
+
apply: (sourceFile, textRange) => T.gen(function* ($) {
|
|
20
|
+
const ts = yield* $(T.service(AST.TypeScriptApi));
|
|
21
|
+
return (0, _Function.pipe)(AST.getNodesContainingRange(ts)(sourceFile, textRange), Ch.filter((0, _utils.isCurryArrow)(ts)), Ch.head, O.map(node => ({
|
|
22
|
+
description: `Remove arrow ${AST.getHumanReadableName(sourceFile, node.body)}`,
|
|
23
|
+
apply: T.gen(function* ($) {
|
|
24
|
+
const changeTracker = yield* $(T.service(AST.ChangeTrackerApi));
|
|
25
|
+
if (!ts.isCallExpression(node.body)) return;
|
|
26
|
+
const newNode = node.body.expression;
|
|
27
|
+
changeTracker.replaceNode(sourceFile, node, newNode);
|
|
28
|
+
})
|
|
29
|
+
})));
|
|
30
|
+
})
|
|
31
|
+
});
|
|
32
|
+
exports.default = _default;
|
|
33
|
+
//# sourceMappingURL=removeCurryArrow.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"removeCurryArrow.js","mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAA8C;AAAA;AAAA,4BAE/B,8BAAc,EAAC;EAC5BA,IAAI,EAAE,yBAAyB;EAC/BC,WAAW,EAAE,cAAc;EAC3BC,KAAK,EAAE,CAACC,UAAU,EAAEC,SAAS,KAC3BC,CAAC,CAACC,GAAG,CAAC,WAAUC,CAAC;IACf,MAAMC,EAAE,GAAG,OAAOD,CAAC,CAACF,CAAC,CAACI,OAAO,CAACC,GAAG,CAACC,aAAa,CAAC,CAAC;IAEjD,OAAO,kBAAI,EACTD,GAAG,CAACE,uBAAuB,CAACJ,EAAE,CAAC,CAACL,UAAU,EAAEC,SAAS,CAAC,EACtDS,EAAE,CAACC,MAAM,CAAC,uBAAY,EAACN,EAAE,CAAC,CAAC,EAC3BK,EAAE,CAACE,IAAI,EACPC,CAAC,CAACC,GAAG,CAAEC,IAAI,KAAM;MACfjB,WAAW,EAAE,gBAAgBS,GAAG,CAACS,oBAAoB,CAAChB,UAAU,EAAEe,IAAI,CAACE,IAAI,CAAC,EAAE;MAC9ElB,KAAK,EAAEG,CAAC,CAACC,GAAG,CAAC,WAAUC,CAAC;QACtB,MAAMc,aAAa,GAAG,OAAOd,CAAC,CAACF,CAAC,CAACI,OAAO,CAACC,GAAG,CAACY,gBAAgB,CAAC,CAAC;QAE/D,IAAI,CAACd,EAAE,CAACe,gBAAgB,CAACL,IAAI,CAACE,IAAI,CAAC,EAAE;QACrC,MAAMI,OAAO,GAAGN,IAAI,CAACE,IAAI,CAACK,UAAU;QACpCJ,aAAa,CAACK,WAAW,CAACvB,UAAU,EAAEe,IAAI,EAAEM,OAAO,CAAC;MACtD,CAAC;KACF,CAAC,CAAC,CACJ;EACH,CAAC;CACJ,CAAC;AAAA","names":["name","description","apply","sourceFile","textRange","T","gen","$","ts","service","AST","TypeScriptApi","getNodesContainingRange","Ch","filter","head","O","map","node","getHumanReadableName","body","changeTracker","ChangeTrackerApi","isCallExpression","newNode","expression","replaceNode"],"sourceRoot":"","sources":["../../../src/refactors/removeCurryArrow.ts"],"sourcesContent":[null]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"removePipe.d.ts","sourceRoot":"","sources":["../../../src/refactors/removePipe.ts"],"names":[],"mappings":";AAQA,wBA8BE"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var T = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/core/io/Effect"));
|
|
8
|
+
var AST = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/language-service/ast"));
|
|
9
|
+
var _definition = /*#__PURE__*/require("@effect/language-service/refactors/definition");
|
|
10
|
+
var _utils = /*#__PURE__*/require("@effect/language-service/utils");
|
|
11
|
+
var Ch = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@tsplus/stdlib/collections/Chunk"));
|
|
12
|
+
var _Function = /*#__PURE__*/require("@tsplus/stdlib/data/Function");
|
|
13
|
+
var O = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@tsplus/stdlib/data/Maybe"));
|
|
14
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
15
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
16
|
+
var _default = /*#__PURE__*/(0, _definition.createRefactor)({
|
|
17
|
+
name: "effect/removePipe",
|
|
18
|
+
description: "Remove pipe call",
|
|
19
|
+
apply: (sourceFile, textRange) => T.gen(function* ($) {
|
|
20
|
+
const ts = yield* $(T.service(AST.TypeScriptApi));
|
|
21
|
+
return (0, _Function.pipe)(AST.getNodesContainingRange(ts)(sourceFile, textRange), Ch.filter((0, _utils.isPipeCall)(ts)), Ch.filter(node => AST.isNodeInRange(textRange)(node.expression)), Ch.filter(node => node.arguments.length > 1), Ch.head, O.map(node => ({
|
|
22
|
+
description: "Remove pipe call",
|
|
23
|
+
apply: T.gen(function* ($) {
|
|
24
|
+
const changeTracker = yield* $(T.service(AST.ChangeTrackerApi));
|
|
25
|
+
const newNode = node.arguments.slice(1).reduce((inner, exp) => ts.factory.createCallExpression(exp, undefined, [inner]), node.arguments[0]);
|
|
26
|
+
changeTracker.replaceNode(sourceFile, node, newNode);
|
|
27
|
+
})
|
|
28
|
+
})));
|
|
29
|
+
})
|
|
30
|
+
});
|
|
31
|
+
exports.default = _default;
|
|
32
|
+
//# sourceMappingURL=removePipe.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"removePipe.js","mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAA8C;AAAA;AAAA,4BAE/B,8BAAc,EAAC;EAC5BA,IAAI,EAAE,mBAAmB;EACzBC,WAAW,EAAE,kBAAkB;EAC/BC,KAAK,EAAE,CAACC,UAAU,EAAEC,SAAS,KAC3BC,CAAC,CAACC,GAAG,CAAC,WAAUC,CAAC;IACf,MAAMC,EAAE,GAAG,OAAOD,CAAC,CAACF,CAAC,CAACI,OAAO,CAACC,GAAG,CAACC,aAAa,CAAC,CAAC;IAEjD,OAAO,kBAAI,EACTD,GAAG,CAACE,uBAAuB,CAACJ,EAAE,CAAC,CAACL,UAAU,EAAEC,SAAS,CAAC,EACtDS,EAAE,CAACC,MAAM,CAAC,qBAAU,EAACN,EAAE,CAAC,CAAC,EACzBK,EAAE,CAACC,MAAM,CAAEC,IAAI,IAAKL,GAAG,CAACM,aAAa,CAACZ,SAAS,CAAC,CAACW,IAAI,CAACE,UAAU,CAAC,CAAC,EAClEJ,EAAE,CAACC,MAAM,CACNC,IAAI,IAAKA,IAAI,CAACG,SAAS,CAACC,MAAM,GAAG,CAAC,CACpC,EACDN,EAAE,CAACO,IAAI,EACPC,CAAC,CAACC,GAAG,CAAEP,IAAI,KAAM;MACfd,WAAW,EAAE,kBAAkB;MAC/BC,KAAK,EAAEG,CAAC,CAACC,GAAG,CAAC,WAAUC,CAAC;QACtB,MAAMgB,aAAa,GAAG,OAAOhB,CAAC,CAACF,CAAC,CAACI,OAAO,CAACC,GAAG,CAACc,gBAAgB,CAAC,CAAC;QAE/D,MAAMC,OAAO,GAAGV,IAAI,CAACG,SAAS,CAACQ,KAAK,CAAC,CAAC,CAAC,CAACC,MAAM,CAC5C,CAACC,KAAK,EAAEC,GAAG,KAAKrB,EAAE,CAACsB,OAAO,CAACC,oBAAoB,CAACF,GAAG,EAAEG,SAAS,EAAE,CAACJ,KAAK,CAAC,CAAC,EACxEb,IAAI,CAACG,SAAS,CAAC,CAAC,CAAE,CACnB;QAEDK,aAAa,CAACU,WAAW,CAAC9B,UAAU,EAAEY,IAAI,EAAEU,OAAO,CAAC;MACtD,CAAC;KACF,CAAC,CAAC,CACJ;EACH,CAAC;CACJ,CAAC;AAAA","names":["name","description","apply","sourceFile","textRange","T","gen","$","ts","service","AST","TypeScriptApi","getNodesContainingRange","Ch","filter","node","isNodeInRange","expression","arguments","length","head","O","map","changeTracker","ChangeTrackerApi","newNode","slice","reduce","inner","exp","factory","createCallExpression","undefined","replaceNode"],"sourceRoot":"","sources":["../../../src/refactors/removePipe.ts"],"sourcesContent":[null]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toggleReturnTypeAnnotation.d.ts","sourceRoot":"","sources":["../../../src/refactors/toggleReturnTypeAnnotation.ts"],"names":[],"mappings":";AAeA,wBAoDE"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var T = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/core/io/Effect"));
|
|
8
|
+
var AST = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/language-service/ast"));
|
|
9
|
+
var _definition = /*#__PURE__*/require("@effect/language-service/refactors/definition");
|
|
10
|
+
var _utils = /*#__PURE__*/require("@effect/language-service/utils");
|
|
11
|
+
var Ch = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@tsplus/stdlib/collections/Chunk"));
|
|
12
|
+
var _Function = /*#__PURE__*/require("@tsplus/stdlib/data/Function");
|
|
13
|
+
var O = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@tsplus/stdlib/data/Maybe"));
|
|
14
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
15
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
16
|
+
var _default = /*#__PURE__*/(0, _definition.createRefactor)({
|
|
17
|
+
name: "effect/toggleReturnTypeAnnotation",
|
|
18
|
+
description: "Toggle return type annotation",
|
|
19
|
+
apply: (sourceFile, textRange) => T.gen(function* ($) {
|
|
20
|
+
const ts = yield* $(T.service(AST.TypeScriptApi));
|
|
21
|
+
function isConvertibleDeclaration(node) {
|
|
22
|
+
switch (node.kind) {
|
|
23
|
+
case ts.SyntaxKind.FunctionDeclaration:
|
|
24
|
+
case ts.SyntaxKind.FunctionExpression:
|
|
25
|
+
case ts.SyntaxKind.ArrowFunction:
|
|
26
|
+
case ts.SyntaxKind.MethodDeclaration:
|
|
27
|
+
return true;
|
|
28
|
+
default:
|
|
29
|
+
return false;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
return (0, _Function.pipe)(AST.getNodesContainingRange(ts)(sourceFile, textRange), Ch.filter(isConvertibleDeclaration), Ch.head, O.map(node => ({
|
|
33
|
+
description: "Toggle return type annotation",
|
|
34
|
+
apply: T.gen(function* ($) {
|
|
35
|
+
const program = yield* $(T.service(AST.TypeScriptProgram));
|
|
36
|
+
const typeChecker = program.getTypeChecker();
|
|
37
|
+
const changeTracker = yield* $(T.service(AST.ChangeTrackerApi));
|
|
38
|
+
if (node.type) {
|
|
39
|
+
changeTracker.delete(sourceFile, node.type);
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
const callableType = typeChecker.getTypeAtLocation(node);
|
|
43
|
+
const returnTypes = callableType.getCallSignatures().map(s => s.getReturnType());
|
|
44
|
+
const returnTypeNodes = returnTypes.map(type => typeChecker.typeToTypeNode(type, node, ts.NodeBuilderFlags.NoTruncation)).filter(node => !!node);
|
|
45
|
+
if (returnTypeNodes.length === 0) return;
|
|
46
|
+
const returnTypeNode = returnTypeNodes.length === 1 ? returnTypeNodes[0] : ts.factory.createUnionTypeNode(returnTypeNodes);
|
|
47
|
+
(0, _utils.addReturnTypeAnnotation)(ts, changeTracker)(sourceFile, node, returnTypeNode);
|
|
48
|
+
})
|
|
49
|
+
})));
|
|
50
|
+
})
|
|
51
|
+
});
|
|
52
|
+
exports.default = _default;
|
|
53
|
+
//# sourceMappingURL=toggleReturnTypeAnnotation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toggleReturnTypeAnnotation.js","mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAA8C;AAAA;AAAA,4BAS/B,8BAAc,EAAC;EAC5BA,IAAI,EAAE,mCAAmC;EACzCC,WAAW,EAAE,+BAA+B;EAC5CC,KAAK,EAAE,CAACC,UAAU,EAAEC,SAAS,KAC3BC,CAAC,CAACC,GAAG,CAAC,WAAUC,CAAC;IACf,MAAMC,EAAE,GAAG,OAAOD,CAAC,CAACF,CAAC,CAACI,OAAO,CAACC,GAAG,CAACC,aAAa,CAAC,CAAC;IAEjD,SAASC,wBAAwB,CAACC,IAAa;MAC7C,QAAQA,IAAI,CAACC,IAAI;QACf,KAAKN,EAAE,CAACO,UAAU,CAACC,mBAAmB;QACtC,KAAKR,EAAE,CAACO,UAAU,CAACE,kBAAkB;QACrC,KAAKT,EAAE,CAACO,UAAU,CAACG,aAAa;QAChC,KAAKV,EAAE,CAACO,UAAU,CAACI,iBAAiB;UAClC,OAAO,IAAI;QACb;UACE,OAAO,KAAK;MAAA;IAElB;IAEA,OAAO,kBAAI,EACTT,GAAG,CAACU,uBAAuB,CAACZ,EAAE,CAAC,CAACL,UAAU,EAAEC,SAAS,CAAC,EACtDiB,EAAE,CAACC,MAAM,CAACV,wBAAwB,CAAC,EACnCS,EAAE,CAACE,IAAI,EACPC,CAAC,CAACC,GAAG,CACFZ,IAAI,KAAM;MACTZ,WAAW,EAAE,+BAA+B;MAC5CC,KAAK,EAAEG,CAAC,CAACC,GAAG,CAAC,WAAUC,CAAC;QACtB,MAAMmB,OAAO,GAAG,OAAOnB,CAAC,CAACF,CAAC,CAACI,OAAO,CAACC,GAAG,CAACiB,iBAAiB,CAAC,CAAC;QAC1D,MAAMC,WAAW,GAAGF,OAAO,CAACG,cAAc,EAAE;QAC5C,MAAMC,aAAa,GAAG,OAAOvB,CAAC,CAACF,CAAC,CAACI,OAAO,CAACC,GAAG,CAACqB,gBAAgB,CAAC,CAAC;QAE/D,IAAIlB,IAAI,CAACmB,IAAI,EAAE;UACbF,aAAa,CAACG,MAAM,CAAC9B,UAAU,EAAEU,IAAI,CAACmB,IAAI,CAAC;UAC3C;;QAGF,MAAME,YAAY,GAAGN,WAAW,CAACO,iBAAiB,CAACtB,IAAI,CAAC;QACxD,MAAMuB,WAAW,GAAGF,YAAY,CAACG,iBAAiB,EAAE,CAACZ,GAAG,CAAEa,CAAC,IAAKA,CAAC,CAACC,aAAa,EAAE,CAAC;QAClF,MAAMC,eAAe,GAAGJ,WAAW,CAACX,GAAG,CAAEO,IAAI,IAC3CJ,WAAW,CAACa,cAAc,CAACT,IAAI,EAAEnB,IAAI,EAAEL,EAAE,CAACkC,gBAAgB,CAACC,YAAY,CAAC,CACzE,CAACrB,MAAM,CAAET,IAAI,IAA0B,CAAC,CAACA,IAAI,CAAC;QAC/C,IAAI2B,eAAe,CAACI,MAAM,KAAK,CAAC,EAAE;QAClC,MAAMC,cAAc,GAAGL,eAAe,CAACI,MAAM,KAAK,CAAC,GACjDJ,eAAe,CAAC,CAAC,CAAE,GACnBhC,EAAE,CAACsC,OAAO,CAACC,mBAAmB,CAACP,eAAe,CAAC;QAEjD,kCAAuB,EAAChC,EAAE,EAAEsB,aAAa,CAAC,CAAC3B,UAAU,EAAEU,IAAI,EAAEgC,cAAc,CAAC;MAC9E,CAAC;KACF,CAAC,CACH,CACF;EACH,CAAC;CACJ,CAAC;AAAA","names":["name","description","apply","sourceFile","textRange","T","gen","$","ts","service","AST","TypeScriptApi","isConvertibleDeclaration","node","kind","SyntaxKind","FunctionDeclaration","FunctionExpression","ArrowFunction","MethodDeclaration","getNodesContainingRange","Ch","filter","head","O","map","program","TypeScriptProgram","typeChecker","getTypeChecker","changeTracker","ChangeTrackerApi","type","delete","callableType","getTypeAtLocation","returnTypes","getCallSignatures","s","getReturnType","returnTypeNodes","typeToTypeNode","NodeBuilderFlags","NoTruncation","length","returnTypeNode","factory","createUnionTypeNode"],"sourceRoot":"","sources":["../../../src/refactors/toggleReturnTypeAnnotation.ts"],"sourcesContent":[null]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toggleTypeAnnotation.d.ts","sourceRoot":"","sources":["../../../src/refactors/toggleTypeAnnotation.ts"],"names":[],"mappings":";AAOA,wBAyCE"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var T = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/core/io/Effect"));
|
|
8
|
+
var AST = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/language-service/ast"));
|
|
9
|
+
var _definition = /*#__PURE__*/require("@effect/language-service/refactors/definition");
|
|
10
|
+
var Ch = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@tsplus/stdlib/collections/Chunk"));
|
|
11
|
+
var _Function = /*#__PURE__*/require("@tsplus/stdlib/data/Function");
|
|
12
|
+
var O = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@tsplus/stdlib/data/Maybe"));
|
|
13
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
14
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
15
|
+
var _default = /*#__PURE__*/(0, _definition.createRefactor)({
|
|
16
|
+
name: "effect/toggleTypeAnnotation",
|
|
17
|
+
description: "Toggle type annotation",
|
|
18
|
+
apply: (sourceFile, textRange) => T.gen(function* ($) {
|
|
19
|
+
const ts = yield* $(T.service(AST.TypeScriptApi));
|
|
20
|
+
return (0, _Function.pipe)(AST.getNodesContainingRange(ts)(sourceFile, textRange), Ch.filter(ts.isVariableDeclaration), Ch.filter(node => AST.isNodeInRange(textRange)(node.name)), Ch.filter(node => !!node.initializer), Ch.head, O.map(node => ({
|
|
21
|
+
description: "Toggle type annotation",
|
|
22
|
+
apply: T.gen(function* ($) {
|
|
23
|
+
const program = yield* $(T.service(AST.TypeScriptProgram));
|
|
24
|
+
const typeChecker = program.getTypeChecker();
|
|
25
|
+
const changeTracker = yield* $(T.service(AST.ChangeTrackerApi));
|
|
26
|
+
if (node.type) {
|
|
27
|
+
changeTracker.deleteRange(sourceFile, {
|
|
28
|
+
pos: node.type.pos - 2,
|
|
29
|
+
end: node.type.end
|
|
30
|
+
});
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
const initializer = node.initializer;
|
|
34
|
+
const initializerType = typeChecker.getTypeAtLocation(initializer);
|
|
35
|
+
const initializerTypeNode = typeChecker.typeToTypeNode(initializerType, node, ts.NodeBuilderFlags.NoTruncation);
|
|
36
|
+
if (initializerTypeNode) {
|
|
37
|
+
changeTracker.insertNodeAt(sourceFile, node.name.end, initializerTypeNode, {
|
|
38
|
+
prefix: ": "
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
})
|
|
42
|
+
})));
|
|
43
|
+
})
|
|
44
|
+
});
|
|
45
|
+
exports.default = _default;
|
|
46
|
+
//# sourceMappingURL=toggleTypeAnnotation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toggleTypeAnnotation.js","mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AAA8C;AAAA;AAAA,4BAE/B,8BAAc,EAAC;EAC5BA,IAAI,EAAE,6BAA6B;EACnCC,WAAW,EAAE,wBAAwB;EACrCC,KAAK,EAAE,CAACC,UAAU,EAAEC,SAAS,KAC3BC,CAAC,CAACC,GAAG,CAAC,WAAUC,CAAC;IACf,MAAMC,EAAE,GAAG,OAAOD,CAAC,CAACF,CAAC,CAACI,OAAO,CAACC,GAAG,CAACC,aAAa,CAAC,CAAC;IAEjD,OAAO,kBAAI,EACTD,GAAG,CAACE,uBAAuB,CAACJ,EAAE,CAAC,CAACL,UAAU,EAAEC,SAAS,CAAC,EACtDS,EAAE,CAACC,MAAM,CAACN,EAAE,CAACO,qBAAqB,CAAC,EACnCF,EAAE,CAACC,MAAM,CAAEE,IAAI,IAAKN,GAAG,CAACO,aAAa,CAACb,SAAS,CAAC,CAACY,IAAI,CAAChB,IAAI,CAAC,CAAC,EAC5Da,EAAE,CAACC,MAAM,CAAEE,IAAI,IAAK,CAAC,CAACA,IAAI,CAACE,WAAW,CAAC,EACvCL,EAAE,CAACM,IAAI,EACPC,CAAC,CAACC,GAAG,CACFL,IAAI,KAAM;MACTf,WAAW,EAAE,wBAAwB;MACrCC,KAAK,EAAEG,CAAC,CAACC,GAAG,CAAC,WAAUC,CAAC;QACtB,MAAMe,OAAO,GAAG,OAAOf,CAAC,CAACF,CAAC,CAACI,OAAO,CAACC,GAAG,CAACa,iBAAiB,CAAC,CAAC;QAC1D,MAAMC,WAAW,GAAGF,OAAO,CAACG,cAAc,EAAE;QAC5C,MAAMC,aAAa,GAAG,OAAOnB,CAAC,CAACF,CAAC,CAACI,OAAO,CAACC,GAAG,CAACiB,gBAAgB,CAAC,CAAC;QAE/D,IAAIX,IAAI,CAACY,IAAI,EAAE;UACbF,aAAa,CAACG,WAAW,CAAC1B,UAAU,EAAE;YAAE2B,GAAG,EAAEd,IAAI,CAACY,IAAI,CAACE,GAAG,GAAG,CAAC;YAAEC,GAAG,EAAEf,IAAI,CAACY,IAAI,CAACG;UAAG,CAAE,CAAC;UACrF;;QAGF,MAAMb,WAAW,GAAGF,IAAI,CAACE,WAAY;QACrC,MAAMc,eAAe,GAAGR,WAAW,CAACS,iBAAiB,CAACf,WAAW,CAAC;QAClE,MAAMgB,mBAAmB,GAAGV,WAAW,CAACW,cAAc,CACpDH,eAAe,EACfhB,IAAI,EACJR,EAAE,CAAC4B,gBAAgB,CAACC,YAAY,CACjC;QACD,IAAIH,mBAAmB,EAAE;UACvBR,aAAa,CAACY,YAAY,CAACnC,UAAU,EAAEa,IAAI,CAAChB,IAAI,CAAC+B,GAAG,EAAEG,mBAAmB,EAAE;YAAEK,MAAM,EAAE;UAAI,CAAE,CAAC;;MAEhG,CAAC;KACF,CAAC,CACH,CACF;EACH,CAAC;CACJ,CAAC;AAAA","names":["name","description","apply","sourceFile","textRange","T","gen","$","ts","service","AST","TypeScriptApi","getNodesContainingRange","Ch","filter","isVariableDeclaration","node","isNodeInRange","initializer","head","O","map","program","TypeScriptProgram","typeChecker","getTypeChecker","changeTracker","ChangeTrackerApi","type","deleteRange","pos","end","initializerType","getTypeAtLocation","initializerTypeNode","typeToTypeNode","NodeBuilderFlags","NoTruncation","insertNodeAt","prefix"],"sourceRoot":"","sources":["../../../src/refactors/toggleTypeAnnotation.ts"],"sourcesContent":[null]}
|
package/utils.d.ts
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import * as T from "@effect/core/io/Effect";
|
|
2
|
+
import * as AST from "@effect/language-service/ast";
|
|
3
|
+
import * as O from "@tsplus/stdlib/data/Maybe";
|
|
4
|
+
import type ts from "typescript/lib/tsserverlibrary";
|
|
5
|
+
export declare function isPipeCall(ts: AST.TypeScriptApi): (node: ts.Node) => node is ts.CallExpression;
|
|
6
|
+
export declare function asPipeableCallExpression(ts: AST.TypeScriptApi): (node: ts.Node) => O.None | O.Some<readonly [ts.LeftHandSideExpression, ts.Expression]>;
|
|
7
|
+
export declare function asPipeArguments(ts: AST.TypeScriptApi): (initialNode: ts.Node) => Iterable<ts.Expression>;
|
|
8
|
+
export declare function isPipeableCallExpression(ts: AST.TypeScriptApi): (node: ts.Node) => node is ts.CallExpression;
|
|
9
|
+
export declare function isCombinatorCall(ts: AST.TypeScriptApi): (moduleIdentifier: string, moduleMethodName: string) => (node: ts.Node) => node is ts.CallExpression;
|
|
10
|
+
export declare function findModuleImportIdentifierName(ts: AST.TypeScriptApi): (sourceFile: ts.SourceFile, moduleName: string) => O.Maybe<string>;
|
|
11
|
+
export declare function isCurryArrow(ts: AST.TypeScriptApi): (arrow: ts.Node) => arrow is ts.ArrowFunction;
|
|
12
|
+
export declare function isLiteralConstantValue(ts: AST.TypeScriptApi): (node: ts.Node) => boolean;
|
|
13
|
+
export declare function transformAsyncAwaitToEffectGen(node: ts.FunctionDeclaration | ts.ArrowFunction | ts.FunctionExpression, effectName: string, onAwait: (expression: ts.Expression) => ts.Expression): T.Effect<typeof ts, never, ts.FunctionDeclaration | ts.FunctionExpression | ts.ArrowFunction>;
|
|
14
|
+
export declare function addReturnTypeAnnotation(ts: AST.TypeScriptApi, changes: ts.textChanges.ChangeTracker): (sourceFile: ts.SourceFile, declaration: ts.FunctionDeclaration | ts.FunctionExpression | ts.ArrowFunction | ts.MethodDeclaration, typeNode: ts.TypeNode) => void;
|
|
15
|
+
//# sourceMappingURL=utils.d.ts.map
|
package/utils.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,wBAAwB,CAAA;AAC3C,OAAO,KAAK,GAAG,MAAM,8BAA8B,CAAA;AAGnD,OAAO,KAAK,CAAC,MAAM,2BAA2B,CAAA;AAC9C,OAAO,KAAK,EAAE,MAAM,gCAAgC,CAAA;AAEpD,wBAAgB,UAAU,CAAC,EAAE,EAAE,GAAG,CAAC,aAAa,UAChC,GAAG,IAAI,+BAOtB;AAED,wBAAgB,wBAAwB,CAAC,EAAE,EAAE,GAAG,CAAC,aAAa,UAC9C,GAAG,IAAI,0EAatB;AAED,wBAAgB,eAAe,CAAC,EAAE,EAAE,GAAG,CAAC,aAAa,iBAC9B,GAAG,IAAI,6BAgB7B;AAED,wBAAgB,wBAAwB,CAAC,EAAE,EAAE,GAAG,CAAC,aAAa,UAC9C,GAAG,IAAI,+BACtB;AAED,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,GAAG,CAAC,aAAa,sBAC1B,MAAM,oBAAoB,MAAM,YACjD,GAAG,IAAI,+BAYjB;AAED,wBAAgB,8BAA8B,CAC5C,EAAE,EAAE,GAAG,CAAC,aAAa,gBAED,GAAG,UAAU,cAAc,MAAM,qBActD;AAED,wBAAgB,YAAY,CAAC,EAAE,EAAE,GAAG,CAAC,aAAa,WACjC,GAAG,IAAI,+BAcvB;AAED,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,GAAG,CAAC,aAAa,UAC5C,GAAG,IAAI,aAKtB;AAED,wBAAgB,8BAA8B,CAC5C,IAAI,EAAE,EAAE,CAAC,mBAAmB,GAAG,EAAE,CAAC,aAAa,GAAG,EAAE,CAAC,kBAAkB,EACvE,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,KAAK,EAAE,CAAC,UAAU,iGA6EtD;AAED,wBAAgB,uBAAuB,CACrC,EAAE,EAAE,GAAG,CAAC,aAAa,EACrB,OAAO,EAAE,EAAE,CAAC,WAAW,CAAC,aAAa,gBAGvB,GAAG,UAAU,eAErB,GAAG,mBAAmB,GACtB,GAAG,kBAAkB,GACrB,GAAG,aAAa,GAChB,GAAG,iBAAiB,YACd,GAAG,QAAQ,UAaxB"}
|