import { Renderer, RenderContext } from '../../core/IGroupingRenderer'; import { DateService } from '../../core/DateService'; export class DateRenderer implements Renderer { readonly type = 'date'; next: Renderer | null = null; constructor(private dateService: DateService) {} render(context: RenderContext): void { const dates = context.filter['date'] || []; const resourceCount = context.filter['resource']?.length || 1; // Render dates for HVER resource (resourceCount gange) for (let r = 0; r < resourceCount; r++) { for (const dateStr of dates) { const date = this.dateService.parseISO(dateStr); // Header const header = document.createElement('swp-day-header'); header.dataset.date = dateStr; header.innerHTML = ` ${this.dateService.getDayName(date, 'short')} ${date.getDate()} `; context.headerContainer.appendChild(header); // Column const column = document.createElement('swp-day-column'); column.dataset.date = dateStr; column.innerHTML = ''; context.columnContainer.appendChild(column); } } // Leaf - ingen next } }