@daytonaio/sdk 0.175.0 → 0.178.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.
Files changed (91) hide show
  1. package/cjs/CodeInterpreter.d.ts +3 -2
  2. package/cjs/CodeInterpreter.js.map +1 -1
  3. package/cjs/ComputerUse.d.ts +104 -2
  4. package/cjs/ComputerUse.js +851 -763
  5. package/cjs/ComputerUse.js.map +1 -1
  6. package/cjs/Daytona.d.ts +4 -3
  7. package/cjs/Daytona.js +429 -443
  8. package/cjs/Daytona.js.map +1 -1
  9. package/cjs/FileSystem.d.ts +2 -2
  10. package/cjs/FileSystem.js +491 -521
  11. package/cjs/FileSystem.js.map +1 -1
  12. package/cjs/Git.d.ts +2 -1
  13. package/cjs/Git.js +287 -310
  14. package/cjs/Git.js.map +1 -1
  15. package/cjs/LspServer.d.ts +2 -1
  16. package/cjs/LspServer.js +209 -226
  17. package/cjs/LspServer.js.map +1 -1
  18. package/cjs/ObjectStorage.js +170 -166
  19. package/cjs/ObjectStorage.js.map +1 -1
  20. package/cjs/Process.d.ts +4 -3
  21. package/cjs/Process.js +562 -600
  22. package/cjs/Process.js.map +1 -1
  23. package/cjs/PtyHandle.d.ts +2 -2
  24. package/cjs/PtyHandle.js +327 -338
  25. package/cjs/PtyHandle.js.map +1 -1
  26. package/cjs/Sandbox.d.ts +4 -3
  27. package/cjs/Sandbox.js +756 -821
  28. package/cjs/Sandbox.js.map +1 -1
  29. package/cjs/Snapshot.d.ts +3 -2
  30. package/cjs/Snapshot.js +203 -213
  31. package/cjs/Snapshot.js.map +1 -1
  32. package/cjs/Volume.d.ts +2 -1
  33. package/cjs/Volume.js +90 -92
  34. package/cjs/Volume.js.map +1 -1
  35. package/cjs/errors/DaytonaError.d.ts +2 -1
  36. package/cjs/errors/DaytonaError.js.map +1 -1
  37. package/cjs/index.d.ts +2 -2
  38. package/cjs/index.js +2 -1
  39. package/cjs/index.js.map +1 -1
  40. package/cjs/types/CodeInterpreter.d.ts +1 -1
  41. package/cjs/utils/Binary.js +14 -2
  42. package/cjs/utils/Binary.js.map +1 -1
  43. package/cjs/utils/otel.decorator.d.ts +7 -8
  44. package/cjs/utils/otel.decorator.js +24 -30
  45. package/cjs/utils/otel.decorator.js.map +1 -1
  46. package/esm/CodeInterpreter.d.ts +3 -2
  47. package/esm/CodeInterpreter.js.map +1 -1
  48. package/esm/ComputerUse.d.ts +104 -2
  49. package/esm/ComputerUse.js +857 -763
  50. package/esm/ComputerUse.js.map +1 -1
  51. package/esm/Daytona.d.ts +4 -3
  52. package/esm/Daytona.js +431 -444
  53. package/esm/Daytona.js.map +1 -1
  54. package/esm/FileSystem.d.ts +2 -2
  55. package/esm/FileSystem.js +493 -522
  56. package/esm/FileSystem.js.map +1 -1
  57. package/esm/Git.d.ts +2 -1
  58. package/esm/Git.js +289 -311
  59. package/esm/Git.js.map +1 -1
  60. package/esm/LspServer.d.ts +2 -1
  61. package/esm/LspServer.js +211 -227
  62. package/esm/LspServer.js.map +1 -1
  63. package/esm/ObjectStorage.js +172 -167
  64. package/esm/ObjectStorage.js.map +1 -1
  65. package/esm/Process.d.ts +4 -3
  66. package/esm/Process.js +564 -601
  67. package/esm/Process.js.map +1 -1
  68. package/esm/PtyHandle.d.ts +2 -2
  69. package/esm/PtyHandle.js +329 -339
  70. package/esm/PtyHandle.js.map +1 -1
  71. package/esm/Sandbox.d.ts +4 -3
  72. package/esm/Sandbox.js +759 -823
  73. package/esm/Sandbox.js.map +1 -1
  74. package/esm/Snapshot.d.ts +3 -2
  75. package/esm/Snapshot.js +206 -215
  76. package/esm/Snapshot.js.map +1 -1
  77. package/esm/Volume.d.ts +2 -1
  78. package/esm/Volume.js +92 -93
  79. package/esm/Volume.js.map +1 -1
  80. package/esm/errors/DaytonaError.d.ts +2 -1
  81. package/esm/errors/DaytonaError.js.map +1 -1
  82. package/esm/index.d.ts +2 -2
  83. package/esm/index.js +1 -1
  84. package/esm/index.js.map +1 -1
  85. package/esm/types/CodeInterpreter.d.ts +1 -1
  86. package/esm/utils/Binary.js +14 -2
  87. package/esm/utils/Binary.js.map +1 -1
  88. package/esm/utils/otel.decorator.d.ts +7 -8
  89. package/esm/utils/otel.decorator.js +26 -32
  90. package/esm/utils/otel.decorator.js.map +1 -1
  91. package/package.json +3 -3
