Skip to main content
Glama

MCP Agent TypeScript Port

by waldzellai
summaryTableHeader.js3.92 kB
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> ); };

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/waldzellai/mcp-agent-ts'

If you have feedback or need assistance with the MCP directory API, please join our Discord server