From 0a35176439aa82973d7560e286a7f811bef91d9b Mon Sep 17 00:00:00 2001 From: David Heidrich Date: Tue, 14 May 2024 15:30:35 +0200 Subject: [PATCH] fix: check for deep equality for `defaultValues` --- src/lib/middleware.ts | 3 ++- test.setup.ts | 8 +++++--- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/src/lib/middleware.ts b/src/lib/middleware.ts index 8945209..b591430 100644 --- a/src/lib/middleware.ts +++ b/src/lib/middleware.ts @@ -11,6 +11,7 @@ import { applyDiffWithCreateQueriesFromPatch, applyFlatConfigToState, } from './utils.js' +import isDeepEqual from 'fast-deep-equal' export enum HistoryEventType { PUSH, @@ -439,7 +440,7 @@ export const converter = values: T[N]['values'] ) => { const current = get().namespaces[ns] - const defaultsEqual = current?.initialValues === initialValues + const defaultsEqual = isDeepEqual(current?.initialValues, initialValues) if (current !== undefined) { set( (state) => { diff --git a/test.setup.ts b/test.setup.ts index b8d0aa8..6495832 100644 --- a/test.setup.ts +++ b/test.setup.ts @@ -1,4 +1,6 @@ // @ts-ignore -window.requestIdleCallback = jest.fn().mockImplementation((cb: () => unknown) => { - return setTimeout(cb, 15) -}) +window.requestIdleCallback = jest + .fn() + .mockImplementation((cb: () => unknown) => { + return setTimeout(cb, 15) + })