mirror of
https://github.com/CamHenlin/MessagesForMacintosh.git
synced 2024-11-29 23:49:20 +00:00
27 lines
613 B
Plaintext
27 lines
613 B
Plaintext
// @flow strict
|
|
import objectEntries from '../polyfills/objectEntries';
|
|
|
|
import type {
|
|
ObjMap,
|
|
ObjMapLike,
|
|
ReadOnlyObjMap,
|
|
ReadOnlyObjMapLike,
|
|
} from './ObjMap';
|
|
|
|
/* eslint-disable no-redeclare */
|
|
declare function toObjMap<T>(obj: ObjMapLike<T>): ObjMap<T>;
|
|
declare function toObjMap<T>(obj: ReadOnlyObjMapLike<T>): ReadOnlyObjMap<T>;
|
|
|
|
export default function toObjMap(obj) {
|
|
/* eslint-enable no-redeclare */
|
|
if (Object.getPrototypeOf(obj) === null) {
|
|
return obj;
|
|
}
|
|
|
|
const map = Object.create(null);
|
|
for (const [key, value] of objectEntries(obj)) {
|
|
map[key] = value;
|
|
}
|
|
return map;
|
|
}
|