@aws/lsp-codewhisperer 0.0.34 → 0.0.36

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 (103) hide show
  1. package/CHANGELOG.md +66 -0
  2. package/out/client/token/bearer-token-service.json +91 -225
  3. package/out/language-server/agenticChat/agenticChatController.js +82 -29
  4. package/out/language-server/agenticChat/agenticChatController.js.map +1 -1
  5. package/out/language-server/agenticChat/agenticChatResultStream.js +3 -0
  6. package/out/language-server/agenticChat/agenticChatResultStream.js.map +1 -1
  7. package/out/language-server/agenticChat/constants.d.ts +3 -0
  8. package/out/language-server/agenticChat/constants.js +4 -1
  9. package/out/language-server/agenticChat/constants.js.map +1 -1
  10. package/out/language-server/agenticChat/context/agenticChatTriggerContext.d.ts +3 -8
  11. package/out/language-server/agenticChat/context/agenticChatTriggerContext.js +9 -2
  12. package/out/language-server/agenticChat/context/agenticChatTriggerContext.js.map +1 -1
  13. package/out/language-server/agenticChat/context/contextUtils.d.ts +20 -0
  14. package/out/language-server/agenticChat/context/contextUtils.js +107 -0
  15. package/out/language-server/agenticChat/context/contextUtils.js.map +1 -1
  16. package/out/language-server/agenticChat/errors.d.ts +2 -1
  17. package/out/language-server/agenticChat/errors.js +4 -1
  18. package/out/language-server/agenticChat/errors.js.map +1 -1
  19. package/out/language-server/agenticChat/tabBarController.js +1 -1
  20. package/out/language-server/agenticChat/tabBarController.js.map +1 -1
  21. package/out/language-server/agenticChat/tools/chatDb/chatDb.js +3 -2
  22. package/out/language-server/agenticChat/tools/chatDb/chatDb.js.map +1 -1
  23. package/out/language-server/agenticChat/tools/fileSearch.js +1 -1
  24. package/out/language-server/agenticChat/tools/fileSearch.js.map +1 -1
  25. package/out/language-server/agenticChat/tools/listDirectory.js +5 -5
  26. package/out/language-server/agenticChat/tools/listDirectory.js.map +1 -1
  27. package/out/language-server/chat/chatController.js +1 -1
  28. package/out/language-server/chat/chatController.js.map +1 -1
  29. package/out/language-server/chat/chatSessionService.d.ts +5 -0
  30. package/out/language-server/chat/chatSessionService.js +4 -1
  31. package/out/language-server/chat/chatSessionService.js.map +1 -1
  32. package/out/language-server/chat/constants.d.ts +3 -1
  33. package/out/language-server/chat/constants.js +15 -2
  34. package/out/language-server/chat/constants.js.map +1 -1
  35. package/out/language-server/chat/contexts/triggerContext.d.ts +3 -1
  36. package/out/language-server/chat/contexts/triggerContext.js +14 -1
  37. package/out/language-server/chat/contexts/triggerContext.js.map +1 -1
  38. package/out/language-server/configuration/qConfigurationServer.d.ts +8 -1
  39. package/out/language-server/configuration/qConfigurationServer.js +107 -8
  40. package/out/language-server/configuration/qConfigurationServer.js.map +1 -1
  41. package/out/language-server/inline-completion/codeWhispererServer.js +15 -2
  42. package/out/language-server/inline-completion/codeWhispererServer.js.map +1 -1
  43. package/out/language-server/netTransform/resources/SupportedProjects.js +1 -7
  44. package/out/language-server/netTransform/resources/SupportedProjects.js.map +1 -1
  45. package/out/language-server/workspaceContext/artifactManager.d.ts +44 -0
  46. package/out/language-server/workspaceContext/artifactManager.js +496 -0
  47. package/out/language-server/workspaceContext/artifactManager.js.map +1 -0
  48. package/out/language-server/workspaceContext/client.d.ts +23 -0
  49. package/out/language-server/workspaceContext/client.js +172 -0
  50. package/out/language-server/workspaceContext/client.js.map +1 -0
  51. package/out/language-server/workspaceContext/dependency/dependencyDiscoverer.d.ts +15 -0
  52. package/out/language-server/workspaceContext/dependency/dependencyDiscoverer.js +129 -0
  53. package/out/language-server/workspaceContext/dependency/dependencyDiscoverer.js.map +1 -0
  54. package/out/language-server/workspaceContext/dependency/dependencyHandler/JSTSDependencyHandler.d.ts +18 -0
  55. package/out/language-server/workspaceContext/dependency/dependencyHandler/JSTSDependencyHandler.js +204 -0
  56. package/out/language-server/workspaceContext/dependency/dependencyHandler/JSTSDependencyHandler.js.map +1 -0
  57. package/out/language-server/workspaceContext/dependency/dependencyHandler/JavaDependencyHandler.d.ts +16 -0
  58. package/out/language-server/workspaceContext/dependency/dependencyHandler/JavaDependencyHandler.js +160 -0
  59. package/out/language-server/workspaceContext/dependency/dependencyHandler/JavaDependencyHandler.js.map +1 -0
  60. package/out/language-server/workspaceContext/dependency/dependencyHandler/LanguageDependencyHandler.d.ts +78 -0
  61. package/out/language-server/workspaceContext/dependency/dependencyHandler/LanguageDependencyHandler.js +255 -0
  62. package/out/language-server/workspaceContext/dependency/dependencyHandler/LanguageDependencyHandler.js.map +1 -0
  63. package/out/language-server/workspaceContext/dependency/dependencyHandler/LanguageDependencyHandlerFactory.d.ts +7 -0
  64. package/out/language-server/workspaceContext/dependency/dependencyHandler/LanguageDependencyHandlerFactory.js +23 -0
  65. package/out/language-server/workspaceContext/dependency/dependencyHandler/LanguageDependencyHandlerFactory.js.map +1 -0
  66. package/out/language-server/workspaceContext/dependency/dependencyHandler/PythonDependencyHandler.d.ts +46 -0
  67. package/out/language-server/workspaceContext/dependency/dependencyHandler/PythonDependencyHandler.js +233 -0
  68. package/out/language-server/workspaceContext/dependency/dependencyHandler/PythonDependencyHandler.js.map +1 -0
  69. package/out/language-server/workspaceContext/javaManager.d.ts +92 -0
  70. package/out/language-server/workspaceContext/javaManager.js +710 -0
  71. package/out/language-server/workspaceContext/javaManager.js.map +1 -0
  72. package/out/language-server/workspaceContext/util.d.ts +10 -0
  73. package/out/language-server/workspaceContext/util.js +72 -0
  74. package/out/language-server/workspaceContext/util.js.map +1 -0
  75. package/out/language-server/workspaceContext/workspaceContextServer.d.ts +2 -0
  76. package/out/language-server/workspaceContext/workspaceContextServer.js +414 -0
  77. package/out/language-server/workspaceContext/workspaceContextServer.js.map +1 -0
  78. package/out/language-server/workspaceContext/workspaceFolderManager.d.ts +113 -0
  79. package/out/language-server/workspaceContext/workspaceFolderManager.js +827 -0
  80. package/out/language-server/workspaceContext/workspaceFolderManager.js.map +1 -0
  81. package/out/shared/amazonQServiceManager/qDeveloperProfiles.js.map +1 -1
  82. package/out/shared/codeWhispererService.d.ts +13 -0
  83. package/out/shared/codeWhispererService.js +24 -0
  84. package/out/shared/codeWhispererService.js.map +1 -1
  85. package/out/shared/languageDetection.d.ts +27 -0
  86. package/out/shared/languageDetection.js +44 -1
  87. package/out/shared/languageDetection.js.map +1 -1
  88. package/out/shared/localProjectContextController.d.ts +1 -0
  89. package/out/shared/localProjectContextController.js +7 -9
  90. package/out/shared/localProjectContextController.js.map +1 -1
  91. package/out/shared/proxy-server.d.ts +1 -0
  92. package/out/shared/proxy-server.js +3 -1
  93. package/out/shared/proxy-server.js.map +1 -1
  94. package/out/shared/supplementalContextUtil/crossFileContextUtil.d.ts +4 -3
  95. package/out/shared/supplementalContextUtil/crossFileContextUtil.js +16 -5
  96. package/out/shared/supplementalContextUtil/crossFileContextUtil.js.map +1 -1
  97. package/out/shared/supplementalContextUtil/supplementalContextUtil.d.ts +2 -1
  98. package/out/shared/supplementalContextUtil/supplementalContextUtil.js +2 -2
  99. package/out/shared/supplementalContextUtil/supplementalContextUtil.js.map +1 -1
  100. package/out/shared/utils.d.ts +1 -0
  101. package/out/shared/utils.js +15 -1
  102. package/out/shared/utils.js.map +1 -1
  103. package/package.json +9 -3
