in src/components/application/details/controls/logs/details-log.js [257:316]
render() {
const {
autoScroll,
searchResultIndex,
searching,
searchResults,
searchText,
} = this.state;
const {task} = this.props;
const lineNumberMask = getLineNumberMask(this.lines.length);
const formatLineNumberFn = (index) => formatLineNumber(index, lineNumberMask);
return (
<div>
<SearchControl
searchResultIndex={searchResultIndex}
next={this.next}
onClose={() => this.handleSearch(false)}
onSearch={this.performSearch}
prev={this.prev}
searchText={searchText}
searchResults={searchResults}
visible={searching}
/>
<div
className={
classNames(
styles.logsTableContainer,
{[styles.search]: searching},
)
}
>
<AutoScrollCheckbox
autoScroll={autoScroll}
onChange={this.handleAutoScrollChange}
task={task}
/>
<div className={styles.hidden}>
<span className={styles.number}>
{formatLineNumberFn(0)}
:
</span>
<span ref={this.initializeHiddenSpan} />
</div>
<AutoSizer onResize={this.recomputeRowHeights}>
{({width, height}) => (
<List
ref={this.initializeList}
className={styles.logsTable}
height={height}
rowHeight={this.getRowHeight}
rowCount={this.lines.length}
rowRenderer={this.renderLogRow(formatLineNumberFn)}
width={width}
/>
)}
</AutoSizer>
</div>
</div>
);
}