/
TON618OFF
/
FinalPWHTML
Обзор
Документация
Войти
/
TON618OFF
/
FinalPWHTML
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
node_modules/istanbul-reports/lib/html-spa/src/summaryTableHeader.js
130 строк
4 KB
TON618OFF
не ну это ваще
23 июн 2024, 00:30
23 июн 2024, 00:30
e27ae20
Код
Авторство
О чём код?
const React = require('react'); function getSortDetails(sortKey, activeSort) { let newSort = { sortKey, order: 'desc' }; let sortClass = ''; if (activeSort && activeSort.sortKey === sortKey) { sortClass = 'sorted'; if (activeSort.order === 'desc') { sortClass += '-desc'; newSort.order = 'asc'; } else { if (sortKey !== 'file') { newSort = { sortKey: 'file', order: 'desc' }; } } } return { newSort, sortClass }; } function SummaryTableHeaderCell({ name, onSort, sortKey, activeSort }) { const { newSort, sortClass } = getSortDetails(sortKey, activeSort); return ( <th className={'sortable headercell ' + sortClass} onClick={() => onSort(newSort)} > {name} <span className="sorter" /> </th> ); } function FileHeaderCell({ onSort, activeSort }) { const { newSort, sortClass } = getSortDetails('file', activeSort); return ( <th className={'sortable file ' + sortClass} onClick={() => onSort(newSort)} > File <span className="sorter" /> </th> ); } function SubHeadings({ sortKeyPrefix, onSort, activeSort }) { return ( <> <SummaryTableHeaderCell name="%" onSort={onSort} sortKey={sortKeyPrefix + '.pct'} activeSort={activeSort} /> <th className="headercell"></th> <SummaryTableHeaderCell name="Covered" onSort={onSort} sortKey={sortKeyPrefix + '.covered'} activeSort={activeSort} /> <SummaryTableHeaderCell name="Missed" onSort={onSort} sortKey={sortKeyPrefix + '.missed'} activeSort={activeSort} /> <SummaryTableHeaderCell name="Total" onSort={onSort} sortKey={sortKeyPrefix + '.total'} activeSort={activeSort} /> </> ); } module.exports = function SummaryTableHeader({ onSort, activeSort, metricsToShow }) { return ( <thead> <tr className="topheading"> <th></th> {metricsToShow.statements && <th colSpan={4}>Statements</th>} {metricsToShow.branches && <th colSpan={4}>Branches</th>} {metricsToShow.functions && <th colSpan={4}>Functions</th>} {metricsToShow.lines && <th colSpan={4}>Lines</th>} </tr> <tr className="subheading"> <FileHeaderCell onSort={onSort} activeSort={activeSort} /> {metricsToShow.statements && ( <SubHeadings sortKeyPrefix="statements" onSort={onSort} activeSort={activeSort} /> )} {metricsToShow.branches && ( <SubHeadings sortKeyPrefix="branches" onSort={onSort} activeSort={activeSort} /> )} {metricsToShow.functions && ( <SubHeadings sortKeyPrefix="functions" onSort={onSort} activeSort={activeSort} /> )} {metricsToShow.lines && ( <SubHeadings sortKeyPrefix="lines" onSort={onSort} activeSort={activeSort} /> )} </tr> </thead> ); };