partnercore-proxy 0.1.5 → 0.4.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.
@@ -2,9 +2,9 @@
2
2
  * AL Language Server Client
3
3
  *
4
4
  * Communicates with the Microsoft AL Language Server via LSP protocol.
5
- * Based on insights from Serena project's implementation.
5
+ * Provides full LSP integration for AL development.
6
6
  */
7
- import { SymbolInformation, Location, Hover, CompletionItem } from 'vscode-languageserver-protocol';
7
+ import { SymbolInformation, Location, Hover, CompletionItem, WorkspaceEdit } from 'vscode-languageserver-protocol';
8
8
  import { ALExtensionInfo } from '../config/types.js';
9
9
  /**
10
10
  * Symbol types in AL
@@ -45,6 +45,155 @@ export interface ALDiagnostic {
45
45
  code?: string | number;
46
46
  source?: string;
47
47
  }
48
+ /**
49
+ * AL Code Action
50
+ */
51
+ export interface ALCodeAction {
52
+ title: string;
53
+ kind?: string;
54
+ diagnostics?: ALDiagnostic[];
55
+ isPreferred?: boolean;
56
+ edit?: {
57
+ changes?: Record<string, Array<{
58
+ range: {
59
+ start: {
60
+ line: number;
61
+ character: number;
62
+ };
63
+ end: {
64
+ line: number;
65
+ character: number;
66
+ };
67
+ };
68
+ newText: string;
69
+ }>>;
70
+ };
71
+ command?: {
72
+ title: string;
73
+ command: string;
74
+ arguments?: unknown[];
75
+ };
76
+ }
77
+ /**
78
+ * AL Signature Help
79
+ */
80
+ export interface ALSignatureHelp {
81
+ signatures: ALSignatureInfo[];
82
+ activeSignature?: number;
83
+ activeParameter?: number;
84
+ }
85
+ export interface ALSignatureInfo {
86
+ label: string;
87
+ documentation?: string;
88
+ parameters?: ALParameterInfo[];
89
+ }
90
+ export interface ALParameterInfo {
91
+ label: string | [number, number];
92
+ documentation?: string;
93
+ }
94
+ /**
95
+ * AL Text Edit
96
+ */
97
+ export interface ALTextEdit {
98
+ range: {
99
+ start: {
100
+ line: number;
101
+ character: number;
102
+ };
103
+ end: {
104
+ line: number;
105
+ character: number;
106
+ };
107
+ };
108
+ newText: string;
109
+ }
110
+ /**
111
+ * AL Document Highlight
112
+ */
113
+ export interface ALDocumentHighlight {
114
+ range: {
115
+ start: {
116
+ line: number;
117
+ character: number;
118
+ };
119
+ end: {
120
+ line: number;
121
+ character: number;
122
+ };
123
+ };
124
+ kind?: 'text' | 'read' | 'write';
125
+ }
126
+ /**
127
+ * AL Folding Range
128
+ */
129
+ export interface ALFoldingRange {
130
+ startLine: number;
131
+ startCharacter?: number;
132
+ endLine: number;
133
+ endCharacter?: number;
134
+ kind?: 'comment' | 'imports' | 'region';
135
+ }
136
+ /**
137
+ * AL Selection Range
138
+ */
139
+ export interface ALSelectionRange {
140
+ range: {
141
+ start: {
142
+ line: number;
143
+ character: number;
144
+ };
145
+ end: {
146
+ line: number;
147
+ character: number;
148
+ };
149
+ };
150
+ parent?: ALSelectionRange;
151
+ }
152
+ /**
153
+ * AL Code Lens
154
+ */
155
+ export interface ALCodeLens {
156
+ range: {
157
+ start: {
158
+ line: number;
159
+ character: number;
160
+ };
161
+ end: {
162
+ line: number;
163
+ character: number;
164
+ };
165
+ };
166
+ command?: {
167
+ title: string;
168
+ command: string;
169
+ arguments?: unknown[];
170
+ };
171
+ data?: unknown;
172
+ }
173
+ /**
174
+ * AL Document Link
175
+ */
176
+ export interface ALDocumentLink {
177
+ range: {
178
+ start: {
179
+ line: number;
180
+ character: number;
181
+ };
182
+ end: {
183
+ line: number;
184
+ character: number;
185
+ };
186
+ };
187
+ target?: string;
188
+ tooltip?: string;
189
+ }
190
+ /**
191
+ * AL Semantic Tokens
192
+ */
193
+ export interface ALSemanticTokens {
194
+ resultId?: string;
195
+ data: number[];
196
+ }
48
197
  /**
49
198
  * AL Language Server Client
50
199
  */
