Use const enums for minimized ISuggestDataDto types

From #71060

**Problem**
ISuggestDataDto currently uses opaque property names in order to keep the size of the json object down. This makes the code difficult to read

**Proposed Fix**
Use a const enum to map human readable property name to the short names actually used for the json
This commit is contained in:
Matt Bierner
2019-09-13 16:14:08 -07:00
parent 7aff0c42c8
commit 14ae1247f8
3 changed files with 58 additions and 41 deletions

View File

@@ -929,21 +929,38 @@ export class IdObject {
}
}
export const enum ISuggestDataDtoField {
label = 'a',
kind = 'b',
detail = 'c',
documentation = 'd',
sortText = 'e',
filterText = 'f',
preselect = 'g',
insertText = 'h',
insertTextRules = 'i',
range = 'j',
commitCharacters = 'k',
additionalTextEdits = 'l',
command = 'm',
kindModifier = 'n',
}
export interface ISuggestDataDto {
a/* label */: string;
b/* kind */: modes.CompletionItemKind;
c/* detail */?: string;
d/* documentation */?: string | IMarkdownString;
e/* sortText */?: string;
f/* filterText */?: string;
g/* preselect */?: boolean;
h/* insertText */?: string;
i/* insertTextRules */?: modes.CompletionItemInsertTextRule;
j/* range */?: IRange;
k/* commitCharacters */?: string[];
l/* additionalTextEdits */?: ISingleEditOperation[];
m/* command */?: modes.Command;
n/* kindModifier */?: modes.CompletionItemTag[];
[ISuggestDataDtoField.label]: string;
[ISuggestDataDtoField.kind]: modes.CompletionItemKind;
[ISuggestDataDtoField.detail]?: string;
[ISuggestDataDtoField.documentation]?: string | IMarkdownString;
[ISuggestDataDtoField.sortText]?: string;
[ISuggestDataDtoField.filterText]?: string;
[ISuggestDataDtoField.preselect]?: boolean;
[ISuggestDataDtoField.insertText]?: string;
[ISuggestDataDtoField.insertTextRules]?: modes.CompletionItemInsertTextRule;
[ISuggestDataDtoField.range]?: IRange;
[ISuggestDataDtoField.commitCharacters]?: string[];
[ISuggestDataDtoField.additionalTextEdits]?: ISingleEditOperation[];
[ISuggestDataDtoField.command]?: modes.Command;
[ISuggestDataDtoField.kindModifier]?: modes.CompletionItemTag[];
// not-standard
x?: ChainedCacheId;
}