Skip to content

Commit 1465bb0

Browse files
committed
fix types / revert util change
1 parent 8d62af1 commit 1465bb0

File tree

2 files changed

+7
-8
lines changed

2 files changed

+7
-8
lines changed

src/modules/reference/reducers.ts

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,13 +29,15 @@ export const referenceGenomes: Reducer<ReferenceGenomesState> = (
2929
// FETCH_REFERENCE_GENOMES
3030
case FETCH_REFERENCE_GENOMES.REQUEST:
3131
return { ...state, isFetching: true };
32-
case FETCH_REFERENCE_GENOMES.RECEIVE:
32+
case FETCH_REFERENCE_GENOMES.RECEIVE: {
33+
const genomesByID = arrayToObjectByProperty(action.data, "id") as Record<string, Genome>;
3334
return {
3435
...state,
3536
items: action.data,
36-
itemsByID: arrayToObjectByProperty(action.data, "id"),
37-
itemsByIDLower: arrayToObjectByProperty(action.data, "id", (k) => (k as string).toLowerCase()),
37+
itemsByID: genomesByID,
38+
itemsByIDLower: Object.fromEntries(Object.entries(genomesByID).map(([k, v]) => [k.toLowerCase(), v])),
3839
};
40+
}
3941
case FETCH_REFERENCE_GENOMES.FINISH:
4042
return { ...state, isFetching: false, hasAttempted: true };
4143

src/utils/misc.ts

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,8 @@ export const simpleDeepCopy = (o: object) => JSON.parse(JSON.stringify(o));
1818
export const objectWithoutProps = (o: object, ps: RecordKey[]) =>
1919
Object.fromEntries(Object.entries(o).filter(([p2]) => !ps.includes(p2)));
2020
export const objectWithoutProp = (o: object, p: RecordKey) => objectWithoutProps(o, [p]);
21-
export const arrayToObjectByProperty = <T extends Record<RecordKey, unknown>>(
22-
l: T[],
23-
p: RecordKey,
24-
keyMapper: (key: RecordKey) => RecordKey = id,
25-
) => Object.fromEntries(l.map((item) => [keyMapper(item[p] as RecordKey), item]));
21+
export const arrayToObjectByProperty = <T extends Record<RecordKey, unknown>>(l: T[], p: RecordKey) =>
22+
Object.fromEntries(l.map((item) => [item[p], item]));
2623

2724
// REGEX
2825
export const notAlleleCharactersRegex = new RegExp("[^ACGTN]", "g");

0 commit comments

Comments
 (0)