From 0f76ce3cd7e5883322e51b8efbd1c2115afe11b8 Mon Sep 17 00:00:00 2001 From: Jeff Emmett Date: Tue, 31 Mar 2026 12:20:02 -0700 Subject: [PATCH] feat: make update banner more prominent with header and one-click button Redesigned the PWA update notification from a thin bar to a bold, animated banner with gradient background, pulsing download icon, "Update Available" header, and a large "Update Now" pill button. Co-Authored-By: Claude Opus 4.6 --- components/update-banner.tsx | 41 +++++++++++++++++++++++++++++------- 1 file changed, 33 insertions(+), 8 deletions(-) diff --git a/components/update-banner.tsx b/components/update-banner.tsx index d9ac9a5..10a45da 100644 --- a/components/update-banner.tsx +++ b/components/update-banner.tsx @@ -1,13 +1,14 @@ 'use client' import { useState, useEffect, useCallback } from 'react' -import { RefreshCw } from 'lucide-react' +import { RefreshCw, Download } from 'lucide-react' const CHECK_INTERVAL = 60_000 // check every 60s export function UpdateBanner() { const [updateAvailable, setUpdateAvailable] = useState(false) const [initialVersion, setInitialVersion] = useState(null) + const [updating, setUpdating] = useState(false) const checkVersion = useCallback(async () => { try { @@ -42,13 +43,37 @@ export function UpdateBanner() { if (!updateAvailable) return null + const handleUpdate = () => { + setUpdating(true) + window.location.reload() + } + return ( - +
+
+
+
+ +
+
+

+ Update Available +

+

+ A new version of Jefflix has been deployed +

+
+
+ + +
+
) }