Add custom behavior to the CellTruncationProvider
The CellTruncationProvider could only show raw text in a dialog
because it only had access to generated DOM, instead of react elements. This
diff adds an event handler to the CellTruncationProvider to allow for customized
expansion behavior (when a user clicks on 'View Full Message').
This diff pushes the CellTruncationProvider down into a new <LogsRow />
component, which has branching behavior based on the event node type. The
original structured content rendering logic was extracted into a separate
component (LogsRowStructuredContent), so we can render the exact same content
in the truncated table view as well as the unabridged modal view.
CellTruncationProvider becomes a little more generic (no longer tied to the
structure of the rendered DOM) at the expense of forcing each event type to
consider the truncated view flow.
Rendered Unstructured, Failure, Materialization events, resized window,
triggered the 'View Full Message' link.
Reviewers: #ft, bengotow
Reviewed By: bengotow
Differential Revision: https://dagster.phacility.com/D819