diff --git a/packages/ui-default/utils/base.ts b/packages/ui-default/utils/base.ts index 5dbf2f7d9..a09c464da 100644 --- a/packages/ui-default/utils/base.ts +++ b/packages/ui-default/utils/base.ts @@ -183,10 +183,15 @@ export const request = { }, }; +let transition: ViewTransition | null = null; + export async function withTransitionCallback(callback: () => (Promise | void)) { if (!document.startViewTransition || document.visibilityState === 'hidden') return callback?.(); - const transition = document.startViewTransition(callback); - return await transition.finished; + transition?.skipTransition?.(); + transition = document.startViewTransition(callback); + await transition.finished; + transition = null; + return null; } export async function setTemporaryViewTransitionNames(entries, vtPromise: Promise) {