brighterscript 0.72.0 → 0.72.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bsconfig.schema.json +62 -0
- package/dist/BsConfig.d.ts +56 -1
- package/dist/CommentFlagProcessor.d.ts +16 -12
- package/dist/CommentFlagProcessor.js +141 -59
- package/dist/CommentFlagProcessor.js.map +1 -1
- package/dist/DiagnosticMessages.d.ts +27 -1
- package/dist/DiagnosticMessages.js +32 -2
- package/dist/DiagnosticMessages.js.map +1 -1
- package/dist/Program.d.ts +4 -0
- package/dist/Program.js +2 -0
- package/dist/Program.js.map +1 -1
- package/dist/ProgramBuilder.d.ts +1 -8
- package/dist/ProgramBuilder.js +31 -11
- package/dist/ProgramBuilder.js.map +1 -1
- package/dist/bscPlugin/codeActions/CodeActionsProcessor.d.ts +38 -0
- package/dist/bscPlugin/codeActions/CodeActionsProcessor.js +257 -14
- package/dist/bscPlugin/codeActions/CodeActionsProcessor.js.map +1 -1
- package/dist/bscPlugin/codeActions/CodeActionsProcessor.spec.js +360 -10
- package/dist/bscPlugin/codeActions/CodeActionsProcessor.spec.js.map +1 -1
- package/dist/bscPlugin/validation/BrsFileValidator.js +13 -0
- package/dist/bscPlugin/validation/BrsFileValidator.js.map +1 -1
- package/dist/bscPlugin/validation/BrsFileValidator.spec.js +215 -0
- package/dist/bscPlugin/validation/BrsFileValidator.spec.js.map +1 -1
- package/dist/cli.js +13 -0
- package/dist/cli.js.map +1 -1
- package/dist/diagnosticUtils.d.ts +51 -1
- package/dist/diagnosticUtils.js +222 -1
- package/dist/diagnosticUtils.js.map +1 -1
- package/dist/files/BrsFile.js +4 -2
- package/dist/files/BrsFile.js.map +1 -1
- package/dist/files/BrsFile.spec.js +191 -0
- package/dist/files/BrsFile.spec.js.map +1 -1
- package/dist/files/XmlFile.js +2 -1
- package/dist/files/XmlFile.js.map +1 -1
- package/dist/files/XmlFile.spec.js +50 -0
- package/dist/files/XmlFile.spec.js.map +1 -1
- package/dist/interfaces.d.ts +15 -1
- package/dist/lexer/TokenKind.d.ts +8 -0
- package/dist/lexer/TokenKind.js +21 -1
- package/dist/lexer/TokenKind.js.map +1 -1
- package/dist/lsp/LspProject.d.ts +19 -0
- package/dist/lsp/Project.d.ts +14 -0
- package/dist/lsp/Project.js +9 -1
- package/dist/lsp/Project.js.map +1 -1
- package/dist/lsp/ProjectManager.js +15 -1
- package/dist/lsp/ProjectManager.js.map +1 -1
- package/dist/lsp/ProjectManager.spec.js +36 -0
- package/dist/lsp/ProjectManager.spec.js.map +1 -1
- package/dist/lsp/worker/WorkerThreadProject.d.ts +14 -0
- package/dist/lsp/worker/WorkerThreadProject.js +7 -0
- package/dist/lsp/worker/WorkerThreadProject.js.map +1 -1
- package/dist/parser/Parser.d.ts +13 -1
- package/dist/parser/Parser.js +40 -14
- package/dist/parser/Parser.js.map +1 -1
- package/dist/parser/Parser.spec.js +128 -0
- package/dist/parser/Parser.spec.js.map +1 -1
- package/dist/parser/tests/controlFlow/For.spec.js +47 -0
- package/dist/parser/tests/controlFlow/For.spec.js.map +1 -1
- package/dist/parser/tests/controlFlow/ForEach.spec.js +37 -0
- package/dist/parser/tests/controlFlow/ForEach.spec.js.map +1 -1
- package/dist/parser/tests/controlFlow/While.spec.js +49 -0
- package/dist/parser/tests/controlFlow/While.spec.js.map +1 -1
- package/dist/util.js +20 -9
- package/dist/util.js.map +1 -1
- package/package.json +2 -2
|
@@ -10,6 +10,7 @@ const reflection_1 = require("../../astUtils/reflection");
|
|
|
10
10
|
const visitors_1 = require("../../astUtils/visitors");
|
|
11
11
|
const TokenKind_1 = require("../../lexer/TokenKind");
|
|
12
12
|
const codeActionHelpers_1 = require("./codeActionHelpers");
|
|
13
|
+
const SGParser_1 = require("../../parser/SGParser");
|
|
13
14
|
class CodeActionsProcessor {
|
|
14
15
|
constructor(event) {
|
|
15
16
|
this.event = event;
|
|
@@ -54,6 +55,9 @@ class CodeActionsProcessor {
|
|
|
54
55
|
else if (diagnostic.code === DiagnosticMessages_1.DiagnosticCodeMap.cannotUseOverrideKeywordOnConstructorFunction) {
|
|
55
56
|
this.suggestRemoveOverrideFromConstructorQuickFixes([diagnostic]);
|
|
56
57
|
}
|
|
58
|
+
else if ((0, DiagnosticMessages_1.isDiagnosticOfType)(diagnostic, 'mismatchedEndingToken')) {
|
|
59
|
+
this.suggestMismatchedEndingTokenQuickFixes([diagnostic]);
|
|
60
|
+
}
|
|
57
61
|
}
|
|
58
62
|
// Second pass: fix-all actions for any code that appeared in the event.
|
|
59
63
|
// Also makes sure that fix-all actions appear after individual fixes
|
|
@@ -86,6 +90,9 @@ class CodeActionsProcessor {
|
|
|
86
90
|
else if (code === DiagnosticMessages_1.DiagnosticCodeMap.missingOverrideKeyword) {
|
|
87
91
|
this.suggestMissingOverrideQuickFixes(allInFile);
|
|
88
92
|
}
|
|
93
|
+
else if (code === DiagnosticMessages_1.DiagnosticCodeMap.mismatchedEndingToken) {
|
|
94
|
+
this.suggestMismatchedEndingTokenQuickFixes(allInFile);
|
|
95
|
+
}
|
|
89
96
|
}
|
|
90
97
|
}
|
|
91
98
|
// Import fix-all aggregates across multiple codes so it runs as its own step
|
|
@@ -94,8 +101,189 @@ class CodeActionsProcessor {
|
|
|
94
101
|
eventCodes.has(DiagnosticMessages_1.DiagnosticCodeMap.classCouldNotBeFound)) {
|
|
95
102
|
this.suggestMissingImportsFixAllQuickFix();
|
|
96
103
|
}
|
|
104
|
+
// Suppression actions appear last so real fixes are surfaced first
|
|
105
|
+
for (const diagnostic of this.event.diagnostics) {
|
|
106
|
+
this.suggestDisableDiagnosticQuickFixes(diagnostic);
|
|
107
|
+
}
|
|
97
108
|
this.suggestedImports.clear();
|
|
98
109
|
}
|
|
110
|
+
/**
|
|
111
|
+
* For any diagnostic with a code, offers two quick-fix actions:
|
|
112
|
+
* - "Disable {code} for this line": adds the code to an existing `bs:disable-line` or
|
|
113
|
+
* `bs:disable-next-line` directive on/above the diagnostic if present, otherwise inserts
|
|
114
|
+
* a new `bs:disable-next-line: {code}` comment on the line above.
|
|
115
|
+
* - "Disable {code} for this file": adds the code to an existing header-level `bs:disable`
|
|
116
|
+
* directive if present, otherwise inserts a new `bs:disable: {code}` at the top of the file.
|
|
117
|
+
*
|
|
118
|
+
* Comment placement and the line-vs-next-line preference are centralized here so they can be
|
|
119
|
+
* revisited without touching the directive parser.
|
|
120
|
+
*/
|
|
121
|
+
suggestDisableDiagnosticQuickFixes(diagnostic) {
|
|
122
|
+
const code = diagnostic.code;
|
|
123
|
+
if (code === undefined || code === null) {
|
|
124
|
+
return;
|
|
125
|
+
}
|
|
126
|
+
const file = this.event.file;
|
|
127
|
+
if (!(0, reflection_1.isBrsFile)(file) && !(0, reflection_1.isXmlFile)(file)) {
|
|
128
|
+
return;
|
|
129
|
+
}
|
|
130
|
+
const codeStr = String(code);
|
|
131
|
+
const isXml = (0, reflection_1.isXmlFile)(file);
|
|
132
|
+
//existing.forLine: any line/next-line directive on or above the diagnostic line that the line action could extend
|
|
133
|
+
//existing.forFile: any header-level bs:disable that the file action could extend
|
|
134
|
+
const existing = this.findExistingDisableDirectives(file, diagnostic.range.start.line);
|
|
135
|
+
//format helpers wrap the directive body in the right comment syntax (`'` for brs, `<!-- -->` for xml)
|
|
136
|
+
const formatLineDirective = (token, codes) => {
|
|
137
|
+
const body = `bs:disable-${token}: ${codes.join(' ')}`;
|
|
138
|
+
return isXml ? `<!-- ${body} -->` : `' ${body}`;
|
|
139
|
+
};
|
|
140
|
+
const formatBlockDirective = (codes) => {
|
|
141
|
+
const body = `bs:disable: ${codes.join(' ')}`;
|
|
142
|
+
return isXml ? `<!-- ${body} -->` : `' ${body}`;
|
|
143
|
+
};
|
|
144
|
+
// ---- "disable for this line" ----
|
|
145
|
+
//the two lambdas passed to getDiagnosticSuppressionChange are the "extend existing" and "insert fresh" branches:
|
|
146
|
+
// 1) rebuild the existing directive comment with the new code merged into its code list (preserving line vs next-line)
|
|
147
|
+
// 2) insert a fresh `bs:disable-next-line: {code}` on the line above the diagnostic, matching its indent
|
|
148
|
+
const indent = ' '.repeat(diagnostic.range.start.character);
|
|
149
|
+
const lineAction = this.getDiagnosticSuppressionChange(existing.forLine, codeStr, () => { var _a; return formatLineDirective(existing.forLine.type, this.mergeCodes((_a = existing.forLine) === null || _a === void 0 ? void 0 : _a.codes, codeStr)); }, () => ({
|
|
150
|
+
position: util_1.util.createPosition(diagnostic.range.start.line, 0),
|
|
151
|
+
newText: `${indent}${formatLineDirective('next-line', [codeStr])}\n`
|
|
152
|
+
}));
|
|
153
|
+
if (lineAction) {
|
|
154
|
+
this.event.codeActions.push(CodeActionUtil_1.codeActionUtil.createCodeAction({
|
|
155
|
+
title: `Disable ${code} for this line: ${diagnostic.message}`,
|
|
156
|
+
diagnostics: [diagnostic],
|
|
157
|
+
kind: vscode_languageserver_1.CodeActionKind.QuickFix,
|
|
158
|
+
changes: [lineAction]
|
|
159
|
+
}));
|
|
160
|
+
}
|
|
161
|
+
// ---- "disable for this file" ----
|
|
162
|
+
//same pattern as above, but operating on the header-level bs:disable directive:
|
|
163
|
+
// 1) rebuild the existing header directive with the new code appended
|
|
164
|
+
// 2) insert a fresh `bs:disable: {code}` at the file header (top of brs, or after `<?xml ?>` for xml)
|
|
165
|
+
const fileAction = this.getDiagnosticSuppressionChange(existing.forFile, codeStr, () => { var _a; return formatBlockDirective(this.mergeCodes((_a = existing.forFile) === null || _a === void 0 ? void 0 : _a.codes, codeStr)); }, () => {
|
|
166
|
+
const headerInsert = this.getDisableFileInsertion(file);
|
|
167
|
+
return {
|
|
168
|
+
position: headerInsert.position,
|
|
169
|
+
newText: headerInsert.prefix + formatBlockDirective([codeStr]) + headerInsert.suffix
|
|
170
|
+
};
|
|
171
|
+
});
|
|
172
|
+
if (fileAction) {
|
|
173
|
+
this.event.codeActions.push(CodeActionUtil_1.codeActionUtil.createCodeAction({
|
|
174
|
+
title: `Disable ${code} for this file: ${diagnostic.message}`,
|
|
175
|
+
diagnostics: [diagnostic],
|
|
176
|
+
kind: vscode_languageserver_1.CodeActionKind.QuickFix,
|
|
177
|
+
changes: [fileAction]
|
|
178
|
+
}));
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* Returns the file change that suppresses `codeStr` via a directive comment, or `null` when no
|
|
183
|
+
* change is needed (the existing directive already covers the code, or already suppresses
|
|
184
|
+
* everything). When `existing` is set, the result is a replace that swaps the directive comment
|
|
185
|
+
* for the text from `buildReplacementText`. When `existing` is null, the result is an insert
|
|
186
|
+
* built from `buildInsert`.
|
|
187
|
+
*/
|
|
188
|
+
getDiagnosticSuppressionChange(existing, codeStr, buildReplacementText, buildInsert) {
|
|
189
|
+
if (existing) {
|
|
190
|
+
//existing directive without specific codes already suppresses everything; no-op
|
|
191
|
+
if (existing.codes.length === 0) {
|
|
192
|
+
return null;
|
|
193
|
+
}
|
|
194
|
+
//the new code is already in the directive; no-op
|
|
195
|
+
if (existing.codes.some(c => c.toLowerCase() === codeStr.toLowerCase())) {
|
|
196
|
+
return null;
|
|
197
|
+
}
|
|
198
|
+
return {
|
|
199
|
+
type: 'replace',
|
|
200
|
+
filePath: this.event.file.srcPath,
|
|
201
|
+
range: existing.range,
|
|
202
|
+
newText: buildReplacementText()
|
|
203
|
+
};
|
|
204
|
+
}
|
|
205
|
+
const insert = buildInsert();
|
|
206
|
+
return {
|
|
207
|
+
type: 'insert',
|
|
208
|
+
filePath: this.event.file.srcPath,
|
|
209
|
+
position: insert.position,
|
|
210
|
+
newText: insert.newText
|
|
211
|
+
};
|
|
212
|
+
}
|
|
213
|
+
mergeCodes(existingCodes, newCode) {
|
|
214
|
+
return [...(existingCodes !== null && existingCodes !== void 0 ? existingCodes : []), newCode];
|
|
215
|
+
}
|
|
216
|
+
/**
|
|
217
|
+
* Walks the file's tokens and returns existing `bs:disable-{line,next-line}` and header-level
|
|
218
|
+
* `bs:disable` directives that would cover the diagnostic on `diagLine`. Used so the suppression
|
|
219
|
+
* quick fixes can extend an existing directive instead of stacking new ones.
|
|
220
|
+
*/
|
|
221
|
+
findExistingDisableDirectives(file, diagLine) {
|
|
222
|
+
var _a, _b, _c, _d;
|
|
223
|
+
const isXml = (0, reflection_1.isXmlFile)(file);
|
|
224
|
+
const tokens = (_b = (_a = file.parser) === null || _a === void 0 ? void 0 : _a.tokens) !== null && _b !== void 0 ? _b : [];
|
|
225
|
+
let inHeader = true;
|
|
226
|
+
let forLine = null;
|
|
227
|
+
let forFile = null;
|
|
228
|
+
for (const token of tokens) {
|
|
229
|
+
const isComment = isXml ? ((_c = token.tokenType) === null || _c === void 0 ? void 0 : _c.name) === 'Comment' : token.kind === TokenKind_1.TokenKind.Comment;
|
|
230
|
+
if (!isComment) {
|
|
231
|
+
if (isXml) {
|
|
232
|
+
if (((_d = token.tokenType) === null || _d === void 0 ? void 0 : _d.name) === 'OPEN') {
|
|
233
|
+
inHeader = false;
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
else if (token.kind !== TokenKind_1.TokenKind.Newline && token.kind !== TokenKind_1.TokenKind.Whitespace && token.kind !== TokenKind_1.TokenKind.Eof) {
|
|
237
|
+
inHeader = false;
|
|
238
|
+
}
|
|
239
|
+
continue;
|
|
240
|
+
}
|
|
241
|
+
const tokenRange = isXml ? (0, SGParser_1.rangeFromTokenValue)(token) : token.range;
|
|
242
|
+
const tokenText = isXml ? token.image : token.text;
|
|
243
|
+
const parsed = parseDisableComment(tokenText);
|
|
244
|
+
if (!parsed) {
|
|
245
|
+
continue;
|
|
246
|
+
}
|
|
247
|
+
const directive = { type: parsed.directiveType, codes: parsed.codes, range: tokenRange };
|
|
248
|
+
if (!forLine && parsed.directiveType === 'line' && tokenRange.start.line === diagLine) {
|
|
249
|
+
forLine = directive;
|
|
250
|
+
}
|
|
251
|
+
else if (!forLine && parsed.directiveType === 'next-line' && tokenRange.start.line === diagLine - 1) {
|
|
252
|
+
forLine = directive;
|
|
253
|
+
}
|
|
254
|
+
else if (!forFile && parsed.directiveType === 'block' && inHeader) {
|
|
255
|
+
//only header-level `bs:disable` directives are extended for the file-level quick fix
|
|
256
|
+
forFile = directive;
|
|
257
|
+
}
|
|
258
|
+
}
|
|
259
|
+
return { forLine: forLine, forFile: forFile };
|
|
260
|
+
}
|
|
261
|
+
/**
|
|
262
|
+
* Decides where in the file a header-level `bs:disable` directive should be inserted, returning
|
|
263
|
+
* the position plus any prefix/suffix needed so the directive lands on its own line in
|
|
264
|
+
* the header (before the first executable statement / root XML element).
|
|
265
|
+
*/
|
|
266
|
+
getDisableFileInsertion(file) {
|
|
267
|
+
var _a;
|
|
268
|
+
if ((0, reflection_1.isXmlFile)(file)) {
|
|
269
|
+
//insert after the `<?xml ?>` declaration if present, otherwise at the very top
|
|
270
|
+
const declCloseToken = (_a = file.parser.tokens) === null || _a === void 0 ? void 0 : _a.find(t => { var _a; return ((_a = t.tokenType) === null || _a === void 0 ? void 0 : _a.name) === 'SPECIAL_CLOSE'; });
|
|
271
|
+
if (declCloseToken) {
|
|
272
|
+
const endLine = declCloseToken.endLine - 1;
|
|
273
|
+
const endColumn = declCloseToken.endColumn;
|
|
274
|
+
return {
|
|
275
|
+
position: util_1.util.createPosition(endLine, endColumn),
|
|
276
|
+
prefix: '\n',
|
|
277
|
+
suffix: ''
|
|
278
|
+
};
|
|
279
|
+
}
|
|
280
|
+
}
|
|
281
|
+
return {
|
|
282
|
+
position: util_1.util.createPosition(0, 0),
|
|
283
|
+
prefix: '',
|
|
284
|
+
suffix: '\n'
|
|
285
|
+
};
|
|
286
|
+
}
|
|
99
287
|
/**
|
|
100
288
|
* Builds a map of diagnostic code → all matching diagnostics in the current file for each
|
|
101
289
|
* code in `eventCodes`. Scope-level codes are not present in `file.getDiagnostics()` so they
|
|
@@ -225,7 +413,7 @@ class CodeActionsProcessor {
|
|
|
225
413
|
files = file.program.findFilesForClass(lowerClassName);
|
|
226
414
|
}
|
|
227
415
|
}
|
|
228
|
-
//skip ambiguous names
|
|
416
|
+
//skip ambiguous names; we can't choose a file automatically
|
|
229
417
|
if (files.length !== 1) {
|
|
230
418
|
continue;
|
|
231
419
|
}
|
|
@@ -480,6 +668,23 @@ class CodeActionsProcessor {
|
|
|
480
668
|
}
|
|
481
669
|
this.emitOrFixAll(`Add missing 'override' keyword`, `Fix all: Add missing 'override' keywords`, changes, diagnostics[0]);
|
|
482
670
|
}
|
|
671
|
+
/**
|
|
672
|
+
* Adds one code action per legal terminator. The first entry of `expected` is marked
|
|
673
|
+
* `isPreferred`, matching the parser's convention of listing the canonical terminator first.
|
|
674
|
+
*/
|
|
675
|
+
suggestMismatchedEndingTokenQuickFixes(diagnostics) {
|
|
676
|
+
const { expected, found } = diagnostics[0].data;
|
|
677
|
+
for (let index = 0; index < expected.length; index++) {
|
|
678
|
+
const replacement = expected[index];
|
|
679
|
+
const changes = diagnostics.map(diagnostic => ({
|
|
680
|
+
type: 'replace',
|
|
681
|
+
filePath: this.event.file.srcPath,
|
|
682
|
+
range: diagnostic.range,
|
|
683
|
+
newText: replacement
|
|
684
|
+
}));
|
|
685
|
+
this.emitOrFixAll(`Convert '${found}' to '${replacement}'`, `Fix all: Convert '${found}' to '${replacement}'`, changes, diagnostics[0], index === 0);
|
|
686
|
+
}
|
|
687
|
+
}
|
|
483
688
|
/**
|
|
484
689
|
* Adds code actions to remove the invalid `override` keyword from a constructor method.
|
|
485
690
|
*/
|
|
@@ -487,7 +692,7 @@ class CodeActionsProcessor {
|
|
|
487
692
|
const changes = diagnostics.map(d => ({
|
|
488
693
|
type: 'delete',
|
|
489
694
|
filePath: this.event.file.srcPath,
|
|
490
|
-
// delete "override "
|
|
695
|
+
// delete "override " (the keyword token plus the trailing space before function/sub)
|
|
491
696
|
range: util_1.util.createRange(d.range.start.line, d.range.start.character, d.range.end.line, d.range.end.character + 1)
|
|
492
697
|
}));
|
|
493
698
|
this.emitOrFixAll(`Remove 'override' from constructor`, `Fix all: Remove 'override' from constructors`, changes, diagnostics[0]);
|
|
@@ -521,26 +726,64 @@ class CodeActionsProcessor {
|
|
|
521
726
|
* action when there are multiple changes (same pattern as ESLint's "Fix all X problems").
|
|
522
727
|
* Does nothing when the changes array is empty.
|
|
523
728
|
*/
|
|
524
|
-
emitOrFixAll(singleTitle, fixAllTitle, changes, diagnostic) {
|
|
729
|
+
emitOrFixAll(singleTitle, fixAllTitle, changes, diagnostic, isPreferred) {
|
|
525
730
|
if (changes.length === 0) {
|
|
526
731
|
return;
|
|
527
732
|
}
|
|
528
733
|
if (changes.length === 1) {
|
|
529
|
-
this.event.codeActions.push(CodeActionUtil_1.codeActionUtil.createCodeAction({
|
|
530
|
-
title: singleTitle,
|
|
531
|
-
diagnostics: [diagnostic],
|
|
532
|
-
kind: vscode_languageserver_1.CodeActionKind.QuickFix,
|
|
533
|
-
changes: changes
|
|
534
|
-
}));
|
|
734
|
+
this.event.codeActions.push(CodeActionUtil_1.codeActionUtil.createCodeAction(Object.assign(Object.assign({ title: singleTitle, diagnostics: [diagnostic] }, (isPreferred ? { isPreferred: true } : {})), { kind: vscode_languageserver_1.CodeActionKind.QuickFix, changes: changes })));
|
|
535
735
|
}
|
|
536
736
|
else {
|
|
537
|
-
this.event.codeActions.push(CodeActionUtil_1.codeActionUtil.createCodeAction({
|
|
538
|
-
title: fixAllTitle,
|
|
539
|
-
kind: vscode_languageserver_1.CodeActionKind.QuickFix,
|
|
540
|
-
changes: changes
|
|
541
|
-
}));
|
|
737
|
+
this.event.codeActions.push(CodeActionUtil_1.codeActionUtil.createCodeAction(Object.assign(Object.assign({ title: fixAllTitle }, (isPreferred ? { isPreferred: true } : {})), { kind: vscode_languageserver_1.CodeActionKind.QuickFix, changes: changes })));
|
|
542
738
|
}
|
|
543
739
|
}
|
|
544
740
|
}
|
|
545
741
|
exports.CodeActionsProcessor = CodeActionsProcessor;
|
|
742
|
+
/**
|
|
743
|
+
* Parses a comment's text and returns the directive details if it is one. Recognizes
|
|
744
|
+
* `'`, `rem`, and `<!-- -->` comment styles. Returns `null` for comments that aren't directives.
|
|
745
|
+
* `block` covers `bs:disable`. The `bs:enable` partner isn't surfaced since the quick fix only
|
|
746
|
+
* extends `bs:disable` directives.
|
|
747
|
+
*/
|
|
748
|
+
function parseDisableComment(text) {
|
|
749
|
+
let inner = text;
|
|
750
|
+
if (inner.startsWith('<!--')) {
|
|
751
|
+
inner = inner.slice('<!--'.length);
|
|
752
|
+
if (inner.endsWith('-->')) {
|
|
753
|
+
inner = inner.slice(0, -('-->'.length));
|
|
754
|
+
}
|
|
755
|
+
}
|
|
756
|
+
else if (inner.startsWith(`'`)) {
|
|
757
|
+
inner = inner.slice(1);
|
|
758
|
+
}
|
|
759
|
+
else if (/^rem\b/i.test(inner)) {
|
|
760
|
+
inner = inner.slice('rem'.length);
|
|
761
|
+
}
|
|
762
|
+
inner = inner.trimStart();
|
|
763
|
+
const lower = inner.toLowerCase();
|
|
764
|
+
//match longest-prefix first so `bs:disable-line` doesn't get parsed as `bs:disable`
|
|
765
|
+
let directiveType;
|
|
766
|
+
let prefixLength;
|
|
767
|
+
if (lower.startsWith('bs:disable-next-line')) {
|
|
768
|
+
directiveType = 'next-line';
|
|
769
|
+
prefixLength = 'bs:disable-next-line'.length;
|
|
770
|
+
}
|
|
771
|
+
else if (lower.startsWith('bs:disable-line')) {
|
|
772
|
+
directiveType = 'line';
|
|
773
|
+
prefixLength = 'bs:disable-line'.length;
|
|
774
|
+
}
|
|
775
|
+
else if (lower.startsWith('bs:disable')) {
|
|
776
|
+
directiveType = 'block';
|
|
777
|
+
prefixLength = 'bs:disable'.length;
|
|
778
|
+
}
|
|
779
|
+
else {
|
|
780
|
+
return null;
|
|
781
|
+
}
|
|
782
|
+
inner = inner.slice(prefixLength);
|
|
783
|
+
if (inner.startsWith(':')) {
|
|
784
|
+
inner = inner.slice(1);
|
|
785
|
+
}
|
|
786
|
+
const codes = inner.trim().length === 0 ? [] : inner.trim().split(/\s+/);
|
|
787
|
+
return { directiveType: directiveType, codes: codes };
|
|
788
|
+
}
|
|
546
789
|
//# sourceMappingURL=CodeActionsProcessor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CodeActionsProcessor.js","sourceRoot":"","sources":["../../../src/bscPlugin/codeActions/CodeActionsProcessor.ts"],"names":[],"mappings":";;;AACA,iEAAuD;AACvD,yDAAsD;AAGtD,iEAA6D;AAI7D,gDAAgD;AAChD,qCAAkC;AAClC,0DAA+F;AAG/F,sDAAmD;AACnD,qDAAkD;AAClD,2DAAsE;AAEtE,MAAa,oBAAoB;IAC7B,YACW,KAA4B;QAA5B,UAAK,GAAL,KAAK,CAAuB;QAiH/B,qBAAgB,GAAG,IAAI,GAAG,EAAU,CAAC;IA9G7C,CAAC;IAED;;OAEG;IACI,OAAO;QACV,0EAA0E;QAC1E,KAAK,MAAM,UAAU,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE;YAC7C,IAAI,UAAU,CAAC,IAAI,KAAK,sCAAiB,CAAC,cAAc,IAAI,UAAU,CAAC,IAAI,KAAK,sCAAiB,CAAC,kBAAkB,EAAE;gBAClH,IAAI,CAAC,6BAA6B,CAAC,UAAiB,CAAC,CAAC;aACzD;iBAAM,IAAI,UAAU,CAAC,IAAI,KAAK,sCAAiB,CAAC,oBAAoB,EAAE;gBACnE,IAAI,CAAC,0BAA0B,CAAC,UAAiB,CAAC,CAAC;aACtD;iBAAM,IAAI,UAAU,CAAC,IAAI,KAAK,sCAAiB,CAAC,mCAAmC,EAAE;gBAClF,IAAI,CAAC,6BAA6B,CAAC,UAAiB,CAAC,CAAC;aACzD;iBAAM,IAAI,UAAU,CAAC,IAAI,KAAK,sCAAiB,CAAC,6BAA6B,EAAE;gBAC5E,IAAI,CAAC,mCAAmC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;aAC1D;iBAAM,IAAI,UAAU,CAAC,IAAI,KAAK,sCAAiB,CAAC,8BAA8B,EAAE;gBAC7E,IAAI,CAAC,sCAAsC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;aAC7D;iBAAM,IAAI,UAAU,CAAC,IAAI,KAAK,sCAAiB,CAAC,0BAA0B,EAAE;gBACzE,IAAI,CAAC,mCAAmC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;aAC1D;iBAAM,IAAI,UAAU,CAAC,IAAI,KAAK,sCAAiB,CAAC,wCAAwC,EAAE;gBACvF,IAAI,CAAC,mCAAmC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;aAC1D;iBAAM,IAAI,UAAU,CAAC,IAAI,KAAK,sCAAiB,CAAC,iCAAiC,EAAE;gBAChF,IAAI,CAAC,mCAAmC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;aAC1D;iBAAM,IAAI,UAAU,CAAC,IAAI,KAAK,sCAAiB,CAAC,wBAAwB,EAAE;gBACvE,IAAI,CAAC,mCAAmC,CAAC,CAAC,UAA+D,CAAC,CAAC,CAAC;aAC/G;iBAAM,IAAI,UAAU,CAAC,IAAI,KAAK,sCAAiB,CAAC,sBAAsB,EAAE;gBACrE,IAAI,CAAC,gCAAgC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;aACvD;iBAAM,IAAI,UAAU,CAAC,IAAI,KAAK,sCAAiB,CAAC,6CAA6C,EAAE;gBAC5F,IAAI,CAAC,8CAA8C,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;aACrE;SACJ;QAED,wEAAwE;QACxE,qEAAqE;QACrE,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QACpE,MAAM,iBAAiB,GAAG,IAAI,CAAC,wBAAwB,CAAC,UAAU,CAAC,CAAC;QAEpE,qFAAqF;QACrF,KAAK,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,iBAAiB,EAAE;YAC/C,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;gBACtB,IAAI,IAAI,KAAK,sCAAiB,CAAC,6BAA6B,EAAE;oBAC1D,IAAI,CAAC,mCAAmC,CAAC,SAAS,CAAC,CAAC;iBACvD;qBAAM,IAAI,IAAI,KAAK,sCAAiB,CAAC,8BAA8B,EAAE;oBAClE,IAAI,CAAC,sCAAsC,CAAC,SAAS,CAAC,CAAC;iBAC1D;qBAAM,IAAI,IAAI,KAAK,sCAAiB,CAAC,iCAAiC,EAAE;oBACrE,IAAI,CAAC,mCAAmC,CAAC,SAAS,CAAC,CAAC;iBACvD;qBAAM,IAAI,IAAI,KAAK,sCAAiB,CAAC,6CAA6C,EAAE;oBACjF,IAAI,CAAC,8CAA8C,CAAC,SAAS,CAAC,CAAC;iBAClE;qBAAM,IAAI,IAAI,KAAK,sCAAiB,CAAC,0BAA0B,EAAE;oBAC9D,IAAI,CAAC,mCAAmC,CAAC,SAAS,CAAC,CAAC;iBACvD;qBAAM,IAAI,IAAI,KAAK,sCAAiB,CAAC,wCAAwC,EAAE;oBAC5E,IAAI,CAAC,mCAAmC,CAAC,SAAS,CAAC,CAAC;iBACvD;qBAAM,IAAI,IAAI,KAAK,sCAAiB,CAAC,wBAAwB,EAAE;oBAC5D,IAAI,CAAC,mCAAmC,CAAC,SAAgE,CAAC,CAAC;iBAC9G;qBAAM,IAAI,IAAI,KAAK,sCAAiB,CAAC,sBAAsB,EAAE;oBAC1D,IAAI,CAAC,gCAAgC,CAAC,SAAS,CAAC,CAAC;iBACpD;aACJ;SACJ;QAED,6EAA6E;QAC7E,IACI,UAAU,CAAC,GAAG,CAAC,sCAAiB,CAAC,cAAc,CAAC;YAChD,UAAU,CAAC,GAAG,CAAC,sCAAiB,CAAC,kBAAkB,CAAC;YACpD,UAAU,CAAC,GAAG,CAAC,sCAAiB,CAAC,oBAAoB,CAAC,EACxD;YACE,IAAI,CAAC,mCAAmC,EAAE,CAAC;SAC9C;QAED,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;IAClC,CAAC;IAED;;;;OAIG;IACK,wBAAwB,CAAC,UAAgC;;QAC7D,MAAM,eAAe,GAAG,IAAI,GAAG,CAAkB;YAC7C,sCAAiB,CAAC,0BAA0B;YAC5C,sCAAiB,CAAC,wCAAwC;YAC1D,sCAAiB,CAAC,wBAAwB;YAC1C,sCAAiB,CAAC,sBAAsB;SAC3C,CAAC,CAAC;QAEH,MAAM,eAAe,GAAG,IAAI,GAAG,EAAmC,CAAC;QACnE,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE;YAC9C,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE;gBAC9B,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;aACnC;YACD,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SACvC;QAED,MAAM,iBAAiB,GAAmB,CAAC,GAAG,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACvF,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAE,CAAkB,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,IAAI,CAAmB;YACjH,CAAC,CAAC,EAAE,CAAC;QAET,MAAM,MAAM,GAAG,IAAI,GAAG,EAAmC,CAAC;QAC1D,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE;YAC3B,MAAM,CAAC,GAAG,CACN,IAAI,EACJ,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC;gBACrB,CAAC,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC;gBAChD,CAAC,CAAC,MAAA,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,mCAAI,EAAE,CACxC,CAAC;SACL;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAID;;OAEG;IACK,qBAAqB,CAAC,UAAsB,EAAE,GAAW,EAAE,KAAgB;;QAC/E,yCAAyC;QACzC,IAAI,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;YAChC,OAAO;SACV;QAED,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC/B,MAAM,gBAAgB,GAAI,IAAI,CAAC,KAAK,CAAC,IAAgB,CAAC,MAAM,CAAC,UAAU,CAAC,gBAAgB,CAAC;QACzF,0FAA0F;QAC1F,MAAM,cAAc,GAAG,MAAA,MAAA,MAAA,gBAAgB,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC,0CAAE,WAAW,CAAC,KAAK,0CAAE,KAAK,mCAAI,WAAI,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAE5H,6CAA6C;QAC7C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;YACtB,MAAM,OAAO,GAAG,WAAI,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAClD,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CACvB,+BAAc,CAAC,gBAAgB,CAAC;gBAC5B,KAAK,EAAE,WAAW,OAAO,GAAG;gBAC5B,WAAW,EAAE,CAAC,UAAU,CAAC;gBACzB,WAAW,EAAE,KAAK;gBAClB,IAAI,EAAE,sCAAc,CAAC,QAAQ;gBAC7B,OAAO,EAAE,CAAC;wBACN,IAAI,EAAE,QAAQ;wBACd,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO;wBACjC,QAAQ,EAAE,cAAc;wBACxB,OAAO,EAAE,WAAW,OAAO,KAAK;qBACnC,CAAC;aACL,CAAC,CACL,CAAC;SACL;IACL,CAAC;IAED;;OAEG;IACK,6BAA6B,CAAC,UAAmD;;QACrF,mCAAmC;QACnC,IAAK,UAAU,CAAC,IAAgB,CAAC,SAAS,KAAK,kBAAS,CAAC,cAAc,EAAE;YACrE,OAAO;SACV;QACD,MAAM,SAAS,GAAG,CAAC,MAAA,UAAU,CAAC,IAAI,CAAC,QAAQ,mCAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;QAEnF,IAAI,CAAC,qBAAqB,CACtB,UAAU,EACV,SAAS,EACT;YACI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,SAAS,CAAC;YAC1D,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,SAAS,CAAC;YACvD,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,SAAS,CAAC;YAC3D,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,SAAS,CAAC;SACzD,CACJ,CAAC;IACN,CAAC;IAED;;OAEG;IACK,0BAA0B,CAAC,UAAyD;QACxF,mCAAmC;QACnC,IAAK,UAAU,CAAC,IAAgB,CAAC,SAAS,KAAK,kBAAS,CAAC,cAAc,EAAE;YACrE,OAAO;SACV;QACD,MAAM,cAAc,GAAG,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;QAC/D,IAAI,CAAC,qBAAqB,CACtB,UAAU,EACV,cAAc,EACd,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAC5D,CAAC;IACN,CAAC;IAED;;;;;OAKG;IACK,mCAAmC;;QACvC,IAAI,CAAC,IAAA,sBAAS,EAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,KAAK,kBAAS,CAAC,cAAc,EAAE;YACvF,OAAO;SACV;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;QAC7B,MAAM,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,gBAAgB,CAAC;QACjE,MAAM,cAAc,GAAG,MAAA,MAAA,MAAA,gBAAgB,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC,0CAAE,WAAW,CAAC,KAAK,0CAAE,KAAK,mCAAI,WAAI,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAE5H,MAAM,OAAO,GAAmB,EAAE,CAAC;QACnC,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;QAErC,8EAA8E;QAC9E,qFAAqF;QACrF,MAAM,kBAAkB,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;QAE5F,KAAK,MAAM,UAAU,IAAI,kBAAkB,EAAE;YACzC,IAAI,KAAK,GAAc,EAAE,CAAC;YAE1B,IAAI,UAAU,CAAC,IAAI,KAAK,sCAAiB,CAAC,cAAc,IAAI,UAAU,CAAC,IAAI,KAAK,sCAAiB,CAAC,kBAAkB,EAAE;gBAClH,MAAM,wBAAwB,GAAG,UAAqD,CAAC;gBACvF,MAAM,SAAS,GAAG,MAAA,CAAC,MAAA,MAAA,wBAAwB,CAAC,IAAI,0CAAE,QAAQ,mCAAI,MAAA,wBAAwB,CAAC,IAAI,0CAAE,IAAI,CAAC,0CAAE,WAAW,EAAE,CAAC;gBAClH,IAAI,SAAS,EAAE;oBACX,KAAK,GAAG;wBACJ,GAAG,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,SAAS,CAAC;wBAC/C,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,SAAS,CAAC;wBAC5C,GAAG,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,SAAS,CAAC;wBAChD,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,SAAS,CAAC;qBAC9C,CAAC;iBACL;aACJ;iBAAM,IAAI,UAAU,CAAC,IAAI,KAAK,sCAAiB,CAAC,oBAAoB,EAAE;gBACnE,MAAM,8BAA8B,GAAG,UAA2D,CAAC;gBACnG,MAAM,cAAc,GAAG,MAAA,MAAA,8BAA8B,CAAC,IAAI,0CAAE,SAAS,0CAAE,WAAW,EAAE,CAAC;gBACrF,IAAI,cAAc,EAAE;oBAChB,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC;iBAC1D;aACJ;YAED,6DAA6D;YAC7D,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;gBACpB,SAAS;aACZ;YAED,MAAM,OAAO,GAAG,WAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;YACtD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;gBAC1B,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBACxB,OAAO,CAAC,IAAI,CAAC;oBACT,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,IAAI,CAAC,OAAO;oBACtB,QAAQ,EAAE,cAAc;oBACxB,OAAO,EAAE,WAAW,OAAO,KAAK;iBACnC,CAAC,CAAC;aACN;SACJ;QAED,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;YACpB,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CACvB,+BAAc,CAAC,gBAAgB,CAAC;gBAC5B,KAAK,EAAE,uCAAuC;gBAC9C,IAAI,EAAE,sCAAc,CAAC,QAAQ;gBAC7B,OAAO,EAAE,OAAO;aACnB,CAAC,CACL,CAAC;SACL;IACL,CAAC;IAED;;;OAGG;IACK,6BAA6B,CAAC,UAAwE;QAC1G,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC;QACxC,MAAM,GAAG,GAAG,IAAA,mDAA+B,EAAC,IAAI,CAAC,KAAK,CAAC,IAAe,CAAC,CAAC;QACxE,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CACvB,+BAAc,CAAC,gBAAgB,CAAC;YAC5B,KAAK,EAAE,gBAAgB;YACvB,WAAW,EAAE,CAAC,UAAU,CAAC;YACzB,WAAW,EAAE,IAAI;YACjB,IAAI,EAAE,sCAAc,CAAC,QAAQ;YAC7B,OAAO,EAAE,CAAC;oBACN,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,OAAO;oBACjB,QAAQ,EAAE,GAAG;oBACb,OAAO,EAAE,kBAAkB;iBAC9B,CAAC;SACL,CAAC,CACL,CAAC;QACF,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CACvB,+BAAc,CAAC,gBAAgB,CAAC;YAC5B,KAAK,EAAE,eAAe;YACtB,WAAW,EAAE,CAAC,UAAU,CAAC;YACzB,IAAI,EAAE,sCAAc,CAAC,QAAQ;YAC7B,OAAO,EAAE,CAAC;oBACN,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,OAAO;oBACjB,QAAQ,EAAE,GAAG;oBACb,OAAO,EAAE,iBAAiB;iBAC7B,CAAC;SACL,CAAC,CACL,CAAC;QACF,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CACvB,+BAAc,CAAC,gBAAgB,CAAC;YAC5B,KAAK,EAAE,sBAAsB;YAC7B,WAAW,EAAE,CAAC,UAAU,CAAC;YACzB,IAAI,EAAE,sCAAc,CAAC,QAAQ;YAC7B,OAAO,EAAE,CAAC;oBACN,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,OAAO;oBACjB,QAAQ,EAAE,GAAG;oBACb,OAAO,EAAE,wBAAwB;iBACpC,CAAC;SACL,CAAC,CACL,CAAC;IACN,CAAC;IAED;;;OAGG;IACK,mCAAmC,CAAC,WAAyB;;QACjE,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAAC,CAAC;QACzE,IAAI,CAAC,YAAY,CAAC,qBAAqB,EAAE,oCAAoC,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;QAExG,iFAAiF;QACjF,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,IAAA,sBAAS,EAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;YACpD,MAAM,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;YAClC,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAChF,MAAM,IAAI,GAAG,UAAU,CAAC,YAAY,CAAqB,iCAAoB,CAAC,CAAC;YAE/E,sFAAsF;YACtF,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,KAAK,qBAAS,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;gBACnE,oEAAoE;gBACpE,MAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAqB,CAAC,IAAI,EAAE,EAAE;oBACxF,OAAO,IAAA,iCAAoB,EAAC,IAAI,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,KAAK,qBAAS,CAAC,QAAQ,CAAC;gBACvF,CAAC,CAAC,CAAC;gBACH,MAAM,gBAAgB,GAAG,MAAA,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,YAAY,CAAC,IAAI,mCAAI,UAAU,CAAC;gBAC5E,MAAM,mBAAmB,GAAG,MAAA,MAAA,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,GAAG,0CAAE,IAAI,mCAAI,cAAc,CAAC;gBAC3E,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CACvB,+BAAc,CAAC,gBAAgB,CAAC;oBAC5B,KAAK,EAAE,WAAW,IAAI,CAAC,YAAY,CAAC,IAAI,OAAO,gBAAgB,EAAE;oBACjE,WAAW,EAAE,CAAC,UAAU,CAAC;oBACzB,IAAI,EAAE,sCAAc,CAAC,QAAQ;oBAC7B,OAAO,EAAE;wBACL,UAAU;wBACV,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,gBAAgB,EAAE;wBACjH,cAAc;wBACd,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE;qBAC9G;iBACJ,CAAC,CACL,CAAC;aACL;YAED,kEAAkE;YAClE,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,KAAK,qBAAS,CAAC,QAAQ,IAAI,CAAA,MAAA,IAAI,CAAC,eAAe,0CAAE,IAAI,MAAK,qBAAS,CAAC,IAAI,EAAE;gBAChG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CACvB,+BAAc,CAAC,gBAAgB,CAAC;oBAC5B,KAAK,EAAE,8CAA8C;oBACrD,WAAW,EAAE,CAAC,UAAU,CAAC;oBACzB,IAAI,EAAE,sCAAc,CAAC,QAAQ;oBAC7B,OAAO,EAAE,CAAC,IAAI,CAAC,iCAAiC,CAAC,IAAI,CAAC,CAAC;iBAC1D,CAAC,CACL,CAAC;aACL;SACJ;IACL,CAAC;IAED;;;OAGG;IACK,sCAAsC,CAAC,WAAyB;QACpE,IAAI,CAAC,IAAA,sBAAS,EAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;YAC7B,OAAO;SACV;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;QAE7B,wEAAwE;QACxE,IAAI,MAAc,CAAC;QACnB,IAAI,QAAgB,CAAC;QACrB,IAAI,OAAe,CAAC;QACpB,IAAI,UAAkB,CAAC;QACvB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;YACpC,IAAI,MAAM,IAAI,QAAQ,IAAI,OAAO,IAAI,UAAU,EAAE;gBAC7C,MAAM;aACT;YACD,IAAI,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,MAAK,qBAAS,CAAC,EAAE,EAAE;gBAC9B,MAAM,GAAG,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,CAAC;aACxB;iBAAM,IAAI,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,MAAK,qBAAS,CAAC,IAAI,EAAE;gBACvC,QAAQ,GAAG,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,CAAC;aAC1B;iBAAM,IAAI,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,MAAK,qBAAS,CAAC,GAAG,EAAE;gBACtC,OAAO,GAAG,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,CAAC;aACzB;iBAAM,IAAI,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,MAAK,qBAAS,CAAC,MAAM,EAAE;gBACzC,UAAU,GAAG,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,CAAC;aAC5B;SACJ;QAED,oFAAoF;QACpF,mEAAmE;QACnE,MAAM,uBAAuB,GAAmB,EAAE,CAAC;QACnD,MAAM,cAAc,GAAmB,EAAE,CAAC;QAC1C,MAAM,aAAa,GAAG,IAAI,GAAG,EAAU,CAAC;QAExC,KAAK,MAAM,CAAC,IAAI,WAAW,EAAE;YACzB,MAAM,IAAI,GAAG,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACtD,MAAM,EAAE,GAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,YAAY,CAAqB,iCAAoB,CAAC,CAAC;YACxE,IAAI,CAAC,EAAE,EAAE;gBACL,SAAS;aACZ;YACD,MAAM,KAAK,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;YACnE,IAAI,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;gBAC1B,SAAS;aACZ;YACD,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAEzB,IAAI,EAAE,CAAC,YAAY,CAAC,IAAI,KAAK,qBAAS,CAAC,GAAG,IAAI,EAAE,CAAC,eAAe,IAAI,EAAE,CAAC,eAAe,CAAC,IAAI,KAAK,qBAAS,CAAC,IAAI,EAAE;gBAC5G,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,iCAAiC,CAAC,EAAE,CAAC,CAAC,CAAC;aAC5E;iBAAM,IAAI,EAAE,CAAC,YAAY,CAAC,IAAI,KAAK,qBAAS,CAAC,QAAQ,IAAI,CAAC,EAAE,CAAC,eAAe,EAAE;gBAC3E,cAAc,CAAC,IAAI,CAAC;oBAChB,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO;oBACjC,QAAQ,EAAE,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG;oBACjC,OAAO,EAAE,IAAI,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,IAAI,IAAI,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,MAAM,EAAE;iBACtD,CAAC,CAAC;aACN;SACJ;QAED,IAAI,CAAC,YAAY,CACb,yCAAyC,EACzC,mDAAmD,EACnD,uBAAuB,EACvB,WAAW,CAAC,CAAC,CAAC,CACjB,CAAC;QAEF,IAAI,CAAC,YAAY,CACb,8CAA8C,EAC9C,wDAAwD,EACxD,cAAc,EACd,WAAW,CAAC,CAAC,CAAC,CACjB,CAAC;QAEF,uFAAuF;QACvF,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE;YACzD,MAAM,IAAI,GAAG,IAAI,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,YAAY,CAAqB,iCAAoB,CAAC,CAAC;YAC1H,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CACvB,+BAAc,CAAC,gBAAgB,CAAC;gBAC5B,KAAK,EAAE,yBAAyB;gBAChC,WAAW,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;gBAC7B,IAAI,EAAE,sCAAc,CAAC,QAAQ;gBAC7B,OAAO,EAAE;oBACL,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,KAAK,EAAE;oBACtG,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,UAAU,aAAV,UAAU,cAAV,UAAU,GAAI,SAAS,EAAE;iBACvG;aACJ,CAAC,CACL,CAAC;SACL;IACL,CAAC;IAED,gCAAgC;IAEhC;;OAEG;IACK,mCAAmC,CAAC,WAAyB;;QACjE,MAAM,MAAM,GAAqC;YAC7C,CAAC,sCAAiB,CAAC,wCAAwC,CAAC,EAAE,CAAC,gCAAgC,EAAE,0CAA0C,CAAC;YAC5I,CAAC,sCAAiB,CAAC,iCAAiC,CAAC,EAAE,CAAC,sCAAsC,EAAE,gDAAgD,CAAC;SACpJ,CAAC;QACF,MAAM,CAAC,WAAW,EAAE,WAAW,CAAC,GAAG,MAAA,MAAM,CAAC,MAAA,WAAW,CAAC,CAAC,CAAC,0CAAE,IAAI,CAAC,mCAAI,CAAC,sBAAsB,EAAE,gCAAgC,CAAC,CAAC;QAC9H,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAe,UAAU,CAAC,EAAE;YACvD,OAAO;gBACH,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO;gBACjC,KAAK,EAAE,WAAI,CAAC,WAAW,CACnB,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAC3B,CAAC,EACD,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,EAC/B,CAAC,CACJ;aACJ,CAAC;QACN,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;IACzE,CAAC;IAED;;OAEG;IACK,mCAAmC,CAAC,WAAgE;;QACxG,MAAM,OAAO,GAAoB,EAAE,CAAC;QACpC,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE;YAClC,MAAM,eAAe,GAAG,MAAA,UAAU,CAAC,IAAI,0CAAE,eAAe,CAAC;YACzD,IAAI,CAAC,eAAe,EAAE;gBAClB,SAAS;aACZ;YACD,OAAO,CAAC,IAAI,CAAC;gBACT,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO;gBACjC,KAAK,EAAE,UAAU,CAAC,KAAK;gBACvB,OAAO,EAAE,eAAe;aAC3B,CAAC,CAAC;SACN;QACD,IAAI,CAAC,YAAY,CACb,+BAA+B,EAC/B,wCAAwC,EACxC,OAAO,EACP,WAAW,CAAC,CAAC,CAAC,CACjB,CAAC;IACN,CAAC;IAED,mCAAmC;IAEnC;;OAEG;IACK,gCAAgC,CAAC,WAAyB;QAC9D,IAAI,CAAC,IAAA,sBAAS,EAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;YAC7B,OAAO;SACV;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;QAC7B,MAAM,OAAO,GAAmB,EAAE,CAAC;QAEnC,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE;YAClC,IAAI,cAA+D,CAAC;YACpE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;;gBACnB,IACI,IAAA,8BAAiB,EAAC,IAAI,CAAC;oBACvB,CAAA,MAAA,MAAA,IAAI,CAAC,KAAK,0CAAE,KAAK,0CAAE,IAAI,MAAK,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI;oBACvD,CAAA,MAAA,MAAA,IAAI,CAAC,KAAK,0CAAE,KAAK,0CAAE,SAAS,MAAK,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,EACnE;oBACE,cAAc,GAAG,MAAA,MAAC,IAAwB,CAAC,IAAI,CAAC,YAAY,0CAAE,KAAK,0CAAE,KAAK,CAAC;iBAC9E;YACL,CAAC,EAAE,EAAE,QAAQ,EAAE,mBAAQ,CAAC,wBAAwB,EAAE,CAAC,CAAC;YAEpD,IAAI,cAAc,EAAE;gBAChB,OAAO,CAAC,IAAI,CAAC;oBACT,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,IAAI,CAAC,OAAO;oBACtB,QAAQ,EAAE,cAAc;oBACxB,OAAO,EAAE,WAAW;iBACvB,CAAC,CAAC;aACN;SACJ;QAED,IAAI,CAAC,YAAY,CACb,gCAAgC,EAChC,0CAA0C,EAC1C,OAAO,EACP,WAAW,CAAC,CAAC,CAAC,CACjB,CAAC;IACN,CAAC;IAED;;OAEG;IACK,8CAA8C,CAAC,WAAyB;QAC5E,MAAM,OAAO,GAAmB,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAClD,IAAI,EAAE,QAAiB;YACvB,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO;YACjC,qFAAqF;YACrF,KAAK,EAAE,WAAI,CAAC,WAAW,CACnB,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAClB,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,EACvB,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAChB,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,GAAG,CAAC,CAC5B;SACJ,CAAC,CAAC,CAAC;QACJ,IAAI,CAAC,YAAY,CACb,oCAAoC,EACpC,8CAA8C,EAC9C,OAAO,EACP,WAAW,CAAC,CAAC,CAAC,CACjB,CAAC;IACN,CAAC;IAED,2BAA2B;IAE3B;;;OAGG;IACK,0BAA0B,CAAC,UAAsB;QACrD,OAAO;YACH,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO;YACjC,KAAK,EAAE,WAAI,CAAC,WAAW,CACnB,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAC3B,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,GAAG,QAAQ,CAAC,MAAM,EAClD,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EACzB,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CACjC;SACJ,CAAC;IACN,CAAC;IAED;;;OAGG;IACK,iCAAiC,CAAC,IAAwB;QAC9D,OAAO;YACH,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO;YACjC,gBAAgB;YAChB,KAAK,EAAE,WAAI,CAAC,WAAW,CACnB,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAChC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,EACzC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EACnC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAC3C;SACJ,CAAC;IACN,CAAC;IAED;;;;OAIG;IACK,YAAY,CAChB,WAAmB,EACnB,WAAmB,EACnB,OAA2D,EAC3D,UAAsB;QAEtB,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;YACtB,OAAO;SACV;QACD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;YACtB,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CACvB,+BAAc,CAAC,gBAAgB,CAAC;gBAC5B,KAAK,EAAE,WAAW;gBAClB,WAAW,EAAE,CAAC,UAAU,CAAC;gBACzB,IAAI,EAAE,sCAAc,CAAC,QAAQ;gBAC7B,OAAO,EAAE,OAAO;aACnB,CAAC,CACL,CAAC;SACL;aAAM;YACH,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CACvB,+BAAc,CAAC,gBAAgB,CAAC;gBAC5B,KAAK,EAAE,WAAW;gBAClB,IAAI,EAAE,sCAAc,CAAC,QAAQ;gBAC7B,OAAO,EAAE,OAAO;aACnB,CAAC,CACL,CAAC;SACL;IACL,CAAC;CACJ;AA7nBD,oDA6nBC"}
|
|
1
|
+
{"version":3,"file":"CodeActionsProcessor.js","sourceRoot":"","sources":["../../../src/bscPlugin/codeActions/CodeActionsProcessor.ts"],"names":[],"mappings":"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"}
|