{{-- components/report-display.blade.php — Phase 9.4 --}} {{-- Mirrors UI Spec §2.5 "Report Display Structure (ArrayReport)". --}} {{-- --}} {{-- Props (via @include or x-component usage): --}} {{-- $title : string — report title --}} {{-- $subTitle : ?string — optional secondary line --}} {{-- $supHeaders : list — optional supplementary header row --}} {{-- $headers : list — column headers --}} {{-- $rows : list, break?:bool}>--}} {{-- $subtotals : list}> --}} {{-- $totals : ?array{label:string, cells:list} --}} {{-- $csvHref : ?string — URL returned by export route --}} {{-- $csvFilename : ?string — visible filename label --}} @php $subTitle = $subTitle ?? null; $supHeaders = $supHeaders ?? []; $subtotals = $subtotals ?? []; $totals = $totals ?? null; $csvHref = $csvHref ?? null; $csvFilename = $csvFilename ?? null; $totalCols = 1 + count($headers); @endphp {{-- TITLE ROW --}} {{-- SUPPLEMENTARY HEADERS --}} @if(!empty($supHeaders)) @foreach($supHeaders as $h) @endforeach @endif {{-- COLUMN HEADERS --}} @foreach($headers as $h) @endforeach {{-- DATA ROWS --}} @foreach($rows as $i => $row) @if(!empty($row['break'])) @foreach($row['cells'] ?? [] as $c) @endforeach @else @foreach($row['cells'] ?? [] as $c) @endforeach @endif @endforeach {{-- BREAK SUBTOTAL ROWS --}} @foreach($subtotals as $sub) @foreach($sub['cells'] ?? [] as $c) @endforeach @endforeach {{-- GRAND TOTAL --}} @if($totals) @foreach($totals['cells'] ?? [] as $c) @endforeach @endif {{-- CSV EXPORT ROW (UI Spec §2.5) --}} @if($csvHref) @endif
{!! $h !!}
{{ $h }}
{{ $row['label'] ?? '' }}{{ $c }}
{{ $row['label'] ?? '' }}{{ $c }}
{{ $sub['label'] ?? '' }}{{ $c }}
{{ $csvFilename ?? 'export.csv' }}