Files
blitzkit/packages/website/src/stores/comparePersistent.ts
T

23 lines
645 B
TypeScript
Raw Normal View History

2024-09-23 10:49:54 -05:00
import * as lodash from 'lodash-es';
2024-07-09 19:53:50 -05:00
import { create } from 'zustand';
import { persist, subscribeWithSelector } from 'zustand/middleware';
2024-09-21 20:26:58 -05:00
import { createContextualStore } from '../core/zustand/createContextualStore';
2024-07-09 19:53:50 -05:00
export type DeltaMode = 'none' | 'percentage' | 'absolute';
export interface ComparePersistent {
deltaMode: DeltaMode;
}
2024-09-23 10:49:54 -05:00
export const ComparePersistent = createContextualStore(() =>
create<ComparePersistent>()(
persist(
subscribeWithSelector<ComparePersistent>(() => ({
deltaMode: 'none',
})),
{
name: 'compare',
merge: (a, b) => lodash.merge(b, a),
},
2024-07-09 19:53:50 -05:00
),
2024-09-23 10:49:54 -05:00
),
2024-09-21 20:26:58 -05:00
);