UNPKG

@terminus/ngx-tools

Version:

[![CircleCI][circle-badge]][circle-link] [![codecov][codecov-badge]][codecov-project] [![semantic-release][semantic-release-badge]][semantic-release] [![MIT License][license-image]][license-url] <br> [![NPM version][npm-version-image]][npm-url] [![Github

33 lines 3 kB
/** * Helper function to return an array of values from an hash object * * @param keys - The array containing the key values (number|string) to retrieve from the hash * @param hash - The object to pull values from * @returns The array of values that match keys * * @example * const tactic1: MyType = { * id: 1, * name: 'tactic1', * goal: 'goal1', * } * const tactic2: MyType = { * id: 2, * name: 'tactic2', * goal: 'goal2', * } * const tactics = { 1: tactic1, 2: tactic2 } * returnValuesByKeys<MyType>([1], tactics) // Returns: `[tactic1]` */ export function returnValuesByKeys(keys, hash) { const stringyKeys = keys.map((id) => id.toString()); const values = []; for (const key of stringyKeys) { // istanbul ignore else if (hash[key]) { values.push(hash[key]); } } return values; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmV0dXJuLXZhbHVlcy1ieS1rZXlzLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRlcm1pbnVzL25neC10b29scy91dGlsaXRpZXMvIiwic291cmNlcyI6WyJyZXR1cm4tdmFsdWVzLWJ5LWtleXMvcmV0dXJuLXZhbHVlcy1ieS1rZXlzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW9CRztBQUNILE1BQU0sVUFBVSxrQkFBa0IsQ0FBSSxJQUE0QixFQUFFLElBQXVCO0lBQ3pGLE1BQU0sV0FBVyxHQUFhLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFtQixFQUFVLEVBQUUsQ0FBQyxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUN2RixNQUFNLE1BQU0sR0FBUSxFQUFFLENBQUM7SUFFdkIsS0FBSyxNQUFNLEdBQUcsSUFBSSxXQUFXLEVBQUU7UUFDN0IsdUJBQXVCO1FBQ3ZCLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ2IsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztTQUN4QjtLQUNGO0lBRUQsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogSGVscGVyIGZ1bmN0aW9uIHRvIHJldHVybiBhbiBhcnJheSBvZiB2YWx1ZXMgZnJvbSBhbiBoYXNoIG9iamVjdFxuICpcbiAqIEBwYXJhbSBrZXlzIC0gVGhlIGFycmF5IGNvbnRhaW5pbmcgdGhlIGtleSB2YWx1ZXMgKG51bWJlcnxzdHJpbmcpIHRvIHJldHJpZXZlIGZyb20gdGhlIGhhc2hcbiAqIEBwYXJhbSBoYXNoIC0gVGhlIG9iamVjdCB0byBwdWxsIHZhbHVlcyBmcm9tXG4gKiBAcmV0dXJucyBUaGUgYXJyYXkgb2YgdmFsdWVzIHRoYXQgbWF0Y2gga2V5c1xuICpcbiAqIEBleGFtcGxlXG4gKiBjb25zdCB0YWN0aWMxOiBNeVR5cGUgPSB7XG4gKiAgIGlkOiAxLFxuICogICBuYW1lOiAndGFjdGljMScsXG4gKiAgIGdvYWw6ICdnb2FsMScsXG4gKiB9XG4gKiBjb25zdCB0YWN0aWMyOiBNeVR5cGUgPSB7XG4gKiAgIGlkOiAyLFxuICogICBuYW1lOiAndGFjdGljMicsXG4gKiAgIGdvYWw6ICdnb2FsMicsXG4gKiB9XG4gKiBjb25zdCB0YWN0aWNzID0geyAxOiB0YWN0aWMxLCAyOiB0YWN0aWMyIH1cbiAqIHJldHVyblZhbHVlc0J5S2V5czxNeVR5cGU+KFsxXSwgdGFjdGljcykgLy8gUmV0dXJuczogYFt0YWN0aWMxXWBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJldHVyblZhbHVlc0J5S2V5czxUPihrZXlzOiBBcnJheTxzdHJpbmcgfCBudW1iZXI+LCBoYXNoOiBSZWNvcmQ8c3RyaW5nLCBUPik6IFRbXSB7XG4gIGNvbnN0IHN0cmluZ3lLZXlzOiBzdHJpbmdbXSA9IGtleXMubWFwKChpZDogbnVtYmVyIHwgc3RyaW5nKTogc3RyaW5nID0+IGlkLnRvU3RyaW5nKCkpO1xuICBjb25zdCB2YWx1ZXM6IFRbXSA9IFtdO1xuXG4gIGZvciAoY29uc3Qga2V5IG9mIHN0cmluZ3lLZXlzKSB7XG4gICAgLy8gaXN0YW5idWwgaWdub3JlIGVsc2VcbiAgICBpZiAoaGFzaFtrZXldKSB7XG4gICAgICB2YWx1ZXMucHVzaChoYXNoW2tleV0pO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiB2YWx1ZXM7XG59XG4iXX0=