From 8d2c440d267cc23a7bbe430c6115e6ea3bcc182d Mon Sep 17 00:00:00 2001 From: Dogus Atasoy Date: Fri, 31 Jan 2025 16:09:36 +0100 Subject: [PATCH 1/3] feat(amazonq): Add description and github issue link to feedback form --- .../feature-b74cbfcd-8982-4019-a224-041f62236100.json | 4 ++++ .../services/amazonq/webview/BrowserConnector.kt | 3 +++ plugins/amazonq/mynah-ui/package-lock.json | 8 ++++---- plugins/amazonq/mynah-ui/package.json | 2 +- plugins/amazonq/mynah-ui/src/mynah-ui/ui/commands.ts | 1 + plugins/amazonq/mynah-ui/src/mynah-ui/ui/connector.ts | 7 +++++++ plugins/amazonq/mynah-ui/src/mynah-ui/ui/main.ts | 6 ++++++ .../amazonq/mynah-ui/src/mynah-ui/ui/texts/constants.ts | 2 ++ 8 files changed, 28 insertions(+), 5 deletions(-) create mode 100644 .changes/next-release/feature-b74cbfcd-8982-4019-a224-041f62236100.json diff --git a/.changes/next-release/feature-b74cbfcd-8982-4019-a224-041f62236100.json b/.changes/next-release/feature-b74cbfcd-8982-4019-a224-041f62236100.json new file mode 100644 index 0000000000..98edcc67fc --- /dev/null +++ b/.changes/next-release/feature-b74cbfcd-8982-4019-a224-041f62236100.json @@ -0,0 +1,4 @@ +{ + "type" : "feature", + "description" : "feat(amazonq): Added github issue link and description to the chat answer feedback form" +} \ No newline at end of file diff --git a/plugins/amazonq/chat/jetbrains-community/src/software/aws/toolkits/jetbrains/services/amazonq/webview/BrowserConnector.kt b/plugins/amazonq/chat/jetbrains-community/src/software/aws/toolkits/jetbrains/services/amazonq/webview/BrowserConnector.kt index af9c4b5fce..dbd7ceb998 100644 --- a/plugins/amazonq/chat/jetbrains-community/src/software/aws/toolkits/jetbrains/services/amazonq/webview/BrowserConnector.kt +++ b/plugins/amazonq/chat/jetbrains-community/src/software/aws/toolkits/jetbrains/services/amazonq/webview/BrowserConnector.kt @@ -57,6 +57,9 @@ class BrowserConnector( "open-user-guide" -> { BrowserUtil.browse(node.get("userGuideLink").asText()) } + "open-form-link" -> { + BrowserUtil.browse(node.get("link").asText()) + } "send-telemetry" -> { val source = node.get("source") val module = node.get("module") diff --git a/plugins/amazonq/mynah-ui/package-lock.json b/plugins/amazonq/mynah-ui/package-lock.json index 731c775f8f..21c9b97867 100644 --- a/plugins/amazonq/mynah-ui/package-lock.json +++ b/plugins/amazonq/mynah-ui/package-lock.json @@ -9,7 +9,7 @@ "version": "1.0.0", "license": "ISC", "dependencies": { - "@aws/mynah-ui-chat": "npm:@aws/mynah-ui@4.21.6", + "@aws/mynah-ui-chat": "npm:@aws/mynah-ui@4.22.0", "@types/node": "^14.18.5", "fs-extra": "^10.0.1", "sanitize-html": "^2.12.1", @@ -57,9 +57,9 @@ }, "node_modules/@aws/mynah-ui-chat": { "name": "@aws/mynah-ui", - "version": "4.21.6", - "resolved": "https://registry.npmjs.org/@aws/mynah-ui/-/mynah-ui-4.21.6.tgz", - "integrity": "sha512-SpWY997696aMDPwbiBqwkBXUCrguDQsJ3RukmgafjAlQuBJAQTIaVAj4GfsEwuTLOsBNR7CJIj9XxhtDo7PvJQ==", + "version": "4.22.0", + "resolved": "https://registry.npmjs.org/@aws/mynah-ui/-/mynah-ui-4.22.0.tgz", + "integrity": "sha512-uZ7ULKyt5z5NEyI96XpAIPnp5XHPcXVAsZOZ3gICb/KEsHkU/L3ZgNsi7V98Svcqn8WTquRiVoFyJ6FAznvvMQ==", "hasInstallScript": true, "license": "Apache License 2.0", "dependencies": { diff --git a/plugins/amazonq/mynah-ui/package.json b/plugins/amazonq/mynah-ui/package.json index 7da0399d0a..1c53af4fe4 100644 --- a/plugins/amazonq/mynah-ui/package.json +++ b/plugins/amazonq/mynah-ui/package.json @@ -12,7 +12,7 @@ "lintfix": "eslint -c .eslintrc.js --fix --ext .ts ." }, "dependencies": { - "@aws/mynah-ui-chat": "npm:@aws/mynah-ui@4.21.6", + "@aws/mynah-ui-chat": "npm:@aws/mynah-ui@4.22.0", "@types/node": "^14.18.5", "fs-extra": "^10.0.1", "sanitize-html": "^2.12.1", diff --git a/plugins/amazonq/mynah-ui/src/mynah-ui/ui/commands.ts b/plugins/amazonq/mynah-ui/src/mynah-ui/ui/commands.ts index 5df19981b3..2c246b6d88 100644 --- a/plugins/amazonq/mynah-ui/src/mynah-ui/ui/commands.ts +++ b/plugins/amazonq/mynah-ui/src/mynah-ui/ui/commands.ts @@ -61,6 +61,7 @@ type MessageCommand = | 'generate-test' | 'start-test-gen' | 'open-user-guide' + | 'open-form-link' | 'send-telemetry' | 'doc_stop_generate' | 'updatePromptProgress' diff --git a/plugins/amazonq/mynah-ui/src/mynah-ui/ui/connector.ts b/plugins/amazonq/mynah-ui/src/mynah-ui/ui/connector.ts index 3405a59f32..b2f72b40bf 100644 --- a/plugins/amazonq/mynah-ui/src/mynah-ui/ui/connector.ts +++ b/plugins/amazonq/mynah-ui/src/mynah-ui/ui/connector.ts @@ -133,6 +133,13 @@ export class Connector { } } + onFormLinkClick = (link: string): void => { + this.sendMessageToExtension({ + command: 'open-form-link', + link, + }) + } + onResponseBodyLinkClick = (tabID: string, messageId: string, link: string): void => { switch (this.tabsStorage.getTab(tabID)?.type) { case 'cwc': diff --git a/plugins/amazonq/mynah-ui/src/mynah-ui/ui/main.ts b/plugins/amazonq/mynah-ui/src/mynah-ui/ui/main.ts index 685c496d1a..727eacb05c 100644 --- a/plugins/amazonq/mynah-ui/src/mynah-ui/ui/main.ts +++ b/plugins/amazonq/mynah-ui/src/mynah-ui/ui/main.ts @@ -677,6 +677,12 @@ export const createMynahUI = ( mouseEvent?.stopImmediatePropagation() connector.onResponseBodyLinkClick(tabId, messageId, link) }, + onFormLinkClick: (link, mouseEvent) => { + mouseEvent?.preventDefault() + mouseEvent?.stopPropagation() + mouseEvent?.stopImmediatePropagation() + connector.onFormLinkClick(link) + }, onInfoLinkClick: (tabId: string, link: string, mouseEvent?: MouseEvent) => { mouseEvent?.preventDefault() mouseEvent?.stopPropagation() diff --git a/plugins/amazonq/mynah-ui/src/mynah-ui/ui/texts/constants.ts b/plugins/amazonq/mynah-ui/src/mynah-ui/ui/texts/constants.ts index 9c6c6dbc9a..6c01d87b38 100644 --- a/plugins/amazonq/mynah-ui/src/mynah-ui/ui/texts/constants.ts +++ b/plugins/amazonq/mynah-ui/src/mynah-ui/ui/texts/constants.ts @@ -8,6 +8,8 @@ export const uiComponentsTexts = { copy: 'Copy', insertAtCursorLabel: 'Insert at cursor', feedbackFormTitle: 'Report an issue', + feedbackFormDescription: + '_Feedback is anonymous. For issue updates, please contact us on [GitHub](https://github.com/aws/aws-toolkit-jetbrains/issues/new/choose)._', feedbackFormOptionsLabel: 'What type of issue would you like to report?', feedbackFormCommentLabel: 'Description of issue (optional):', feedbackThanks: 'Thanks for your feedback!', From a6673aa005f0e2a56fe79533aa3c2998de40dedf Mon Sep 17 00:00:00 2001 From: Dogus Atasoy Date: Mon, 3 Feb 2025 20:08:30 +0100 Subject: [PATCH 2/3] updated open-user-guide and open-form-link combined to open-link --- .../jetbrains/services/amazonq/webview/BrowserConnector.kt | 5 +---- .../mynah-ui/src/mynah-ui/ui/apps/amazonqCommonsConnector.ts | 4 ++-- plugins/amazonq/mynah-ui/src/mynah-ui/ui/commands.ts | 3 +-- plugins/amazonq/mynah-ui/src/mynah-ui/ui/connector.ts | 4 ++-- plugins/amazonq/mynah-ui/src/mynah-ui/ui/main.ts | 2 +- 5 files changed, 7 insertions(+), 11 deletions(-) diff --git a/plugins/amazonq/chat/jetbrains-community/src/software/aws/toolkits/jetbrains/services/amazonq/webview/BrowserConnector.kt b/plugins/amazonq/chat/jetbrains-community/src/software/aws/toolkits/jetbrains/services/amazonq/webview/BrowserConnector.kt index dbd7ceb998..e0bfdce708 100644 --- a/plugins/amazonq/chat/jetbrains-community/src/software/aws/toolkits/jetbrains/services/amazonq/webview/BrowserConnector.kt +++ b/plugins/amazonq/chat/jetbrains-community/src/software/aws/toolkits/jetbrains/services/amazonq/webview/BrowserConnector.kt @@ -54,10 +54,7 @@ class BrowserConnector( } // some weird issue preventing deserialization from working - "open-user-guide" -> { - BrowserUtil.browse(node.get("userGuideLink").asText()) - } - "open-form-link" -> { + "open-link" -> { BrowserUtil.browse(node.get("link").asText()) } "send-telemetry" -> { diff --git a/plugins/amazonq/mynah-ui/src/mynah-ui/ui/apps/amazonqCommonsConnector.ts b/plugins/amazonq/mynah-ui/src/mynah-ui/ui/apps/amazonqCommonsConnector.ts index 9fb0d54c9a..37c39253f5 100644 --- a/plugins/amazonq/mynah-ui/src/mynah-ui/ui/apps/amazonqCommonsConnector.ts +++ b/plugins/amazonq/mynah-ui/src/mynah-ui/ui/apps/amazonqCommonsConnector.ts @@ -107,8 +107,8 @@ export class Connector { this.sendMessageToExtension(createClickTelemetry(`amazonq-explore-${actionId}`)) this.sendMessageToExtension({ - command: 'open-user-guide', - userGuideLink, + command: 'open-link', + link: userGuideLink, }) } } diff --git a/plugins/amazonq/mynah-ui/src/mynah-ui/ui/commands.ts b/plugins/amazonq/mynah-ui/src/mynah-ui/ui/commands.ts index 2c246b6d88..f7818a83f4 100644 --- a/plugins/amazonq/mynah-ui/src/mynah-ui/ui/commands.ts +++ b/plugins/amazonq/mynah-ui/src/mynah-ui/ui/commands.ts @@ -60,8 +60,7 @@ type MessageCommand = | 'codescan_open_issues' | 'generate-test' | 'start-test-gen' - | 'open-user-guide' - | 'open-form-link' + | 'open-link' | 'send-telemetry' | 'doc_stop_generate' | 'updatePromptProgress' diff --git a/plugins/amazonq/mynah-ui/src/mynah-ui/ui/connector.ts b/plugins/amazonq/mynah-ui/src/mynah-ui/ui/connector.ts index b2f72b40bf..dd2f4589be 100644 --- a/plugins/amazonq/mynah-ui/src/mynah-ui/ui/connector.ts +++ b/plugins/amazonq/mynah-ui/src/mynah-ui/ui/connector.ts @@ -133,9 +133,9 @@ export class Connector { } } - onFormLinkClick = (link: string): void => { + onLinkClick = (link: string): void => { this.sendMessageToExtension({ - command: 'open-form-link', + command: 'open-link', link, }) } diff --git a/plugins/amazonq/mynah-ui/src/mynah-ui/ui/main.ts b/plugins/amazonq/mynah-ui/src/mynah-ui/ui/main.ts index 727eacb05c..bb3cd397cf 100644 --- a/plugins/amazonq/mynah-ui/src/mynah-ui/ui/main.ts +++ b/plugins/amazonq/mynah-ui/src/mynah-ui/ui/main.ts @@ -681,7 +681,7 @@ export const createMynahUI = ( mouseEvent?.preventDefault() mouseEvent?.stopPropagation() mouseEvent?.stopImmediatePropagation() - connector.onFormLinkClick(link) + connector.onLinkClick(link) }, onInfoLinkClick: (tabId: string, link: string, mouseEvent?: MouseEvent) => { mouseEvent?.preventDefault() From 9c632b540918f28e432d07165f3c79e192ace9b3 Mon Sep 17 00:00:00 2001 From: Dogus Atasoy Date: Mon, 3 Feb 2025 20:19:13 +0100 Subject: [PATCH 3/3] updated mynah-ui verson --- plugins/amazonq/mynah-ui/package-lock.json | 8 ++++---- plugins/amazonq/mynah-ui/package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/plugins/amazonq/mynah-ui/package-lock.json b/plugins/amazonq/mynah-ui/package-lock.json index 21c9b97867..1849ee5a11 100644 --- a/plugins/amazonq/mynah-ui/package-lock.json +++ b/plugins/amazonq/mynah-ui/package-lock.json @@ -9,7 +9,7 @@ "version": "1.0.0", "license": "ISC", "dependencies": { - "@aws/mynah-ui-chat": "npm:@aws/mynah-ui@4.22.0", + "@aws/mynah-ui-chat": "npm:@aws/mynah-ui@4.22.1", "@types/node": "^14.18.5", "fs-extra": "^10.0.1", "sanitize-html": "^2.12.1", @@ -57,9 +57,9 @@ }, "node_modules/@aws/mynah-ui-chat": { "name": "@aws/mynah-ui", - "version": "4.22.0", - "resolved": "https://registry.npmjs.org/@aws/mynah-ui/-/mynah-ui-4.22.0.tgz", - "integrity": "sha512-uZ7ULKyt5z5NEyI96XpAIPnp5XHPcXVAsZOZ3gICb/KEsHkU/L3ZgNsi7V98Svcqn8WTquRiVoFyJ6FAznvvMQ==", + "version": "4.22.1", + "resolved": "https://registry.npmjs.org/@aws/mynah-ui/-/mynah-ui-4.22.1.tgz", + "integrity": "sha512-6mWD5Fp4VDVSKIv3sRKopoeh3GeiXEp2gWXmUWSVE9ccnnnavPyKSebV6vJiHJHtuS1da7i6ZLVednpsV9I49Q==", "hasInstallScript": true, "license": "Apache License 2.0", "dependencies": { diff --git a/plugins/amazonq/mynah-ui/package.json b/plugins/amazonq/mynah-ui/package.json index 1c53af4fe4..591190cfc3 100644 --- a/plugins/amazonq/mynah-ui/package.json +++ b/plugins/amazonq/mynah-ui/package.json @@ -12,7 +12,7 @@ "lintfix": "eslint -c .eslintrc.js --fix --ext .ts ." }, "dependencies": { - "@aws/mynah-ui-chat": "npm:@aws/mynah-ui@4.22.0", + "@aws/mynah-ui-chat": "npm:@aws/mynah-ui@4.22.1", "@types/node": "^14.18.5", "fs-extra": "^10.0.1", "sanitize-html": "^2.12.1",