UNPKG

@nozbe/watermelondb

Version:

Build powerful React Native and React web apps that scale from hundreds to tens of thousands of records and remain fast

19 lines (13 loc) 474 B
// @flow import invariant from '../invariant' // Deep-freezes an object, but DOES NOT handle cycles export default function deepFreeze<T: Object>(object: T): T { invariant(object && typeof object === 'object', 'Invalid attempt to deepFreeze not-an-Object') Object.getOwnPropertyNames(object).forEach((name: string) => { const value = object[name] if (value && typeof value === 'object') { deepFreeze(value) } }) return Object.freeze(object) }