@tanstack/angular-query-experimental 5.25.0 → 5.26.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,7 +1,7 @@
1
1
  import { DestroyRef, Injector, computed, effect, inject, runInInjectionContext, signal, untracked, } from '@angular/core';
2
2
  import { notifyManager } from '@tanstack/query-core';
3
3
  import { signalProxy } from './signal-proxy';
4
- import { lazyInit } from './lazy-init';
4
+ import { lazyInit } from './util/lazy-init/lazy-init';
5
5
  /**
6
6
  * Base implementation for `injectQuery` and `injectInfiniteQuery`.
7
7
  */
@@ -23,8 +23,7 @@ export function createBaseQuery(options, Observer, queryClient) {
23
23
  });
24
24
  const observer = new Observer(queryClient, defaultedOptionsSignal());
25
25
  const resultSignal = signal(observer.getOptimisticResult(defaultedOptionsSignal()));
26
- // Effects should not be called inside reactive contexts
27
- untracked(() => effect(() => {
26
+ effect(() => {
28
27
  const defaultedOptions = defaultedOptionsSignal();
29
28
  observer.setOptions(defaultedOptions, {
30
29
  // Do not notify on updates because of changes in the options because
@@ -34,7 +33,7 @@ export function createBaseQuery(options, Observer, queryClient) {
34
33
  untracked(() => {
35
34
  resultSignal.set(observer.getOptimisticResult(defaultedOptions));
36
35
  });
37
- }));
36
+ });
38
37
  // observer.trackResult is not used as this optimization is not needed for Angular
39
38
  const unsubscribe = observer.subscribe(notifyManager.batchCalls((val) => resultSignal.set(val)));
40
39
  destroyRef.onDestroy(unsubscribe);
@@ -42,4 +41,4 @@ export function createBaseQuery(options, Observer, queryClient) {
42
41
  });
43
42
  });
44
43
  }
