processCachedResponse($cachedResponse, $currentVersion); } else { // Defer job in background using dispatchAfterResponse CheckVersionUpdateJob::dispatchAfterResponse(); } } private function processCachedResponse($response, string $currentVersion): void { $latestVersion = null; // Handle both single release object and array of releases if (is_array($response) && isset($response[0])) { // Array of releases - find the latest one $latestRelease = $response[0]; $latestVersion = Arr::get($latestRelease, 'tag_name'); $this->releaseData = $latestRelease; } else { // Single release object $latestVersion = Arr::get($response, 'tag_name'); $this->releaseData = $response; } if ($latestVersion && version_compare($latestVersion, $currentVersion, '>')) { $this->latestVersion = $latestVersion; $this->isUpdateAvailable = true; } } } ?>
@if(config('app.version') && $isUpdateAvailable && $latestVersion) Update available There is a newer version {{ $latestVersion }} available. Update to the latest version for the best experience. Release notes @endif