@@ -106,6 +255,82 @@ export declare class ALLanguageServer {
106
255
  * Get workspace symbols (search across all files)
107
256
  */
108
257
  getWorkspaceSymbols(query: string): Promise<SymbolInformation[]>;
258
+ /**
259
+ * Update document content (for editing)
260
+ */
261
+ updateDocument(uri: string, content: string, version: number): Promise<void>;
262
+ /**
263
+ * Rename symbol across the workspace
264
+ * @returns WorkspaceEdit with all changes needed
265
+ */
266
+ renameSymbol(uri: string, line: number, character: number, newName: string): Promise<WorkspaceEdit | null>;
267
+ /**
268
+ * Get the symbol at a specific position
269
+ */
270
+ getSymbolAtPosition(uri: string, line: number, character: number): Promise<ALSymbol | null>;
271
+ /**
272
+ * Get code actions (quick fixes, refactorings) at a specific position or range
273
+ */
274
+ getCodeActions(uri: string, range: {
275
+ start: {
276
+ line: number;
277
+ character: number;
278
+ };
279
+ end: {
280
+ line: number;
281
+ character: number;
282
+ };
283
+ }, context?: {
284
+ diagnostics?: ALDiagnostic[];
285
+ only?: string[];
286
+ }): Promise<ALCodeAction[]>;
287
+ /**
288
+ * Get signature help (function parameter hints) at a position
289
+ */
290
+ getSignatureHelp(uri: string, line: number, character: number, context?: {
291
+ triggerKind?: 1 | 2 | 3;
292
+ triggerCharacter?: string;
293
+ isRetrigger?: boolean;
294
+ }): Promise<ALSignatureHelp | null>;
295
+ /**
296
+ * Format an entire document
297
+ */
298
+ formatDocument(uri: string, options?: {
299
+ tabSize?: number;
300
+ insertSpaces?: boolean;
301
+ }): Promise<ALTextEdit[]>;
302
+ /**
303
+ * Format a range within a document
304
+ */
305
+ formatRange(uri: string, range: {
306
+ start: {
307
+ line: number;
308
+ character: number;
309
+ };
310
+ end: {
311
+ line: number;
312
+ character: number;
313
+ };
314
+ }, options?: {
315
+ tabSize?: number;
316
+ insertSpaces?: boolean;
317
+ }): Promise<ALTextEdit[]>;
318
+ /**
319
+ * Convert severity string to LSP severity number
320
+ */
321
+ private severityToNumber;
322
+ /**
323
+ * Find symbol containing the given position
324
+ */
325
+ private findSymbolAtPosition;
326
+ /**
327
+ * Find a symbol by name in the document
328
+ */
329
+ findSymbolByName(uri: string, symbolName: string): Promise<ALSymbol | null>;
330
+ /**
331
+ * Search for symbol by name recursively
332
+ */
333
+ private searchSymbolByName;
109
334
  /**
110
335
  * Convert LSP symbols to our format
111
336
  */
@@ -126,6 +351,94 @@ export declare class ALLanguageServer {
126
351
  * Ensure the server is initialized
127
352
  */
128
353
  private ensureInitialized;
354
+ /**
355
+ * Close a document (cleanup)
356
+ */
357
+ closeDocument(uri: string): Promise<void>;
358
+ /**
359
+ * Notify save (triggers recompile in some LSPs)
360
+ */
361
+ saveDocument(uri: string, text?: string): Promise<void>;
362
+ /**
363
+ * Get document highlights (all occurrences of symbol under cursor)
364
+ */
365
+ getDocumentHighlights(uri: string, line: number, character: number): Promise<ALDocumentHighlight[]>;
366
+ /**
367
+ * Get folding ranges (code regions, procedures, etc.)
368
+ */
369
+ getFoldingRanges(uri: string): Promise<ALFoldingRange[]>;
370
+ /**
371
+ * Get selection ranges (smart expand/shrink selection)
372
+ */
373
+ getSelectionRanges(uri: string, positions: Array<{
374
+ line: number;
375
+ character: number;
376
+ }>): Promise<ALSelectionRange[]>;
377
+ /**
378
+ * Go to type definition (variable's type)
379
+ */
380
+ getTypeDefinition(uri: string, line: number, character: number): Promise<Location[]>;
381
+ /**
382
+ * Go to implementation (interface implementations)
383
+ */
384
+ getImplementation(uri: string, line: number, character: number): Promise<Location[]>;
385
+ /**
386
+ * Format on type (format after specific character like ';')
387
+ */
388
+ formatOnType(uri: string, line: number, character: number, ch: string, options?: {
389
+ tabSize?: number;
390
+ insertSpaces?: boolean;
391
+ }): Promise<ALTextEdit[]>;
392
+ /**
393
+ * Get code lenses (inline hints like reference counts)
394
+ */
395
+ getCodeLenses(uri: string): Promise<ALCodeLens[]>;
396
+ /**
397
+ * Resolve a code lens (get the command for a lens)
398
+ */
399
+ resolveCodeLens(lens: ALCodeLens): Promise<ALCodeLens>;
400
+ /**
401
+ * Get document links (clickable URLs in comments)
402
+ */
403
+ getDocumentLinks(uri: string): Promise<ALDocumentLink[]>;
404
+ /**
405
+ * Execute a command (e.g., from code action)
406
+ */
407
+ executeCommand(command: string, args?: unknown[]): Promise<unknown>;
408
+ /**
409
+ * Get semantic tokens (for syntax highlighting)
410
+ */
411
+ getSemanticTokens(uri: string): Promise<ALSemanticTokens | null>;
412
+ /**
413
+ * Get semantic tokens for a range
414
+ */
415
+ getSemanticTokensRange(uri: string, range: {
416
+ start: {
417
+ line: number;
418
+ character: number;
419
+ };
420
+ end: {
421
+ line: number;
422
+ character: number;
423
+ };
424
+ }): Promise<ALSemanticTokens | null>;
425
+ /**
426
+ * Restart the language server (useful when it hangs or after external changes)
427
+ */
428
+ restart(): Promise<void>;
429
+ /**
430
+ * Find all symbols that reference a given symbol (enhanced reference navigation)
431
+ * Returns referencing symbols with context around the reference
432
+ */
433
+ findReferencingSymbols(uri: string, line: number, character: number, options?: {
434
+ includeDeclaration?: boolean;
435
+ contextLinesBefore?: number;
436
+ contextLinesAfter?: number;
437
+ }): Promise<Array<{
438
+ location: Location;
439
+ containingSymbol?: ALSymbol;
440
+ contextSnippet?: string;
441
+ }>>;
129
442
  /**
130
443
  * Shutdown the language server
131
444
  */
@@ -1 +1 @@
1
- {"version":3,"file":"language-server.d.ts","sourceRoot":"","sources":["../../src/al/language-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"language-server.d.ts","sourceRoot":"","sources":["../../src/al/language-server.ts"],"names":[],"mappings":"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"}