45
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWJhc2UtcXVlcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY3JlYXRlLWJhc2UtcXVlcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFVBQVUsRUFDVixRQUFRLEVBQ1IsUUFBUSxFQUNSLE1BQU0sRUFDTixNQUFNLEVBQ04scUJBQXFCLEVBQ3JCLE1BQU0sRUFDTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUE7QUFDdEIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQ3BELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUM1QyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBSXRDOztHQUVHO0FBQ0gsTUFBTSxVQUFVLGVBQWUsQ0FPN0IsT0FRQyxFQUNELFFBQThCLEVBQzlCLFdBQXdCO0lBRXhCLE1BQU0sUUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQTtJQUVqQyxPQUFPLFFBQVEsQ0FBQyxHQUFHLEVBQUU7UUFDbkIsT0FBTyxxQkFBcUIsQ0FBQyxRQUFRLEVBQUUsR0FBRyxFQUFFO1lBQzFDLE1BQU0sVUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQTtZQUNyQzs7Ozs7ZUFLRztZQUNILE1BQU0sc0JBQXNCLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtnQkFDM0MsTUFBTSxnQkFBZ0IsR0FBRyxXQUFXLENBQUMsbUJBQW1CLENBQ3RELE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FDckIsQ0FBQTtnQkFDRCxnQkFBZ0IsQ0FBQyxrQkFBa0IsR0FBRyxZQUFZLENBQUE7Z0JBQ2xELE9BQU8sZ0JBQWdCLENBQUE7WUFDekIsQ0FBQyxDQUFDLENBQUE7WUFFRixNQUFNLFFBQVEsR0FBRyxJQUFJLFFBQVEsQ0FNM0IsV0FBVyxFQUFFLHNCQUFzQixFQUFFLENBQUMsQ0FBQTtZQUV4QyxNQUFNLFlBQVksR0FBRyxNQUFNLENBQ3pCLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxzQkFBc0IsRUFBRSxDQUFDLENBQ3ZELENBQUE7WUFFRCx3REFBd0Q7WUFDeEQsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUNiLE1BQU0sQ0FBQyxHQUFHLEVBQUU7Z0JBQ1YsTUFBTSxnQkFBZ0IsR0FBRyxzQkFBc0IsRUFBRSxDQUFBO2dCQUNqRCxRQUFRLENBQUMsVUFBVSxDQUFDLGdCQUFnQixFQUFFO29CQUNwQyxxRUFBcUU7b0JBQ3JFLHNFQUFzRTtvQkFDdEUsU0FBUyxFQUFFLEtBQUs7aUJBQ2pCLENBQUMsQ0FBQTtnQkFDRixTQUFTLENBQUMsR0FBRyxFQUFFO29CQUNiLFlBQVksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLG1CQUFtQixDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQTtnQkFDbEUsQ0FBQyxDQUFDLENBQUE7WUFDSixDQUFDLENBQUMsQ0FDSCxDQUFBO1lBRUQsa0ZBQWtGO1lBQ2xGLE1BQU0sV0FBVyxHQUFHLFFBQVEsQ0FBQyxTQUFTLENBQ3BDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FDekQsQ0FBQTtZQUNELFVBQVUsQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLENBQUE7WUFFakMsT0FBTyxXQUFXLENBQUMsWUFBWSxDQUF5QyxDQUFBO1FBQzFFLENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQyxDQUFDLENBQUE7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRGVzdHJveVJlZixcbiAgSW5qZWN0b3IsXG4gIGNvbXB1dGVkLFxuICBlZmZlY3QsXG4gIGluamVjdCxcbiAgcnVuSW5JbmplY3Rpb25Db250ZXh0LFxuICBzaWduYWwsXG4gIHVudHJhY2tlZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IG5vdGlmeU1hbmFnZXIgfSBmcm9tICdAdGFuc3RhY2svcXVlcnktY29yZSdcbmltcG9ydCB7IHNpZ25hbFByb3h5IH0gZnJvbSAnLi9zaWduYWwtcHJveHknXG5pbXBvcnQgeyBsYXp5SW5pdCB9IGZyb20gJy4vbGF6eS1pbml0J1xuaW1wb3J0IHR5cGUgeyBRdWVyeUNsaWVudCwgUXVlcnlLZXksIFF1ZXJ5T2JzZXJ2ZXIgfSBmcm9tICdAdGFuc3RhY2svcXVlcnktY29yZSdcbmltcG9ydCB0eXBlIHsgQ3JlYXRlQmFzZVF1ZXJ5T3B0aW9ucywgQ3JlYXRlQmFzZVF1ZXJ5UmVzdWx0IH0gZnJvbSAnLi90eXBlcydcblxuLyoqXG4gKiBCYXNlIGltcGxlbWVudGF0aW9uIGZvciBgaW5qZWN0UXVlcnlgIGFuZCBgaW5qZWN0SW5maW5pdGVRdWVyeWAuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVCYXNlUXVlcnk8XG4gIFRRdWVyeUZuRGF0YSxcbiAgVEVycm9yLFxuICBURGF0YSxcbiAgVFF1ZXJ5RGF0YSxcbiAgVFF1ZXJ5S2V5IGV4dGVuZHMgUXVlcnlLZXksXG4+KFxuICBvcHRpb25zOiAoXG4gICAgY2xpZW50OiBRdWVyeUNsaWVudCxcbiAgKSA9PiBDcmVhdGVCYXNlUXVlcnlPcHRpb25zPFxuICAgIFRRdWVyeUZuRGF0YSxcbiAgICBURXJyb3IsXG4gICAgVERhdGEsXG4gICAgVFF1ZXJ5RGF0YSxcbiAgICBUUXVlcnlLZXlcbiAgPixcbiAgT2JzZXJ2ZXI6IHR5cGVvZiBRdWVyeU9ic2VydmVyLFxuICBxdWVyeUNsaWVudDogUXVlcnlDbGllbnQsXG4pOiBDcmVhdGVCYXNlUXVlcnlSZXN1bHQ8VERhdGEsIFRFcnJvcj4ge1xuICBjb25zdCBpbmplY3RvciA9IGluamVjdChJbmplY3RvcilcblxuICByZXR1cm4gbGF6eUluaXQoKCkgPT4ge1xuICAgIHJldHVybiBydW5JbkluamVjdGlvbkNvbnRleHQoaW5qZWN0b3IsICgpID0+IHtcbiAgICAgIGNvbnN0IGRlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZilcbiAgICAgIC8qKlxuICAgICAgICogU2lnbmFsIHRoYXQgaGFzIHRoZSBkZWZhdWx0IG9wdGlvbnMgZnJvbSBxdWVyeSBjbGllbnQgYXBwbGllZFxuICAgICAgICogY29tcHV0ZWQoKSBpcyB1c2VkIHNvIHNpZ25hbHMgY2FuIGJlIGluc2VydGVkIGludG8gdGhlIG9wdGlvbnNcbiAgICAgICAqIG1ha2luZyBpdCByZWFjdGl2ZS4gV3JhcHBpbmcgb3B0aW9ucyBpbiBhIGZ1bmN0aW9uIGVuc3VyZXMgZW1iZWRkZWQgZXhwcmVzc2lvbnNcbiAgICAgICAqIGFyZSBwcmVzZXJ2ZWQgYW5kIGNhbiBrZWVwIGJlaW5nIGFwcGxpZWQgYWZ0ZXIgc2lnbmFsIGNoYW5nZXNcbiAgICAgICAqL1xuICAgICAgY29uc3QgZGVmYXVsdGVkT3B0aW9uc1NpZ25hbCA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgICAgY29uc3QgZGVmYXVsdGVkT3B0aW9ucyA9IHF1ZXJ5Q2xpZW50LmRlZmF1bHRRdWVyeU9wdGlvbnMoXG4gICAgICAgICAgb3B0aW9ucyhxdWVyeUNsaWVudCksXG4gICAgICAgIClcbiAgICAgICAgZGVmYXVsdGVkT3B0aW9ucy5fb3B0aW1pc3RpY1Jlc3VsdHMgPSAnb3B0aW1pc3RpYydcbiAgICAgICAgcmV0dXJuIGRlZmF1bHRlZE9wdGlvbnNcbiAgICAgIH0pXG5cbiAgICAgIGNvbnN0IG9ic2VydmVyID0gbmV3IE9ic2VydmVyPFxuICAgICAgICBUUXVlcnlGbkRhdGEsXG4gICAgICAgIFRFcnJvcixcbiAgICAgICAgVERhdGEsXG4gICAgICAgIFRRdWVyeURhdGEsXG4gICAgICAgIFRRdWVyeUtleVxuICAgICAgPihxdWVyeUNsaWVudCwgZGVmYXVsdGVkT3B0aW9uc1NpZ25hbCgpKVxuXG4gICAgICBjb25zdCByZXN1bHRTaWduYWwgPSBzaWduYWwoXG4gICAgICAgIG9ic2VydmVyLmdldE9wdGltaXN0aWNSZXN1bHQoZGVmYXVsdGVkT3B0aW9uc1NpZ25hbCgpKSxcbiAgICAgIClcblxuICAgICAgLy8gRWZmZWN0cyBzaG91bGQgbm90IGJlIGNhbGxlZCBpbnNpZGUgcmVhY3RpdmUgY29udGV4dHNcbiAgICAgIHVudHJhY2tlZCgoKSA9PlxuICAgICAgICBlZmZlY3QoKCkgPT4ge1xuICAgICAgICAgIGNvbnN0IGRlZmF1bHRlZE9wdGlvbnMgPSBkZWZhdWx0ZWRPcHRpb25zU2lnbmFsKClcbiAgICAgICAgICBvYnNlcnZlci5zZXRPcHRpb25zKGRlZmF1bHRlZE9wdGlvbnMsIHtcbiAgICAgICAgICAgIC8vIERvIG5vdCBub3RpZnkgb24gdXBkYXRlcyBiZWNhdXNlIG9mIGNoYW5nZXMgaW4gdGhlIG9wdGlvbnMgYmVjYXVzZVxuICAgICAgICAgICAgLy8gdGhlc2UgY2hhbmdlcyBzaG91bGQgYWxyZWFkeSBiZSByZWZsZWN0ZWQgaW4gdGhlIG9wdGltaXN0aWMgcmVzdWx0LlxuICAgICAgICAgICAgbGlzdGVuZXJzOiBmYWxzZSxcbiAgICAgICAgICB9KVxuICAgICAgICAgIHVudHJhY2tlZCgoKSA9PiB7XG4gICAgICAgICAgICByZXN1bHRTaWduYWwuc2V0KG9ic2VydmVyLmdldE9wdGltaXN0aWNSZXN1bHQoZGVmYXVsdGVkT3B0aW9ucykpXG4gICAgICAgICAgfSlcbiAgICAgICAgfSksXG4gICAgICApXG5cbiAgICAgIC8vIG9ic2VydmVyLnRyYWNrUmVzdWx0IGlzIG5vdCB1c2VkIGFzIHRoaXMgb3B0aW1pemF0aW9uIGlzIG5vdCBuZWVkZWQgZm9yIEFuZ3VsYXJcbiAgICAgIGNvbnN0IHVuc3Vic2NyaWJlID0gb2JzZXJ2ZXIuc3Vic2NyaWJlKFxuICAgICAgICBub3RpZnlNYW5hZ2VyLmJhdGNoQ2FsbHMoKHZhbCkgPT4gcmVzdWx0U2lnbmFsLnNldCh2YWwpKSxcbiAgICAgIClcbiAgICAgIGRlc3Ryb3lSZWYub25EZXN0cm95KHVuc3Vic2NyaWJlKVxuXG4gICAgICByZXR1cm4gc2lnbmFsUHJveHkocmVzdWx0U2lnbmFsKSBhcyBDcmVhdGVCYXNlUXVlcnlSZXN1bHQ8VERhdGEsIFRFcnJvcj5cbiAgICB9KVxuICB9KVxufVxuIl19
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWJhc2UtcXVlcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY3JlYXRlLWJhc2UtcXVlcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFVBQVUsRUFDVixRQUFRLEVBQ1IsUUFBUSxFQUNSLE1BQU0sRUFDTixNQUFNLEVBQ04scUJBQXFCLEVBQ3JCLE1BQU0sRUFDTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUE7QUFDdEIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQ3BELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUM1QyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUE7QUFJckQ7O0dBRUc7QUFDSCxNQUFNLFVBQVUsZUFBZSxDQU83QixPQVFDLEVBQ0QsUUFBOEIsRUFDOUIsV0FBd0I7SUFFeEIsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFBO0lBRWpDLE9BQU8sUUFBUSxDQUFDLEdBQUcsRUFBRTtRQUNuQixPQUFPLHFCQUFxQixDQUFDLFFBQVEsRUFBRSxHQUFHLEVBQUU7WUFDMUMsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFBO1lBQ3JDOzs7OztlQUtHO1lBQ0gsTUFBTSxzQkFBc0IsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO2dCQUMzQyxNQUFNLGdCQUFnQixHQUFHLFdBQVcsQ0FBQyxtQkFBbUIsQ0FDdEQsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUNyQixDQUFBO2dCQUNELGdCQUFnQixDQUFDLGtCQUFrQixHQUFHLFlBQVksQ0FBQTtnQkFDbEQsT0FBTyxnQkFBZ0IsQ0FBQTtZQUN6QixDQUFDLENBQUMsQ0FBQTtZQUVGLE1BQU0sUUFBUSxHQUFHLElBQUksUUFBUSxDQU0zQixXQUFXLEVBQUUsc0JBQXNCLEVBQUUsQ0FBQyxDQUFBO1lBRXhDLE1BQU0sWUFBWSxHQUFHLE1BQU0sQ0FDekIsUUFBUSxDQUFDLG1CQUFtQixDQUFDLHNCQUFzQixFQUFFLENBQUMsQ0FDdkQsQ0FBQTtZQUVELE1BQU0sQ0FBQyxHQUFHLEVBQUU7Z0JBQ1YsTUFBTSxnQkFBZ0IsR0FBRyxzQkFBc0IsRUFBRSxDQUFBO2dCQUNqRCxRQUFRLENBQUMsVUFBVSxDQUFDLGdCQUFnQixFQUFFO29CQUNwQyxxRUFBcUU7b0JBQ3JFLHNFQUFzRTtvQkFDdEUsU0FBUyxFQUFFLEtBQUs7aUJBQ2pCLENBQUMsQ0FBQTtnQkFDRixTQUFTLENBQUMsR0FBRyxFQUFFO29CQUNiLFlBQVksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLG1CQUFtQixDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQTtnQkFDbEUsQ0FBQyxDQUFDLENBQUE7WUFDSixDQUFDLENBQUMsQ0FBQTtZQUVGLGtGQUFrRjtZQUNsRixNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsU0FBUyxDQUNwQyxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQ3pELENBQUE7WUFDRCxVQUFVLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFBO1lBRWpDLE9BQU8sV0FBVyxDQUFDLFlBQVksQ0FBeUMsQ0FBQTtRQUMxRSxDQUFDLENBQUMsQ0FBQTtJQUNKLENBQUMsQ0FBQyxDQUFBO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIERlc3Ryb3lSZWYsXG4gIEluamVjdG9yLFxuICBjb21wdXRlZCxcbiAgZWZmZWN0LFxuICBpbmplY3QsXG4gIHJ1bkluSW5qZWN0aW9uQ29udGV4dCxcbiAgc2lnbmFsLFxuICB1bnRyYWNrZWQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBub3RpZnlNYW5hZ2VyIH0gZnJvbSAnQHRhbnN0YWNrL3F1ZXJ5LWNvcmUnXG5pbXBvcnQgeyBzaWduYWxQcm94eSB9IGZyb20gJy4vc2lnbmFsLXByb3h5J1xuaW1wb3J0IHsgbGF6eUluaXQgfSBmcm9tICcuL3V0aWwvbGF6eS1pbml0L2xhenktaW5pdCdcbmltcG9ydCB0eXBlIHsgUXVlcnlDbGllbnQsIFF1ZXJ5S2V5LCBRdWVyeU9ic2VydmVyIH0gZnJvbSAnQHRhbnN0YWNrL3F1ZXJ5LWNvcmUnXG5pbXBvcnQgdHlwZSB7IENyZWF0ZUJhc2VRdWVyeU9wdGlvbnMsIENyZWF0ZUJhc2VRdWVyeVJlc3VsdCB9IGZyb20gJy4vdHlwZXMnXG5cbi8qKlxuICogQmFzZSBpbXBsZW1lbnRhdGlvbiBmb3IgYGluamVjdFF1ZXJ5YCBhbmQgYGluamVjdEluZmluaXRlUXVlcnlgLlxuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlQmFzZVF1ZXJ5PFxuICBUUXVlcnlGbkRhdGEsXG4gIFRFcnJvcixcbiAgVERhdGEsXG4gIFRRdWVyeURhdGEsXG4gIFRRdWVyeUtleSBleHRlbmRzIFF1ZXJ5S2V5LFxuPihcbiAgb3B0aW9uczogKFxuICAgIGNsaWVudDogUXVlcnlDbGllbnQsXG4gICkgPT4gQ3JlYXRlQmFzZVF1ZXJ5T3B0aW9uczxcbiAgICBUUXVlcnlGbkRhdGEsXG4gICAgVEVycm9yLFxuICAgIFREYXRhLFxuICAgIFRRdWVyeURhdGEsXG4gICAgVFF1ZXJ5S2V5XG4gID4sXG4gIE9ic2VydmVyOiB0eXBlb2YgUXVlcnlPYnNlcnZlcixcbiAgcXVlcnlDbGllbnQ6IFF1ZXJ5Q2xpZW50LFxuKTogQ3JlYXRlQmFzZVF1ZXJ5UmVzdWx0PFREYXRhLCBURXJyb3I+IHtcbiAgY29uc3QgaW5qZWN0b3IgPSBpbmplY3QoSW5qZWN0b3IpXG5cbiAgcmV0dXJuIGxhenlJbml0KCgpID0+IHtcbiAgICByZXR1cm4gcnVuSW5JbmplY3Rpb25Db250ZXh0KGluamVjdG9yLCAoKSA9PiB7XG4gICAgICBjb25zdCBkZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpXG4gICAgICAvKipcbiAgICAgICAqIFNpZ25hbCB0aGF0IGhhcyB0aGUgZGVmYXVsdCBvcHRpb25zIGZyb20gcXVlcnkgY2xpZW50IGFwcGxpZWRcbiAgICAgICAqIGNvbXB1dGVkKCkgaXMgdXNlZCBzbyBzaWduYWxzIGNhbiBiZSBpbnNlcnRlZCBpbnRvIHRoZSBvcHRpb25zXG4gICAgICAgKiBtYWtpbmcgaXQgcmVhY3RpdmUuIFdyYXBwaW5nIG9wdGlvbnMgaW4gYSBmdW5jdGlvbiBlbnN1cmVzIGVtYmVkZGVkIGV4cHJlc3Npb25zXG4gICAgICAgKiBhcmUgcHJlc2VydmVkIGFuZCBjYW4ga2VlcCBiZWluZyBhcHBsaWVkIGFmdGVyIHNpZ25hbCBjaGFuZ2VzXG4gICAgICAgKi9cbiAgICAgIGNvbnN0IGRlZmF1bHRlZE9wdGlvbnNTaWduYWwgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIGNvbnN0IGRlZmF1bHRlZE9wdGlvbnMgPSBxdWVyeUNsaWVudC5kZWZhdWx0UXVlcnlPcHRpb25zKFxuICAgICAgICAgIG9wdGlvbnMocXVlcnlDbGllbnQpLFxuICAgICAgICApXG4gICAgICAgIGRlZmF1bHRlZE9wdGlvbnMuX29wdGltaXN0aWNSZXN1bHRzID0gJ29wdGltaXN0aWMnXG4gICAgICAgIHJldHVybiBkZWZhdWx0ZWRPcHRpb25zXG4gICAgICB9KVxuXG4gICAgICBjb25zdCBvYnNlcnZlciA9IG5ldyBPYnNlcnZlcjxcbiAgICAgICAgVFF1ZXJ5Rm5EYXRhLFxuICAgICAgICBURXJyb3IsXG4gICAgICAgIFREYXRhLFxuICAgICAgICBUUXVlcnlEYXRhLFxuICAgICAgICBUUXVlcnlLZXlcbiAgICAgID4ocXVlcnlDbGllbnQsIGRlZmF1bHRlZE9wdGlvbnNTaWduYWwoKSlcblxuICAgICAgY29uc3QgcmVzdWx0U2lnbmFsID0gc2lnbmFsKFxuICAgICAgICBvYnNlcnZlci5nZXRPcHRpbWlzdGljUmVzdWx0KGRlZmF1bHRlZE9wdGlvbnNTaWduYWwoKSksXG4gICAgICApXG5cbiAgICAgIGVmZmVjdCgoKSA9PiB7XG4gICAgICAgIGNvbnN0IGRlZmF1bHRlZE9wdGlvbnMgPSBkZWZhdWx0ZWRPcHRpb25zU2lnbmFsKClcbiAgICAgICAgb2JzZXJ2ZXIuc2V0T3B0aW9ucyhkZWZhdWx0ZWRPcHRpb25zLCB7XG4gICAgICAgICAgLy8gRG8gbm90IG5vdGlmeSBvbiB1cGRhdGVzIGJlY2F1c2Ugb2YgY2hhbmdlcyBpbiB0aGUgb3B0aW9ucyBiZWNhdXNlXG4gICAgICAgICAgLy8gdGhlc2UgY2hhbmdlcyBzaG91bGQgYWxyZWFkeSBiZSByZWZsZWN0ZWQgaW4gdGhlIG9wdGltaXN0aWMgcmVzdWx0LlxuICAgICAgICAgIGxpc3RlbmVyczogZmFsc2UsXG4gICAgICAgIH0pXG4gICAgICAgIHVudHJhY2tlZCgoKSA9PiB7XG4gICAgICAgICAgcmVzdWx0U2lnbmFsLnNldChvYnNlcnZlci5nZXRPcHRpbWlzdGljUmVzdWx0KGRlZmF1bHRlZE9wdGlvbnMpKVxuICAgICAgICB9KVxuICAgICAgfSlcblxuICAgICAgLy8gb2JzZXJ2ZXIudHJhY2tSZXN1bHQgaXMgbm90IHVzZWQgYXMgdGhpcyBvcHRpbWl6YXRpb24gaXMgbm90IG5lZWRlZCBmb3IgQW5ndWxhclxuICAgICAgY29uc3QgdW5zdWJzY3JpYmUgPSBvYnNlcnZlci5zdWJzY3JpYmUoXG4gICAgICAgIG5vdGlmeU1hbmFnZXIuYmF0Y2hDYWxscygodmFsKSA9PiByZXN1bHRTaWduYWwuc2V0KHZhbCkpLFxuICAgICAgKVxuICAgICAgZGVzdHJveVJlZi5vbkRlc3Ryb3kodW5zdWJzY3JpYmUpXG5cbiAgICAgIHJldHVybiBzaWduYWxQcm94eShyZXN1bHRTaWduYWwpIGFzIENyZWF0ZUJhc2VRdWVyeVJlc3VsdDxURGF0YSwgVEVycm9yPlxuICAgIH0pXG4gIH0pXG59XG4iXX0=
@@ -2,6 +2,7 @@ import { DestroyRef, effect, inject, signal, untracked } from '@angular/core';
2
2
  import { notifyManager, replaceEqualDeep, } from '@tanstack/query-core';
