From 2c05b07ee44bb2b781864a18c0bceb510b566a07 Mon Sep 17 00:00:00 2001 From: Chris LaFreniere <40371649+chlafreniere@users.noreply.github.com> Date: Thu, 26 Mar 2020 13:03:51 -0700 Subject: [PATCH] Fix Notebook Tokenization Warnings (#9725) * Change html table serialization to array * PR feedback * rename variable --- .../notebook/browser/sql/sqlSessionManager.ts | 28 +++++++++++-------- 1 file changed, 17 insertions(+), 11 deletions(-) diff --git a/src/sql/workbench/services/notebook/browser/sql/sqlSessionManager.ts b/src/sql/workbench/services/notebook/browser/sql/sqlSessionManager.ts index fc5476c4a3..f653d6f34e 100644 --- a/src/sql/workbench/services/notebook/browser/sql/sqlSessionManager.ts +++ b/src/sql/workbench/services/notebook/browser/sql/sqlSessionManager.ts @@ -579,24 +579,30 @@ export class SQLFuture extends Disposable implements FutureInternal { }; } - private convertToHtmlTable(columns: IDbColumn[], d: QueryExecuteSubsetResult): string { - let htmlString = ''; + private convertToHtmlTable(columns: IDbColumn[], d: QueryExecuteSubsetResult): string[] { + // Adding 3 for
, column title rows,
+ let htmlStringArr: string[] = new Array(d.resultSubset.rowCount + 3); + htmlStringArr[0] = ''; if (columns.length > 0) { - htmlString += ''; + let columnHeaders = ''; for (let column of columns) { - htmlString += ''; + columnHeaders += ``; } - htmlString += ''; + columnHeaders += ''; + htmlStringArr[1] = columnHeaders; } + let i = 2; for (const row of d.resultSubset.rows) { - htmlString += ''; - for (let i = 0; i < columns.length; i++) { - htmlString += ''; + let rowData = ''; + for (let columnIndex = 0; columnIndex < columns.length; columnIndex++) { + rowData += ``; } - htmlString += ''; + rowData += ''; + htmlStringArr[i] = rowData; + i++; } - htmlString += '
' + escape(column.columnName) + '${escape(column.columnName)}
' + escape(row[i].displayValue) + '
${escape(row[columnIndex].displayValue)}
'; - return htmlString; + htmlStringArr[htmlStringArr.length - 1] = ''; + return htmlStringArr; } private convertToDisplayMessage(msg: IResultMessage | string): nb.IIOPubMessage {