request_tracker.svelte.ts view source
Tracks RPC requests and their responses to manage promises and timeouts. Used by transports to handle the request-response lifecycle.
pending_requests
type SvelteMap<JsonrpcRequestId, RequestTrackerItem>
request_timeout_ms
type number
constructor
type new (request_timeout_ms?: number): RequestTracker
request_timeout_ms
number120_000track_request
Track a new request with the given id.
type (id: string | number): Deferred<{ [x: string]: unknown; jsonrpc: "2.0"; id: string | number; result: { [x: string]: unknown; _meta?: { [x: string]: unknown; } | undefined; }; } | { [x: string]: unknown; jsonrpc: "2.0"; id: string | number | null; error: { ...; }; }>
id
The request id
string | numberDeferred<{ [x: string]: unknown; jsonrpc: "2.0"; id: string | number; result: { [x: string]: unknown; _meta?: { [x: string]: unknown; } | undefined; }; } | { [x: string]: unknown; jsonrpc: "2.0"; id: string | number | null; error: { [x: string]: unknown; code: -32700 | ... 4 more ... | (number & $brand<...>); messag...A deferred promise that will be resolved when the response is received
resolve_request
Resolve a pending request with the given response data.
type (id: string | number, response: { [x: string]: unknown; jsonrpc: "2.0"; id: string | number; result: { [x: string]: unknown; _meta?: { [x: string]: unknown; } | undefined; }; } | { [x: string]: unknown; jsonrpc: "2.0"; id: string | number | null; error: { ...; }; }): void
id
The request id
string | numberresponse
The response data
{ [x: string]: unknown; jsonrpc: "2.0"; id: string | number; result: { [x: string]: unknown; _meta?: { [x: string]: unknown; } | undefined; }; } | { [x: string]: unknown; jsonrpc: "2.0"; id: string | number | null; error: { [x: string]: unknown; code: -32700 | ... 4 more ... | (number & $brand<...>); message: string...voidreject_request
Reject a pending request with the given error.
type (id: string | number, error_message: { [x: string]: unknown; jsonrpc: "2.0"; id: string | number | null; error: { [x: string]: unknown; code: -32700 | -32600 | -32601 | -32602 | -32603 | (number & $brand<"JsonrpcServerErrorCode">); message: string; data?: unknown; }; }): void
id
The request id
string | numbererror_message
The complete JsonrpcErrorMessage object
{ [x: string]: unknown; jsonrpc: "2.0"; id: string | number | null; error: { [x: string]: unknown; code: -32700 | -32600 | -32601 | -32602 | -32603 | (number & $brand<"JsonrpcServerErrorCode">); message: string; data?: unknown; }; }voidhandle_message
Handle an incoming JSON-RPC message. Resolves or rejects the associated request. Ignores notifications and unknown/invalid messages.
type (message: any): void
message
anyvoidcancel_request
Cancel a pending request.
type (id: string | number): void
id
The request id
string | numbervoidcancel_all_requests
Cancel all pending requests.
type (reason?: string | undefined): void
reason?
Optional reason to include in rejection
string | undefinedvoid