30
);
31
}
33
>
getStringEdit(edit: TextEdit): StringEdit {
34
const edits = edit.replacements.map(e => this.getStringReplacement(e));
35
return new Deps.deps.StringEdit(edits);
36
}
38
>
getStringReplacement(edit: TextReplacement): StringReplacement {
39
return new Deps.deps.StringReplacement(this.getOffsetRange(edit.range), edit.text);
40
}
42
>
getTextReplacement(edit: StringReplacement): TextReplacement {
43
return new Deps.deps.TextReplacement(this.getRange(edit.replaceRange), edit.newText);
44
}
46
>
getTextEdit(edit: StringEdit): TextEdit {
47
const edits = edit.replacements.map(e => this.getTextReplacement(e));
48
return new Deps.deps.TextEdit(edits);
49
}
51
>
52
>
interface IDeps {
53
>
StringEdit: typeof StringEdit;
54
>
StringReplacement: typeof StringReplacement;
55
>
TextReplacement: typeof TextReplacement;
56
>
TextEdit: typeof TextEdit;
57
>
TextLength: typeof TextLength;
58
>
}
59
>
60
>
class Deps {
61
>
static _deps: IDeps | undefined = undefined;
62
>
static get deps(): IDeps {
63
if (!this._deps) {
64
throw new Error('Dependencies not set. Call _setDependencies first.');