/
Alex_Ural
/
opencode
Обзор
Документация
Войти
/
Alex_Ural
/
opencode
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
dev
packages/ui/src/v2/components/diff-changes-v2.tsx
28 строк
981 B
Brendan Allan
app: Initial tabs impl (#28436)
20 май 2026, 09:40
Не верифицирован
20 май 2026, 09:40
38b406f
Код
Авторство
О чём код?
import { createMemo, Show } from "solid-js" import "./diff-changes-v2.css" export function DiffChanges(props: { class?: string changes: { additions: number; deletions: number } | { additions: number; deletions: number }[] }) { const additions = createMemo(() => Array.isArray(props.changes) ? props.changes.reduce((acc, diff) => acc + (diff.additions ?? 0), 0) : props.changes.additions, ) const deletions = createMemo(() => Array.isArray(props.changes) ? props.changes.reduce((acc, diff) => acc + (diff.deletions ?? 0), 0) : props.changes.deletions, ) const total = createMemo(() => (additions() ?? 0) + (deletions() ?? 0)) return ( <Show when={total() > 0}> <div data-component="diff-changes" classList={{ [props.class ?? ""]: true }}> <span data-slot="diff-changes-additions">{`+${additions()}`}</span> <span data-slot="diff-changes-deletions">{`-${deletions()}`}</span> </div> </Show> ) }