@@ -32,11 +32,11 @@ export class QueriesObserver<
3232 TCombinedResult = QueryObserverResult [ ] ,
3333> extends Subscribable < QueriesObserverListener > {
3434 #client: QueryClient
35- #result: QueryObserverResult [ ]
35+ #result! : QueryObserverResult [ ]
3636 #queries: QueryObserverOptions [ ]
3737 #observers: QueryObserver [ ]
3838 #options?: QueriesObserverOptions < TCombinedResult >
39- #combinedResult? : TCombinedResult
39+ #combinedResult! : TCombinedResult
4040
4141 constructor (
4242 client : QueryClient ,
@@ -47,12 +47,17 @@ export class QueriesObserver<
4747
4848 this . #client = client
4949 this . #queries = [ ]
50- this . #result = [ ]
5150 this . #observers = [ ]
5251
52+ this . #setResult( [ ] )
5353 this . setQueries ( queries , options )
5454 }
5555
56+ #setResult( value : QueryObserverResult [ ] ) {
57+ this . #result = value
58+ this . #combinedResult = this . #combineResult( value )
59+ }
60+
5661 protected onSubscribe ( ) : void {
5762 if ( this . listeners . length === 1 ) {
5863 this . #observers. forEach ( ( observer ) => {
@@ -107,7 +112,7 @@ export class QueriesObserver<
107112 }
108113
109114 this . #observers = newObservers
110- this . #result = newResult
115+ this . #setResult ( newResult )
111116
112117 if ( ! this . hasListeners ( ) ) {
113118 return
@@ -127,7 +132,7 @@ export class QueriesObserver<
127132 } )
128133 }
129134
130- getCurrentResult ( ) : TCombinedResult | undefined {
135+ getCurrentResult ( ) : TCombinedResult {
131136 return this . #combinedResult
132137 }
133138
@@ -153,9 +158,7 @@ export class QueriesObserver<
153158 const newResult = ( this . #options?. combine ?.( input ) ??
154159 input ) as TCombinedResult
155160
156- this . #combinedResult = replaceEqualDeep ( this . #combinedResult, newResult )
157-
158- return this . #combinedResult
161+ return replaceEqualDeep ( this . #combinedResult, newResult )
159162 }
160163
161164 #findMatchingObservers(
@@ -220,7 +223,7 @@ export class QueriesObserver<
220223 #onUpdate( observer : QueryObserver , result : QueryObserverResult ) : void {
221224 const index = this . #observers. indexOf ( observer )
222225 if ( index !== - 1 ) {
223- this . #result = replaceAt ( this . #result, index , result )
226+ this . #setResult ( replaceAt ( this . #result, index , result ) )
224227 this . #notify( )
225228 }
226229 }
0 commit comments