3
3
  import { assertInjector } from './util/assert-injector/assert-injector';
4
4
  import { injectQueryClient } from './inject-query-client';
5
+ import { lazySignalInitializer } from './util/lazy-signal-initializer/lazy-signal-initializer';
5
6
  function getResult(mutationCache, options) {
6
7
  return mutationCache
7
8
  .findAll(options.filters)
@@ -14,23 +15,25 @@ export function injectMutationState(mutationStateOptionsFn = () => ({}), options
14
15
  const destroyRef = inject(DestroyRef);
15
16
  const queryClient = injectQueryClient();
16
17
  const mutationCache = queryClient.getMutationCache();
17
- const result = signal(getResult(mutationCache, mutationStateOptionsFn()));
18
- effect(() => {
19
- const mutationStateOptions = mutationStateOptionsFn();
20
- untracked(() => {
21
- // Setting the signal from an effect because it's both 'computed' from options()
22
- // and needs to be set imperatively in the mutationCache listener.
23
- result.set(getResult(mutationCache, mutationStateOptions));
24
- });
18
+ return lazySignalInitializer((injector) => {
19
+ const result = signal(getResult(mutationCache, mutationStateOptionsFn()));
20
+ effect(() => {
21
+ const mutationStateOptions = mutationStateOptionsFn();
22
+ untracked(() => {
23
+ // Setting the signal from an effect because it's both 'computed' from options()
24
+ // and needs to be set imperatively in the mutationCache listener.
25
+ result.set(getResult(mutationCache, mutationStateOptions));
26
+ });
27
+ }, { injector });
28
+ const unsubscribe = mutationCache.subscribe(notifyManager.batchCalls(() => {
29
+ const nextResult = replaceEqualDeep(result(), getResult(mutationCache, mutationStateOptionsFn()));
30
+ if (result() !== nextResult) {
31
+ result.set(nextResult);
32
+ }
33
+ }));
34
+ destroyRef.onDestroy(unsubscribe);
35
+ return result;
25
36
  });
26
- const unsubscribe = mutationCache.subscribe(notifyManager.batchCalls(() => {
27
- const nextResult = replaceEqualDeep(result(), getResult(mutationCache, mutationStateOptionsFn()));
28
- if (result() !== nextResult) {
29
- result.set(nextResult);
30
- }
31
- }));
32
- destroyRef.onDestroy(unsubscribe);
33
- return result;
34
37
  });
35
38
  }
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5qZWN0LW11dGF0aW9uLXN0YXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2luamVjdC1tdXRhdGlvbi1zdGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUM3RSxPQUFPLEVBTUwsYUFBYSxFQUNiLGdCQUFnQixHQUNqQixNQUFNLHNCQUFzQixDQUFBO0FBQzdCLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQTtBQUN2RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQVV6RCxTQUFTLFNBQVMsQ0FDaEIsYUFBNEIsRUFDNUIsT0FBc0M7SUFFdEMsT0FBTyxhQUFhO1NBQ2pCLE9BQU8sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDO1NBQ3hCLEdBQUcsQ0FDRixDQUFDLFFBQVEsRUFBVyxFQUFFLENBQ3BCLENBQUMsT0FBTyxDQUFDLE1BQU07UUFDYixDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FDWixRQUE2RCxDQUM5RDtRQUNILENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFZLENBQ2pDLENBQUE7QUFDTCxDQUFDO0FBTUQsTUFBTSxVQUFVLG1CQUFtQixDQUNqQyx5QkFBOEQsR0FBRyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFDeEUsT0FBb0M7SUFFcEMsT0FBTyxjQUFjLENBQUMsbUJBQW1CLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUU7UUFDakUsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFBO1FBQ3JDLE1BQU0sV0FBVyxHQUFHLGlCQUFpQixFQUFFLENBQUE7UUFFdkMsTUFBTSxhQUFhLEdBQUcsV0FBVyxDQUFDLGdCQUFnQixFQUFFLENBQUE7UUFFcEQsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUNuQixTQUFTLENBQUMsYUFBYSxFQUFFLHNCQUFzQixFQUFFLENBQUMsQ0FDbkQsQ0FBQTtRQUVELE1BQU0sQ0FBQyxHQUFHLEVBQUU7WUFDVixNQUFNLG9CQUFvQixHQUFHLHNCQUFzQixFQUFFLENBQUE7WUFDckQsU0FBUyxDQUFDLEdBQUcsRUFBRTtnQkFDYixnRkFBZ0Y7Z0JBQ2hGLGtFQUFrRTtnQkFDbEUsTUFBTSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsYUFBYSxFQUFFLG9CQUFvQixDQUFDLENBQUMsQ0FBQTtZQUM1RCxDQUFDLENBQUMsQ0FBQTtRQUNKLENBQUMsQ0FBQyxDQUFBO1FBRUYsTUFBTSxXQUFXLEdBQUcsYUFBYSxDQUFDLFNBQVMsQ0FDekMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDNUIsTUFBTSxVQUFVLEdBQUcsZ0JBQWdCLENBQ2pDLE1BQU0sRUFBRSxFQUNSLFNBQVMsQ0FBQyxhQUFhLEVBQUUsc0JBQXNCLEVBQUUsQ0FBQyxDQUNuRCxDQUFBO1lBQ0QsSUFBSSxNQUFNLEVBQUUsS0FBSyxVQUFVLEVBQUU7Z0JBQzNCLE1BQU0sQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUE7YUFDdkI7UUFDSCxDQUFDLENBQUMsQ0FDSCxDQUFBO1FBRUQsVUFBVSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FBQTtRQUVqQyxPQUFPLE1BQU0sQ0FBQTtJQUNmLENBQUMsQ0FBQyxDQUFBO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERlc3Ryb3lSZWYsIGVmZmVjdCwgaW5qZWN0LCBzaWduYWwsIHVudHJhY2tlZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQge1xuICB0eXBlIERlZmF1bHRFcnJvcixcbiAgdHlwZSBNdXRhdGlvbixcbiAgdHlwZSBNdXRhdGlvbkNhY2hlLFxuICB0eXBlIE11dGF0aW9uRmlsdGVycyxcbiAgdHlwZSBNdXRhdGlvblN0YXRlLFxuICBub3RpZnlNYW5hZ2VyLFxuICByZXBsYWNlRXF1YWxEZWVwLFxufSBmcm9tICdAdGFuc3RhY2svcXVlcnktY29yZSdcbmltcG9ydCB7IGFzc2VydEluamVjdG9yIH0gZnJvbSAnLi91dGlsL2Fzc2VydC1pbmplY3Rvci9hc3NlcnQtaW5qZWN0b3InXG5pbXBvcnQgeyBpbmplY3RRdWVyeUNsaWVudCB9IGZyb20gJy4vaW5qZWN0LXF1ZXJ5LWNsaWVudCdcbmltcG9ydCB0eXBlIHsgSW5qZWN0b3IsIFNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5cbnR5cGUgTXV0YXRpb25TdGF0ZU9wdGlvbnM8VFJlc3VsdCA9IE11dGF0aW9uU3RhdGU+ID0ge1xuICBmaWx0ZXJzPzogTXV0YXRpb25GaWx0ZXJzXG4gIHNlbGVjdD86IChcbiAgICBtdXRhdGlvbjogTXV0YXRpb248dW5rbm93biwgRGVmYXVsdEVycm9yLCB1bmtub3duLCB1bmtub3duPixcbiAgKSA9PiBUUmVzdWx0XG59XG5cbmZ1bmN0aW9uIGdldFJlc3VsdDxUUmVzdWx0ID0gTXV0YXRpb25TdGF0ZT4oXG4gIG11dGF0aW9uQ2FjaGU6IE11dGF0aW9uQ2FjaGUsXG4gIG9wdGlvbnM6IE11dGF0aW9uU3RhdGVPcHRpb25zPFRSZXN1bHQ+LFxuKTogQXJyYXk8VFJlc3VsdD4ge1xuICByZXR1cm4gbXV0YXRpb25DYWNoZVxuICAgIC5maW5kQWxsKG9wdGlvbnMuZmlsdGVycylcbiAgICAubWFwKFxuICAgICAgKG11dGF0aW9uKTogVFJlc3VsdCA9PlxuICAgICAgICAob3B0aW9ucy5zZWxlY3RcbiAgICAgICAgICA/IG9wdGlvbnMuc2VsZWN0KFxuICAgICAgICAgICAgICBtdXRhdGlvbiBhcyBNdXRhdGlvbjx1bmtub3duLCBEZWZhdWx0RXJyb3IsIHVua25vd24sIHVua25vd24+LFxuICAgICAgICAgICAgKVxuICAgICAgICAgIDogbXV0YXRpb24uc3RhdGUpIGFzIFRSZXN1bHQsXG4gICAgKVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEluamVjdE11dGF0aW9uU3RhdGVPcHRpb25zIHtcbiAgaW5qZWN0b3I/OiBJbmplY3RvclxufVxuXG5leHBvcnQgZnVuY3Rpb24gaW5qZWN0TXV0YXRpb25TdGF0ZTxUUmVzdWx0ID0gTXV0YXRpb25TdGF0ZT4oXG4gIG11dGF0aW9uU3RhdGVPcHRpb25zRm46ICgpID0+IE11dGF0aW9uU3RhdGVPcHRpb25zPFRSZXN1bHQ+ID0gKCkgPT4gKHt9KSxcbiAgb3B0aW9ucz86IEluamVjdE11dGF0aW9uU3RhdGVPcHRpb25zLFxuKTogU2lnbmFsPEFycmF5PFRSZXN1bHQ+PiB7XG4gIHJldHVybiBhc3NlcnRJbmplY3RvcihpbmplY3RNdXRhdGlvblN0YXRlLCBvcHRpb25zPy5pbmplY3RvciwgKCkgPT4ge1xuICAgIGNvbnN0IGRlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZilcbiAgICBjb25zdCBxdWVyeUNsaWVudCA9IGluamVjdFF1ZXJ5Q2xpZW50KClcblxuICAgIGNvbnN0IG11dGF0aW9uQ2FjaGUgPSBxdWVyeUNsaWVudC5nZXRNdXRhdGlvbkNhY2hlKClcblxuICAgIGNvbnN0IHJlc3VsdCA9IHNpZ25hbDxBcnJheTxUUmVzdWx0Pj4oXG4gICAgICBnZXRSZXN1bHQobXV0YXRpb25DYWNoZSwgbXV0YXRpb25TdGF0ZU9wdGlvbnNGbigpKSxcbiAgICApXG5cbiAgICBlZmZlY3QoKCkgPT4ge1xuICAgICAgY29uc3QgbXV0YXRpb25TdGF0ZU9wdGlvbnMgPSBtdXRhdGlvblN0YXRlT3B0aW9uc0ZuKClcbiAgICAgIHVudHJhY2tlZCgoKSA9PiB7XG4gICAgICAgIC8vIFNldHRpbmcgdGhlIHNpZ25hbCBmcm9tIGFuIGVmZmVjdCBiZWNhdXNlIGl0J3MgYm90aCAnY29tcHV0ZWQnIGZyb20gb3B0aW9ucygpXG4gICAgICAgIC8vIGFuZCBuZWVkcyB0byBiZSBzZXQgaW1wZXJhdGl2ZWx5IGluIHRoZSBtdXRhdGlvbkNhY2hlIGxpc3RlbmVyLlxuICAgICAgICByZXN1bHQuc2V0KGdldFJlc3VsdChtdXRhdGlvbkNhY2hlLCBtdXRhdGlvblN0YXRlT3B0aW9ucykpXG4gICAgICB9KVxuICAgIH0pXG5cbiAgICBjb25zdCB1bnN1YnNjcmliZSA9IG11dGF0aW9uQ2FjaGUuc3Vic2NyaWJlKFxuICAgICAgbm90aWZ5TWFuYWdlci5iYXRjaENhbGxzKCgpID0+IHtcbiAgICAgICAgY29uc3QgbmV4dFJlc3VsdCA9IHJlcGxhY2VFcXVhbERlZXAoXG4gICAgICAgICAgcmVzdWx0KCksXG4gICAgICAgICAgZ2V0UmVzdWx0KG11dGF0aW9uQ2FjaGUsIG11dGF0aW9uU3RhdGVPcHRpb25zRm4oKSksXG4gICAgICAgIClcbiAgICAgICAgaWYgKHJlc3VsdCgpICE9PSBuZXh0UmVzdWx0KSB7XG4gICAgICAgICAgcmVzdWx0LnNldChuZXh0UmVzdWx0KVxuICAgICAgICB9XG4gICAgICB9KSxcbiAgICApXG5cbiAgICBkZXN0cm95UmVmLm9uRGVzdHJveSh1bnN1YnNjcmliZSlcblxuICAgIHJldHVybiByZXN1bHRcbiAgfSlcbn1cbiJdfQ==
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5qZWN0LW11dGF0aW9uLXN0YXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2luamVjdC1tdXRhdGlvbi1zdGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUM3RSxPQUFPLEVBTUwsYUFBYSxFQUNiLGdCQUFnQixHQUNqQixNQUFNLHNCQUFzQixDQUFBO0FBQzdCLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQTtBQUN2RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUN6RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQTtBQVU5RixTQUFTLFNBQVMsQ0FDaEIsYUFBNEIsRUFDNUIsT0FBc0M7SUFFdEMsT0FBTyxhQUFhO1NBQ2pCLE9BQU8sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDO1NBQ3hCLEdBQUcsQ0FDRixDQUFDLFFBQVEsRUFBVyxFQUFFLENBQ3BCLENBQUMsT0FBTyxDQUFDLE1BQU07UUFDYixDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FDWixRQUE2RCxDQUM5RDtRQUNILENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFZLENBQ2pDLENBQUE7QUFDTCxDQUFDO0FBTUQsTUFBTSxVQUFVLG1CQUFtQixDQUNqQyx5QkFBOEQsR0FBRyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFDeEUsT0FBb0M7SUFFcEMsT0FBTyxjQUFjLENBQUMsbUJBQW1CLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUU7UUFDakUsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFBO1FBQ3JDLE1BQU0sV0FBVyxHQUFHLGlCQUFpQixFQUFFLENBQUE7UUFFdkMsTUFBTSxhQUFhLEdBQUcsV0FBVyxDQUFDLGdCQUFnQixFQUFFLENBQUE7UUFFcEQsT0FBTyxxQkFBcUIsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFO1lBQ3hDLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FDbkIsU0FBUyxDQUFDLGFBQWEsRUFBRSxzQkFBc0IsRUFBRSxDQUFDLENBQ25ELENBQUE7WUFFRCxNQUFNLENBQ0osR0FBRyxFQUFFO2dCQUNILE1BQU0sb0JBQW9CLEdBQUcsc0JBQXNCLEVBQUUsQ0FBQTtnQkFDckQsU0FBUyxDQUFDLEdBQUcsRUFBRTtvQkFDYixnRkFBZ0Y7b0JBQ2hGLGtFQUFrRTtvQkFDbEUsTUFBTSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsYUFBYSxFQUFFLG9CQUFvQixDQUFDLENBQUMsQ0FBQTtnQkFDNUQsQ0FBQyxDQUFDLENBQUE7WUFDSixDQUFDLEVBQ0QsRUFBRSxRQUFRLEVBQUUsQ0FDYixDQUFBO1lBRUQsTUFBTSxXQUFXLEdBQUcsYUFBYSxDQUFDLFNBQVMsQ0FDekMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUU7Z0JBQzVCLE1BQU0sVUFBVSxHQUFHLGdCQUFnQixDQUNqQyxNQUFNLEVBQUUsRUFDUixTQUFTLENBQUMsYUFBYSxFQUFFLHNCQUFzQixFQUFFLENBQUMsQ0FDbkQsQ0FBQTtnQkFDRCxJQUFJLE1BQU0sRUFBRSxLQUFLLFVBQVUsRUFBRTtvQkFDM0IsTUFBTSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQTtpQkFDdkI7WUFDSCxDQUFDLENBQUMsQ0FDSCxDQUFBO1lBRUQsVUFBVSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FBQTtZQUVqQyxPQUFPLE1BQU0sQ0FBQTtRQUNmLENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQyxDQUFDLENBQUE7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGVzdHJveVJlZiwgZWZmZWN0LCBpbmplY3QsIHNpZ25hbCwgdW50cmFja2VkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7XG4gIHR5cGUgRGVmYXVsdEVycm9yLFxuICB0eXBlIE11dGF0aW9uLFxuICB0eXBlIE11dGF0aW9uQ2FjaGUsXG4gIHR5cGUgTXV0YXRpb25GaWx0ZXJzLFxuICB0eXBlIE11dGF0aW9uU3RhdGUsXG4gIG5vdGlmeU1hbmFnZXIsXG4gIHJlcGxhY2VFcXVhbERlZXAsXG59IGZyb20gJ0B0YW5zdGFjay9xdWVyeS1jb3JlJ1xuaW1wb3J0IHsgYXNzZXJ0SW5qZWN0b3IgfSBmcm9tICcuL3V0aWwvYXNzZXJ0LWluamVjdG9yL2Fzc2VydC1pbmplY3RvcidcbmltcG9ydCB7IGluamVjdFF1ZXJ5Q2xpZW50IH0gZnJvbSAnLi9pbmplY3QtcXVlcnktY2xpZW50J1xuaW1wb3J0IHsgbGF6eVNpZ25hbEluaXRpYWxpemVyIH0gZnJvbSAnLi91dGlsL2xhenktc2lnbmFsLWluaXRpYWxpemVyL2xhenktc2lnbmFsLWluaXRpYWxpemVyJ1xuaW1wb3J0IHR5cGUgeyBJbmplY3RvciwgU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcblxudHlwZSBNdXRhdGlvblN0YXRlT3B0aW9uczxUUmVzdWx0ID0gTXV0YXRpb25TdGF0ZT4gPSB7XG4gIGZpbHRlcnM/OiBNdXRhdGlvbkZpbHRlcnNcbiAgc2VsZWN0PzogKFxuICAgIG11dGF0aW9uOiBNdXRhdGlvbjx1bmtub3duLCBEZWZhdWx0RXJyb3IsIHVua25vd24sIHVua25vd24+LFxuICApID0+IFRSZXN1bHRcbn1cblxuZnVuY3Rpb24gZ2V0UmVzdWx0PFRSZXN1bHQgPSBNdXRhdGlvblN0YXRlPihcbiAgbXV0YXRpb25DYWNoZTogTXV0YXRpb25DYWNoZSxcbiAgb3B0aW9uczogTXV0YXRpb25TdGF0ZU9wdGlvbnM8VFJlc3VsdD4sXG4pOiBBcnJheTxUUmVzdWx0PiB7XG4gIHJldHVybiBtdXRhdGlvbkNhY2hlXG4gICAgLmZpbmRBbGwob3B0aW9ucy5maWx0ZXJzKVxuICAgIC5tYXAoXG4gICAgICAobXV0YXRpb24pOiBUUmVzdWx0ID0+XG4gICAgICAgIChvcHRpb25zLnNlbGVjdFxuICAgICAgICAgID8gb3B0aW9ucy5zZWxlY3QoXG4gICAgICAgICAgICAgIG11dGF0aW9uIGFzIE11dGF0aW9uPHVua25vd24sIERlZmF1bHRFcnJvciwgdW5rbm93biwgdW5rbm93bj4sXG4gICAgICAgICAgICApXG4gICAgICAgICAgOiBtdXRhdGlvbi5zdGF0ZSkgYXMgVFJlc3VsdCxcbiAgICApXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSW5qZWN0TXV0YXRpb25TdGF0ZU9wdGlvbnMge1xuICBpbmplY3Rvcj86IEluamVjdG9yXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpbmplY3RNdXRhdGlvblN0YXRlPFRSZXN1bHQgPSBNdXRhdGlvblN0YXRlPihcbiAgbXV0YXRpb25TdGF0ZU9wdGlvbnNGbjogKCkgPT4gTXV0YXRpb25TdGF0ZU9wdGlvbnM8VFJlc3VsdD4gPSAoKSA9PiAoe30pLFxuICBvcHRpb25zPzogSW5qZWN0TXV0YXRpb25TdGF0ZU9wdGlvbnMsXG4pOiBTaWduYWw8QXJyYXk8VFJlc3VsdD4+IHtcbiAgcmV0dXJuIGFzc2VydEluamVjdG9yKGluamVjdE11dGF0aW9uU3RhdGUsIG9wdGlvbnM/LmluamVjdG9yLCAoKSA9PiB7XG4gICAgY29uc3QgZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKVxuICAgIGNvbnN0IHF1ZXJ5Q2xpZW50ID0gaW5qZWN0UXVlcnlDbGllbnQoKVxuXG4gICAgY29uc3QgbXV0YXRpb25DYWNoZSA9IHF1ZXJ5Q2xpZW50LmdldE11dGF0aW9uQ2FjaGUoKVxuXG4gICAgcmV0dXJuIGxhenlTaWduYWxJbml0aWFsaXplcigoaW5qZWN0b3IpID0+IHtcbiAgICAgIGNvbnN0IHJlc3VsdCA9IHNpZ25hbDxBcnJheTxUUmVzdWx0Pj4oXG4gICAgICAgIGdldFJlc3VsdChtdXRhdGlvbkNhY2hlLCBtdXRhdGlvblN0YXRlT3B0aW9uc0ZuKCkpLFxuICAgICAgKVxuXG4gICAgICBlZmZlY3QoXG4gICAgICAgICgpID0+IHtcbiAgICAgICAgICBjb25zdCBtdXRhdGlvblN0YXRlT3B0aW9ucyA9IG11dGF0aW9uU3RhdGVPcHRpb25zRm4oKVxuICAgICAgICAgIHVudHJhY2tlZCgoKSA9PiB7XG4gICAgICAgICAgICAvLyBTZXR0aW5nIHRoZSBzaWduYWwgZnJvbSBhbiBlZmZlY3QgYmVjYXVzZSBpdCdzIGJvdGggJ2NvbXB1dGVkJyBmcm9tIG9wdGlvbnMoKVxuICAgICAgICAgICAgLy8gYW5kIG5lZWRzIHRvIGJlIHNldCBpbXBlcmF0aXZlbHkgaW4gdGhlIG11dGF0aW9uQ2FjaGUgbGlzdGVuZXIuXG4gICAgICAgICAgICByZXN1bHQuc2V0KGdldFJlc3VsdChtdXRhdGlvbkNhY2hlLCBtdXRhdGlvblN0YXRlT3B0aW9ucykpXG4gICAgICAgICAgfSlcbiAgICAgICAgfSxcbiAgICAgICAgeyBpbmplY3RvciB9LFxuICAgICAgKVxuXG4gICAgICBjb25zdCB1bnN1YnNjcmliZSA9IG11dGF0aW9uQ2FjaGUuc3Vic2NyaWJlKFxuICAgICAgICBub3RpZnlNYW5hZ2VyLmJhdGNoQ2FsbHMoKCkgPT4ge1xuICAgICAgICAgIGNvbnN0IG5leHRSZXN1bHQgPSByZXBsYWNlRXF1YWxEZWVwKFxuICAgICAgICAgICAgcmVzdWx0KCksXG4gICAgICAgICAgICBnZXRSZXN1bHQobXV0YXRpb25DYWNoZSwgbXV0YXRpb25TdGF0ZU9wdGlvbnNGbigpKSxcbiAgICAgICAgICApXG4gICAgICAgICAgaWYgKHJlc3VsdCgpICE9PSBuZXh0UmVzdWx0KSB7XG4gICAgICAgICAgICByZXN1bHQuc2V0KG5leHRSZXN1bHQpXG4gICAgICAgICAgfVxuICAgICAgICB9KSxcbiAgICAgIClcblxuICAgICAgZGVzdHJveVJlZi5vbkRlc3Ryb3kodW5zdWJzY3JpYmUpXG5cbiAgICAgIHJldHVybiByZXN1bHRcbiAgICB9KVxuICB9KVxufVxuIl19
@@ -1,29 +1,33 @@
1
- import { DestroyRef, computed, effect, inject, signal } from '@angular/core';
1
+ import { DestroyRef, Injector, computed, effect, inject, runInInjectionContext, signal, } from '@angular/core';
2
2
  import { MutationObserver, notifyManager } from '@tanstack/query-core';
3
3
  import { assertInjector } from './util/assert-injector/assert-injector';
4
4
  import { signalProxy } from './signal-proxy';
5
5
  import { injectQueryClient } from './inject-query-client';
6
6
  import { noop } from './util';
7
+ import { lazyInit } from './util/lazy-init/lazy-init';
7
8
  export function injectMutation(options, injector) {
8
9
  return assertInjector(injectMutation, injector, () => {
9
10
  const queryClient = injectQueryClient();
11
+ const currentInjector = inject(Injector);
10
12
  const destroyRef = inject(DestroyRef);
11
- const observer = new MutationObserver(queryClient, options(queryClient));
12
- const mutate = (variables, mutateOptions) => {
13
- observer.mutate(variables, mutateOptions).catch(noop);
14
- };
15
- effect(() => {
16
- observer.setOptions(options(queryClient));
17
- });
18
- const result = signal(observer.getCurrentResult());
19
- const unsubscribe = observer.subscribe(notifyManager.batchCalls((val) => result.set(val)));
20
- destroyRef.onDestroy(unsubscribe);
21
- const resultSignal = computed(() => ({
22
- ...result(),
23
- mutate,
24
- mutateAsync: result().mutate,
13
+ return lazyInit(() => runInInjectionContext(currentInjector, () => {
14
+ const observer = new MutationObserver(queryClient, options(queryClient));
15
+ const mutate = (variables, mutateOptions) => {
16
+ observer.mutate(variables, mutateOptions).catch(noop);
17
+ };
18
+ effect(() => {
19
+ observer.setOptions(options(queryClient));
20
+ });
21
+ const result = signal(observer.getCurrentResult());
22
+ const unsubscribe = observer.subscribe(notifyManager.batchCalls((val) => result.set(val)));
23
+ destroyRef.onDestroy(unsubscribe);
24
+ const resultSignal = computed(() => ({
25
+ ...result(),
26
+ mutate,
27
+ mutateAsync: result().mutate,
28
+ }));
29
+ return signalProxy(resultSignal);
25
30
  }));
26
- return signalProxy(resultSignal);
27
31
  });
28
32
  }
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5qZWN0LW11dGF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2luamVjdC1tdXRhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUM1RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDdEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHdDQUF3QyxDQUFBO0FBQ3ZFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUM1QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUN6RCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sUUFBUSxDQUFBO0FBVTdCLE1BQU0sVUFBVSxjQUFjLENBTTVCLE9BRStELEVBQy9ELFFBQW1CO0lBRW5CLE9BQU8sY0FBYyxDQUFDLGNBQWMsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFO1FBQ25ELE1BQU0sV0FBVyxHQUFHLGlCQUFpQixFQUFFLENBQUE7UUFDdkMsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFBO1FBRXJDLE1BQU0sUUFBUSxHQUFHLElBQUksZ0JBQWdCLENBQ25DLFdBQVcsRUFDWCxPQUFPLENBQUMsV0FBVyxDQUFDLENBQ3JCLENBQUE7UUFDRCxNQUFNLE1BQU0sR0FBOEQsQ0FDeEUsU0FBUyxFQUNULGFBQWEsRUFDYixFQUFFO1lBQ0YsUUFBUSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsYUFBYSxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFBO1FBQ3ZELENBQUMsQ0FBQTtRQUVELE1BQU0sQ0FBQyxHQUFHLEVBQUU7WUFDVixRQUFRLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFBO1FBQzNDLENBQUMsQ0FBQyxDQUFBO1FBRUYsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLENBQUE7UUFFbEQsTUFBTSxXQUFXLEdBQUcsUUFBUSxDQUFDLFNBQVMsQ0FDcEMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUNuRCxDQUFBO1FBRUQsVUFBVSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FBQTtRQUVqQyxNQUFNLFlBQVksR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQztZQUNuQyxHQUFHLE1BQU0sRUFBRTtZQUNYLE1BQU07WUFDTixXQUFXLEVBQUUsTUFBTSxFQUFFLENBQUMsTUFBTTtTQUM3QixDQUFDLENBQUMsQ0FBQTtRQUVILE9BQU8sV0FBVyxDQUFDLFlBQVksQ0FLOUIsQ0FBQTtJQUNILENBQUMsQ0FBQyxDQUFBO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERlc3Ryb3lSZWYsIGNvbXB1dGVkLCBlZmZlY3QsIGluamVjdCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IE11dGF0aW9uT2JzZXJ2ZXIsIG5vdGlmeU1hbmFnZXIgfSBmcm9tICdAdGFuc3RhY2svcXVlcnktY29yZSdcbmltcG9ydCB7IGFzc2VydEluamVjdG9yIH0gZnJvbSAnLi91dGlsL2Fzc2VydC1pbmplY3Rvci9hc3NlcnQtaW5qZWN0b3InXG5pbXBvcnQgeyBzaWduYWxQcm94eSB9IGZyb20gJy4vc2lnbmFsLXByb3h5J1xuaW1wb3J0IHsgaW5qZWN0UXVlcnlDbGllbnQgfSBmcm9tICcuL2luamVjdC1xdWVyeS1jbGllbnQnXG5pbXBvcnQgeyBub29wIH0gZnJvbSAnLi91dGlsJ1xuaW1wb3J0IHR5cGUgeyBEZWZhdWx0RXJyb3IsIFF1ZXJ5Q2xpZW50IH0gZnJvbSAnQHRhbnN0YWNrL3F1ZXJ5LWNvcmUnXG5pbXBvcnQgdHlwZSB7IEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcblxuaW1wb3J0IHR5cGUge1xuICBDcmVhdGVNdXRhdGVGdW5jdGlvbixcbiAgQ3JlYXRlTXV0YXRpb25PcHRpb25zLFxuICBDcmVhdGVNdXRhdGlvblJlc3VsdCxcbn0gZnJvbSAnLi90eXBlcydcblxuZXhwb3J0IGZ1bmN0aW9uIGluamVjdE11dGF0aW9uPFxuICBURGF0YSA9IHVua25vd24sXG4gIFRFcnJvciA9IERlZmF1bHRFcnJvcixcbiAgVFZhcmlhYmxlcyA9IHZvaWQsXG4gIFRDb250ZXh0ID0gdW5rbm93bixcbj4oXG4gIG9wdGlvbnM6IChcbiAgICBjbGllbnQ6IFF1ZXJ5Q2xpZW50LFxuICApID0+IENyZWF0ZU11dGF0aW9uT3B0aW9uczxURGF0YSwgVEVycm9yLCBUVmFyaWFibGVzLCBUQ29udGV4dD4sXG4gIGluamVjdG9yPzogSW5qZWN0b3IsXG4pOiBDcmVhdGVNdXRhdGlvblJlc3VsdDxURGF0YSwgVEVycm9yLCBUVmFyaWFibGVzLCBUQ29udGV4dD4ge1xuICByZXR1cm4gYXNzZXJ0SW5qZWN0b3IoaW5qZWN0TXV0YXRpb24sIGluamVjdG9yLCAoKSA9PiB7XG4gICAgY29uc3QgcXVlcnlDbGllbnQgPSBpbmplY3RRdWVyeUNsaWVudCgpXG4gICAgY29uc3QgZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKVxuXG4gICAgY29uc3Qgb2JzZXJ2ZXIgPSBuZXcgTXV0YXRpb25PYnNlcnZlcjxURGF0YSwgVEVycm9yLCBUVmFyaWFibGVzLCBUQ29udGV4dD4oXG4gICAgICBxdWVyeUNsaWVudCxcbiAgICAgIG9wdGlvbnMocXVlcnlDbGllbnQpLFxuICAgIClcbiAgICBjb25zdCBtdXRhdGU6IENyZWF0ZU11dGF0ZUZ1bmN0aW9uPFREYXRhLCBURXJyb3IsIFRWYXJpYWJsZXMsIFRDb250ZXh0PiA9IChcbiAgICAgIHZhcmlhYmxlcyxcbiAgICAgIG11dGF0ZU9wdGlvbnMsXG4gICAgKSA9PiB7XG4gICAgICBvYnNlcnZlci5tdXRhdGUodmFyaWFibGVzLCBtdXRhdGVPcHRpb25zKS5jYXRjaChub29wKVxuICAgIH1cblxuICAgIGVmZmVjdCgoKSA9PiB7XG4gICAgICBvYnNlcnZlci5zZXRPcHRpb25zKG9wdGlvbnMocXVlcnlDbGllbnQpKVxuICAgIH0pXG5cbiAgICBjb25zdCByZXN1bHQgPSBzaWduYWwob2JzZXJ2ZXIuZ2V0Q3VycmVudFJlc3VsdCgpKVxuXG4gICAgY29uc3QgdW5zdWJzY3JpYmUgPSBvYnNlcnZlci5zdWJzY3JpYmUoXG4gICAgICBub3RpZnlNYW5hZ2VyLmJhdGNoQ2FsbHMoKHZhbCkgPT4gcmVzdWx0LnNldCh2YWwpKSxcbiAgICApXG5cbiAgICBkZXN0cm95UmVmLm9uRGVzdHJveSh1bnN1YnNjcmliZSlcblxuICAgIGNvbnN0IHJlc3VsdFNpZ25hbCA9IGNvbXB1dGVkKCgpID0+ICh7XG4gICAgICAuLi5yZXN1bHQoKSxcbiAgICAgIG11dGF0ZSxcbiAgICAgIG11dGF0ZUFzeW5jOiByZXN1bHQoKS5tdXRhdGUsXG4gICAgfSkpXG5cbiAgICByZXR1cm4gc2lnbmFsUHJveHkocmVzdWx0U2lnbmFsKSBhcyB1bmtub3duIGFzIENyZWF0ZU11dGF0aW9uUmVzdWx0PFxuICAgICAgVERhdGEsXG4gICAgICBURXJyb3IsXG4gICAgICBUVmFyaWFibGVzLFxuICAgICAgVENvbnRleHRcbiAgICA+XG4gIH0pXG59XG4iXX0=
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5qZWN0LW11dGF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2luamVjdC1tdXRhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsVUFBVSxFQUNWLFFBQVEsRUFDUixRQUFRLEVBQ1IsTUFBTSxFQUNOLE1BQU0sRUFDTixxQkFBcUIsRUFDckIsTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUN0RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0NBQXdDLENBQUE7QUFDdkUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBQzVDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBQ3pELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxRQUFRLENBQUE7QUFFN0IsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDRCQUE0QixDQUFBO0FBUXJELE1BQU0sVUFBVSxjQUFjLENBTTVCLE9BRStELEVBQy9ELFFBQW1CO0lBRW5CLE9BQU8sY0FBYyxDQUFDLGNBQWMsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFO1FBQ25ELE1BQU0sV0FBVyxHQUFHLGlCQUFpQixFQUFFLENBQUE7UUFDdkMsTUFBTSxlQUFlLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFBO1FBQ3hDLE1BQU0sVUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQTtRQUVyQyxPQUFPLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FDbkIscUJBQXFCLENBQUMsZUFBZSxFQUFFLEdBQUcsRUFBRTtZQUMxQyxNQUFNLFFBQVEsR0FBRyxJQUFJLGdCQUFnQixDQUtuQyxXQUFXLEVBQUUsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUE7WUFDcEMsTUFBTSxNQUFNLEdBS1IsQ0FBQyxTQUFTLEVBQUUsYUFBYSxFQUFFLEVBQUU7Z0JBQy9CLFFBQVEsQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLGFBQWEsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQTtZQUN2RCxDQUFDLENBQUE7WUFFRCxNQUFNLENBQUMsR0FBRyxFQUFFO2dCQUNWLFFBQVEsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUE7WUFDM0MsQ0FBQyxDQUFDLENBQUE7WUFFRixNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLGdCQUFnQixFQUFFLENBQUMsQ0FBQTtZQUVsRCxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsU0FBUyxDQUNwQyxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQ25ELENBQUE7WUFFRCxVQUFVLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFBO1lBRWpDLE1BQU0sWUFBWSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO2dCQUNuQyxHQUFHLE1BQU0sRUFBRTtnQkFDWCxNQUFNO2dCQUNOLFdBQVcsRUFBRSxNQUFNLEVBQUUsQ0FBQyxNQUFNO2FBQzdCLENBQUMsQ0FBQyxDQUFBO1lBRUgsT0FBTyxXQUFXLENBQUMsWUFBWSxDQUs5QixDQUFBO1FBQ0gsQ0FBQyxDQUFDLENBQ0gsQ0FBQTtJQUNILENBQUMsQ0FBQyxDQUFBO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIERlc3Ryb3lSZWYsXG4gIEluamVjdG9yLFxuICBjb21wdXRlZCxcbiAgZWZmZWN0LFxuICBpbmplY3QsXG4gIHJ1bkluSW5qZWN0aW9uQ29udGV4dCxcbiAgc2lnbmFsLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgTXV0YXRpb25PYnNlcnZlciwgbm90aWZ5TWFuYWdlciB9IGZyb20gJ0B0YW5zdGFjay9xdWVyeS1jb3JlJ1xuaW1wb3J0IHsgYXNzZXJ0SW5qZWN0b3IgfSBmcm9tICcuL3V0aWwvYXNzZXJ0LWluamVjdG9yL2Fzc2VydC1pbmplY3RvcidcbmltcG9ydCB7IHNpZ25hbFByb3h5IH0gZnJvbSAnLi9zaWduYWwtcHJveHknXG5pbXBvcnQgeyBpbmplY3RRdWVyeUNsaWVudCB9IGZyb20gJy4vaW5qZWN0LXF1ZXJ5LWNsaWVudCdcbmltcG9ydCB7IG5vb3AgfSBmcm9tICcuL3V0aWwnXG5cbmltcG9ydCB7IGxhenlJbml0IH0gZnJvbSAnLi91dGlsL2xhenktaW5pdC9sYXp5LWluaXQnXG5pbXBvcnQgdHlwZSB7IERlZmF1bHRFcnJvciwgUXVlcnlDbGllbnQgfSBmcm9tICdAdGFuc3RhY2svcXVlcnktY29yZSdcbmltcG9ydCB0eXBlIHtcbiAgQ3JlYXRlTXV0YXRlRnVuY3Rpb24sXG4gIENyZWF0ZU11dGF0aW9uT3B0aW9ucyxcbiAgQ3JlYXRlTXV0YXRpb25SZXN1bHQsXG59IGZyb20gJy4vdHlwZXMnXG5cbmV4cG9ydCBmdW5jdGlvbiBpbmplY3RNdXRhdGlvbjxcbiAgVERhdGEgPSB1bmtub3duLFxuICBURXJyb3IgPSBEZWZhdWx0RXJyb3IsXG4gIFRWYXJpYWJsZXMgPSB2b2lkLFxuICBUQ29udGV4dCA9IHVua25vd24sXG4+KFxuICBvcHRpb25zOiAoXG4gICAgY2xpZW50OiBRdWVyeUNsaWVudCxcbiAgKSA9PiBDcmVhdGVNdXRhdGlvbk9wdGlvbnM8VERhdGEsIFRFcnJvciwgVFZhcmlhYmxlcywgVENvbnRleHQ+LFxuICBpbmplY3Rvcj86IEluamVjdG9yLFxuKTogQ3JlYXRlTXV0YXRpb25SZXN1bHQ8VERhdGEsIFRFcnJvciwgVFZhcmlhYmxlcywgVENvbnRleHQ+IHtcbiAgcmV0dXJuIGFzc2VydEluamVjdG9yKGluamVjdE11dGF0aW9uLCBpbmplY3RvciwgKCkgPT4ge1xuICAgIGNvbnN0IHF1ZXJ5Q2xpZW50ID0gaW5qZWN0UXVlcnlDbGllbnQoKVxuICAgIGNvbnN0IGN1cnJlbnRJbmplY3RvciA9IGluamVjdChJbmplY3RvcilcbiAgICBjb25zdCBkZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpXG5cbiAgICByZXR1cm4gbGF6eUluaXQoKCkgPT5cbiAgICAgIHJ1bkluSW5qZWN0aW9uQ29udGV4dChjdXJyZW50SW5qZWN0b3IsICgpID0+IHtcbiAgICAgICAgY29uc3Qgb2JzZXJ2ZXIgPSBuZXcgTXV0YXRpb25PYnNlcnZlcjxcbiAgICAgICAgICBURGF0YSxcbiAgICAgICAgICBURXJyb3IsXG4gICAgICAgICAgVFZhcmlhYmxlcyxcbiAgICAgICAgICBUQ29udGV4dFxuICAgICAgICA+KHF1ZXJ5Q2xpZW50LCBvcHRpb25zKHF1ZXJ5Q2xpZW50KSlcbiAgICAgICAgY29uc3QgbXV0YXRlOiBDcmVhdGVNdXRhdGVGdW5jdGlvbjxcbiAgICAgICAgICBURGF0YSxcbiAgICAgICAgICBURXJyb3IsXG4gICAgICAgICAgVFZhcmlhYmxlcyxcbiAgICAgICAgICBUQ29udGV4dFxuICAgICAgICA+ID0gKHZhcmlhYmxlcywgbXV0YXRlT3B0aW9ucykgPT4ge1xuICAgICAgICAgIG9ic2VydmVyLm11dGF0ZSh2YXJpYWJsZXMsIG11dGF0ZU9wdGlvbnMpLmNhdGNoKG5vb3ApXG4gICAgICAgIH1cblxuICAgICAgICBlZmZlY3QoKCkgPT4ge1xuICAgICAgICAgIG9ic2VydmVyLnNldE9wdGlvbnMob3B0aW9ucyhxdWVyeUNsaWVudCkpXG4gICAgICAgIH0pXG5cbiAgICAgICAgY29uc3QgcmVzdWx0ID0gc2lnbmFsKG9ic2VydmVyLmdldEN1cnJlbnRSZXN1bHQoKSlcblxuICAgICAgICBjb25zdCB1bnN1YnNjcmliZSA9IG9ic2VydmVyLnN1YnNjcmliZShcbiAgICAgICAgICBub3RpZnlNYW5hZ2VyLmJhdGNoQ2FsbHMoKHZhbCkgPT4gcmVzdWx0LnNldCh2YWwpKSxcbiAgICAgICAgKVxuXG4gICAgICAgIGRlc3Ryb3lSZWYub25EZXN0cm95KHVuc3Vic2NyaWJlKVxuXG4gICAgICAgIGNvbnN0IHJlc3VsdFNpZ25hbCA9IGNvbXB1dGVkKCgpID0+ICh7XG4gICAgICAgICAgLi4ucmVzdWx0KCksXG4gICAgICAgICAgbXV0YXRlLFxuICAgICAgICAgIG11dGF0ZUFzeW5jOiByZXN1bHQoKS5tdXRhdGUsXG4gICAgICAgIH0pKVxuXG4gICAgICAgIHJldHVybiBzaWduYWxQcm94eShyZXN1bHRTaWduYWwpIGFzIHVua25vd24gYXMgQ3JlYXRlTXV0YXRpb25SZXN1bHQ8XG4gICAgICAgICAgVERhdGEsXG4gICAgICAgICAgVEVycm9yLFxuICAgICAgICAgIFRWYXJpYWJsZXMsXG4gICAgICAgICAgVENvbnRleHRcbiAgICAgICAgPlxuICAgICAgfSksXG4gICAgKVxuICB9KVxufVxuIl19
@@ -0,0 +1,31 @@
1
+ import { untracked } from '@angular/core';
2
+ export function lazyInit(initializer) {
3
+ let object = null;
4
+ const initializeObject = () => {
5
+ if (!object) {
6
+ object = untracked(() => initializer());
7
+ }
8
+ };
9
+ queueMicrotask(() => initializeObject());
10
+ return new Proxy({}, {
11
+ get(_, prop, receiver) {
12
+ initializeObject();
13
+ return Reflect.get(object, prop, receiver);
14
+ },
15
+ has(_, prop) {
16
+ initializeObject();
17
+ return Reflect.has(object, prop);
18
+ },
19
+ ownKeys() {
20
+ initializeObject();
21
+ return Reflect.ownKeys(object);
22
+ },
23
+ getOwnPropertyDescriptor() {
24
+ return {
25
+ enumerable: true,
26
+ configurable: true,
27
+ };
28
+ },
29
+ });
30
+ }
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF6eS1pbml0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3V0aWwvbGF6eS1pbml0L2xhenktaW5pdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBRXpDLE1BQU0sVUFBVSxRQUFRLENBQW1CLFdBQW9CO0lBQzdELElBQUksTUFBTSxHQUFhLElBQUksQ0FBQTtJQUUzQixNQUFNLGdCQUFnQixHQUFHLEdBQUcsRUFBRTtRQUM1QixJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ1gsTUFBTSxHQUFHLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFBO1NBQ3hDO0lBQ0gsQ0FBQyxDQUFBO0lBRUQsY0FBYyxDQUFDLEdBQUcsRUFBRSxDQUFDLGdCQUFnQixFQUFFLENBQUMsQ0FBQTtJQUV4QyxPQUFPLElBQUksS0FBSyxDQUFJLEVBQU8sRUFBRTtRQUMzQixHQUFHLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxRQUFRO1lBQ25CLGdCQUFnQixFQUFFLENBQUE7WUFDbEIsT0FBTyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQVcsRUFBRSxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQUE7UUFDakQsQ0FBQztRQUNELEdBQUcsQ0FBQyxDQUFDLEVBQUUsSUFBSTtZQUNULGdCQUFnQixFQUFFLENBQUE7WUFDbEIsT0FBTyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQVcsRUFBRSxJQUFJLENBQUMsQ0FBQTtRQUN2QyxDQUFDO1FBQ0QsT0FBTztZQUNMLGdCQUFnQixFQUFFLENBQUE7WUFDbEIsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQVcsQ0FBQyxDQUFBO1FBQ3JDLENBQUM7UUFDRCx3QkFBd0I7WUFDdEIsT0FBTztnQkFDTCxVQUFVLEVBQUUsSUFBSTtnQkFDaEIsWUFBWSxFQUFFLElBQUk7YUFDbkIsQ0FBQTtRQUNILENBQUM7S0FDRixDQUFDLENBQUE7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdW50cmFja2VkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcblxuZXhwb3J0IGZ1bmN0aW9uIGxhenlJbml0PFQgZXh0ZW5kcyBvYmplY3Q+KGluaXRpYWxpemVyOiAoKSA9PiBUKTogVCB7XG4gIGxldCBvYmplY3Q6IFQgfCBudWxsID0gbnVsbFxuXG4gIGNvbnN0IGluaXRpYWxpemVPYmplY3QgPSAoKSA9PiB7XG4gICAgaWYgKCFvYmplY3QpIHtcbiAgICAgIG9iamVjdCA9IHVudHJhY2tlZCgoKSA9PiBpbml0aWFsaXplcigpKVxuICAgIH1cbiAgfVxuXG4gIHF1ZXVlTWljcm90YXNrKCgpID0+IGluaXRpYWxpemVPYmplY3QoKSlcblxuICByZXR1cm4gbmV3IFByb3h5PFQ+KHt9IGFzIFQsIHtcbiAgICBnZXQoXywgcHJvcCwgcmVjZWl2ZXIpIHtcbiAgICAgIGluaXRpYWxpemVPYmplY3QoKVxuICAgICAgcmV0dXJuIFJlZmxlY3QuZ2V0KG9iamVjdCBhcyBULCBwcm9wLCByZWNlaXZlcilcbiAgICB9LFxuICAgIGhhcyhfLCBwcm9wKSB7XG4gICAgICBpbml0aWFsaXplT2JqZWN0KClcbiAgICAgIHJldHVybiBSZWZsZWN0LmhhcyhvYmplY3QgYXMgVCwgcHJvcClcbiAgICB9LFxuICAgIG93bktleXMoKSB7XG4gICAgICBpbml0aWFsaXplT2JqZWN0KClcbiAgICAgIHJldHVybiBSZWZsZWN0Lm93bktleXMob2JqZWN0IGFzIFQpXG4gICAgfSxcbiAgICBnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICB9XG4gICAgfSxcbiAgfSlcbn1cbiJdfQ==
@@ -0,0 +1,14 @@
1
+ import { Injector, computed, inject, untracked, } from '@angular/core';
2
+ export function lazySignalInitializer(initializerFn) {
3
+ const injector = inject(Injector);
4
+ let source = null;
5
+ const unwrapSignal = () => {
6
+ if (!source) {
7
+ source = untracked(() => initializerFn(injector));
8
+ }
9
+ return source();
10
+ };
11
+ queueMicrotask(() => unwrapSignal());
12
+ return computed(unwrapSignal);
13
+ }
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF6eS1zaWduYWwtaW5pdGlhbGl6ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdXRpbC9sYXp5LXNpZ25hbC1pbml0aWFsaXplci9sYXp5LXNpZ25hbC1pbml0aWFsaXplci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsUUFBUSxFQUVSLFFBQVEsRUFDUixNQUFNLEVBQ04sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFBO0FBSXRCLE1BQU0sVUFBVSxxQkFBcUIsQ0FDbkMsYUFBcUM7SUFFckMsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFBO0lBRWpDLElBQUksTUFBTSxHQUFxQixJQUFJLENBQUE7SUFFbkMsTUFBTSxZQUFZLEdBQUcsR0FBRyxFQUFFO1FBQ3hCLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDWCxNQUFNLEdBQUcsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFBO1NBQ2xEO1FBQ0QsT0FBTyxNQUFNLEVBQUUsQ0FBQTtJQUNqQixDQUFDLENBQUE7SUFFRCxjQUFjLENBQUMsR0FBRyxFQUFFLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQTtJQUVwQyxPQUFPLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQTtBQUMvQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgSW5qZWN0b3IsXG4gIHR5cGUgU2lnbmFsLFxuICBjb21wdXRlZCxcbiAgaW5qZWN0LFxuICB1bnRyYWNrZWQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5cbnR5cGUgU2lnbmFsSW5pdGlhbGl6ZXJGbjxUPiA9IChpbmplY3RvcjogSW5qZWN0b3IpID0+IFNpZ25hbDxUPlxuXG5leHBvcnQgZnVuY3Rpb24gbGF6eVNpZ25hbEluaXRpYWxpemVyPFQ+KFxuICBpbml0aWFsaXplckZuOiBTaWduYWxJbml0aWFsaXplckZuPFQ+LFxuKSB7XG4gIGNvbnN0IGluamVjdG9yID0gaW5qZWN0KEluamVjdG9yKVxuXG4gIGxldCBzb3VyY2U6IFNpZ25hbDxUPiB8IG51bGwgPSBudWxsXG5cbiAgY29uc3QgdW53cmFwU2lnbmFsID0gKCkgPT4ge1xuICAgIGlmICghc291cmNlKSB7XG4gICAgICBzb3VyY2UgPSB1bnRyYWNrZWQoKCkgPT4gaW5pdGlhbGl6ZXJGbihpbmplY3RvcikpXG4gICAgfVxuICAgIHJldHVybiBzb3VyY2UoKVxuICB9XG5cbiAgcXVldWVNaWNyb3Rhc2soKCkgPT4gdW53cmFwU2lnbmFsKCkpXG5cbiAgcmV0dXJuIGNvbXB1dGVkKHVud3JhcFNpZ25hbClcbn1cbiJdfQ==
@@ -55,7 +55,7 @@ function lazyInit(initializer) {
55
55
  let object = null;
56
56
  const initializeObject = () => {
57
57
  if (!object) {
58
- object = initializer();
58
+ object = untracked(() => initializer());
59
59
  }
60
60
  };
61
61
  queueMicrotask(() => initializeObject());
@@ -102,8 +102,7 @@ function createBaseQuery(options, Observer, queryClient) {
102
102
  });
103
103
  const observer = new Observer(queryClient, defaultedOptionsSignal());
104
104
  const resultSignal = signal(observer.getOptimisticResult(defaultedOptionsSignal()));
105
- // Effects should not be called inside reactive contexts
106
- untracked(() => effect(() => {
105
+ effect(() => {
107
106
  const defaultedOptions = defaultedOptionsSignal();
108
107
  observer.setOptions(defaultedOptions, {
109
108
  // Do not notify on updates because of changes in the options because
@@ -113,7 +112,7 @@ function createBaseQuery(options, Observer, queryClient) {
113
112
  untracked(() => {
114
113
  resultSignal.set(observer.getOptimisticResult(defaultedOptions));
115
114
  });
116
- }));
115
+ });
117
116
  // observer.trackResult is not used as this optimization is not needed for Angular
118
117
  const unsubscribe = observer.subscribe(notifyManager.batchCalls((val) => resultSignal.set(val)));
119
118
  destroyRef.onDestroy(unsubscribe);
@@ -257,26 +256,42 @@ function noop() { }
257
256
  function injectMutation(options, injector) {
258
257
  return assertInjector(injectMutation, injector, () => {
259
258
  const queryClient = injectQueryClient();
259
+ const currentInjector = inject(Injector);
260
260
  const destroyRef = inject(DestroyRef);
261
- const observer = new MutationObserver(queryClient, options(queryClient));
262
- const mutate = (variables, mutateOptions) => {
263
- observer.mutate(variables, mutateOptions).catch(noop);
264
- };
265
- effect(() => {
266
- observer.setOptions(options(queryClient));
267
- });
268
- const result = signal(observer.getCurrentResult());
269
- const unsubscribe = observer.subscribe(notifyManager.batchCalls((val) => result.set(val)));
270
- destroyRef.onDestroy(unsubscribe);
271
- const resultSignal = computed(() => ({
272
- ...result(),
273
- mutate,
274
- mutateAsync: result().mutate,
261
+ return lazyInit(() => runInInjectionContext(currentInjector, () => {
262
+ const observer = new MutationObserver(queryClient, options(queryClient));
263
+ const mutate = (variables, mutateOptions) => {
264
+ observer.mutate(variables, mutateOptions).catch(noop);
265
+ };
266
+ effect(() => {
267
+ observer.setOptions(options(queryClient));
268
+ });
269
+ const result = signal(observer.getCurrentResult());
270
+ const unsubscribe = observer.subscribe(notifyManager.batchCalls((val) => result.set(val)));
271
+ destroyRef.onDestroy(unsubscribe);
272
+ const resultSignal = computed(() => ({
273
+ ...result(),
274
+ mutate,
275
+ mutateAsync: result().mutate,
276
+ }));
277
+ return signalProxy(resultSignal);
275
278
  }));
276
- return signalProxy(resultSignal);
277
279
  });
278
280
  }
279
281
 
282
+ function lazySignalInitializer(initializerFn) {
283
+ const injector = inject(Injector);
284
+ let source = null;
285
+ const unwrapSignal = () => {
286
+ if (!source) {
287
+ source = untracked(() => initializerFn(injector));
288
+ }
289
+ return source();
290
+ };
291
+ queueMicrotask(() => unwrapSignal());
292
+ return computed(unwrapSignal);
293
+ }
294
+
280
295
  function getResult(mutationCache, options) {
281
296
  return mutationCache
282
297
  .findAll(options.filters)
@@ -289,23 +304,25 @@ function injectMutationState(mutationStateOptionsFn = () => ({}), options) {
289
304
  const destroyRef = inject(DestroyRef);
290
305
  const queryClient = injectQueryClient();
291
306
  const mutationCache = queryClient.getMutationCache();
292
- const result = signal(getResult(mutationCache, mutationStateOptionsFn()));
293
- effect(() => {
294
- const mutationStateOptions = mutationStateOptionsFn();
295
- untracked(() => {
296
- // Setting the signal from an effect because it's both 'computed' from options()
297
- // and needs to be set imperatively in the mutationCache listener.
298
- result.set(getResult(mutationCache, mutationStateOptions));
299
- });
307
+ return lazySignalInitializer((injector) => {
308
+ const result = signal(getResult(mutationCache, mutationStateOptionsFn()));
309
+ effect(() => {
310
+ const mutationStateOptions = mutationStateOptionsFn();
311
+ untracked(() => {
312
+ // Setting the signal from an effect because it's both 'computed' from options()
313
+ // and needs to be set imperatively in the mutationCache listener.
314
+ result.set(getResult(mutationCache, mutationStateOptions));
315
+ });
316
+ }, { injector });
317
+ const unsubscribe = mutationCache.subscribe(notifyManager.batchCalls(() => {
318
+ const nextResult = replaceEqualDeep(result(), getResult(mutationCache, mutationStateOptionsFn()));
319
+ if (result() !== nextResult) {
320
+ result.set(nextResult);
321
+ }
322
+ }));
323
+ destroyRef.onDestroy(unsubscribe);
324
+ return result;
300
325
  });
301
- const unsubscribe = mutationCache.subscribe(notifyManager.batchCalls(() => {
302
- const nextResult = replaceEqualDeep(result(), getResult(mutationCache, mutationStateOptionsFn()));
303
- if (result() !== nextResult) {
304
- result.set(nextResult);
305
- }
306
- }));
307
- destroyRef.onDestroy(unsubscribe);
308
- return result;
309
326
  });
310
327
  }
311
328