@jack-kernel/sdk 1.0.0 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/index.js +43 -2
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/yellow/channel-state-manager.js +167 -0
- package/dist/cjs/yellow/channel-state-manager.js.map +1 -0
- package/dist/cjs/yellow/clear-node-connection.js +390 -0
- package/dist/cjs/yellow/clear-node-connection.js.map +1 -0
- package/dist/cjs/yellow/event-mapper.js +254 -0
- package/dist/cjs/yellow/event-mapper.js.map +1 -0
- package/dist/cjs/yellow/serialization.js +130 -0
- package/dist/cjs/yellow/serialization.js.map +1 -0
- package/dist/cjs/yellow/session-key-manager.js +308 -0
- package/dist/cjs/yellow/session-key-manager.js.map +1 -0
- package/dist/cjs/yellow/types.js +12 -0
- package/dist/cjs/yellow/types.js.map +1 -0
- package/dist/cjs/yellow/yellow-provider.js +1545 -0
- package/dist/cjs/yellow/yellow-provider.js.map +1 -0
- package/dist/esm/index.js +34 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/yellow/channel-state-manager.js +163 -0
- package/dist/esm/yellow/channel-state-manager.js.map +1 -0
- package/dist/esm/yellow/clear-node-connection.js +385 -0
- package/dist/esm/yellow/clear-node-connection.js.map +1 -0
- package/dist/esm/yellow/event-mapper.js +248 -0
- package/dist/esm/yellow/event-mapper.js.map +1 -0
- package/dist/esm/yellow/serialization.js +125 -0
- package/dist/esm/yellow/serialization.js.map +1 -0
- package/dist/esm/yellow/session-key-manager.js +302 -0
- package/dist/esm/yellow/session-key-manager.js.map +1 -0
- package/dist/esm/yellow/types.js +11 -0
- package/dist/esm/yellow/types.js.map +1 -0
- package/dist/esm/yellow/yellow-provider.js +1538 -0
- package/dist/esm/yellow/yellow-provider.js.map +1 -0
- package/dist/types/index.d.ts +47 -2
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/yellow/channel-state-manager.d.ts +106 -0
- package/dist/types/yellow/channel-state-manager.d.ts.map +1 -0
- package/dist/types/yellow/clear-node-connection.d.ts +202 -0
- package/dist/types/yellow/clear-node-connection.d.ts.map +1 -0
- package/dist/types/yellow/event-mapper.d.ts +74 -0
- package/dist/types/yellow/event-mapper.d.ts.map +1 -0
- package/dist/types/yellow/serialization.d.ts +52 -0
- package/dist/types/yellow/serialization.d.ts.map +1 -0
- package/dist/types/yellow/session-key-manager.d.ts +179 -0
- package/dist/types/yellow/session-key-manager.d.ts.map +1 -0
- package/dist/types/yellow/types.d.ts +177 -0
- package/dist/types/yellow/types.d.ts.map +1 -0
- package/dist/types/yellow/yellow-provider.d.ts +303 -0
- package/dist/types/yellow/yellow-provider.d.ts.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"yellow-provider.js","sourceRoot":"","sources":["../../../src/yellow/yellow-provider.ts"],"names":[],"mappings":"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"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -8,11 +8,33 @@ export { ExecutionTracker } from './execution.js';
|
|
|
8
8
|
export { CostTracker } from './costs.js';
|
|
9
9
|
export { AgentUtils } from './agent.js';
|
|
10
10
|
export { JackClient } from './client.js';
|
|
11
|
+
export { YellowProvider } from './yellow/yellow-provider.js';
|
|
12
|
+
export type { YellowConfig } from './yellow/yellow-provider.js';
|
|
13
|
+
export { NitroliteClient } from './yellow/yellow-provider.js';
|
|
14
|
+
export type { NitroliteClientConfig } from './yellow/yellow-provider.js';
|
|
15
|
+
export { mapErrorToReasonCode, extractRevertReason } from './yellow/yellow-provider.js';
|
|
16
|
+
export type { YellowProviderStatus, YellowReasonCode, YellowFallback, ChannelState, ChannelAllocation, YellowQuote, ClearingResult, SettlementProof, YellowConnectionResult, YellowChannelResult, YellowTransferResult, YellowExecutionResult, YellowChannelsResult, YellowEvent, YellowEventHandler, CreateChannelParams, ResizeChannelParams, CloseChannelParams, TransferParams } from './yellow/types.js';
|
|
17
|
+
export { mapYellowEvent, mapChannelStatus, mapStateIntent, inferMapping } from './yellow/event-mapper.js';
|
|
11
18
|
import { IntentManager } from './intents.js';
|
|
12
19
|
import { ExecutionTracker } from './execution.js';
|
|
13
20
|
import { CostTracker } from './costs.js';
|
|
14
21
|
import { AgentUtils } from './agent.js';
|
|
22
|
+
import { YellowProvider } from './yellow/yellow-provider.js';
|
|
23
|
+
import type { YellowConfig } from './yellow/yellow-provider.js';
|
|
15
24
|
import { type ClientConfig, type IntentParams, type Intent } from './types.js';
|
|
25
|
+
import type { WalletClient } from 'viem';
|
|
26
|
+
/**
|
|
27
|
+
* Extended Yellow configuration for JACK_SDK integration.
|
|
28
|
+
*
|
|
29
|
+
* Extends YellowConfig with a walletClient field, which is required by
|
|
30
|
+
* YellowProvider for signing transactions and EIP-712 messages.
|
|
31
|
+
*
|
|
32
|
+
* **Validates: Requirements 1.6, 1.7**
|
|
33
|
+
*/
|
|
34
|
+
export interface YellowSDKConfig extends YellowConfig {
|
|
35
|
+
/** viem WalletClient for signing transactions and EIP-712 messages */
|
|
36
|
+
walletClient: WalletClient;
|
|
37
|
+
}
|
|
16
38
|
/**
|
|
17
39
|
* Main SDK class for JACK cross-chain execution kernel
|
|
18
40
|
*
|
|
@@ -58,6 +80,13 @@ export declare class JACK_SDK {
|
|
|
58
80
|
* Agent utilities - batch operations, subscriptions
|
|
59
81
|
*/
|
|
60
82
|
readonly agent: AgentUtils;
|
|
83
|
+
/**
|
|
84
|
+
* Yellow Network provider - state channel management, clearing, and settlement.
|
|
85
|
+
* Only available when YellowSDKConfig is provided during initialization.
|
|
86
|
+
*
|
|
87
|
+
* **Validates: Requirements 1.6, 1.7**
|
|
88
|
+
*/
|
|
89
|
+
readonly yellow?: YellowProvider;
|
|
61
90
|
/**
|
|
62
91
|
* Internal HTTP client (exposed for advanced use cases)
|
|
63
92
|
*/
|
|
@@ -69,8 +98,10 @@ export declare class JACK_SDK {
|
|
|
69
98
|
* includes the base URL for the API and optional settings for timeout, retries,
|
|
70
99
|
* caching, and custom headers.
|
|
71
100
|
*
|
|
72
|
-
* @param config - Client configuration (baseUrl required, other options optional)
|
|
101
|
+
* @param config - Client configuration (baseUrl required, other options optional). Optionally includes
|
|
102
|
+
* a `yellow` field with YellowSDKConfig to enable Yellow Network integration.
|
|
73
103
|
* @throws ValidationError if configuration is invalid
|
|
104
|
+
* @throws Error if YellowProvider initialization fails when yellow config is provided
|
|
74
105
|
*
|
|
75
106
|
* @example
|
|
76
107
|
* ```typescript
|
|
@@ -86,9 +117,23 @@ export declare class JACK_SDK {
|
|
|
86
117
|
* cacheTTL: 120000,
|
|
87
118
|
* headers: { 'Authorization': 'Bearer token' }
|
|
88
119
|
* });
|
|
120
|
+
*
|
|
121
|
+
* // With Yellow Network integration
|
|
122
|
+
* const sdk = new JACK_SDK({
|
|
123
|
+
* baseUrl: 'https://api.jack.example',
|
|
124
|
+
* yellow: {
|
|
125
|
+
* custodyAddress: '0x...',
|
|
126
|
+
* adjudicatorAddress: '0x...',
|
|
127
|
+
* chainId: 1,
|
|
128
|
+
* walletClient: myWalletClient,
|
|
129
|
+
* }
|
|
130
|
+
* });
|
|
131
|
+
* console.log(sdk.yellow); // YellowProvider instance
|
|
89
132
|
* ```
|
|
90
133
|
*/
|
|
91
|
-
constructor(config: ClientConfig
|
|
134
|
+
constructor(config: ClientConfig & {
|
|
135
|
+
yellow?: YellowSDKConfig;
|
|
136
|
+
});
|
|
92
137
|
/**
|
|
93
138
|
* Convenience method: Submit a signed intent
|
|
94
139
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,YAAY,EAEV,YAAY,EACZ,MAAM,EACN,aAAa,EAEb,KAAK,EACL,SAAS,EAET,SAAS,EACT,SAAS,EACT,aAAa,EAEb,YAAY,EACZ,cAAc,EACd,WAAW,EAEX,iBAAiB,EACjB,YAAY,EACZ,gBAAgB,EAEhB,YAAY,EACZ,SAAS,EAET,YAAY,EACZ,gBAAgB,EAEhB,MAAM,EACP,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAG7C,OAAO,EACL,SAAS,EACT,YAAY,EACZ,QAAQ,EACR,eAAe,EACf,YAAY,EACZ,UAAU,EACX,MAAM,aAAa,CAAC;AAGrB,OAAO,EACL,YAAY,EACZ,qBAAqB,EACrB,iBAAiB,EAClB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EACL,oBAAoB,EACrB,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAG7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAGlD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAGzC,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAGxC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Channel State Manager for Yellow Network Integration
|
|
3
|
+
*
|
|
4
|
+
* Tracks local channel state and provides on-chain query capabilities.
|
|
5
|
+
* Maintains a local cache of channel states from ClearNode messages and
|
|
6
|
+
* falls back to on-chain queries via viem PublicClient when the WebSocket
|
|
7
|
+
* is disconnected.
|
|
8
|
+
*
|
|
9
|
+
* Requirements: 7.1, 7.2, 7.3, 7.4
|
|
10
|
+
*/
|
|
11
|
+
import type { PublicClient } from 'viem';
|
|
12
|
+
import type { ChannelState } from './types.js';
|
|
13
|
+
/**
|
|
14
|
+
* Manages local channel state cache and provides on-chain query capabilities.
|
|
15
|
+
*
|
|
16
|
+
* The ChannelStateManager serves two purposes:
|
|
17
|
+
* 1. Maintains a local cache of channel states received from ClearNode messages,
|
|
18
|
+
* enabling fast lookups without network calls.
|
|
19
|
+
* 2. Provides on-chain balance queries via viem PublicClient for when the
|
|
20
|
+
* WebSocket connection is unavailable (Requirement 7.4) or when authoritative
|
|
21
|
+
* on-chain data is needed (Requirement 7.2).
|
|
22
|
+
*
|
|
23
|
+
* Requirements: 7.1, 7.2, 7.3, 7.4
|
|
24
|
+
*/
|
|
25
|
+
export declare class ChannelStateManager {
|
|
26
|
+
private readonly publicClient;
|
|
27
|
+
private readonly custodyAddress;
|
|
28
|
+
private readonly channels;
|
|
29
|
+
/**
|
|
30
|
+
* @param publicClient - viem PublicClient for on-chain balance queries
|
|
31
|
+
* @param custodyAddress - Address of the custody contract holding channel collateral
|
|
32
|
+
*/
|
|
33
|
+
constructor(publicClient: PublicClient, custodyAddress: `0x${string}`);
|
|
34
|
+
/**
|
|
35
|
+
* Update the local cache with a channel state from a ClearNode response.
|
|
36
|
+
*
|
|
37
|
+
* This is called when the YellowProvider receives channel state updates
|
|
38
|
+
* from ClearNode messages (create, resize, close, or get_ledger_balances).
|
|
39
|
+
*
|
|
40
|
+
* Requirement 7.1: Maintain local channel state from ClearNode responses.
|
|
41
|
+
*
|
|
42
|
+
* @param channelId - The channel identifier
|
|
43
|
+
* @param state - The channel state to cache
|
|
44
|
+
*/
|
|
45
|
+
updateChannel(channelId: string, state: ChannelState): void;
|
|
46
|
+
/**
|
|
47
|
+
* Get a locally cached channel state by channel ID.
|
|
48
|
+
*
|
|
49
|
+
* Returns undefined if the channel is not in the local cache.
|
|
50
|
+
* For authoritative on-chain data, use queryOnChainBalances instead.
|
|
51
|
+
*
|
|
52
|
+
* Requirement 7.2: Query specific channel status by channel ID.
|
|
53
|
+
*
|
|
54
|
+
* @param channelId - The channel identifier
|
|
55
|
+
* @returns The cached channel state, or undefined if not found
|
|
56
|
+
*/
|
|
57
|
+
getChannel(channelId: string): ChannelState | undefined;
|
|
58
|
+
/**
|
|
59
|
+
* Get all locally cached channel states.
|
|
60
|
+
*
|
|
61
|
+
* Returns a snapshot array of all channels currently in the cache.
|
|
62
|
+
* The returned array is a copy; modifications do not affect the cache.
|
|
63
|
+
*
|
|
64
|
+
* Requirement 7.1: Return list of channels with their statuses and allocations.
|
|
65
|
+
*
|
|
66
|
+
* @returns Array of all cached channel states
|
|
67
|
+
*/
|
|
68
|
+
getAllChannels(): ChannelState[];
|
|
69
|
+
/**
|
|
70
|
+
* Query on-chain channel balances from the custody contract.
|
|
71
|
+
*
|
|
72
|
+
* Uses viem PublicClient.readContract to call the custody contract's
|
|
73
|
+
* getChannelBalances function. This provides authoritative on-chain data
|
|
74
|
+
* and is used as a fallback when the ClearNode WebSocket is disconnected.
|
|
75
|
+
*
|
|
76
|
+
* Requirement 7.2: Query on-chain custody contract for channel balances.
|
|
77
|
+
* Requirement 7.4: Fall back to on-chain queries when WebSocket is disconnected.
|
|
78
|
+
*
|
|
79
|
+
* @param channelId - The channel identifier (bytes32 hex string)
|
|
80
|
+
* @param tokens - Array of token addresses to query balances for
|
|
81
|
+
* @returns Array of token balances as bigint values, one per token
|
|
82
|
+
* @throws Error if the on-chain query fails
|
|
83
|
+
*/
|
|
84
|
+
queryOnChainBalances(channelId: string, tokens: string[]): Promise<bigint[]>;
|
|
85
|
+
/**
|
|
86
|
+
* Find an open (ACTIVE) channel for a given token address.
|
|
87
|
+
*
|
|
88
|
+
* Searches the local cache for a channel with status 'ACTIVE' that
|
|
89
|
+
* matches the specified token address. Returns the first match found.
|
|
90
|
+
*
|
|
91
|
+
* This is used by the YellowProvider to reuse existing channels
|
|
92
|
+
* when executing intents, avoiding unnecessary channel creation.
|
|
93
|
+
*
|
|
94
|
+
* @param token - The token address to find an open channel for
|
|
95
|
+
* @returns The first matching ACTIVE channel, or undefined if none found
|
|
96
|
+
*/
|
|
97
|
+
findOpenChannel(token: string): ChannelState | undefined;
|
|
98
|
+
/**
|
|
99
|
+
* Clear all cached channel states.
|
|
100
|
+
*
|
|
101
|
+
* This is typically called when the provider disconnects or when
|
|
102
|
+
* a full state refresh is needed.
|
|
103
|
+
*/
|
|
104
|
+
clear(): void;
|
|
105
|
+
}
|
|
106
|
+
//# sourceMappingURL=channel-state-manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"channel-state-manager.d.ts","sourceRoot":"","sources":["../../../src/yellow/channel-state-manager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AACzC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AA+B/C;;;;;;;;;;;GAWG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAe;IAC5C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAgB;IAC/C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA4B;IAErD;;;OAGG;gBACS,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,KAAK,MAAM,EAAE;IAMrE;;;;;;;;;;OAUG;IACH,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,GAAG,IAAI;IAI3D;;;;;;;;;;OAUG;IACH,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAIvD;;;;;;;;;OASG;IACH,cAAc,IAAI,YAAY,EAAE;IAIhC;;;;;;;;;;;;;;OAcG;IACG,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAgBlF;;;;;;;;;;;OAWG;IACH,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IASxD;;;;;OAKG;IACH,KAAK,IAAI,IAAI;CAGd"}
|
|
@@ -0,0 +1,202 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ClearNode WebSocket Connection Manager
|
|
3
|
+
*
|
|
4
|
+
* Manages the WebSocket connection to Yellow Network's ClearNode relay server
|
|
5
|
+
* with reconnection logic, request-response correlation, and event emission.
|
|
6
|
+
*
|
|
7
|
+
* Key features:
|
|
8
|
+
* - Exponential backoff reconnection: delay = initialDelay * 2^(attempt-1)
|
|
9
|
+
* - Request-response correlation using method name matching
|
|
10
|
+
* - EventEmitter pattern for connected/disconnected events
|
|
11
|
+
* - Cleanup of all pending handlers on disconnect
|
|
12
|
+
*
|
|
13
|
+
* Requirements: 10.1, 10.2, 10.3, 10.4, 10.5
|
|
14
|
+
*/
|
|
15
|
+
/**
|
|
16
|
+
* Configuration options for the ClearNodeConnection.
|
|
17
|
+
*/
|
|
18
|
+
export interface ConnectionOptions {
|
|
19
|
+
/** Maximum number of reconnection attempts before giving up. Default: 5 */
|
|
20
|
+
maxReconnectAttempts?: number;
|
|
21
|
+
/** Initial reconnection delay in milliseconds. Default: 1000 */
|
|
22
|
+
reconnectDelay?: number;
|
|
23
|
+
/** Timeout for sendAndWait responses in milliseconds. Default: 30000 */
|
|
24
|
+
messageTimeout?: number;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Minimal WebSocket interface used internally.
|
|
28
|
+
*
|
|
29
|
+
* Compatible with both the Node.js global WebSocket (Node 22+) and the `ws` package.
|
|
30
|
+
* This abstraction avoids a hard dependency on `@types/ws` while remaining type-safe.
|
|
31
|
+
*/
|
|
32
|
+
interface IWebSocket {
|
|
33
|
+
readonly readyState: number;
|
|
34
|
+
send(data: string): void;
|
|
35
|
+
close(): void;
|
|
36
|
+
onopen: ((event: unknown) => void) | null;
|
|
37
|
+
onclose: ((event: unknown) => void) | null;
|
|
38
|
+
onerror: ((event: unknown) => void) | null;
|
|
39
|
+
onmessage: ((event: {
|
|
40
|
+
data: unknown;
|
|
41
|
+
}) => void) | null;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Factory type for creating WebSocket instances.
|
|
45
|
+
* Defaults to the global WebSocket constructor.
|
|
46
|
+
* Can be overridden for testing.
|
|
47
|
+
*/
|
|
48
|
+
type WebSocketFactory = (url: string) => IWebSocket;
|
|
49
|
+
/**
|
|
50
|
+
* Calculate the exponential backoff delay for a given reconnection attempt.
|
|
51
|
+
*
|
|
52
|
+
* Formula: delay = initialDelay * 2^(attempt - 1)
|
|
53
|
+
*
|
|
54
|
+
* This is exported as a pure function so it can be independently tested
|
|
55
|
+
* (including via property-based tests).
|
|
56
|
+
*
|
|
57
|
+
* @param initialDelay - The base delay in milliseconds
|
|
58
|
+
* @param attempt - The attempt number (1-based)
|
|
59
|
+
* @returns The delay in milliseconds before the given attempt
|
|
60
|
+
*/
|
|
61
|
+
export declare function calculateBackoffDelay(initialDelay: number, attempt: number): number;
|
|
62
|
+
/**
|
|
63
|
+
* Manages a WebSocket connection to Yellow Network's ClearNode.
|
|
64
|
+
*
|
|
65
|
+
* Provides:
|
|
66
|
+
* - connect/disconnect lifecycle management
|
|
67
|
+
* - send (fire-and-forget) and sendAndWait (request-response correlation)
|
|
68
|
+
* - Automatic reconnection with exponential backoff
|
|
69
|
+
* - Event emission for 'connected' and 'disconnected' events
|
|
70
|
+
* - Cleanup of pending handlers on disconnect
|
|
71
|
+
*
|
|
72
|
+
* Requirements: 10.1, 10.2, 10.3, 10.4, 10.5
|
|
73
|
+
*/
|
|
74
|
+
export declare class ClearNodeConnection {
|
|
75
|
+
private readonly url;
|
|
76
|
+
private readonly maxReconnectAttempts;
|
|
77
|
+
private readonly reconnectDelay;
|
|
78
|
+
private readonly messageTimeout;
|
|
79
|
+
private readonly wsFactory;
|
|
80
|
+
private ws;
|
|
81
|
+
private emitter;
|
|
82
|
+
private pendingRequests;
|
|
83
|
+
private messageHandlers;
|
|
84
|
+
private _isConnected;
|
|
85
|
+
private _isDisposed;
|
|
86
|
+
private reconnectAttempt;
|
|
87
|
+
private reconnectTimer;
|
|
88
|
+
/**
|
|
89
|
+
* @param url - The ClearNode WebSocket URL
|
|
90
|
+
* @param options - Connection configuration options
|
|
91
|
+
* @param wsFactory - Optional WebSocket factory for testing. Defaults to global WebSocket.
|
|
92
|
+
*/
|
|
93
|
+
constructor(url: string, options?: ConnectionOptions, wsFactory?: WebSocketFactory);
|
|
94
|
+
/**
|
|
95
|
+
* Establish a WebSocket connection to ClearNode.
|
|
96
|
+
*
|
|
97
|
+
* Resolves when the connection is open and ready.
|
|
98
|
+
* Rejects if the connection fails to establish.
|
|
99
|
+
*
|
|
100
|
+
* Requirement 10.1: Emit a connected event on successful connection.
|
|
101
|
+
*/
|
|
102
|
+
connect(): Promise<void>;
|
|
103
|
+
/**
|
|
104
|
+
* Close the WebSocket connection and clean up all resources.
|
|
105
|
+
*
|
|
106
|
+
* Requirement 10.4: Clean up all pending message handlers on disconnect.
|
|
107
|
+
*/
|
|
108
|
+
disconnect(): Promise<void>;
|
|
109
|
+
/**
|
|
110
|
+
* Send a message and wait for a correlated response.
|
|
111
|
+
*
|
|
112
|
+
* The response is matched by method name: when a message is received
|
|
113
|
+
* that contains a matching method field, the promise resolves with that response.
|
|
114
|
+
*
|
|
115
|
+
* Requirement 10.5: Request-response correlation using method name matching.
|
|
116
|
+
*
|
|
117
|
+
* @param message - The message string to send
|
|
118
|
+
* @param method - The method name to correlate the response with
|
|
119
|
+
* @param timeout - Optional timeout in ms (defaults to messageTimeout)
|
|
120
|
+
* @returns The parsed response data
|
|
121
|
+
* @throws Error if the connection is not open, the request times out, or the connection drops
|
|
122
|
+
*/
|
|
123
|
+
sendAndWait<T>(message: string, method: string, timeout?: number): Promise<T>;
|
|
124
|
+
/**
|
|
125
|
+
* Send a message without waiting for a response (fire-and-forget).
|
|
126
|
+
*
|
|
127
|
+
* @param message - The message string to send
|
|
128
|
+
* @throws Error if the connection is not open
|
|
129
|
+
*/
|
|
130
|
+
send(message: string): void;
|
|
131
|
+
/**
|
|
132
|
+
* Register a handler for incoming messages.
|
|
133
|
+
*
|
|
134
|
+
* Handlers receive the parsed message data for all incoming messages
|
|
135
|
+
* (including those that match pending requests).
|
|
136
|
+
*
|
|
137
|
+
* @param handler - Callback invoked with the parsed message data
|
|
138
|
+
*/
|
|
139
|
+
onMessage(handler: (data: unknown) => void): void;
|
|
140
|
+
/**
|
|
141
|
+
* Whether the WebSocket connection is currently open and ready.
|
|
142
|
+
*/
|
|
143
|
+
get isConnected(): boolean;
|
|
144
|
+
/**
|
|
145
|
+
* Register an event listener for connection lifecycle events.
|
|
146
|
+
*
|
|
147
|
+
* Supported events: 'connected', 'disconnected'
|
|
148
|
+
*/
|
|
149
|
+
on(event: string, handler: (...args: unknown[]) => void): void;
|
|
150
|
+
/**
|
|
151
|
+
* Remove an event listener.
|
|
152
|
+
*/
|
|
153
|
+
off(event: string, handler: (...args: unknown[]) => void): void;
|
|
154
|
+
/**
|
|
155
|
+
* Handle an incoming WebSocket message.
|
|
156
|
+
*
|
|
157
|
+
* Parses the message as JSON and checks for method-based correlation
|
|
158
|
+
* with pending requests. Also dispatches to all registered message handlers.
|
|
159
|
+
*/
|
|
160
|
+
private handleMessage;
|
|
161
|
+
/**
|
|
162
|
+
* Extract the method name from a parsed message object.
|
|
163
|
+
*
|
|
164
|
+
* Supports common message formats:
|
|
165
|
+
* - { method: "..." }
|
|
166
|
+
* - { type: "..." }
|
|
167
|
+
* - Nested: { response: { method: "..." } }
|
|
168
|
+
*/
|
|
169
|
+
private extractMethod;
|
|
170
|
+
/**
|
|
171
|
+
* Handle an unexpected WebSocket disconnection.
|
|
172
|
+
*
|
|
173
|
+
* Cleans up state and initiates reconnection with exponential backoff.
|
|
174
|
+
*
|
|
175
|
+
* Requirement 10.2: Exponential backoff reconnection.
|
|
176
|
+
* Requirement 10.3: Emit disconnected and mark unavailable when retries exhausted.
|
|
177
|
+
*/
|
|
178
|
+
private handleDisconnect;
|
|
179
|
+
/**
|
|
180
|
+
* Attempt to reconnect with exponential backoff.
|
|
181
|
+
*
|
|
182
|
+
* Requirement 10.2: delay = initialDelay * 2^(attempt-1)
|
|
183
|
+
* Requirement 10.3: Mark provider unavailable when all retries exhausted.
|
|
184
|
+
*/
|
|
185
|
+
private attemptReconnect;
|
|
186
|
+
/**
|
|
187
|
+
* Cancel any pending reconnection timer.
|
|
188
|
+
*/
|
|
189
|
+
private cancelReconnect;
|
|
190
|
+
/**
|
|
191
|
+
* Reject all pending requests with the given error and clean up timers.
|
|
192
|
+
*
|
|
193
|
+
* Requirement 10.4: Clean up all pending message handlers on disconnect.
|
|
194
|
+
*/
|
|
195
|
+
private cleanupPendingRequests;
|
|
196
|
+
/**
|
|
197
|
+
* Remove a specific pending request from the list.
|
|
198
|
+
*/
|
|
199
|
+
private removePendingRequest;
|
|
200
|
+
}
|
|
201
|
+
export {};
|
|
202
|
+
//# sourceMappingURL=clear-node-connection.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clear-node-connection.d.ts","sourceRoot":"","sources":["../../../src/yellow/clear-node-connection.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Yellow Network Event-to-Status Mapper
|
|
3
|
+
*
|
|
4
|
+
* Maps Yellow Network events, channel statuses, and state intents to JACK
|
|
5
|
+
* ExecutionStatus values. These are pure functions with no side effects,
|
|
6
|
+
* extracted from the dashboard's route.ts mapping tables into SDK-level
|
|
7
|
+
* reusable functions.
|
|
8
|
+
*
|
|
9
|
+
* Requirements: 9.1, 9.2, 9.3, 9.4, 9.5, 9.6
|
|
10
|
+
*/
|
|
11
|
+
import { ExecutionStatus } from '../types.js';
|
|
12
|
+
/**
|
|
13
|
+
* Represents a mapped Yellow Network event with its corresponding JACK
|
|
14
|
+
* execution status, step label, step status, and terminal flag.
|
|
15
|
+
*/
|
|
16
|
+
export interface MappedEvent {
|
|
17
|
+
executionStatus: ExecutionStatus;
|
|
18
|
+
stepLabel: string;
|
|
19
|
+
stepStatus: 'COMPLETED' | 'IN_PROGRESS' | 'PENDING' | 'FAILED';
|
|
20
|
+
isTerminal: boolean;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Map a Yellow Network event name to a JACK MappedEvent.
|
|
24
|
+
*
|
|
25
|
+
* Accepts event names in any casing; normalizes to lowercase with underscores.
|
|
26
|
+
* Returns undefined for unknown events.
|
|
27
|
+
*
|
|
28
|
+
* @param event - The Yellow Network event name (e.g., "quote_accepted", "settled")
|
|
29
|
+
* @returns The corresponding MappedEvent, or undefined if the event is unknown
|
|
30
|
+
*
|
|
31
|
+
* Requirements: 9.1, 9.2, 9.3, 9.4, 9.5
|
|
32
|
+
*/
|
|
33
|
+
export declare function mapYellowEvent(event: string): MappedEvent | undefined;
|
|
34
|
+
/**
|
|
35
|
+
* Map a channel status to a JACK MappedEvent.
|
|
36
|
+
*
|
|
37
|
+
* Accepts channel statuses in any casing (e.g., "ACTIVE", "active", "Active").
|
|
38
|
+
* Returns undefined for unknown statuses.
|
|
39
|
+
*
|
|
40
|
+
* @param status - The ERC-7824 channel status (e.g., "VOID", "ACTIVE", "FINAL")
|
|
41
|
+
* @returns The corresponding MappedEvent, or undefined if the status is unknown
|
|
42
|
+
*
|
|
43
|
+
* Requirement: 9.6
|
|
44
|
+
*/
|
|
45
|
+
export declare function mapChannelStatus(status: string): MappedEvent | undefined;
|
|
46
|
+
/**
|
|
47
|
+
* Map a state intent to a JACK MappedEvent.
|
|
48
|
+
*
|
|
49
|
+
* Accepts state intents in any casing (e.g., "FINALIZE", "finalize", "Finalize").
|
|
50
|
+
* Returns undefined for unknown intents.
|
|
51
|
+
*
|
|
52
|
+
* @param intent - The ERC-7824 state intent (e.g., "INITIALIZE", "OPERATE", "FINALIZE")
|
|
53
|
+
* @returns The corresponding MappedEvent, or undefined if the intent is unknown
|
|
54
|
+
*
|
|
55
|
+
* Requirement: 9.6
|
|
56
|
+
*/
|
|
57
|
+
export declare function mapStateIntent(intent: string): MappedEvent | undefined;
|
|
58
|
+
/**
|
|
59
|
+
* Infer the best mapping from a notification payload.
|
|
60
|
+
*
|
|
61
|
+
* Checks fields in priority order: event → channelStatus → stateIntent.
|
|
62
|
+
* Returns the first successful mapping, or undefined if no field matches.
|
|
63
|
+
*
|
|
64
|
+
* @param notification - An object with optional event, channelStatus, and stateIntent fields
|
|
65
|
+
* @returns The best matching MappedEvent, or undefined if no mapping is found
|
|
66
|
+
*
|
|
67
|
+
* Requirements: 9.1, 9.2, 9.3, 9.4, 9.5, 9.6
|
|
68
|
+
*/
|
|
69
|
+
export declare function inferMapping(notification: {
|
|
70
|
+
event?: string;
|
|
71
|
+
channelStatus?: string;
|
|
72
|
+
stateIntent?: string;
|
|
73
|
+
}): MappedEvent | undefined;
|
|
74
|
+
//# sourceMappingURL=event-mapper.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"event-mapper.d.ts","sourceRoot":"","sources":["../../../src/yellow/event-mapper.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,eAAe,EAAE,eAAe,CAAC;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,WAAW,GAAG,aAAa,GAAG,SAAS,GAAG,QAAQ,CAAC;IAC/D,UAAU,EAAE,OAAO,CAAC;CACrB;AA+KD;;;;;;;;;;GAUG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAGrE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAGxE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAGtE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,YAAY,CAAC,YAAY,EAAE;IACzC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,GAAG,WAAW,GAAG,SAAS,CAiB1B"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Yellow Network Integration - BigInt Serialization Utilities
|
|
3
|
+
*
|
|
4
|
+
* Provides helpers to ensure all BigInt values from NitroliteClient responses
|
|
5
|
+
* are converted to string representations in public-facing types, making
|
|
6
|
+
* ChannelState and YellowQuote objects fully JSON-serializable via JSON.stringify.
|
|
7
|
+
*
|
|
8
|
+
* Requirements: 11.1, 11.2, 11.5
|
|
9
|
+
*/
|
|
10
|
+
import type { ChannelState, YellowQuote } from './types.js';
|
|
11
|
+
/**
|
|
12
|
+
* Recursively converts any BigInt values in an object (or nested objects/arrays)
|
|
13
|
+
* to their string representation. All other value types are left unchanged.
|
|
14
|
+
*
|
|
15
|
+
* This is the foundational utility used by the type-specific helpers below.
|
|
16
|
+
* It handles the case where NitroliteClient responses may contain raw BigInt
|
|
17
|
+
* values that would cause JSON.stringify to throw.
|
|
18
|
+
*
|
|
19
|
+
* @param value - Any value that may contain BigInt values at any nesting level
|
|
20
|
+
* @returns A new value with all BigInt instances replaced by their string form
|
|
21
|
+
*
|
|
22
|
+
* Requirement 11.5: Convert BigInt values to string representation for JSON compatibility
|
|
23
|
+
*/
|
|
24
|
+
export declare function serializeBigIntToString<T>(value: T): T;
|
|
25
|
+
/**
|
|
26
|
+
* Ensures a ChannelState object is fully JSON-serializable.
|
|
27
|
+
*
|
|
28
|
+
* Converts any BigInt values that may be present in the ChannelState
|
|
29
|
+
* (particularly in allocation amounts, challengePeriod, challengeExpiration,
|
|
30
|
+
* stateVersion, chainId, createdAt, updatedAt) to their appropriate
|
|
31
|
+
* JSON-compatible types (string for amounts, number for numeric fields).
|
|
32
|
+
*
|
|
33
|
+
* @param state - A ChannelState that may contain BigInt values from NitroliteClient
|
|
34
|
+
* @returns A new ChannelState with all values JSON-serializable
|
|
35
|
+
*
|
|
36
|
+
* Requirements: 11.1, 11.5
|
|
37
|
+
*/
|
|
38
|
+
export declare function toSerializableChannelState(state: ChannelState): ChannelState;
|
|
39
|
+
/**
|
|
40
|
+
* Ensures a YellowQuote object is fully JSON-serializable.
|
|
41
|
+
*
|
|
42
|
+
* Converts any BigInt values that may be present in the YellowQuote
|
|
43
|
+
* (particularly amountIn and amountOut from solver responses) to their
|
|
44
|
+
* string representation.
|
|
45
|
+
*
|
|
46
|
+
* @param quote - A YellowQuote that may contain BigInt values from ClearNode
|
|
47
|
+
* @returns A new YellowQuote with all values JSON-serializable
|
|
48
|
+
*
|
|
49
|
+
* Requirement 11.2
|
|
50
|
+
*/
|
|
51
|
+
export declare function toSerializableYellowQuote(quote: YellowQuote): YellowQuote;
|
|
52
|
+
//# sourceMappingURL=serialization.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"serialization.d.ts","sourceRoot":"","sources":["../../../src/yellow/serialization.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAqB,WAAW,EAAE,MAAM,YAAY,CAAC;AAM/E;;;;;;;;;;;;GAYG;AACH,wBAAgB,uBAAuB,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAuBtD;AAMD;;;;;;;;;;;;GAYG;AACH,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,YAAY,GAAG,YAAY,CAiB5E;AAuBD;;;;;;;;;;;GAWG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,WAAW,GAAG,WAAW,CAazE"}
|