From 432a20918429caab13f87a000411a54e93e6bd0b Mon Sep 17 00:00:00 2001 From: Anthony Dresser Date: Mon, 10 Sep 2018 14:58:51 -0700 Subject: [PATCH] fix error message formatting (#2477) --- src/sql/parts/query/editor/media/messagePanel.css | 7 ++++++- src/sql/parts/query/editor/messagePanel.ts | 13 ++++++++++--- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/src/sql/parts/query/editor/media/messagePanel.css b/src/sql/parts/query/editor/media/messagePanel.css index bf1b20c343..31a8324ca5 100644 --- a/src/sql/parts/query/editor/media/messagePanel.css +++ b/src/sql/parts/query/editor/media/messagePanel.css @@ -19,7 +19,8 @@ } .message-tree .message, -.message-tree .batch-start { +.message-tree .batch-start, +.message-tree .error-message { display: inline-block; } @@ -27,6 +28,10 @@ text-decoration: underline; } +.message-tree .error-message { + color: red; +} + .message-tree .batch-start:hover { color: red; } diff --git a/src/sql/parts/query/editor/messagePanel.ts b/src/sql/parts/query/editor/messagePanel.ts index f7bcc08b5d..09273aa121 100644 --- a/src/sql/parts/query/editor/messagePanel.ts +++ b/src/sql/parts/query/editor/messagePanel.ts @@ -56,7 +56,8 @@ interface IBatchTemplate extends IMessageTemplate { const TemplateIds = { MESSAGE: 'message', BATCH: 'batch', - MODEL: 'model' + MODEL: 'model', + ERROR: 'error' }; export class MessagePanel extends ViewletPanel { @@ -176,6 +177,8 @@ class MessageRenderer implements IRenderer { return TemplateIds.MODEL; } else if (element.selection) { return TemplateIds.BATCH; + } else if (element.isError) { + return TemplateIds.ERROR; } else { return TemplateIds.MESSAGE; } @@ -191,15 +194,19 @@ class MessageRenderer implements IRenderer { const timeStamp = $('div.time-stamp').appendTo(container).getHTMLElement(); const message = $('div.batch-start').appendTo(container).getHTMLElement(); return { message, timeStamp }; + } else if (templateId === TemplateIds.ERROR) { + $('div.time-stamp').appendTo(container); + const message = $('div.error-message').appendTo(container).getHTMLElement(); + return { message }; } else { return undefined; } } renderElement(tree: ITree, element: IResultMessage, templateId: string, templateData: IMessageTemplate | IBatchTemplate): void { - if (templateId === TemplateIds.MESSAGE) { + if (templateId === TemplateIds.MESSAGE || templateId === TemplateIds.ERROR) { let data: IMessageTemplate = templateData; - data.message.innerText = element.message; + data.message.innerText = element.message.replace(/(\r\n|\n|\r)/g, ' '); } else if (templateId === TemplateIds.BATCH) { let data = templateData as IBatchTemplate; data.timeStamp.innerText = element.time;