Commit 4ce79349 by David Kaltschmidt

Explore: return to grid layout for logs table

- better column control than flexbox
- increased gutter and row spacing
parent 70eedc1f
...@@ -91,7 +91,7 @@ interface RowProps { ...@@ -91,7 +91,7 @@ interface RowProps {
function Row({ onClickLabel, row, showLabels, showLocalTime, showUtc }: RowProps) { function Row({ onClickLabel, row, showLabels, showLocalTime, showUtc }: RowProps) {
const needsHighlighter = row.searchWords && row.searchWords.length > 0; const needsHighlighter = row.searchWords && row.searchWords.length > 0;
return ( return (
<div className="logs-row"> <>
<div className={row.logLevel ? `logs-row-level logs-row-level-${row.logLevel}` : ''}> <div className={row.logLevel ? `logs-row-level logs-row-level-${row.logLevel}` : ''}>
{row.duplicates > 0 && ( {row.duplicates > 0 && (
<div className="logs-row-level__duplicates" title={`${row.duplicates} duplicates`}> <div className="logs-row-level__duplicates" title={`${row.duplicates} duplicates`}>
...@@ -128,7 +128,7 @@ function Row({ onClickLabel, row, showLabels, showLocalTime, showUtc }: RowProps ...@@ -128,7 +128,7 @@ function Row({ onClickLabel, row, showLabels, showLocalTime, showUtc }: RowProps
row.entry row.entry
)} )}
</div> </div>
</div> </>
); );
} }
...@@ -270,6 +270,22 @@ export default class Logs extends PureComponent<LogsProps, LogsState> { ...@@ -270,6 +270,22 @@ export default class Logs extends PureComponent<LogsProps, LogsState> {
} }
} }
// Grid options
const cssColumnSizes = ['3px']; // Log-level indicator line
if (showUtc) {
cssColumnSizes.push('minmax(100px, max-content)');
}
if (showLocalTime) {
cssColumnSizes.push('minmax(100px, max-content)');
}
if (showLabels) {
cssColumnSizes.push('fit-content(20%)');
}
cssColumnSizes.push('1fr');
const logEntriesStyle = {
gridTemplateColumns: cssColumnSizes.join(' '),
};
const scanText = scanRange ? `Scanning ${rangeUtil.describeTimeRange(scanRange)}` : 'Scanning...'; const scanText = scanRange ? `Scanning ${rangeUtil.describeTimeRange(scanRange)}` : 'Scanning...';
return ( return (
...@@ -329,7 +345,7 @@ export default class Logs extends PureComponent<LogsProps, LogsState> { ...@@ -329,7 +345,7 @@ export default class Logs extends PureComponent<LogsProps, LogsState> {
</div> </div>
</div> </div>
<div className="logs-entries"> <div className="logs-entries" style={logEntriesStyle}>
{hasData && {hasData &&
!deferLogs && !deferLogs &&
firstRows.map(row => ( firstRows.map(row => (
......
...@@ -294,31 +294,13 @@ ...@@ -294,31 +294,13 @@
} }
.logs-entries { .logs-entries {
display: grid;
grid-column-gap: 1rem;
grid-row-gap: 0.1rem;
font-family: $font-family-monospace; font-family: $font-family-monospace;
font-size: 12px; font-size: 12px;
} }
.logs-row {
display: flex;
flex-direction: row;
> div + div {
margin-left: 0.5rem;
}
}
.logs-row-level {
width: 3px;
}
.logs-row-labels {
flex: 0 0 25%;
}
.logs-row-message {
flex: 1;
}
.logs-row-match-highlight { .logs-row-match-highlight {
// Undoing mark styling // Undoing mark styling
background: inherit; background: inherit;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment