Download packages/console/core/src/context.ts from SaylorTwift/opencode: direct link, hf CLI and curl.
- Browser
- Download file 467 Bytes
-
https://huggingface.co/SaylorTwift/opencode/resolve/main/packages/console/core/src/context.ts
- Command line
-
hf download hf://SaylorTwift/opencode/packages/console/core/src/context.ts
-
curl -L -o context.ts https://huggingface.co/SaylorTwift/opencode/resolve/main/packages/console/core/src/context.ts
467 Bytes
| import { AsyncLocalStorage } from "node:async_hooks" | |
| export namespace Context { | |
| export class NotFound extends Error {} | |
| export function create<T>() { | |
| const storage = new AsyncLocalStorage<T>() | |
| return { | |
| use() { | |
| const result = storage.getStore() | |
| if (!result) { | |
| throw new NotFound() | |
| } | |
| return result | |
| }, | |
| provide<R>(value: T, fn: () => R) { | |
| return storage.run(value, fn) | |
| }, | |
| } | |
| } | |
| } | |