package/esm/Git.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Git.js","sourceRoot":"","sources":["../../../../../libs/sdk-typescript/src/Git.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Git.js","sourceRoot":"","sources":["../../../../../libs/sdk-typescript/src/Git.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
- import { CompletionList, LspSymbol, LspApi } from '@daytona/toolbox-api-client';
1
+ import { LspApi } from '@daytona/toolbox-api-client';
2
+ import type { CompletionList, LspSymbol } from '@daytona/toolbox-api-client';
2
3
  /**
3
4
  * Supported language server types.
4
5
  */
package/esm/LspServer.js CHANGED
@@ -2,7 +2,7 @@
2
2
  * Copyright 2025 Daytona Platforms Inc.
3
3
  * SPDX-License-Identifier: Apache-2.0
4
4
  */
5
- import { __decorate, __metadata } from "tslib";
5
+ import { __esDecorate, __runInitializers } from "tslib";
6
6
  import { DaytonaValidationError } from './errors/DaytonaError.js';
7
7
  import { WithInstrumentation } from './utils/otel.decorator.js';
8
8
  /**
@@ -25,231 +25,215 @@ export var LspLanguageId;
25
25
  *
26
26
  * @class
27
27
  */
28
- export class LspServer {
29
- languageId;
30
- pathToProject;
31
- apiClient;
32
- constructor(languageId, pathToProject, apiClient) {
33
- this.languageId = languageId;
34
- this.pathToProject = pathToProject;
35
- this.apiClient = apiClient;
36
- if (!Object.values(LspLanguageId).includes(this.languageId)) {
37
- throw new DaytonaValidationError(`Invalid languageId: ${this.languageId}. Supported values are: ${Object.values(LspLanguageId).join(', ')}`);
28
+ let LspServer = (() => {
29
+ let _instanceExtraInitializers = [];
30
+ let _start_decorators;
31
+ let _stop_decorators;
32
+ let _didOpen_decorators;
33
+ let _didClose_decorators;
34
+ let _documentSymbols_decorators;
35
+ let _workspaceSymbols_decorators;
36
+ let _sandboxSymbols_decorators;
37
+ let _completions_decorators;
38
+ return class LspServer {
39
+ static {
40
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
41
+ _start_decorators = [WithInstrumentation()];
42
+ _stop_decorators = [WithInstrumentation()];
43
+ _didOpen_decorators = [WithInstrumentation()];
44
+ _didClose_decorators = [WithInstrumentation()];
45
+ _documentSymbols_decorators = [WithInstrumentation()];
46
+ _workspaceSymbols_decorators = [WithInstrumentation()];
47
+ _sandboxSymbols_decorators = [WithInstrumentation()];
48
+ _completions_decorators = [WithInstrumentation()];
49
+ __esDecorate(this, null, _start_decorators, { kind: "method", name: "start", static: false, private: false, access: { has: obj => "start" in obj, get: obj => obj.start }, metadata: _metadata }, null, _instanceExtraInitializers);
50
+ __esDecorate(this, null, _stop_decorators, { kind: "method", name: "stop", static: false, private: false, access: { has: obj => "stop" in obj, get: obj => obj.stop }, metadata: _metadata }, null, _instanceExtraInitializers);
51
+ __esDecorate(this, null, _didOpen_decorators, { kind: "method", name: "didOpen", static: false, private: false, access: { has: obj => "didOpen" in obj, get: obj => obj.didOpen }, metadata: _metadata }, null, _instanceExtraInitializers);
52
+ __esDecorate(this, null, _didClose_decorators, { kind: "method", name: "didClose", static: false, private: false, access: { has: obj => "didClose" in obj, get: obj => obj.didClose }, metadata: _metadata }, null, _instanceExtraInitializers);
53
+ __esDecorate(this, null, _documentSymbols_decorators, { kind: "method", name: "documentSymbols", static: false, private: false, access: { has: obj => "documentSymbols" in obj, get: obj => obj.documentSymbols }, metadata: _metadata }, null, _instanceExtraInitializers);
54
+ __esDecorate(this, null, _workspaceSymbols_decorators, { kind: "method", name: "workspaceSymbols", static: false, private: false, access: { has: obj => "workspaceSymbols" in obj, get: obj => obj.workspaceSymbols }, metadata: _metadata }, null, _instanceExtraInitializers);
55
+ __esDecorate(this, null, _sandboxSymbols_decorators, { kind: "method", name: "sandboxSymbols", static: false, private: false, access: { has: obj => "sandboxSymbols" in obj, get: obj => obj.sandboxSymbols }, metadata: _metadata }, null, _instanceExtraInitializers);
56
+ __esDecorate(this, null, _completions_decorators, { kind: "method", name: "completions", static: false, private: false, access: { has: obj => "completions" in obj, get: obj => obj.completions }, metadata: _metadata }, null, _instanceExtraInitializers);
57
+ if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
38
58
  }
39
- }
40
- /**
41
- * Starts the language server, must be called before using any other LSP functionality.
42
- * It initializes the language server for the specified language and project.
43
- *
44
- * @returns {Promise<void>}
45
- *
46
- * @example
47
- * const lsp = await sandbox.createLspServer('typescript', 'workspace/project');
48
- * await lsp.start(); // Initialize the server
49
- * // Now ready for LSP operations
50
- */
51
- async start() {
52
- await this.apiClient.start({
53
- languageId: this.languageId,
54
- pathToProject: this.pathToProject,
55
- });
56
- }
57
- /**
58
- * Stops the language server, should be called when the LSP server is no longer needed to
59
- * free up system resources.
60
- *
61
- * @returns {Promise<void>}
62
- *
63
- * @example
64
- * // When done with LSP features
65
- * await lsp.stop(); // Clean up resources
66
- */
67
- async stop() {
68
- await this.apiClient.stop({
69
- languageId: this.languageId,
70
- pathToProject: this.pathToProject,
71
- });
72
- }
73
- /**
74
- * Notifies the language server that a file has been opened, enabling
75
- * language features like diagnostics and completions for that file. The server
76
- * will begin tracking the file's contents and providing language features.
77
- *
78
- * @param {string} path - Path to the opened file. Relative paths are resolved based on the sandbox working directory.
79
- * @returns {Promise<void>}
80
- *
81
- * @example
82
- * // When opening a file for editing
83
- * await lsp.didOpen('workspace/project/src/index.ts');
84
- * // Now can get completions, symbols, etc. for this file
85
- */
86
- async didOpen(path) {
87
- await this.apiClient.didOpen({
88
- languageId: this.languageId,
89
- pathToProject: this.pathToProject,
90
- uri: 'file://' + path,
91
- });
92
- }
93
- /**
94
- * Notifies the language server that a file has been closed, should be called when a file is closed
95
- * in the editor to allow the language server to clean up any resources associated with that file.
96
- *
97
- * @param {string} path - Path to the closed file. Relative paths are resolved based on the project path
98
- * set in the LSP server constructor.
99
- * @returns {Promise<void>}
100
- *
101
- * @example
102
- * // When done editing a file
103
- * await lsp.didClose('workspace/project/src/index.ts');
104
- */
105
- async didClose(path) {
106
- await this.apiClient.didClose({
107
- languageId: this.languageId,
108
- pathToProject: this.pathToProject,
109
- uri: 'file://' + path,
110
- });
111
- }
112
- /**
113
- * Get symbol information (functions, classes, variables, etc.) from a document.
114
- *
115
- * @param {string} path - Path to the file to get symbols from. Relative paths are resolved based on the project path
116
- * set in the LSP server constructor.
117
- * @returns {Promise<LspSymbol[]>} List of symbols in the document. Each symbol includes:
118
- * - name: The symbol's name
119
- * - kind: The symbol's kind (function, class, variable, etc.)
120
- * - location: The location of the symbol in the file
121
- *
122
- * @example
123
- * // Get all symbols in a file
124
- * const symbols = await lsp.documentSymbols('workspace/project/src/index.ts');
125
- * symbols.forEach(symbol => {
126
- * console.log(`${symbol.kind} ${symbol.name}: ${symbol.location}`);
127
- * });
128
- */
129
- async documentSymbols(path) {
130
- const response = await this.apiClient.documentSymbols(this.languageId, this.pathToProject, 'file://' + path);
131
- return response.data;
132
- }
133
- /**
134
- * Searches for symbols matching the query string across the entire Sandbox.
135
- *
136
- * @param {string} query - Search query to match against symbol names
137
- * @returns {Promise<LspSymbol[]>} List of matching symbols from all files. Each symbol includes:
138
- * - name: The symbol's name
139
- * - kind: The symbol's kind (function, class, variable, etc.)
140
- * - location: The location of the symbol in the file
141
- *
142
- * @deprecated Use `sandboxSymbols` instead. This method will be removed in a future version.
143
- */
144
- async workspaceSymbols(query) {
145
- return await this.sandboxSymbols(query);
146
- }
147
- /**
148
- * Searches for symbols matching the query string across the entire Sandbox.
149
- *
150
- * @param {string} query - Search query to match against symbol names
151
- * @returns {Promise<LspSymbol[]>} List of matching symbols from all files. Each symbol includes:
152
- * - name: The symbol's name
153
- * - kind: The symbol's kind (function, class, variable, etc.)
154
- * - location: The location of the symbol in the file
155
- *
156
- * @example
157
- * // Search for all symbols containing "User"
158
- * const symbols = await lsp.sandboxSymbols('User');
159
- * symbols.forEach(symbol => {
160
- * console.log(`${symbol.name} (${symbol.kind}) in ${symbol.location}`);
161
- * });
162
- */
163
- async sandboxSymbols(query) {
164
- const response = await this.apiClient.workspaceSymbols(query, this.languageId, this.pathToProject);
165
- return response.data;
166
- }
167
- /**
168
- * Gets completion suggestions at a position in a file.
169
- *
170
- * @param {string} path - Path to the file. Relative paths are resolved based on the project path
171
- * set in the LSP server constructor.
172
- * @param {Position} position - The position in the file where completion was requested
173
- * @returns {Promise<CompletionList>} List of completion suggestions. The list includes:
174
- * - isIncomplete: Whether more items might be available
175
- * - items: List of completion items, each containing:
176
- * - label: The text to insert
177
- * - kind: The kind of completion
178
- * - detail: Additional details about the item
179
- * - documentation: Documentation for the item
180
- * - sortText: Text used to sort the item in the list
181
- * - filterText: Text used to filter the item
182
- * - insertText: The actual text to insert (if different from label)
183
- *
184
- * @example
185
- * // Get completions at a specific position
186
- * const completions = await lsp.completions('workspace/project/src/index.ts', {
187
- * line: 10,
188
- * character: 15
189
- * });
190
- * completions.items.forEach(item => {
191
- * console.log(`${item.label} (${item.kind}): ${item.detail}`);
192
- * });
193
- */
194
- async completions(path, position) {
195
- const response = await this.apiClient.completions({
196
- languageId: this.languageId,
197
- pathToProject: this.pathToProject,
198
- uri: 'file://' + path,
199
- position: {
200
- line: position.line,
201
- character: position.character,
202
- },
203
- });
204
- return response.data;
205
- }
206
- }
207
- __decorate([
208
- WithInstrumentation(),
209
- __metadata("design:type", Function),
210
- __metadata("design:paramtypes", []),
211
- __metadata("design:returntype", Promise)
212
- ], LspServer.prototype, "start", null);
213
- __decorate([
214
- WithInstrumentation(),
215
- __metadata("design:type", Function),
216
- __metadata("design:paramtypes", []),
217
- __metadata("design:returntype", Promise)
218
- ], LspServer.prototype, "stop", null);
219
- __decorate([
220
- WithInstrumentation(),
221
- __metadata("design:type", Function),
222
- __metadata("design:paramtypes", [String]),
223
- __metadata("design:returntype", Promise)
224
- ], LspServer.prototype, "didOpen", null);
225
- __decorate([
226
- WithInstrumentation(),
227
- __metadata("design:type", Function),
228
- __metadata("design:paramtypes", [String]),
229
- __metadata("design:returntype", Promise)
230
- ], LspServer.prototype, "didClose", null);
231
- __decorate([
232
- WithInstrumentation(),
233
- __metadata("design:type", Function),
234
- __metadata("design:paramtypes", [String]),
235
- __metadata("design:returntype", Promise)
236
- ], LspServer.prototype, "documentSymbols", null);
237
- __decorate([
238
- WithInstrumentation(),
239
- __metadata("design:type", Function),
240
- __metadata("design:paramtypes", [String]),
241
- __metadata("design:returntype", Promise)
242
- ], LspServer.prototype, "workspaceSymbols", null);
243
- __decorate([
244
- WithInstrumentation(),
245
- __metadata("design:type", Function),
246
- __metadata("design:paramtypes", [String]),
247
- __metadata("design:returntype", Promise)
248
- ], LspServer.prototype, "sandboxSymbols", null);
249
- __decorate([
250
- WithInstrumentation(),
251
- __metadata("design:type", Function),
252
- __metadata("design:paramtypes", [String, Object]),
253
- __metadata("design:returntype", Promise)
254
- ], LspServer.prototype, "completions", null);
59
+ languageId = __runInitializers(this, _instanceExtraInitializers);
60
+ pathToProject;
61
+ apiClient;
62
+ constructor(languageId, pathToProject, apiClient) {
63
+ this.languageId = languageId;
64
+ this.pathToProject = pathToProject;
65
+ this.apiClient = apiClient;
66
+ if (!Object.values(LspLanguageId).includes(this.languageId)) {
67
+ throw new DaytonaValidationError(`Invalid languageId: ${this.languageId}. Supported values are: ${Object.values(LspLanguageId).join(', ')}`);
68
+ }
69
+ }
70
+ /**
71
+ * Starts the language server, must be called before using any other LSP functionality.
72
+ * It initializes the language server for the specified language and project.
73
+ *
74
+ * @returns {Promise<void>}
75
+ *
76
+ * @example
77
+ * const lsp = await sandbox.createLspServer('typescript', 'workspace/project');
78
+ * await lsp.start(); // Initialize the server
79
+ * // Now ready for LSP operations
80
+ */
81
+ async start() {
82
+ await this.apiClient.start({
83
+ languageId: this.languageId,
84
+ pathToProject: this.pathToProject,
85
+ });
86
+ }
87
+ /**
88
+ * Stops the language server, should be called when the LSP server is no longer needed to
89
+ * free up system resources.
90
+ *
91
+ * @returns {Promise<void>}
92
+ *
93
+ * @example
94
+ * // When done with LSP features
95
+ * await lsp.stop(); // Clean up resources
96
+ */
97
+ async stop() {
98
+ await this.apiClient.stop({
99
+ languageId: this.languageId,
100
+ pathToProject: this.pathToProject,
101
+ });
102
+ }
103
+ /**
104
+ * Notifies the language server that a file has been opened, enabling
105
+ * language features like diagnostics and completions for that file. The server
106
+ * will begin tracking the file's contents and providing language features.
107
+ *
108
+ * @param {string} path - Path to the opened file. Relative paths are resolved based on the sandbox working directory.
109
+ * @returns {Promise<void>}
110
+ *
111
+ * @example
112
+ * // When opening a file for editing
113
+ * await lsp.didOpen('workspace/project/src/index.ts');
114
+ * // Now can get completions, symbols, etc. for this file
115
+ */
116
+ async didOpen(path) {
117
+ await this.apiClient.didOpen({
118
+ languageId: this.languageId,
119
+ pathToProject: this.pathToProject,
120
+ uri: 'file://' + path,
121
+ });
122
+ }
123
+ /**
124
+ * Notifies the language server that a file has been closed, should be called when a file is closed
125
+ * in the editor to allow the language server to clean up any resources associated with that file.
126
+ *
127
+ * @param {string} path - Path to the closed file. Relative paths are resolved based on the project path
128
+ * set in the LSP server constructor.
129
+ * @returns {Promise<void>}
130
+ *
131
+ * @example
132
+ * // When done editing a file
133
+ * await lsp.didClose('workspace/project/src/index.ts');
134
+ */
135
+ async didClose(path) {
136
+ await this.apiClient.didClose({
137
+ languageId: this.languageId,
138
+ pathToProject: this.pathToProject,
139
+ uri: 'file://' + path,
140
+ });
141
+ }
142
+ /**
143
+ * Get symbol information (functions, classes, variables, etc.) from a document.
144
+ *
145
+ * @param {string} path - Path to the file to get symbols from. Relative paths are resolved based on the project path
146
+ * set in the LSP server constructor.
147
+ * @returns {Promise<LspSymbol[]>} List of symbols in the document. Each symbol includes:
148
+ * - name: The symbol's name
149
+ * - kind: The symbol's kind (function, class, variable, etc.)
150
+ * - location: The location of the symbol in the file
151
+ *
152
+ * @example
153
+ * // Get all symbols in a file
154
+ * const symbols = await lsp.documentSymbols('workspace/project/src/index.ts');
155
+ * symbols.forEach(symbol => {
156
+ * console.log(`${symbol.kind} ${symbol.name}: ${symbol.location}`);
157
+ * });
158
+ */
159
+ async documentSymbols(path) {
160
+ const response = await this.apiClient.documentSymbols(this.languageId, this.pathToProject, 'file://' + path);
161
+ return response.data;
162
+ }
163
+ /**
164
+ * Searches for symbols matching the query string across the entire Sandbox.
165
+ *
166
+ * @param {string} query - Search query to match against symbol names
167
+ * @returns {Promise<LspSymbol[]>} List of matching symbols from all files. Each symbol includes:
168
+ * - name: The symbol's name
169
+ * - kind: The symbol's kind (function, class, variable, etc.)
170
+ * - location: The location of the symbol in the file
171
+ *
172
+ * @deprecated Use `sandboxSymbols` instead. This method will be removed in a future version.
173
+ */
174
+ async workspaceSymbols(query) {
175
+ return await this.sandboxSymbols(query);
176
+ }
177
+ /**
178
+ * Searches for symbols matching the query string across the entire Sandbox.
179
+ *
180
+ * @param {string} query - Search query to match against symbol names
181
+ * @returns {Promise<LspSymbol[]>} List of matching symbols from all files. Each symbol includes:
182
+ * - name: The symbol's name
183
+ * - kind: The symbol's kind (function, class, variable, etc.)
184
+ * - location: The location of the symbol in the file
185
+ *
186
+ * @example
187
+ * // Search for all symbols containing "User"
188
+ * const symbols = await lsp.sandboxSymbols('User');
189
+ * symbols.forEach(symbol => {
190
+ * console.log(`${symbol.name} (${symbol.kind}) in ${symbol.location}`);
191
+ * });
192
+ */
193
+ async sandboxSymbols(query) {
194
+ const response = await this.apiClient.workspaceSymbols(query, this.languageId, this.pathToProject);
195
+ return response.data;
196
+ }
197
+ /**
198
+ * Gets completion suggestions at a position in a file.
199
+ *
200
+ * @param {string} path - Path to the file. Relative paths are resolved based on the project path
201
+ * set in the LSP server constructor.
202
+ * @param {Position} position - The position in the file where completion was requested
203
+ * @returns {Promise<CompletionList>} List of completion suggestions. The list includes:
204
+ * - isIncomplete: Whether more items might be available
205
+ * - items: List of completion items, each containing:
206
+ * - label: The text to insert
207
+ * - kind: The kind of completion
208
+ * - detail: Additional details about the item
209
+ * - documentation: Documentation for the item
210
+ * - sortText: Text used to sort the item in the list
211
+ * - filterText: Text used to filter the item
212
+ * - insertText: The actual text to insert (if different from label)
213
+ *
214
+ * @example
215
+ * // Get completions at a specific position
216
+ * const completions = await lsp.completions('workspace/project/src/index.ts', {
217
+ * line: 10,
218
+ * character: 15
219
+ * });
220
+ * completions.items.forEach(item => {
221
+ * console.log(`${item.label} (${item.kind}): ${item.detail}`);
222
+ * });
223
+ */
224
+ async completions(path, position) {
225
+ const response = await this.apiClient.completions({
226
+ languageId: this.languageId,
227
+ pathToProject: this.pathToProject,
228
+ uri: 'file://' + path,
229
+ position: {
230
+ line: position.line,
231
+ character: position.character,
232
+ },
233
+ });
234
+ return response.data;
235
+ }
236
+ };
237
+ })();
238
+ export { LspServer };
255
239
  //# sourceMappingURL=LspServer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LspServer.js","sourceRoot":"","sources":["../../../../../libs/sdk-typescript/src/LspServer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LspServer.js","sourceRoot":"","sources":["../../../../../libs/sdk-typescript/src/LspServer.ts"],"names":[],"mappings":"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"}