From fd52740d5d7ff91f16c495b2aacfce341cf57495 Mon Sep 17 00:00:00 2001 From: Ruben Fiszel Date: Thu, 9 Mar 2023 18:34:30 +0100 Subject: [PATCH] improve reactivity check for big objects on app --- frontend/src/lib/components/apps/rx.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/frontend/src/lib/components/apps/rx.ts b/frontend/src/lib/components/apps/rx.ts index 784230fb81..3625e7385d 100644 --- a/frontend/src/lib/components/apps/rx.ts +++ b/frontend/src/lib/components/apps/rx.ts @@ -1,5 +1,6 @@ import type { AppInput } from './inputType' import { writable, type Writable } from 'svelte/store' +import { deepEqual } from 'fast-equals' export interface Subscriber { next(v: T) @@ -153,7 +154,7 @@ export function settableOutput(state: Writable, previousValue: T): Ou } function set(x: T, force: boolean = false) { - if (value != x || force) { + if (!deepEqual(value, x) || force) { state.update((x) => x + 1) value = x