@antseed/node 0.2.82 → 0.2.83

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.
Files changed (85) hide show
  1. package/package.json +1 -1
  2. package/dist/discovery/default-metadata-resolver.d.ts +0 -16
  3. package/dist/discovery/default-metadata-resolver.d.ts.map +0 -1
  4. package/dist/discovery/default-metadata-resolver.js +0 -16
  5. package/dist/discovery/default-metadata-resolver.js.map +0 -1
  6. package/dist/discovery/peer-selector.d.ts +0 -33
  7. package/dist/discovery/peer-selector.d.ts.map +0 -1
  8. package/dist/discovery/peer-selector.js +0 -80
  9. package/dist/discovery/peer-selector.js.map +0 -1
  10. package/dist/discovery/profile-manager.d.ts +0 -50
  11. package/dist/discovery/profile-manager.d.ts.map +0 -1
  12. package/dist/discovery/profile-manager.js +0 -105
  13. package/dist/discovery/profile-manager.js.map +0 -1
  14. package/dist/discovery/profile-search.d.ts +0 -27
  15. package/dist/discovery/profile-search.d.ts.map +0 -1
  16. package/dist/discovery/profile-search.js +0 -75
  17. package/dist/discovery/profile-search.js.map +0 -1
  18. package/dist/discovery/reputation-verifier.d.ts +0 -5
  19. package/dist/discovery/reputation-verifier.d.ts.map +0 -1
  20. package/dist/discovery/reputation-verifier.js +0 -5
  21. package/dist/discovery/reputation-verifier.js.map +0 -1
  22. package/dist/discovery/stats-verifier.d.ts +0 -27
  23. package/dist/discovery/stats-verifier.d.ts.map +0 -1
  24. package/dist/discovery/stats-verifier.js +0 -38
  25. package/dist/discovery/stats-verifier.js.map +0 -1
  26. package/dist/p2p/handshake.d.ts +0 -47
  27. package/dist/p2p/handshake.d.ts.map +0 -1
  28. package/dist/p2p/handshake.js +0 -107
  29. package/dist/p2p/handshake.js.map +0 -1
  30. package/dist/p2p/reconnect.d.ts +0 -48
  31. package/dist/p2p/reconnect.d.ts.map +0 -1
  32. package/dist/p2p/reconnect.js +0 -89
  33. package/dist/p2p/reconnect.js.map +0 -1
  34. package/dist/payments/disputes.d.ts +0 -18
  35. package/dist/payments/disputes.d.ts.map +0 -1
  36. package/dist/payments/disputes.js +0 -47
  37. package/dist/payments/disputes.js.map +0 -1
  38. package/dist/payments/evm/escrow-client.d.ts +0 -82
  39. package/dist/payments/evm/escrow-client.d.ts.map +0 -1
  40. package/dist/payments/evm/escrow-client.js +0 -277
  41. package/dist/payments/evm/escrow-client.js.map +0 -1
  42. package/dist/payments/evm/keypair.d.ts +0 -10
  43. package/dist/payments/evm/keypair.d.ts.map +0 -1
  44. package/dist/payments/evm/keypair.js +0 -13
  45. package/dist/payments/evm/keypair.js.map +0 -1
  46. package/dist/payments/evm/sessions-client.d.ts +0 -30
  47. package/dist/payments/evm/sessions-client.d.ts.map +0 -1
  48. package/dist/payments/evm/sessions-client.js +0 -61
  49. package/dist/payments/evm/sessions-client.js.map +0 -1
  50. package/dist/payments/evm/wallet.d.ts +0 -5
  51. package/dist/payments/evm/wallet.d.ts.map +0 -1
  52. package/dist/payments/evm/wallet.js +0 -31
  53. package/dist/payments/evm/wallet.js.map +0 -1
  54. package/dist/payments/session-store.d.ts +0 -68
  55. package/dist/payments/session-store.d.ts.map +0 -1
  56. package/dist/payments/session-store.js +0 -272
  57. package/dist/payments/session-store.js.map +0 -1
  58. package/dist/payments/settlement.d.ts +0 -6
  59. package/dist/payments/settlement.d.ts.map +0 -1
  60. package/dist/payments/settlement.js +0 -25
  61. package/dist/payments/settlement.js.map +0 -1
  62. package/dist/proxy/model-api-adapter.d.ts +0 -30
  63. package/dist/proxy/model-api-adapter.d.ts.map +0 -1
  64. package/dist/proxy/model-api-adapter.js +0 -891
  65. package/dist/proxy/model-api-adapter.js.map +0 -1
  66. package/dist/reputation/trust-engine.d.ts +0 -36
  67. package/dist/reputation/trust-engine.d.ts.map +0 -1
  68. package/dist/reputation/trust-engine.js +0 -95
  69. package/dist/reputation/trust-engine.js.map +0 -1
  70. package/dist/reputation/trust-score.d.ts +0 -43
  71. package/dist/reputation/trust-score.d.ts.map +0 -1
  72. package/dist/reputation/trust-score.js +0 -34
  73. package/dist/reputation/trust-score.js.map +0 -1
  74. package/dist/types/model-api.d.ts +0 -4
  75. package/dist/types/model-api.d.ts.map +0 -1
  76. package/dist/types/model-api.js +0 -11
  77. package/dist/types/model-api.js.map +0 -1
  78. package/dist/types/peer-profile.d.ts +0 -24
  79. package/dist/types/peer-profile.d.ts.map +0 -1
  80. package/dist/types/peer-profile.js +0 -2
  81. package/dist/types/peer-profile.js.map +0 -1
  82. package/dist/types/staking.d.ts +0 -16
  83. package/dist/types/staking.d.ts.map +0 -1
  84. package/dist/types/staking.js +0 -6
  85. package/dist/types/staking.js.map +0 -1
