import { IGroupingRenderer } from '../../core/IGroupingRenderer'; import { RenderContext } from '../../core/RenderContext'; import { DateService } from '../../core/DateService'; export class DateRenderer implements IGroupingRenderer { readonly type = 'date'; constructor(private dateService: DateService) {} render(context: RenderContext): void { for (const dateStr of context.values) { const date = this.dateService.parseISO(dateStr); const headerCell = document.createElement('swp-day-header'); headerCell.dataset.date = dateStr; headerCell.innerHTML = ` ${this.dateService.getDayName(date, 'short')} ${date.getDate()} `; context.headerContainer.appendChild(headerCell); const column = document.createElement('swp-day-column'); column.dataset.date = dateStr; if (context.parentId) column.dataset.parentId = context.parentId; column.innerHTML = ''; context.columnContainer.appendChild(column); } } }