1234567891011121314151617181920212223242526 |
- // @flow strict
- import objectEntries from '../polyfills/objectEntries';
- import {
- type ObjMap,
- type ObjMapLike,
- type ReadOnlyObjMap,
- type 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;
- }
|