enum-to-array
v1.1.13
Published
Convert Typescript Enums to a strongly typed array.
Downloads
440
Readme
Contents
Introduction
Enum to array is a light module for converting a typescript enum to an array of keys or values.
Thanks to reverse mappings this is a little bit trickier than Object.keys
or Object.values
Install
npm i enum-to-array
Example
import { enumToArray } from 'enum-to-array';
enum MyEnum {
FOO = 'BAR',
ABC = 123,
}
console.log(enumToArray(MyEnum));
// [{ key: 'FOO', value: 'BAR' }, { key: 'ABC', value: 123 }]
Usage
enum-to-array is an ESM module. That means it must be import
ed. To load from a CJS module, use dynamic import const { enumToArray } = await import('enum-to-array');
.
Due to the nature of const enum
s, those are not usable with this library as there is nothing to pass at runtime.
This can be partially resolved by using preserveConstEnums.
API
enum-to-array exports three functions:
enumToArray
Lists key-value pairs of enum, in order that they occur.
import { enumToArray } from 'enum-to-array';
enum MyEnum {
FOO = 'BAR',
ABC = 123,
DUP = FOO,
}
console.log(enumToArray(MyEnum));
// [
// { key: 'FOO', value: 'BAR' },
// { key: 'ABC', value: 123 },
// { key: 'DUP', value: 'BAR' },
// ]
enumToValues
Lists values of enum, in order that they occur.
import { enumToValues } from 'enum-to-array';
console.log(enumToValues(MyEnum));
// ['BAR', 123, 'BAR']
Optionally de-dupe values with { unique: true }
provided as a second parameter.
console.log(enumToValues(MyEnum, { unique: true }));
// ['BAR', 123]
enumToKeys
Lists keys of enum, in order that they occur.
import { enumToKeys } from 'enum-to-array';
console.log(enumToKeys(MyEnum));
// ['FOO', 'ABC', 'DUP']