typescript-immutable-utils
Version:
Type-safe immutability helpers for simple objects and arrays
28 lines (27 loc) • 802 B
JavaScript
;
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;