UNPKG

typescript-immutable-utils

Version:

Type-safe immutability helpers for simple objects and arrays

28 lines (27 loc) 802 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); function setAt(items, index, item) { if (items[index] === item) return items; var newItems = items.slice(); newItems[index] = item; return newItems; } exports.setAt = setAt; function insertAt(items, index, item) { var newItems = items.slice(); newItems.splice(index, 0, item); return newItems; } exports.insertAt = insertAt; function removeAt(items, index) { var newItems = items.slice(); var deleted = newItems.splice(index, 1); return deleted.length === 0 ? items : newItems; } exports.removeAt = removeAt; function removeValue(items, item) { var index = items.indexOf(item); return index === -1 ? items : removeAt(items, index); } exports.removeValue = removeValue;