skir 1.2.5 → 1.2.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/casing.d.ts +5 -0
- package/dist/casing.js +23 -0
- package/dist/casing.js.map +1 -0
- package/dist/command_line_parser.d.ts +36 -0
- package/dist/command_line_parser.d.ts.map +1 -0
- package/dist/command_line_parser.js +240 -0
- package/dist/command_line_parser.js.map +1 -0
- package/dist/compatibility_checker.d.ts +74 -0
- package/dist/compatibility_checker.js +331 -0
- package/dist/compatibility_checker.js.map +1 -0
- package/dist/compiler.d.ts +3 -0
- package/dist/compiler.js +406 -0
- package/dist/compiler.js.map +1 -0
- package/dist/completion_helper.d.ts +27 -0
- package/dist/completion_helper.js +101 -0
- package/dist/completion_helper.js.map +1 -0
- package/dist/config.d.ts +18 -0
- package/dist/config.js +19 -0
- package/dist/config.js.map +1 -0
- package/dist/config_parser.d.ts +34 -0
- package/dist/config_parser.js +217 -0
- package/dist/config_parser.js.map +1 -0
- package/dist/definition_finder.d.ts +16 -0
- package/dist/definition_finder.js +375 -0
- package/dist/definition_finder.js.map +1 -0
- package/dist/dependency_manager.d.ts +14 -0
- package/dist/dependency_manager.js +109 -0
- package/dist/dependency_manager.js.map +1 -0
- package/dist/doc_comment_parser.d.ts +6 -0
- package/dist/doc_comment_parser.js +269 -0
- package/dist/doc_comment_parser.js.map +1 -0
- package/dist/doc_reference_resolver.d.ts +5 -0
- package/dist/doc_reference_resolver.js +232 -0
- package/dist/doc_reference_resolver.js.map +1 -0
- package/dist/error_renderer.d.ts +24 -0
- package/dist/error_renderer.js +326 -0
- package/dist/error_renderer.js.map +1 -0
- package/dist/exit_error.d.ts +8 -0
- package/dist/exit_error.d.ts.map +1 -0
- package/dist/exit_error.js +8 -0
- package/dist/exit_error.js.map +1 -0
- package/dist/expected_names.d.ts +11 -0
- package/dist/expected_names.js +34 -0
- package/dist/expected_names.js.map +1 -0
- package/dist/formatter.d.ts +28 -0
- package/dist/formatter.js +338 -0
- package/dist/formatter.js.map +1 -0
- package/dist/get_dependencies_flow.d.ts +40 -0
- package/dist/get_dependencies_flow.js +177 -0
- package/dist/get_dependencies_flow.js.map +1 -0
- package/dist/import_block_formatter.d.ts +3 -0
- package/dist/import_block_formatter.js +36 -0
- package/dist/import_block_formatter.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -0
- package/dist/io.d.ts +23 -0
- package/dist/io.d.ts.map +1 -0
- package/dist/io.js +58 -0
- package/dist/io.js.map +1 -0
- package/dist/literals.d.ts +12 -0
- package/dist/literals.js +96 -0
- package/dist/literals.js.map +1 -0
- package/dist/module_collector.d.ts +9 -0
- package/dist/module_collector.js +73 -0
- package/dist/module_collector.js.map +1 -0
- package/dist/module_set.d.ts +51 -0
- package/dist/module_set.js +1331 -0
- package/dist/module_set.js.map +1 -0
- package/dist/package_downloader.d.ts +4 -0
- package/dist/package_downloader.js +256 -0
- package/dist/package_downloader.js.map +1 -0
- package/dist/package_types.d.ts +30 -0
- package/dist/package_types.d.ts.map +1 -0
- package/dist/package_types.js +2 -0
- package/dist/package_types.js.map +1 -0
- package/dist/parser.d.ts +7 -0
- package/dist/parser.js +1335 -0
- package/dist/parser.js.map +1 -0
- package/dist/project_initializer.d.ts +2 -0
- package/dist/project_initializer.d.ts.map +1 -0
- package/dist/project_initializer.js +207 -0
- package/dist/project_initializer.js.map +1 -0
- package/dist/snapshotter.d.ts +16 -0
- package/dist/snapshotter.js +263 -0
- package/dist/snapshotter.js.map +1 -0
- package/dist/tokenizer.d.ts +18 -0
- package/dist/tokenizer.js +244 -0
- package/dist/tokenizer.js.map +1 -0
- package/package.json +2 -2
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { SkirError } from "skir-internal";
|
|
2
|
+
import { type BeforeAfter, type BreakingChange } from "./compatibility_checker.js";
|
|
3
|
+
import type { SkirConfigError } from "./config_parser.js";
|
|
4
|
+
import type { ModuleSet } from "./module_set.js";
|
|
5
|
+
export declare function renderErrors(errors: readonly SkirError[]): void;
|
|
6
|
+
export declare function formatError(error: SkirError): string;
|
|
7
|
+
export declare function renderSkirConfigErrors(errors: readonly SkirConfigError[], context: {
|
|
8
|
+
skirConfigPath: string;
|
|
9
|
+
maybeForgotToEditAfterInit: boolean | undefined;
|
|
10
|
+
}): void;
|
|
11
|
+
export declare function formatSkirConfigError(error: SkirConfigError, context: {
|
|
12
|
+
skirConfigPath: string;
|
|
13
|
+
}): string;
|
|
14
|
+
export declare function renderBreakingChanges(breakingChanges: readonly BreakingChange[], moduleSet: BeforeAfter<ModuleSet>): void;
|
|
15
|
+
/**
|
|
16
|
+
* Returns a short error message for a breaking change, meant to be rendered
|
|
17
|
+
* directly in the IDE.
|
|
18
|
+
*/
|
|
19
|
+
export declare function getShortMessageForBreakingChange(breakingChange: BreakingChange, before: ModuleSet): string;
|
|
20
|
+
export declare function makeRed(text: string): string;
|
|
21
|
+
export declare function makeGreen(text: string): string;
|
|
22
|
+
export declare function makeOrange(text: string): string;
|
|
23
|
+
export declare function makeGray(text: string): string;
|
|
24
|
+
//# sourceMappingURL=error_renderer.d.ts.map
|
|
@@ -0,0 +1,326 @@
|
|
|
1
|
+
import { getTokenForBreakingChange, } from "./compatibility_checker.js";
|
|
2
|
+
export function renderErrors(errors) {
|
|
3
|
+
const MAX_ERRORS = 10;
|
|
4
|
+
for (let i = 0; i < errors.length && i < MAX_ERRORS; ++i) {
|
|
5
|
+
const error = errors[i];
|
|
6
|
+
console.error(formatError(error));
|
|
7
|
+
}
|
|
8
|
+
// Count the number of distinct modules with errors.
|
|
9
|
+
if (errors.length) {
|
|
10
|
+
const modules = new Set();
|
|
11
|
+
for (const error of errors) {
|
|
12
|
+
modules.add(error.token.line.modulePath);
|
|
13
|
+
}
|
|
14
|
+
const numErrors = `${errors.length} error${errors.length <= 1 ? "" : "s"}`;
|
|
15
|
+
const numFiles = `${modules.size} file${modules.size <= 1 ? "" : "s"}`;
|
|
16
|
+
console.error(`Found ${numErrors} in ${numFiles}\n`);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
export function formatError(error) {
|
|
20
|
+
const { token } = error;
|
|
21
|
+
const { line, colNumber } = token;
|
|
22
|
+
const lineNumberStr = (line.lineNumber + 1).toString();
|
|
23
|
+
let result = formatLocation(token);
|
|
24
|
+
result += " - ";
|
|
25
|
+
if (error.expected !== undefined) {
|
|
26
|
+
result += makeRed("expected");
|
|
27
|
+
result += `: ${error.expected}`;
|
|
28
|
+
}
|
|
29
|
+
else {
|
|
30
|
+
result += makeRed("error");
|
|
31
|
+
result += `: ${error.message}`;
|
|
32
|
+
}
|
|
33
|
+
result += "\n\n";
|
|
34
|
+
result += makeBlackOnWhite(lineNumberStr);
|
|
35
|
+
result += " ";
|
|
36
|
+
result += line.line;
|
|
37
|
+
result += "\n";
|
|
38
|
+
result += makeBlackOnWhite(" ".repeat(lineNumberStr.length));
|
|
39
|
+
result += " ".repeat(colNumber + 1);
|
|
40
|
+
result += makeRed("~".repeat(Math.max(token.originalText.length, 1)));
|
|
41
|
+
result += "\n";
|
|
42
|
+
return result;
|
|
43
|
+
}
|
|
44
|
+
export function renderSkirConfigErrors(errors, context) {
|
|
45
|
+
for (const error of errors) {
|
|
46
|
+
console.error();
|
|
47
|
+
console.error(formatSkirConfigError(error, context));
|
|
48
|
+
}
|
|
49
|
+
console.error();
|
|
50
|
+
if (context.maybeForgotToEditAfterInit) {
|
|
51
|
+
const { skirConfigPath } = context;
|
|
52
|
+
console.warn(`Did you forget to edit ${skirConfigPath} after running 'npx skir init'?`);
|
|
53
|
+
console.warn();
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
export function formatSkirConfigError(error, context) {
|
|
57
|
+
const { message, range } = error;
|
|
58
|
+
const { skirConfigPath } = context;
|
|
59
|
+
const location = range
|
|
60
|
+
? [
|
|
61
|
+
makeCyan(skirConfigPath),
|
|
62
|
+
// Already 1-based
|
|
63
|
+
makeYellow(range.start.lineNumber.toString()),
|
|
64
|
+
// Already 1-based
|
|
65
|
+
makeYellow(range.start.colNumber.toString()),
|
|
66
|
+
].join(":")
|
|
67
|
+
: makeCyan(skirConfigPath);
|
|
68
|
+
return [location, " - ", makeRed("error"), ": ", message].join("");
|
|
69
|
+
}
|
|
70
|
+
export function renderBreakingChanges(breakingChanges, moduleSet) {
|
|
71
|
+
const MAX = 10;
|
|
72
|
+
for (let i = 0; i < breakingChanges.length && i < MAX; ++i) {
|
|
73
|
+
const breakingChange = breakingChanges[i];
|
|
74
|
+
console.error(formatBreakingChange(breakingChange, moduleSet));
|
|
75
|
+
console.error();
|
|
76
|
+
}
|
|
77
|
+
const numBreakingChanges = breakingChanges.length;
|
|
78
|
+
const s = numBreakingChanges === 1 ? "" : "s";
|
|
79
|
+
if (numBreakingChanges) {
|
|
80
|
+
console.error(`Found ${numBreakingChanges} breaking change${s}\n`);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
function formatBreakingChange(breakingChange, moduleSet) {
|
|
84
|
+
const token = getTokenForBreakingChange(breakingChange);
|
|
85
|
+
const locationPrefix = token ? formatLocation(token) + " - " : "";
|
|
86
|
+
switch (breakingChange.kind) {
|
|
87
|
+
case "illegal-type-change": {
|
|
88
|
+
const { expression, type } = breakingChange;
|
|
89
|
+
const errorHeader = makeRed("Illegal type change");
|
|
90
|
+
return [
|
|
91
|
+
`${locationPrefix}${errorHeader}\n`,
|
|
92
|
+
" [Last snapshot]\n",
|
|
93
|
+
` ${makeGray("Expression:")} ${formatExpression(expression.before)}`,
|
|
94
|
+
` ${makeGray("Type:")} ${formatType(type.before, moduleSet.before)}\n`,
|
|
95
|
+
" [Now]\n",
|
|
96
|
+
` ${makeGray("Expression:")} ${formatExpression(expression.after)}`,
|
|
97
|
+
` ${makeGray("Type:")} ${formatType(type.after, moduleSet.after)}`,
|
|
98
|
+
].join("\n");
|
|
99
|
+
}
|
|
100
|
+
case "missing-slots": {
|
|
101
|
+
const { missingRangeEnd, missingRangeStart, recordExpression, record } = breakingChange;
|
|
102
|
+
const errorHeader = makeRed("Missing slots in struct");
|
|
103
|
+
return [
|
|
104
|
+
`${locationPrefix}${errorHeader}\n`,
|
|
105
|
+
" [Last snapshot]\n",
|
|
106
|
+
` ${makeGray("Expression:")} ${formatExpression(recordExpression.before)}`,
|
|
107
|
+
` ${makeGray("Record:")} ${record.before.record.name.text}`,
|
|
108
|
+
` ${makeGray("Slots:")} ${missingRangeEnd}\n`,
|
|
109
|
+
" [Now]\n",
|
|
110
|
+
` ${makeGray("Expression:")} ${formatExpression(recordExpression.after)}`,
|
|
111
|
+
` ${makeGray("Record:")} ${record.after.record.name.text}`,
|
|
112
|
+
` ${makeGray("Slots:")} ${missingRangeStart}\n`,
|
|
113
|
+
` ${makeGray("Fix:")} mark the field numbers as removed`,
|
|
114
|
+
].join("\n");
|
|
115
|
+
}
|
|
116
|
+
case "missing-record": {
|
|
117
|
+
const { record, recordNumber } = breakingChange;
|
|
118
|
+
const recordDefinition = [
|
|
119
|
+
record.record.recordType,
|
|
120
|
+
" ",
|
|
121
|
+
getQualifiedName(record),
|
|
122
|
+
].join("");
|
|
123
|
+
return [
|
|
124
|
+
`${makeRed("Missing record")}\n`,
|
|
125
|
+
" [Last snapshot]\n",
|
|
126
|
+
` ${makeGray("Record:")} ${recordDefinition}`,
|
|
127
|
+
` ${makeGray("Number:")} ${recordNumber}`,
|
|
128
|
+
].join("\n");
|
|
129
|
+
}
|
|
130
|
+
case "missing-method": {
|
|
131
|
+
const { method } = breakingChange;
|
|
132
|
+
const methodDefinition = [
|
|
133
|
+
"method ",
|
|
134
|
+
method.name.text,
|
|
135
|
+
"(",
|
|
136
|
+
formatType(method.requestType, moduleSet.before),
|
|
137
|
+
"): ",
|
|
138
|
+
formatType(method.responseType, moduleSet.before),
|
|
139
|
+
].join("");
|
|
140
|
+
return [
|
|
141
|
+
`${makeRed("Missing method")}\n`,
|
|
142
|
+
" [Last snapshot]\n",
|
|
143
|
+
` ${makeGray("Method:")} ${methodDefinition}`,
|
|
144
|
+
` ${makeGray("Number:")} ${method.number}`,
|
|
145
|
+
].join("\n");
|
|
146
|
+
}
|
|
147
|
+
case "wrapper-to-constant-variant": {
|
|
148
|
+
const { enumEpression, number, record, variantName } = breakingChange;
|
|
149
|
+
const errorHeader = makeRed("Illegal variant kind change");
|
|
150
|
+
const enumName = map(record, getQualifiedName);
|
|
151
|
+
return [
|
|
152
|
+
`${locationPrefix}${errorHeader}\n`,
|
|
153
|
+
" [Last snapshot]\n",
|
|
154
|
+
` ${makeGray("Expression:")} ${formatExpression(enumEpression.before)}`,
|
|
155
|
+
` ${makeGray("Enum:")} ${enumName.before}`,
|
|
156
|
+
` ${makeGray("Variant:")} ${variantName.before.text}`,
|
|
157
|
+
` ${makeGray("Number:")} ${number}`,
|
|
158
|
+
` ${makeGray("Kind:")} wrapper\n`,
|
|
159
|
+
" [Now]\n",
|
|
160
|
+
` ${makeGray("Expression:")} ${formatExpression(enumEpression.after)}`,
|
|
161
|
+
` ${makeGray("Enum:")} ${enumName.after}`,
|
|
162
|
+
` ${makeGray("Variant:")} ${variantName.after.text}`,
|
|
163
|
+
` ${makeGray("Number:")} ${number}`,
|
|
164
|
+
` ${makeGray("Kind:")} constant`,
|
|
165
|
+
].join("\n");
|
|
166
|
+
}
|
|
167
|
+
case "missing-variant": {
|
|
168
|
+
const { enumEpression, number, record, variantName } = breakingChange;
|
|
169
|
+
const errorHeader = makeRed("Missing variant");
|
|
170
|
+
const enumName = map(record, getQualifiedName);
|
|
171
|
+
return [
|
|
172
|
+
`${locationPrefix}${errorHeader}\n`,
|
|
173
|
+
" [Last snapshot]\n",
|
|
174
|
+
` ${makeGray("Expression:")} ${formatExpression(enumEpression.before)}`,
|
|
175
|
+
` ${makeGray("Enum:")} ${enumName.before}`,
|
|
176
|
+
` ${makeGray("Variant:")} ${variantName.text}`,
|
|
177
|
+
` ${makeGray("Number:")} ${number}\n`,
|
|
178
|
+
" [Now]\n",
|
|
179
|
+
` ${makeGray("Expression:")} ${formatExpression(enumEpression.after)}`,
|
|
180
|
+
` ${makeGray("Enum:")} ${enumName.after}`,
|
|
181
|
+
].join("\n");
|
|
182
|
+
}
|
|
183
|
+
case "record-kind-change": {
|
|
184
|
+
const { record, recordExpression, recordType } = breakingChange;
|
|
185
|
+
const errorHeader = makeRed("Record kind change");
|
|
186
|
+
return [
|
|
187
|
+
`${locationPrefix}${errorHeader}\n`,
|
|
188
|
+
" [Last snapshot]\n",
|
|
189
|
+
` ${makeGray("Expression:")} ${formatExpression(recordExpression.before)}`,
|
|
190
|
+
` ${makeGray("Record:")} ${record.before.record.name.text}`,
|
|
191
|
+
` ${makeGray("Kind:")} ${recordType.before}\n`,
|
|
192
|
+
" [Now]\n",
|
|
193
|
+
` ${makeGray("Expression:")} ${formatExpression(recordExpression.after)}`,
|
|
194
|
+
` ${makeGray("Record:")} ${record.after.record.name.text}`,
|
|
195
|
+
` ${makeGray("Kind:")} ${recordType.after}`,
|
|
196
|
+
].join("\n");
|
|
197
|
+
}
|
|
198
|
+
case "removed-number-reintroduced": {
|
|
199
|
+
const { record, recordExpression, reintroducedAs, removedNumber } = breakingChange;
|
|
200
|
+
const errorHeader = makeRed("Removed number reintroduced");
|
|
201
|
+
return [
|
|
202
|
+
`${locationPrefix}${errorHeader}\n`,
|
|
203
|
+
" [Last snapshot]\n",
|
|
204
|
+
` ${makeGray("Expression:")} ${formatExpression(recordExpression.before)}`,
|
|
205
|
+
` ${makeGray("Record:")} ${record.before.record.name.text}`,
|
|
206
|
+
` ${makeGray("Removed:")} ${removedNumber}\n`,
|
|
207
|
+
" [Now]\n",
|
|
208
|
+
` ${makeGray("Expression:")} ${formatExpression(recordExpression.after)}`,
|
|
209
|
+
` ${makeGray("Record:")} ${record.after.record.name.text}`,
|
|
210
|
+
record.after.record.recordType === "struct"
|
|
211
|
+
? ` ${makeGray("Field:")} ${reintroducedAs.text}`
|
|
212
|
+
: ` ${makeGray("Variant:")} ${reintroducedAs.text}`,
|
|
213
|
+
].join("\n");
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
/**
|
|
218
|
+
* Returns a short error message for a breaking change, meant to be rendered
|
|
219
|
+
* directly in the IDE.
|
|
220
|
+
*/
|
|
221
|
+
export function getShortMessageForBreakingChange(breakingChange, before) {
|
|
222
|
+
switch (breakingChange.kind) {
|
|
223
|
+
case "illegal-type-change": {
|
|
224
|
+
const { type } = breakingChange;
|
|
225
|
+
return "illegal type change; was: " + formatType(type.before, before);
|
|
226
|
+
}
|
|
227
|
+
case "missing-slots": {
|
|
228
|
+
const { missingRangeEnd } = breakingChange;
|
|
229
|
+
return `missing slots; had ${missingRangeEnd}`;
|
|
230
|
+
}
|
|
231
|
+
case "wrapper-to-constant-variant": {
|
|
232
|
+
return `was a wrapper variant`;
|
|
233
|
+
}
|
|
234
|
+
case "missing-variant": {
|
|
235
|
+
const { number } = breakingChange;
|
|
236
|
+
return `missing variant: ${number}`;
|
|
237
|
+
}
|
|
238
|
+
case "record-kind-change": {
|
|
239
|
+
const { recordType } = breakingChange;
|
|
240
|
+
return recordType.before === "struct" ? "was a struct" : "was an enum";
|
|
241
|
+
}
|
|
242
|
+
case "removed-number-reintroduced": {
|
|
243
|
+
return "number was marked as removed";
|
|
244
|
+
}
|
|
245
|
+
case "missing-record":
|
|
246
|
+
case "missing-method": {
|
|
247
|
+
// No token in the new module set, so we cannot render these errors in the IDE.
|
|
248
|
+
return "";
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
}
|
|
252
|
+
function formatLocation(token) {
|
|
253
|
+
const { line, colNumber } = token;
|
|
254
|
+
return [
|
|
255
|
+
makeCyan(line.modulePath),
|
|
256
|
+
makeYellow((line.lineNumber + 1).toString()),
|
|
257
|
+
makeYellow((colNumber + 1).toString()),
|
|
258
|
+
].join(":");
|
|
259
|
+
}
|
|
260
|
+
function formatExpression(expression) {
|
|
261
|
+
switch (expression.kind) {
|
|
262
|
+
case "request-type":
|
|
263
|
+
return `(${expression.methodName.text}::request)`;
|
|
264
|
+
case "response-type":
|
|
265
|
+
return `(${expression.methodName.text}::response)`;
|
|
266
|
+
case "record":
|
|
267
|
+
return `${expression.recordName.text}`;
|
|
268
|
+
case "item":
|
|
269
|
+
return formatExpression(expression.arrayExpression) + "[*]";
|
|
270
|
+
case "optional-value":
|
|
271
|
+
return formatExpression(expression.optionalExpression) + "!";
|
|
272
|
+
case "property": {
|
|
273
|
+
const structExpression = formatExpression(expression.structExpression);
|
|
274
|
+
return `${structExpression}.${expression.fieldName.text}`;
|
|
275
|
+
}
|
|
276
|
+
case "as-variant": {
|
|
277
|
+
const enumExpression = formatExpression(expression.enumExpression);
|
|
278
|
+
return `${enumExpression}.as_${expression.variantName.text}`;
|
|
279
|
+
}
|
|
280
|
+
}
|
|
281
|
+
}
|
|
282
|
+
function formatType(resolvedType, moduleSet) {
|
|
283
|
+
switch (resolvedType.kind) {
|
|
284
|
+
case "array":
|
|
285
|
+
return `[${formatType(resolvedType.item, moduleSet)}]`;
|
|
286
|
+
case "optional":
|
|
287
|
+
return `${formatType(resolvedType.other, moduleSet)}?`;
|
|
288
|
+
case "primitive":
|
|
289
|
+
return resolvedType.primitive;
|
|
290
|
+
case "record": {
|
|
291
|
+
const record = moduleSet.recordMap.get(resolvedType.key);
|
|
292
|
+
return getQualifiedName(record);
|
|
293
|
+
}
|
|
294
|
+
}
|
|
295
|
+
}
|
|
296
|
+
function getQualifiedName(recordLocation) {
|
|
297
|
+
return recordLocation.recordAncestors.map((r) => r.name.text).join(".");
|
|
298
|
+
}
|
|
299
|
+
function map(beforeAfter, fn) {
|
|
300
|
+
return {
|
|
301
|
+
before: fn(beforeAfter.before),
|
|
302
|
+
after: fn(beforeAfter.after),
|
|
303
|
+
};
|
|
304
|
+
}
|
|
305
|
+
export function makeRed(text) {
|
|
306
|
+
return `\x1b[31m${text}\x1b[0m`;
|
|
307
|
+
}
|
|
308
|
+
export function makeGreen(text) {
|
|
309
|
+
return `\x1b[32m${text}\x1b[0m`;
|
|
310
|
+
}
|
|
311
|
+
export function makeOrange(text) {
|
|
312
|
+
return `\x1b[38;5;208m${text}\x1b[0m`;
|
|
313
|
+
}
|
|
314
|
+
export function makeGray(text) {
|
|
315
|
+
return `\x1b[90m${text}\x1b[0m`;
|
|
316
|
+
}
|
|
317
|
+
function makeCyan(text) {
|
|
318
|
+
return `\x1b[36m${text}\x1b[0m`;
|
|
319
|
+
}
|
|
320
|
+
function makeYellow(text) {
|
|
321
|
+
return `\x1b[33m${text}\x1b[0m`;
|
|
322
|
+
}
|
|
323
|
+
function makeBlackOnWhite(text) {
|
|
324
|
+
return `\x1b[47m${text}\x1b[0m`;
|
|
325
|
+
}
|
|
326
|
+
//# sourceMappingURL=error_renderer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error_renderer.js","sourceRoot":"","sources":["../src/error_renderer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* If this error is thrown during the execution of the compiler, the message
|
|
3
|
+
* will be printed to stderr before exiting. The stack trace will not be
|
|
4
|
+
* printed.
|
|
5
|
+
*/
|
|
6
|
+
export declare class ExitError extends Error {
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=exit_error.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"exit_error.d.ts","sourceRoot":"","sources":["../src/exit_error.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,qBAAa,SAAU,SAAQ,KAAK;CAAG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"exit_error.js","sourceRoot":"","sources":["../src/exit_error.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,OAAO,SAAU,SAAQ,KAAK;CAAG"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Declaration, ExpectedName, Removed } from "skir-internal";
|
|
2
|
+
export declare function declarationsToExpectedNames(nameToDeclaration: {
|
|
3
|
+
[name: string]: Declaration;
|
|
4
|
+
}, predicate: (value: Exclude<Declaration, Removed>) => boolean): readonly ExpectedName[];
|
|
5
|
+
export declare class ExpectedNamesCollector {
|
|
6
|
+
private readonly expectedNamesData;
|
|
7
|
+
private readonly expectedNameSet;
|
|
8
|
+
collect(expectedNames: readonly ExpectedName[]): void;
|
|
9
|
+
get expectedNames(): readonly ExpectedName[];
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=expected_names.d.ts.map
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
export function declarationsToExpectedNames(nameToDeclaration, predicate) {
|
|
2
|
+
const result = [];
|
|
3
|
+
for (const [name, declaration] of Object.entries(nameToDeclaration)) {
|
|
4
|
+
if (declaration.kind === "removed" || !predicate(declaration)) {
|
|
5
|
+
continue;
|
|
6
|
+
}
|
|
7
|
+
const doc = declaration.kind !== "import" && declaration.kind !== "import-alias"
|
|
8
|
+
? declaration.doc
|
|
9
|
+
: undefined;
|
|
10
|
+
result.push({ name, doc });
|
|
11
|
+
}
|
|
12
|
+
return result;
|
|
13
|
+
}
|
|
14
|
+
export class ExpectedNamesCollector {
|
|
15
|
+
constructor() {
|
|
16
|
+
this.expectedNamesData = [];
|
|
17
|
+
this.expectedNameSet = new Set();
|
|
18
|
+
}
|
|
19
|
+
collect(expectedNames) {
|
|
20
|
+
for (const expectedName of expectedNames) {
|
|
21
|
+
if (expectedName.modulePath) {
|
|
22
|
+
this.expectedNamesData.push(expectedName);
|
|
23
|
+
}
|
|
24
|
+
else if (!this.expectedNameSet.has(expectedName.name)) {
|
|
25
|
+
this.expectedNamesData.push(expectedName);
|
|
26
|
+
this.expectedNameSet.add(expectedName.name);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
get expectedNames() {
|
|
31
|
+
return this.expectedNamesData;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=expected_names.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expected_names.js","sourceRoot":"","sources":["../src/expected_names.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,2BAA2B,CACzC,iBAAkD,EAClD,SAA4D;IAE5D,MAAM,MAAM,GAAmB,EAAE,CAAC;IAClC,KAAK,MAAM,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE,CAAC;QACpE,IAAI,WAAW,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC;YAC9D,SAAS;QACX,CAAC;QACD,MAAM,GAAG,GACP,WAAW,CAAC,IAAI,KAAK,QAAQ,IAAI,WAAW,CAAC,IAAI,KAAK,cAAc;YAClE,CAAC,CAAC,WAAW,CAAC,GAAG;YACjB,CAAC,CAAC,SAAS,CAAC;QAChB,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;IAC7B,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,OAAO,sBAAsB;IAAnC;QACmB,sBAAiB,GAAmB,EAAE,CAAC;QACvC,oBAAe,GAAG,IAAI,GAAG,EAAU,CAAC;IAgBvD,CAAC;IAdC,OAAO,CAAC,aAAsC;QAC5C,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE,CAAC;YACzC,IAAI,YAAY,CAAC,UAAU,EAAE,CAAC;gBAC5B,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC5C,CAAC;iBAAM,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxD,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBAC1C,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YAC9C,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;CACF"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { SkirError } from "skir-internal";
|
|
2
|
+
export interface FormattedModule {
|
|
3
|
+
readonly newSourceCode: string;
|
|
4
|
+
/**
|
|
5
|
+
* For VSCode extension: text edits to convert the original source code into
|
|
6
|
+
* the formatted source code.
|
|
7
|
+
*/
|
|
8
|
+
readonly textEdits: readonly TextEdit[];
|
|
9
|
+
/**
|
|
10
|
+
* Tokenization and parsing errors.
|
|
11
|
+
* If there is any error, the original source code is returned and no text edits are
|
|
12
|
+
* provided.
|
|
13
|
+
*/
|
|
14
|
+
readonly errors: readonly SkirError[];
|
|
15
|
+
}
|
|
16
|
+
export interface TextEdit {
|
|
17
|
+
readonly oldStart: number;
|
|
18
|
+
readonly oldEnd: number;
|
|
19
|
+
readonly newText: string;
|
|
20
|
+
}
|
|
21
|
+
/** A function which returns a random number between 0 and 1. */
|
|
22
|
+
export type RandomGenerator = () => number;
|
|
23
|
+
/**
|
|
24
|
+
* Formats the given module and returns the new source code.
|
|
25
|
+
* Preserves token ordering.
|
|
26
|
+
*/
|
|
27
|
+
export declare function formatModule(sourceCode: string, modulePath: string, randomGenerator?: RandomGenerator): FormattedModule;
|
|
28
|
+
//# sourceMappingURL=formatter.d.ts.map
|