import '../nui-icon/nui-icon.js'; import '../nui-paragraph/nui-paragraph.js'; import { html, nothing, type TemplateResult } from 'lit'; import type { NuiType } from '../../types/nui-type.js'; import { formatSecondaryCount, formatTileCount } from './tile-format.js'; export interface NuiTileViewState { href: string; header: string; count: string | number; countSecondary: number | string; textSecondary: string; icon: string; tileClass: string; nuiType: NuiType; } export function getTileClass(tileClass: string): string { return ['nui-tile', tileClass].filter(Boolean).join(' '); } export function renderTile(state: NuiTileViewState): TemplateResult { const secondaryCount = formatSecondaryCount(state.countSecondary); const mainCount = formatTileCount(state.count); return html`
${ state.icon ? html`
` : nothing }
`; }