@aws/lsp-codewhisperer 0.0.29 → 0.0.31

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 (232) hide show
  1. package/CHANGELOG.md +42 -0
  2. package/CONTRIBUTING.md +28 -0
  3. package/README.md +1 -1
  4. package/out/client/streamingClient/codewhispererStreamingClient.js +1 -0
  5. package/out/client/streamingClient/codewhispererStreamingClient.js.map +1 -1
  6. package/out/index.d.ts +6 -5
  7. package/out/index.js +7 -5
  8. package/out/index.js.map +1 -1
  9. package/out/language-server/agenticChat/agenticChatController.d.ts +40 -0
  10. package/out/language-server/agenticChat/agenticChatController.js +414 -0
  11. package/out/language-server/agenticChat/agenticChatController.js.map +1 -0
  12. package/out/language-server/agenticChat/qAgenticChatServer.d.ts +6 -0
  13. package/out/language-server/agenticChat/qAgenticChatServer.js +96 -0
  14. package/out/language-server/agenticChat/qAgenticChatServer.js.map +1 -0
  15. package/out/language-server/agenticChat/tools/fsRead.d.ts +38 -0
  16. package/out/language-server/agenticChat/tools/fsRead.js +96 -0
  17. package/out/language-server/agenticChat/tools/fsRead.js.map +1 -0
  18. package/out/language-server/agenticChat/tools/fsWrite.d.ts +73 -0
  19. package/out/language-server/agenticChat/tools/fsWrite.js +128 -0
  20. package/out/language-server/agenticChat/tools/fsWrite.js.map +1 -0
  21. package/out/language-server/agenticChat/tools/toolServer.d.ts +2 -0
  22. package/out/language-server/agenticChat/tools/toolServer.js +14 -0
  23. package/out/language-server/agenticChat/tools/toolServer.js.map +1 -0
  24. package/out/language-server/agenticChat/tools/toolShared.d.ts +7 -0
  25. package/out/language-server/agenticChat/tools/toolShared.js +5 -0
  26. package/out/language-server/agenticChat/tools/toolShared.js.map +1 -0
  27. package/out/language-server/chat/agents/docGeneration/constants.d.ts +59 -0
  28. package/out/language-server/chat/agents/docGeneration/constants.js +147 -0
  29. package/out/language-server/chat/agents/docGeneration/constants.js.map +1 -0
  30. package/out/language-server/chat/agents/docGeneration/errors.d.ts +29 -0
  31. package/out/language-server/chat/agents/docGeneration/errors.js +67 -0
  32. package/out/language-server/chat/agents/docGeneration/errors.js.map +1 -0
  33. package/out/language-server/chat/agents/shared/i18n.d.ts +1 -0
  34. package/out/language-server/chat/agents/shared/i18n.js +7 -0
  35. package/out/language-server/chat/agents/shared/i18n.js.map +1 -0
  36. package/out/language-server/chat/agents/shared/types.d.ts +55 -0
  37. package/out/language-server/chat/agents/shared/types.js +46 -0
  38. package/out/language-server/chat/agents/shared/types.js.map +1 -0
  39. package/out/language-server/chat/chatController.d.ts +9 -6
  40. package/out/language-server/chat/chatController.js +74 -27
  41. package/out/language-server/chat/chatController.js.map +1 -1
  42. package/out/language-server/chat/chatEventParser.d.ts +2 -2
  43. package/out/language-server/chat/chatSessionManagementService.d.ts +1 -1
  44. package/out/language-server/chat/chatSessionService.d.ts +1 -1
  45. package/out/language-server/chat/chatSessionService.js +1 -3
  46. package/out/language-server/chat/chatSessionService.js.map +1 -1
  47. package/out/language-server/chat/contexts/documentContext.d.ts +2 -0
  48. package/out/language-server/chat/contexts/documentContext.js +15 -2
  49. package/out/language-server/chat/contexts/documentContext.js.map +1 -1
  50. package/out/language-server/chat/contexts/triggerContext.d.ts +5 -5
  51. package/out/language-server/chat/contexts/triggerContext.js +3 -3
  52. package/out/language-server/chat/contexts/triggerContext.js.map +1 -1
  53. package/out/language-server/{qChatServer.js → chat/qChatServer.js} +15 -11
  54. package/out/language-server/chat/qChatServer.js.map +1 -0
  55. package/out/language-server/chat/telemetry/chatTelemetryController.d.ts +3 -3
  56. package/out/language-server/chat/telemetry/chatTelemetryController.js +3 -3
  57. package/out/language-server/chat/telemetry/chatTelemetryController.js.map +1 -1
  58. package/out/language-server/chat/telemetry/clientTelemetry.js +1 -1
  59. package/out/language-server/chat/telemetry/clientTelemetry.js.map +1 -1
  60. package/out/language-server/chat/utils.js +1 -1
  61. package/out/language-server/chat/utils.js.map +1 -1
  62. package/out/language-server/configuration/qConfigurationServer.d.ts +2 -2
  63. package/out/language-server/configuration/qConfigurationServer.js +2 -2
  64. package/out/language-server/configuration/qConfigurationServer.js.map +1 -1
  65. package/out/language-server/{auto-trigger → inline-completion/auto-trigger}/autoTrigger.d.ts +1 -1
  66. package/out/language-server/inline-completion/auto-trigger/autoTrigger.js.map +1 -0
  67. package/out/language-server/{telemetry → inline-completion}/codeDiffTracker.js +1 -1
  68. package/out/language-server/inline-completion/codeDiffTracker.js.map +1 -0
  69. package/out/language-server/{telemetry → inline-completion}/codePercentage.d.ts +1 -1
  70. package/out/language-server/inline-completion/codePercentage.js.map +1 -0
  71. package/out/language-server/inline-completion/codeWhispererServer.d.ts +7 -0
  72. package/out/language-server/{codeWhispererServer.js → inline-completion/codeWhispererServer.js} +37 -75
  73. package/out/language-server/inline-completion/codeWhispererServer.js.map +1 -0
  74. package/out/language-server/inline-completion/mergeRightUtils.js.map +1 -0
  75. package/out/language-server/{session → inline-completion/session}/sessionManager.d.ts +3 -3
  76. package/out/language-server/inline-completion/session/sessionManager.js.map +1 -0
  77. package/out/language-server/netTransform/artifactManager.d.ts +7 -7
  78. package/out/language-server/netTransform/artifactManager.js +86 -46
  79. package/out/language-server/netTransform/artifactManager.js.map +1 -1
  80. package/out/language-server/netTransform/metrics.js +1 -1
  81. package/out/language-server/netTransform/metrics.js.map +1 -1
  82. package/out/language-server/netTransform/models.d.ts +12 -0
  83. package/out/language-server/netTransform/models.js.map +1 -1
  84. package/out/language-server/{netTransformServer.d.ts → netTransform/netTransformServer.d.ts} +1 -1
  85. package/out/language-server/{netTransformServer.js → netTransform/netTransformServer.js} +5 -5
  86. package/out/language-server/netTransform/netTransformServer.js.map +1 -0
  87. package/out/language-server/netTransform/tests/mockData.d.ts +2 -21
  88. package/out/language-server/netTransform/tests/mockData.js +16 -13
  89. package/out/language-server/netTransform/tests/mockData.js.map +1 -1
  90. package/out/language-server/netTransform/transformHandler.d.ts +3 -1
  91. package/out/language-server/netTransform/transformHandler.js +49 -15
  92. package/out/language-server/netTransform/transformHandler.js.map +1 -1
  93. package/out/language-server/{codeWhispererSecurityScanServer.js → securityScan/codeWhispererSecurityScanServer.js} +5 -5
  94. package/out/language-server/securityScan/codeWhispererSecurityScanServer.js.map +1 -0
  95. package/out/language-server/securityScan/dependencyGraph/commonUtil.js.map +1 -0
  96. package/out/language-server/securityScan/dependencyGraph/constants.js.map +1 -0
  97. package/out/language-server/securityScan/dependencyGraph/csharpDependencyGraph.js.map +1 -0
  98. package/out/language-server/securityScan/dependencyGraph/dependencyGraph.js.map +1 -0
  99. package/out/language-server/securityScan/dependencyGraph/dependencyGraphFactory.js.map +1 -0
  100. package/out/language-server/securityScan/securityScanHandler.d.ts +1 -1
  101. package/out/language-server/securityScan/securityScanHandler.js +1 -1
  102. package/out/language-server/securityScan/securityScanHandler.js.map +1 -1
  103. package/out/{language-server → shared}/amazonQServiceManager/AmazonQTokenServiceManager.d.ts +6 -3
  104. package/out/{language-server → shared}/amazonQServiceManager/AmazonQTokenServiceManager.js +48 -84
  105. package/out/shared/amazonQServiceManager/AmazonQTokenServiceManager.js.map +1 -0
  106. package/out/shared/amazonQServiceManager/BaseAmazonQServiceManager.d.ts +7 -0
  107. package/out/shared/amazonQServiceManager/BaseAmazonQServiceManager.js.map +1 -0
  108. package/out/shared/amazonQServiceManager/configurationUtils.d.ts +45 -0
  109. package/out/shared/amazonQServiceManager/configurationUtils.js +130 -0
  110. package/out/shared/amazonQServiceManager/configurationUtils.js.map +1 -0
  111. package/out/shared/amazonQServiceManager/errors.js.map +1 -0
  112. package/out/shared/amazonQServiceManager/factories.d.ts +15 -0
  113. package/out/shared/amazonQServiceManager/factories.js +47 -0
  114. package/out/shared/amazonQServiceManager/factories.js.map +1 -0
  115. package/out/{language-server → shared}/amazonQServiceManager/qDeveloperProfiles.d.ts +1 -3
  116. package/out/{language-server → shared}/amazonQServiceManager/qDeveloperProfiles.js +2 -2
  117. package/out/shared/amazonQServiceManager/qDeveloperProfiles.js.map +1 -0
  118. package/out/shared/codeWhispererService.js.map +1 -0
  119. package/out/{language-server → shared}/constants.d.ts +5 -0
  120. package/out/shared/constants.js +16 -0
  121. package/out/shared/constants.js.map +1 -0
  122. package/out/shared/languageDetection.js.map +1 -0
  123. package/out/shared/models/constants.js.map +1 -0
  124. package/out/shared/models/model.js.map +1 -0
  125. package/out/{language-server → shared}/proxy-server.d.ts +1 -0
  126. package/out/shared/proxy-server.js +21 -0
  127. package/out/shared/proxy-server.js.map +1 -0
  128. package/out/shared/streamingClientService.d.ts +10 -0
  129. package/out/shared/streamingClientService.js +42 -0
  130. package/out/shared/streamingClientService.js.map +1 -0
  131. package/out/shared/supplementalContextUtil/codeParsingUtil.js.map +1 -0
  132. package/out/{language-server/utilities → shared}/supplementalContextUtil/crossFileContextUtil.d.ts +1 -1
  133. package/out/{language-server/utilities → shared}/supplementalContextUtil/crossFileContextUtil.js +1 -1
  134. package/out/shared/supplementalContextUtil/crossFileContextUtil.js.map +1 -0
  135. package/out/shared/supplementalContextUtil/rankBm25.js.map +1 -0
  136. package/out/{language-server/utilities → shared}/supplementalContextUtil/supplementalContextUtil.d.ts +1 -1
  137. package/out/shared/supplementalContextUtil/supplementalContextUtil.js.map +1 -0
  138. package/out/shared/telemetry/metric.js.map +1 -0
  139. package/out/{language-server → shared/telemetry}/telemetryService.d.ts +5 -5
  140. package/out/{language-server → shared/telemetry}/telemetryService.js +4 -4
  141. package/out/shared/telemetry/telemetryService.js.map +1 -0
  142. package/out/{language-server → shared}/telemetry/types.d.ts +2 -2
  143. package/out/shared/telemetry/types.js.map +1 -0
  144. package/out/{language-server/utilities → shared}/telemetryUtils.d.ts +1 -1
  145. package/out/shared/telemetryUtils.js.map +1 -0
  146. package/out/shared/testUtils.js.map +1 -0
  147. package/out/shared/utils.js.map +1 -0
  148. package/package.json +4 -4
  149. package/out/constants.d.ts +0 -8
  150. package/out/constants.js +0 -12
  151. package/out/constants.js.map +0 -1
  152. package/out/language-server/amazonQServiceManager/AmazonQTokenServiceManager.js.map +0 -1
  153. package/out/language-server/amazonQServiceManager/BaseAmazonQServiceManager.d.ts +0 -5
  154. package/out/language-server/amazonQServiceManager/BaseAmazonQServiceManager.js.map +0 -1
  155. package/out/language-server/amazonQServiceManager/errors.js.map +0 -1
  156. package/out/language-server/amazonQServiceManager/qDeveloperProfiles.js.map +0 -1
  157. package/out/language-server/auto-trigger/autoTrigger.js.map +0 -1
  158. package/out/language-server/codeWhispererSecurityScanServer.js.map +0 -1
  159. package/out/language-server/codeWhispererServer.d.ts +0 -6
  160. package/out/language-server/codeWhispererServer.js.map +0 -1
  161. package/out/language-server/codeWhispererService.js.map +0 -1
  162. package/out/language-server/constants.js +0 -8
  163. package/out/language-server/constants.js.map +0 -1
  164. package/out/language-server/dependencyGraph/commonUtil.js.map +0 -1
  165. package/out/language-server/dependencyGraph/constants.js.map +0 -1
  166. package/out/language-server/dependencyGraph/csharpDependencyGraph.js.map +0 -1
  167. package/out/language-server/dependencyGraph/dependencyGraph.js.map +0 -1
  168. package/out/language-server/dependencyGraph/dependencyGraphFactory.js.map +0 -1
  169. package/out/language-server/languageDetection.js.map +0 -1
  170. package/out/language-server/mergeRightUtils.js.map +0 -1
  171. package/out/language-server/models/constants.js.map +0 -1
  172. package/out/language-server/models/model.js.map +0 -1
  173. package/out/language-server/netTransformServer.js.map +0 -1
  174. package/out/language-server/proxy-server.js +0 -22
  175. package/out/language-server/proxy-server.js.map +0 -1
  176. package/out/language-server/qChatServer.js.map +0 -1
  177. package/out/language-server/session/sessionManager.js.map +0 -1
  178. package/out/language-server/telemetry/codeDiffTracker.js.map +0 -1
  179. package/out/language-server/telemetry/codePercentage.js.map +0 -1
  180. package/out/language-server/telemetry/metric.js.map +0 -1
  181. package/out/language-server/telemetry/types.js.map +0 -1
  182. package/out/language-server/telemetryService.js.map +0 -1
  183. package/out/language-server/testUtils.js.map +0 -1
  184. package/out/language-server/utilities/supplementalContextUtil/codeParsingUtil.js.map +0 -1
  185. package/out/language-server/utilities/supplementalContextUtil/crossFileContextUtil.js.map +0 -1
  186. package/out/language-server/utilities/supplementalContextUtil/rankBm25.js.map +0 -1
  187. package/out/language-server/utilities/supplementalContextUtil/supplementalContextUtil.js.map +0 -1
  188. package/out/language-server/utilities/telemetryUtils.js.map +0 -1
  189. package/out/language-server/utils.js.map +0 -1
  190. /package/out/language-server/{qChatServer.d.ts → chat/qChatServer.d.ts} +0 -0
  191. /package/out/language-server/{auto-trigger → inline-completion/auto-trigger}/autoTrigger.js +0 -0
  192. /package/out/language-server/{auto-trigger → inline-completion/auto-trigger}/coefficients.json +0 -0
  193. /package/out/language-server/{telemetry → inline-completion}/codeDiffTracker.d.ts +0 -0
  194. /package/out/language-server/{telemetry → inline-completion}/codePercentage.js +0 -0
  195. /package/out/language-server/{mergeRightUtils.d.ts → inline-completion/mergeRightUtils.d.ts} +0 -0
  196. /package/out/language-server/{mergeRightUtils.js → inline-completion/mergeRightUtils.js} +0 -0
  197. /package/out/language-server/{session → inline-completion/session}/sessionManager.js +0 -0
  198. /package/out/language-server/{codeWhispererSecurityScanServer.d.ts → securityScan/codeWhispererSecurityScanServer.d.ts} +0 -0
  199. /package/out/language-server/{dependencyGraph → securityScan/dependencyGraph}/commonUtil.d.ts +0 -0
  200. /package/out/language-server/{dependencyGraph → securityScan/dependencyGraph}/commonUtil.js +0 -0
  201. /package/out/language-server/{dependencyGraph → securityScan/dependencyGraph}/constants.d.ts +0 -0
  202. /package/out/language-server/{dependencyGraph → securityScan/dependencyGraph}/constants.js +0 -0
  203. /package/out/language-server/{dependencyGraph → securityScan/dependencyGraph}/csharpDependencyGraph.d.ts +0 -0
  204. /package/out/language-server/{dependencyGraph → securityScan/dependencyGraph}/csharpDependencyGraph.js +0 -0
  205. /package/out/language-server/{dependencyGraph → securityScan/dependencyGraph}/dependencyGraph.d.ts +0 -0
  206. /package/out/language-server/{dependencyGraph → securityScan/dependencyGraph}/dependencyGraph.js +0 -0
  207. /package/out/language-server/{dependencyGraph → securityScan/dependencyGraph}/dependencyGraphFactory.d.ts +0 -0
  208. /package/out/language-server/{dependencyGraph → securityScan/dependencyGraph}/dependencyGraphFactory.js +0 -0
  209. /package/out/{language-server → shared}/amazonQServiceManager/BaseAmazonQServiceManager.js +0 -0
  210. /package/out/{language-server → shared}/amazonQServiceManager/errors.d.ts +0 -0
  211. /package/out/{language-server → shared}/amazonQServiceManager/errors.js +0 -0
  212. /package/out/{language-server → shared}/codeWhispererService.d.ts +0 -0
  213. /package/out/{language-server → shared}/codeWhispererService.js +0 -0
  214. /package/out/{language-server → shared}/languageDetection.d.ts +0 -0
  215. /package/out/{language-server → shared}/languageDetection.js +0 -0
  216. /package/out/{language-server → shared}/models/constants.d.ts +0 -0
  217. /package/out/{language-server → shared}/models/constants.js +0 -0
  218. /package/out/{language-server → shared}/models/model.d.ts +0 -0
  219. /package/out/{language-server → shared}/models/model.js +0 -0
  220. /package/out/{language-server/utilities → shared}/supplementalContextUtil/codeParsingUtil.d.ts +0 -0
  221. /package/out/{language-server/utilities → shared}/supplementalContextUtil/codeParsingUtil.js +0 -0
  222. /package/out/{language-server/utilities → shared}/supplementalContextUtil/rankBm25.d.ts +0 -0
  223. /package/out/{language-server/utilities → shared}/supplementalContextUtil/rankBm25.js +0 -0
  224. /package/out/{language-server/utilities → shared}/supplementalContextUtil/supplementalContextUtil.js +0 -0
  225. /package/out/{language-server → shared}/telemetry/metric.d.ts +0 -0
  226. /package/out/{language-server → shared}/telemetry/metric.js +0 -0
  227. /package/out/{language-server → shared}/telemetry/types.js +0 -0
  228. /package/out/{language-server/utilities → shared}/telemetryUtils.js +0 -0
  229. /package/out/{language-server → shared}/testUtils.d.ts +0 -0
  230. /package/out/{language-server → shared}/testUtils.js +0 -0
  231. /package/out/{language-server → shared}/utils.d.ts +0 -0
  232. /package/out/{language-server → shared}/utils.js +0 -0
