cspell-lib 9.6.4 → 9.8.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/dist/lib/Models/ValidationIssue.d.ts +8 -1
- package/dist/lib/Models/ValidationIssue.js +15 -1
- package/dist/lib/Models/ValidationResult.d.ts +24 -3
- package/dist/lib/Settings/CSpellSettingsServer.js +2 -2
- package/dist/lib/Settings/Controller/configLoader/configLoader.d.ts +2 -2
- package/dist/lib/Settings/Controller/configLoader/configLoader.js +27 -6
- package/dist/lib/Settings/Controller/configLoader/defaultConfigLoader.d.ts +0 -1
- package/dist/lib/Settings/DefaultSettings.d.ts +11 -0
- package/dist/lib/Settings/DefaultSettings.js +14 -3
- package/dist/lib/Settings/constants.js +1 -0
- package/dist/lib/Settings/sanitizeSettings.js +6 -0
- package/dist/lib/Transform/SourceMap.d.ts +115 -0
- package/dist/lib/Transform/SourceMap.js +469 -0
- package/dist/lib/Transform/SubstitutionTransformer.d.ts +32 -0
- package/dist/lib/Transform/SubstitutionTransformer.js +121 -0
- package/dist/lib/Transform/TextMap.d.ts +35 -0
- package/dist/lib/Transform/TextMap.js +86 -0
- package/dist/lib/{util → Transform}/TextRange.js +6 -7
- package/dist/lib/Transform/index.d.ts +9 -0
- package/dist/lib/Transform/index.js +5 -0
- package/dist/lib/{textValidation → Transform}/parsedText.d.ts +5 -6
- package/dist/lib/{textValidation → Transform}/parsedText.js +6 -34
- package/dist/lib/Transform/types.d.ts +5 -0
- package/dist/lib/Transform/types.js +2 -0
- package/dist/lib/spellCheckFile.d.ts +26 -1
- package/dist/lib/spellCheckFile.js +21 -8
- package/dist/lib/textValidation/docValidator.d.ts +5 -7
- package/dist/lib/textValidation/docValidator.js +14 -5
- package/dist/lib/textValidation/index.d.ts +1 -1
- package/dist/lib/textValidation/lineValidatorFactory.d.ts +5 -1
- package/dist/lib/textValidation/lineValidatorFactory.js +5 -3
- package/dist/lib/textValidation/settingsToValidateOptions.js +10 -1
- package/dist/lib/textValidation/textValidator.d.ts +1 -1
- package/dist/lib/textValidation/textValidator.js +1 -1
- package/dist/lib/util/fileReader.d.ts +1 -1
- package/package.json +26 -26
- package/dist/lib/util/TextMap.d.ts +0 -15
- package/dist/lib/util/TextMap.js +0 -54
- /package/dist/lib/{util → Transform}/TextRange.d.ts +0 -0
package/dist/lib/util/TextMap.js
DELETED
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
import assert from 'node:assert';
|
|
2
|
-
/**
|
|
3
|
-
* Extract a substring from a TextMap.
|
|
4
|
-
* @param textMap - A text range with an optional map
|
|
5
|
-
* @param extractRange - The range in the original document to extract
|
|
6
|
-
* @returns The TextMap covering extractRange
|
|
7
|
-
*/
|
|
8
|
-
export function extractTextMapRangeOrigin(textMap, extractRange) {
|
|
9
|
-
const { text: srcTxt, range: srcRange, map: srcMap } = textMap;
|
|
10
|
-
const [r0, r1] = srcRange;
|
|
11
|
-
const startOrig = Math.min(Math.max(extractRange[0], r0), r1);
|
|
12
|
-
const endOrig = Math.min(Math.max(extractRange[1], r0), r1);
|
|
13
|
-
const a = startOrig - r0;
|
|
14
|
-
const b = endOrig - r0;
|
|
15
|
-
const range = [startOrig, endOrig];
|
|
16
|
-
if (!srcMap || !srcMap.length || a === b) {
|
|
17
|
-
const text = srcTxt.slice(a, b);
|
|
18
|
-
return { text, range };
|
|
19
|
-
}
|
|
20
|
-
assert((srcMap.length & 1) === 0, 'Map must be pairs of values.');
|
|
21
|
-
const mapLen = srcMap.length;
|
|
22
|
-
const mapEndSrc = srcMap[mapLen - 2];
|
|
23
|
-
const mapEndDst = srcMap[mapLen - 1];
|
|
24
|
-
const endDiff = srcTxt.length - mapEndDst;
|
|
25
|
-
const head = !srcMap[0] && !srcMap[1] ? [] : [0, 0];
|
|
26
|
-
const tail = [mapEndSrc + endDiff, mapEndDst + endDiff];
|
|
27
|
-
const sMap = [...head, ...srcMap, ...tail];
|
|
28
|
-
let idx = 0;
|
|
29
|
-
for (; idx < sMap.length && a >= sMap[idx]; idx += 2) {
|
|
30
|
-
// empty
|
|
31
|
-
}
|
|
32
|
-
const aIdx = idx;
|
|
33
|
-
idx -= 2;
|
|
34
|
-
const a0 = a - sMap[idx];
|
|
35
|
-
const a1 = a0 + sMap[idx + 1];
|
|
36
|
-
for (; idx < sMap.length && b > sMap[idx]; idx += 2) {
|
|
37
|
-
// empty
|
|
38
|
-
}
|
|
39
|
-
const bIdx = idx;
|
|
40
|
-
const b0 = b - sMap[idx];
|
|
41
|
-
const b1 = b0 + sMap[idx + 1];
|
|
42
|
-
const text = srcTxt.slice(a1, b1);
|
|
43
|
-
if (bIdx === aIdx) {
|
|
44
|
-
return { text, range };
|
|
45
|
-
}
|
|
46
|
-
const ab = [a0, a1];
|
|
47
|
-
const map = sMap.slice(aIdx, bIdx + 2).map((v, i) => v - ab[i & 1]);
|
|
48
|
-
return { text, range, map };
|
|
49
|
-
}
|
|
50
|
-
export function doesIntersect(textMap, rangeOrigin) {
|
|
51
|
-
const r = textMap.range;
|
|
52
|
-
return r[0] < rangeOrigin[1] && r[1] > rangeOrigin[0];
|
|
53
|
-
}
|
|
54
|
-
//# sourceMappingURL=TextMap.js.map
|
|
File without changes
|