Skip to content
PACKAGES

singleFromAny()

Keyed singleflight over {@link NodeInput}.

import { singleFromAny } from "@graphrefly/ts/sources";
function singleFromAny(
factory: (key: K) => NodeInput<T>,
opts: SingleFromAnyOptions<K> = {},
): (key: K) => Promise<T>
ParameterTypeDescription
factory(key: K) => NodeInput<T>Function that produces a value, iterable, promise, or node for each key.
optsSingleFromAnyOptions<K>Optional key canonicalizer and iterable handling.

A memoizing loader keyed by the transformed key.

const loadUser = singleFromAny((id: string) => fetch(`/api/users/${id}`).then((r) => r.json()));
  • Host-boundary helper only. It deduplicates external calls and does not create graph topology or act as a graph operator.

packages/ts/src/graph/sources.ts