Discard unused utility now that we use Object.fromEntries
This commit is contained in:
parent
05a9023bac
commit
c8d9294350
3 changed files with 1 additions and 38 deletions
|
@ -141,21 +141,3 @@ export function objectKeyChanges<O extends {}>(a: O, b: O): (keyof O)[] {
|
||||||
export function objectClone<O extends {}>(obj: O): O {
|
export function objectClone<O extends {}>(obj: O): O {
|
||||||
return JSON.parse(JSON.stringify(obj));
|
return JSON.parse(JSON.stringify(obj));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Converts a series of entries to an object.
|
|
||||||
* @param entries The entries to convert.
|
|
||||||
* @returns The converted object.
|
|
||||||
*/
|
|
||||||
// NOTE: Deprecated once we have Object.fromEntries() support.
|
|
||||||
// @ts-ignore - return type is complaining about non-string keys, but we know better
|
|
||||||
export function objectFromEntries<K, V>(entries: Iterable<[K, V]>): {[k: K]: V} {
|
|
||||||
const obj: {
|
|
||||||
// @ts-ignore - same as return type
|
|
||||||
[k: K]: V;} = {};
|
|
||||||
for (const e of entries) {
|
|
||||||
// @ts-ignore - same as return type
|
|
||||||
obj[e[0]] = e[1];
|
|
||||||
}
|
|
||||||
return obj;
|
|
||||||
}
|
|
||||||
|
|
|
@ -29,7 +29,6 @@ import {
|
||||||
ArrayUtil,
|
ArrayUtil,
|
||||||
GroupedArray,
|
GroupedArray,
|
||||||
} from "../../src/utils/arrays";
|
} from "../../src/utils/arrays";
|
||||||
import { objectFromEntries } from "../../src/utils/objects";
|
|
||||||
|
|
||||||
function expectSample(i: number, input: number[], expected: number[], smooth = false) {
|
function expectSample(i: number, input: number[], expected: number[], smooth = false) {
|
||||||
console.log(`Resample case index: ${i}`); // for debugging test failures
|
console.log(`Resample case index: ${i}`); // for debugging test failures
|
||||||
|
@ -336,7 +335,7 @@ describe('arrays', () => {
|
||||||
expect(result).toBeDefined();
|
expect(result).toBeDefined();
|
||||||
expect(result.value).toBeDefined();
|
expect(result.value).toBeDefined();
|
||||||
|
|
||||||
const asObject = objectFromEntries(result.value.entries());
|
const asObject = Object.fromEntries(result.value.entries());
|
||||||
expect(asObject).toMatchObject(output);
|
expect(asObject).toMatchObject(output);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
|
@ -18,7 +18,6 @@ import {
|
||||||
objectClone,
|
objectClone,
|
||||||
objectDiff,
|
objectDiff,
|
||||||
objectExcluding,
|
objectExcluding,
|
||||||
objectFromEntries,
|
|
||||||
objectHasDiff,
|
objectHasDiff,
|
||||||
objectKeyChanges,
|
objectKeyChanges,
|
||||||
objectShallowClone,
|
objectShallowClone,
|
||||||
|
@ -242,21 +241,4 @@ describe('objects', () => {
|
||||||
expect(result.test.third).not.toBe(a.test.third);
|
expect(result.test.third).not.toBe(a.test.third);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
describe('objectFromEntries', () => {
|
|
||||||
it('should create an object from an array of entries', () => {
|
|
||||||
const output = { a: 1, b: 2, c: 3 };
|
|
||||||
const result = objectFromEntries(Object.entries(output));
|
|
||||||
expect(result).toBeDefined();
|
|
||||||
expect(result).toMatchObject(output);
|
|
||||||
});
|
|
||||||
|
|
||||||
it('should maintain pointers in values', () => {
|
|
||||||
const output = { a: {}, b: 2, c: 3 };
|
|
||||||
const result = objectFromEntries(Object.entries(output));
|
|
||||||
expect(result).toBeDefined();
|
|
||||||
expect(result).toMatchObject(output);
|
|
||||||
expect(result['a']).toBe(output.a);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
});
|
||||||
|
|
Loading…
Reference in a new issue