0.1.0 #1

Merged
Thilawyn merged 87 commits from next into master 2025-01-18 00:54:42 +01:00
Showing only changes of commit 15c1fdd54c - Show all commits

View File

@@ -51,19 +51,17 @@ export function make<R = never>() {
return new ReffuseContext<R>()
}
export function useMergeMany<
export function useMergeAll<
const Contexts extends readonly ReffuseContext<any>[]
>(
contexts: Contexts
): {
[K in keyof Contexts]: R<Contexts[K]>
} {
...contexts: Contexts
): Context.Context<{ [K in keyof Contexts]: R<Contexts[K]> }[number]> {
const values = contexts.map(v => React.use(v.Context))
return React.useMemo(() => Context.mergeAll(...values), values)
}
const context1 = make<{ readonly service1: true }>()
const context2 = make<{ readonly service2: true }>()
const res = useMergeMany([context1, context2])
const res = useMergeAll(context1, context2)