@astrojs/ts-plugin 0.2.1 → 0.4.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/.turbo/turbo-build.log +5 -2
- package/CHANGELOG.md +16 -0
- package/LICENSE +36 -0
- package/README.md +1 -1
- package/dist/astro-snapshots.js +48 -47
- package/dist/astro-sys.js +22 -35
- package/dist/astro2tsx.js +17 -41
- package/dist/index.js +38 -39
- package/dist/language-service/completions.js +42 -42
- package/dist/language-service/definition.js +22 -40
- package/dist/language-service/diagnostics.js +15 -18
- package/dist/language-service/file-references.js +52 -0
- package/dist/language-service/find-references.js +20 -38
- package/dist/language-service/implementation.js +18 -37
- package/dist/language-service/index.js +26 -42
- package/dist/language-service/line-column-offset.js +44 -0
- package/dist/language-service/rename.js +24 -37
- package/dist/logger.js +18 -5
- package/dist/module-loader.js +28 -22
- package/dist/project-astro-files.js +125 -0
- package/dist/utils.js +34 -19
- package/dist/workers/TSXService.js +39 -0
- package/dist/workers/TSXWorker.js +9 -0
- package/package.json +36 -27
- package/src/astro-snapshots.ts +270 -291
- package/src/astro-sys.ts +22 -22
- package/src/astro2tsx.ts +5 -50
- package/src/index.ts +49 -60
- package/src/language-service/completions.ts +56 -64
- package/src/language-service/definition.ts +35 -42
- package/src/language-service/diagnostics.ts +32 -33
- package/src/language-service/file-references.ts +31 -0
- package/src/language-service/find-references.ts +67 -76
- package/src/language-service/implementation.ts +27 -34
- package/src/language-service/index.ts +17 -32
- package/src/language-service/line-column-offset.ts +21 -0
- package/src/language-service/rename.ts +38 -48
- package/src/logger.ts +32 -36
- package/src/module-loader.ts +124 -124
- package/src/project-astro-files.ts +130 -0
- package/src/utils.ts +54 -45
- package/src/workers/TSXService.ts +11 -0
- package/src/workers/TSXWorker.ts +8 -0
- package/test/fixtures/MyAstroComponent.astro +5 -0
- package/test/fixtures/script.ts +9 -0
- package/test/fixtures/tsconfig.json +3 -0
- package/test/runTest.js +41 -0
- package/test/suite/extension.test.js +68 -0
- package/test/suite/index.js +38 -0
- package/test/tsconfig.json +14 -0
- package/test/utils.js +65 -0
- package/tsconfig.json +2 -1
- package/dist/source-mapper.js +0 -114
- package/src/source-mapper.ts +0 -123
package/.turbo/turbo-build.log
CHANGED
|
@@ -1,2 +1,5 @@
|
|
|
1
|
-
@astrojs/ts-plugin:build: cache hit, replaying output
|
|
2
|
-
@astrojs/ts-plugin:build:
|
|
1
|
+
@astrojs/ts-plugin:build: cache hit, replaying output 8078155e876ab96c
|
|
2
|
+
@astrojs/ts-plugin:build:
|
|
3
|
+
@astrojs/ts-plugin:build: > @astrojs/ts-plugin@0.4.0 build /home/runner/work/language-tools/language-tools/packages/ts-plugin
|
|
4
|
+
@astrojs/ts-plugin:build: > astro-scripts build "src/**/*.ts"
|
|
5
|
+
@astrojs/ts-plugin:build:
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,21 @@
|
|
|
1
1
|
# @astrojs/ts-plugin
|
|
2
2
|
|
|
3
|
+
## 0.4.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- c8cdef9: Improved support for `.astro` imports inside JavaScript/TypeScript files:
|
|
8
|
+
- Added support for finding file references inside Astro files
|
|
9
|
+
- Added support for path completions for .astro, .md and .mdx files
|
|
10
|
+
- Fixed cases where our TypeScript plugin would fail to load under certain circumstance
|
|
11
|
+
- Fixed certain cases where Go to definition / implementation would fail
|
|
12
|
+
|
|
13
|
+
## 0.3.0
|
|
14
|
+
|
|
15
|
+
### Minor Changes
|
|
16
|
+
|
|
17
|
+
- b66ae70: Update the VS Code extension to use a bundled version of the language server for better performance and compatibility with running the extension in the web
|
|
18
|
+
|
|
3
19
|
## 0.2.1
|
|
4
20
|
|
|
5
21
|
### Patch Changes
|
package/LICENSE
ADDED
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2022 The Astro Technology Company
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
22
|
+
|
|
23
|
+
"""
|
|
24
|
+
|
|
25
|
+
This license applies to code originating from the https://github.com/sveltejs/language-tools repository,
|
|
26
|
+
which has provided an extremely solid foundation for us to build upon:
|
|
27
|
+
|
|
28
|
+
Copyright (c) 2020-Present [these people](https://github.com/sveltejs/language-tools/graphs/contributors)
|
|
29
|
+
|
|
30
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
|
31
|
+
|
|
32
|
+
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
|
|
33
|
+
|
|
34
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
35
|
+
|
|
36
|
+
"""
|
package/README.md
CHANGED
package/dist/astro-snapshots.js
CHANGED
|
@@ -1,53 +1,46 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
2
|
var __defProp = Object.defineProperty;
|
|
3
3
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
6
5
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
-
var __markAsModule = (target) => __defProp(target, "__esModule", {value: true});
|
|
8
6
|
var __export = (target, all) => {
|
|
9
7
|
for (var name in all)
|
|
10
|
-
__defProp(target, name, {get: all[name], enumerable: true});
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
9
|
};
|
|
12
|
-
var
|
|
13
|
-
if (
|
|
14
|
-
for (let key of __getOwnPropNames(
|
|
15
|
-
if (!__hasOwnProp.call(
|
|
16
|
-
__defProp(
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
15
|
}
|
|
18
|
-
return
|
|
16
|
+
return to;
|
|
19
17
|
};
|
|
20
|
-
var
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
__markAsModule(exports);
|
|
24
|
-
__export(exports, {
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var astro_snapshots_exports = {};
|
|
20
|
+
__export(astro_snapshots_exports, {
|
|
25
21
|
AstroSnapshot: () => AstroSnapshot,
|
|
26
22
|
AstroSnapshotManager: () => AstroSnapshotManager
|
|
27
23
|
});
|
|
28
|
-
|
|
29
|
-
var
|
|
30
|
-
var
|
|
24
|
+
module.exports = __toCommonJS(astro_snapshots_exports);
|
|
25
|
+
var import_trace_mapping = require("@jridgewell/trace-mapping");
|
|
26
|
+
var import_astro2tsx = require("./astro2tsx.js");
|
|
27
|
+
var import_utils = require("./utils.js");
|
|
31
28
|
class AstroSnapshot {
|
|
32
|
-
constructor(typescript, fileName, astroCode,
|
|
29
|
+
constructor(typescript, fileName, astroCode, traceMap, logger) {
|
|
33
30
|
this.typescript = typescript;
|
|
34
31
|
this.fileName = fileName;
|
|
35
32
|
this.astroCode = astroCode;
|
|
36
|
-
this.
|
|
33
|
+
this.traceMap = traceMap;
|
|
37
34
|
this.logger = logger;
|
|
38
|
-
this.isTsFile = isTsFile;
|
|
39
35
|
this.convertInternalCodePositions = false;
|
|
40
36
|
}
|
|
41
|
-
update(astroCode,
|
|
37
|
+
update(astroCode, traceMap) {
|
|
42
38
|
this.astroCode = astroCode;
|
|
43
|
-
this.
|
|
39
|
+
this.traceMap = traceMap;
|
|
44
40
|
this.lineOffsets = void 0;
|
|
45
41
|
this.log("Updated Snapshot");
|
|
46
42
|
}
|
|
47
43
|
getOriginalTextSpan(textSpan) {
|
|
48
|
-
if (!(0, import_utils.isNoTextSpanInGeneratedCode)(this.getText(), textSpan)) {
|
|
49
|
-
return null;
|
|
50
|
-
}
|
|
51
44
|
const start = this.getOriginalOffset(textSpan.start);
|
|
52
45
|
if (start === -1) {
|
|
53
46
|
return null;
|
|
@@ -64,15 +57,15 @@ class AstroSnapshot {
|
|
|
64
57
|
this.toggleMappingMode(true);
|
|
65
58
|
const lineOffset = this.scriptInfo.positionToLineOffset(generatedOffset);
|
|
66
59
|
this.debug("try convert offset", generatedOffset, "/", lineOffset);
|
|
67
|
-
const original = this.
|
|
68
|
-
line: lineOffset.line
|
|
69
|
-
|
|
60
|
+
const original = (0, import_trace_mapping.originalPositionFor)(this.traceMap, {
|
|
61
|
+
line: lineOffset.line,
|
|
62
|
+
column: lineOffset.offset
|
|
70
63
|
});
|
|
71
64
|
this.toggleMappingMode(false);
|
|
72
|
-
if (original.line
|
|
65
|
+
if (!original.line) {
|
|
73
66
|
return -1;
|
|
74
67
|
}
|
|
75
|
-
const originalOffset = this.scriptInfo.lineOffsetToPosition(original.line
|
|
68
|
+
const originalOffset = this.scriptInfo.lineOffsetToPosition(original.line, original.column);
|
|
76
69
|
this.debug("converted offset to", original, "/", originalOffset);
|
|
77
70
|
return originalOffset;
|
|
78
71
|
}
|
|
@@ -87,17 +80,17 @@ class AstroSnapshot {
|
|
|
87
80
|
}
|
|
88
81
|
const lineOffset = this.positionAt(position);
|
|
89
82
|
this.debug("positionToLineOffset for original code", position, lineOffset);
|
|
90
|
-
return {line: lineOffset.line + 1, offset: lineOffset.character + 1};
|
|
83
|
+
return { line: lineOffset.line + 1, offset: lineOffset.character + 1 };
|
|
91
84
|
};
|
|
92
85
|
const lineOffsetToPosition = scriptInfo.lineOffsetToPosition.bind(scriptInfo);
|
|
93
86
|
scriptInfo.lineOffsetToPosition = (line, offset) => {
|
|
94
87
|
if (this.convertInternalCodePositions) {
|
|
95
88
|
const position2 = lineOffsetToPosition(line, offset);
|
|
96
|
-
this.debug("lineOffsetToPosition for generated code", {line, offset}, position2);
|
|
89
|
+
this.debug("lineOffsetToPosition for generated code", { line, offset }, position2);
|
|
97
90
|
return position2;
|
|
98
91
|
}
|
|
99
|
-
const position = this.offsetAt({line: line - 1, character: offset - 1});
|
|
100
|
-
this.debug("lineOffsetToPosition for original code", {line, offset}, position);
|
|
92
|
+
const position = this.offsetAt({ line: line - 1, character: offset - 1 });
|
|
93
|
+
this.debug("lineOffsetToPosition for original code", { line, offset }, position);
|
|
101
94
|
return position;
|
|
102
95
|
};
|
|
103
96
|
this.scriptInfo = scriptInfo;
|
|
@@ -109,7 +102,7 @@ class AstroSnapshot {
|
|
|
109
102
|
let low = 0;
|
|
110
103
|
let high = lineOffsets.length;
|
|
111
104
|
if (high === 0) {
|
|
112
|
-
return {line: 0, character: offset};
|
|
105
|
+
return { line: 0, character: offset };
|
|
113
106
|
}
|
|
114
107
|
while (low < high) {
|
|
115
108
|
const mid = Math.floor((low + high) / 2);
|
|
@@ -120,7 +113,7 @@ class AstroSnapshot {
|
|
|
120
113
|
}
|
|
121
114
|
}
|
|
122
115
|
const line = low - 1;
|
|
123
|
-
return {line, character: offset - lineOffsets[line]};
|
|
116
|
+
return { line, character: offset - lineOffsets[line] };
|
|
124
117
|
}
|
|
125
118
|
offsetAt(position) {
|
|
126
119
|
const lineOffsets = this.getLineOffsets();
|
|
@@ -183,7 +176,7 @@ class AstroSnapshotManager {
|
|
|
183
176
|
this.typescript = typescript;
|
|
184
177
|
this.projectService = projectService;
|
|
185
178
|
this.logger = logger;
|
|
186
|
-
this.snapshots = new Map();
|
|
179
|
+
this.snapshots = /* @__PURE__ */ new Map();
|
|
187
180
|
this.patchProjectServiceReadFile();
|
|
188
181
|
}
|
|
189
182
|
get(fileName) {
|
|
@@ -193,7 +186,10 @@ class AstroSnapshotManager {
|
|
|
193
186
|
if (this.snapshots.has(fileName)) {
|
|
194
187
|
return this.snapshots.get(fileName);
|
|
195
188
|
}
|
|
196
|
-
const scriptInfo = this.projectService.getOrCreateScriptInfoForNormalizedPath(
|
|
189
|
+
const scriptInfo = this.projectService.getOrCreateScriptInfoForNormalizedPath(
|
|
190
|
+
this.typescript.server.toNormalizedPath(fileName),
|
|
191
|
+
false
|
|
192
|
+
);
|
|
197
193
|
if (!scriptInfo) {
|
|
198
194
|
this.logger.log("Was not able get snapshot for", fileName);
|
|
199
195
|
return;
|
|
@@ -219,16 +215,21 @@ class AstroSnapshotManager {
|
|
|
219
215
|
this.logger.debug("Read Astro file:", path);
|
|
220
216
|
const astroCode = readFile(path) || "";
|
|
221
217
|
try {
|
|
222
|
-
const
|
|
223
|
-
const result = (0, import_astro2tsx.astro2tsx)(astroCode, {
|
|
224
|
-
filename: path.split("/").pop(),
|
|
225
|
-
isTsFile
|
|
226
|
-
});
|
|
218
|
+
const result = (0, import_astro2tsx.astro2tsx)(astroCode, path);
|
|
227
219
|
const existingSnapshot = this.snapshots.get(path);
|
|
228
220
|
if (existingSnapshot) {
|
|
229
|
-
existingSnapshot.update(astroCode, new
|
|
221
|
+
existingSnapshot.update(astroCode, new import_trace_mapping.TraceMap(result.map));
|
|
230
222
|
} else {
|
|
231
|
-
this.snapshots.set(
|
|
223
|
+
this.snapshots.set(
|
|
224
|
+
path,
|
|
225
|
+
new AstroSnapshot(
|
|
226
|
+
this.typescript,
|
|
227
|
+
path,
|
|
228
|
+
astroCode,
|
|
229
|
+
new import_trace_mapping.TraceMap(result.map),
|
|
230
|
+
this.logger
|
|
231
|
+
)
|
|
232
|
+
);
|
|
232
233
|
}
|
|
233
234
|
this.logger.log("Successfully read Astro file contents of", path);
|
|
234
235
|
return result.code;
|
|
@@ -247,4 +248,4 @@ class AstroSnapshotManager {
|
|
|
247
248
|
AstroSnapshot,
|
|
248
249
|
AstroSnapshotManager
|
|
249
250
|
});
|
|
250
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
251
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vc3JjL2FzdHJvLXNuYXBzaG90cy50cyJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLDJCQUFnRTtBQUVoRSx1QkFBMEI7QUFFMUIsbUJBQWdDO0FBRXpCLE1BQU0sY0FBYztBQUFBLEVBSzFCLFlBQ1MsWUFDQSxVQUNBLFdBQ0EsVUFDQSxRQUNQO0FBTE87QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQVBULFNBQVEsK0JBQStCO0FBQUEsRUFRcEM7QUFBQSxFQUVILE9BQU8sV0FBbUIsVUFBb0I7QUFDN0MsU0FBSyxZQUFZO0FBQ2pCLFNBQUssV0FBVztBQUNoQixTQUFLLGNBQWM7QUFDbkIsU0FBSyxJQUFJLGtCQUFrQjtBQUFBLEVBQzVCO0FBQUEsRUFFQSxvQkFBb0IsVUFBMkM7QUFDOUQsVUFBTSxRQUFRLEtBQUssa0JBQWtCLFNBQVMsS0FBSztBQUNuRCxRQUFJLFVBQVUsSUFBSTtBQUNqQixhQUFPO0FBQUEsSUFDUjtBQUdBLFdBQU87QUFBQSxNQUNOO0FBQUEsTUFDQSxRQUFRLFNBQVM7QUFBQSxJQUNsQjtBQUFBLEVBQ0Q7QUFBQSxFQUVBLGtCQUFrQixpQkFBeUI7QUFDMUMsUUFBSSxDQUFDLEtBQUssWUFBWTtBQUNyQixhQUFPO0FBQUEsSUFDUjtBQUVBLFNBQUssa0JBQWtCLElBQUk7QUFDM0IsVUFBTSxhQUFhLEtBQUssV0FBVyxxQkFBcUIsZUFBZTtBQUN2RSxTQUFLLE1BQU0sc0JBQXNCLGlCQUFpQixLQUFLLFVBQVU7QUFDakUsVUFBTSxlQUFXLDBDQUFvQixLQUFLLFVBQVU7QUFBQSxNQUNuRCxNQUFNLFdBQVc7QUFBQSxNQUNqQixRQUFRLFdBQVc7QUFBQSxJQUNwQixDQUFDO0FBQ0QsU0FBSyxrQkFBa0IsS0FBSztBQUU1QixRQUFJLENBQUMsU0FBUyxNQUFNO0FBQ25CLGFBQU87QUFBQSxJQUNSO0FBRUEsVUFBTSxpQkFBaUIsS0FBSyxX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RUEsT0FBTyxVQUE2QztBQUNuRCxRQUFJLEtBQUssVUFBVSxJQUFJLFFBQVEsR0FBRztBQUNqQyxhQUFPLEtBQUssVUFBVSxJQUFJLFFBQVE7QUFBQSxJQUNuQztBQUdBLFVBQU0sYUFBYSxLQUFLLGVBQWU7QUFBQSxNQUN0QyxLQUFLLFdBQVcsT0FBTyxpQkFBaUIsUUFBUTtBQUFBLE1BQ2hEO0FBQUEsSUFDRDtBQUNBLFFBQUksQ0FBQyxZQUFZO0FBQ2hCLFdBQUssT0FBTyxJQUFJLGlDQUFpQyxRQUFRO0FBQ3pEO0FBQUEsSUFDRDtBQUVBLFFBQUk7QUFDSCxpQkFBVyxZQUFZO0FBQUEsSUFDeEIsU0FBUyxHQUFQO0FBQ0QsV0FBSyxPQUFPLElBQUksMkJBQTJCLFFBQVE7QUFBQSxJQUNwRDtBQUNBLFVBQU0sV0FBVyxLQUFLLFVBQVUsSUFBSSxRQUFRO0FBQzVDLFFBQUksQ0FBQyxVQUFVO0FBQ2QsV0FBSyxPQUFPLElBQUkseUVBQXlFLFFBQVE7QUFDakc7QUFBQSxJQUNEO0FBQ0EsYUFBUyxzQkFBc0IsVUFBVTtBQUN6QyxTQUFLLFVBQVUsSUFBSSxVQUFVLFFBQVE7QUFDckMsV0FBTztBQUFBLEVBQ1I7QUFBQSxFQUVRLDhCQUE4QjtBQUNyQyxVQUFNLFdBQVcsS0FBSyxlQUFlLEtBQUs7QUFDMUMsU0FBSyxlQUFlLEtBQUssV0FBVyxDQUFDLFNBQWlCO0FBQ3JELGNBQUksOEJBQWdCLElBQUksR0FBRztBQUMxQixhQUFLLE9BQU8sTUFBTSxvQkFBb0IsSUFBSTtBQUMxQyxjQUFNLFlBQVksU0FBUyxJQUFJLEtBQUs7QUFDcEMsWUFBSTtBQUNILGdCQUFNLGFBQVMsNEJBQVUsV0FBVyxJQUFJO0FBQ3hDLGdCQUFNLG1CQUFtQixLQUFLLFVBQVUsSUFBSSxJQUFJO0FBQ2hELGNBQUksa0JBQWtCO0FBQ3JCLDZCQUFpQixPQUFPLFdBQVcsSUFBSSw4QkFBUyxPQUFPLEdBQXVCLENBQUM7QUFBQSxVQUNoRixPQUFPO0FBQ04saUJBQUssVUFBVTtBQUFBLGNBQ2Q7QUFBQSxjQUNBLElBQUk7QUFBQSxnQkFDSCxLQUFLO0FBQUEsZ0JBQ0w7QUFBQSxnQkFDQTtBQUFBLGdCQUNBLElBQUksOEJBQVMsT0FBTyxHQUF1QjtBQUFBLGdCQUMzQyxLQUFLO0FBQUEsY0FDTjtBQUFBLFlBQ0Q7QUFBQSxVQUNEO0FBQ0EsZUFBSyxPQUFPLElBQUksNENBQTRDLElBQUk7QUFDaEUsaUJBQU8sT0FBTztBQUFBLFFBQ2YsU0FBUyxHQUFQO0FBQ0QsZUFBSyxPQUFPLElBQUksNkJBQTZCLElBQUk7QUFDakQsZUFBSyxPQUFPLE1BQU0sVUFBVSxDQUFDO0FBQUEsUUFDOUI7QUFBQSxNQUNELE9BQU87QUFDTixlQUFPLFNBQVMsSUFBSTtBQUFBLE1BQ3JCO0FBQUEsSUFDRDtBQUFBLEVBQ0Q7QUFDRDsiLAogICJuYW1lcyI6IFsibGluZU9mZnNldCIsICJwb3NpdGlvbiJdCn0K
|
package/dist/astro-sys.js
CHANGED
|
@@ -1,50 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
1
2
|
var __create = Object.create;
|
|
2
3
|
var __defProp = Object.defineProperty;
|
|
3
|
-
var __defProps = Object.defineProperties;
|
|
4
4
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
-
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
6
5
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
7
|
-
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
8
6
|
var __getProtoOf = Object.getPrototypeOf;
|
|
9
7
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
10
|
-
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
11
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, {enumerable: true, configurable: true, writable: true, value}) : obj[key] = value;
|
|
12
|
-
var __spreadValues = (a, b) => {
|
|
13
|
-
for (var prop in b || (b = {}))
|
|
14
|
-
if (__hasOwnProp.call(b, prop))
|
|
15
|
-
__defNormalProp(a, prop, b[prop]);
|
|
16
|
-
if (__getOwnPropSymbols)
|
|
17
|
-
for (var prop of __getOwnPropSymbols(b)) {
|
|
18
|
-
if (__propIsEnum.call(b, prop))
|
|
19
|
-
__defNormalProp(a, prop, b[prop]);
|
|
20
|
-
}
|
|
21
|
-
return a;
|
|
22
|
-
};
|
|
23
|
-
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
24
|
-
var __markAsModule = (target) => __defProp(target, "__esModule", {value: true});
|
|
25
8
|
var __export = (target, all) => {
|
|
26
9
|
for (var name in all)
|
|
27
|
-
__defProp(target, name, {get: all[name], enumerable: true});
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
28
11
|
};
|
|
29
|
-
var
|
|
30
|
-
if (
|
|
31
|
-
for (let key of __getOwnPropNames(
|
|
32
|
-
if (!__hasOwnProp.call(
|
|
33
|
-
__defProp(
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
34
17
|
}
|
|
35
|
-
return
|
|
36
|
-
};
|
|
37
|
-
var __toModule = (module2) => {
|
|
38
|
-
return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", module2 && module2.__esModule && "default" in module2 ? {get: () => module2.default, enumerable: true} : {value: module2, enumerable: true})), module2);
|
|
18
|
+
return to;
|
|
39
19
|
};
|
|
40
|
-
|
|
41
|
-
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
22
|
+
mod
|
|
23
|
+
));
|
|
24
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
25
|
+
var astro_sys_exports = {};
|
|
26
|
+
__export(astro_sys_exports, {
|
|
42
27
|
createAstroSys: () => createAstroSys
|
|
43
28
|
});
|
|
44
|
-
|
|
45
|
-
var
|
|
29
|
+
module.exports = __toCommonJS(astro_sys_exports);
|
|
30
|
+
var import_typescript = __toESM(require("typescript"));
|
|
31
|
+
var import_utils = require("./utils.js");
|
|
46
32
|
function createAstroSys(logger) {
|
|
47
|
-
const astroSys =
|
|
33
|
+
const astroSys = {
|
|
34
|
+
...import_typescript.default.sys,
|
|
48
35
|
fileExists(path) {
|
|
49
36
|
return import_typescript.default.sys.fileExists((0, import_utils.ensureRealAstroFilePath)(path));
|
|
50
37
|
},
|
|
@@ -52,7 +39,7 @@ function createAstroSys(logger) {
|
|
|
52
39
|
const extensionsWithAstro = (extensions != null ? extensions : []).concat(".astro");
|
|
53
40
|
return import_typescript.default.sys.readDirectory(path, extensionsWithAstro, exclude, include, depth);
|
|
54
41
|
}
|
|
55
|
-
}
|
|
42
|
+
};
|
|
56
43
|
if (import_typescript.default.sys.realpath) {
|
|
57
44
|
const realpath = import_typescript.default.sys.realpath;
|
|
58
45
|
astroSys.realpath = function(path) {
|
|
@@ -68,4 +55,4 @@ function createAstroSys(logger) {
|
|
|
68
55
|
0 && (module.exports = {
|
|
69
56
|
createAstroSys
|
|
70
57
|
});
|
|
71
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vc3JjL2FzdHJvLXN5cy50cyJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSx3QkFBZTtBQUVmLG1CQUFxRjtBQUs5RSxTQUFTLGVBQWUsUUFBZ0I7QUFDOUMsUUFBTSxXQUFzQjtBQUFBLElBQzNCLEdBQUcsa0JBQUFBLFFBQUc7QUFBQSxJQUNOLFdBQVcsTUFBYztBQUN4QixhQUFPLGtCQUFBQSxRQUFHLElBQUksZUFBVyxzQ0FBd0IsSUFBSSxDQUFDO0FBQUEsSUFDdkQ7QUFBQSxJQUNBLGNBQWMsTUFBTSxZQUFZLFNBQVMsU0FBUyxPQUFPO0FBQ3hELFlBQU0sdUJBQXVCLGtDQUFjLENBQUMsR0FBRyxPQUFPLFFBQVE7QUFFOUQsYUFBTyxrQkFBQUEsUUFBRyxJQUFJLGNBQWMsTUFBTSxxQkFBcUIsU0FBUyxTQUFTLEtBQUs7QUFBQSxJQUMvRTtBQUFBLEVBQ0Q7QUFFQSxNQUFJLGtCQUFBQSxRQUFHLElBQUksVUFBVTtBQUNwQixVQUFNLFdBQVcsa0JBQUFBLFFBQUcsSUFBSTtBQUN4QixhQUFTLFdBQVcsU0FBVSxNQUFNO0FBQ25DLGNBQUkscUNBQXVCLElBQUksR0FBRztBQUNqQyxlQUFPLGFBQVMsa0NBQW9CLElBQUksQ0FBQyxJQUFJO0FBQUEsTUFDOUM7QUFDQSxhQUFPLFNBQVMsSUFBSTtBQUFBLElBQ3JCO0FBQUEsRUFDRDtBQUVBLFNBQU87QUFDUjsiLAogICJuYW1lcyI6IFsidHMiXQp9Cg==
|
package/dist/astro2tsx.js
CHANGED
|
@@ -1,57 +1,33 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
2
|
var __defProp = Object.defineProperty;
|
|
3
3
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
6
5
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
-
var __markAsModule = (target) => __defProp(target, "__esModule", {value: true});
|
|
8
6
|
var __export = (target, all) => {
|
|
9
7
|
for (var name in all)
|
|
10
|
-
__defProp(target, name, {get: all[name], enumerable: true});
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
9
|
};
|
|
12
|
-
var
|
|
13
|
-
if (
|
|
14
|
-
for (let key of __getOwnPropNames(
|
|
15
|
-
if (!__hasOwnProp.call(
|
|
16
|
-
__defProp(
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
15
|
}
|
|
18
|
-
return
|
|
16
|
+
return to;
|
|
19
17
|
};
|
|
20
|
-
var
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
__markAsModule(exports);
|
|
24
|
-
__export(exports, {
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var astro2tsx_exports = {};
|
|
20
|
+
__export(astro2tsx_exports, {
|
|
25
21
|
astro2tsx: () => astro2tsx
|
|
26
22
|
});
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
const
|
|
31
|
-
|
|
32
|
-
map: {
|
|
33
|
-
mappings: []
|
|
34
|
-
}
|
|
35
|
-
};
|
|
36
|
-
return result;
|
|
37
|
-
}
|
|
38
|
-
function addProps(content) {
|
|
39
|
-
let defaultExportType = "Record<string, any>";
|
|
40
|
-
const project = new import_ts_morph.Project({});
|
|
41
|
-
const sourceFile = project.createSourceFile("testing.ts", content);
|
|
42
|
-
const declarations = sourceFile.getExportedDeclarations();
|
|
43
|
-
if (declarations.has("Props")) {
|
|
44
|
-
defaultExportType = "Props";
|
|
45
|
-
}
|
|
46
|
-
return `
|
|
47
|
-
export default function (props: ${defaultExportType}): string;`;
|
|
48
|
-
}
|
|
49
|
-
function transformContent(content) {
|
|
50
|
-
const ts = content.replace(/---/g, "///");
|
|
51
|
-
return ts + addProps(ts);
|
|
23
|
+
module.exports = __toCommonJS(astro2tsx_exports);
|
|
24
|
+
var import_TSXService = require("./workers/TSXService");
|
|
25
|
+
function astro2tsx(content, fileName) {
|
|
26
|
+
const tsx = (0, import_TSXService.convertToTSX)(content, { sourcefile: fileName });
|
|
27
|
+
return tsx;
|
|
52
28
|
}
|
|
53
29
|
// Annotate the CommonJS export names for ESM import in node:
|
|
54
30
|
0 && (module.exports = {
|
|
55
31
|
astro2tsx
|
|
56
32
|
});
|
|
57
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vc3JjL2FzdHJvMnRzeC50cyJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFDQSx3QkFBNkI7QUFFdEIsU0FBUyxVQUFVLFNBQWlCLFVBQTZCO0FBQ3ZFLFFBQU0sVUFBTSxnQ0FBYSxTQUFTLEVBQUUsWUFBWSxTQUFTLENBQUM7QUFFMUQsU0FBTztBQUNSOyIsCiAgIm5hbWVzIjogW10KfQo=
|
package/dist/index.js
CHANGED
|
@@ -1,55 +1,54 @@
|
|
|
1
|
-
|
|
2
|
-
var
|
|
3
|
-
var
|
|
4
|
-
var
|
|
5
|
-
var
|
|
6
|
-
var
|
|
7
|
-
var
|
|
8
|
-
var __reExport = (target, module2, desc) => {
|
|
9
|
-
if (module2 && typeof module2 === "object" || typeof module2 === "function") {
|
|
10
|
-
for (let key of __getOwnPropNames(module2))
|
|
11
|
-
if (!__hasOwnProp.call(target, key) && key !== "default")
|
|
12
|
-
__defProp(target, key, {get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable});
|
|
13
|
-
}
|
|
14
|
-
return target;
|
|
15
|
-
};
|
|
16
|
-
var __toModule = (module2) => {
|
|
17
|
-
return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", module2 && module2.__esModule && "default" in module2 ? {get: () => module2.default, enumerable: true} : {value: module2, enumerable: true})), module2);
|
|
18
|
-
};
|
|
19
|
-
var import_language_service = __toModule(require("./language-service/index.js"));
|
|
20
|
-
var import_logger = __toModule(require("./logger.js"));
|
|
21
|
-
var import_module_loader = __toModule(require("./module-loader.js"));
|
|
22
|
-
var import_astro_snapshots = __toModule(require("./astro-snapshots.js"));
|
|
1
|
+
"use strict";
|
|
2
|
+
var import_astro_snapshots = require("./astro-snapshots.js");
|
|
3
|
+
var import_language_service = require("./language-service/index.js");
|
|
4
|
+
var import_logger = require("./logger.js");
|
|
5
|
+
var import_module_loader = require("./module-loader.js");
|
|
6
|
+
var import_project_astro_files = require("./project-astro-files.js");
|
|
7
|
+
var import_utils = require("./utils.js");
|
|
23
8
|
function init(modules) {
|
|
9
|
+
const ts = modules.typescript;
|
|
24
10
|
function create(info) {
|
|
11
|
+
var _a, _b;
|
|
25
12
|
const logger = new import_logger.Logger(info.project.projectService.logger);
|
|
26
|
-
|
|
13
|
+
const parsedCommandLine = (_b = (_a = info.languageServiceHost).getParsedCommandLine) == null ? void 0 : _b.call(_a, (0, import_utils.getConfigPathForProject)(info.project));
|
|
14
|
+
if (!isAstroProject(info.project, parsedCommandLine)) {
|
|
27
15
|
logger.log("Detected that this is not an Astro project, abort patching TypeScript");
|
|
28
16
|
return info.languageService;
|
|
29
17
|
}
|
|
30
18
|
logger.log("Starting Astro plugin");
|
|
31
19
|
const snapshotManager = new import_astro_snapshots.AstroSnapshotManager(modules.typescript, info.project.projectService, logger);
|
|
32
|
-
|
|
20
|
+
if (parsedCommandLine) {
|
|
21
|
+
new import_project_astro_files.ProjectAstroFilesManager(
|
|
22
|
+
modules.typescript,
|
|
23
|
+
info.project,
|
|
24
|
+
info.serverHost,
|
|
25
|
+
snapshotManager,
|
|
26
|
+
parsedCommandLine
|
|
27
|
+
);
|
|
28
|
+
}
|
|
33
29
|
(0, import_module_loader.patchModuleLoader)(logger, snapshotManager, modules.typescript, info.languageServiceHost, info.project);
|
|
34
30
|
return (0, import_language_service.decorateLanguageService)(info.languageService, snapshotManager, logger);
|
|
35
31
|
}
|
|
36
|
-
function getExternalFiles(
|
|
37
|
-
|
|
32
|
+
function getExternalFiles(project) {
|
|
33
|
+
var _a, _b;
|
|
34
|
+
return (_b = (_a = import_project_astro_files.ProjectAstroFilesManager.getInstance(project.getProjectName())) == null ? void 0 : _a.getFiles()) != null ? _b : [];
|
|
38
35
|
}
|
|
39
|
-
function
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
36
|
+
function isAstroProject(project, parsedCommandLine) {
|
|
37
|
+
if (parsedCommandLine) {
|
|
38
|
+
const astroFiles = (0, import_utils.readProjectAstroFilesFromFs)(ts, project, parsedCommandLine);
|
|
39
|
+
if (astroFiles.length > 0)
|
|
40
|
+
return true;
|
|
41
|
+
}
|
|
42
|
+
try {
|
|
43
|
+
const compilerOptions = project.getCompilerOptions();
|
|
44
|
+
const hasAstroInstalled = typeof compilerOptions.configFilePath !== "string" || require.resolve("astro", { paths: [compilerOptions.configFilePath] });
|
|
45
|
+
return hasAstroInstalled;
|
|
46
|
+
} catch (e) {
|
|
47
|
+
project.projectService.logger.info(e);
|
|
48
|
+
return false;
|
|
45
49
|
}
|
|
46
50
|
}
|
|
47
|
-
|
|
48
|
-
const compilerOptions = info.project.getCompilerOptions();
|
|
49
|
-
const isNoJsxProject = (!compilerOptions.jsx || compilerOptions.jsx === modules.typescript.JsxEmit.Preserve) && (!compilerOptions.jsxFactory || compilerOptions.jsxFactory.startsWith("astro")) && !compilerOptions.jsxFragmentFactory && !compilerOptions.jsxImportSource;
|
|
50
|
-
return isNoJsxProject;
|
|
51
|
-
}
|
|
52
|
-
return {create, getExternalFiles};
|
|
51
|
+
return { create, getExternalFiles };
|
|
53
52
|
}
|
|
54
53
|
module.exports = init;
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
54
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vc3JjL2luZGV4LnRzIl0sCiAgIm1hcHBpbmdzIjogIjtBQUNBLDZCQUFxQztBQUNyQyw4QkFBd0M7QUFDeEMsb0JBQXVCO0FBQ3ZCLDJCQUFrQztBQUNsQyxpQ0FBeUM7QUFDekMsbUJBQXFFO0FBRXJFLFNBQVMsS0FBSyxTQUEwRTtBQUN2RixRQUFNLEtBQUssUUFBUTtBQUVuQixXQUFTLE9BQU8sTUFBc0Q7QUFYdkU7QUFZRSxVQUFNLFNBQVMsSUFBSSxxQkFBTyxLQUFLLFFBQVEsZUFBZSxNQUFNO0FBQzVELFVBQU0scUJBQW9CLGdCQUFLLHFCQUFvQix5QkFBekIsZ0NBQWdELHNDQUF3QixLQUFLLE9BQU87QUFFOUcsUUFBSSxDQUFDLGVBQWUsS0FBSyxTQUFTLGlCQUFpQixHQUFHO0FBQ3JELGFBQU8sSUFBSSx1RUFBdUU7QUFDbEYsYUFBTyxLQUFLO0FBQUEsSUFDYjtBQUVBLFdBQU8sSUFBSSx1QkFBdUI7QUFFbEMsVUFBTSxrQkFBa0IsSUFBSSw0Q0FBcUIsUUFBUSxZQUFZLEtBQUssUUFBUSxnQkFBZ0IsTUFBTTtBQUN4RyxRQUFJLG1CQUFtQjtBQUN0QixVQUFJO0FBQUEsUUFDSCxRQUFRO0FBQUEsUUFDUixLQUFLO0FBQUEsUUFDTCxLQUFLO0FBQUEsUUFDTDtBQUFBLFFBQ0E7QUFBQSxNQUNEO0FBQUEsSUFDRDtBQUVBLGdEQUFrQixRQUFRLGlCQUFpQixRQUFRLFlBQVksS0FBSyxxQkFBcUIsS0FBSyxPQUFPO0FBQ3JHLGVBQU8saURBQXdCLEtBQUssaUJBQWlCLGlCQUFpQixNQUFNO0FBQUEsRUFDN0U7QUFFQSxXQUFTLGlCQUFpQixTQUFzQztBQXJDakU7QUFzQ0UsWUFBTywrREFBeUIsWUFBWSxRQUFRLGVBQWUsQ0FBQyxNQUE3RCxtQkFBZ0UsZUFBaEUsWUFBOEUsQ0FBQztBQUFBLEVBQ3ZGO0FBRUEsV0FBUyxlQUFlLFNBQTRCLG1CQUFxRDtBQUN4RyxRQUFJLG1CQUFtQjtBQUN0QixZQUFNLGlCQUFhLDBDQUE0QixJQUFJLFNBQVMsaUJBQWlCO0FBRTdFLFVBQUksV0FBVyxTQUFTO0FBQUcsZUFBTztBQUFBLElBQ25DO0FBRUEsUUFBSTtBQUNILFlBQU0sa0JBQWtCLFFBQVEsbUJBQW1CO0FBQ25ELFlBQU0sb0JBQ0wsT0FBTyxnQkFBZ0IsbUJBQW1CLFlBQzFDLFFBQVEsUUFBUSxTQUFTLEVBQUUsT0FBTyxDQUFDLGdCQUFnQixjQUFjLEVBQUUsQ0FBQztBQUVyRSxhQUFPO0FBQUEsSUFDUixTQUFTLEdBQVA7QUFDRCxjQUFRLGVBQWUsT0FBTyxLQUFLLENBQVc7QUFDOUMsYUFBTztBQUFBLElBQ1I7QUFBQSxFQUNEO0FBRUEsU0FBTyxFQUFFLFFBQVEsaUJBQWlCO0FBQ25DO0FBRUEsaUJBQVM7IiwKICAibmFtZXMiOiBbXQp9Cg==
|