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

Import

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

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