singleFromAny()
Keyed singleflight over {@link NodeInput}.
Import
Section titled “Import”import { singleFromAny } from "@graphrefly/ts/sources";Signature
Section titled “Signature”function singleFromAny( factory: (key: K) => NodeInput<T>, opts: SingleFromAnyOptions<K> = {},): (key: K) => Promise<T>Parameters
Section titled “Parameters”| Parameter | Type | Description |
|---|---|---|
factory | (key: K) => NodeInput<T> | Function that produces a value, iterable, promise, or node for each key. |
opts | SingleFromAnyOptions<K> | Optional key canonicalizer and iterable handling. |
Returns
Section titled “Returns”A memoizing loader keyed by the transformed key.
Example
Section titled “Example”const loadUser = singleFromAny((id: string) => fetch(`/api/users/${id}`).then((r) => r.json()));Remarks
Section titled “Remarks”- Host-boundary helper only. It deduplicates external calls and does not create graph topology or act as a graph operator.
Source
Section titled “Source”packages/ts/src/graph/sources.ts