{{-- Partial: graph-page Variables expected: $chartEntry — [ 'name' => string, 'labels' => [], 'datasets' => [] ] $ttId — test_type id (used as canvas id) $variant — 'WITH AMBIENT' | 'WITHOUT AMBIENT' $cycleLabel — e.g. 'DOOR OPEN TEST CYCLE – I' $doorMeta — door_open_types row | null $case — Cases model --}}
{{-- Standard report header --}} @include('reports.partials.report-header', ['title' => $cycleLabel . ' — ' . $variant]) {{-- Graph-specific metadata header --}} @if($doorMeta) @else @endif
CYCLE TYPE {{ $case->type_of_cycle }} IDENTIFICATION NO. {{ $case->identification_no }} VARIANT {{ $variant }}
START DATE / TIME {{ $doorMeta->start_date ?? '' }} END DATE / TIME {{ $doorMeta->end_date ?? '' }} SET LIMIT CROSS (IN) {{ $doorMeta->set_limit_cross_in_time ?? '' }}
DCP ON TIME {{ $doorMeta->dcp_on_time ?? '' }} DO OFF TIME {{ $doorMeta->do_off_time ?? '' }} SET LIMIT CROSS (OUT) {{ $doorMeta->set_limit_cross_out_time ?? '' }}
CUSTOMER {{ optional($case->customer)->name }} DATE OF STUDY {{ $case->performedOnDate ? \Carbon\Carbon::parse($case->performedOnDate)->format('d-M-Y') : '' }}
{{-- Operating range reference lines legend --}}
Operating Range: {{ $case->min_operating_range }}°C to {{ $case->max_operating_range }}°C  |  Sensor count: {{ count($chartEntry['datasets']) }}
{{-- Chart canvas — flex-1 fills remaining page height --}}