@@ -0,0 +1,147 @@
1
+ "use strict";
2
+ /*!
3
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.findReadmePath = exports.Mode = exports.EditDocumentation = exports.SynchronizeDocumentation = exports.NewSessionFollowUps = exports.CodeChangeFollowUps = exports.FolderSelectorFollowUps = exports.docRejectConfirmation = exports.docGenerationSuccessMessage = exports.docGenerationProgressMessage = exports.DocGenerationStep = exports.featureName = exports.docScheme = exports.docChat = void 0;
8
+ exports.getFileSummaryPercentage = getFileSummaryPercentage;
9
+ const types_1 = require("../shared/types");
10
+ const i18n_1 = require("../shared/i18n");
11
+ // For uniquely identifiying which chat messages should be routed to Doc
12
+ exports.docChat = 'docChat';
13
+ exports.docScheme = 'aws-doc';
14
+ exports.featureName = 'Amazon Q Doc Generation';
15
+ function getFileSummaryPercentage(input) {
16
+ // Split the input string by newline characters
17
+ const lines = input.split('\n');
18
+ // Find the line containing "summarized:"
19
+ const summaryLine = lines.find(line => line.includes('summarized:'));
20
+ // If the line is not found, return null
21
+ if (!summaryLine) {
22
+ return -1;
23
+ }
24
+ // Extract the numbers from the summary line
25
+ const [summarized, total] = summaryLine.split(':')[1].trim().split(' of ').map(Number);
26
+ // Calculate the percentage
27
+ const percentage = (summarized / total) * 100;
28
+ return percentage;
29
+ }
30
+ const checkIcons = {
31
+ wait: '☐',
32
+ current: '☐',
33
+ done: '☑',
34
+ };
35
+ const getIconForStep = (targetStep, currentStep) => {
36
+ return currentStep === targetStep
37
+ ? checkIcons.current
38
+ : currentStep > targetStep
39
+ ? checkIcons.done
40
+ : checkIcons.wait;
41
+ };
42
+ var DocGenerationStep;
43
+ (function (DocGenerationStep) {
44
+ DocGenerationStep[DocGenerationStep["UPLOAD_TO_S3"] = 0] = "UPLOAD_TO_S3";
45
+ DocGenerationStep[DocGenerationStep["SUMMARIZING_FILES"] = 1] = "SUMMARIZING_FILES";
46
+ DocGenerationStep[DocGenerationStep["GENERATING_ARTIFACTS"] = 2] = "GENERATING_ARTIFACTS";
47
+ })(DocGenerationStep || (exports.DocGenerationStep = DocGenerationStep = {}));
48
+ const docGenerationProgressMessage = (currentStep, mode) => `
49
+ ${mode === Mode.CREATE ? (0, i18n_1.i18n)('AWS.amazonq.doc.answer.creating') : (0, i18n_1.i18n)('AWS.amazonq.doc.answer.updating')}
50
+
51
+ ${getIconForStep(DocGenerationStep.UPLOAD_TO_S3, currentStep)} ${(0, i18n_1.i18n)('AWS.amazonq.doc.answer.scanning')}
52
+
53
+ ${getIconForStep(DocGenerationStep.SUMMARIZING_FILES, currentStep)} ${(0, i18n_1.i18n)('AWS.amazonq.doc.answer.summarizing')}
54
+
55
+ ${getIconForStep(DocGenerationStep.GENERATING_ARTIFACTS, currentStep)} ${(0, i18n_1.i18n)('AWS.amazonq.doc.answer.generating')}
56
+
57
+
58
+ `;
59
+ exports.docGenerationProgressMessage = docGenerationProgressMessage;
60
+ const docGenerationSuccessMessage = (mode) => mode === Mode.CREATE ? (0, i18n_1.i18n)('AWS.amazonq.doc.answer.readmeCreated') : (0, i18n_1.i18n)('AWS.amazonq.doc.answer.readmeUpdated');
61
+ exports.docGenerationSuccessMessage = docGenerationSuccessMessage;
62
+ exports.docRejectConfirmation = 'Your changes have been discarded.';
63
+ exports.FolderSelectorFollowUps = [
64
+ {
65
+ icon: 'ok',
66
+ pillText: 'Yes',
67
+ prompt: 'Yes',
68
+ status: 'success',
69
+ type: types_1.FollowUpTypes.ProceedFolderSelection,
70
+ },
71
+ {
72
+ icon: 'refresh',
73
+ pillText: 'Change folder',
74
+ prompt: 'Change folder',
75
+ status: 'info',
76
+ type: types_1.FollowUpTypes.ChooseFolder,
77
+ },
78
+ {
79
+ icon: 'cancel',
80
+ pillText: 'Cancel',
81
+ prompt: 'Cancel',
82
+ status: 'error',
83
+ type: types_1.FollowUpTypes.CancelFolderSelection,
84
+ },
85
+ ];
86
+ exports.CodeChangeFollowUps = [
87
+ {
88
+ pillText: (0, i18n_1.i18n)('AWS.amazonq.doc.pillText.accept'),
89
+ prompt: (0, i18n_1.i18n)('AWS.amazonq.doc.pillText.accept'),
90
+ type: types_1.FollowUpTypes.AcceptChanges,
91
+ icon: 'ok',
92
+ status: 'success',
93
+ },
94
+ {
95
+ pillText: (0, i18n_1.i18n)('AWS.amazonq.doc.pillText.makeChanges'),
96
+ prompt: (0, i18n_1.i18n)('AWS.amazonq.doc.pillText.makeChanges'),
97
+ type: types_1.FollowUpTypes.MakeChanges,
98
+ icon: 'refresh',
99
+ status: 'info',
100
+ },
101
+ {
102
+ pillText: (0, i18n_1.i18n)('AWS.amazonq.doc.pillText.reject'),
103
+ prompt: (0, i18n_1.i18n)('AWS.amazonq.doc.pillText.reject'),
104
+ type: types_1.FollowUpTypes.RejectChanges,
105
+ icon: 'cancel',
106
+ status: 'error',
107
+ },
108
+ ];
109
+ exports.NewSessionFollowUps = [
110
+ {
111
+ pillText: (0, i18n_1.i18n)('AWS.amazonq.doc.pillText.newTask'),
112
+ type: types_1.FollowUpTypes.NewTask,
113
+ status: 'info',
114
+ },
115
+ {
116
+ pillText: (0, i18n_1.i18n)('AWS.amazonq.doc.pillText.closeSession'),
117
+ type: types_1.FollowUpTypes.CloseSession,
118
+ status: 'info',
119
+ },
120
+ ];
121
+ exports.SynchronizeDocumentation = {
122
+ pillText: (0, i18n_1.i18n)('AWS.amazonq.doc.pillText.update'),
123
+ prompt: (0, i18n_1.i18n)('AWS.amazonq.doc.pillText.update'),
124
+ type: types_1.FollowUpTypes.SynchronizeDocumentation,
125
+ };
126
+ exports.EditDocumentation = {
127
+ pillText: (0, i18n_1.i18n)('AWS.amazonq.doc.pillText.makeChange'),
128
+ prompt: (0, i18n_1.i18n)('AWS.amazonq.doc.pillText.makeChange'),
129
+ type: types_1.FollowUpTypes.EditDocumentation,
130
+ };
131
+ var Mode;
132
+ (function (Mode) {
133
+ Mode["NONE"] = "None";
134
+ Mode["CREATE"] = "Create";
135
+ Mode["SYNC"] = "Sync";
136
+ Mode["EDIT"] = "Edit";
137
+ })(Mode || (exports.Mode = Mode = {}));
138
+ /**
139
+ *
140
+ * @param paths file paths
141
+ * @returns the path to a README.md, or undefined if none exist
142
+ */
143
+ const findReadmePath = (paths) => {
144
+ return paths?.find(path => /readme\.md$/i.test(path.relativePath));
145
+ };
146
+ exports.findReadmePath = findReadmePath;
147
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../src/language-server/chat/agents/docGeneration/constants.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ /*!
2
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */
5
+ export declare class DocClientError {
6
+ remainingIterations?: number;
7
+ constructor(message: string, code: string, remainingIterations?: number);
8
+ }
9
+ export declare class ReadmeTooLargeError extends DocClientError {
10
+ constructor();
11
+ }
12
+ export declare class ReadmeUpdateTooLargeError extends DocClientError {
13
+ constructor(remainingIterations: number);
14
+ }
15
+ export declare class WorkspaceEmptyError extends DocClientError {
16
+ constructor();
17
+ }
18
+ export declare class NoChangeRequiredException extends DocClientError {
19
+ constructor();
20
+ }
21
+ export declare class PromptRefusalException extends DocClientError {
22
+ constructor(remainingIterations: number);
23
+ }
24
+ export declare class PromptTooVagueError extends DocClientError {
25
+ constructor(remainingIterations: number);
26
+ }
27
+ export declare class PromptUnrelatedError extends DocClientError {
28
+ constructor(remainingIterations: number);
29
+ }
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+ /*!
3
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.PromptUnrelatedError = exports.PromptTooVagueError = exports.PromptRefusalException = exports.NoChangeRequiredException = exports.WorkspaceEmptyError = exports.ReadmeUpdateTooLargeError = exports.ReadmeTooLargeError = exports.DocClientError = void 0;
8
+ //TODO: extend the toolkit error once ready
9
+ // import { ClientError, ContentLengthError as CommonContentLengthError } from '../shared/errors'
10
+ const i18n_1 = require("../shared/i18n");
11
+ class DocClientError {
12
+ remainingIterations;
13
+ constructor(message, code, remainingIterations) {
14
+ // super(message, { code })
15
+ this.remainingIterations = remainingIterations;
16
+ }
17
+ }
18
+ exports.DocClientError = DocClientError;
19
+ class ReadmeTooLargeError extends DocClientError {
20
+ constructor() {
21
+ super((0, i18n_1.i18n)('AWS.amazonq.doc.error.readmeTooLarge'), ReadmeTooLargeError.name);
22
+ }
23
+ }
24
+ exports.ReadmeTooLargeError = ReadmeTooLargeError;
25
+ class ReadmeUpdateTooLargeError extends DocClientError {
26
+ constructor(remainingIterations) {
27
+ super((0, i18n_1.i18n)('AWS.amazonq.doc.error.readmeUpdateTooLarge'), ReadmeUpdateTooLargeError.name, remainingIterations);
28
+ }
29
+ }
30
+ exports.ReadmeUpdateTooLargeError = ReadmeUpdateTooLargeError;
31
+ class WorkspaceEmptyError extends DocClientError {
32
+ constructor() {
33
+ super((0, i18n_1.i18n)('AWS.amazonq.doc.error.workspaceEmpty'), WorkspaceEmptyError.name);
34
+ }
35
+ }
36
+ exports.WorkspaceEmptyError = WorkspaceEmptyError;
37
+ class NoChangeRequiredException extends DocClientError {
38
+ constructor() {
39
+ super((0, i18n_1.i18n)('AWS.amazonq.doc.error.noChangeRequiredException'), NoChangeRequiredException.name);
40
+ }
41
+ }
42
+ exports.NoChangeRequiredException = NoChangeRequiredException;
43
+ class PromptRefusalException extends DocClientError {
44
+ constructor(remainingIterations) {
45
+ super((0, i18n_1.i18n)('AWS.amazonq.doc.error.promptRefusal'), PromptRefusalException.name, remainingIterations);
46
+ }
47
+ }
48
+ exports.PromptRefusalException = PromptRefusalException;
49
+ // TODO: move the common content length error to shared folder
50
+ // export class ContentLengthError extends CommonContentLengthError {
51
+ // constructor() {
52
+ // super(i18n('AWS.amazonq.doc.error.contentLengthError'), { code: ContentLengthError.name })
53
+ // }
54
+ // }
55
+ class PromptTooVagueError extends DocClientError {
56
+ constructor(remainingIterations) {
57
+ super((0, i18n_1.i18n)('AWS.amazonq.doc.error.promptTooVague'), PromptTooVagueError.name, remainingIterations);
58
+ }
59
+ }
60
+ exports.PromptTooVagueError = PromptTooVagueError;
61
+ class PromptUnrelatedError extends DocClientError {
62
+ constructor(remainingIterations) {
63
+ super((0, i18n_1.i18n)('AWS.amazonq.doc.error.promptUnrelated'), PromptUnrelatedError.name, remainingIterations);
64
+ }
65
+ }
66
+ exports.PromptUnrelatedError = PromptUnrelatedError;
67
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../../../src/language-server/chat/agents/docGeneration/errors.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,2CAA2C;AAC3C,iGAAiG;AACjG,yCAAqC;AAErC,MAAa,cAAc;IACvB,mBAAmB,CAAS;IAC5B,YAAY,OAAe,EAAE,IAAY,EAAE,mBAA4B;QACnE,2BAA2B;QAC3B,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAA;IAClD,CAAC;CACJ;AAND,wCAMC;AAED,MAAa,mBAAoB,SAAQ,cAAc;IACnD;QACI,KAAK,CAAC,IAAA,WAAI,EAAC,sCAAsC,CAAC,EAAE,mBAAmB,CAAC,IAAI,CAAC,CAAA;IACjF,CAAC;CACJ;AAJD,kDAIC;AAED,MAAa,yBAA0B,SAAQ,cAAc;IACzD,YAAY,mBAA2B;QACnC,KAAK,CAAC,IAAA,WAAI,EAAC,4CAA4C,CAAC,EAAE,yBAAyB,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAA;IAClH,CAAC;CACJ;AAJD,8DAIC;AAED,MAAa,mBAAoB,SAAQ,cAAc;IACnD;QACI,KAAK,CAAC,IAAA,WAAI,EAAC,sCAAsC,CAAC,EAAE,mBAAmB,CAAC,IAAI,CAAC,CAAA;IACjF,CAAC;CACJ;AAJD,kDAIC;AAED,MAAa,yBAA0B,SAAQ,cAAc;IACzD;QACI,KAAK,CAAC,IAAA,WAAI,EAAC,iDAAiD,CAAC,EAAE,yBAAyB,CAAC,IAAI,CAAC,CAAA;IAClG,CAAC;CACJ;AAJD,8DAIC;AAED,MAAa,sBAAuB,SAAQ,cAAc;IACtD,YAAY,mBAA2B;QACnC,KAAK,CAAC,IAAA,WAAI,EAAC,qCAAqC,CAAC,EAAE,sBAAsB,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAA;IACxG,CAAC;CACJ;AAJD,wDAIC;AAED,8DAA8D;AAC9D,qEAAqE;AACrE,sBAAsB;AACtB,qGAAqG;AACrG,QAAQ;AACR,IAAI;AACJ,MAAa,mBAAoB,SAAQ,cAAc;IACnD,YAAY,mBAA2B;QACnC,KAAK,CAAC,IAAA,WAAI,EAAC,sCAAsC,CAAC,EAAE,mBAAmB,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAA;IACtG,CAAC;CACJ;AAJD,kDAIC;AAED,MAAa,oBAAqB,SAAQ,cAAc;IACpD,YAAY,mBAA2B;QACnC,KAAK,CAAC,IAAA,WAAI,EAAC,uCAAuC,CAAC,EAAE,oBAAoB,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAA;IACxG,CAAC;CACJ;AAJD,oDAIC"}
@@ -0,0 +1 @@
1
+ export declare function i18n(text: string): string;
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.i18n = i18n;
4
+ function i18n(text) {
5
+ return text;
6
+ }
7
+ //# sourceMappingURL=i18n.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"i18n.js","sourceRoot":"","sources":["../../../../../src/language-server/chat/agents/shared/i18n.ts"],"names":[],"mappings":";;AAAA,oBAEC;AAFD,SAAgB,IAAI,CAAC,IAAY;IAC7B,OAAO,IAAI,CAAA;AACf,CAAC"}
@@ -0,0 +1,55 @@
1
+ /*!
2
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */
5
+ import { WorkspaceFolder } from '@aws/language-server-runtimes/protocol';
6
+ export declare enum FollowUpTypes {
7
+ ViewDiff = "ViewDiff",
8
+ AcceptCode = "AcceptCode",
9
+ RejectCode = "RejectCode",
10
+ BuildAndExecute = "BuildAndExecute",
11
+ ModifyCommands = "ModifyCommands",
12
+ SkipBuildAndFinish = "SkipBuildAndFinish",
13
+ InstallDependenciesAndContinue = "InstallDependenciesAndContinue",
14
+ ContinueBuildAndExecute = "ContinueBuildAndExecute",
15
+ ViewCodeDiffAfterIteration = "ViewCodeDiffAfterIteration",
16
+ GenerateCode = "GenerateCode",
17
+ InsertCode = "InsertCode",
18
+ ProvideFeedbackAndRegenerateCode = "ProvideFeedbackAndRegenerateCode",
19
+ Retry = "Retry",
20
+ ModifyDefaultSourceFolder = "ModifyDefaultSourceFolder",
21
+ DevExamples = "DevExamples",
22
+ NewTask = "NewTask",
23
+ CloseSession = "CloseSession",
24
+ SendFeedback = "SendFeedback",
25
+ AcceptAutoBuild = "AcceptAutoBuild",
26
+ DenyAutoBuild = "DenyAutoBuild",
27
+ GenerateDevFile = "GenerateDevFile",
28
+ CreateDocumentation = "CreateDocumentation",
29
+ ChooseFolder = "ChooseFolder",
30
+ UpdateDocumentation = "UpdateDocumentation",
31
+ SynchronizeDocumentation = "SynchronizeDocumentation",
32
+ EditDocumentation = "EditDocumentation",
33
+ AcceptChanges = "AcceptChanges",
34
+ RejectChanges = "RejectChanges",
35
+ MakeChanges = "MakeChanges",
36
+ ProceedFolderSelection = "ProceedFolderSelection",
37
+ CancelFolderSelection = "CancelFolderSelection"
38
+ }
39
+ export type DiffTreeFileInfo = {
40
+ zipFilePath: string;
41
+ relativePath: string;
42
+ rejected: boolean;
43
+ changeApplied: boolean;
44
+ };
45
+ export type NewFileZipContents = {
46
+ zipFilePath: string;
47
+ fileContent: string;
48
+ };
49
+ export type DeletedFileInfo = DiffTreeFileInfo & {
50
+ workspaceFolder: WorkspaceFolder;
51
+ };
52
+ export type NewFileInfo = DiffTreeFileInfo & NewFileZipContents & {
53
+ virtualMemoryUri: string;
54
+ workspaceFolder: WorkspaceFolder;
55
+ };
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ /*!
3
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.FollowUpTypes = void 0;
8
+ //TODO: May not be needed follow up with flare
9
+ var FollowUpTypes;
10
+ (function (FollowUpTypes) {
11
+ // UnitTestGeneration
12
+ FollowUpTypes["ViewDiff"] = "ViewDiff";
13
+ FollowUpTypes["AcceptCode"] = "AcceptCode";
14
+ FollowUpTypes["RejectCode"] = "RejectCode";
15
+ FollowUpTypes["BuildAndExecute"] = "BuildAndExecute";
16
+ FollowUpTypes["ModifyCommands"] = "ModifyCommands";
17
+ FollowUpTypes["SkipBuildAndFinish"] = "SkipBuildAndFinish";
18
+ FollowUpTypes["InstallDependenciesAndContinue"] = "InstallDependenciesAndContinue";
19
+ FollowUpTypes["ContinueBuildAndExecute"] = "ContinueBuildAndExecute";
20
+ FollowUpTypes["ViewCodeDiffAfterIteration"] = "ViewCodeDiffAfterIteration";
21
+ // FeatureDev
22
+ FollowUpTypes["GenerateCode"] = "GenerateCode";
23
+ FollowUpTypes["InsertCode"] = "InsertCode";
24
+ FollowUpTypes["ProvideFeedbackAndRegenerateCode"] = "ProvideFeedbackAndRegenerateCode";
25
+ FollowUpTypes["Retry"] = "Retry";
26
+ FollowUpTypes["ModifyDefaultSourceFolder"] = "ModifyDefaultSourceFolder";
27
+ FollowUpTypes["DevExamples"] = "DevExamples";
28
+ FollowUpTypes["NewTask"] = "NewTask";
29
+ FollowUpTypes["CloseSession"] = "CloseSession";
30
+ FollowUpTypes["SendFeedback"] = "SendFeedback";
31
+ FollowUpTypes["AcceptAutoBuild"] = "AcceptAutoBuild";
32
+ FollowUpTypes["DenyAutoBuild"] = "DenyAutoBuild";
33
+ FollowUpTypes["GenerateDevFile"] = "GenerateDevFile";
34
+ // Doc
35
+ FollowUpTypes["CreateDocumentation"] = "CreateDocumentation";
36
+ FollowUpTypes["ChooseFolder"] = "ChooseFolder";
37
+ FollowUpTypes["UpdateDocumentation"] = "UpdateDocumentation";
38
+ FollowUpTypes["SynchronizeDocumentation"] = "SynchronizeDocumentation";
39
+ FollowUpTypes["EditDocumentation"] = "EditDocumentation";
40
+ FollowUpTypes["AcceptChanges"] = "AcceptChanges";
41
+ FollowUpTypes["RejectChanges"] = "RejectChanges";
42
+ FollowUpTypes["MakeChanges"] = "MakeChanges";
43
+ FollowUpTypes["ProceedFolderSelection"] = "ProceedFolderSelection";
44
+ FollowUpTypes["CancelFolderSelection"] = "CancelFolderSelection";
45
+ })(FollowUpTypes || (exports.FollowUpTypes = FollowUpTypes = {}));
46
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/language-server/chat/agents/shared/types.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAIH,8CAA8C;AAC9C,IAAY,aAmCX;AAnCD,WAAY,aAAa;IACrB,qBAAqB;IACrB,sCAAqB,CAAA;IACrB,0CAAyB,CAAA;IACzB,0CAAyB,CAAA;IACzB,oDAAmC,CAAA;IACnC,kDAAiC,CAAA;IACjC,0DAAyC,CAAA;IACzC,kFAAiE,CAAA;IACjE,oEAAmD,CAAA;IACnD,0EAAyD,CAAA;IACzD,aAAa;IACb,8CAA6B,CAAA;IAC7B,0CAAyB,CAAA;IACzB,sFAAqE,CAAA;IACrE,gCAAe,CAAA;IACf,wEAAuD,CAAA;IACvD,4CAA2B,CAAA;IAC3B,oCAAmB,CAAA;IACnB,8CAA6B,CAAA;IAC7B,8CAA6B,CAAA;IAC7B,oDAAmC,CAAA;IACnC,gDAA+B,CAAA;IAC/B,oDAAmC,CAAA;IACnC,MAAM;IACN,4DAA2C,CAAA;IAC3C,8CAA6B,CAAA;IAC7B,4DAA2C,CAAA;IAC3C,sEAAqD,CAAA;IACrD,wDAAuC,CAAA;IACvC,gDAA+B,CAAA;IAC/B,gDAA+B,CAAA;IAC/B,4CAA2B,CAAA;IAC3B,kEAAiD,CAAA;IACjD,gEAA+C,CAAA;AACnD,CAAC,EAnCW,aAAa,6BAAb,aAAa,QAmCxB"}
@@ -1,14 +1,17 @@
1
- import { FeedbackParams, InsertToCursorPositionParams } from '@aws/language-server-runtimes/protocol';
2
- import { CancellationToken, Chat, ChatParams, ChatResult, EndChatParams, QuickActionParams, ResponseError, TabAddParams, TabRemoveParams, TabChangeParams } from '@aws/language-server-runtimes/server-interface';
1
+ import { FeedbackParams, InlineChatParams, InsertToCursorPositionParams } from '@aws/language-server-runtimes/protocol';
2
+ import { CancellationToken, Chat, ChatParams, ChatResult, EndChatParams, QuickActionParams, ResponseError, TabAddParams, TabRemoveParams, TabChangeParams, InlineChatResult } from '@aws/language-server-runtimes/server-interface';
3
3
  import { Features, LspHandlers } from '../types';
4
4
  import { ChatSessionManagementService } from './chatSessionManagementService';
5
- import { TelemetryService } from '../telemetryService';
6
- type ChatHandlers = Omit<LspHandlers<Chat>, 'openTab' | 'sendChatUpdate' | 'onFileClicked'>;
5
+ import { TelemetryService } from '../../shared/telemetry/telemetryService';
6
+ import { AmazonQWorkspaceConfig } from '../../shared/amazonQServiceManager/configurationUtils';
7
+ import { AmazonQTokenServiceManager } from '../../shared/amazonQServiceManager/AmazonQTokenServiceManager';
8
+ type ChatHandlers = Omit<LspHandlers<Chat>, 'openTab' | 'sendChatUpdate' | 'onFileClicked' | 'onInlineChatPrompt' | 'sendContextCommands' | 'onCreatePrompt'>;
7
9
  export declare class ChatController implements ChatHandlers {
8
10
  #private;
9
- constructor(chatSessionManagementService: ChatSessionManagementService, features: Features, telemetryService: TelemetryService);
11
+ constructor(chatSessionManagementService: ChatSessionManagementService, features: Features, telemetryService: TelemetryService, amazonQServiceManager: AmazonQTokenServiceManager);
10
12
  dispose(): void;
11
13
  onChatPrompt(params: ChatParams, token: CancellationToken): Promise<ChatResult | ResponseError<ChatResult>>;
14
+ onInlineChatPrompt(params: InlineChatParams, token: CancellationToken): Promise<InlineChatResult | ResponseError<InlineChatResult>>;
12
15
  onCodeInsertToCursorPosition(params: InsertToCursorPositionParams): Promise<void>;
13
16
  onCopyCodeToClipboard(): void;
14
17
  onEndChat(params: EndChatParams, _token: CancellationToken): boolean;
@@ -28,6 +31,6 @@ export declare class ChatController implements ChatHandlers {
28
31
  messageId: string;
29
32
  body: string;
30
33
  };
31
- updateConfiguration: () => Promise<void>;
34
+ updateConfiguration: (newConfig: AmazonQWorkspaceConfig) => void;
32
35
  }
33
36
  export {};
@@ -1,22 +1,20 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ChatController = void 0;
4
+ const codewhisperer_streaming_1 = require("@amzn/codewhisperer-streaming");
4
5
  const protocol_1 = require("@aws/language-server-runtimes/protocol");
5
6
  const server_interface_1 = require("@aws/language-server-runtimes/server-interface");
6
7
  const uuid_1 = require("uuid");
7
- const types_1 = require("../telemetry/types");
8
+ const types_1 = require("../../shared/telemetry/types");
8
9
  const chatEventParser_1 = require("./chatEventParser");
9
10
  const utils_1 = require("./utils");
10
11
  const chatTelemetryController_1 = require("./telemetry/chatTelemetryController");
11
12
  const quickActions_1 = require("./quickActions");
12
- const utils_2 = require("../utils");
13
- const metric_1 = require("../telemetry/metric");
13
+ const utils_2 = require("../../shared/utils");
14
+ const metric_1 = require("../../shared/telemetry/metric");
14
15
  const triggerContext_1 = require("./contexts/triggerContext");
15
16
  const constants_1 = require("./constants");
16
- const qConfigurationServer_1 = require("../configuration/qConfigurationServer");
17
- const lsp_core_1 = require("@aws/lsp-core");
18
- const errors_1 = require("../amazonQServiceManager/errors");
19
- const AmazonQTokenServiceManager_1 = require("../amazonQServiceManager/AmazonQTokenServiceManager");
17
+ const errors_1 = require("../../shared/amazonQServiceManager/errors");
20
18
  class ChatController {
21
19
  #features;
22
20
  #chatSessionManagementService;
@@ -24,12 +22,14 @@ class ChatController {
24
22
  #triggerContext;
25
23
  #customizationArn;
26
24
  #telemetryService;
27
- constructor(chatSessionManagementService, features, telemetryService) {
25
+ #amazonQServiceManager;
26
+ constructor(chatSessionManagementService, features, telemetryService, amazonQServiceManager) {
28
27
  this.#features = features;
29
28
  this.#chatSessionManagementService = chatSessionManagementService;
30
29
  this.#triggerContext = new triggerContext_1.QChatTriggerContext(features.workspace, features.logging);
31
30
  this.#telemetryController = new chatTelemetryController_1.ChatTelemetryController(features, telemetryService);
32
31
  this.#telemetryService = telemetryService;
32
+ this.#amazonQServiceManager = amazonQServiceManager;
33
33
  }
34
34
  dispose() {
35
35
  this.#chatSessionManagementService.dispose();
@@ -59,8 +59,7 @@ class ChatController {
59
59
  const conversationIdentifier = session?.conversationId ?? 'New conversation';
60
60
  try {
61
61
  this.#log('Request for conversation id:', conversationIdentifier);
62
- const profileArn = AmazonQTokenServiceManager_1.AmazonQTokenServiceManager.getInstance(this.#features).getActiveProfileArn();
63
- requestInput = this.#triggerContext.getChatParamsFromTrigger(params, triggerContext, this.#customizationArn, profileArn);
62
+ requestInput = this.#triggerContext.getChatParamsFromTrigger(params, triggerContext, codewhisperer_streaming_1.ChatTriggerType.MANUAL, this.#customizationArn);
64
63
  metric.recordStart();
65
64
  response = await session.sendMessage(requestInput);
66
65
  this.#log('Response for conversation id:', conversationIdentifier, JSON.stringify(response.$metadata));
@@ -130,6 +129,42 @@ class ChatController {
130
129
  return new server_interface_1.ResponseError(server_interface_1.LSPErrorCodes.RequestFailed, err instanceof Error ? err.message : 'Unknown error occured during response stream');
131
130
  }
132
131
  }
132
+ async onInlineChatPrompt(params, token) {
133
+ // TODO: This metric needs to be removed later, just added for now to be able to create a ChatEventParser object
134
+ const metric = new metric_1.Metric({
135
+ cwsprChatConversationType: 'Chat',
136
+ });
137
+ const triggerContext = await this.#getInlineChatTriggerContext(params);
138
+ let response;
139
+ let requestInput;
140
+ try {
141
+ requestInput = this.#triggerContext.getChatParamsFromTrigger(params, triggerContext, codewhisperer_streaming_1.ChatTriggerType.INLINE_CHAT, this.#customizationArn);
142
+ const client = this.#amazonQServiceManager.getStreamingClient();
143
+ response = await client.sendMessage(requestInput);
144
+ this.#log('Response for inline chat', JSON.stringify(response.$metadata), JSON.stringify(response));
145
+ }
146
+ catch (err) {
147
+ if (err instanceof errors_1.AmazonQServicePendingSigninError || err instanceof errors_1.AmazonQServicePendingProfileError) {
148
+ this.#log(`Q Inline Chat SSO Connection error: ${(0, utils_2.getErrorMessage)(err)}`);
149
+ return new server_interface_1.ResponseError(server_interface_1.LSPErrorCodes.RequestFailed, err.message);
150
+ }
151
+ this.#log(`Q api request error ${err instanceof Error ? err.message : 'unknown'}`);
152
+ return new server_interface_1.ResponseError(server_interface_1.LSPErrorCodes.RequestFailed, err instanceof Error ? err.message : 'Unknown request error');
153
+ }
154
+ try {
155
+ const result = await this.#processSendMessageResponseForInlineChat(response, metric, params.partialResultToken);
156
+ return result.success
157
+ ? {
158
+ ...result.data.chatResult,
159
+ requestId: response.$metadata.requestId,
160
+ }
161
+ : new server_interface_1.ResponseError(server_interface_1.LSPErrorCodes.RequestFailed, result.error);
162
+ }
163
+ catch (err) {
164
+ this.#log('Error encountered during inline chat response streaming:', err instanceof Error ? err.message : 'unknown');
165
+ return new server_interface_1.ResponseError(server_interface_1.LSPErrorCodes.RequestFailed, err instanceof Error ? err.message : 'Unknown error occurred during inline chat response stream');
166
+ }
167
+ }
133
168
  async onCodeInsertToCursorPosition(params) {
134
169
  // Implementation based on https://github.com/aws/aws-toolkit-vscode/blob/1814cc84228d4bf20270574c5980b91b227f31cf/packages/core/src/amazonq/commons/controllers/contentController.ts#L38
135
170
  if (!params.textDocument || !params.cursorPosition || !params.code) {
@@ -281,6 +316,10 @@ class ChatController {
281
316
  return {};
282
317
  }
283
318
  }
319
+ async #getInlineChatTriggerContext(params) {
320
+ let triggerContext = await this.#triggerContext.getNewTriggerContext(params);
321
+ return triggerContext;
322
+ }
284
323
  async #getTriggerContext(params, metric) {
285
324
  const lastMessageTrigger = this.#telemetryController.getLastMessageTrigger(params.tabId);
286
325
  let triggerContext;
@@ -329,25 +368,33 @@ class ChatController {
329
368
  });
330
369
  return chatEventParser.getResult();
331
370
  }
332
- updateConfiguration = async () => {
333
- try {
334
- const qConfig = await this.#features.lsp.workspace.getConfiguration(qConfigurationServer_1.Q_CONFIGURATION_SECTION);
335
- if (qConfig) {
336
- this.#customizationArn = lsp_core_1.textUtils.undefinedIfEmpty(qConfig.customization);
337
- this.#log(`Chat configuration updated to use ${this.#customizationArn}`);
338
- /*
339
- The flag enableTelemetryEventsToDestination is set to true temporarily. It's value will be determined through destination
340
- configuration post all events migration to STE. It'll be replaced by qConfig['enableTelemetryEventsToDestination'] === true
341
- */
342
- // const enableTelemetryEventsToDestination = true
343
- // this.#telemetryService.updateEnableTelemetryEventsToDestination(enableTelemetryEventsToDestination)
344
- const optOutTelemetryPreference = qConfig['optOutTelemetry'] === true ? 'OPTOUT' : 'OPTIN';
345
- this.#telemetryService.updateOptOutPreference(optOutTelemetryPreference);
371
+ async #processSendMessageResponseForInlineChat(response, metric, partialResultToken) {
372
+ const requestId = response.$metadata.requestId;
373
+ const chatEventParser = new chatEventParser_1.ChatEventParser(requestId, metric);
374
+ for await (const chatEvent of response.sendMessageResponse) {
375
+ const result = chatEventParser.processPartialEvent(chatEvent);
376
+ // terminate early when there is an error
377
+ if (!result.success) {
378
+ return result;
379
+ }
380
+ if (!(0, utils_2.isNullish)(partialResultToken)) {
381
+ await this.#features.lsp.sendProgress(protocol_1.chatRequestType, partialResultToken, result.data.chatResult);
346
382
  }
347
383
  }
