@aws/lsp-codewhisperer 0.0.72 → 0.0.74

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 (97) hide show
  1. package/CHANGELOG.md +55 -0
  2. package/out/client/token/bearer-token-service.json +85 -0
  3. package/out/language-server/agenticChat/agenticChatController.d.ts +14 -1
  4. package/out/language-server/agenticChat/agenticChatController.js +117 -74
  5. package/out/language-server/agenticChat/agenticChatController.js.map +1 -1
  6. package/out/language-server/agenticChat/agenticChatResultStream.d.ts +4 -27
  7. package/out/language-server/agenticChat/agenticChatResultStream.js +15 -31
  8. package/out/language-server/agenticChat/agenticChatResultStream.js.map +1 -1
  9. package/out/language-server/agenticChat/constants/constants.d.ts +2 -0
  10. package/out/language-server/agenticChat/constants/constants.js +3 -1
  11. package/out/language-server/agenticChat/constants/constants.js.map +1 -1
  12. package/out/language-server/agenticChat/context/additionalContextProvider.js +1 -1
  13. package/out/language-server/agenticChat/context/additionalContextProvider.js.map +1 -1
  14. package/out/language-server/agenticChat/qAgenticChatServer.js +1 -1
  15. package/out/language-server/agenticChat/qAgenticChatServer.js.map +1 -1
  16. package/out/language-server/agenticChat/tools/fileSearch.d.ts +1 -0
  17. package/out/language-server/agenticChat/tools/fileSearch.js +4 -0
  18. package/out/language-server/agenticChat/tools/fileSearch.js.map +1 -1
  19. package/out/language-server/agenticChat/tools/mcp/mcpEventHandler.d.ts +7 -0
  20. package/out/language-server/agenticChat/tools/mcp/mcpEventHandler.js +71 -40
  21. package/out/language-server/agenticChat/tools/mcp/mcpEventHandler.js.map +1 -1
  22. package/out/language-server/agenticChat/tools/mcp/mcpManager.d.ts +4 -0
  23. package/out/language-server/agenticChat/tools/mcp/mcpManager.js +65 -36
  24. package/out/language-server/agenticChat/tools/mcp/mcpManager.js.map +1 -1
  25. package/out/language-server/agenticChat/tools/mcp/mcpUtils.d.ts +1 -1
  26. package/out/language-server/agenticChat/tools/mcp/mcpUtils.js +5 -39
  27. package/out/language-server/agenticChat/tools/mcp/mcpUtils.js.map +1 -1
  28. package/out/language-server/agenticChat/tools/mcp/profileStatusMonitor.d.ts +34 -0
  29. package/out/language-server/agenticChat/tools/mcp/profileStatusMonitor.js +159 -0
  30. package/out/language-server/agenticChat/tools/mcp/profileStatusMonitor.js.map +1 -0
  31. package/out/language-server/agenticChat/tools/qCodeAnalysis/codeReview.js +5 -0
  32. package/out/language-server/agenticChat/tools/qCodeAnalysis/codeReview.js.map +1 -1
  33. package/out/language-server/agenticChat/tools/toolServer.js +123 -23
  34. package/out/language-server/agenticChat/tools/toolServer.js.map +1 -1
  35. package/out/language-server/chat/qChatServer.js +1 -1
  36. package/out/language-server/chat/qChatServer.js.map +1 -1
  37. package/out/language-server/inline-completion/codePercentage.d.ts +2 -0
  38. package/out/language-server/inline-completion/codePercentage.js +10 -2
  39. package/out/language-server/inline-completion/codePercentage.js.map +1 -1
  40. package/out/language-server/inline-completion/codeWhispererServer.d.ts +1 -0
  41. package/out/language-server/inline-completion/codeWhispererServer.js +119 -109
  42. package/out/language-server/inline-completion/codeWhispererServer.js.map +1 -1
  43. package/out/language-server/inline-completion/constants.d.ts +1 -1
  44. package/out/language-server/inline-completion/constants.js +26 -2
  45. package/out/language-server/inline-completion/constants.js.map +1 -1
  46. package/out/language-server/inline-completion/diffUtils.d.ts +15 -0
  47. package/out/language-server/inline-completion/diffUtils.js +53 -0
  48. package/out/language-server/inline-completion/diffUtils.js.map +1 -1
  49. package/out/language-server/inline-completion/editCompletionHandler.d.ts +3 -0
  50. package/out/language-server/inline-completion/editCompletionHandler.js +55 -76
  51. package/out/language-server/inline-completion/editCompletionHandler.js.map +1 -1
  52. package/out/language-server/inline-completion/session/sessionManager.d.ts +5 -5
  53. package/out/language-server/inline-completion/session/sessionManager.js +11 -8
  54. package/out/language-server/inline-completion/session/sessionManager.js.map +1 -1
  55. package/out/language-server/inline-completion/telemetry.d.ts +4 -3
  56. package/out/language-server/inline-completion/telemetry.js +20 -10
  57. package/out/language-server/inline-completion/telemetry.js.map +1 -1
  58. package/out/language-server/inline-completion/trigger.d.ts +2 -11
  59. package/out/language-server/inline-completion/trigger.js.map +1 -1
  60. package/out/language-server/netTransform/resources/SupportedProjects.d.ts +3 -0
  61. package/out/language-server/netTransform/resources/SupportedProjects.js +3 -0
  62. package/out/language-server/netTransform/resources/SupportedProjects.js.map +1 -1
  63. package/out/language-server/netTransform/transformHandler.js +0 -13
  64. package/out/language-server/netTransform/transformHandler.js.map +1 -1
  65. package/out/language-server/netTransform/validation.d.ts +1 -5
  66. package/out/language-server/netTransform/validation.js +1 -21
  67. package/out/language-server/netTransform/validation.js.map +1 -1
  68. package/out/language-server/workspaceContext/IdleWorkspaceManager.d.ts +14 -0
  69. package/out/language-server/workspaceContext/IdleWorkspaceManager.js +42 -0
  70. package/out/language-server/workspaceContext/IdleWorkspaceManager.js.map +1 -0
  71. package/out/language-server/workspaceContext/artifactManager.js +14 -0
  72. package/out/language-server/workspaceContext/artifactManager.js.map +1 -1
  73. package/out/language-server/workspaceContext/dependency/dependencyDiscoverer.d.ts +1 -1
  74. package/out/language-server/workspaceContext/dependency/dependencyDiscoverer.js +2 -1
  75. package/out/language-server/workspaceContext/dependency/dependencyDiscoverer.js.map +1 -1
  76. package/out/language-server/workspaceContext/workspaceContextServer.js +4 -7
  77. package/out/language-server/workspaceContext/workspaceContextServer.js.map +1 -1
  78. package/out/language-server/workspaceContext/workspaceFolderManager.d.ts +10 -5
  79. package/out/language-server/workspaceContext/workspaceFolderManager.js +140 -85
  80. package/out/language-server/workspaceContext/workspaceFolderManager.js.map +1 -1
  81. package/out/shared/amazonQServiceManager/AmazonQTokenServiceManager.js +13 -0
  82. package/out/shared/amazonQServiceManager/AmazonQTokenServiceManager.js.map +1 -1
  83. package/out/shared/amazonQServiceManager/BaseAmazonQServiceManager.d.ts +1 -0
  84. package/out/shared/amazonQServiceManager/BaseAmazonQServiceManager.js +3 -0
  85. package/out/shared/amazonQServiceManager/BaseAmazonQServiceManager.js.map +1 -1
  86. package/out/shared/codeWhispererService.d.ts +16 -9
  87. package/out/shared/codeWhispererService.js +55 -16
  88. package/out/shared/codeWhispererService.js.map +1 -1
  89. package/out/shared/telemetry/telemetryService.d.ts +2 -2
  90. package/out/shared/telemetry/telemetryService.js +5 -7
  91. package/out/shared/telemetry/telemetryService.js.map +1 -1
  92. package/out/shared/telemetryUtils.d.ts +1 -1
  93. package/out/shared/telemetryUtils.js +7 -3
  94. package/out/shared/telemetryUtils.js.map +1 -1
  95. package/out/shared/utils.js +4 -1
  96. package/out/shared/utils.js.map +1 -1
  97. package/package.json +3 -3
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CodeWhispererServerToken = exports.CodeWhispererServerIAM = exports.CodewhispererServerFactory = void 0;
3
+ exports.getLanguageIdFromUri = exports.CodeWhispererServerToken = exports.CodeWhispererServerIAM = exports.CodewhispererServerFactory = void 0;
4
4
  const server_interface_1 = require("@aws/language-server-runtimes/server-interface");
5
5
  const autoTrigger_1 = require("./auto-trigger/autoTrigger");
6
6
  const codeWhispererService_1 = require("../../shared/codeWhispererService");
@@ -27,6 +27,8 @@ const telemetry_1 = require("./telemetry");
27
27
  const documentChangedListener_1 = require("./documentChangedListener");
28
28
  const editCompletionHandler_1 = require("./editCompletionHandler");
29
29
  const constants_1 = require("./constants");
