session->setData(self::PREFIX . $type, [ 'version' => self::STATE_VERSION, 'path' => $path, 'valid' => (bool)$result['valid'], 'stats' => $result['stats'], 'errors' => $result['errors'], 'warnings' => $result['warnings'], 'preview' => $preview, 'preview_truncated' => count($validRows) > 100, 'invalid_preview' => $invalidPreview, 'invalid_preview_truncated' => count($invalidRows) > 100, ]); } public function get(string $type): array { $state = (array)$this->session->getData(self::PREFIX . $type); if ($state !== [] && (int)($state['version'] ?? 0) !== self::STATE_VERSION) { $this->clear($type); return []; } return $state; } public function clear(string $type): void { $this->session->unsetData(self::PREFIX . $type); } }