348
- catch (error) {
349
- this.#log(`Error in GetConfiguration: ${error}`);
350
- }
384
+ return chatEventParser.getResult();
385
+ }
386
+ updateConfiguration = (newConfig) => {
387
+ this.#customizationArn = newConfig.customizationArn;
388
+ this.#log(`Chat configuration updated to use ${this.#customizationArn}`);
389
+ /*
390
+ The flag enableTelemetryEventsToDestination is set to true temporarily. It's value will be determined through destination
391
+ configuration post all events migration to STE. It'll be replaced by qConfig['enableTelemetryEventsToDestination'] === true
392
+ */
393
+ // const enableTelemetryEventsToDestination = true
394
+ // this.#telemetryService.updateEnableTelemetryEventsToDestination(enableTelemetryEventsToDestination)
395
+ const updatedOptOutPreference = newConfig.optOutTelemetryPreference;
396
+ this.#telemetryService.updateOptOutPreference(updatedOptOutPreference);
397
+ this.#log(`Chat configuration telemetry preference to ${updatedOptOutPreference}`);
351
398
  };
352
399
  #log(...messages) {
353
400
  this.#features.logging.log(messages.join(' '));
@@ -1 +1 @@
1
- {"version":3,"file":"chatController.js","sourceRoot":"","sources":["../../../src/language-server/chat/chatController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chatController.js","sourceRoot":"","sources":["../../../src/language-server/chat/chatController.ts"],"names":[],"mappings":"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"}