@unction/groupby
v10.14.0
Published
Creates a record tree where the key is a computation on the value and the value is a list of the values that match with that computation
Downloads
69
Readme
@unction/groupBy
MapperFunctionType<A, B> => Array | Set => Map<B, Array | Set>
Creates a record tree where the key is a computation on the value and the value is a list of the values that match with that computation.
groupBy(
key("type")
)([
{
id: "aaa",
name: "Kurtis Rainbolt-Greene",
type: "person",
},
{
id: "bbb",
name: "Angela Rainbolt-Greene",
type: "person",
},
])
Which returns:
Map {
"person" => [
{
id: "aaa",
name: "Kurtis Rainbolt-Greene",
type: "person",
},
{
id: "bbb",
name: "Angela Rainbolt-Greene",
type: "person",
},
],
}
groupBy(
key("type")
)(
Set [
Map {
"id" => "aaa",
"name" => "Kurtis Rainbolt-Greene"
"type" => "person",
},
Map {
"id" => "bbb",
"name" => "Angela Rainbolt-Greene"
"type" => "person",
}
]
)
Which returns:
Map {
"person" => Set [
Map {
"id" => "aaa",
"name" => "Kurtis Rainbolt-Greene",
"type" => "person",
},
Map {
"id" => "bbb",
"name" => "Angela Rainbolt-Greene",
"type" => "person",
}
],
}