File tree Expand file tree Collapse file tree
packages/ui/src/features/updates Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -4,6 +4,7 @@ import { ReleaseNotesSections } from "@posthog/ui/features/updates/ReleaseNotesS
44import { parseReleaseNotes } from "@posthog/ui/features/updates/releaseNotes" ;
55import { useUpdateModalStore } from "@posthog/ui/features/updates/updateModalStore" ;
66import {
7+ useHasActiveUpdate ,
78 useInstallUpdate ,
89 useUpdateView ,
910} from "@posthog/ui/features/updates/updateStore" ;
@@ -62,12 +63,13 @@ export function UpdateAvailableModal() {
6263 const downloadMutation = useMutation (
6364 hostTRPC . updates . download . mutationOptions ( ) ,
6465 ) ;
66+ const prefetchForActiveUpdate = useHasActiveUpdate ( ) ;
6567 const targetVersion = version ?? availableVersion ;
6668 const { data : releasesData , isPending : isPendingReleases } = useQuery ( {
6769 ...hostTRPC . githubReleases . list . queryOptions (
6870 targetVersion ? { expectVersion : targetVersion } : undefined ,
6971 ) ,
70- enabled : isOpen ,
72+ enabled : isOpen || prefetchForActiveUpdate ,
7173 } ) ;
7274
7375 const percent = Math . round ( downloadPercent ?? 0 ) ;
Original file line number Diff line number Diff line change 55 groupReleases ,
66 mergeReleaseNotes ,
77} from "@posthog/ui/features/updates/releaseNotes" ;
8+ import { useHasActiveUpdate } from "@posthog/ui/features/updates/updateStore" ;
89import { useWhatsNewStore } from "@posthog/ui/features/updates/whatsNewStore" ;
910import {
1011 Badge ,
@@ -41,6 +42,7 @@ function ChangelogSkeleton() {
4142export function WhatsNewModal ( ) {
4243 const isOpen = useWhatsNewStore ( ( state ) => state . isOpen ) ;
4344 const close = useWhatsNewStore ( ( state ) => state . close ) ;
45+ const prefetchForActiveUpdate = useHasActiveUpdate ( ) ;
4446 const hostTRPC = useHostTRPC ( ) ;
4547 const { data : currentVersion , isError : isVersionError } = useQuery (
4648 hostTRPC . os . getAppVersion . queryOptions ( ) ,
@@ -53,7 +55,7 @@ export function WhatsNewModal() {
5355 ...hostTRPC . githubReleases . list . queryOptions (
5456 currentVersion ? { expectVersion : currentVersion } : undefined ,
5557 ) ,
56- enabled : isOpen && ! ! currentVersion ,
58+ enabled : ( isOpen || prefetchForActiveUpdate ) && ! ! currentVersion ,
5759 } ) ;
5860 const isError = isVersionError || isReleasesError ;
5961
Original file line number Diff line number Diff line change @@ -37,6 +37,17 @@ export function useUpdateView(): UpdateView {
3737 } ) ) ;
3838}
3939
40+ export function useHasActiveUpdate ( ) : boolean {
41+ return useStore (
42+ updateStore ,
43+ ( state ) =>
44+ state . status === "available" ||
45+ state . status === "downloading" ||
46+ state . status === "ready" ||
47+ state . status === "installing" ,
48+ ) ;
49+ }
50+
4051export function useInstallUpdate ( ) : ( ) => Promise < void > {
4152 const client = useService < UpdatesClient > ( UPDATES_CLIENT ) ;
4253
You can’t perform that action at this time.
0 commit comments