30
+ const IdleWorkspaceManager_1 = require("../workspaceContext/IdleWorkspaceManager");
31
+ const vscode_uri_1 = require("vscode-uri");
30
32
  const mergeSuggestionsWithRightContext = (rightFileContext, suggestions, includeImportsWithSuggestions, range) => {
31
33
  return suggestions.map(suggestion => {
32
34
  const insertText = (0, mergeRightUtils_1.truncateOverlapWithRightContext)(rightFileContext, suggestion.content);
@@ -87,6 +89,7 @@ const CodewhispererServerFactory = (serviceManager) => ({ credentialsProvider, l
87
89
  // 2. it is not designed to handle concurrent changes to these state variables.
88
90
  // when one handler is at the API call stage, it has not yet update the session state
89
91
  // but another request can start, causing the state to be incorrect.
92
+ IdleWorkspaceManager_1.IdleWorkspaceManager.recordActivityTimestamp();
90
93
  if (isOnInlineCompletionHandlerInProgress) {
91
94
  logging.log(`Skip concurrent inline completion`);
92
95
  return constants_1.EMPTY_RESULT;
@@ -102,7 +105,7 @@ const CodewhispererServerFactory = (serviceManager) => ({ credentialsProvider, l
102
105
  if (cursorTracker) {
103
106
  cursorTracker.trackPosition(params.textDocument.uri, params.position);
104
107
  }
105
- const textDocument = await workspace.getTextDocument(params.textDocument.uri);
108
+ const textDocument = await getTextDocument(params.textDocument.uri, workspace, logging);
106
109
  const codeWhispererService = amazonQServiceManager.getCodewhispererService();
107
110
  if (params.partialResultToken && currentSession) {
108
111
  // subsequent paginated requests for current session
@@ -126,7 +129,10 @@ const CodewhispererServerFactory = (serviceManager) => ({ credentialsProvider, l
126
129
  logging.log(`textDocument [${params.textDocument.uri}] not found`);
127
130
  return constants_1.EMPTY_RESULT;
128
131
  }
129
- const inferredLanguageId = (0, languageDetection_1.getSupportedLanguageId)(textDocument);
132
+ let inferredLanguageId = (0, languageDetection_1.getSupportedLanguageId)(textDocument);
133
+ if (params.fileContextOverride?.programmingLanguage) {
134
+ inferredLanguageId = params.fileContextOverride?.programmingLanguage;
135
+ }
130
136
  if (!inferredLanguageId) {
131
137
  logging.log(`textDocument [${params.textDocument.uri}] with languageId [${textDocument.languageId}] not supported`);
132
138
  return constants_1.EMPTY_RESULT;
@@ -135,12 +141,29 @@ const CodewhispererServerFactory = (serviceManager) => ({ credentialsProvider, l
135
141
  const isAutomaticLspTriggerKind = params.context.triggerKind == server_interface_1.InlineCompletionTriggerKind.Automatic;
136
142
  const maxResults = isAutomaticLspTriggerKind ? 1 : 5;
137
143
  const selectionRange = params.context.selectedCompletionInfo?.range;
138
- const fileContext = (0, codeWhispererService_1.getFileContext)({
139
- textDocument,
140
- inferredLanguageId,
141
- position: params.position,
142
- workspaceFolder: workspace.getWorkspaceFolder(textDocument.uri),
143
- });
144
+ // For Jupyter Notebook in VSC, the language server does not have access to
145
+ // its internal states including current active cell index, etc
146
+ // we rely on VSC to calculate file context
147
+ let fileContext = undefined;
148
+ if (params.fileContextOverride) {
149
+ fileContext = {
150
+ leftFileContent: params.fileContextOverride.leftFileContent,
151
+ rightFileContent: params.fileContextOverride.rightFileContent,
152
+ filename: params.fileContextOverride.filename,
153
+ fileUri: params.fileContextOverride.fileUri,
154
+ programmingLanguage: {
155
+ languageName: inferredLanguageId,
156
+ },
157
+ };
158
+ }
159
+ else {
160
+ fileContext = (0, codeWhispererService_1.getFileContext)({
161
+ textDocument,
162
+ inferredLanguageId,
163
+ position: params.position,
164
+ workspaceFolder: workspace.getWorkspaceFolder(textDocument.uri),
165
+ });
166
+ }
144
167
  const workspaceState = workspaceFolderManager_1.WorkspaceFolderManager.getInstance()?.getWorkspaceState();
145
168
  const workspaceId = workspaceState?.webSocketClient?.isConnected()
146
169
  ? workspaceState.workspaceId
@@ -308,71 +331,40 @@ const CodewhispererServerFactory = (serviceManager) => ({ credentialsProvider, l
308
331
  session.setSuggestionState(suggestion.itemId, 'Filter');
309
332
  return false;
310
333
  });
311
- if (suggestionResponse.suggestionType === codeWhispererService_1.SuggestionType.COMPLETION) {
312
- const { includeImportsWithSuggestions } = amazonQServiceManager.getConfiguration();
313
- const suggestionsWithRightContext = mergeSuggestionsWithRightContext(session.requestContext.fileContext.rightFileContent, filteredSuggestions, includeImportsWithSuggestions, selectionRange).filter(suggestion => {
314
- // Discard suggestions that have empty string insertText after right context merge and can't be displayed anymore
315
- if (suggestion.insertText === '') {
316
- session.setSuggestionState(suggestion.itemId, 'Discard');
317
- return false;
318
- }
319
- return true;
320
- });
321
- suggestionsWithRightContext.forEach(suggestion => {
322
- const cachedSuggestion = session.suggestions.find(s => s.itemId === suggestion.itemId);
323
- if (cachedSuggestion)
324
- cachedSuggestion.insertText = suggestion.insertText.toString();
325
- });
326
- // TODO: need dedupe after right context merging but I don't see one
327
- session.suggestionsAfterRightContextMerge.push(...suggestionsWithRightContext);
328
- session.codewhispererSuggestionImportCount =
329
- session.codewhispererSuggestionImportCount +
330
- suggestionsWithRightContext.reduce((total, suggestion) => {
331
- return total + (suggestion.mostRelevantMissingImports?.length || 0);
332
- }, 0);
333
- // If after all server-side filtering no suggestions can be displayed, and there is no nextToken
334
- // close session and return empty results
335
- if (session.suggestionsAfterRightContextMerge.length === 0 &&
336
- !suggestionResponse.responseContext.nextToken) {
337
- completionSessionManager.closeSession(session);
338
- await (0, telemetry_1.emitUserTriggerDecisionTelemetry)(telemetry, telemetryService, session, timeSinceLastUserModification);
339
- return constants_1.EMPTY_RESULT;
334
+ const { includeImportsWithSuggestions } = amazonQServiceManager.getConfiguration();
335
+ const suggestionsWithRightContext = mergeSuggestionsWithRightContext(session.requestContext.fileContext.rightFileContent, filteredSuggestions, includeImportsWithSuggestions, selectionRange).filter(suggestion => {
336
+ // Discard suggestions that have empty string insertText after right context merge and can't be displayed anymore
337
+ if (suggestion.insertText === '') {
338
+ session.setSuggestionState(suggestion.itemId, 'Discard');
339
+ return false;
340
340
  }
341
- return {
342
- items: suggestionsWithRightContext,
343
- sessionId: session.id,
344
- partialResultToken: suggestionResponse.responseContext.nextToken,
345
- };
346
- }
347
- else {
348
- session.hasEditsPending = suggestionResponse.responseContext.nextToken ? true : false;
349
- return {
350
- items: suggestionResponse.suggestions
351
- .map(suggestion => {
352
- // Check if this suggestion is similar to a previously rejected edit
353
- const isSimilarToRejected = rejectedEditTracker.isSimilarToRejected(suggestion.content, textDocument?.uri || '');
354
- if (isSimilarToRejected) {
355
- // Mark as rejected in the session
356
- session.setSuggestionState(suggestion.itemId, 'Reject');
357
- logging.debug(`[EDIT_PREDICTION] Filtered out suggestion similar to previously rejected edit`);
358
- // Return empty item that will be filtered out
359
- return {
360
- insertText: '',
361
- isInlineEdit: true,
362
- itemId: suggestion.itemId,
363
- };
364
- }
365
- return {
366
- insertText: suggestion.content,
367
- isInlineEdit: true,
368
- itemId: suggestion.itemId,
369
- };
370
- })
371
- .filter(item => item.insertText !== ''),
372
- sessionId: session.id,
373
- partialResultToken: suggestionResponse.responseContext.nextToken,
374
- };
341
+ return true;
342
+ });
343
+ suggestionsWithRightContext.forEach(suggestion => {
344
+ const cachedSuggestion = session.suggestions.find(s => s.itemId === suggestion.itemId);
345
+ if (cachedSuggestion)
346
+ cachedSuggestion.insertText = suggestion.insertText.toString();
347
+ });
348
+ // TODO: need dedupe after right context merging but I don't see one
349
+ session.suggestionsAfterRightContextMerge.push(...suggestionsWithRightContext);
350
+ session.codewhispererSuggestionImportCount =
351
+ session.codewhispererSuggestionImportCount +
352
+ suggestionsWithRightContext.reduce((total, suggestion) => {
353
+ return total + (suggestion.mostRelevantMissingImports?.length || 0);
354
+ }, 0);
355
+ // If after all server-side filtering no suggestions can be displayed, and there is no nextToken
356
+ // close session and return empty results
357
+ if (session.suggestionsAfterRightContextMerge.length === 0 &&
358
+ !suggestionResponse.responseContext.nextToken) {
359
+ completionSessionManager.closeSession(session);
360
+ await (0, telemetry_1.emitUserTriggerDecisionTelemetry)(telemetry, telemetryService, session, timeSinceLastUserModification);
361
+ return constants_1.EMPTY_RESULT;
375
362
  }
363
+ return {
364
+ items: suggestionsWithRightContext,
365
+ sessionId: session.id,
366
+ partialResultToken: suggestionResponse.responseContext.nextToken,
367
+ };
376
368
  };
377
369
  const handleSuggestionsErrors = (error, session) => {
378
370
  logging.log('Recommendation failure: ' + error);
@@ -418,34 +410,31 @@ const CodewhispererServerFactory = (serviceManager) => ({ credentialsProvider, l
418
410
  return;
419
411
  }
420
412
  if (session.state !== 'ACTIVE') {
421
- logging.log(`ERROR: Trying to record trigger decision for not-active session ${sessionId}`);
413
+ logging.log(`ERROR: Trying to record trigger decision for not-active session ${sessionId} with wrong state ${session.state}`);
422
414
  return;
423
415
  }
424
416
  const acceptedItemId = Object.keys(params.completionSessionResult).find(k => params.completionSessionResult[k].accepted);
425
417
  const isAccepted = acceptedItemId ? true : false;
426
418
  const acceptedSuggestion = session.suggestions.find(s => s.itemId === acceptedItemId);
427
- let addedCharactersForEditSuggestion = '';
428
- let deletedCharactersForEditSuggestion = '';
429
- if (acceptedSuggestion !== undefined) {
430
- if (acceptedSuggestion) {
431
- codePercentageTracker.countSuccess(session.language);
432
- if (session.suggestionType === codeWhispererService_1.SuggestionType.EDIT && acceptedSuggestion.content) {
433
- // [acceptedSuggestion.insertText] will be undefined for NEP suggestion. Use [acceptedSuggestion.content] instead.
434
- // Since [acceptedSuggestion.content] is in the form of a diff, transform the content into addedCharacters and deletedCharacters.
435
- const addedAndDeletedChars = (0, diffUtils_1.getAddedAndDeletedChars)(acceptedSuggestion.content);
436
- if (addedAndDeletedChars) {
437
- addedCharactersForEditSuggestion = addedAndDeletedChars.addedCharacters;
438
- deletedCharactersForEditSuggestion = addedAndDeletedChars.deletedCharacters;
439
- codePercentageTracker.countAcceptedTokens(session.language, addedCharactersForEditSuggestion);
440
- codePercentageTracker.countTotalTokens(session.language, addedCharactersForEditSuggestion, true);
441
- enqueueCodeDiffEntry(session, acceptedSuggestion, addedCharactersForEditSuggestion);
442
- }
443
- }
444
- else if (acceptedSuggestion.insertText) {
445
- codePercentageTracker.countAcceptedTokens(session.language, acceptedSuggestion.insertText);
446
- codePercentageTracker.countTotalTokens(session.language, acceptedSuggestion.insertText, true);
447
- enqueueCodeDiffEntry(session, acceptedSuggestion);
448
- }
419
+ let addedLengthForEdits = 0;
420
+ let deletedLengthForEdits = 0;
421
+ if (acceptedSuggestion) {
422
+ codePercentageTracker.countSuccess(session.language);
423
+ if (session.suggestionType === codeWhispererService_1.SuggestionType.EDIT && acceptedSuggestion.content) {
424
+ // [acceptedSuggestion.insertText] will be undefined for NEP suggestion. Use [acceptedSuggestion.content] instead.
425
+ // Since [acceptedSuggestion.content] is in the form of a diff, transform the content into addedCharacters and deletedCharacters.
426
+ const { addedLines, deletedLines } = (0, diffUtils_1.getAddedAndDeletedLines)(acceptedSuggestion.content);
427
+ const charDiffResult = (0, diffUtils_1.getCharacterDifferences)(addedLines, deletedLines);
428
+ addedLengthForEdits = charDiffResult.charactersAdded;
429
+ deletedLengthForEdits = charDiffResult.charactersRemoved;
430
+ codePercentageTracker.countAcceptedTokensUsingCount(session.language, charDiffResult.charactersAdded);
431
+ codePercentageTracker.addTotalTokensForEdits(session.language, charDiffResult.charactersAdded);
432
+ enqueueCodeDiffEntry(session, acceptedSuggestion, addedLines.join('\n'));
433
+ }
434
+ else if (acceptedSuggestion.insertText) {
435
+ codePercentageTracker.countAcceptedTokens(session.language, acceptedSuggestion.insertText);
436
+ codePercentageTracker.countTotalTokens(session.language, acceptedSuggestion.insertText, true);
437
+ enqueueCodeDiffEntry(session, acceptedSuggestion);
449
438
  }
450
439
  }
451
440
  // Handle rejected edit predictions
@@ -472,13 +461,9 @@ const CodewhispererServerFactory = (serviceManager) => ({ credentialsProvider, l
472
461
  if (firstCompletionDisplayLatency)
473
462
  (0, telemetry_1.emitPerceivedLatencyTelemetry)(telemetry, session);
474
463
  // Always emit user trigger decision at session close
475
- // Close session unless Edit suggestion was accepted with more pending
476
- const shouldKeepSessionOpen = session.suggestionType === codeWhispererService_1.SuggestionType.EDIT && isAccepted && session.hasEditsPending;
477
- if (!shouldKeepSessionOpen) {
478
- completionSessionManager.closeSession(session);
479
- }
480
- const streakLength = editsEnabled ? completionSessionManager.getAndUpdateStreakLength(isAccepted) : 0;
481
- await (0, telemetry_1.emitUserTriggerDecisionTelemetry)(telemetry, telemetryService, session, timeSinceLastUserModification, addedCharactersForEditSuggestion.length, deletedCharactersForEditSuggestion.length, addedDiagnostics, removedDiagnostics, streakLength);
464
+ sessionManager.closeSession(session);
465
+ const streakLength = editsEnabled ? sessionManager.getAndUpdateStreakLength(isAccepted) : 0;
466
+ await (0, telemetry_1.emitUserTriggerDecisionTelemetry)(telemetry, telemetryService, session, timeSinceLastUserModification, addedLengthForEdits, deletedLengthForEdits, addedDiagnostics, removedDiagnostics, streakLength, Object.keys(params.completionSessionResult)[0]);
482
467
  };
483
468
  const updateConfiguration = (updatedConfig) => {
484
469
  logging.debug('Updating configuration of inline complete server.');
@@ -491,10 +476,8 @@ const CodewhispererServerFactory = (serviceManager) => ({ credentialsProvider, l
491
476
  userWrittenCodeTracker.customizationArn = customizationArn;
492
477
  }
493
478
  logging.debug(`CodePercentageTracker customizationArn updated to ${customizationArn}`);
494
- /*
495
- The flag enableTelemetryEventsToDestination is set to true temporarily. It's value will be determined through destination
496
- configuration post all events migration to STE. It'll be replaced by qConfig['enableTelemetryEventsToDestination'] === true
497
- */
479
+ // The flag enableTelemetryEventsToDestination is set to true temporarily. It's value will be determined through destination
480
+ // configuration post all events migration to STE. It'll be replaced by qConfig['enableTelemetryEventsToDestination'] === true
498
481
  // const enableTelemetryEventsToDestination = true
499
482
  // telemetryService.updateEnableTelemetryEventsToDestination(enableTelemetryEventsToDestination)
500
483
  telemetryService.updateOptOutPreference(optOutTelemetryPreference);
@@ -508,7 +491,7 @@ const CodewhispererServerFactory = (serviceManager) => ({ credentialsProvider, l
508
491
  clientParams?.initializationOptions?.aws?.awsClientCapabilities?.textDocument
509
492
  ?.inlineCompletionWithReferences?.inlineEditSupport ?? false;
510
493
  telemetryService = new telemetryService_1.TelemetryService(amazonQServiceManager, credentialsProvider, telemetry, logging);
511
- telemetryService.updateUserContext((0, telemetryUtils_1.makeUserContextObject)(clientParams, runtime.platform, 'INLINE'));
494
+ telemetryService.updateUserContext((0, telemetryUtils_1.makeUserContextObject)(clientParams, runtime.platform, 'INLINE', amazonQServiceManager.serverInfo));
512
495
  codePercentageTracker = new codePercentage_1.CodePercentageTracker(telemetryService);
513
496
  codeDiffTracker = new codeDiffTracker_1.CodeDiffTracker(workspace, logging, async (entry, percentage, unmodifiedAcceptedCharacterCount) => {
514
497
  await telemetryService.emitUserModificationEvent({
@@ -565,8 +548,6 @@ const CodewhispererServerFactory = (serviceManager) => ({ credentialsProvider, l
565
548
  editCompletionHandler.documentChanged();
566
549
  // Process document changes with RecentEditTracker.
567
550
  if (editsEnabled && recentEditTracker) {
568
- logging.log(`[SERVER] Processing document change with RecentEditTracker: ${p.textDocument.uri}, version: ${textDocument.version}`);
569
- logging.log(`[SERVER] Change details: ${p.contentChanges.length} changes`);
570
551
  await recentEditTracker.handleDocumentChange({
571
552
  uri: p.textDocument.uri,
572
553
  languageId: textDocument.languageId,
@@ -620,4 +601,33 @@ const CodewhispererServerFactory = (serviceManager) => ({ credentialsProvider, l
620
601
  exports.CodewhispererServerFactory = CodewhispererServerFactory;
621
602
  exports.CodeWhispererServerIAM = (0, exports.CodewhispererServerFactory)(AmazonQIAMServiceManager_1.getOrThrowBaseIAMServiceManager);
622
603
  exports.CodeWhispererServerToken = (0, exports.CodewhispererServerFactory)(AmazonQTokenServiceManager_1.getOrThrowBaseTokenServiceManager);
604
+ const getLanguageIdFromUri = (uri, logging) => {
605
+ try {
606
+ if (uri.startsWith('vscode-notebook-cell:')) {
607
+ // use python for now as lsp does not support JL cell language detection
608
+ return 'python';
609
+ }
610
+ const extension = uri.split('.').pop()?.toLowerCase();
611
+ return constants_1.ABAP_EXTENSIONS.has(extension || '') ? 'abap' : '';
612
+ }
613
+ catch (err) {
614
+ logging?.log(`Error parsing URI to determine language: ${uri}: ${err}`);
615
+ return '';
616
+ }
617
+ };
618
+ exports.getLanguageIdFromUri = getLanguageIdFromUri;
619
+ const getTextDocument = async (uri, workspace, logging) => {
620
+ let textDocument = await workspace.getTextDocument(uri);
621
+ if (!textDocument) {
622
+ try {
623
+ const content = await workspace.fs.readFile(vscode_uri_1.URI.parse(uri).fsPath);
624
+ const languageId = (0, exports.getLanguageIdFromUri)(uri);
625
+ textDocument = server_interface_1.TextDocument.create(uri, languageId, 0, content);
626
+ }
627
+ catch (err) {
628
+ logging.log(`Unable to load from ${uri}: ${err}`);
629
+ }
630
+ }
631
+ return textDocument;
632
+ };
623
633
  //# sourceMappingURL=codeWhispererServer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"codeWhispererServer.js","sourceRoot":"","sources":["../../../src/language-server/inline-completion/codeWhispererServer.ts"],"names":[],"mappings":";;;AAAA,qFAcuD;AACvD,4DAA6G;AAC7G,4EAM0C;AAC1C,sEAAuE;AACvE,uDAAwG;AACxG,6DAA+E;AAC/E,qDAAwD;AACxD,8CAAqH;AACrH,gEAAmF;AACnF,4CAAyC;AACzC,8EAA0E;AAC1E,uDAAkF;AAClF,sEAIkD;AAElD,8GAAiH;AAEjH,8CAAyD;AACzD,0GAA6G;AAC7G,uFAAmF;AAEnF,gFAA4E;AAC5E,+DAA6F;AAC7F,2DAAuD;AACvD,uEAAyG;AACzG,2CAAqD;AACrD,2CAKoB;AACpB,uEAAmE;AACnE,mEAA+D;AAC/D,2CAA0C;AAE1C,MAAM,gCAAgC,GAAG,CACrC,gBAAwB,EACxB,WAAyB,EACzB,6BAAsC,EACtC,KAAa,EACuB,EAAE;IACtC,OAAO,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE;QAChC,MAAM,UAAU,GAAW,IAAA,iDAA+B,EAAC,gBAAgB,EAAE,UAAU,CAAC,OAAO,CAAC,CAAA;QAChG,IAAI,UAAU,GAAG,UAAU,CAAC,UAAU;YAClC,EAAE,MAAM,CACJ,GAAG,CAAC,EAAE,CACF,CAAC,CACG,GAAG,CAAC,yBAAyB,EAAE,KAAK,IAAI,UAAU,CAAC,MAAM,IAAI,GAAG,CAAC,yBAAyB,CAAC,KAAK,CACnG,IAAI,UAAU,CAAC,MAAM,CAC7B;aACA,GAAG,CAAC,CAAC,CAAC,EAAE;YACL,OAAO;gBACH,WAAW,EAAE,CAAC,CAAC,WAAW;gBAC1B,YAAY,EAAE,CAAC,CAAC,GAAG;gBACnB,aAAa,EAAE,CAAC,CAAC,UAAU;gBAC3B,QAAQ,EAAE,CAAC,CAAC,yBAAyB,IAAI;oBACrC,cAAc,EAAE,CAAC,CAAC,yBAAyB,CAAC,KAAK;oBACjD,YAAY,EAAE,CAAC,CAAC,yBAAyB,CAAC,GAAG;wBACzC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,yBAAyB,CAAC,GAAG,EAAE,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;wBAClE,CAAC,CAAC,CAAC,CAAC,yBAAyB,CAAC,GAAG;iBACxC;aACJ,CAAA;QACL,CAAC,CAAC,CAAA;QAEN,OAAO;YACH,MAAM,EAAE,UAAU,CAAC,MAAM;YACzB,UAAU,EAAE,UAAU;YACtB,KAAK;YACL,UAAU,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;YACvD,0BAA0B,EAAE,6BAA6B;gBACrD,CAAC,CAAC,UAAU,CAAC,0BAA0B;gBACvC,CAAC,CAAC,SAAS;SAClB,CAAA;IACL,CAAC,CAAC,CAAA;AACN,CAAC,CAAA;AAEM,MAAM,0BAA0B,GACnC,CAAC,cAA+C,EAAU,EAAE,CAC5D,CAAC,EAAE,mBAAmB,EAAE,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,EAAE,EAAE;IACvF,IAAI,wBAAgC,CAAA;IACpC,IAAI,6BAA6B,GAAW,CAAC,CAAA;IAE7C,MAAM,wBAAwB,GAAG,+BAAc,CAAC,WAAW,CAAC,aAAa,CAAC,CAAA;IAC1E,MAAM,kBAAkB,GAAG,+BAAc,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;IAE9D,gJAAgJ;IAChJ,IAAI,qBAAgD,CAAA;IACpD,IAAI,gBAAkC,CAAA;IAEtC,GAAG,CAAC,cAAc,CAAC,CAAC,MAAwB,EAAE,EAAE;QAC5C,OAAO;YACH,YAAY,EAAE,EAAE;SACnB,CAAA;IACL,CAAC,CAAC,CAAA;IAEF,0IAA0I;IAC1I,IAAI,qBAA4C,CAAA;IAChD,IAAI,sBAA0D,CAAA;IAC9D,IAAI,eAA+D,CAAA;IACnE,IAAI,qBAA4C,CAAA;IAEhD,qDAAqD;IACrD,MAAM,iBAAiB,GAAG,mCAAiB,CAAC,WAAW,CAAC,OAAO,EAAE,gDAA8B,CAAC,CAAA;IAChG,MAAM,aAAa,GAAG,6BAAa,CAAC,WAAW,EAAE,CAAA;IACjD,MAAM,mBAAmB,GAAG,yCAAmB,CAAC,WAAW,CAAC,OAAO,EAAE,0DAAoC,CAAC,CAAA;IAC1G,IAAI,YAAY,GAAG,KAAK,CAAA;IACxB,IAAI,qCAAqC,GAAG,KAAK,CAAA;IAEjD,MAAM,uBAAuB,GAAG,IAAI,iDAAuB,EAAE,CAAA;IAE7D,MAAM,yBAAyB,GAAG,KAAK,EACnC,MAA4C,EAC5C,KAAwB,EACmB,EAAE;QAC7C,kDAAkD;QAClD,kEAAkE;QAClE,+EAA+E;QAC/E,qFAAqF;QACrF,oEAAoE;QACpE,IAAI,qCAAqC,EAAE,CAAC;YACxC,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAA;YAChD,OAAO,wBAAY,CAAA;QACvB,CAAC;QACD,qCAAqC,GAAG,IAAI,CAAA;QAE5C,IAAI,CAAC;YACD,kEAAkE;YAClE,MAAM,cAAc,GAAG,wBAAwB,CAAC,iBAAiB,EAAE,CAAA;YACnE,IAAI,cAAc,IAAI,cAAc,CAAC,KAAK,IAAI,YAAY,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE,CAAC;gBACvF,oFAAoF;gBACpF,cAAc,CAAC,qCAAqC,GAAG,IAAI,CAAA;YAC/D,CAAC;YAED,IAAI,aAAa,EAAE,CAAC;gBAChB,aAAa,CAAC,aAAa,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAA;YACzE,CAAC;YACD,MAAM,YAAY,GAAG,MAAM,SAAS,CAAC,eAAe,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAA;YAE7E,MAAM,oBAAoB,GAAG,qBAAqB,CAAC,uBAAuB,EAAE,CAAA;YAC5E,IAAI,MAAM,CAAC,kBAAkB,IAAI,cAAc,EAAE,CAAC;gBAC9C,oDAAoD;gBACpD,IAAI,CAAC;oBACD,MAAM,kBAAkB,GAAG,MAAM,oBAAoB,CAAC,mBAAmB,CAAC;wBACtE,GAAG,cAAc,CAAC,cAAc;wBAChC,WAAW,EAAE;4BACT,GAAG,cAAc,CAAC,cAAc,CAAC,WAAW;yBAC/C;wBACD,SAAS,EAAE,GAAG,MAAM,CAAC,kBAAkB,EAAE;qBAC5C,CAAC,CAAA;oBACF,OAAO,MAAM,yBAAyB,CAClC,kBAAkB,EAClB,cAAc,EACd,KAAK,EACL,MAAM,CAAC,OAAO,CAAC,sBAAsB,EAAE,KAAK,CAC/C,CAAA;gBACL,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACb,OAAO,uBAAuB,CAAC,KAAc,EAAE,cAAc,CAAC,CAAA;gBAClE,CAAC;YACL,CAAC;iBAAM,CAAC;gBACJ,0BAA0B;gBAC1B,IAAI,CAAC,YAAY,EAAE,CAAC;oBAChB,OAAO,CAAC,GAAG,CAAC,iBAAiB,MAAM,CAAC,YAAY,CAAC,GAAG,aAAa,CAAC,CAAA;oBAClE,OAAO,wBAAY,CAAA;gBACvB,CAAC;gBAED,MAAM,kBAAkB,GAAG,IAAA,0CAAsB,EAAC,YAAY,CAAC,CAAA;gBAC/D,IAAI,CAAC,kBAAkB,EAAE,CAAC;oBACtB,OAAO,CAAC,GAAG,CACP,iBAAiB,MAAM,CAAC,YAAY,CAAC,GAAG,sBAAsB,YAAY,CAAC,UAAU,iBAAiB,CACzG,CAAA;oBACD,OAAO,wBAAY,CAAA;gBACvB,CAAC;gBAED,wBAAwB;gBACxB,MAAM,yBAAyB,GAC3B,MAAM,CAAC,OAAO,CAAC,WAAW,IAAI,8CAA2B,CAAC,SAAS,CAAA;gBACvE,MAAM,UAAU,GAAG,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;gBACpD,MAAM,cAAc,GAAG,MAAM,CAAC,OAAO,CAAC,sBAAsB,EAAE,KAAK,CAAA;gBACnE,MAAM,WAAW,GAAG,IAAA,qCAAc,EAAC;oBAC/B,YAAY;oBACZ,kBAAkB;oBAClB,QAAQ,EAAE,MAAM,CAAC,QAAQ;oBACzB,eAAe,EAAE,SAAS,CAAC,kBAAkB,CAAC,YAAY,CAAC,GAAG,CAAC;iBAClE,CAAC,CAAA;gBAEF,MAAM,cAAc,GAAG,+CAAsB,CAAC,WAAW,EAAE,EAAE,iBAAiB,EAAE,CAAA;gBAChF,MAAM,WAAW,GAAG,cAAc,EAAE,eAAe,EAAE,WAAW,EAAE;oBAC9D,CAAC,CAAC,cAAc,CAAC,WAAW;oBAC5B,CAAC,CAAC,SAAS,CAAA;gBAEf,MAAM,eAAe,GAAG,wBAAwB,CAAC,kBAAkB,EAAE,CAAA;gBACrE,MAAM,gBAAgB,GAAG,eAAe,EAAE,gCAAgC,EAAE,IAAI,EAAE,CAAA;gBAClF,IAAI,WAAW,GAAuB,EAAE,CAAA;gBACxC,MAAM,gBAAgB,GAAG,GAAG,CAAC,yBAAyB,EAAE,CAAA;gBACxD,IAAI,gBAAgB,KAAK,SAAS,EAAE,CAAC;oBACjC,WAAW,GAAG,IAAA,+BAAc,EAAC,gBAAgB,CAAC,CAAA;gBAClD,CAAC;gBAED,yBAAyB;gBACzB,IAAI,4BAA4B,GAAG,SAAS,CAAA;gBAC5C,IAAI,iBAAiB,GAAG,EAAE,CAAA;gBAC1B,IAAI,iBAAiB,GAAG,SAAS,CAAA;gBAEjC,IAAI,yBAAyB,EAAE,CAAC;oBAC5B,8IAA8I;oBAC9I,IACI,MAAM,CAAC,oBAAoB,EAAE,cAAc;wBAC3C,MAAM,CAAC,oBAAoB,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC;wBACrD,MAAM,CAAC,oBAAoB,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,EAClE,CAAC;wBACC,iBAAiB,GAAG,MAAM,CAAC,oBAAoB,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;wBACtE,4BAA4B,GAAG,IAAA,gCAAkB,EAC7C,MAAM,CAAC,oBAAoB,CAAC,cAAc,CAC7C,CAAA;oBACL,CAAC;yBAAM,CAAC;wBACJ,wFAAwF;wBACxF,iBAAiB,GAAG,WAAW,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;wBACnE,4BAA4B,GAAG,IAAA,yBAAW,EAAC,WAAW,CAAC,CAAA;oBAC3D,CAAC;oBACD,uIAAuI;oBACvI,sCAAsC;oBACtC,IAAI,4BAA4B,KAAK,SAAS,EAAE,CAAC;wBAC7C,OAAO,wBAAY,CAAA;oBACvB,CAAC;oBAED,iBAAiB,GAAG,IAAA,yBAAW,EAC3B;wBACI,WAAW,EAAE,uDAAuD;wBACpE,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,oEAAoE;wBACnG,IAAI,EAAE,iBAAiB,EAAE,0EAA0E;wBACnG,GAAG,EAAE,WAAW,IAAI,EAAE;wBACtB,EAAE,EAAE,IAAA,gCAAkB,GAAE;wBACxB,gBAAgB,EAAE,2DAA2D;wBAC7E,WAAW,EAAE,4BAA4B,EAAE,4FAA4F;qBAC1I,EACD,OAAO,CACV,CAAA;oBAED,IAAI,4BAA4B,KAAK,YAAY,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,CAAC;wBACpF,OAAO,wBAAY,CAAA;oBACvB,CAAC;gBACL,CAAC;gBAED,IAAI,cAAc,GAA+B;oBAC7C,WAAW;oBACX,UAAU;iBACb,CAAA;gBAED,MAAM,mBAAmB,GAAG,MAAM,oBAAoB,CAAC,4BAA4B,CAC/E,YAAY,EACZ,MAAM,CAAC,QAAQ,EACf,SAAS,EACT,iBAAiB,EACjB,OAAO,EACP,KAAK,EACL,MAAM,CAAC,gBAAgB,EACvB,EAAE,kBAAkB,EAAE,KAAK,EAAE,CAChC,CAAA;gBAED,IAAI,mBAAmB,EAAE,KAAK,EAAE,CAAC;oBAC7B,cAAc,CAAC,oBAAoB,GAAG,mBAAmB,CAAC,KAAK,CAAA;gBACnE,CAAC;gBAED,uEAAuE;gBACvE,IAAI,cAAc,IAAI,cAAc,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;oBACtD,IAAI,YAAY,IAAI,cAAc,CAAC,cAAc,KAAK,qCAAc,CAAC,IAAI,EAAE,CAAC;wBACxE,MAAM,iBAAiB,GAAG,IAAA,qDAAmC,EACzD,cAAc,EACd,YAAY,EACZ,WAAW,CACd,CAAA;wBAED,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;4BAC/B,OAAO;gCACH,KAAK,EAAE,iBAAiB;gCACxB,SAAS,EAAE,cAAc,CAAC,EAAE;6BAC/B,CAAA;wBACL,CAAC;oBACL,CAAC;oBACD,sEAAsE;oBACtE,wBAAwB,CAAC,cAAc,CAAC,cAAc,CAAC,CAAA;oBACvD,MAAM,YAAY,GAAG,YAAY,CAAC,CAAC,CAAC,wBAAwB,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;oBAChG,MAAM,IAAA,4CAAgC,EAClC,SAAS,EACT,gBAAgB,EAChB,cAAc,EACd,6BAA6B,EAC7B,CAAC,EACD,CAAC,EACD,EAAE,EACF,EAAE,EACF,YAAY,CACf,CAAA;gBACL,CAAC;gBAED,MAAM,oBAAoB,GAAG,mBAAmB,EAAE,cAAc,CAAA;gBAEhE,MAAM,UAAU,GAAG,wBAAwB,CAAC,aAAa,CAAC;oBACtD,QAAQ,EAAE,YAAY;oBACtB,aAAa,EAAE,MAAM,CAAC,QAAQ;oBAC9B,WAAW,EAAE,yBAAyB,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU;oBACnE,QAAQ,EAAE,WAAW,CAAC,mBAAmB,CAAC,YAAY;oBACtD,cAAc,EAAE,cAAc;oBAC9B,eAAe,EAAE,yBAAyB,CAAC,CAAC,CAAC,4BAA4B,CAAC,CAAC,CAAC,SAAS;oBACrF,gBAAgB,EAAE,iBAAiB;oBACnC,gBAAgB,EAAE,iBAAiB,EAAE,gBAAgB;oBACrD,mBAAmB,EAAE,iBAAiB,EAAE,mBAAmB;oBAC3D,kBAAkB,EAAE,mBAAmB,CAAC,qBAAqB,EAAE,EAAE,EAAE,GAAG,EAAE,QAAQ,IAAI,SAAS;oBAC7F,oBAAoB,EAAE,oBAAoB;oBAC1C,gBAAgB,EAAE,oBAAS,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,gBAAgB,CAAC;iBACtF,CAAC,CAAA;gBAEF,uCAAuC;gBACvC,MAAM,EAAE,YAAY,EAAE,GAAG,qBAAqB,CAAC,gBAAgB,EAAE,CAAC,iBAAiB,CAAA;gBACnF,IAAI,YAAY,EAAE,CAAC;oBACf,cAAc,CAAC,WAAW,CAAC,eAAe;wBACtC,YAAY,GAAG,IAAI,GAAG,cAAc,CAAC,WAAW,CAAC,eAAe,CAAA;gBACxE,CAAC;gBAED,MAAM,qBAAqB,GAAG;oBAC1B,GAAG,cAAc;oBACjB,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACvD,CAAA;gBACD,IAAI,CAAC;oBACD,MAAM,kBAAkB,GAAG,MAAM,oBAAoB,CAAC,mBAAmB,CAAC,qBAAqB,CAAC,CAAA;oBAChG,OAAO,MAAM,yBAAyB,CAAC,kBAAkB,EAAE,UAAU,EAAE,IAAI,EAAE,cAAc,CAAC,CAAA;gBAChG,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACb,OAAO,uBAAuB,CAAC,KAAc,EAAE,UAAU,CAAC,CAAA;gBAC9D,CAAC;YACL,CAAC;QACL,CAAC;gBAAS,CAAC;YACP,qCAAqC,GAAG,KAAK,CAAA;QACjD,CAAC;IACL,CAAC,CAAA;IAED,MAAM,yBAAyB,GAAG,KAAK,EACnC,kBAA+C,EAC/C,OAA6B,EAC7B,YAAqB,EACrB,cAAsB,EACtB,YAA2B,EACgB,EAAE;QAC7C,qBAAqB,CAAC,eAAe,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;QAEvD,sBAAsB,EAAE,gBAAgB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;QAC1D,OAAO,CAAC,6BAA6B;YACjC,qBAAqB,CAAC,gBAAgB,EAAE,CAAC,6BAA6B,CAAA;QAE1E,IAAI,YAAY,EAAE,CAAC;YACf,oEAAoE;YACpE,OAAO,CAAC,WAAW,GAAG,kBAAkB,CAAC,WAAW,CAAA;YACpD,OAAO,CAAC,eAAe,GAAG,kBAAkB,CAAC,eAAe,CAAA;YAC5D,OAAO,CAAC,sBAAsB,GAAG,kBAAkB,CAAC,eAAe,CAAC,sBAAsB,CAAA;YAC1F,OAAO,CAAC,yBAAyB,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,OAAO,CAAC,SAAS,CAAA;YAC5E,OAAO,CAAC,cAAc,GAAG,kBAAkB,CAAC,cAAc,CAAA;QAC9D,CAAC;aAAM,CAAC;YACJ,OAAO,CAAC,WAAW,GAAG,CAAC,GAAG,OAAO,CAAC,WAAW,EAAE,GAAG,kBAAkB,CAAC,WAAW,CAAC,CAAA;QACrF,CAAC;QAED,sEAAsE;QACtE,IAAA,0CAA8B,EAAC,SAAS,EAAE,OAAO,EAAE,kBAAkB,CAAC,eAAe,CAAC,SAAS,CAAC,CAAA;QAEhG,4DAA4D;QAC5D,IAAI,OAAO,CAAC,qCAAqC,EAAE,CAAC;YAChD,OAAO,CAAC,qCAAqC,GAAG,KAAK,CAAA;YACrD,wBAAwB,CAAC,cAAc,CAAC,OAAO,CAAC,CAAA;YAChD,MAAM,YAAY,GAAG,YAAY,CAAC,CAAC,CAAC,wBAAwB,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YAChG,MAAM,IAAA,4CAAgC,EAClC,SAAS,EACT,gBAAgB,EAChB,OAAO,EACP,6BAA6B,EAC7B,CAAC,EACD,CAAC,EACD,EAAE,EACF,EAAE,EACF,YAAY,CACf,CAAA;QACL,CAAC;QAED,iIAAiI;QACjI,IACI,OAAO,CAAC,cAAc,KAAK,qCAAc,CAAC,IAAI,IAAI,mIAAmI;YACrL,CAAC,OAAO,CAAC,KAAK,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,EAC7D,CAAC;YACC,OAAO,wBAAY,CAAA;QACvB,CAAC;QAED,yDAAyD;QACzD,wBAAwB,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;QAEjD,uDAAuD;QACvD,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,WAAW;YACtD,0BAA0B;aACzB,MAAM,CAAC,UAAU,CAAC,EAAE;YACjB,IAAI,UAAU,CAAC,OAAO,KAAK,EAAE,EAAE,CAAC;gBAC5B,OAAO,CAAC,kBAAkB,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;gBACtD,OAAO,KAAK,CAAA;YAChB,CAAC;YAED,OAAO,IAAI,CAAA;QACf,CAAC,CAAC;YACF,4BAA4B;aAC3B,MAAM,CAAC,UAAU,CAAC,EAAE;YACjB,oEAAoE;YACpE,sEAAsE;YACtE,wEAAwE;YACxE,oCAAoC;YACpC,MAAM,EAAE,oCAAoC,EAAE,GAAG,qBAAqB,CAAC,gBAAgB,EAAE,CAAA;YACzF,IAAI,oCAAoC,EAAE,CAAC;gBACvC,OAAO,IAAI,CAAA;YACf,CAAC;YAED,IAAI,UAAU,CAAC,UAAU,IAAI,IAAI,IAAI,UAAU,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACtE,OAAO,IAAI,CAAA;YACf,CAAC;YAED,wGAAwG;YACxG,OAAO,CAAC,kBAAkB,CAAC,UAAU,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;YACvD,OAAO,KAAK,CAAA;QAChB,CAAC,CAAC,CAAA;QAEN,IAAI,kBAAkB,CAAC,cAAc,KAAK,qCAAc,CAAC,UAAU,EAAE,CAAC;YAClE,MAAM,EAAE,6BAA6B,EAAE,GAAG,qBAAqB,CAAC,gBAAgB,EAAE,CAAA;YAClF,MAAM,2BAA2B,GAAG,gCAAgC,CAChE,OAAO,CAAC,cAAc,CAAC,WAAW,CAAC,gBAAgB,EACnD,mBAAmB,EACnB,6BAA6B,EAC7B,cAAc,CACjB,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE;gBAClB,iHAAiH;gBACjH,IAAI,UAAU,CAAC,UAAU,KAAK,EAAE,EAAE,CAAC;oBAC/B,OAAO,CAAC,kBAAkB,CAAC,UAAU,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;oBACxD,OAAO,KAAK,CAAA;gBAChB,CAAC;gBAED,OAAO,IAAI,CAAA;YACf,CAAC,CAAC,CAAA;YAEF,2BAA2B,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;gBAC7C,MAAM,gBAAgB,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,UAAU,CAAC,MAAM,CAAC,CAAA;gBACtF,IAAI,gBAAgB;oBAAE,gBAAgB,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAA;YACxF,CAAC,CAAC,CAAA;YAEF,oEAAoE;YACpE,OAAO,CAAC,iCAAiC,CAAC,IAAI,CAAC,GAAG,2BAA2B,CAAC,CAAA;YAE9E,OAAO,CAAC,kCAAkC;gBACtC,OAAO,CAAC,kCAAkC;oBAC1C,2BAA2B,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE;wBACrD,OAAO,KAAK,GAAG,CAAC,UAAU,CAAC,0BAA0B,EAAE,MAAM,IAAI,CAAC,CAAC,CAAA;oBACvE,CAAC,EAAE,CAAC,CAAC,CAAA;YAET,gGAAgG;YAChG,yCAAyC;YACzC,IACI,OAAO,CAAC,iCAAiC,CAAC,MAAM,KAAK,CAAC;gBACtD,CAAC,kBAAkB,CAAC,eAAe,CAAC,SAAS,EAC/C,CAAC;gBACC,wBAAwB,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;gBAC9C,MAAM,IAAA,4CAAgC,EAClC,SAAS,EACT,gBAAgB,EAChB,OAAO,EACP,6BAA6B,CAChC,CAAA;gBAED,OAAO,wBAAY,CAAA;YACvB,CAAC;YAED,OAAO;gBACH,KAAK,EAAE,2BAA2B;gBAClC,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,kBAAkB,EAAE,kBAAkB,CAAC,eAAe,CAAC,SAAS;aACnE,CAAA;QACL,CAAC;aAAM,CAAC;YACJ,OAAO,CAAC,eAAe,GAAG,kBAAkB,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAA;YACrF,OAAO;gBACH,KAAK,EAAE,kBAAkB,CAAC,WAAW;qBAChC,GAAG,CAAC,UAAU,CAAC,EAAE;oBACd,oEAAoE;oBACpE,MAAM,mBAAmB,GAAG,mBAAmB,CAAC,mBAAmB,CAC/D,UAAU,CAAC,OAAO,EAClB,YAAY,EAAE,GAAG,IAAI,EAAE,CAC1B,CAAA;oBAED,IAAI,mBAAmB,EAAE,CAAC;wBACtB,kCAAkC;wBAClC,OAAO,CAAC,kBAAkB,CAAC,UAAU,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;wBACvD,OAAO,CAAC,KAAK,CACT,+EAA+E,CAClF,CAAA;wBACD,8CAA8C;wBAC9C,OAAO;4BACH,UAAU,EAAE,EAAE;4BACd,YAAY,EAAE,IAAI;4BAClB,MAAM,EAAE,UAAU,CAAC,MAAM;yBAC5B,CAAA;oBACL,CAAC;oBAED,OAAO;wBACH,UAAU,EAAE,UAAU,CAAC,OAAO;wBAC9B,YAAY,EAAE,IAAI;wBAClB,MAAM,EAAE,UAAU,CAAC,MAAM;qBAC5B,CAAA;gBACL,CAAC,CAAC;qBACD,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,KAAK,EAAE,CAAC;gBAC3C,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,kBAAkB,EAAE,kBAAkB,CAAC,eAAe,CAAC,SAAS;aACnE,CAAA;QACL,CAAC;IACL,CAAC,CAAA;IAED,MAAM,uBAAuB,GAAG,CAC5B,KAAY,EACZ,OAA6B,EACK,EAAE;QACpC,OAAO,CAAC,GAAG,CAAC,0BAA0B,GAAG,KAAK,CAAC,CAAA;QAC/C,IAAA,wCAA4B,EAAC,SAAS,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;QAEvD,wBAAwB,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;QAE9C,IAAI,eAAe,GAAG,KAAK,CAAA;QAE3B,IAAI,IAAA,4BAAoB,EAAC,KAAK,CAAC,EAAE,CAAC;YAC9B,eAAe,GAAG,IAAI,6CAAoC,CAAC,IAAA,uBAAe,EAAC,KAAK,CAAC,CAAC,CAAA;QACtF,CAAC;QAED,IAAI,eAAe,YAAY,qBAAY,EAAE,CAAC;YAC1C,MAAM,IAAI,gCAAa,CACnB,gCAAa,CAAC,aAAa,EAC3B,eAAe,CAAC,OAAO,IAAI,sCAAsC,EACjE;gBACI,YAAY,EAAE,eAAe,CAAC,IAAI;aACrC,CACJ,CAAA;QACL,CAAC;QAED,OAAO,wBAAY,CAAA;IACvB,CAAC,CAAA;IAED,wDAAwD;IACxD,MAAM,oBAAoB,GAAG,CACzB,OAA6B,EAC7B,kBAA8B,EAC9B,sBAA+B,EACjC,EAAE;QACA,MAAM,WAAW,GAAG,IAAA,2CAAmC,EAAC,kBAAkB,CAAC,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,CAAA;QAC1G,+DAA+D;QAC/D,MAAM,cAAc,GAAG,sBAAsB,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,kBAAkB,CAAC,OAAO,CAAA;QAEnG,eAAe,CAAC,OAAO,CAAC;YACpB,SAAS,EAAE,OAAO,CAAC,sBAAsB,IAAI,EAAE;YAC/C,SAAS,EAAE,OAAO,CAAC,eAAe,EAAE,SAAS,IAAI,EAAE;YACnD,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG;YAC7B,UAAU,EAAE,OAAO,CAAC,QAAQ;YAC5B,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE;YAChB,cAAc,EAAE,cAAc;YAC9B,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,WAAW,EAAE,WAAW;YACxB,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;YAC1C,cAAc,EAAE,IAAA,yBAAiB,EAAC,kBAAkB,CAAC;YACrD,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,kBAAkB,EAAE,OAAO,CAAC,kBAAkB;SACjD,CAAC,CAAA;IACN,CAAC,CAAA;IAED,MAAM,0CAA0C,GAAG,KAAK,EAAE,MAA+C,EAAE,EAAE;QACzG,MAAM,EACF,SAAS,EACT,uBAAuB,EACvB,6BAA6B,EAC7B,uBAAuB,EACvB,eAAe,EACf,YAAY,EACZ,gBAAgB,EAChB,kBAAkB,GACrB,GAAG,MAAM,CAAA;QAEV,MAAM,cAAc,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,wBAAwB,CAAA;QAE1F,MAAM,OAAO,GAAG,cAAc,CAAC,cAAc,CAAC,SAAS,CAAC,CAAA;QACxD,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,OAAO,CAAC,GAAG,CAAC,qBAAqB,SAAS,gBAAgB,CAAC,CAAA;YAC3D,OAAM;QACV,CAAC;QAED,IAAI,OAAO,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC7B,OAAO,CAAC,GAAG,CAAC,mEAAmE,SAAS,EAAE,CAAC,CAAA;YAC3F,OAAM;QACV,CAAC;QAED,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC,IAAI,CACnE,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAClD,CAAA;QACD,MAAM,UAAU,GAAG,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAA;QAChD,MAAM,kBAAkB,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,cAAc,CAAC,CAAA;QACrF,IAAI,gCAAgC,GAAG,EAAE,CAAA;QACzC,IAAI,kCAAkC,GAAG,EAAE,CAAA;QAC3C,IAAI,kBAAkB,KAAK,SAAS,EAAE,CAAC;YACnC,IAAI,kBAAkB,EAAE,CAAC;gBACrB,qBAAqB,CAAC,YAAY,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;gBACpD,IAAI,OAAO,CAAC,cAAc,KAAK,qCAAc,CAAC,IAAI,IAAI,kBAAkB,CAAC,OAAO,EAAE,CAAC;oBAC/E,kHAAkH;oBAClH,iIAAiI;oBACjI,MAAM,oBAAoB,GAAG,IAAA,mCAAuB,EAAC,kBAAkB,CAAC,OAAO,CAAC,CAAA;oBAChF,IAAI,oBAAoB,EAAE,CAAC;wBACvB,gCAAgC,GAAG,oBAAoB,CAAC,eAAe,CAAA;wBACvE,kCAAkC,GAAG,oBAAoB,CAAC,iBAAiB,CAAA;wBAE3E,qBAAqB,CAAC,mBAAmB,CACrC,OAAO,CAAC,QAAQ,EAChB,gCAAgC,CACnC,CAAA;wBACD,qBAAqB,CAAC,gBAAgB,CAClC,OAAO,CAAC,QAAQ,EAChB,gCAAgC,EAChC,IAAI,CACP,CAAA;wBACD,oBAAoB,CAAC,OAAO,EAAE,kBAAkB,EAAE,gCAAgC,CAAC,CAAA;oBACvF,CAAC;gBACL,CAAC;qBAAM,IAAI,kBAAkB,CAAC,UAAU,EAAE,CAAC;oBACvC,qBAAqB,CAAC,mBAAmB,CAAC,OAAO,CAAC,QAAQ,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAA;oBAC1F,qBAAqB,CAAC,gBAAgB,CAAC,OAAO,CAAC,QAAQ,EAAE,kBAAkB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;oBAE7F,oBAAoB,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAA;gBACrD,CAAC;YACL,CAAC;QACL,CAAC;QAED,mCAAmC;QACnC,IAAI,YAAY,IAAI,CAAC,UAAU,EAAE,CAAC;YAC9B,gDAAgD;YAChD,MAAM,mBAAmB,GAAG,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE;gBAChE,MAAM,MAAM,GAAG,uBAAuB,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;gBACzD,OAAO,MAAM,IAAI,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAA;YACpD,CAAC,CAAC,CAAA;YAEF,4BAA4B;YAC5B,KAAK,MAAM,kBAAkB,IAAI,mBAAmB,EAAE,CAAC;gBACnD,IAAI,kBAAkB,CAAC,OAAO,EAAE,CAAC;oBAC7B,mBAAmB,CAAC,kBAAkB,CAAC;wBACnC,OAAO,EAAE,kBAAkB,CAAC,OAAO;wBACnC,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;wBACrB,WAAW,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG;wBACjC,QAAQ,EAAE,OAAO,CAAC,aAAa;qBAClC,CAAC,CAAA;oBAEF,OAAO,CAAC,KAAK,CACT,6CAA6C,kBAAkB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAChG,CAAA;gBACL,CAAC;YACL,CAAC;QACL,CAAC;QAED,OAAO,CAAC,mBAAmB,CACvB,uBAAuB,EACvB,6BAA6B,EAC7B,uBAAuB,EACvB,eAAe,CAClB,CAAA;QAED,IAAI,6BAA6B;YAAE,IAAA,yCAA6B,EAAC,SAAS,EAAE,OAAO,CAAC,CAAA;QAEpF,qDAAqD;QACrD,sEAAsE;QACtE,MAAM,qBAAqB,GACvB,OAAO,CAAC,cAAc,KAAK,qCAAc,CAAC,IAAI,IAAI,UAAU,IAAI,OAAO,CAAC,eAAe,CAAA;QAE3F,IAAI,CAAC,qBAAqB,EAAE,CAAC;YACzB,wBAAwB,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;QAClD,CAAC;QACD,MAAM,YAAY,GAAG,YAAY,CAAC,CAAC,CAAC,wBAAwB,CAAC,wBAAwB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACrG,MAAM,IAAA,4CAAgC,EAClC,SAAS,EACT,gBAAgB,EAChB,OAAO,EACP,6BAA6B,EAC7B,gCAAgC,CAAC,MAAM,EACvC,kCAAkC,CAAC,MAAM,EACzC,gBAAgB,EAChB,kBAAkB,EAClB,YAAY,CACf,CAAA;IACL,CAAC,CAAA;IAED,MAAM,mBAAmB,GAAG,CAAC,aAAqC,EAAE,EAAE;QAClE,OAAO,CAAC,KAAK,CAAC,mDAAmD,CAAC,CAAA;QAElE,MAAM,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,0BAA0B,EAAE,GAAG,aAAa,CAAA;QAEjG,qBAAqB,CAAC,gBAAgB,GAAG,gBAAgB,CAAA;QACzD,IAAI,0BAA0B,EAAE,CAAC;YAC7B,sBAAsB,GAAG,+CAAsB,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAA;QACjF,CAAC;QACD,IAAI,sBAAsB,EAAE,CAAC;YACzB,sBAAsB,CAAC,gBAAgB,GAAG,gBAAgB,CAAA;QAC9D,CAAC;QACD,OAAO,CAAC,KAAK,CAAC,qDAAqD,gBAAgB,EAAE,CAAC,CAAA;QACtF;;;UAGE;QACF,kDAAkD;QAClD,gGAAgG;QAChG,gBAAgB,CAAC,sBAAsB,CAAC,yBAAyB,CAAC,CAAA;QAClE,OAAO,CAAC,KAAK,CAAC,gDAAgD,yBAAyB,EAAE,CAAC,CAAA;IAC9F,CAAC,CAAA;IAED,MAAM,oBAAoB,GAAG,KAAK,IAAI,EAAE;QACpC,qBAAqB,GAAG,cAAc,EAAE,CAAA;QAExC,MAAM,YAAY,GAAG,IAAA,eAAO,EACxB,GAAG,CAAC,yBAAyB,EAAE,EAC/B,IAAI,0CAAiC,CACjC,qEAAqE,CACxE,CACJ,CAAA;QAED,OAAO,CAAC,GAAG,CAAC,iCAAiC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,CAAC,CAAA;QAC5E,YAAY;YACR,YAAY,EAAE,qBAAqB,EAAE,GAAG,EAAE,qBAAqB,EAAE,YAAY;gBACzE,EAAE,8BAA8B,EAAE,iBAAiB,IAAI,KAAK,CAAA;QAEpE,gBAAgB,GAAG,IAAI,mCAAgB,CAAC,qBAAqB,EAAE,mBAAmB,EAAE,SAAS,EAAE,OAAO,CAAC,CAAA;QACvG,gBAAgB,CAAC,iBAAiB,CAAC,IAAA,sCAAqB,EAAC,YAAY,EAAE,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAA;QAEnG,qBAAqB,GAAG,IAAI,sCAAqB,CAAC,gBAAgB,CAAC,CAAA;QACnE,eAAe,GAAG,IAAI,iCAAe,CACjC,SAAS,EACT,OAAO,EACP,KAAK,EAAE,KAAoC,EAAE,UAAU,EAAE,gCAAgC,EAAE,EAAE;YACzF,MAAM,gBAAgB,CAAC,yBAAyB,CAC5C;gBACI,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,UAAU,EAAE,KAAK,CAAC,UAAU;gBAC5B,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;gBACxC,SAAS,EAAE,IAAI,IAAI,EAAE;gBACrB,sBAAsB,EAAE,KAAK,CAAC,cAAc,CAAC,MAAM;gBACnD,sBAAsB,EAAE,UAAU;gBAClC,gCAAgC,EAAE,gCAAgC;aACrE,EACD;gBACI,cAAc,EAAE,KAAK,CAAC,cAAc,IAAI,MAAM;gBAC9C,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,UAAU;gBAC5C,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;aAC/C,CACJ,CAAA;QACL,CAAC,CACJ,CAAA;QAED,MAAM,sBAAsB,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,KAAK,MAAM,CAAA;QACvE,OAAO,CAAC,GAAG,CACP,gHAAgH,sBAAsB,EAAE,CAC3I,CAAA;QAED,MAAM,qBAAqB,CAAC,iCAAiC,CAAC,mBAAmB,CAAC,CAAA;QAElF,qBAAqB,GAAG,IAAI,6CAAqB,CAC7C,OAAO,EACP,YAAY,EACZ,SAAS,EACT,qBAAqB,EACrB,kBAAkB,EAClB,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,uBAAuB,EACvB,SAAS,EACT,gBAAgB,EAChB,mBAAmB,CACtB,CAAA;IACL,CAAC,CAAA;IAED,MAAM,gBAAgB,GAAG,KAAK,EAC1B,KAA2C,EAC3C,KAAwB,EACmB,EAAE;QAC7C,OAAO,MAAM,qBAAqB,CAAC,gBAAgB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;IACrE,CAAC,CAAA;IAED,GAAG,CAAC,UAAU,CAAC,gCAAgC,CAAC,yBAAyB,CAAC,CAAA;IAC1E,GAAG,CAAC,UAAU,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,CAAA;IACjD,GAAG,CAAC,UAAU,CAAC,mCAAmC,CAAC,0CAA0C,CAAC,CAAA;IAC9F,GAAG,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAA;IAEvC,GAAG,CAAC,uBAAuB,CAAC,KAAK,EAAC,CAAC,EAAC,EAAE;QAClC,MAAM,YAAY,GAAG,MAAM,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAA;QACxE,MAAM,UAAU,GAAG,IAAA,0CAAsB,EAAC,YAAY,CAAC,CAAA;QAEvD,IAAI,CAAC,YAAY,IAAI,CAAC,UAAU,EAAE,CAAC;YAC/B,OAAM;QACV,CAAC;QAED,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YAC9B,qBAAqB,CAAC,gBAAgB,CAAC,UAAU,EAAE,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;YAEtE,MAAM,EAAE,0BAA0B,EAAE,GAAG,qBAAqB,CAAC,gBAAgB,EAAE,CAAA;YAC/E,IAAI,CAAC,0BAA0B,EAAE,CAAC;gBAC9B,OAAM;YACV,CAAC;YACD,+DAA+D;YAC/D,MAAM,cAAc,GAAG,wBAAwB,CAAC,iBAAiB,EAAE,CAAA;YACnE,IACI,CAAC,cAAc,EAAE,WAAW,CAAC,IAAI,CAC7B,UAAU,CAAC,EAAE,CAAC,UAAU,EAAE,UAAU,IAAI,UAAU,CAAC,UAAU,KAAK,MAAM,CAAC,IAAI,CAChF,EACH,CAAC;gBACC,sBAAsB,EAAE,sBAAsB,CAAC,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;YAC3E,CAAC;QACL,CAAC,CAAC,CAAA;QAEF,sDAAsD;QACtD,IAAI,wBAAwB,EAAE,CAAC;YAC3B,6BAA6B,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,wBAAwB,CAAA;QACnF,CAAC;QACD,wBAAwB,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAA;QAE/C,uBAAuB,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAA;QAC5C,qBAAqB,CAAC,eAAe,EAAE,CAAA;QAEvC,mDAAmD;QACnD,IAAI,YAAY,IAAI,iBAAiB,EAAE,CAAC;YACpC,OAAO,CAAC,GAAG,CACP,+DAA+D,CAAC,CAAC,YAAY,CAAC,GAAG,cAAc,YAAY,CAAC,OAAO,EAAE,CACxH,CAAA;YACD,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC,cAAc,CAAC,MAAM,UAAU,CAAC,CAAA;YAE1E,MAAM,iBAAiB,CAAC,oBAAoB,CAAC;gBACzC,GAAG,EAAE,CAAC,CAAC,YAAY,CAAC,GAAG;gBACvB,UAAU,EAAE,YAAY,CAAC,UAAU;gBACnC,OAAO,EAAE,YAAY,CAAC,OAAO;gBAC7B,IAAI,EAAE,YAAY,CAAC,OAAO,EAAE;aAC/B,CAAC,CAAA;QACN,CAAC;IACL,CAAC,CAAC,CAAA;IAEF,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE;QAC1B,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC,CAAA;QAErD,gDAAgD;QAChD,IAAI,iBAAiB,EAAE,CAAC;YACpB,OAAO,CAAC,GAAG,CAAC,2DAA2D,CAAC,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC,CAAA;YAC5F,iBAAiB,CAAC,kBAAkB,CAAC;gBACjC,GAAG,EAAE,CAAC,CAAC,YAAY,CAAC,GAAG;gBACvB,UAAU,EAAE,CAAC,CAAC,YAAY,CAAC,UAAU;gBACrC,OAAO,EAAE,CAAC,CAAC,YAAY,CAAC,OAAO;gBAC/B,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,IAAI;aAC5B,CAAC,CAAA;QACN,CAAC;IACL,CAAC,CAAC,CAAA;IAEF,GAAG,CAAC,sBAAsB,CAAC,CAAC,CAAC,EAAE;QAC3B,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC,CAAA;QAErD,gDAAgD;QAChD,IAAI,iBAAiB,EAAE,CAAC;YACpB,OAAO,CAAC,GAAG,CAAC,4DAA4D,CAAC,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC,CAAA;YAC7F,iBAAiB,CAAC,mBAAmB,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAA;QAC7D,CAAC;QAED,IAAI,aAAa,EAAE,CAAC;YAChB,aAAa,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAA;QAClD,CAAC;IACL,CAAC,CAAC,CAAA;IAEF,OAAO,CAAC,GAAG,CAAC,wDAAwD,CAAC,CAAA;IAErE,OAAO,KAAK,IAAI,EAAE;QACd,0DAA0D;QAC1D,IAAI,qBAAqB;YAAE,qBAAqB,CAAC,OAAO,EAAE,CAAA;QAC1D,IAAI,sBAAsB;YAAE,sBAAsB,EAAE,OAAO,EAAE,CAAA;QAC7D,IAAI,eAAe;YAAE,MAAM,eAAe,CAAC,QAAQ,EAAE,CAAA;QACrD,IAAI,iBAAiB;YAAE,iBAAiB,CAAC,OAAO,EAAE,CAAA;QAClD,IAAI,aAAa;YAAE,aAAa,CAAC,OAAO,EAAE,CAAA;QAC1C,IAAI,mBAAmB;YAAE,mBAAmB,CAAC,OAAO,EAAE,CAAA;QAEtD,OAAO,CAAC,GAAG,CAAC,sDAAsD,CAAC,CAAA;IACvE,CAAC,CAAA;AACL,CAAC,CAAA;AApyBQ,QAAA,0BAA0B,8BAoyBlC;AAEQ,QAAA,sBAAsB,GAAG,IAAA,kCAA0B,EAAC,0DAA+B,CAAC,CAAA;AACpF,QAAA,wBAAwB,GAAG,IAAA,kCAA0B,EAAC,8DAAiC,CAAC,CAAA"}
1
+ {"version":3,"file":"codeWhispererServer.js","sourceRoot":"","sources":["../../../src/language-server/inline-completion/codeWhispererServer.ts"],"names":[],"mappings":"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"}
@@ -6,4 +6,4 @@ export declare const EMPTY_RESULT: {
6
6
  items: never[];
7
7
  };
8
8
  export declare const EDIT_DEBOUNCE_INTERVAL_MS = 500;
9
- export declare const EDIT_STALE_RETRY_COUNT = 3;
9
+ export declare const ABAP_EXTENSIONS: Set<string>;
@@ -1,10 +1,34 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.EDIT_STALE_RETRY_COUNT = exports.EDIT_DEBOUNCE_INTERVAL_MS = exports.EMPTY_RESULT = exports.CONTEXT_CHARACTERS_LIMIT = exports.FILENAME_CHARS_LIMIT = exports.FILE_URI_CHARS_LIMIT = void 0;
3
+ exports.ABAP_EXTENSIONS = exports.EDIT_DEBOUNCE_INTERVAL_MS = exports.EMPTY_RESULT = exports.CONTEXT_CHARACTERS_LIMIT = exports.FILENAME_CHARS_LIMIT = exports.FILE_URI_CHARS_LIMIT = void 0;
4
4
  exports.FILE_URI_CHARS_LIMIT = 1024;
5
5
  exports.FILENAME_CHARS_LIMIT = 1024;
6
6
  exports.CONTEXT_CHARACTERS_LIMIT = 10240;
7
7
  exports.EMPTY_RESULT = { sessionId: '', items: [] };
8
8
  exports.EDIT_DEBOUNCE_INTERVAL_MS = 500;
9
- exports.EDIT_STALE_RETRY_COUNT = 3;
9
+ // ABAP ADT extensions commonly used with Eclipse
10
+ exports.ABAP_EXTENSIONS = new Set([
11
+ 'asprog',
12
+ 'aclass',
13
+ 'asinc',
14
+ 'aint',
15
+ 'assrvds',
16
+ 'asbdef',
17
+ 'asddls',
18
+ 'astablds',
19
+ 'astabldt',
20
+ 'amdp',
21
+ 'apack',
22
+ 'asrv',
23
+ 'aobj',
24
+ 'aexit',
25
+ 'abdef',
26
+ 'acinc',
27
+ 'asfugr',
28
+ 'apfugr',
29
+ 'asfunc',
30
+ 'asfinc',
31
+ 'apfunc',
32
+ 'apfinc',
33
+ ]);
10
34
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/language-server/inline-completion/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,oBAAoB,GAAG,IAAI,CAAA;AAC3B,QAAA,oBAAoB,GAAG,IAAI,CAAA;AAC3B,QAAA,wBAAwB,GAAG,KAAK,CAAA;AAChC,QAAA,YAAY,GAAG,EAAE,SAAS,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAA;AAC3C,QAAA,yBAAyB,GAAG,GAAG,CAAA;AAC/B,QAAA,sBAAsB,GAAG,CAAC,CAAA"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/language-server/inline-completion/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,oBAAoB,GAAG,IAAI,CAAA;AAC3B,QAAA,oBAAoB,GAAG,IAAI,CAAA;AAC3B,QAAA,wBAAwB,GAAG,KAAK,CAAA;AAChC,QAAA,YAAY,GAAG,EAAE,SAAS,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAA;AAC3C,QAAA,yBAAyB,GAAG,GAAG,CAAA;AAC5C,iDAAiD;AACpC,QAAA,eAAe,GAAG,IAAI,GAAG,CAAC;IACnC,QAAQ;IACR,QAAQ;IACR,OAAO;IACP,MAAM;IACN,SAAS;IACT,QAAQ;IACR,QAAQ;IACR,UAAU;IACV,UAAU;IACV,MAAM;IACN,OAAO;IACP,MAAM;IACN,MAAM;IACN,OAAO;IACP,OAAO;IACP,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;CACX,CAAC,CAAA"}
@@ -44,7 +44,22 @@ export declare function generateDiffContexts(filePath: string, currentContent: s
44
44
  * @returns The modified code after applying the diff
45
45
  */
46
46
  export declare function applyUnifiedDiff(docText: string, unifiedDiff: string): string;
47
+ export declare function getAddedAndDeletedLines(unifiedDiff: string): {
48
+ addedLines: string[];
49
+ deletedLines: string[];
50
+ };
47
51
  export declare function getAddedAndDeletedChars(unifiedDiff: string): {
48
52
  addedCharacters: string;
49
53
  deletedCharacters: string;
50
54
  };
55
+ /**
56
+ * Calculate character differences between added and deleted text blocks using LCS
57
+ */
58
+ export interface CharDiffResult {
59
+ charactersAdded: number;
60
+ charactersRemoved: number;
61
+ }
62
+ /**
63
+ * Calculate character differences between added and deleted blocks
64
+ */
65
+ export declare function getCharacterDifferences(addedLines: string[], deletedLines: string[]): CharDiffResult;
@@ -7,7 +7,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
7
7
  exports.generateUnifiedDiffWithTimestamps = generateUnifiedDiffWithTimestamps;
8
8
  exports.generateDiffContexts = generateDiffContexts;
9
9
  exports.applyUnifiedDiff = applyUnifiedDiff;
10
+ exports.getAddedAndDeletedLines = getAddedAndDeletedLines;
10
11
  exports.getAddedAndDeletedChars = getAddedAndDeletedChars;
12
+ exports.getCharacterDifferences = getCharacterDifferences;
11
13
  const diff = require("diff");
12
14
  const supplementalContextUtil_1 = require("../../shared/supplementalContextUtil/supplementalContextUtil");
13
15
  /**
@@ -159,6 +161,17 @@ function applyUnifiedDiff(docText, unifiedDiff) {
159
161
  return docText; // Return original text if all methods fail
160
162
  }
161
163
  }
164
+ function getAddedAndDeletedLines(unifiedDiff) {
165
+ const lines = unifiedDiff.split('\n');
166
+ const addedLines = lines.filter(line => line.startsWith('+') && !line.startsWith('+++')).map(line => line.slice(1));
167
+ const deletedLines = lines
168
+ .filter(line => line.startsWith('-') && !line.startsWith('---'))
169
+ .map(line => line.slice(1));
170
+ return {
171
+ addedLines,
172
+ deletedLines,
173
+ };
174
+ }
162
175
  // src https://github.com/aws/aws-toolkit-vscode/blob/3921457b0a2094b831beea0d66cc2cbd2a833890/packages/amazonq/src/app/inline/EditRendering/diffUtils.ts#L147
163
176
  function getAddedAndDeletedChars(unifiedDiff) {
164
177
  let addedCharacters = '';
@@ -199,4 +212,44 @@ function getAddedAndDeletedChars(unifiedDiff) {
199
212
  deletedCharacters,
200
213
  };
201
214
  }
215
+ /**
216
+ * Find longest common subsequence length between two strings
217
+ */
218
+ function lcsLength(str1, str2) {
219
+ const m = str1.length;
220
+ const n = str2.length;
221
+ const dp = Array(m + 1)
222
+ .fill(null)
223
+ .map(() => Array(n + 1).fill(0));
224
+ for (let i = 1; i <= m; i++) {
225
+ for (let j = 1; j <= n; j++) {
226
+ if (str1[i - 1] === str2[j - 1]) {
227
+ dp[i][j] = dp[i - 1][j - 1] + 1;
228
+ }
229
+ else {
230
+ dp[i][j] = Math.max(dp[i - 1][j], dp[i][j - 1]);
231
+ }
232
+ }
233
+ }
234
+ return dp;
235
+ }
236
+ /**
237
+ * Calculate character differences between added and deleted blocks
238
+ */
239
+ function getCharacterDifferences(addedLines, deletedLines) {
240
+ const addedText = addedLines.join('\n');
241
+ const deletedText = deletedLines.join('\n');
242
+ if (addedText.length === 0) {
243
+ return { charactersAdded: 0, charactersRemoved: deletedText.length };
244
+ }
245
+ if (deletedText.length === 0) {
246
+ return { charactersAdded: addedText.length, charactersRemoved: 0 };
247
+ }
248
+ const lcsTable = lcsLength(deletedText, addedText);
249
+ const lcsLen = lcsTable[deletedText.length][addedText.length];
250
+ return {
251
+ charactersAdded: addedText.length - lcsLen,
252
+ charactersRemoved: deletedText.length - lcsLen,
253
+ };
254
+ }
202
255
  //# sourceMappingURL=diffUtils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"diffUtils.js","sourceRoot":"","sources":["../../../src/language-server/inline-completion/diffUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"diffUtils.js","sourceRoot":"","sources":["../../../src/language-server/inline-completion/diffUtils.ts"],"names":[],"mappings":"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"}