UNPKG

babel-plugin-elsa

Version:

A babel plugin for replacing object and array literals with immutable versions

15 lines (11 loc) 369 B
/* eslint-disable no-var */ var immutabilityUpdate = require('immutability-helper'); var merge = require('lodash/merge'); function FrozenObject(obj) { merge(this, obj); Object.freeze(this); } FrozenObject.prototype.update = function update(updateObj) { return new FrozenObject(immutabilityUpdate(merge({}, this), updateObj)); }; module.exports = FrozenObject;