Skip to content

Commit 4d8c27b

Browse files
samuel871211TkDodo
andauthored
refactor(query-core): improve type safety and performance in getMutationDefaults (#8669)
- Change return type to exclude mutationKey using OmitKeyof - Replace spread operator with Object.assign for better performance Co-authored-by: Dominik Dorfmeister <[email protected]>
1 parent c0f27f6 commit 4d8c27b

File tree

1 file changed

+6
-3
lines changed

1 file changed

+6
-3
lines changed

packages/query-core/src/queryClient.ts

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -605,14 +605,17 @@ export class QueryClient {
605605

606606
getMutationDefaults(
607607
mutationKey: MutationKey,
608-
): MutationObserverOptions<any, any, any, any> {
608+
): OmitKeyof<MutationObserverOptions<any, any, any, any>, 'mutationKey'> {
609609
const defaults = [...this.#mutationDefaults.values()]
610610

611-
let result: MutationObserverOptions<any, any, any, any> = {}
611+
const result: OmitKeyof<
612+
MutationObserverOptions<any, any, any, any>,
613+
'mutationKey'
614+
> = {}
612615

613616
defaults.forEach((queryDefault) => {
614617
if (partialMatchKey(mutationKey, queryDefault.mutationKey)) {
615-
result = { ...result, ...queryDefault.defaultOptions }
618+
Object.assign(result, queryDefault.defaultOptions)
616619
}
617620
})
618621

0 commit comments

Comments
 (0)