UNPKG

nitropage

Version:

A free and open source, extensible visual page builder based on SolidStart.

23 lines (18 loc) 395 B
import { isEqual } from "es-toolkit"; export const omitEqualProperties = <T extends {}, K extends (keyof T)[]>( next: T, prev = {}, keys: K, ) => { const props: { [P in K[0]]?: T[P]; } = {}; for (const k of keys) { const nextV = next[k as keyof T]; if (isEqual(nextV, (prev as any)[k])) { continue; } props[k as keyof T] = nextV; } return props; };