import m from 'mithril'; import { SourceCode } from '../../Parts/SourceCode'; import { Metrics } from '../../Parts/Metrics'; import { Summary } from '../../Parts/Summary'; import { FileMetrics } from '../../../Entity/FileMetrics'; import { Summary as SummaryEntity } from '../../../Entity/Summary'; import { SourceCode as SourceCodeEntity } from '../../../Entity/SourceCode'; type Param = { fileMetrics: FileMetrics; sourceCode: SourceCodeEntity; summary: SummaryEntity; }; export class Detail implements m.Component { view(vnode: m.Vnode) { return m('div.container.is-fullhd', [ m('section.section', m('.container.is-fullhd', m(Summary, { summary: vnode.attrs.summary }))), m('.columns', [ m( '.column.is-one-quarter', m(Metrics, { metrics: vnode.attrs.fileMetrics.getMetrics(), }) ), m('.column', [ m(SourceCode, { sourceCode: vnode.attrs.sourceCode, }), ]), ]), ]); } }