Skip to content

Commit 0e5cc37

Browse files
committed
fix: fixed dangling window object
1 parent 9252fa2 commit 0e5cc37

File tree

3 files changed

+17
-6
lines changed

3 files changed

+17
-6
lines changed

src/lib/queries/client/focusManager.ts

+12-2
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,19 @@
1-
import { filter, fromEvent, map, merge, skip, tap, BehaviorSubject } from "rxjs"
1+
import {
2+
filter,
3+
fromEvent,
4+
map,
5+
merge,
6+
skip,
7+
tap,
8+
BehaviorSubject,
9+
EMPTY
10+
} from "rxjs"
11+
import { isServer } from "../../utils"
212

313
export class FocusManager {
414
readonly #visibility$ = merge(
515
fromEvent(document, "visibilitychange"),
6-
fromEvent(window, "visibilitychange")
16+
isServer ? EMPTY : fromEvent(window, "visibilitychange")
717
).pipe(map(() => document.visibilityState))
818

919
readonly #focusedSubject = new BehaviorSubject(

src/lib/queries/client/onlineManager.ts

+4-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import {
22
BehaviorSubject,
3+
EMPTY,
34
distinctUntilChanged,
45
filter,
56
first,
@@ -8,6 +9,7 @@ import {
89
merge
910
} from "rxjs"
1011
import { emitToSubject } from "../../utils/operators/emitToSubject"
12+
import { isServer } from "../../utils"
1113

1214
export class OnlineManager {
1315
protected isOnlineSubject = new BehaviorSubject(true)
@@ -21,8 +23,8 @@ export class OnlineManager {
2123

2224
constructor() {
2325
merge(
24-
fromEvent(window, "offline").pipe(map(() => false)),
25-
fromEvent(window, "online").pipe(map(() => true))
26+
isServer ? EMPTY : fromEvent(window, "offline").pipe(map(() => false)),
27+
isServer ? EMPTY : fromEvent(window, "online").pipe(map(() => true))
2628
)
2729
.pipe(emitToSubject(this.isOnlineSubject))
2830
.subscribe()

src/lib/queries/client/queries/query/query.rq.test.ts

+1-2
Original file line numberDiff line numberDiff line change
@@ -399,7 +399,6 @@ describe("query", () => {
399399
expect(queryFn).toHaveBeenCalledTimes(1)
400400
expect(isCancelledError(query.state.error)).toBe(true)
401401
const result = await query.fetch()
402-
403402
expect(result).toBe("data")
404403
expect(query.state.error).toBe(null)
405404
expect(queryFn).toHaveBeenCalledTimes(2)
@@ -524,7 +523,7 @@ describe("query", () => {
524523
// unsubscribe should not remove even though gcTime has elapsed b/c query is still fetching
525524
expect(queryCache.find({ queryKey: key })).toBeDefined()
526525
await sleep(10)
527-
// // should be removed after an additional staleTime wait
526+
// should be removed after an additional staleTime wait
528527
await waitFor(() => {
529528
expect(queryCache.find({ queryKey: key })).toBeUndefined()
530529
})

0 commit comments

Comments
 (0)