From dd6278b1d2021a38273d1e3ecf140cbd1350b9aa Mon Sep 17 00:00:00 2001 From: Arnoud de Vries <6420061+arnoud-dv@users.noreply.github.com> Date: Thu, 23 Oct 2025 14:37:06 +0200 Subject: [PATCH] refactor(angular-query): make injectIsMutating signal read-only --- .changeset/inject-is-mutating-readonly.md | 5 +++++ .../angular-query-experimental/src/inject-is-mutating.ts | 4 ++-- packages/angular-query-experimental/tsconfig.json | 7 +++++++ 3 files changed, 14 insertions(+), 2 deletions(-) create mode 100644 .changeset/inject-is-mutating-readonly.md diff --git a/.changeset/inject-is-mutating-readonly.md b/.changeset/inject-is-mutating-readonly.md new file mode 100644 index 0000000000..ce43e97138 --- /dev/null +++ b/.changeset/inject-is-mutating-readonly.md @@ -0,0 +1,5 @@ +--- +'@tanstack/angular-query-experimental': patch +--- + +Make `injectIsMutating` signal read-only to prevent external modifications to the internal state \ No newline at end of file diff --git a/packages/angular-query-experimental/src/inject-is-mutating.ts b/packages/angular-query-experimental/src/inject-is-mutating.ts index 8f11291b0e..7bab410634 100644 --- a/packages/angular-query-experimental/src/inject-is-mutating.ts +++ b/packages/angular-query-experimental/src/inject-is-mutating.ts @@ -25,7 +25,7 @@ export interface InjectIsMutatingOptions { * Can be used for app-wide loading indicators * @param filters - The filters to apply to the query. * @param options - Additional configuration - * @returns signal with number of fetching mutations. + * @returns A read-only signal with the number of fetching mutations. */ export function injectIsMutating( filters?: MutationFilters, @@ -60,5 +60,5 @@ export function injectIsMutating( destroyRef.onDestroy(unsubscribe) - return result + return result.asReadonly() } diff --git a/packages/angular-query-experimental/tsconfig.json b/packages/angular-query-experimental/tsconfig.json index 1aea53d869..2aecb18545 100644 --- a/packages/angular-query-experimental/tsconfig.json +++ b/packages/angular-query-experimental/tsconfig.json @@ -7,6 +7,13 @@ "useDefineForClassFields": false, "target": "ES2022" }, + "angularCompilerOptions": { + "enableI18nLegacyMessageIdFormat": false, + "strictInjectionParameters": true, + "strictInputAccessModifiers": true, + "strictStandalone": true, + "strictTemplates": true + }, "include": ["src", "scripts", "test-setup.ts", "*.config.*", "package.json"], "references": [{ "path": "../query-core" }, { "path": "../query-devtools" }] }