@@ -0,0 +1,113 @@
1
+ import { WebSocketClient } from './client';
2
+ import { WorkspaceFolder } from '@aws/language-server-runtimes/protocol';
3
+ import { WorkspaceStatus } from '../../client/token/codewhispererbearertokenclient';
4
+ import { CredentialsProvider, Logging } from '@aws/language-server-runtimes/server-interface';
5
+ import { ArtifactManager, FileMetadata } from './artifactManager';
6
+ import { DependencyDiscoverer } from './dependency/dependencyDiscoverer';
7
+ import { AmazonQTokenServiceManager } from '../../shared/amazonQServiceManager/AmazonQTokenServiceManager';
8
+ interface WorkspaceState {
9
+ remoteWorkspaceState: WorkspaceStatus;
10
+ webSocketClient?: WebSocketClient;
11
+ workspaceId?: string;
12
+ requiresS3Upload?: boolean;
13
+ messageQueue?: any[];
14
+ }
15
+ type WorkspaceRoot = string;
16
+ export declare class WorkspaceFolderManager {
17
+ private serviceManager;
18
+ private logging;
19
+ private artifactManager;
20
+ private dependencyDiscoverer;
21
+ private workspaceMap;
22
+ private static instance;
23
+ private workspaceFolders;
24
+ private credentialsProvider;
25
+ private readonly INITIAL_CHECK_INTERVAL;
26
+ private readonly INITIAL_TIMEOUT;
27
+ private readonly CONTINUOUS_MONITOR_INTERVAL;
28
+ private monitorIntervals;
29
+ private isOptedOut;
30
+ static createInstance(serviceManager: AmazonQTokenServiceManager, logging: Logging, artifactManager: ArtifactManager, dependencyDiscoverer: DependencyDiscoverer, workspaceFolders: WorkspaceFolder[], credentialsProvider: CredentialsProvider): WorkspaceFolderManager;
31
+ static getInstance(): WorkspaceFolderManager | undefined;
32
+ private constructor();
33
+ /**
34
+ * The function is used to track the latest state of workspace folders.
35
+ * This state is updated irrespective of login/logout/optIn/optOut
36
+ * @param workspaceFolders
37
+ */
38
+ updateWorkspaceFolders(workspaceFolders: WorkspaceFolder[]): void;
39
+ getWorkspaces(): Map<WorkspaceRoot, WorkspaceState>;
40
+ getWorkspaceDetailsWithId(fileUri: string, workspaceFolders?: WorkspaceFolder[]): {
41
+ workspaceDetails: WorkspaceState;
42
+ workspaceRoot: WorkspaceFolder;
43
+ } | null;
44
+ getWorkspaceFolder(fileUri: string): WorkspaceFolder | undefined;
45
+ getWorkspaceId(workspaceFolder?: WorkspaceFolder): string | undefined;
46
+ getOptOutStatus(): boolean;
47
+ processNewWorkspaceFolders(folders: WorkspaceFolder[]): Promise<void>;
48
+ private snapshotWorkspace;
49
+ uploadToS3(fileMetadata: FileMetadata): Promise<string | undefined>;
50
+ clearAllWorkspaceResources(): Promise<void>;
51
+ /**
52
+ * The function sends a removed workspace folders notification to remote LSP, removes workspace entry
53
+ * from map and close the websocket connection
54
+ * @param workspaceFolder
55
+ */
56
+ processWorkspaceFoldersDeletion(workspaceFolders: WorkspaceFolder[]): Promise<void>;
57
+ processRemoteWorkspaceRefresh(workspaceFolders: WorkspaceFolder[]): void;
58
+ private updateWorkspaceEntry;
59
+ private removeWorkspaceEntry;
60
+ private handleDependencyChanges;
61
+ private notifyDependencyChange;
62
+ private createNewWorkspace;
63
+ private establishConnection;
64
+ private handleNewWorkspace;
65
+ private waitForInitialConnection;
66
+ private startContinuousMonitor;
67
+ private startOptOutMonitor;
68
+ /**
69
+ * Handles the workspace creation flow when a remote workspace is in CREATED state.
70
+ * Attempts to create the workspace and schedules a quick connection check on success.
71
+ * If the initial creation fails with a retryable error, attempts one retry before
72
+ * falling back to the regular polling cycle.
73
+ *
74
+ * The flow is:
75
+ * 1. Attempt initial workspace creation
76
+ * 2. On success: Schedule a quick check to establish connection
77
+ * 3. On retryable error: Attempt one immediate retry
78
+ * 4. On retry success: Schedule a quick check
79
+ * 5. On retry failure: Wait for next regular polling cycle
80
+ *
81
+ * @param workspace - The workspace to re-create
82
+ */
83
+ private handleWorkspaceCreatedState;
84
+ /**
85
+ * Schedules a one-time check after workspace creation to establish connection as soon as possible.
86
+ * This avoids waiting for the regular 5-minute polling interval when we know the workspace
87
+ * should be ready soon. Default check delay is 40 seconds after successful workspace creation.
88
+ *
89
+ * @param workspace - The workspace to check
90
+ * @param delayMs - Optional delay in milliseconds before the check (defaults to 40 seconds)
91
+ */
92
+ private scheduleQuickCheck;
93
+ private stopMonitoring;
94
+ private startWorkspaceStatusMonitor;
95
+ private processMessagesInQueue;
96
+ /**
97
+ * All the filesMetadata elements passed to the function belongs to the same workspace folder.
98
+ * @param filesMetadata
99
+ * @private
100
+ */
101
+ private uploadS3AndQueueEvents;
102
+ private uploadWithTimeout;
103
+ private deleteWorkspace;
104
+ /**
105
+ * The function fetches remote workspace metadata. There'll always be single entry for workspace
106
+ * metadata in the response, so intentionally picking the first index element.
107
+ * @param workspaceRoot
108
+ * @private
109
+ */
110
+ private listWorkspaceMetadata;
111
+ private createWorkspace;
112
+ }
113
+ export {};