@lspeasy/core 1.0.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/LICENSE +21 -0
- package/README.md +550 -0
- package/dist/index.d.ts +44 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +32 -0
- package/dist/index.js.map +1 -0
- package/dist/jsonrpc/framing.d.ts +32 -0
- package/dist/jsonrpc/framing.d.ts.map +1 -0
- package/dist/jsonrpc/framing.js +96 -0
- package/dist/jsonrpc/framing.js.map +1 -0
- package/dist/jsonrpc/messages.d.ts +64 -0
- package/dist/jsonrpc/messages.d.ts.map +1 -0
- package/dist/jsonrpc/messages.js +23 -0
- package/dist/jsonrpc/messages.js.map +1 -0
- package/dist/jsonrpc/reader.d.ts +44 -0
- package/dist/jsonrpc/reader.d.ts.map +1 -0
- package/dist/jsonrpc/reader.js +107 -0
- package/dist/jsonrpc/reader.js.map +1 -0
- package/dist/jsonrpc/schemas.d.ts +103 -0
- package/dist/jsonrpc/schemas.d.ts.map +1 -0
- package/dist/jsonrpc/schemas.js +66 -0
- package/dist/jsonrpc/schemas.js.map +1 -0
- package/dist/jsonrpc/writer.d.ts +43 -0
- package/dist/jsonrpc/writer.d.ts.map +1 -0
- package/dist/jsonrpc/writer.js +110 -0
- package/dist/jsonrpc/writer.js.map +1 -0
- package/dist/middleware/compose.d.ts +3 -0
- package/dist/middleware/compose.d.ts.map +1 -0
- package/dist/middleware/compose.js +16 -0
- package/dist/middleware/compose.js.map +1 -0
- package/dist/middleware/index.d.ts +6 -0
- package/dist/middleware/index.d.ts.map +1 -0
- package/dist/middleware/index.js +5 -0
- package/dist/middleware/index.js.map +1 -0
- package/dist/middleware/pipeline.d.ts +5 -0
- package/dist/middleware/pipeline.d.ts.map +1 -0
- package/dist/middleware/pipeline.js +54 -0
- package/dist/middleware/pipeline.js.map +1 -0
- package/dist/middleware/scoped.d.ts +9 -0
- package/dist/middleware/scoped.d.ts.map +1 -0
- package/dist/middleware/scoped.js +20 -0
- package/dist/middleware/scoped.js.map +1 -0
- package/dist/middleware/typed.d.ts +3 -0
- package/dist/middleware/typed.d.ts.map +1 -0
- package/dist/middleware/typed.js +18 -0
- package/dist/middleware/typed.js.map +1 -0
- package/dist/middleware/types.d.ts +45 -0
- package/dist/middleware/types.d.ts.map +1 -0
- package/dist/middleware/types.js +2 -0
- package/dist/middleware/types.js.map +1 -0
- package/dist/protocol/capabilities.d.ts +93 -0
- package/dist/protocol/capabilities.d.ts.map +1 -0
- package/dist/protocol/capabilities.js +143 -0
- package/dist/protocol/capabilities.js.map +1 -0
- package/dist/protocol/capability-methods.d.ts +270 -0
- package/dist/protocol/capability-methods.d.ts.map +1 -0
- package/dist/protocol/capability-methods.js +14 -0
- package/dist/protocol/capability-methods.js.map +1 -0
- package/dist/protocol/enums.d.ts +336 -0
- package/dist/protocol/enums.d.ts.map +1 -0
- package/dist/protocol/enums.js +417 -0
- package/dist/protocol/enums.js.map +1 -0
- package/dist/protocol/infer.d.ts +112 -0
- package/dist/protocol/infer.d.ts.map +1 -0
- package/dist/protocol/infer.js +58 -0
- package/dist/protocol/infer.js.map +1 -0
- package/dist/protocol/namespaces.d.ts +1432 -0
- package/dist/protocol/namespaces.d.ts.map +1 -0
- package/dist/protocol/namespaces.js +570 -0
- package/dist/protocol/namespaces.js.map +1 -0
- package/dist/protocol/partial.d.ts +29 -0
- package/dist/protocol/partial.d.ts.map +1 -0
- package/dist/protocol/partial.js +24 -0
- package/dist/protocol/partial.js.map +1 -0
- package/dist/protocol/progress.d.ts +32 -0
- package/dist/protocol/progress.d.ts.map +1 -0
- package/dist/protocol/progress.js +60 -0
- package/dist/protocol/progress.js.map +1 -0
- package/dist/protocol/schemas.d.ts +534 -0
- package/dist/protocol/schemas.d.ts.map +1 -0
- package/dist/protocol/schemas.js +271 -0
- package/dist/protocol/schemas.js.map +1 -0
- package/dist/protocol/types.d.ts +19 -0
- package/dist/protocol/types.d.ts.map +1 -0
- package/dist/protocol/types.js +8 -0
- package/dist/protocol/types.js.map +1 -0
- package/dist/protocol/watching.d.ts +29 -0
- package/dist/protocol/watching.d.ts.map +1 -0
- package/dist/protocol/watching.js +36 -0
- package/dist/protocol/watching.js.map +1 -0
- package/dist/protocol/workspace.d.ts +24 -0
- package/dist/protocol/workspace.d.ts.map +1 -0
- package/dist/protocol/workspace.js +26 -0
- package/dist/protocol/workspace.js.map +1 -0
- package/dist/transport/events.d.ts +27 -0
- package/dist/transport/events.d.ts.map +1 -0
- package/dist/transport/events.js +34 -0
- package/dist/transport/events.js.map +1 -0
- package/dist/transport/stdio.d.ts +55 -0
- package/dist/transport/stdio.d.ts.map +1 -0
- package/dist/transport/stdio.js +147 -0
- package/dist/transport/stdio.js.map +1 -0
- package/dist/transport/transport.d.ts +38 -0
- package/dist/transport/transport.d.ts.map +1 -0
- package/dist/transport/transport.js +5 -0
- package/dist/transport/transport.js.map +1 -0
- package/dist/transport/websocket.d.ts +142 -0
- package/dist/transport/websocket.d.ts.map +1 -0
- package/dist/transport/websocket.js +324 -0
- package/dist/transport/websocket.js.map +1 -0
- package/dist/utils/cancellation.d.ts +47 -0
- package/dist/utils/cancellation.d.ts.map +1 -0
- package/dist/utils/cancellation.js +77 -0
- package/dist/utils/cancellation.js.map +1 -0
- package/dist/utils/disposable-event-emitter.d.ts +26 -0
- package/dist/utils/disposable-event-emitter.d.ts.map +1 -0
- package/dist/utils/disposable-event-emitter.js +62 -0
- package/dist/utils/disposable-event-emitter.js.map +1 -0
- package/dist/utils/disposable.d.ts +34 -0
- package/dist/utils/disposable.d.ts.map +1 -0
- package/dist/utils/disposable.js +55 -0
- package/dist/utils/disposable.js.map +1 -0
- package/dist/utils/document.d.ts +20 -0
- package/dist/utils/document.d.ts.map +1 -0
- package/dist/utils/document.js +54 -0
- package/dist/utils/document.js.map +1 -0
- package/dist/utils/errors.d.ts +69 -0
- package/dist/utils/errors.d.ts.map +1 -0
- package/dist/utils/errors.js +104 -0
- package/dist/utils/errors.js.map +1 -0
- package/dist/utils/handler-registry.d.ts +35 -0
- package/dist/utils/handler-registry.d.ts.map +1 -0
- package/dist/utils/handler-registry.js +68 -0
- package/dist/utils/handler-registry.js.map +1 -0
- package/dist/utils/index.d.ts +5 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +4 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/internal.d.ts +3 -0
- package/dist/utils/internal.d.ts.map +1 -0
- package/dist/utils/internal.js +3 -0
- package/dist/utils/internal.js.map +1 -0
- package/dist/utils/logger.d.ts +47 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +61 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/pending-request-tracker.d.ts +36 -0
- package/dist/utils/pending-request-tracker.d.ts.map +1 -0
- package/dist/utils/pending-request-tracker.js +93 -0
- package/dist/utils/pending-request-tracker.js.map +1 -0
- package/dist/utils/transport-attachment.d.ts +34 -0
- package/dist/utils/transport-attachment.d.ts.map +1 -0
- package/dist/utils/transport-attachment.js +48 -0
- package/dist/utils/transport-attachment.js.map +1 -0
- package/package.json +87 -0
|
@@ -0,0 +1,417 @@
|
|
|
1
|
+
export { ApplyKind };
|
|
2
|
+
/**
|
|
3
|
+
* LSP Protocol Enums
|
|
4
|
+
*
|
|
5
|
+
* Auto-generated from metaModel.json
|
|
6
|
+
* DO NOT EDIT MANUALLY
|
|
7
|
+
*/
|
|
8
|
+
/* oxlint-disable typescript-eslint/no-duplicate-enum-values */
|
|
9
|
+
var ApplyKind;
|
|
10
|
+
(function (ApplyKind) {
|
|
11
|
+
ApplyKind[ApplyKind["Replace"] = 1] = "Replace";
|
|
12
|
+
ApplyKind[ApplyKind["Merge"] = 2] = "Merge";
|
|
13
|
+
})(ApplyKind || (ApplyKind = {}));
|
|
14
|
+
export { CodeActionKind };
|
|
15
|
+
var CodeActionKind;
|
|
16
|
+
(function (CodeActionKind) {
|
|
17
|
+
CodeActionKind["Empty"] = "";
|
|
18
|
+
CodeActionKind["QuickFix"] = "quickfix";
|
|
19
|
+
CodeActionKind["Refactor"] = "refactor";
|
|
20
|
+
CodeActionKind["RefactorExtract"] = "refactor.extract";
|
|
21
|
+
CodeActionKind["RefactorInline"] = "refactor.inline";
|
|
22
|
+
CodeActionKind["RefactorMove"] = "refactor.move";
|
|
23
|
+
CodeActionKind["RefactorRewrite"] = "refactor.rewrite";
|
|
24
|
+
CodeActionKind["Source"] = "source";
|
|
25
|
+
CodeActionKind["SourceOrganizeImports"] = "source.organizeImports";
|
|
26
|
+
CodeActionKind["SourceFixAll"] = "source.fixAll";
|
|
27
|
+
CodeActionKind["Notebook"] = "notebook";
|
|
28
|
+
})(CodeActionKind || (CodeActionKind = {}));
|
|
29
|
+
export { CodeActionTag };
|
|
30
|
+
var CodeActionTag;
|
|
31
|
+
(function (CodeActionTag) {
|
|
32
|
+
CodeActionTag[CodeActionTag["LLMGenerated"] = 1] = "LLMGenerated";
|
|
33
|
+
})(CodeActionTag || (CodeActionTag = {}));
|
|
34
|
+
export { CodeActionTriggerKind };
|
|
35
|
+
var CodeActionTriggerKind;
|
|
36
|
+
(function (CodeActionTriggerKind) {
|
|
37
|
+
CodeActionTriggerKind[CodeActionTriggerKind["Invoked"] = 1] = "Invoked";
|
|
38
|
+
CodeActionTriggerKind[CodeActionTriggerKind["Automatic"] = 2] = "Automatic";
|
|
39
|
+
})(CodeActionTriggerKind || (CodeActionTriggerKind = {}));
|
|
40
|
+
export { CompletionItemKind };
|
|
41
|
+
var CompletionItemKind;
|
|
42
|
+
(function (CompletionItemKind) {
|
|
43
|
+
CompletionItemKind[CompletionItemKind["Text"] = 1] = "Text";
|
|
44
|
+
CompletionItemKind[CompletionItemKind["Method"] = 2] = "Method";
|
|
45
|
+
CompletionItemKind[CompletionItemKind["Function"] = 3] = "Function";
|
|
46
|
+
CompletionItemKind[CompletionItemKind["Constructor"] = 4] = "Constructor";
|
|
47
|
+
CompletionItemKind[CompletionItemKind["Field"] = 5] = "Field";
|
|
48
|
+
CompletionItemKind[CompletionItemKind["Variable"] = 6] = "Variable";
|
|
49
|
+
CompletionItemKind[CompletionItemKind["Class"] = 7] = "Class";
|
|
50
|
+
CompletionItemKind[CompletionItemKind["Interface"] = 8] = "Interface";
|
|
51
|
+
CompletionItemKind[CompletionItemKind["Module"] = 9] = "Module";
|
|
52
|
+
CompletionItemKind[CompletionItemKind["Property"] = 10] = "Property";
|
|
53
|
+
CompletionItemKind[CompletionItemKind["Unit"] = 11] = "Unit";
|
|
54
|
+
CompletionItemKind[CompletionItemKind["Value"] = 12] = "Value";
|
|
55
|
+
CompletionItemKind[CompletionItemKind["Enum"] = 13] = "Enum";
|
|
56
|
+
CompletionItemKind[CompletionItemKind["Keyword"] = 14] = "Keyword";
|
|
57
|
+
CompletionItemKind[CompletionItemKind["Snippet"] = 15] = "Snippet";
|
|
58
|
+
CompletionItemKind[CompletionItemKind["Color"] = 16] = "Color";
|
|
59
|
+
CompletionItemKind[CompletionItemKind["File"] = 17] = "File";
|
|
60
|
+
CompletionItemKind[CompletionItemKind["Reference"] = 18] = "Reference";
|
|
61
|
+
CompletionItemKind[CompletionItemKind["Folder"] = 19] = "Folder";
|
|
62
|
+
CompletionItemKind[CompletionItemKind["EnumMember"] = 20] = "EnumMember";
|
|
63
|
+
CompletionItemKind[CompletionItemKind["Constant"] = 21] = "Constant";
|
|
64
|
+
CompletionItemKind[CompletionItemKind["Struct"] = 22] = "Struct";
|
|
65
|
+
CompletionItemKind[CompletionItemKind["Event"] = 23] = "Event";
|
|
66
|
+
CompletionItemKind[CompletionItemKind["Operator"] = 24] = "Operator";
|
|
67
|
+
CompletionItemKind[CompletionItemKind["TypeParameter"] = 25] = "TypeParameter";
|
|
68
|
+
})(CompletionItemKind || (CompletionItemKind = {}));
|
|
69
|
+
export { CompletionItemTag };
|
|
70
|
+
var CompletionItemTag;
|
|
71
|
+
(function (CompletionItemTag) {
|
|
72
|
+
CompletionItemTag[CompletionItemTag["Deprecated"] = 1] = "Deprecated";
|
|
73
|
+
})(CompletionItemTag || (CompletionItemTag = {}));
|
|
74
|
+
export { CompletionTriggerKind };
|
|
75
|
+
var CompletionTriggerKind;
|
|
76
|
+
(function (CompletionTriggerKind) {
|
|
77
|
+
CompletionTriggerKind[CompletionTriggerKind["Invoked"] = 1] = "Invoked";
|
|
78
|
+
CompletionTriggerKind[CompletionTriggerKind["TriggerCharacter"] = 2] = "TriggerCharacter";
|
|
79
|
+
CompletionTriggerKind[CompletionTriggerKind["TriggerForIncompleteCompletions"] = 3] = "TriggerForIncompleteCompletions";
|
|
80
|
+
})(CompletionTriggerKind || (CompletionTriggerKind = {}));
|
|
81
|
+
export { DiagnosticSeverity };
|
|
82
|
+
var DiagnosticSeverity;
|
|
83
|
+
(function (DiagnosticSeverity) {
|
|
84
|
+
DiagnosticSeverity[DiagnosticSeverity["Error"] = 1] = "Error";
|
|
85
|
+
DiagnosticSeverity[DiagnosticSeverity["Warning"] = 2] = "Warning";
|
|
86
|
+
DiagnosticSeverity[DiagnosticSeverity["Information"] = 3] = "Information";
|
|
87
|
+
DiagnosticSeverity[DiagnosticSeverity["Hint"] = 4] = "Hint";
|
|
88
|
+
})(DiagnosticSeverity || (DiagnosticSeverity = {}));
|
|
89
|
+
export { DiagnosticTag };
|
|
90
|
+
var DiagnosticTag;
|
|
91
|
+
(function (DiagnosticTag) {
|
|
92
|
+
DiagnosticTag[DiagnosticTag["Unnecessary"] = 1] = "Unnecessary";
|
|
93
|
+
DiagnosticTag[DiagnosticTag["Deprecated"] = 2] = "Deprecated";
|
|
94
|
+
})(DiagnosticTag || (DiagnosticTag = {}));
|
|
95
|
+
export { DocumentDiagnosticReportKind };
|
|
96
|
+
var DocumentDiagnosticReportKind;
|
|
97
|
+
(function (DocumentDiagnosticReportKind) {
|
|
98
|
+
DocumentDiagnosticReportKind["Full"] = "full";
|
|
99
|
+
DocumentDiagnosticReportKind["Unchanged"] = "unchanged";
|
|
100
|
+
})(DocumentDiagnosticReportKind || (DocumentDiagnosticReportKind = {}));
|
|
101
|
+
export { DocumentHighlightKind };
|
|
102
|
+
var DocumentHighlightKind;
|
|
103
|
+
(function (DocumentHighlightKind) {
|
|
104
|
+
DocumentHighlightKind[DocumentHighlightKind["Text"] = 1] = "Text";
|
|
105
|
+
DocumentHighlightKind[DocumentHighlightKind["Read"] = 2] = "Read";
|
|
106
|
+
DocumentHighlightKind[DocumentHighlightKind["Write"] = 3] = "Write";
|
|
107
|
+
})(DocumentHighlightKind || (DocumentHighlightKind = {}));
|
|
108
|
+
export { ErrorCodes };
|
|
109
|
+
var ErrorCodes;
|
|
110
|
+
(function (ErrorCodes) {
|
|
111
|
+
ErrorCodes[ErrorCodes["ParseError"] = -32700] = "ParseError";
|
|
112
|
+
ErrorCodes[ErrorCodes["InvalidRequest"] = -32600] = "InvalidRequest";
|
|
113
|
+
ErrorCodes[ErrorCodes["MethodNotFound"] = -32601] = "MethodNotFound";
|
|
114
|
+
ErrorCodes[ErrorCodes["InvalidParams"] = -32602] = "InvalidParams";
|
|
115
|
+
ErrorCodes[ErrorCodes["InternalError"] = -32603] = "InternalError";
|
|
116
|
+
ErrorCodes[ErrorCodes["ServerNotInitialized"] = -32002] = "ServerNotInitialized";
|
|
117
|
+
ErrorCodes[ErrorCodes["UnknownErrorCode"] = -32001] = "UnknownErrorCode";
|
|
118
|
+
})(ErrorCodes || (ErrorCodes = {}));
|
|
119
|
+
export { FailureHandlingKind };
|
|
120
|
+
var FailureHandlingKind;
|
|
121
|
+
(function (FailureHandlingKind) {
|
|
122
|
+
FailureHandlingKind["Abort"] = "abort";
|
|
123
|
+
FailureHandlingKind["Transactional"] = "transactional";
|
|
124
|
+
FailureHandlingKind["TextOnlyTransactional"] = "textOnlyTransactional";
|
|
125
|
+
FailureHandlingKind["Undo"] = "undo";
|
|
126
|
+
})(FailureHandlingKind || (FailureHandlingKind = {}));
|
|
127
|
+
export { FileChangeType };
|
|
128
|
+
var FileChangeType;
|
|
129
|
+
(function (FileChangeType) {
|
|
130
|
+
FileChangeType[FileChangeType["Created"] = 1] = "Created";
|
|
131
|
+
FileChangeType[FileChangeType["Changed"] = 2] = "Changed";
|
|
132
|
+
FileChangeType[FileChangeType["Deleted"] = 3] = "Deleted";
|
|
133
|
+
})(FileChangeType || (FileChangeType = {}));
|
|
134
|
+
export { FileOperationPatternKind };
|
|
135
|
+
var FileOperationPatternKind;
|
|
136
|
+
(function (FileOperationPatternKind) {
|
|
137
|
+
FileOperationPatternKind["file"] = "file";
|
|
138
|
+
FileOperationPatternKind["folder"] = "folder";
|
|
139
|
+
})(FileOperationPatternKind || (FileOperationPatternKind = {}));
|
|
140
|
+
export { FoldingRangeKind };
|
|
141
|
+
var FoldingRangeKind;
|
|
142
|
+
(function (FoldingRangeKind) {
|
|
143
|
+
FoldingRangeKind["Comment"] = "comment";
|
|
144
|
+
FoldingRangeKind["Imports"] = "imports";
|
|
145
|
+
FoldingRangeKind["Region"] = "region";
|
|
146
|
+
})(FoldingRangeKind || (FoldingRangeKind = {}));
|
|
147
|
+
export { InlayHintKind };
|
|
148
|
+
var InlayHintKind;
|
|
149
|
+
(function (InlayHintKind) {
|
|
150
|
+
InlayHintKind[InlayHintKind["Type"] = 1] = "Type";
|
|
151
|
+
InlayHintKind[InlayHintKind["Parameter"] = 2] = "Parameter";
|
|
152
|
+
})(InlayHintKind || (InlayHintKind = {}));
|
|
153
|
+
export { InlineCompletionTriggerKind };
|
|
154
|
+
var InlineCompletionTriggerKind;
|
|
155
|
+
(function (InlineCompletionTriggerKind) {
|
|
156
|
+
InlineCompletionTriggerKind[InlineCompletionTriggerKind["Invoked"] = 1] = "Invoked";
|
|
157
|
+
InlineCompletionTriggerKind[InlineCompletionTriggerKind["Automatic"] = 2] = "Automatic";
|
|
158
|
+
})(InlineCompletionTriggerKind || (InlineCompletionTriggerKind = {}));
|
|
159
|
+
export { InsertTextFormat };
|
|
160
|
+
var InsertTextFormat;
|
|
161
|
+
(function (InsertTextFormat) {
|
|
162
|
+
InsertTextFormat[InsertTextFormat["PlainText"] = 1] = "PlainText";
|
|
163
|
+
InsertTextFormat[InsertTextFormat["Snippet"] = 2] = "Snippet";
|
|
164
|
+
})(InsertTextFormat || (InsertTextFormat = {}));
|
|
165
|
+
export { InsertTextMode };
|
|
166
|
+
var InsertTextMode;
|
|
167
|
+
(function (InsertTextMode) {
|
|
168
|
+
InsertTextMode[InsertTextMode["asIs"] = 1] = "asIs";
|
|
169
|
+
InsertTextMode[InsertTextMode["adjustIndentation"] = 2] = "adjustIndentation";
|
|
170
|
+
})(InsertTextMode || (InsertTextMode = {}));
|
|
171
|
+
export { LanguageKind };
|
|
172
|
+
var LanguageKind;
|
|
173
|
+
(function (LanguageKind) {
|
|
174
|
+
LanguageKind["ABAP"] = "abap";
|
|
175
|
+
LanguageKind["WindowsBat"] = "bat";
|
|
176
|
+
LanguageKind["BibTeX"] = "bibtex";
|
|
177
|
+
LanguageKind["Clojure"] = "clojure";
|
|
178
|
+
LanguageKind["Coffeescript"] = "coffeescript";
|
|
179
|
+
LanguageKind["C"] = "c";
|
|
180
|
+
LanguageKind["CPP"] = "cpp";
|
|
181
|
+
LanguageKind["CSharp"] = "csharp";
|
|
182
|
+
LanguageKind["CSS"] = "css";
|
|
183
|
+
LanguageKind["D"] = "d";
|
|
184
|
+
LanguageKind["Delphi"] = "pascal";
|
|
185
|
+
LanguageKind["Diff"] = "diff";
|
|
186
|
+
LanguageKind["Dart"] = "dart";
|
|
187
|
+
LanguageKind["Dockerfile"] = "dockerfile";
|
|
188
|
+
LanguageKind["Elixir"] = "elixir";
|
|
189
|
+
LanguageKind["Erlang"] = "erlang";
|
|
190
|
+
LanguageKind["FSharp"] = "fsharp";
|
|
191
|
+
LanguageKind["GitCommit"] = "git-commit";
|
|
192
|
+
LanguageKind["GitRebase"] = "rebase";
|
|
193
|
+
LanguageKind["Go"] = "go";
|
|
194
|
+
LanguageKind["Groovy"] = "groovy";
|
|
195
|
+
LanguageKind["Handlebars"] = "handlebars";
|
|
196
|
+
LanguageKind["Haskell"] = "haskell";
|
|
197
|
+
LanguageKind["HTML"] = "html";
|
|
198
|
+
LanguageKind["Ini"] = "ini";
|
|
199
|
+
LanguageKind["Java"] = "java";
|
|
200
|
+
LanguageKind["JavaScript"] = "javascript";
|
|
201
|
+
LanguageKind["JavaScriptReact"] = "javascriptreact";
|
|
202
|
+
LanguageKind["JSON"] = "json";
|
|
203
|
+
LanguageKind["LaTeX"] = "latex";
|
|
204
|
+
LanguageKind["Less"] = "less";
|
|
205
|
+
LanguageKind["Lua"] = "lua";
|
|
206
|
+
LanguageKind["Makefile"] = "makefile";
|
|
207
|
+
LanguageKind["Markdown"] = "markdown";
|
|
208
|
+
LanguageKind["ObjectiveC"] = "objective-c";
|
|
209
|
+
LanguageKind["ObjectiveCPP"] = "objective-cpp";
|
|
210
|
+
LanguageKind["Pascal"] = "pascal";
|
|
211
|
+
LanguageKind["Perl"] = "perl";
|
|
212
|
+
LanguageKind["Perl6"] = "perl6";
|
|
213
|
+
LanguageKind["PHP"] = "php";
|
|
214
|
+
LanguageKind["Powershell"] = "powershell";
|
|
215
|
+
LanguageKind["Pug"] = "jade";
|
|
216
|
+
LanguageKind["Python"] = "python";
|
|
217
|
+
LanguageKind["R"] = "r";
|
|
218
|
+
LanguageKind["Razor"] = "razor";
|
|
219
|
+
LanguageKind["Ruby"] = "ruby";
|
|
220
|
+
LanguageKind["Rust"] = "rust";
|
|
221
|
+
LanguageKind["SCSS"] = "scss";
|
|
222
|
+
LanguageKind["SASS"] = "sass";
|
|
223
|
+
LanguageKind["Scala"] = "scala";
|
|
224
|
+
LanguageKind["ShaderLab"] = "shaderlab";
|
|
225
|
+
LanguageKind["ShellScript"] = "shellscript";
|
|
226
|
+
LanguageKind["SQL"] = "sql";
|
|
227
|
+
LanguageKind["Swift"] = "swift";
|
|
228
|
+
LanguageKind["TypeScript"] = "typescript";
|
|
229
|
+
LanguageKind["TypeScriptReact"] = "typescriptreact";
|
|
230
|
+
LanguageKind["TeX"] = "tex";
|
|
231
|
+
LanguageKind["VisualBasic"] = "vb";
|
|
232
|
+
LanguageKind["XML"] = "xml";
|
|
233
|
+
LanguageKind["XSL"] = "xsl";
|
|
234
|
+
LanguageKind["YAML"] = "yaml";
|
|
235
|
+
})(LanguageKind || (LanguageKind = {}));
|
|
236
|
+
export { LSPErrorCodes };
|
|
237
|
+
var LSPErrorCodes;
|
|
238
|
+
(function (LSPErrorCodes) {
|
|
239
|
+
LSPErrorCodes[LSPErrorCodes["RequestFailed"] = -32803] = "RequestFailed";
|
|
240
|
+
LSPErrorCodes[LSPErrorCodes["ServerCancelled"] = -32802] = "ServerCancelled";
|
|
241
|
+
LSPErrorCodes[LSPErrorCodes["ContentModified"] = -32801] = "ContentModified";
|
|
242
|
+
LSPErrorCodes[LSPErrorCodes["RequestCancelled"] = -32800] = "RequestCancelled";
|
|
243
|
+
})(LSPErrorCodes || (LSPErrorCodes = {}));
|
|
244
|
+
export { MarkupKind };
|
|
245
|
+
var MarkupKind;
|
|
246
|
+
(function (MarkupKind) {
|
|
247
|
+
MarkupKind["PlainText"] = "plaintext";
|
|
248
|
+
MarkupKind["Markdown"] = "markdown";
|
|
249
|
+
})(MarkupKind || (MarkupKind = {}));
|
|
250
|
+
export { MessageType };
|
|
251
|
+
var MessageType;
|
|
252
|
+
(function (MessageType) {
|
|
253
|
+
MessageType[MessageType["Error"] = 1] = "Error";
|
|
254
|
+
MessageType[MessageType["Warning"] = 2] = "Warning";
|
|
255
|
+
MessageType[MessageType["Info"] = 3] = "Info";
|
|
256
|
+
MessageType[MessageType["Log"] = 4] = "Log";
|
|
257
|
+
MessageType[MessageType["Debug"] = 5] = "Debug";
|
|
258
|
+
})(MessageType || (MessageType = {}));
|
|
259
|
+
export { MonikerKind };
|
|
260
|
+
var MonikerKind;
|
|
261
|
+
(function (MonikerKind) {
|
|
262
|
+
MonikerKind["import"] = "import";
|
|
263
|
+
MonikerKind["export"] = "export";
|
|
264
|
+
MonikerKind["local"] = "local";
|
|
265
|
+
})(MonikerKind || (MonikerKind = {}));
|
|
266
|
+
export { NotebookCellKind };
|
|
267
|
+
var NotebookCellKind;
|
|
268
|
+
(function (NotebookCellKind) {
|
|
269
|
+
NotebookCellKind[NotebookCellKind["Markup"] = 1] = "Markup";
|
|
270
|
+
NotebookCellKind[NotebookCellKind["Code"] = 2] = "Code";
|
|
271
|
+
})(NotebookCellKind || (NotebookCellKind = {}));
|
|
272
|
+
export { PositionEncodingKind };
|
|
273
|
+
var PositionEncodingKind;
|
|
274
|
+
(function (PositionEncodingKind) {
|
|
275
|
+
PositionEncodingKind["UTF8"] = "utf-8";
|
|
276
|
+
PositionEncodingKind["UTF16"] = "utf-16";
|
|
277
|
+
PositionEncodingKind["UTF32"] = "utf-32";
|
|
278
|
+
})(PositionEncodingKind || (PositionEncodingKind = {}));
|
|
279
|
+
export { PrepareSupportDefaultBehavior };
|
|
280
|
+
var PrepareSupportDefaultBehavior;
|
|
281
|
+
(function (PrepareSupportDefaultBehavior) {
|
|
282
|
+
PrepareSupportDefaultBehavior[PrepareSupportDefaultBehavior["Identifier"] = 1] = "Identifier";
|
|
283
|
+
})(PrepareSupportDefaultBehavior || (PrepareSupportDefaultBehavior = {}));
|
|
284
|
+
export { ResourceOperationKind };
|
|
285
|
+
var ResourceOperationKind;
|
|
286
|
+
(function (ResourceOperationKind) {
|
|
287
|
+
ResourceOperationKind["Create"] = "create";
|
|
288
|
+
ResourceOperationKind["Rename"] = "rename";
|
|
289
|
+
ResourceOperationKind["Delete"] = "delete";
|
|
290
|
+
})(ResourceOperationKind || (ResourceOperationKind = {}));
|
|
291
|
+
export { SemanticTokenModifiers };
|
|
292
|
+
var SemanticTokenModifiers;
|
|
293
|
+
(function (SemanticTokenModifiers) {
|
|
294
|
+
SemanticTokenModifiers["declaration"] = "declaration";
|
|
295
|
+
SemanticTokenModifiers["definition"] = "definition";
|
|
296
|
+
SemanticTokenModifiers["readonly"] = "readonly";
|
|
297
|
+
SemanticTokenModifiers["static"] = "static";
|
|
298
|
+
SemanticTokenModifiers["deprecated"] = "deprecated";
|
|
299
|
+
SemanticTokenModifiers["abstract"] = "abstract";
|
|
300
|
+
SemanticTokenModifiers["async"] = "async";
|
|
301
|
+
SemanticTokenModifiers["modification"] = "modification";
|
|
302
|
+
SemanticTokenModifiers["documentation"] = "documentation";
|
|
303
|
+
SemanticTokenModifiers["defaultLibrary"] = "defaultLibrary";
|
|
304
|
+
})(SemanticTokenModifiers || (SemanticTokenModifiers = {}));
|
|
305
|
+
export { SemanticTokenTypes };
|
|
306
|
+
var SemanticTokenTypes;
|
|
307
|
+
(function (SemanticTokenTypes) {
|
|
308
|
+
SemanticTokenTypes["namespace"] = "namespace";
|
|
309
|
+
SemanticTokenTypes["type"] = "type";
|
|
310
|
+
SemanticTokenTypes["class"] = "class";
|
|
311
|
+
SemanticTokenTypes["enum"] = "enum";
|
|
312
|
+
SemanticTokenTypes["interface"] = "interface";
|
|
313
|
+
SemanticTokenTypes["struct"] = "struct";
|
|
314
|
+
SemanticTokenTypes["typeParameter"] = "typeParameter";
|
|
315
|
+
SemanticTokenTypes["parameter"] = "parameter";
|
|
316
|
+
SemanticTokenTypes["variable"] = "variable";
|
|
317
|
+
SemanticTokenTypes["property"] = "property";
|
|
318
|
+
SemanticTokenTypes["enumMember"] = "enumMember";
|
|
319
|
+
SemanticTokenTypes["event"] = "event";
|
|
320
|
+
SemanticTokenTypes["function"] = "function";
|
|
321
|
+
SemanticTokenTypes["method"] = "method";
|
|
322
|
+
SemanticTokenTypes["macro"] = "macro";
|
|
323
|
+
SemanticTokenTypes["keyword"] = "keyword";
|
|
324
|
+
SemanticTokenTypes["modifier"] = "modifier";
|
|
325
|
+
SemanticTokenTypes["comment"] = "comment";
|
|
326
|
+
SemanticTokenTypes["string"] = "string";
|
|
327
|
+
SemanticTokenTypes["number"] = "number";
|
|
328
|
+
SemanticTokenTypes["regexp"] = "regexp";
|
|
329
|
+
SemanticTokenTypes["operator"] = "operator";
|
|
330
|
+
SemanticTokenTypes["decorator"] = "decorator";
|
|
331
|
+
SemanticTokenTypes["label"] = "label";
|
|
332
|
+
})(SemanticTokenTypes || (SemanticTokenTypes = {}));
|
|
333
|
+
export { SignatureHelpTriggerKind };
|
|
334
|
+
var SignatureHelpTriggerKind;
|
|
335
|
+
(function (SignatureHelpTriggerKind) {
|
|
336
|
+
SignatureHelpTriggerKind[SignatureHelpTriggerKind["Invoked"] = 1] = "Invoked";
|
|
337
|
+
SignatureHelpTriggerKind[SignatureHelpTriggerKind["TriggerCharacter"] = 2] = "TriggerCharacter";
|
|
338
|
+
SignatureHelpTriggerKind[SignatureHelpTriggerKind["ContentChange"] = 3] = "ContentChange";
|
|
339
|
+
})(SignatureHelpTriggerKind || (SignatureHelpTriggerKind = {}));
|
|
340
|
+
export { SymbolKind };
|
|
341
|
+
var SymbolKind;
|
|
342
|
+
(function (SymbolKind) {
|
|
343
|
+
SymbolKind[SymbolKind["File"] = 1] = "File";
|
|
344
|
+
SymbolKind[SymbolKind["Module"] = 2] = "Module";
|
|
345
|
+
SymbolKind[SymbolKind["Namespace"] = 3] = "Namespace";
|
|
346
|
+
SymbolKind[SymbolKind["Package"] = 4] = "Package";
|
|
347
|
+
SymbolKind[SymbolKind["Class"] = 5] = "Class";
|
|
348
|
+
SymbolKind[SymbolKind["Method"] = 6] = "Method";
|
|
349
|
+
SymbolKind[SymbolKind["Property"] = 7] = "Property";
|
|
350
|
+
SymbolKind[SymbolKind["Field"] = 8] = "Field";
|
|
351
|
+
SymbolKind[SymbolKind["Constructor"] = 9] = "Constructor";
|
|
352
|
+
SymbolKind[SymbolKind["Enum"] = 10] = "Enum";
|
|
353
|
+
SymbolKind[SymbolKind["Interface"] = 11] = "Interface";
|
|
354
|
+
SymbolKind[SymbolKind["Function"] = 12] = "Function";
|
|
355
|
+
SymbolKind[SymbolKind["Variable"] = 13] = "Variable";
|
|
356
|
+
SymbolKind[SymbolKind["Constant"] = 14] = "Constant";
|
|
357
|
+
SymbolKind[SymbolKind["String"] = 15] = "String";
|
|
358
|
+
SymbolKind[SymbolKind["Number"] = 16] = "Number";
|
|
359
|
+
SymbolKind[SymbolKind["Boolean"] = 17] = "Boolean";
|
|
360
|
+
SymbolKind[SymbolKind["Array"] = 18] = "Array";
|
|
361
|
+
SymbolKind[SymbolKind["Object"] = 19] = "Object";
|
|
362
|
+
SymbolKind[SymbolKind["Key"] = 20] = "Key";
|
|
363
|
+
SymbolKind[SymbolKind["Null"] = 21] = "Null";
|
|
364
|
+
SymbolKind[SymbolKind["EnumMember"] = 22] = "EnumMember";
|
|
365
|
+
SymbolKind[SymbolKind["Struct"] = 23] = "Struct";
|
|
366
|
+
SymbolKind[SymbolKind["Event"] = 24] = "Event";
|
|
367
|
+
SymbolKind[SymbolKind["Operator"] = 25] = "Operator";
|
|
368
|
+
SymbolKind[SymbolKind["TypeParameter"] = 26] = "TypeParameter";
|
|
369
|
+
})(SymbolKind || (SymbolKind = {}));
|
|
370
|
+
export { SymbolTag };
|
|
371
|
+
var SymbolTag;
|
|
372
|
+
(function (SymbolTag) {
|
|
373
|
+
SymbolTag[SymbolTag["Deprecated"] = 1] = "Deprecated";
|
|
374
|
+
})(SymbolTag || (SymbolTag = {}));
|
|
375
|
+
export { TextDocumentSaveReason };
|
|
376
|
+
var TextDocumentSaveReason;
|
|
377
|
+
(function (TextDocumentSaveReason) {
|
|
378
|
+
TextDocumentSaveReason[TextDocumentSaveReason["Manual"] = 1] = "Manual";
|
|
379
|
+
TextDocumentSaveReason[TextDocumentSaveReason["AfterDelay"] = 2] = "AfterDelay";
|
|
380
|
+
TextDocumentSaveReason[TextDocumentSaveReason["FocusOut"] = 3] = "FocusOut";
|
|
381
|
+
})(TextDocumentSaveReason || (TextDocumentSaveReason = {}));
|
|
382
|
+
export { TextDocumentSyncKind };
|
|
383
|
+
var TextDocumentSyncKind;
|
|
384
|
+
(function (TextDocumentSyncKind) {
|
|
385
|
+
TextDocumentSyncKind[TextDocumentSyncKind["None"] = 0] = "None";
|
|
386
|
+
TextDocumentSyncKind[TextDocumentSyncKind["Full"] = 1] = "Full";
|
|
387
|
+
TextDocumentSyncKind[TextDocumentSyncKind["Incremental"] = 2] = "Incremental";
|
|
388
|
+
})(TextDocumentSyncKind || (TextDocumentSyncKind = {}));
|
|
389
|
+
export { TokenFormat };
|
|
390
|
+
var TokenFormat;
|
|
391
|
+
(function (TokenFormat) {
|
|
392
|
+
TokenFormat["Relative"] = "relative";
|
|
393
|
+
})(TokenFormat || (TokenFormat = {}));
|
|
394
|
+
export { TraceValue };
|
|
395
|
+
var TraceValue;
|
|
396
|
+
(function (TraceValue) {
|
|
397
|
+
TraceValue["Off"] = "off";
|
|
398
|
+
TraceValue["Messages"] = "messages";
|
|
399
|
+
TraceValue["Verbose"] = "verbose";
|
|
400
|
+
})(TraceValue || (TraceValue = {}));
|
|
401
|
+
export { UniquenessLevel };
|
|
402
|
+
var UniquenessLevel;
|
|
403
|
+
(function (UniquenessLevel) {
|
|
404
|
+
UniquenessLevel["document"] = "document";
|
|
405
|
+
UniquenessLevel["project"] = "project";
|
|
406
|
+
UniquenessLevel["group"] = "group";
|
|
407
|
+
UniquenessLevel["scheme"] = "scheme";
|
|
408
|
+
UniquenessLevel["global"] = "global";
|
|
409
|
+
})(UniquenessLevel || (UniquenessLevel = {}));
|
|
410
|
+
export { WatchKind };
|
|
411
|
+
var WatchKind;
|
|
412
|
+
(function (WatchKind) {
|
|
413
|
+
WatchKind[WatchKind["Create"] = 1] = "Create";
|
|
414
|
+
WatchKind[WatchKind["Change"] = 2] = "Change";
|
|
415
|
+
WatchKind[WatchKind["Delete"] = 4] = "Delete";
|
|
416
|
+
})(WatchKind || (WatchKind = {}));
|
|
417
|
+
//# sourceMappingURL=enums.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"enums.js","sourceRoot":"","sources":["../../src/protocol/enums.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Type inference utilities for extracting params/result types from LSP method names
|
|
3
|
+
*
|
|
4
|
+
* Uses mapped types and lookups instead of nested conditionals
|
|
5
|
+
*/
|
|
6
|
+
import type { ClientCapabilities, ServerCapabilities } from 'vscode-languageserver-protocol';
|
|
7
|
+
import { LSPRequest, LSPNotification } from './namespaces.js';
|
|
8
|
+
import type { Paths, UnionToIntersection, ConditionalKeys, KeyAsString } from 'type-fest';
|
|
9
|
+
type FlattenMethods<T, IncludeProposed> = {
|
|
10
|
+
[K in keyof T]: T[K] extends {
|
|
11
|
+
Method: infer M;
|
|
12
|
+
} ? T[K] extends {
|
|
13
|
+
Proposed: true;
|
|
14
|
+
} ? IncludeProposed extends true ? {
|
|
15
|
+
[P in M & string]: T[K];
|
|
16
|
+
} : never : {
|
|
17
|
+
[P in M & string]: T[K];
|
|
18
|
+
} : T[K] extends Record<string, any> ? FlattenMethods<T[K], IncludeProposed> : never;
|
|
19
|
+
}[keyof T];
|
|
20
|
+
type FlatRequestMap = UnionToIntersection<FlattenMethods<LSPRequest, false>>;
|
|
21
|
+
type FlatNotificationMap = UnionToIntersection<FlattenMethods<LSPNotification, false>>;
|
|
22
|
+
/**
|
|
23
|
+
* Union type of all valid LSP request method names
|
|
24
|
+
*/
|
|
25
|
+
export type LSPRequestMethod<Direction extends 'clientToServer' | 'serverToClient' | 'both' = 'both'> = Direction extends 'both' ? KeyAsString<FlatRequestMap> : ConditionalKeys<FlatRequestMap, {
|
|
26
|
+
Direction: Direction | 'both';
|
|
27
|
+
}> & string;
|
|
28
|
+
/**
|
|
29
|
+
* Union type of all valid LSP notification method names
|
|
30
|
+
*/
|
|
31
|
+
export type LSPNotificationMethod<Direction extends 'clientToServer' | 'serverToClient' | 'both' = 'both'> = Direction extends 'both' ? KeyAsString<FlatNotificationMap> : ConditionalKeys<FlatNotificationMap, {
|
|
32
|
+
Direction: Direction | 'both';
|
|
33
|
+
}> & string;
|
|
34
|
+
/**
|
|
35
|
+
* Infer request parameters from method name
|
|
36
|
+
*
|
|
37
|
+
* @example
|
|
38
|
+
* type HoverParams = InferRequestParams<'textDocument/hover'>
|
|
39
|
+
* // Resolves to: HoverParams from vscode-languageserver-protocol
|
|
40
|
+
*/
|
|
41
|
+
export type ParamsForRequest<M extends string> = M extends LSPRequestMethod ? FlatRequestMap[M]['Params'] : never;
|
|
42
|
+
/**
|
|
43
|
+
* Infer request result from method name
|
|
44
|
+
*
|
|
45
|
+
* @example
|
|
46
|
+
* type HoverResult = InferRequestResult<'textDocument/hover'>
|
|
47
|
+
* // Resolves to: Hover | null
|
|
48
|
+
*/
|
|
49
|
+
export type ResultForRequest<M extends string> = M extends LSPRequestMethod ? FlatRequestMap[M]['Result'] : never;
|
|
50
|
+
export type ServerCapabilityForRequest<M extends string> = M extends LSPRequestMethod ? FlatRequestMap[M] extends {
|
|
51
|
+
ServerCapability: infer C;
|
|
52
|
+
} ? C : never : never;
|
|
53
|
+
export type ClientCapabilityForRequest<M extends string> = M extends LSPRequestMethod ? FlatRequestMap[M] extends {
|
|
54
|
+
ClientCapability: infer C;
|
|
55
|
+
} ? C : never : never;
|
|
56
|
+
/**
|
|
57
|
+
* Infer notification parameters from method name
|
|
58
|
+
*
|
|
59
|
+
* @example
|
|
60
|
+
* type DidOpenParams = InferNotificationParams<'textDocument/didOpen'>
|
|
61
|
+
* // Resolves to: DidOpenTextDocumentParams from vscode-languageserver-protocol
|
|
62
|
+
*/
|
|
63
|
+
export type ParamsForNotification<M extends string> = M extends LSPNotificationMethod ? FlatNotificationMap[M]['Params'] : never;
|
|
64
|
+
export type ServerCapabilityForNotification<M extends string> = M extends LSPNotificationMethod ? FlatNotificationMap[M] extends {
|
|
65
|
+
ServerCapability: infer C;
|
|
66
|
+
} ? C : never : never;
|
|
67
|
+
export type ClientCapabilityForNotification<M extends string> = M extends LSPNotificationMethod ? FlatNotificationMap[M] extends {
|
|
68
|
+
ClientCapability: infer C;
|
|
69
|
+
} ? C : never : never;
|
|
70
|
+
export type OptionsForRequest<M extends string> = M extends LSPRequestMethod ? FlatRequestMap[M] extends {
|
|
71
|
+
Options: infer O;
|
|
72
|
+
} ? O : never : never;
|
|
73
|
+
export type RegistrationOptionsForRequest<M extends string> = M extends LSPRequestMethod ? FlatRequestMap[M] extends {
|
|
74
|
+
RegistrationOptions: infer R;
|
|
75
|
+
} ? R : never : never;
|
|
76
|
+
export type DirectionForRequest<M extends string> = M extends LSPRequestMethod ? FlatRequestMap[M] extends {
|
|
77
|
+
Direction: infer D;
|
|
78
|
+
} ? D : never : never;
|
|
79
|
+
export type DirectionForNotification<M extends string> = M extends LSPNotificationMethod ? FlatNotificationMap[M] extends {
|
|
80
|
+
Direction: infer D;
|
|
81
|
+
} ? D : never : never;
|
|
82
|
+
export declare const RequestMethodMap: Map<LSPRequestMethod, {
|
|
83
|
+
Direction: DirectionForRequest<LSPRequestMethod>;
|
|
84
|
+
ServerCapability?: ServerCapabilityForRequest<LSPRequestMethod>;
|
|
85
|
+
ClientCapability?: ClientCapabilityForRequest<LSPRequestMethod>;
|
|
86
|
+
}>;
|
|
87
|
+
export declare const NotificationMethodMap: Map<LSPNotificationMethod, {
|
|
88
|
+
Direction: DirectionForNotification<LSPNotificationMethod>;
|
|
89
|
+
ServerCapability?: ServerCapabilityForNotification<LSPNotificationMethod>;
|
|
90
|
+
ClientCapability?: ClientCapabilityForNotification<LSPNotificationMethod>;
|
|
91
|
+
}>;
|
|
92
|
+
/**
|
|
93
|
+
* Get the capability key for a given method at runtime
|
|
94
|
+
*/
|
|
95
|
+
export declare function getCapabilityForRequestMethod<M extends LSPRequestMethod<D>, D extends 'clientToServer' | 'serverToClient' | 'both' = 'both'>(method: M, _direction?: D): Paths<ServerCapabilities> | 'alwaysOn';
|
|
96
|
+
/**
|
|
97
|
+
* Get the client capability key for a given request method at runtime
|
|
98
|
+
*/
|
|
99
|
+
export declare function getClientCapabilityForRequestMethod<M extends LSPRequestMethod<D>, D extends 'clientToServer' | 'serverToClient' | 'both' = 'both'>(method: M, _direction?: D): Paths<ClientCapabilities> | 'alwaysOn';
|
|
100
|
+
/**
|
|
101
|
+
* Get the capability key for a given notification method at runtime
|
|
102
|
+
*/
|
|
103
|
+
export declare function getCapabilityForNotificationMethod<M extends LSPNotificationMethod<D>, D extends 'clientToServer' | 'serverToClient' | 'both' = 'both'>(method: M, _direction?: D): Paths<ServerCapabilities> | 'alwaysOn';
|
|
104
|
+
/**
|
|
105
|
+
* Get the client capability key for a given notification method at runtime
|
|
106
|
+
*/
|
|
107
|
+
export declare function getClientCapabilityForNotificationMethod<M extends LSPNotificationMethod<D>, D extends 'clientToServer' | 'serverToClient' | 'both' = 'both'>(method: M, _direction?: D): Paths<ClientCapabilities> | 'alwaysOn';
|
|
108
|
+
export type RequestDefinition = typeof LSPRequest.CallHierarchy.IncomingCalls;
|
|
109
|
+
export declare function getDefinitionForRequest<N extends keyof typeof LSPRequest, M extends keyof (typeof LSPRequest)[N]>(namespace: N, methodKey: M): (typeof LSPRequest)[N][M];
|
|
110
|
+
export declare function getDefinitionForNotification<N extends keyof typeof LSPNotification, M extends keyof (typeof LSPNotification)[N]>(namespace: N, methodKey: M): (typeof LSPNotification)[N][M];
|
|
111
|
+
export {};
|
|
112
|
+
//# sourceMappingURL=infer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"infer.d.ts","sourceRoot":"","sources":["../../src/protocol/infer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Type inference utilities for extracting params/result types from LSP method names
|
|
3
|
+
*
|
|
4
|
+
* Uses mapped types and lookups instead of nested conditionals
|
|
5
|
+
*/
|
|
6
|
+
import { LSPRequest, LSPNotification } from './namespaces.js';
|
|
7
|
+
/**
|
|
8
|
+
* Type inference benefits:
|
|
9
|
+
*
|
|
10
|
+
* 1. Zero manual mapping - types inferred directly from type definitions
|
|
11
|
+
* 2. Single source of truth - add a type, get automatic type support
|
|
12
|
+
* 3. Automatic flattening - no need to manually update conditionals
|
|
13
|
+
* 4. Compile-time validation - invalid method names caught by union types
|
|
14
|
+
*
|
|
15
|
+
* Adding new methods:
|
|
16
|
+
* 1. Define type (e.g., LSPRequest['TextDocument']['NewFeature'])
|
|
17
|
+
* 2. Types automatically available through lookup
|
|
18
|
+
* → Automatically works in onRequest/sendRequest signatures
|
|
19
|
+
*/
|
|
20
|
+
const RequestMap = Object.values(LSPRequest).flatMap((ns) => Object.values(ns));
|
|
21
|
+
const NotificationMap = Object.values(LSPNotification).flatMap((ns) => Object.values(ns));
|
|
22
|
+
export const RequestMethodMap = new Map(RequestMap.map((p) => [p.Method, p]));
|
|
23
|
+
export const NotificationMethodMap = new Map(NotificationMap.map((p) => [p.Method, p]));
|
|
24
|
+
/**
|
|
25
|
+
* Get the capability key for a given method at runtime
|
|
26
|
+
*/
|
|
27
|
+
export function getCapabilityForRequestMethod(method, _direction = 'both') {
|
|
28
|
+
const entry = RequestMethodMap.get(method);
|
|
29
|
+
return entry?.ServerCapability ?? 'alwaysOn'; //TODO: fix namespaces.ts generation to actually align ServerCapability with ServerCapabilities keys
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Get the client capability key for a given request method at runtime
|
|
33
|
+
*/
|
|
34
|
+
export function getClientCapabilityForRequestMethod(method, _direction = 'both') {
|
|
35
|
+
const entry = RequestMethodMap.get(method);
|
|
36
|
+
return entry?.ClientCapability ?? 'alwaysOn';
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Get the capability key for a given notification method at runtime
|
|
40
|
+
*/
|
|
41
|
+
export function getCapabilityForNotificationMethod(method, _direction = 'both') {
|
|
42
|
+
const entry = NotificationMethodMap.get(method);
|
|
43
|
+
return entry?.ServerCapability ?? 'alwaysOn';
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Get the client capability key for a given notification method at runtime
|
|
47
|
+
*/
|
|
48
|
+
export function getClientCapabilityForNotificationMethod(method, _direction = 'both') {
|
|
49
|
+
const entry = NotificationMethodMap.get(method);
|
|
50
|
+
return entry?.ClientCapability ?? 'alwaysOn';
|
|
51
|
+
}
|
|
52
|
+
export function getDefinitionForRequest(namespace, methodKey) {
|
|
53
|
+
return LSPRequest[namespace][methodKey];
|
|
54
|
+
}
|
|
55
|
+
export function getDefinitionForNotification(namespace, methodKey) {
|
|
56
|
+
return LSPNotification[namespace][methodKey];
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=infer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"infer.js","sourceRoot":"","sources":["../../src/protocol/infer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAwH9D;;;;;;;;;;;;GAYG;AAEH,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;AAEhF,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;AAE1F,MAAM,CAAC,MAAM,gBAAgB,GAOzB,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AAElD,MAAM,CAAC,MAAM,qBAAqB,GAO9B,IAAI,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AAEvD;;GAEG;AACH,MAAM,UAAU,6BAA6B,CAG3C,MAAS,EAAE,UAAU,GAAM,MAAW,EAA0C;IAChF,MAAM,KAAK,GAAG,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3C,OAAO,KAAK,EAAE,gBAAgB,IAAI,UAAU,CAAC,CAAC,oGAAoG;AAArG,CAC9C;AAED;;GAEG;AACH,MAAM,UAAU,mCAAmC,CAGjD,MAAS,EAAE,UAAU,GAAM,MAAW,EAA0C;IAChF,MAAM,KAAK,GAAG,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3C,OAAQ,KAAK,EAAE,gBAA0D,IAAI,UAAU,CAAC;AAAA,CACzF;AAED;;GAEG;AACH,MAAM,UAAU,kCAAkC,CAGhD,MAAS,EAAE,UAAU,GAAM,MAAW,EAA0C;IAChF,MAAM,KAAK,GAAG,qBAAqB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAChD,OAAO,KAAK,EAAE,gBAAgB,IAAI,UAAU,CAAC;AAAA,CAC9C;AAED;;GAEG;AACH,MAAM,UAAU,wCAAwC,CAGtD,MAAS,EAAE,UAAU,GAAM,MAAW,EAA0C;IAChF,MAAM,KAAK,GAAG,qBAAqB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAChD,OAAQ,KAAK,EAAE,gBAA0D,IAAI,UAAU,CAAC;AAAA,CACzF;AAID,MAAM,UAAU,uBAAuB,CAGrC,SAAY,EAAE,SAAY,EAA6B;IACvD,OAAQ,UAAU,CAAC,SAAS,CAAS,CAAC,SAAS,CAAC,CAAC;AAAA,CAClD;AAED,MAAM,UAAU,4BAA4B,CAG1C,SAAY,EAAE,SAAY,EAAkC;IAC5D,OAAQ,eAAe,CAAC,SAAS,CAAS,CAAC,SAAS,CAAC,CAAC;AAAA,CACvD"}
|