2.0.2 • Published 1 year ago

rename-obj-map v2.0.2

Weekly downloads
-
License
GPL-3.0-or-later
Repository
github
Last release
1 year ago

rename-obj-map

npm codecov

Rename object keys with inferable types.

Install

npm i rename-obj-map

Or

yarn add rename-obj-map

Usage

renameKeys (renameMap, obj)

Creates a new obj with the own properties of the provided object, but the keys renamed according to renameMap.

import { renameKeys } from 'rename-obj-map';

renameKeys({ _id: 'id' }, { _id: 1234578 });
// → { id: 1234578 }
// → infer as { id: number }

enum remapEnums {
  _id = 'id',
}
renameKeys(remapEnums, { _id: 1234578 });
// → { id: 1234578 }
// → infer as { id: number }

const remap = { _id: 'id' } as const;
const obj = { _id: 1234578 };

renameKeys(remap, obj);
// → { id: 1234578 }
// → infer as { id: number }

renameKeys (renameMap)→(obj)

Curried version of renameKeys.

import { renameKeys } from 'rename-obj-map';

const res0 = renameKeys({ _id: 'id' })({ _id: 1234578 });
// → { id: 1234578 }
// → infer as { id: number }

enum remapEnums {
  _id = 'id',
}
const res1 = renameKeys(remapEnums)({ _id: 1234578 });
// → { id: 1234578 }
// → infer as { id: number }

const remap = { _id: 'id' } as const;
const obj = { _id: 1234578 };

const res2 = renameKeys(remap)(obj);
// → { id: 1234578 }
// → infer as { id: number }
2.0.2

1 year ago

2.0.1

1 year ago

2.0.0

1 year ago

1.1.0

1 year ago

1.0.0

1 year ago