From 28efea18f12ab3a22c09b8df97ec087cb25d3cd2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julien=20Valverd=C3=A9?= Date: Thu, 22 May 2025 16:13:35 +0200 Subject: [PATCH] Fix --- .../extension-query/src/internal/QueryRunner.ts | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/packages/extension-query/src/internal/QueryRunner.ts b/packages/extension-query/src/internal/QueryRunner.ts index ec7e663..8e98010 100644 --- a/packages/extension-query/src/internal/QueryRunner.ts +++ b/packages/extension-query/src/internal/QueryRunner.ts @@ -1,3 +1,4 @@ +import { BrowserStream } from "@effect/platform-browser" import * as AsyncData from "@typed/async-data" import { type Cause, type Context, Effect, Fiber, identity, Option, Queue, Ref, type Scope, Stream, SubscriptionRef } from "effect" import type * as QueryClient from "../QueryClient.js" @@ -191,14 +192,12 @@ export const run = ( self: QueryRunner, options?: RunOptions, ): Effect.Effect => Effect.gen(function*() { - if (options?.refreshOnWindowFocus ?? false) - yield* Effect.tryPromise({ - try: () => import("@effect/platform-browser/BrowserStream"), - catch: () => new Error("Could not import @effect/platform-browser, make sure it is installed as it is a requirement for 'refreshOnWindowFocus'."), - }).pipe( - Effect.flatMap(BrowserStream => Effect.forkScoped( - Stream.runForEach(BrowserStream.fromEventListenerWindow("focus"), () => self.forkRefresh) - )) + if (options?.refreshOnWindowFocus ?? true) + yield* Stream.runForEach( + typeof window !== "undefined" + ? BrowserStream.fromEventListenerWindow("focus") + : Stream.empty, + () => self.forkRefresh, ) yield* self.fetchOnKeyChange