chain
seq
Creates a lodash wrapper instance that wraps value with explicit method chain sequences enabled.
Installation
Import
import { chain } from '@tulx/utils';Source Code
Implementation
/**
* Creates a lodash wrapper instance that wraps value with explicit method chain sequences enabled.
*
* @param value - The value to wrap.
* @returns Returns the new lodash wrapper instance.
*
* @example
* ```ts
* const users = [
* { 'user': 'barney', 'age': 36 },
* { 'user': 'fred', 'age': 40 }
* ];
* const youngest = chain(users)
* .sortBy('age')
* .map((o) => o.user + ' is ' + o.age)
* .head()
* .value();
* // 'barney is 36'
* ```
*/
export type ChainWrapper<T> = {
value(): T;
};
export function chain<T>(value: T): ChainWrapper<T> {
return {
value(): T {
return value;
},
};
}
Example
import { chain } from '@tulx/utils';
const users = [
{ 'user': 'barney', 'age': 36 },
{ 'user': 'fred', 'age': 40 }
];
const youngest = chain(users)
.sortBy('age')
.map((o) => o.user + ' is ' + o.age)
.head()
.value();
// 'barney is 36'