1283712 - Part 11.1: Show notes in devtools console.

This commit is contained in:
Gaming4JC 2019-06-09 14:52:19 -04:00 committed by Roy Tam
commit 9f71d02fcf
7 changed files with 87 additions and 4 deletions

View file

@ -47,6 +47,10 @@ const Message = createClass({
onViewSourceInDebugger: PropTypes.func.isRequired,
sourceMapService: PropTypes.any,
}),
notes: PropTypes.arrayOf(PropTypes.shape({
messageBody: PropTypes.string.isRequired,
frame: PropTypes.any,
})),
},
getDefaultProps: function () {
@ -90,6 +94,7 @@ const Message = createClass({
serviceContainer,
dispatch,
exceptionDocURL,
notes,
} = this.props;
topLevelClasses.push("message", source, type, level);
@ -127,6 +132,29 @@ const Message = createClass({
});
}
let notesNodes;
if (notes) {
notes.map(note => dom.span(
{ className: "message-flex-body error-note" },
dom.span({ className: "message-body devtools-monospace" },
"note: " + note.messageBody
),
dom.span({ className: "message-location devtools-monospace" },
note.frame ? FrameView({
frame: note.frame,
onClick: serviceContainer
? serviceContainer.onViewSourceInDebugger
: undefined,
showEmptyPathAsHost: true,
sourceMapService: serviceContainer
? serviceContainer.sourceMapService
: undefined
}) : null
)));
} else {
notesNodes = [];
}
const repeat = this.props.repeat ? MessageRepeat({repeat: this.props.repeat}) : null;
// Configure the location.
@ -167,7 +195,8 @@ const Message = createClass({
repeat,
location
),
attachment
attachment,
...notesNodes
)
);
}