Skip to content

Commit 5122117

Browse files
committed
feat(amazonq): Handle disclaimer acknowledgement
1 parent 9f805be commit 5122117

File tree

4 files changed

+25
-24
lines changed

4 files changed

+25
-24
lines changed

package-lock.json

Lines changed: 15 additions & 21 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

packages/amazonq/src/lsp/chat/messages.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ import {
1010
CHAT_OPTIONS,
1111
COPY_TO_CLIPBOARD,
1212
AuthFollowUpType,
13+
DISCLAIMER_ACKNOWLEDGED,
1314
} from '@aws/chat-client-ui-types'
1415
import {
1516
ChatResult,
@@ -27,6 +28,7 @@ import { Disposable, LanguageClient, Position, State, TextDocumentIdentifier } f
2728
import * as jose from 'jose'
2829
import { AmazonQChatViewProvider } from './webviewProvider'
2930
import { AuthUtil } from 'aws-core-vscode/codewhisperer'
31+
import { globals } from 'aws-core-vscode/shared'
3032

3133
export function registerLanguageServerEventListener(languageClient: LanguageClient, provider: AmazonQChatViewProvider) {
3234
languageClient.onDidChangeState(({ oldState, newState }) => {
@@ -106,6 +108,10 @@ export function registerMessageListeners(
106108
}
107109
break
108110
}
111+
case DISCLAIMER_ACKNOWLEDGED: {
112+
globals.globalState.tryUpdate('aws.amazonq.disclaimerAcknowledged', true)
113+
break
114+
}
109115
case chatRequestType.method: {
110116
const partialResultToken = uuidv4()
111117
const chatDisposable = languageClient.onProgress(chatRequestType, partialResultToken, (partialResult) =>

packages/amazonq/src/lsp/chat/webviewProvider.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@ import {
1212
WebviewViewResolveContext,
1313
Uri,
1414
} from 'vscode'
15-
import { LanguageServerResolver } from 'aws-core-vscode/shared'
1615
import { QuickActionCommandGroup } from '@aws/mynah-ui'
16+
import { globals, LanguageServerResolver } from 'aws-core-vscode/shared'
1717

1818
export class AmazonQChatViewProvider implements WebviewViewProvider {
1919
public static readonly viewType = 'aws.amazonq.AmazonQChatView'
@@ -59,6 +59,7 @@ export class AmazonQChatViewProvider implements WebviewViewProvider {
5959
}
6060

6161
private getWebviewContent(mynahUIPath: string) {
62+
const disclaimerAcknowledged = globals.globalState.tryGet('aws.amazonq.disclaimerAcknowledged', Boolean, false)
6263
return `
6364
<!DOCTYPE html>
6465
<html lang="en">
@@ -83,7 +84,7 @@ export class AmazonQChatViewProvider implements WebviewViewProvider {
8384
<script type="text/javascript" src="${mynahUIPath.toString()}" defer onload="init()"></script>
8485
<script type="text/javascript">
8586
const init = () => {
86-
amazonQChat.createChat(acquireVsCodeApi(), { disclaimerAcknowledged: false, quickActionCommands: ${JSON.stringify(this.quickActionCommands)}});
87+
amazonQChat.createChat(acquireVsCodeApi(), { disclaimerAcknowledged: ${disclaimerAcknowledged}, quickActionCommands: ${JSON.stringify(this.quickActionCommands)}});
8788
}
8889
</script>
8990
</body>

packages/core/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -440,7 +440,7 @@
440440
},
441441
"devDependencies": {
442442
"@aws-sdk/types": "^3.13.1",
443-
"@aws/chat-client-ui-types": "^0.0.8",
443+
"@aws/chat-client-ui-types": "^0.1.7",
444444
"@aws/language-server-runtimes": "^0.2.49",
445445
"@cspotcode/source-map-support": "^0.8.1",
446446
"@sinonjs/fake-timers": "^10.0.2",

0 commit comments

Comments
 (0)