Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(936)

Side by Side Diff: third_party/WebKit/Source/devtools/front_end/console/ConsoleViewMessage.js

Issue 2751193003: [DevTools] Move ConsoleModel to it's own module (Closed)
Patch Set: Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2011 Google Inc. All rights reserved. 2 * Copyright (C) 2011 Google Inc. All rights reserved.
3 * Copyright (C) 2007, 2008 Apple Inc. All rights reserved. 3 * Copyright (C) 2007, 2008 Apple Inc. All rights reserved.
4 * Copyright (C) 2009 Joseph Pecoraro 4 * Copyright (C) 2009 Joseph Pecoraro
5 * 5 *
6 * Redistribution and use in source and binary forms, with or without 6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions 7 * modification, are permitted provided that the following conditions
8 * are met: 8 * are met:
9 * 9 *
10 * 1. Redistributions of source code must retain the above copyright 10 * 1. Redistributions of source code must retain the above copyright
(...skipping 15 matching lines...) Expand all
26 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 26 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
28 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 */ 29 */
30 /** 30 /**
31 * @implements {Console.ConsoleViewportElement} 31 * @implements {Console.ConsoleViewportElement}
32 * @unrestricted 32 * @unrestricted
33 */ 33 */
34 Console.ConsoleViewMessage = class { 34 Console.ConsoleViewMessage = class {
35 /** 35 /**
36 * @param {!SDK.ConsoleMessage} consoleMessage 36 * @param {!ConsoleModel.ConsoleMessage} consoleMessage
37 * @param {!Components.Linkifier} linkifier 37 * @param {!Components.Linkifier} linkifier
38 * @param {number} nestingLevel 38 * @param {number} nestingLevel
39 */ 39 */
40 constructor(consoleMessage, linkifier, nestingLevel) { 40 constructor(consoleMessage, linkifier, nestingLevel) {
41 this._message = consoleMessage; 41 this._message = consoleMessage;
42 this._linkifier = linkifier; 42 this._linkifier = linkifier;
43 this._repeatCount = 1; 43 this._repeatCount = 1;
44 this._closeGroupDecorationCount = 0; 44 this._closeGroupDecorationCount = 0;
45 this._nestingLevel = nestingLevel; 45 this._nestingLevel = nestingLevel;
46 46
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
93 93
94 /** 94 /**
95 * @return {number} 95 * @return {number}
96 */ 96 */
97 fastHeight() { 97 fastHeight() {
98 if (this._cachedHeight) 98 if (this._cachedHeight)
99 return this._cachedHeight; 99 return this._cachedHeight;
100 // This value reflects the 18px min-height of .console-message, plus the 100 // This value reflects the 18px min-height of .console-message, plus the
101 // 1px border of .console-message-wrapper. Keep in sync with consoleView.css . 101 // 1px border of .console-message-wrapper. Keep in sync with consoleView.css .
102 const defaultConsoleRowHeight = 19; 102 const defaultConsoleRowHeight = 19;
103 if (this._message.type === SDK.ConsoleMessage.MessageType.Table) { 103 if (this._message.type === ConsoleModel.ConsoleMessage.MessageType.Table) {
104 var table = this._message.parameters[0]; 104 var table = this._message.parameters[0];
105 if (table && table.preview) 105 if (table && table.preview)
106 return defaultConsoleRowHeight * table.preview.properties.length; 106 return defaultConsoleRowHeight * table.preview.properties.length;
107 } 107 }
108 return defaultConsoleRowHeight; 108 return defaultConsoleRowHeight;
109 } 109 }
110 110
111 /** 111 /**
112 * @return {!SDK.ConsoleMessage} 112 * @return {!ConsoleModel.ConsoleMessage}
113 */ 113 */
114 consoleMessage() { 114 consoleMessage() {
115 return this._message; 115 return this._message;
116 } 116 }
117 117
118 /** 118 /**
119 * @param {!SDK.ConsoleMessage} consoleMessage 119 * @param {!ConsoleModel.ConsoleMessage} consoleMessage
120 * @return {!Element} 120 * @return {!Element}
121 */ 121 */
122 _buildTableMessage(consoleMessage) { 122 _buildTableMessage(consoleMessage) {
123 var formattedMessage = createElement('span'); 123 var formattedMessage = createElement('span');
124 UI.appendStyle(formattedMessage, 'object_ui/objectValue.css'); 124 UI.appendStyle(formattedMessage, 'object_ui/objectValue.css');
125 formattedMessage.className = 'source-code'; 125 formattedMessage.className = 'source-code';
126 var anchorElement = this._buildMessageAnchor(consoleMessage); 126 var anchorElement = this._buildMessageAnchor(consoleMessage);
127 if (anchorElement) 127 if (anchorElement)
128 formattedMessage.appendChild(anchorElement); 128 formattedMessage.appendChild(anchorElement);
129 129
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
181 var dataGridContainer = tableElement.createChild('span'); 181 var dataGridContainer = tableElement.createChild('span');
182 tableElement.appendChild(this._formatParameter(table, true, false)); 182 tableElement.appendChild(this._formatParameter(table, true, false));
183 dataGridContainer.appendChild(this._dataGrid.element); 183 dataGridContainer.appendChild(this._dataGrid.element);
184 formattedMessage.appendChild(formattedResult); 184 formattedMessage.appendChild(formattedResult);
185 this._dataGrid.renderInline(); 185 this._dataGrid.renderInline();
186 } 186 }
187 return formattedMessage; 187 return formattedMessage;
188 } 188 }
189 189
190 /** 190 /**
191 * @param {!SDK.ConsoleMessage} consoleMessage 191 * @param {!ConsoleModel.ConsoleMessage} consoleMessage
192 * @return {!Element} 192 * @return {!Element}
193 */ 193 */
194 _buildMessage(consoleMessage) { 194 _buildMessage(consoleMessage) {
195 var messageElement; 195 var messageElement;
196 var messageText = consoleMessage.messageText; 196 var messageText = consoleMessage.messageText;
197 if (consoleMessage.source === SDK.ConsoleMessage.MessageSource.ConsoleAPI) { 197 if (consoleMessage.source === ConsoleModel.ConsoleMessage.MessageSource.Cons oleAPI) {
198 switch (consoleMessage.type) { 198 switch (consoleMessage.type) {
199 case SDK.ConsoleMessage.MessageType.Trace: 199 case ConsoleModel.ConsoleMessage.MessageType.Trace:
200 messageElement = this._format(consoleMessage.parameters || ['console.t race']); 200 messageElement = this._format(consoleMessage.parameters || ['console.t race']);
201 break; 201 break;
202 case SDK.ConsoleMessage.MessageType.Clear: 202 case ConsoleModel.ConsoleMessage.MessageType.Clear:
203 messageElement = createElementWithClass('span', 'console-info'); 203 messageElement = createElementWithClass('span', 'console-info');
204 messageElement.textContent = Common.UIString('Console was cleared'); 204 messageElement.textContent = Common.UIString('Console was cleared');
205 break; 205 break;
206 case SDK.ConsoleMessage.MessageType.Assert: 206 case ConsoleModel.ConsoleMessage.MessageType.Assert:
207 var args = [Common.UIString('Assertion failed:')]; 207 var args = [Common.UIString('Assertion failed:')];
208 if (consoleMessage.parameters) 208 if (consoleMessage.parameters)
209 args = args.concat(consoleMessage.parameters); 209 args = args.concat(consoleMessage.parameters);
210 messageElement = this._format(args); 210 messageElement = this._format(args);
211 break; 211 break;
212 case SDK.ConsoleMessage.MessageType.Dir: 212 case ConsoleModel.ConsoleMessage.MessageType.Dir:
213 var obj = consoleMessage.parameters ? consoleMessage.parameters[0] : u ndefined; 213 var obj = consoleMessage.parameters ? consoleMessage.parameters[0] : u ndefined;
214 var args = ['%O', obj]; 214 var args = ['%O', obj];
215 messageElement = this._format(args); 215 messageElement = this._format(args);
216 break; 216 break;
217 case SDK.ConsoleMessage.MessageType.Profile: 217 case ConsoleModel.ConsoleMessage.MessageType.Profile:
218 case SDK.ConsoleMessage.MessageType.ProfileEnd: 218 case ConsoleModel.ConsoleMessage.MessageType.ProfileEnd:
219 messageElement = this._format([messageText]); 219 messageElement = this._format([messageText]);
220 break; 220 break;
221 default: 221 default:
222 if (consoleMessage.parameters && consoleMessage.parameters.length === 1 && 222 if (consoleMessage.parameters && consoleMessage.parameters.length === 1 &&
223 consoleMessage.parameters[0].type === 'string') 223 consoleMessage.parameters[0].type === 'string')
224 messageElement = this._tryFormatAsError(/** @type {string} */ (conso leMessage.parameters[0].value)); 224 messageElement = this._tryFormatAsError(/** @type {string} */ (conso leMessage.parameters[0].value));
225 var args = consoleMessage.parameters || [messageText]; 225 var args = consoleMessage.parameters || [messageText];
226 messageElement = messageElement || this._format(args); 226 messageElement = messageElement || this._format(args);
227 } 227 }
228 } else if (consoleMessage.source === SDK.ConsoleMessage.MessageSource.Networ k) { 228 } else if (consoleMessage.source === ConsoleModel.ConsoleMessage.MessageSour ce.Network) {
229 if (consoleMessage.request) { 229 if (consoleMessage.request) {
230 messageElement = createElement('span'); 230 messageElement = createElement('span');
231 if (consoleMessage.level === SDK.ConsoleMessage.MessageLevel.Error) { 231 if (consoleMessage.level === ConsoleModel.ConsoleMessage.MessageLevel.Er ror) {
232 messageElement.createTextChild(consoleMessage.request.requestMethod + ' '); 232 messageElement.createTextChild(consoleMessage.request.requestMethod + ' ');
233 messageElement.appendChild(Components.Linkifier.linkifyRevealable( 233 messageElement.appendChild(Components.Linkifier.linkifyRevealable(
234 consoleMessage.request, consoleMessage.request.url(), consoleMessa ge.request.url())); 234 consoleMessage.request, consoleMessage.request.url(), consoleMessa ge.request.url()));
235 if (consoleMessage.request.failed) { 235 if (consoleMessage.request.failed) {
236 messageElement.createTextChildren(' ', consoleMessage.request.locali zedFailDescription); 236 messageElement.createTextChildren(' ', consoleMessage.request.locali zedFailDescription);
237 } else { 237 } else {
238 messageElement.createTextChildren( 238 messageElement.createTextChildren(
239 ' ', String(consoleMessage.request.statusCode), ' (', consoleMes sage.request.statusText, ')'); 239 ' ', String(consoleMessage.request.statusCode), ' (', consoleMes sage.request.statusText, ')');
240 } 240 }
241 } else { 241 } else {
242 var fragment = 242 var fragment =
243 Components.linkifyStringAsFragmentWithCustomLinkifier(messageText, linkifyRequest.bind(consoleMessage)); 243 Components.linkifyStringAsFragmentWithCustomLinkifier(messageText, linkifyRequest.bind(consoleMessage));
244 messageElement.appendChild(fragment); 244 messageElement.appendChild(fragment);
245 } 245 }
246 } else { 246 } else {
247 messageElement = this._format([messageText]); 247 messageElement = this._format([messageText]);
248 } 248 }
249 } else { 249 } else {
250 if (consoleMessage.source === SDK.ConsoleMessage.MessageSource.Violation) 250 if (consoleMessage.source === ConsoleModel.ConsoleMessage.MessageSource.Vi olation)
251 messageText = Common.UIString('[Violation] %s', messageText); 251 messageText = Common.UIString('[Violation] %s', messageText);
252 else if (consoleMessage.source === SDK.ConsoleMessage.MessageSource.Interv ention) 252 else if (consoleMessage.source === ConsoleModel.ConsoleMessage.MessageSour ce.Intervention)
253 messageText = Common.UIString('[Intervention] %s', messageText); 253 messageText = Common.UIString('[Intervention] %s', messageText);
254 if (consoleMessage.source === SDK.ConsoleMessage.MessageSource.Deprecation ) 254 if (consoleMessage.source === ConsoleModel.ConsoleMessage.MessageSource.De precation)
255 messageText = Common.UIString('[Deprecation] %s', messageText); 255 messageText = Common.UIString('[Deprecation] %s', messageText);
256 var args = consoleMessage.parameters || [messageText]; 256 var args = consoleMessage.parameters || [messageText];
257 messageElement = this._format(args); 257 messageElement = this._format(args);
258 } 258 }
259 messageElement.classList.add('console-message-text'); 259 messageElement.classList.add('console-message-text');
260 260
261 var formattedMessage = createElement('span'); 261 var formattedMessage = createElement('span');
262 UI.appendStyle(formattedMessage, 'object_ui/objectValue.css'); 262 UI.appendStyle(formattedMessage, 'object_ui/objectValue.css');
263 formattedMessage.className = 'source-code'; 263 formattedMessage.className = 'source-code';
264 264
265 var anchorElement = this._buildMessageAnchor(consoleMessage); 265 var anchorElement = this._buildMessageAnchor(consoleMessage);
266 if (anchorElement) 266 if (anchorElement)
267 formattedMessage.appendChild(anchorElement); 267 formattedMessage.appendChild(anchorElement);
268 formattedMessage.appendChild(messageElement); 268 formattedMessage.appendChild(messageElement);
269 return formattedMessage; 269 return formattedMessage;
270 270
271 /** 271 /**
272 * @param {string} title 272 * @param {string} title
273 * @return {!Element} 273 * @return {!Element}
274 * @this {SDK.ConsoleMessage} 274 * @this {ConsoleModel.ConsoleMessage}
275 */ 275 */
276 function linkifyRequest(title) { 276 function linkifyRequest(title) {
277 return Components.Linkifier.linkifyRevealable( 277 return Components.Linkifier.linkifyRevealable(
278 /** @type {!SDK.NetworkRequest} */ (this.request), title, this.request .url()); 278 /** @type {!SDK.NetworkRequest} */ (this.request), title, this.request .url());
279 } 279 }
280 } 280 }
281 281
282 /** 282 /**
283 * @param {!SDK.ConsoleMessage} consoleMessage 283 * @param {!ConsoleModel.ConsoleMessage} consoleMessage
284 * @return {?Element} 284 * @return {?Element}
285 */ 285 */
286 _buildMessageAnchor(consoleMessage) { 286 _buildMessageAnchor(consoleMessage) {
287 var anchorElement = null; 287 var anchorElement = null;
288 if (consoleMessage.source !== SDK.ConsoleMessage.MessageSource.Network || co nsoleMessage.request) { 288 if (consoleMessage.source !== ConsoleModel.ConsoleMessage.MessageSource.Netw ork || consoleMessage.request) {
289 if (consoleMessage.scriptId) { 289 if (consoleMessage.scriptId) {
290 anchorElement = this._linkifyScriptId( 290 anchorElement = this._linkifyScriptId(
291 consoleMessage.scriptId, consoleMessage.url || '', consoleMessage.li ne, consoleMessage.column); 291 consoleMessage.scriptId, consoleMessage.url || '', consoleMessage.li ne, consoleMessage.column);
292 } else if (consoleMessage.stackTrace && consoleMessage.stackTrace.callFram es.length) { 292 } else if (consoleMessage.stackTrace && consoleMessage.stackTrace.callFram es.length) {
293 anchorElement = this._linkifyStackTraceTopFrame(consoleMessage.stackTrac e); 293 anchorElement = this._linkifyStackTraceTopFrame(consoleMessage.stackTrac e);
294 } else if (consoleMessage.url && consoleMessage.url !== 'undefined') { 294 } else if (consoleMessage.url && consoleMessage.url !== 'undefined') {
295 anchorElement = this._linkifyLocation(consoleMessage.url, consoleMessage .line, consoleMessage.column); 295 anchorElement = this._linkifyLocation(consoleMessage.url, consoleMessage .line, consoleMessage.column);
296 } 296 }
297 } else if (consoleMessage.url) { 297 } else if (consoleMessage.url) {
298 anchorElement = Components.Linkifier.linkifyURL(consoleMessage.url, undefi ned); 298 anchorElement = Components.Linkifier.linkifyURL(consoleMessage.url, undefi ned);
299 } 299 }
300 300
301 // Append a space to prevent the anchor text from being glued to the console message when the user selects and copies the console messages. 301 // Append a space to prevent the anchor text from being glued to the console message when the user selects and copies the console messages.
302 if (anchorElement) { 302 if (anchorElement) {
303 var anchorWrapperElement = createElementWithClass('span', 'console-message -anchor'); 303 var anchorWrapperElement = createElementWithClass('span', 'console-message -anchor');
304 anchorWrapperElement.appendChild(anchorElement); 304 anchorWrapperElement.appendChild(anchorElement);
305 anchorWrapperElement.createTextChild(' '); 305 anchorWrapperElement.createTextChild(' ');
306 return anchorWrapperElement; 306 return anchorWrapperElement;
307 } 307 }
308 return null; 308 return null;
309 } 309 }
310 310
311 /** 311 /**
312 * @param {!SDK.ConsoleMessage} consoleMessage 312 * @param {!ConsoleModel.ConsoleMessage} consoleMessage
313 * @param {!SDK.Target} target 313 * @param {!SDK.Target} target
314 * @param {!Components.Linkifier} linkifier 314 * @param {!Components.Linkifier} linkifier
315 * @return {!Element} 315 * @return {!Element}
316 */ 316 */
317 _buildMessageWithStackTrace(consoleMessage, target, linkifier) { 317 _buildMessageWithStackTrace(consoleMessage, target, linkifier) {
318 var toggleElement = createElementWithClass('div', 'console-message-stack-tra ce-toggle'); 318 var toggleElement = createElementWithClass('div', 'console-message-stack-tra ce-toggle');
319 var contentElement = toggleElement.createChild('div', 'console-message-stack -trace-wrapper'); 319 var contentElement = toggleElement.createChild('div', 'console-message-stack -trace-wrapper');
320 320
321 var messageElement = this._buildMessage(consoleMessage); 321 var messageElement = this._buildMessage(consoleMessage);
322 var icon = UI.Icon.create('smallicon-triangle-right', 'console-message-expan d-icon'); 322 var icon = UI.Icon.create('smallicon-triangle-right', 'console-message-expan d-icon');
(...skipping 19 matching lines...) Expand all
342 * @param {?Event} event 342 * @param {?Event} event
343 */ 343 */
344 function toggleStackTrace(event) { 344 function toggleStackTrace(event) {
345 if (event.target.hasSelection()) 345 if (event.target.hasSelection())
346 return; 346 return;
347 expandStackTrace(stackTraceElement.classList.contains('hidden')); 347 expandStackTrace(stackTraceElement.classList.contains('hidden'));
348 event.consume(); 348 event.consume();
349 } 349 }
350 350
351 clickableElement.addEventListener('click', toggleStackTrace, false); 351 clickableElement.addEventListener('click', toggleStackTrace, false);
352 if (consoleMessage.type === SDK.ConsoleMessage.MessageType.Trace) 352 if (consoleMessage.type === ConsoleModel.ConsoleMessage.MessageType.Trace)
353 expandStackTrace(true); 353 expandStackTrace(true);
354 354
355 toggleElement._expandStackTraceForTest = expandStackTrace.bind(null, true); 355 toggleElement._expandStackTraceForTest = expandStackTrace.bind(null, true);
356 return toggleElement; 356 return toggleElement;
357 } 357 }
358 358
359 /** 359 /**
360 * @param {string} url 360 * @param {string} url
361 * @param {number} lineNumber 361 * @param {number} lineNumber
362 * @param {number} columnNumber 362 * @param {number} columnNumber
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after
421 421
422 // Formatting code below assumes that parameters are all wrappers whereas fr ontend console 422 // Formatting code below assumes that parameters are all wrappers whereas fr ontend console
423 // API allows passing arbitrary values as messages (strings, numbers, etc.). Wrap them here. 423 // API allows passing arbitrary values as messages (strings, numbers, etc.). Wrap them here.
424 // FIXME: Only pass runtime wrappers here. 424 // FIXME: Only pass runtime wrappers here.
425 for (var i = 0; i < parameters.length; ++i) 425 for (var i = 0; i < parameters.length; ++i)
426 parameters[i] = this._parameterToRemoteObject(parameters[i], this._target( )); 426 parameters[i] = this._parameterToRemoteObject(parameters[i], this._target( ));
427 427
428 // There can be string log and string eval result. We distinguish between th em based on message type. 428 // There can be string log and string eval result. We distinguish between th em based on message type.
429 var shouldFormatMessage = 429 var shouldFormatMessage =
430 SDK.RemoteObject.type((/** @type {!Array.<!SDK.RemoteObject>} **/ (param eters))[0]) === 'string' && 430 SDK.RemoteObject.type((/** @type {!Array.<!SDK.RemoteObject>} **/ (param eters))[0]) === 'string' &&
431 (this._message.type !== SDK.ConsoleMessage.MessageType.Result || 431 (this._message.type !== ConsoleModel.ConsoleMessage.MessageType.Result | |
432 this._message.level === SDK.ConsoleMessage.MessageLevel.Error); 432 this._message.level === ConsoleModel.ConsoleMessage.MessageLevel.Error) ;
433 433
434 // Multiple parameters with the first being a format string. Save unused sub stitutions. 434 // Multiple parameters with the first being a format string. Save unused sub stitutions.
435 if (shouldFormatMessage) { 435 if (shouldFormatMessage) {
436 var result = this._formatWithSubstitutionString( 436 var result = this._formatWithSubstitutionString(
437 /** @type {string} **/ (parameters[0].description), parameters.slice(1 ), formattedResult); 437 /** @type {string} **/ (parameters[0].description), parameters.slice(1 ), formattedResult);
438 parameters = result.unusedSubstitutions; 438 parameters = result.unusedSubstitutions;
439 if (parameters.length) 439 if (parameters.length)
440 formattedResult.createTextChild(' '); 440 formattedResult.createTextChild(' ');
441 } 441 }
442 442
(...skipping 459 matching lines...) Expand 10 before | Expand all | Expand 10 after
902 * @return {!Element} 902 * @return {!Element}
903 */ 903 */
904 contentElement() { 904 contentElement() {
905 if (this._contentElement) 905 if (this._contentElement)
906 return this._contentElement; 906 return this._contentElement;
907 907
908 var contentElement = createElementWithClass('div', 'console-message'); 908 var contentElement = createElementWithClass('div', 'console-message');
909 if (this._messageLevelIcon) 909 if (this._messageLevelIcon)
910 contentElement.appendChild(this._messageLevelIcon); 910 contentElement.appendChild(this._messageLevelIcon);
911 this._contentElement = contentElement; 911 this._contentElement = contentElement;
912 if (this._message.type === SDK.ConsoleMessage.MessageType.StartGroup || 912 if (this._message.type === ConsoleModel.ConsoleMessage.MessageType.StartGrou p ||
913 this._message.type === SDK.ConsoleMessage.MessageType.StartGroupCollapse d) 913 this._message.type === ConsoleModel.ConsoleMessage.MessageType.StartGrou pCollapsed)
914 contentElement.classList.add('console-group-title'); 914 contentElement.classList.add('console-group-title');
915 915
916 var formattedMessage; 916 var formattedMessage;
917 var consoleMessage = this._message; 917 var consoleMessage = this._message;
918 var target = consoleMessage.target(); 918 var target = consoleMessage.target();
919 var shouldIncludeTrace = 919 var shouldIncludeTrace = !!consoleMessage.stackTrace &&
920 !!consoleMessage.stackTrace && (consoleMessage.source === SDK.ConsoleMes sage.MessageSource.Network || 920 (consoleMessage.source === ConsoleModel.ConsoleMessage.MessageSource.Net work ||
921 consoleMessage.level === SDK.ConsoleMess age.MessageLevel.Error || 921 consoleMessage.level === ConsoleModel.ConsoleMessage.MessageLevel.Error ||
922 consoleMessage.type === SDK.ConsoleMessa ge.MessageType.Trace || 922 consoleMessage.type === ConsoleModel.ConsoleMessage.MessageType.Trace | |
923 consoleMessage.level === SDK.ConsoleMess age.MessageLevel.Warning); 923 consoleMessage.level === ConsoleModel.ConsoleMessage.MessageLevel.Warni ng);
924 if (target && shouldIncludeTrace) 924 if (target && shouldIncludeTrace)
925 formattedMessage = this._buildMessageWithStackTrace(consoleMessage, target , this._linkifier); 925 formattedMessage = this._buildMessageWithStackTrace(consoleMessage, target , this._linkifier);
926 else if (this._message.type === SDK.ConsoleMessage.MessageType.Table) 926 else if (this._message.type === ConsoleModel.ConsoleMessage.MessageType.Tabl e)
927 formattedMessage = this._buildTableMessage(this._message); 927 formattedMessage = this._buildTableMessage(this._message);
928 else 928 else
929 formattedMessage = this._buildMessage(consoleMessage); 929 formattedMessage = this._buildMessage(consoleMessage);
930 contentElement.appendChild(formattedMessage); 930 contentElement.appendChild(formattedMessage);
931 931
932 this.updateTimestamp(); 932 this.updateTimestamp();
933 return this._contentElement; 933 return this._contentElement;
934 } 934 }
935 935
936 /** 936 /**
(...skipping 15 matching lines...) Expand all
952 this._element.className = 'console-message-wrapper'; 952 this._element.className = 'console-message-wrapper';
953 this._element.removeChildren(); 953 this._element.removeChildren();
954 954
955 this._nestingLevelMarkers = []; 955 this._nestingLevelMarkers = [];
956 for (var i = 0; i < this._nestingLevel; ++i) 956 for (var i = 0; i < this._nestingLevel; ++i)
957 this._nestingLevelMarkers.push(this._element.createChild('div', 'nesting-l evel-marker')); 957 this._nestingLevelMarkers.push(this._element.createChild('div', 'nesting-l evel-marker'));
958 this._updateCloseGroupDecorations(); 958 this._updateCloseGroupDecorations();
959 this._element.message = this; 959 this._element.message = this;
960 960
961 switch (this._message.level) { 961 switch (this._message.level) {
962 case SDK.ConsoleMessage.MessageLevel.Verbose: 962 case ConsoleModel.ConsoleMessage.MessageLevel.Verbose:
963 this._element.classList.add('console-verbose-level'); 963 this._element.classList.add('console-verbose-level');
964 this._updateMessageLevelIcon(''); 964 this._updateMessageLevelIcon('');
965 break; 965 break;
966 case SDK.ConsoleMessage.MessageLevel.Info: 966 case ConsoleModel.ConsoleMessage.MessageLevel.Info:
967 this._element.classList.add('console-info-level'); 967 this._element.classList.add('console-info-level');
968 break; 968 break;
969 case SDK.ConsoleMessage.MessageLevel.Warning: 969 case ConsoleModel.ConsoleMessage.MessageLevel.Warning:
970 this._element.classList.add('console-warning-level'); 970 this._element.classList.add('console-warning-level');
971 this._updateMessageLevelIcon('smallicon-warning'); 971 this._updateMessageLevelIcon('smallicon-warning');
972 break; 972 break;
973 case SDK.ConsoleMessage.MessageLevel.Error: 973 case ConsoleModel.ConsoleMessage.MessageLevel.Error:
974 this._element.classList.add('console-error-level'); 974 this._element.classList.add('console-error-level');
975 this._updateMessageLevelIcon('smallicon-error'); 975 this._updateMessageLevelIcon('smallicon-error');
976 break; 976 break;
977 } 977 }
978 978
979 // Render verbose and info deprecations, interventions and violations with w arning background. 979 // Render verbose and info deprecations, interventions and violations with w arning background.
980 if (this._message.level === SDK.ConsoleMessage.MessageLevel.Verbose || 980 if (this._message.level === ConsoleModel.ConsoleMessage.MessageLevel.Verbose ||
981 this._message.level === SDK.ConsoleMessage.MessageLevel.Info) { 981 this._message.level === ConsoleModel.ConsoleMessage.MessageLevel.Info) {
982 switch (this._message.source) { 982 switch (this._message.source) {
983 case SDK.ConsoleMessage.MessageSource.Violation: 983 case ConsoleModel.ConsoleMessage.MessageSource.Violation:
984 case SDK.ConsoleMessage.MessageSource.Deprecation: 984 case ConsoleModel.ConsoleMessage.MessageSource.Deprecation:
985 case SDK.ConsoleMessage.MessageSource.Intervention: 985 case ConsoleModel.ConsoleMessage.MessageSource.Intervention:
986 this._element.classList.add('console-warning-level'); 986 this._element.classList.add('console-warning-level');
987 break; 987 break;
988 } 988 }
989 } 989 }
990 990
991 this._element.appendChild(this.contentElement()); 991 this._element.appendChild(this.contentElement());
992 if (this._repeatCount > 1) 992 if (this._repeatCount > 1)
993 this._showRepeatCountElement(); 993 this._showRepeatCountElement();
994 } 994 }
995 995
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
1030 this._showRepeatCountElement(); 1030 this._showRepeatCountElement();
1031 } 1031 }
1032 1032
1033 _showRepeatCountElement() { 1033 _showRepeatCountElement() {
1034 if (!this._element) 1034 if (!this._element)
1035 return; 1035 return;
1036 1036
1037 if (!this._repeatCountElement) { 1037 if (!this._repeatCountElement) {
1038 this._repeatCountElement = createElementWithClass('label', 'console-messag e-repeat-count', 'dt-small-bubble'); 1038 this._repeatCountElement = createElementWithClass('label', 'console-messag e-repeat-count', 'dt-small-bubble');
1039 switch (this._message.level) { 1039 switch (this._message.level) {
1040 case SDK.ConsoleMessage.MessageLevel.Warning: 1040 case ConsoleModel.ConsoleMessage.MessageLevel.Warning:
1041 this._repeatCountElement.type = 'warning'; 1041 this._repeatCountElement.type = 'warning';
1042 break; 1042 break;
1043 case SDK.ConsoleMessage.MessageLevel.Error: 1043 case ConsoleModel.ConsoleMessage.MessageLevel.Error:
1044 this._repeatCountElement.type = 'error'; 1044 this._repeatCountElement.type = 'error';
1045 break; 1045 break;
1046 case SDK.ConsoleMessage.MessageLevel.Verbose: 1046 case ConsoleModel.ConsoleMessage.MessageLevel.Verbose:
1047 this._repeatCountElement.type = 'verbose'; 1047 this._repeatCountElement.type = 'verbose';
1048 break; 1048 break;
1049 default: 1049 default:
1050 this._repeatCountElement.type = 'info'; 1050 this._repeatCountElement.type = 'info';
1051 } 1051 }
1052 this._element.insertBefore(this._repeatCountElement, this._contentElement) ; 1052 this._element.insertBefore(this._repeatCountElement, this._contentElement) ;
1053 this._contentElement.classList.add('repeated-message'); 1053 this._contentElement.classList.add('repeated-message');
1054 } 1054 }
1055 this._repeatCountElement.textContent = this._repeatCount; 1055 this._repeatCountElement.textContent = this._repeatCount;
1056 } 1056 }
(...skipping 148 matching lines...) Expand 10 before | Expand all | Expand 10 after
1205 1205
1206 return formattedResult; 1206 return formattedResult;
1207 } 1207 }
1208 }; 1208 };
1209 1209
1210 /** 1210 /**
1211 * @unrestricted 1211 * @unrestricted
1212 */ 1212 */
1213 Console.ConsoleGroupViewMessage = class extends Console.ConsoleViewMessage { 1213 Console.ConsoleGroupViewMessage = class extends Console.ConsoleViewMessage {
1214 /** 1214 /**
1215 * @param {!SDK.ConsoleMessage} consoleMessage 1215 * @param {!ConsoleModel.ConsoleMessage} consoleMessage
1216 * @param {!Components.Linkifier} linkifier 1216 * @param {!Components.Linkifier} linkifier
1217 * @param {number} nestingLevel 1217 * @param {number} nestingLevel
1218 */ 1218 */
1219 constructor(consoleMessage, linkifier, nestingLevel) { 1219 constructor(consoleMessage, linkifier, nestingLevel) {
1220 console.assert(consoleMessage.isGroupStartMessage()); 1220 console.assert(consoleMessage.isGroupStartMessage());
1221 super(consoleMessage, linkifier, nestingLevel); 1221 super(consoleMessage, linkifier, nestingLevel);
1222 this._collapsed = consoleMessage.type === SDK.ConsoleMessage.MessageType.Sta rtGroupCollapsed; 1222 this._collapsed = consoleMessage.type === ConsoleModel.ConsoleMessage.Messag eType.StartGroupCollapsed;
1223 /** @type {?UI.Icon} */ 1223 /** @type {?UI.Icon} */
1224 this._expandGroupIcon = null; 1224 this._expandGroupIcon = null;
1225 } 1225 }
1226 1226
1227 /** 1227 /**
1228 * @param {boolean} collapsed 1228 * @param {boolean} collapsed
1229 */ 1229 */
1230 setCollapsed(collapsed) { 1230 setCollapsed(collapsed) {
1231 this._collapsed = collapsed; 1231 this._collapsed = collapsed;
1232 if (this._expandGroupIcon) 1232 if (this._expandGroupIcon)
(...skipping 14 matching lines...) Expand all
1247 toMessageElement() { 1247 toMessageElement() {
1248 if (!this._element) { 1248 if (!this._element) {
1249 super.toMessageElement(); 1249 super.toMessageElement();
1250 this._expandGroupIcon = UI.Icon.create('', 'expand-group-icon'); 1250 this._expandGroupIcon = UI.Icon.create('', 'expand-group-icon');
1251 this._contentElement.insertBefore(this._expandGroupIcon, this._contentElem ent.firstChild); 1251 this._contentElement.insertBefore(this._expandGroupIcon, this._contentElem ent.firstChild);
1252 this.setCollapsed(this._collapsed); 1252 this.setCollapsed(this._collapsed);
1253 } 1253 }
1254 return this._element; 1254 return this._element;
1255 } 1255 }
1256 }; 1256 };
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698