@stanfordspezi/spezi-web-design-system
Version:
Stanford Biodesign Digital Health Spezi Web Design System
15 lines (14 loc) • 644 B
TypeScript
/**
* Compares array of two objects and performs create/delete/update operations.
* Checks equality for update. By default, uses deep object equality
* Useful for bulk transaction operations
* */
export declare const syncData: <Item>({ oldItems, newItems, getId, onDelete, onCreate, onUpdate, isEqual: isEqualFunction, }: {
oldItems: Item[];
newItems: Item[];
getId: (item: Item) => string;
onDelete: (id: string, oldItem: Item) => void;
onCreate: (id: string, newItem: Item) => void;
onUpdate: (id: string, newItem: Item, oldItem: Item) => void;
isEqual?: (oldItem: Item, newItem: Item) => boolean;
}) => void;