Merge pull request #14296 from grafana/davkal/explore-grid

Explore: return to grid layout for logs table
This commit is contained in:
David
2018-12-04 12:34:58 +01:00
committed by GitHub
2 changed files with 22 additions and 24 deletions
+19 -3
View File
@@ -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
row.entry row.entry
)} )}
</div> </div>
</div> </>
); );
} }
@@ -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> {
</div> </div>
</div> </div>
<div className="logs-entries"> <div className="logs-entries" style={logEntriesStyle}>
{hasData && {hasData &&
!deferLogs && !deferLogs &&
firstRows.map(row => ( firstRows.map(row => (
+3 -21
View File
@@ -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;