variable / @typed/fx

RefArray.groupBy

Group the values of a RefArray by a key.

Package version
2.0.0-beta.13
Category
Derived queries
Since
1.18.0
Member of
RefArray

Import

import { RefArray } from "@typed/fx";

Access RefArray.groupBy through the imported RefArray export. Its declaration below describes the member.

This public exposure is a re-export. Its import path is supported; declaration documentation is shared with the other public exposures below.

Signatures

export declare const groupBy: {
    <A>(f: (a: A) => string): <E, R>(ref: RefArray<A, E, R>) => RefSubject.Computed<R, E, Record<string, ReadonlyArray<A>>>;
    <A, E, R>(ref: RefArray<A, E, R>, f: (a: A) => string): RefSubject.Computed<R, E, Record<string, ReadonlyArray<A>>>;
};

Why

Projects array state with group by for both current reads and future pushes, avoiding a second mutable cache of the derived value.

Ownership and lifetime

The group by view retains no independent state. An Effect read samples the source once; Fx observation follows later pushes and its observing Scope owns subscription cleanup.

Other public imports

These import paths expose the same declaration. Each page retains its own public name and signature.

Source