@@ -1,277 +0,0 @@
1
- import { Contract } from 'ethers';
2
- import { BaseEvmClient } from './base-evm-client.js';
3
- const ESCROW_ABI = [
4
- // Buyer operations
5
- 'function deposit(uint256 amount) external',
6
- 'function depositFor(address buyer, uint256 amount) external',
7
- 'function requestWithdrawal(uint256 amount) external',
8
- 'function executeWithdrawal() external',
9
- 'function cancelWithdrawal() external',
10
- // Seller operations
11
- 'function stake(uint256 amount) external',
12
- 'function unstake() external',
13
- 'function setTokenRate(uint256 rate) external',
14
- 'function claimEarnings() external',
15
- // Core — reserve & settle
16
- 'function reserve(address buyer, bytes32 sessionId, uint256 maxAmount, uint256 nonce, uint256 deadline, uint256 previousConsumption, bytes32 previousSessionId, bytes calldata buyerSig) external',
17
- 'function settle(bytes32 sessionId, uint256 tokenCount) external',
18
- 'function settleTimeout(bytes32 sessionId) external',
19
- // View functions
20
- 'function getBuyerBalance(address buyer) external view returns (uint256 available, uint256 reserved, uint256 pendingWithdrawal, uint256 lastActivityAt)',
21
- 'function getBuyerCreditLimit(address buyer) external view returns (uint256)',
22
- 'function getSellerAccount(address seller) external view returns (uint256 stake, uint256 earnings, uint256 stakedAt, uint256 tokenRate)',
23
- 'function domainSeparator() external view returns (bytes32)',
24
- 'function FIRST_SIGN_CAP() external view returns (uint256)',
25
- 'function PROVEN_SIGN_COOLDOWN() external view returns (uint256)',
26
- 'function latestSessionId(address buyer, address seller) external view returns (bytes32)',
27
- 'function firstSessionTimestamp(address buyer, address seller) external view returns (uint256)',
28
- 'function sessions(bytes32 sessionId) external view returns (address buyer, address seller, uint256 maxAmount, uint256 nonce, uint256 deadline, uint256 previousConsumption, bytes32 previousSessionId, uint256 reservedAt, uint256 settledAmount, uint256 settledTokenCount, uint256 tokenRate, uint8 status, bool isFirstSign, bool isProvenSign, bool isQualifiedProvenSign)',
29
- ];
30
- const ERC20_ABI = [
31
- 'function approve(address spender, uint256 amount) external returns (bool)',
32
- 'function balanceOf(address owner) external view returns (uint256)',
33
- 'function allowance(address owner, address spender) external view returns (uint256)',
34
- ];
35
- export class BaseEscrowClient extends BaseEvmClient {
36
- _usdcAddress;
37
- constructor(config) {
38
- super(config.rpcUrl, config.contractAddress);
39
- this._usdcAddress = config.usdcAddress;
40
- }
41
- get usdcAddress() { return this._usdcAddress; }
42
- async _prepareEscrowWrite(signer) {
43
- const connected = this._ensureConnected(signer);
44
- const signerAddress = await connected.getAddress();
45
- const nonce = await this._reserveNonce(signerAddress);
46
- const contract = new Contract(this._contractAddress, ESCROW_ABI, connected);
47
- return { contract, nonce };
48
- }
49
- // ─── Buyer Operations ──────────────────────────────────────────────
50
- async deposit(signer, amount) {
51
- const connected = this._ensureConnected(signer);
52
- const signerAddress = await connected.getAddress();
53
- const usdc = new Contract(this._usdcAddress, ERC20_ABI, connected);
54
- const approveNonce = await this._reserveNonce(signerAddress);
55
- const approveTx = await usdc.getFunction('approve')(this._contractAddress, amount, { nonce: approveNonce });
56
- const approveReceipt = await approveTx.wait();
57
- if (!approveReceipt)
58
- throw new Error('Transaction was dropped or replaced');
59
- const contract = new Contract(this._contractAddress, ESCROW_ABI, connected);
60
- const depositNonce = await this._reserveNonce(signerAddress);
61
- const tx = await contract.getFunction('deposit')(amount, { nonce: depositNonce });
62
- const receipt = await tx.wait();
63
- if (!receipt)
64
- throw new Error('Transaction was dropped or replaced');
65
- return receipt.hash;
66
- }
67
- async depositFor(signer, buyer, amount) {
68
- const connected = this._ensureConnected(signer);
69
- const signerAddress = await connected.getAddress();
70
- const usdc = new Contract(this._usdcAddress, ERC20_ABI, connected);
71
- const approveNonce = await this._reserveNonce(signerAddress);
72
- const approveTx = await usdc.getFunction('approve')(this._contractAddress, amount, { nonce: approveNonce });
73
- const approveReceipt = await approveTx.wait();
74
- if (!approveReceipt)
75
- throw new Error('Transaction was dropped or replaced');
76
- const contract = new Contract(this._contractAddress, ESCROW_ABI, connected);
77
- const depositNonce = await this._reserveNonce(signerAddress);
78
- const tx = await contract.getFunction('depositFor')(buyer, amount, { nonce: depositNonce });
79
- const receipt = await tx.wait();
80
- if (!receipt)
81
- throw new Error('Transaction was dropped or replaced');
82
- return receipt.hash;
83
- }
84
- async requestWithdrawal(signer, amount) {
85
- const { contract, nonce } = await this._prepareEscrowWrite(signer);
86
- const tx = await contract.getFunction('requestWithdrawal')(amount, { nonce });
87
- const receipt = await tx.wait();
88
- if (!receipt)
89
- throw new Error('Transaction was dropped or replaced');
90
- return receipt.hash;
91
- }
92
- async executeWithdrawal(signer) {
93
- const { contract, nonce } = await this._prepareEscrowWrite(signer);
94
- const tx = await contract.getFunction('executeWithdrawal')({ nonce });
95
- const receipt = await tx.wait();
96
- if (!receipt)
97
- throw new Error('Transaction was dropped or replaced');
98
- return receipt.hash;
99
- }
100
- async cancelWithdrawal(signer) {
101
- const { contract, nonce } = await this._prepareEscrowWrite(signer);
102
- const tx = await contract.getFunction('cancelWithdrawal')({ nonce });
103
- const receipt = await tx.wait();
104
- if (!receipt)
105
- throw new Error('Transaction was dropped or replaced');
106
- return receipt.hash;
107
- }
108
- // ─── Seller Operations ─────────────────────────────────────────────
109
- async stake(signer, amount) {
110
- const connected = this._ensureConnected(signer);
111
- const signerAddress = await connected.getAddress();
112
- const usdc = new Contract(this._usdcAddress, ERC20_ABI, connected);
113
- const approveNonce = await this._reserveNonce(signerAddress);
114
- const approveTx = await usdc.getFunction('approve')(this._contractAddress, amount, { nonce: approveNonce });
115
- const approveReceipt = await approveTx.wait();
116
- if (!approveReceipt)
117
- throw new Error('Transaction was dropped or replaced');
118
- const contract = new Contract(this._contractAddress, ESCROW_ABI, connected);
119
- const stakeNonce = await this._reserveNonce(signerAddress);
120
- const tx = await contract.getFunction('stake')(amount, { nonce: stakeNonce });
121
- const receipt = await tx.wait();
122
- if (!receipt)
123
- throw new Error('Transaction was dropped or replaced');
124
- return receipt.hash;
125
- }
126
- async unstake(signer) {
127
- const { contract, nonce } = await this._prepareEscrowWrite(signer);
128
- const tx = await contract.getFunction('unstake')({ nonce });
129
- const receipt = await tx.wait();
130
- if (!receipt)
131
- throw new Error('Transaction was dropped or replaced');
132
- return receipt.hash;
133
- }
134
- async setTokenRate(signer, rate) {
135
- const { contract, nonce } = await this._prepareEscrowWrite(signer);
136
- const tx = await contract.getFunction('setTokenRate')(rate, { nonce });
137
- const receipt = await tx.wait();
138
- if (!receipt)
139
- throw new Error('Transaction was dropped or replaced');
140
- return receipt.hash;
141
- }
142
- async claimEarnings(signer) {
143
- const { contract, nonce } = await this._prepareEscrowWrite(signer);
144
- const tx = await contract.getFunction('claimEarnings')({ nonce });
145
- const receipt = await tx.wait();
146
- if (!receipt)
147
- throw new Error('Transaction was dropped or replaced');
148
- return receipt.hash;
149
- }
150
- // ─── Core — Reserve & Settle ───────────────────────────────────────
151
- async reserve(signer, buyer, sessionId, maxAmount, nonce, deadline, previousConsumption, previousSessionId, buyerSig) {
152
- const { contract, nonce: txNonce } = await this._prepareEscrowWrite(signer);
153
- const tx = await contract.getFunction('reserve')(buyer, sessionId, maxAmount, nonce, deadline, previousConsumption, previousSessionId, buyerSig, { nonce: txNonce });
154
- const receipt = await tx.wait();
155
- if (!receipt)
156
- throw new Error('Transaction was dropped or replaced');
157
- return receipt.hash;
158
- }
159
- async settle(signer, sessionId, tokenCount) {
160
- const { contract, nonce } = await this._prepareEscrowWrite(signer);
161
- const tx = await contract.getFunction('settle')(sessionId, tokenCount, { nonce });
162
- const receipt = await tx.wait();
163
- if (!receipt)
164
- throw new Error('Transaction was dropped or replaced');
165
- return receipt.hash;
166
- }
167
- async settleTimeout(signer, sessionId) {
168
- const { contract, nonce } = await this._prepareEscrowWrite(signer);
169
- const tx = await contract.getFunction('settleTimeout')(sessionId, { nonce });
170
- const receipt = await tx.wait();
171
- if (!receipt)
172
- throw new Error('Transaction was dropped or replaced');
173
- return receipt.hash;
174
- }
175
- // ─── View Functions ────────────────────────────────────────────────
176
- async getBuyerBalance(buyerAddr) {
177
- const contract = new Contract(this._contractAddress, ESCROW_ABI, this._provider);
178
- const result = await contract.getFunction('getBuyerBalance')(buyerAddr);
179
- return {
180
- available: result[0],
181
- reserved: result[1],
182
- pendingWithdrawal: result[2],
183
- lastActivityAt: result[3],
184
- };
185
- }
186
- async getBuyerCreditLimit(buyerAddr) {
187
- const contract = new Contract(this._contractAddress, ESCROW_ABI, this._provider);
188
- return contract.getFunction('getBuyerCreditLimit')(buyerAddr);
189
- }
190
- async getSellerAccount(sellerAddr) {
191
- const contract = new Contract(this._contractAddress, ESCROW_ABI, this._provider);
192
- const result = await contract.getFunction('getSellerAccount')(sellerAddr);
193
- return {
194
- stake: result[0],
195
- earnings: result[1],
196
- stakedAt: result[2],
197
- tokenRate: result[3],
198
- };
199
- }
200
- async getSession(sessionId) {
201
- const contract = new Contract(this._contractAddress, ESCROW_ABI, this._provider);
202
- const result = await contract.getFunction('sessions')(sessionId);
203
- return {
204
- buyer: result[0],
205
- seller: result[1],
206
- maxAmount: result[2],
207
- nonce: result[3],
208
- deadline: result[4],
209
- previousConsumption: result[5],
210
- previousSessionId: result[6],
211
- reservedAt: result[7],
212
- settledAmount: result[8],
213
- settledTokenCount: result[9],
214
- tokenRate: result[10],
215
- status: Number(result[11]),
216
- isFirstSign: result[12],
217
- isProvenSign: result[13],
218
- isQualifiedProvenSign: result[14],
219
- };
220
- }
221
- async domainSeparator() {
222
- const contract = new Contract(this._contractAddress, ESCROW_ABI, this._provider);
223
- return contract.getFunction('domainSeparator')();
224
- }
225
- async getFirstSignCap() {
226
- const contract = new Contract(this._contractAddress, ESCROW_ABI, this._provider);
227
- return contract.getFunction('FIRST_SIGN_CAP')();
228
- }
229
- async getLatestSessionId(buyerAddr, sellerAddr) {
230
- const contract = new Contract(this._contractAddress, ESCROW_ABI, this._provider);
231
- return contract.getFunction('latestSessionId')(buyerAddr, sellerAddr);
232
- }
233
- async getFirstSessionTimestamp(buyerAddr, sellerAddr) {
234
- const contract = new Contract(this._contractAddress, ESCROW_ABI, this._provider);
235
- return contract.getFunction('firstSessionTimestamp')(buyerAddr, sellerAddr);
236
- }
237
- async getProvenSignCooldown() {
238
- const contract = new Contract(this._contractAddress, ESCROW_ABI, this._provider);
239
- return contract.getFunction('PROVEN_SIGN_COOLDOWN')();
240
- }
241
- /**
242
- * Fetch all data the buyer needs to display a payment approval card.
243
- * Batches multiple view calls in parallel.
244
- */
245
- async getBuyerApprovalContext(buyerAddr, sellerAddr) {
246
- const ZERO_BYTES32 = '0x' + '00'.repeat(32);
247
- const [buyerBalance, firstSignCap, latestSessId, firstSessTs, cooldown] = await Promise.all([
248
- this.getBuyerBalance(buyerAddr),
249
- this.getFirstSignCap(),
250
- this.getLatestSessionId(buyerAddr, sellerAddr),
251
- this.getFirstSessionTimestamp(buyerAddr, sellerAddr),
252
- this.getProvenSignCooldown(),
253
- ]);
254
- const isFirstSign = latestSessId === ZERO_BYTES32;
255
- const nowSecs = BigInt(Math.floor(Date.now() / 1000));
256
- let cooldownRemainingSecs = 0;
257
- if (!isFirstSign && firstSessTs > 0n) {
258
- const cooldownEnd = firstSessTs + cooldown;
259
- if (cooldownEnd > nowSecs) {
260
- cooldownRemainingSecs = Number(cooldownEnd - nowSecs);
261
- }
262
- }
263
- return {
264
- buyerBalance,
265
- firstSignCap,
266
- latestSessionId: latestSessId,
267
- firstSessionTimestamp: firstSessTs,
268
- isFirstSign,
269
- cooldownRemainingSecs,
270
- };
271
- }
272
- async getUSDCBalance(ownerAddr) {
273
- const usdc = new Contract(this._usdcAddress, ERC20_ABI, this._provider);
274
- return usdc.getFunction('balanceOf')(ownerAddr);
275
- }
276
- }
277
- //# sourceMappingURL=escrow-client.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"escrow-client.js","sourceRoot":"","sources":["../../../src/payments/evm/escrow-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAuB,MAAM,QAAQ,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AA6CrD,MAAM,UAAU,GAAG;IACjB,mBAAmB;IACnB,2CAA2C;IAC3C,6DAA6D;IAC7D,qDAAqD;IACrD,uCAAuC;IACvC,sCAAsC;IAEtC,oBAAoB;IACpB,yCAAyC;IACzC,6BAA6B;IAC7B,8CAA8C;IAC9C,mCAAmC;IAEnC,0BAA0B;IAC1B,kMAAkM;IAClM,iEAAiE;IACjE,oDAAoD;IAEpD,iBAAiB;IACjB,wJAAwJ;IACxJ,6EAA6E;IAC7E,wIAAwI;IACxI,4DAA4D;IAC5D,2DAA2D;IAC3D,iEAAiE;IACjE,yFAAyF;IACzF,+FAA+F;IAC/F,gXAAgX;CACxW,CAAC;AAEX,MAAM,SAAS,GAAG;IAChB,2EAA2E;IAC3E,mEAAmE;IACnE,oFAAoF;CAC5E,CAAC;AAEX,MAAM,OAAO,gBAAiB,SAAQ,aAAa;IAChC,YAAY,CAAS;IAEtC,YAAY,MAAwB;QAClC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,eAAe,CAAC,CAAC;QAC7C,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,WAAW,CAAC;IACzC,CAAC;IAED,IAAI,WAAW,KAAa,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;IAE/C,KAAK,CAAC,mBAAmB,CAAC,MAAsB;QAItD,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;QAChD,MAAM,aAAa,GAAG,MAAM,SAAS,CAAC,UAAU,EAAE,CAAC;QACnD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;QACtD,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,gBAAgB,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;QAC5E,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IAC7B,CAAC;IAED,sEAAsE;IAEtE,KAAK,CAAC,OAAO,CAAC,MAAsB,EAAE,MAAc;QAClD,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;QAChD,MAAM,aAAa,GAAG,MAAM,SAAS,CAAC,UAAU,EAAE,CAAC;QACnD,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;QACnE,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;QAC7D,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,gBAAgB,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;QAC5G,MAAM,cAAc,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;QAC9C,IAAI,CAAC,cAAc;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QAC5E,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,gBAAgB,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;QAC5E,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;QAC7D,MAAM,EAAE,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;QAClF,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;QAChC,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACrE,OAAO,OAAO,CAAC,IAAI,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,MAAsB,EAAE,KAAa,EAAE,MAAc;QACpE,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;QAChD,MAAM,aAAa,GAAG,MAAM,SAAS,CAAC,UAAU,EAAE,CAAC;QACnD,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;QACnE,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;QAC7D,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,gBAAgB,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;QAC5G,MAAM,cAAc,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;QAC9C,IAAI,CAAC,cAAc;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QAC5E,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,gBAAgB,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;QAC5E,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;QAC7D,MAAM,EAAE,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;QAC5F,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;QAChC,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACrE,OAAO,OAAO,CAAC,IAAI,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,MAAsB,EAAE,MAAc;QAC5D,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;QACnE,MAAM,EAAE,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAC9E,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;QAChC,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACrE,OAAO,OAAO,CAAC,IAAI,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,MAAsB;QAC5C,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;QACnE,MAAM,EAAE,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QACtE,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;QAChC,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACrE,OAAO,OAAO,CAAC,IAAI,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,MAAsB;QAC3C,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;QACnE,MAAM,EAAE,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QACrE,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;QAChC,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACrE,OAAO,OAAO,CAAC,IAAI,CAAC;IACtB,CAAC;IAED,sEAAsE;IAEtE,KAAK,CAAC,KAAK,CAAC,MAAsB,EAAE,MAAc;QAChD,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;QAChD,MAAM,aAAa,GAAG,MAAM,SAAS,CAAC,UAAU,EAAE,CAAC;QACnD,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;QACnE,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;QAC7D,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,gBAAgB,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;QAC5G,MAAM,cAAc,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;QAC9C,IAAI,CAAC,cAAc;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QAC5E,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,gBAAgB,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;QAC5E,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;QAC3D,MAAM,EAAE,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;QAC9E,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;QAChC,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACrE,OAAO,OAAO,CAAC,IAAI,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,MAAsB;QAClC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;QACnE,MAAM,EAAE,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAC5D,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;QAChC,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACrE,OAAO,OAAO,CAAC,IAAI,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,MAAsB,EAAE,IAAY;QACrD,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;QACnE,MAAM,EAAE,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QACvE,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;QAChC,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACrE,OAAO,OAAO,CAAC,IAAI,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,MAAsB;QACxC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;QACnE,MAAM,EAAE,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAClE,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;QAChC,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACrE,OAAO,OAAO,CAAC,IAAI,CAAC;IACtB,CAAC;IAED,sEAAsE;IAEtE,KAAK,CAAC,OAAO,CACX,MAAsB,EACtB,KAAa,EACb,SAAiB,EACjB,SAAiB,EACjB,KAAa,EACb,QAAgB,EAChB,mBAA2B,EAC3B,iBAAyB,EACzB,QAAgB;QAEhB,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;QAC5E,MAAM,EAAE,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,SAAS,CAAC,CAC9C,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAC5C,mBAAmB,EAAE,iBAAiB,EAAE,QAAQ,EAChD,EAAE,KAAK,EAAE,OAAO,EAAE,CACnB,CAAC;QACF,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;QAChC,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACrE,OAAO,OAAO,CAAC,IAAI,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,MAAM,CACV,MAAsB,EACtB,SAAiB,EACjB,UAAkB;QAElB,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;QACnE,MAAM,EAAE,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,SAAS,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAClF,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;QAChC,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACrE,OAAO,OAAO,CAAC,IAAI,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,MAAsB,EACtB,SAAiB;QAEjB,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;QACnE,MAAM,EAAE,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAC7E,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;QAChC,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACrE,OAAO,OAAO,CAAC,IAAI,CAAC;IACtB,CAAC;IAED,sEAAsE;IAEtE,KAAK,CAAC,eAAe,CAAC,SAAiB;QACrC,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,gBAAgB,EAAE,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QACjF,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC,SAAS,CAAC,CAAC;QACxE,OAAO;YACL,SAAS,EAAE,MAAM,CAAC,CAAC,CAAW;YAC9B,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAW;YAC7B,iBAAiB,EAAE,MAAM,CAAC,CAAC,CAAW;YACtC,cAAc,EAAE,MAAM,CAAC,CAAC,CAAW;SACpC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,SAAiB;QACzC,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,gBAAgB,EAAE,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QACjF,OAAO,QAAQ,CAAC,WAAW,CAAC,qBAAqB,CAAC,CAAC,SAAS,CAAoB,CAAC;IACnF,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,UAAkB;QACvC,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,gBAAgB,EAAE,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QACjF,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC,UAAU,CAAC,CAAC;QAC1E,OAAO;YACL,KAAK,EAAE,MAAM,CAAC,CAAC,CAAW;YAC1B,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAW;YAC7B,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAW;YAC7B,SAAS,EAAE,MAAM,CAAC,CAAC,CAAW;SAC/B,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,SAAiB;QAChC,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,gBAAgB,EAAE,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QACjF,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,CAAC;QACjE,OAAO;YACL,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;YAChB,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;YACjB,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;YACpB,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;YAChB,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;YACnB,mBAAmB,EAAE,MAAM,CAAC,CAAC,CAAC;YAC9B,iBAAiB,EAAE,MAAM,CAAC,CAAC,CAAC;YAC5B,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;YACrB,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC;YACxB,iBAAiB,EAAE,MAAM,CAAC,CAAC,CAAC;YAC5B,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC;YACrB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC1B,WAAW,EAAE,MAAM,CAAC,EAAE,CAAC;YACvB,YAAY,EAAE,MAAM,CAAC,EAAE,CAAC;YACxB,qBAAqB,EAAE,MAAM,CAAC,EAAE,CAAC;SAClC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,eAAe;QACnB,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,gBAAgB,EAAE,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QACjF,OAAO,QAAQ,CAAC,WAAW,CAAC,iBAAiB,CAAC,EAAqB,CAAC;IACtE,CAAC;IAED,KAAK,CAAC,eAAe;QACnB,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,gBAAgB,EAAE,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QACjF,OAAO,QAAQ,CAAC,WAAW,CAAC,gBAAgB,CAAC,EAAqB,CAAC;IACrE,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,SAAiB,EAAE,UAAkB;QAC5D,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,gBAAgB,EAAE,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QACjF,OAAO,QAAQ,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC,SAAS,EAAE,UAAU,CAAoB,CAAC;IAC3F,CAAC;IAED,KAAK,CAAC,wBAAwB,CAAC,SAAiB,EAAE,UAAkB;QAClE,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,gBAAgB,EAAE,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QACjF,OAAO,QAAQ,CAAC,WAAW,CAAC,uBAAuB,CAAC,CAAC,SAAS,EAAE,UAAU,CAAoB,CAAC;IACjG,CAAC;IAED,KAAK,CAAC,qBAAqB;QACzB,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,gBAAgB,EAAE,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QACjF,OAAO,QAAQ,CAAC,WAAW,CAAC,sBAAsB,CAAC,EAAqB,CAAC;IAC3E,CAAC;IAGD;;;OAGG;IACH,KAAK,CAAC,uBAAuB,CAAC,SAAiB,EAAE,UAAkB;QAQjE,MAAM,YAAY,GAAG,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAE5C,MAAM,CAAC,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,QAAQ,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC1F,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC;YAC/B,IAAI,CAAC,eAAe,EAAE;YACtB,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,UAAU,CAAC;YAC9C,IAAI,CAAC,wBAAwB,CAAC,SAAS,EAAE,UAAU,CAAC;YACpD,IAAI,CAAC,qBAAqB,EAAE;SAC7B,CAAC,CAAC;QAEH,MAAM,WAAW,GAAG,YAAY,KAAK,YAAY,CAAC;QAClD,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC;QACtD,IAAI,qBAAqB,GAAG,CAAC,CAAC;QAC9B,IAAI,CAAC,WAAW,IAAI,WAAW,GAAG,EAAE,EAAE,CAAC;YACrC,MAAM,WAAW,GAAG,WAAW,GAAG,QAAQ,CAAC;YAC3C,IAAI,WAAW,GAAG,OAAO,EAAE,CAAC;gBAC1B,qBAAqB,GAAG,MAAM,CAAC,WAAW,GAAG,OAAO,CAAC,CAAC;YACxD,CAAC;QACH,CAAC;QAED,OAAO;YACL,YAAY;YACZ,YAAY;YACZ,eAAe,EAAE,YAAY;YAC7B,qBAAqB,EAAE,WAAW;YAClC,WAAW;YACX,qBAAqB;SACtB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,SAAiB;QACpC,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QACxE,OAAO,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,SAAS,CAAoB,CAAC;IACrE,CAAC;CACF"}
@@ -1,10 +0,0 @@
1
- import type { Identity } from '../../p2p/identity.js';
2
- /**
3
- * @deprecated Identity IS the EVM wallet now. Use identity.wallet directly.
4
- */
5
- export declare function identityToEvmWallet(identity: Identity): import("ethers").Wallet;
6
- /**
7
- * @deprecated Identity peerId IS the EVM address. Use `'0x' + identity.peerId` or `identity.wallet.address`.
8
- */
9
- export declare function identityToEvmAddress(identity: Identity): string;
10
- //# sourceMappingURL=keypair.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"keypair.d.ts","sourceRoot":"","sources":["../../../src/payments/evm/keypair.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEtD;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,2BAErD;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,CAE/D"}
@@ -1,13 +0,0 @@
1
- /**
2
- * @deprecated Identity IS the EVM wallet now. Use identity.wallet directly.
3
- */
4
- export function identityToEvmWallet(identity) {
5
- return identity.wallet;
6
- }
7
- /**
8
- * @deprecated Identity peerId IS the EVM address. Use `'0x' + identity.peerId` or `identity.wallet.address`.
9
- */
10
- export function identityToEvmAddress(identity) {
11
- return identity.wallet.address;
12
- }
13
- //# sourceMappingURL=keypair.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"keypair.js","sourceRoot":"","sources":["../../../src/payments/evm/keypair.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,QAAkB;IACpD,OAAO,QAAQ,CAAC,MAAM,CAAC;AACzB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,QAAkB;IACrD,OAAO,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC;AACjC,CAAC"}
@@ -1,30 +0,0 @@
1
- import { type AbstractSigner } from 'ethers';
2
- import { BaseEvmClient } from './base-evm-client.js';
3
- export interface SessionsClientConfig {
4
- rpcUrl: string;
5
- contractAddress: string;
6
- }
7
- export interface SessionInfo {
8
- buyer: string;
9
- seller: string;
10
- deposit: bigint;
11
- settled: bigint;
12
- metadataHash: string;
13
- deadline: bigint;
14
- settledAt: bigint;
15
- closeRequestedAt: bigint;
16
- status: number;
17
- }
18
- export declare class SessionsClient extends BaseEvmClient {
19
- constructor(config: SessionsClientConfig);
20
- reserve(signer: AbstractSigner, buyer: string, salt: string, maxAmount: bigint, deadline: bigint, buyerSig: string): Promise<string>;
21
- settle(signer: AbstractSigner, channelId: string, cumulativeAmount: bigint, metadata: string, buyerSig: string): Promise<string>;
22
- close(signer: AbstractSigner, channelId: string, finalAmount: bigint, metadata: string, buyerSig: string): Promise<string>;
23
- requestTimeout(signer: AbstractSigner, channelId: string): Promise<string>;
24
- withdraw(signer: AbstractSigner, channelId: string): Promise<string>;
25
- getSession(channelId: string): Promise<SessionInfo>;
26
- domainSeparator(): Promise<string>;
27
- getFirstSignCap(): Promise<bigint>;
28
- computeChannelId(buyer: string, seller: string, salt: string): Promise<string>;
29
- }
30
- //# sourceMappingURL=sessions-client.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sessions-client.d.ts","sourceRoot":"","sources":["../../../src/payments/evm/sessions-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAY,MAAM,QAAQ,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;CAChB;AAcD,qBAAa,cAAe,SAAQ,aAAa;gBACnC,MAAM,EAAE,oBAAoB;IAIlC,OAAO,CACX,MAAM,EAAE,cAAc,EACtB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC;IAOZ,MAAM,CACV,MAAM,EAAE,cAAc,EACtB,SAAS,EAAE,MAAM,EACjB,gBAAgB,EAAE,MAAM,EACxB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC;IAOZ,KAAK,CACT,MAAM,EAAE,cAAc,EACtB,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC;IAOZ,cAAc,CAAC,MAAM,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAI1E,QAAQ,CAAC,MAAM,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAIpE,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAgBnD,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC;IAKlC,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC;IAKlC,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAIrF"}
@@ -1,61 +0,0 @@
1
- import { Contract } from 'ethers';
2
- import { BaseEvmClient } from './base-evm-client.js';
3
- const SESSIONS_ABI = [
4
- 'function reserve(address buyer, bytes32 salt, uint128 maxAmount, uint256 deadline, bytes buyerSig) external',
5
- 'function settle(bytes32 channelId, uint128 cumulativeAmount, bytes metadata, bytes buyerSig) external',
6
- 'function close(bytes32 channelId, uint128 finalAmount, bytes metadata, bytes buyerSig) external',
7
- 'function requestTimeout(bytes32 channelId) external',
8
- 'function withdraw(bytes32 channelId) external',
9
- 'function sessions(bytes32 channelId) external view returns (address buyer, address seller, uint128 deposit, uint128 settled, bytes32 metadataHash, uint256 deadline, uint256 settledAt, uint256 closeRequestedAt, uint8 status)',
10
- 'function computeChannelId(address buyer, address seller, bytes32 salt) external pure returns (bytes32)',
11
- 'function domainSeparator() external view returns (bytes32)',
12
- 'function FIRST_SIGN_CAP() external view returns (uint256)',
13
- ];
14
- export class SessionsClient extends BaseEvmClient {
15
- constructor(config) {
16
- super(config.rpcUrl, config.contractAddress);
17
- }
18
- async reserve(signer, buyer, salt, maxAmount, deadline, buyerSig) {
19
- return this._execWrite(signer, SESSIONS_ABI, 'reserve', buyer, salt, maxAmount, deadline, buyerSig);
20
- }
21
- async settle(signer, channelId, cumulativeAmount, metadata, buyerSig) {
22
- return this._execWrite(signer, SESSIONS_ABI, 'settle', channelId, cumulativeAmount, metadata, buyerSig);
23
- }
24
- async close(signer, channelId, finalAmount, metadata, buyerSig) {
25
- return this._execWrite(signer, SESSIONS_ABI, 'close', channelId, finalAmount, metadata, buyerSig);
26
- }
27
- async requestTimeout(signer, channelId) {
28
- return this._execWrite(signer, SESSIONS_ABI, 'requestTimeout', channelId);
29
- }
30
- async withdraw(signer, channelId) {
31
- return this._execWrite(signer, SESSIONS_ABI, 'withdraw', channelId);
32
- }
33
- async getSession(channelId) {
34
- const contract = new Contract(this._contractAddress, SESSIONS_ABI, this._provider);
35
- const result = await contract.getFunction('sessions')(channelId);
36
- return {
37
- buyer: result[0],
38
- seller: result[1],
39
- deposit: result[2],
40
- settled: result[3],
41
- metadataHash: result[4],
42
- deadline: result[5],
43
- settledAt: result[6],
44
- closeRequestedAt: result[7],
45
- status: Number(result[8]),
46
- };
47
- }
48
- async domainSeparator() {
49
- const contract = new Contract(this._contractAddress, SESSIONS_ABI, this._provider);
50
- return contract.getFunction('domainSeparator')();
51
- }
52
- async getFirstSignCap() {
53
- const contract = new Contract(this._contractAddress, SESSIONS_ABI, this._provider);
54
- return contract.getFunction('FIRST_SIGN_CAP')();
55
- }
56
- async computeChannelId(buyer, seller, salt) {
57
- const contract = new Contract(this._contractAddress, SESSIONS_ABI, this._provider);
58
- return contract.getFunction('computeChannelId')(buyer, seller, salt);
59
- }
60
- }
61
- //# sourceMappingURL=sessions-client.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sessions-client.js","sourceRoot":"","sources":["../../../src/payments/evm/sessions-client.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- import type { Identity } from '../../p2p/identity.js';
2
- import type { WalletInfo, ChainId } from '../types.js';
3
- export declare function getWalletInfo(identity: Identity, rpcUrl: string, usdcAddress: string, chainId: ChainId): Promise<WalletInfo>;
4
- export declare function getAddress(identity: Identity): string;
5
- //# sourceMappingURL=wallet.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../../../src/payments/evm/wallet.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAOvD,wBAAsB,aAAa,CACjC,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,UAAU,CAAC,CAuBrB;AAED,wBAAgB,UAAU,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,CAErD"}
@@ -1,31 +0,0 @@
1
- import { JsonRpcProvider, Contract, formatEther, formatUnits } from 'ethers';
2
- import { identityToEvmWallet, identityToEvmAddress } from './keypair.js';
3
- const ERC20_BALANCE_ABI = [
4
- 'function balanceOf(address owner) external view returns (uint256)',
5
- ];
6
- export async function getWalletInfo(identity, rpcUrl, usdcAddress, chainId) {
7
- const wallet = identityToEvmWallet(identity);
8
- const provider = new JsonRpcProvider(rpcUrl);
9
- const address = wallet.address;
10
- const ethBalance = await provider.getBalance(address);
11
- const balanceETH = formatEther(ethBalance);
12
- const usdc = new Contract(usdcAddress, ERC20_BALANCE_ABI, provider);
13
- let balanceUSDC = '0';
14
- try {
15
- const usdcRaw = await usdc.getFunction('balanceOf')(address);
16
- balanceUSDC = formatUnits(usdcRaw, 6);
17
- }
18
- catch {
19
- // Contract may not exist on local dev chain yet
20
- }
21
- return {
22
- address,
23
- chainId,
24
- balanceETH,
25
- balanceUSDC,
26
- };
27
- }
28
- export function getAddress(identity) {
29
- return identityToEvmAddress(identity);
30
- }
31
- //# sourceMappingURL=wallet.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"wallet.js","sourceRoot":"","sources":["../../../src/payments/evm/wallet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAG7E,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAEzE,MAAM,iBAAiB,GAAG;IACxB,mEAAmE;CAC3D,CAAC;AAEX,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,QAAkB,EAClB,MAAc,EACd,WAAmB,EACnB,OAAgB;IAEhB,MAAM,MAAM,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IAC7C,MAAM,QAAQ,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,CAAC;IAC7C,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;IAE/B,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IACtD,MAAM,UAAU,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC;IAE3C,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,WAAW,EAAE,iBAAiB,EAAE,QAAQ,CAAC,CAAC;IACpE,IAAI,WAAW,GAAG,GAAG,CAAC;IACtB,IAAI,CAAC;QACH,MAAM,OAAO,GAAW,MAAM,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,CAAC;QACrE,WAAW,GAAG,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACxC,CAAC;IAAC,MAAM,CAAC;QACP,gDAAgD;IAClD,CAAC;IAED,OAAO;QACL,OAAO;QACP,OAAO;QACP,UAAU;QACV,WAAW;KACZ,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,QAAkB;IAC3C,OAAO,oBAAoB,CAAC,QAAQ,CAAC,CAAC;AACxC,CAAC"}
@@ -1,68 +0,0 @@
1
- export declare const SESSION_STATUS: {
2
- readonly ACTIVE: "active";
3
- readonly SETTLED: "settled";
4
- readonly TIMEOUT: "timeout";
5
- readonly GHOST: "ghost";
6
- };
7
- export interface StoredSession {
8
- sessionId: string;
9
- peerId: string;
10
- role: 'buyer' | 'seller';
11
- sellerEvmAddr: string;
12
- buyerEvmAddr: string;
13
- nonce: number;
14
- authMax: string;
15
- deadline: number;
16
- previousSessionId: string;
17
- previousConsumption: string;
18
- tokensDelivered: string;
19
- requestCount: number;
20
- reservedAt: number;
21
- settledAt: number | null;
22
- settledAmount: string | null;
23
- status: 'active' | 'settled' | 'timeout' | 'ghost';
24
- latestBuyerSig: string | null;
25
- latestSpendingAuthSig: string | null;
26
- latestMetadata: string | null;
27
- createdAt: number;
28
- updatedAt: number;
29
- }
30
- export interface StoredReceipt {
31
- id?: number;
32
- sessionId: string;
33
- runningTotal: string;
34
- requestCount: number;
35
- responseHash: string;
36
- sellerSig: string;
37
- buyerAckSig: string | null;
38
- createdAt: number;
39
- }
40
- export declare class SessionStore {
41
- private _db;
42
- /** Cached transaction function for updateDeliveredAndInsertReceipt (compiled once). */
43
- private readonly _updateDeliveredAndInsertReceiptTxn;
44
- private readonly _stmts;
45
- constructor(dataDir: string);
46
- private _createTables;
47
- private _prepareStatements;
48
- upsertSession(session: StoredSession): void;
49
- getSession(sessionId: string): StoredSession | null;
50
- getActiveSessionByPeer(peerId: string, role: string): StoredSession | null;
51
- getLatestSession(peerId: string, role: string): StoredSession | null;
52
- updateSessionStatus(sessionId: string, status: string, settledAmount?: string): void;
53
- updateTokensDelivered(sessionId: string, tokens: string, requestCount: number): void;
54
- getMaxNonce(role: string): number;
55
- /** List all sessions ordered by most recent first. */
56
- listAllSessions(limit?: number): StoredSession[];
57
- /** Get all active sessions for a given role (buyer or seller). */
58
- getActiveSessions(role: string): StoredSession[];
59
- getTimedOutSessions(timeoutSeconds: number): StoredSession[];
60
- insertReceipt(receipt: Omit<StoredReceipt, 'id'>): void;
61
- getReceipts(sessionId: string): StoredReceipt[];
62
- /** Atomically update tokens delivered and insert receipt in a single transaction. */
63
- updateDeliveredAndInsertReceipt(sessionId: string, tokens: string, requestCount: number, receipt: Omit<StoredReceipt, 'id'>): void;
64
- /** Update receipt ack directly by composite key (no load-all-then-filter). */
65
- updateReceiptAck(sessionId: string, runningTotal: string, requestCount: number, buyerAckSig: string): void;
66
- close(): void;
67
- }
68
- //# sourceMappingURL=session-store.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"session-store.d.ts","sourceRoot":"","sources":["../../src/payments/session-store.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,cAAc;;;;;CAKjB,CAAC;AAEX,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,OAAO,GAAG,QAAQ,CAAC;IACzB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,MAAM,EAAE,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC;IACnD,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,GAAG,CAAoB;IAG/B,uFAAuF;IACvF,OAAO,CAAC,QAAQ,CAAC,mCAAmC,CAK1C;IAEV,OAAO,CAAC,QAAQ,CAAC,MAAM,CAerB;gBAEU,OAAO,EAAE,MAAM;IAc3B,OAAO,CAAC,aAAa;IA6DrB,OAAO,CAAC,kBAAkB;IA8E1B,aAAa,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IA0B3C,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI;IAKnD,sBAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI;IAK1E,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI;IAKpE,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI;IASpF,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI;IAIpF,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAKjC,sDAAsD;IACtD,eAAe,CAAC,KAAK,SAAM,GAAG,aAAa,EAAE;IAK7C,kEAAkE;IAClE,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,EAAE;IAOhD,mBAAmB,CAAC,cAAc,EAAE,MAAM,GAAG,aAAa,EAAE;IAQ5D,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,GAAG,IAAI;IAYvD,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,aAAa,EAAE;IAK/C,qFAAqF;IACrF,+BAA+B,CAC7B,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,GACjC,IAAI;IAIP,8EAA8E;IAC9E,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI;IAM1G,KAAK,IAAI,IAAI;CAGd"}