From cf360e00544d2fb169c583e3d778c4b2da2a79fd Mon Sep 17 00:00:00 2001 From: Rachel Macfarlane Date: Wed, 14 Feb 2018 14:29:27 -0800 Subject: [PATCH] Update duplicate search endpoint in issue reporter --- .../electron-browser/issue/issueReporter.html | 3 +- .../issue/issueReporterMain.ts | 31 ++++++++++--------- 2 files changed, 17 insertions(+), 17 deletions(-) diff --git a/src/vs/code/electron-browser/issue/issueReporter.html b/src/vs/code/electron-browser/issue/issueReporter.html index b3c0a427fc7..695de78a4cb 100644 --- a/src/vs/code/electron-browser/issue/issueReporter.html +++ b/src/vs/code/electron-browser/issue/issueReporter.html @@ -4,8 +4,7 @@ - - + diff --git a/src/vs/code/electron-browser/issue/issueReporterMain.ts b/src/vs/code/electron-browser/issue/issueReporterMain.ts index c0344399ded..3c713ac474f 100644 --- a/src/vs/code/electron-browser/issue/issueReporterMain.ts +++ b/src/vs/code/electron-browser/issue/issueReporterMain.ts @@ -332,7 +332,13 @@ export class IssueReporter extends Disposable { }); document.getElementById('description').addEventListener('input', (event: Event) => { - this.issueReporterModel.update({ issueDescription: (event.target).value }); + const issueDescription = (event.target).value; + this.issueReporterModel.update({ issueDescription }); + + if (this.features.useDuplicateSearch) { + const title = (document.getElementById('issue-title')).value; + this.searchDuplicates(title, issueDescription); + } }); document.getElementById('issue-title').addEventListener('input', (e) => { this.searchIssues(e); }); @@ -423,7 +429,8 @@ export class IssueReporter extends Disposable { const title = (event.target).value; if (title) { if (this.features.useDuplicateSearch) { - this.searchDuplicates(title); + const description = this.issueReporterModel.getData().issueDescription; + this.searchDuplicates(title, description); } else { this.searchGitHub(title); } @@ -437,13 +444,14 @@ export class IssueReporter extends Disposable { similarIssues.innerHTML = ''; } - private searchDuplicates(title: string): void { - // TODO: Change to HTTPS - const url = 'http://vscode-probot.westus.cloudapp.azure.com:5010/duplicate_candidates'; + @debounce(300) + private searchDuplicates(title: string, body: string): void { + const url = 'https://vscode-probot.westus.cloudapp.azure.com:7890/duplicate_candidates'; const init = { method: 'POST', body: JSON.stringify({ - title + title, + body }), headers: new Headers({ 'Content-Type': 'application/json' @@ -455,16 +463,9 @@ export class IssueReporter extends Disposable { this.clearSearchResults(); if (result && result.candidates) { - const normalizedResults = result.candidates.map(result => { - return { - html_url: `https://github.com/Microsoft/vscode/issues/${result.number}`, - title: result.title - }; - }); - - this.displaySearchResults(normalizedResults); + this.displaySearchResults(result.candidates); } else { - throw new Error(); + throw new Error('Unexpected response, no candidates property'); } }).catch((error) => { this.logSearchError(error); -- GitLab