reference = $reference; } public function current(iterable $stops, Modifier ...$modifiers) { return collect([ [1, Line::TYPE_TRAM, 'lorem ipsum', 2137], [1, Line::TYPE_TRAM, 'lorem ipsum', 2137], [1, Line::TYPE_TRAM, 'lorem ipsum', 2137], [1, Line::TYPE_TRAM, 'lorem ipsum', 2137], [1, Line::TYPE_TRAM, 'lorem ipsum', 2137], [1, Line::TYPE_TRAM, 'lorem ipsum', 2137], [1, Line::TYPE_TRAM, 'lorem ipsum', 2137], [1, Line::TYPE_TRAM, 'lorem ipsum', 2137], [1, Line::TYPE_TRAM, 'lorem ipsum', 2137], [1, Line::TYPE_TRAM, 'lorem ipsum', 2137], ])->map(function ($departure) use ($stop) { [$symbol, $type, $display, $vehicle] = $departure; $scheduled = new Carbon(); $estimated = (clone $scheduled)->addSeconds(40); return Departure::createFromArray([ 'scheduled' => $scheduled, 'estimated' => $estimated, 'stop' => $stop, 'display' => $display, 'vehicle' => $this->reference->get(Vehicle::class, $vehicle), 'line' => Line::createFromArray(['symbol' => $symbol, 'type' => $type]), ]); }); } }