@sequence0/sdk 1.0.0 → 1.0.2
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/README.md +36 -6
- package/dist/chains/bitcoin.d.ts +15 -3
- package/dist/chains/bitcoin.d.ts.map +1 -1
- package/dist/chains/bitcoin.js +23 -3
- package/dist/chains/bitcoin.js.map +1 -1
- package/dist/chains/ethereum.d.ts +3 -0
- package/dist/chains/ethereum.d.ts.map +1 -1
- package/dist/chains/ethereum.js +108 -16
- package/dist/chains/ethereum.js.map +1 -1
- package/dist/core/client.d.ts +129 -5
- package/dist/core/client.d.ts.map +1 -1
- package/dist/core/client.js +497 -44
- package/dist/core/client.js.map +1 -1
- package/dist/core/types.d.ts +46 -3
- package/dist/core/types.d.ts.map +1 -1
- package/dist/index.d.ts +11 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +31 -1
- package/dist/index.js.map +1 -1
- package/dist/utils/discovery.d.ts +28 -1
- package/dist/utils/discovery.d.ts.map +1 -1
- package/dist/utils/discovery.js +76 -10
- package/dist/utils/discovery.js.map +1 -1
- package/dist/utils/errors.d.ts +26 -0
- package/dist/utils/errors.d.ts.map +1 -1
- package/dist/utils/errors.js +32 -1
- package/dist/utils/errors.js.map +1 -1
- package/dist/utils/fee.d.ts +107 -0
- package/dist/utils/fee.d.ts.map +1 -0
- package/dist/utils/fee.js +220 -0
- package/dist/utils/fee.js.map +1 -0
- package/dist/utils/http.d.ts +97 -1
- package/dist/utils/http.d.ts.map +1 -1
- package/dist/utils/http.js +238 -6
- package/dist/utils/http.js.map +1 -1
- package/dist/utils/logger.d.ts +43 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +129 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/rate-limiter.d.ts +43 -0
- package/dist/utils/rate-limiter.d.ts.map +1 -0
- package/dist/utils/rate-limiter.js +99 -0
- package/dist/utils/rate-limiter.js.map +1 -0
- package/dist/utils/validation.d.ts +74 -0
- package/dist/utils/validation.d.ts.map +1 -0
- package/dist/utils/validation.js +380 -0
- package/dist/utils/validation.js.map +1 -0
- package/dist/wallet/wallet.d.ts +12 -1
- package/dist/wallet/wallet.d.ts.map +1 -1
- package/dist/wallet/wallet.js +76 -11
- package/dist/wallet/wallet.js.map +1 -1
- package/package.json +8 -2
package/dist/wallet/wallet.js
CHANGED
|
@@ -25,6 +25,9 @@
|
|
|
25
25
|
*/
|
|
26
26
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
27
27
|
exports.Wallet = void 0;
|
|
28
|
+
const ethers_1 = require("ethers");
|
|
29
|
+
// ethers v6 ships without .d.ts — TypedDataEncoder is exported but not typed
|
|
30
|
+
const { TypedDataEncoder } = require('ethers');
|
|
28
31
|
const http_1 = require("../utils/http");
|
|
29
32
|
const websocket_1 = require("../utils/websocket");
|
|
30
33
|
const errors_1 = require("../utils/errors");
|
|
@@ -40,6 +43,7 @@ class Wallet {
|
|
|
40
43
|
this.curve = config.curve;
|
|
41
44
|
this.network = config.network;
|
|
42
45
|
this.agentUrl = config.agentUrl;
|
|
46
|
+
this.ownerSigner = config.ownerSigner || null;
|
|
43
47
|
this.http = new http_1.HttpClient({ baseUrl: config.agentUrl });
|
|
44
48
|
this.adapter = this.createAdapter(config.chain, config.rpcUrl);
|
|
45
49
|
}
|
|
@@ -102,6 +106,12 @@ class Wallet {
|
|
|
102
106
|
* ```
|
|
103
107
|
*/
|
|
104
108
|
async sendTransaction(transaction) {
|
|
109
|
+
// Guard: Bitcoin-family chains don't have full TX serialization yet
|
|
110
|
+
if (this.chain === 'bitcoin' || this.chain === 'dogecoin' || this.chain === 'litecoin') {
|
|
111
|
+
throw new errors_1.ChainError(`sendTransaction() is not yet supported for ${this.chain}. ` +
|
|
112
|
+
`Use sign() to get a Schnorr signature, then construct and broadcast ` +
|
|
113
|
+
`the raw transaction externally using bitcoinjs-lib.`, this.chain);
|
|
114
|
+
}
|
|
105
115
|
const signed = await this.sign(transaction);
|
|
106
116
|
return this.broadcast(signed);
|
|
107
117
|
}
|
|
@@ -160,9 +170,13 @@ class Wallet {
|
|
|
160
170
|
if (!this.isEvmChain()) {
|
|
161
171
|
throw new errors_1.Sequence0Error('signTypedData is only supported on EVM chains');
|
|
162
172
|
}
|
|
163
|
-
//
|
|
164
|
-
|
|
165
|
-
|
|
173
|
+
// Compute proper EIP-712 hash using ethers TypedDataEncoder:
|
|
174
|
+
// hash = keccak256( \x19\x01 + domainSeparator + hashStruct(primaryType, message) )
|
|
175
|
+
// Strip the EIP712Domain entry from types (ethers handles it from the domain object)
|
|
176
|
+
const { EIP712Domain: _, ...typesWithoutDomain } = typedData.types;
|
|
177
|
+
const messageHash = TypedDataEncoder.hash(typedData.domain, typesWithoutDomain, typedData.message);
|
|
178
|
+
// messageHash is already 0x-prefixed keccak256 hex — convert to raw hex for signing
|
|
179
|
+
const messageHex = messageHash.startsWith('0x') ? messageHash.slice(2) : messageHash;
|
|
166
180
|
return this.requestAndWaitSignature(messageHex);
|
|
167
181
|
}
|
|
168
182
|
// ────────────────────────────────────────────────
|
|
@@ -196,11 +210,18 @@ class Wallet {
|
|
|
196
210
|
* Submit a message for FROST signing and wait for the result
|
|
197
211
|
*/
|
|
198
212
|
async requestAndWaitSignature(messageHex, timeoutMs = 30000) {
|
|
199
|
-
//
|
|
200
|
-
const
|
|
213
|
+
// Build the POST body, optionally including ownership proof
|
|
214
|
+
const body = {
|
|
201
215
|
wallet_id: this.walletId,
|
|
202
216
|
message: messageHex,
|
|
203
|
-
}
|
|
217
|
+
};
|
|
218
|
+
const proof = await this.signOwnershipProof(messageHex);
|
|
219
|
+
if (proof) {
|
|
220
|
+
body.owner_signature = proof.owner_signature;
|
|
221
|
+
body.timestamp = proof.timestamp;
|
|
222
|
+
}
|
|
223
|
+
// Submit signing request
|
|
224
|
+
const response = await this.http.post('/sign', body);
|
|
204
225
|
const requestId = response.request_id;
|
|
205
226
|
// Try WebSocket first for instant notification
|
|
206
227
|
try {
|
|
@@ -229,15 +250,53 @@ class Wallet {
|
|
|
229
250
|
}
|
|
230
251
|
throw new errors_1.TimeoutError(`Signing timed out after ${timeoutMs}ms (request: ${requestId})`);
|
|
231
252
|
}
|
|
253
|
+
/**
|
|
254
|
+
* Build an ownership proof for a sign request.
|
|
255
|
+
*
|
|
256
|
+
* The proof is: sign( keccak256( wallet_id_bytes + message_hex_bytes + timestamp_be_bytes ) )
|
|
257
|
+
*
|
|
258
|
+
* Returns null when no ownerSigner is configured (backwards compatible).
|
|
259
|
+
*/
|
|
260
|
+
async signOwnershipProof(messageHex) {
|
|
261
|
+
if (!this.ownerSigner)
|
|
262
|
+
return null;
|
|
263
|
+
const timestamp = Math.floor(Date.now() / 1000);
|
|
264
|
+
// wallet_id as UTF-8 bytes
|
|
265
|
+
const walletIdBytes = new TextEncoder().encode(this.walletId);
|
|
266
|
+
// message as UTF-8 string bytes (must match Rust: message.as_bytes())
|
|
267
|
+
const messageBytes = new TextEncoder().encode(messageHex);
|
|
268
|
+
// timestamp as 8-byte big-endian
|
|
269
|
+
const timestampBytes = new Uint8Array(8);
|
|
270
|
+
const view = new DataView(timestampBytes.buffer);
|
|
271
|
+
view.setBigUint64(0, BigInt(timestamp), false);
|
|
272
|
+
// Concatenate and hash: keccak256(walletId + message + timestamp)
|
|
273
|
+
const payload = (0, ethers_1.concat)([walletIdBytes, messageBytes, timestampBytes]);
|
|
274
|
+
const digest = (0, ethers_1.getBytes)((0, ethers_1.keccak256)(payload));
|
|
275
|
+
// Sign the digest
|
|
276
|
+
const signature = await this.ownerSigner(digest);
|
|
277
|
+
return {
|
|
278
|
+
owner_signature: signature.startsWith('0x') ? signature : '0x' + signature,
|
|
279
|
+
timestamp,
|
|
280
|
+
};
|
|
281
|
+
}
|
|
232
282
|
createAdapter(chain, rpcUrl) {
|
|
233
|
-
if (chain === 'bitcoin') {
|
|
283
|
+
if (chain === 'bitcoin' || chain === 'dogecoin' || chain === 'litecoin') {
|
|
234
284
|
return new bitcoin_1.BitcoinAdapter(this.network === 'testnet' ? 'testnet' : 'mainnet');
|
|
235
285
|
}
|
|
236
286
|
if (chain === 'solana') {
|
|
237
287
|
return new solana_1.SolanaAdapter(this.network === 'testnet' ? 'devnet' : 'mainnet', rpcUrl);
|
|
238
288
|
}
|
|
239
|
-
//
|
|
240
|
-
|
|
289
|
+
// EVM-compatible chains
|
|
290
|
+
if (this.isEvmChain() || chain === 'tron') {
|
|
291
|
+
return new ethereum_1.EthereumAdapter(chain, rpcUrl);
|
|
292
|
+
}
|
|
293
|
+
// Non-EVM chains without full adapter support.
|
|
294
|
+
// Wallet creation and raw message signing work (agent node is chain-agnostic),
|
|
295
|
+
// but sendTransaction() requires a chain-specific adapter.
|
|
296
|
+
// Users can still call sign() directly with pre-built transaction bytes.
|
|
297
|
+
throw new errors_1.ChainError(`Chain '${chain}' does not have a transaction adapter yet. ` +
|
|
298
|
+
`You can still use sign() and signMessage() for raw byte signing. ` +
|
|
299
|
+
`For sendTransaction(), provide a custom RPC URL and use sign() to get the signed transaction.`);
|
|
241
300
|
}
|
|
242
301
|
isEvmChain() {
|
|
243
302
|
return Wallet.EVM_CHAINS.includes(this.chain);
|
|
@@ -245,10 +304,16 @@ class Wallet {
|
|
|
245
304
|
}
|
|
246
305
|
exports.Wallet = Wallet;
|
|
247
306
|
Wallet.EVM_CHAINS = [
|
|
307
|
+
// Layer 1s
|
|
248
308
|
'ethereum', 'polygon', 'bsc', 'avalanche', 'fantom', 'gnosis',
|
|
249
|
-
'celo', 'cronos', 'moonbeam', '
|
|
309
|
+
'celo', 'cronos', 'moonbeam', 'moonriver', 'harmony', 'kava',
|
|
310
|
+
'canto', 'aurora', 'klaytn', 'okc', 'fuse', 'evmos', 'core',
|
|
311
|
+
'flare', 'iotex', 'rootstock', 'telos', 'thundercore',
|
|
312
|
+
// Layer 2s
|
|
250
313
|
'arbitrum', 'optimism', 'base', 'zksync', 'scroll', 'linea',
|
|
251
314
|
'mantle', 'blast', 'mode', 'manta', 'polygon-zkevm', 'metis',
|
|
252
|
-
'zora', 'sei',
|
|
315
|
+
'zora', 'sei', 'boba', 'taiko', 'opbnb', 'fraxtal', 'worldchain',
|
|
316
|
+
'lisk', 'redstone', 'cyber', 'mint', 'bob', 'xai', 'morph',
|
|
317
|
+
'astar-zkevm',
|
|
253
318
|
];
|
|
254
319
|
//# sourceMappingURL=wallet.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wallet.js","sourceRoot":"","sources":["../../src/wallet/wallet.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;;;
|
|
1
|
+
{"version":3,"file":"wallet.js","sourceRoot":"","sources":["../../src/wallet/wallet.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;;;AAcH,mCAAqD;AACrD,6EAA6E;AAC7E,MAAM,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAC,QAAQ,CAE1C,CAAC;AACJ,wCAA2C;AAC3C,kDAA8C;AAC9C,4CAAyF;AACzF,iDAAqD;AACrD,+CAAmD;AACnD,6CAAiD;AAejD,MAAa,MAAM;IAkBf,YAAY,MAAoB;QAC5B,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;QAChC,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAC9B,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QAClC,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAC9B,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;QAChC,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,IAAI,IAAI,CAAC;QAE9C,IAAI,CAAC,IAAI,GAAG,IAAI,iBAAU,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;QACzD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;IACnE,CAAC;IAED,mDAAmD;IACnD,uBAAuB;IACvB,mDAAmD;IAEnD;;;;;;;;;;;;;;;OAeG;IACH,KAAK,CAAC,IAAI,CAAC,WAA6D;QACpE,4DAA4D;QAC5D,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAElF,+CAA+C;QAC/C,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAC;QAEjE,yCAAyC;QACzC,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;QAEjF,gCAAgC;QAChC,MAAM,GAAG,GAAG,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAExE,OAAO;YACH,cAAc;YACd,IAAI,EAAE,EAAE,EAAE,8BAA8B;YACxC,SAAS,EAAE;gBACP,CAAC,EAAE,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;gBAC1B,CAAC,EAAE,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,CAAC;gBAC5B,CAAC,EAAE,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS;aACvE;SACJ,CAAC;IACN,CAAC;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IACH,KAAK,CAAC,eAAe,CAAC,WAA6D;QAC/E,oEAAoE;QACpE,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,KAAK,KAAK,UAAU,IAAI,IAAI,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;YACrF,MAAM,IAAI,mBAAU,CAChB,8CAA8C,IAAI,CAAC,KAAK,IAAI;gBAC5D,sEAAsE;gBACtE,qDAAqD,EACrD,IAAI,CAAC,KAAK,CACb,CAAC;QACN,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC5C,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,SAAS,CAAC,QAA2B;QACvC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;QACnE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;QACrB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,mDAAmD;IACnD,mBAAmB;IACnB,mDAAmD;IAEnD;;;;;;;;OAQG;IACH,KAAK,CAAC,WAAW,CAAC,OAAe;QAC7B,gCAAgC;QAChC,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAChC,IAAI,aAAqB,CAAC;QAE1B,IAAI,KAAK,EAAE,CAAC;YACR,MAAM,MAAM,GAAG,iCAAiC,OAAO,CAAC,MAAM,EAAE,CAAC;YACjE,MAAM,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;YAClC,sBAAsB;YACtB,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;YAClC,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACvC,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACvD,CAAC;aAAM,CAAC;YACJ,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACzD,CAAC;QAED,OAAO,IAAI,CAAC,uBAAuB,CAAC,aAAa,CAAC,CAAC;IACvD,CAAC;IAED;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,aAAa,CAAC,SAKnB;QACG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC;YACrB,MAAM,IAAI,uBAAc,CAAC,+CAA+C,CAAC,CAAC;QAC9E,CAAC;QAED,6DAA6D;QAC7D,oFAAoF;QACpF,qFAAqF;QACrF,MAAM,EAAE,YAAY,EAAE,CAAC,EAAE,GAAG,kBAAkB,EAAE,GAAG,SAAS,CAAC,KAAK,CAAC;QACnE,MAAM,WAAW,GAAG,gBAAgB,CAAC,IAAI,CACrC,SAAS,CAAC,MAAM,EAChB,kBAAkB,EAClB,SAAS,CAAC,OAAO,CACpB,CAAC;QACF,oFAAoF;QACpF,MAAM,UAAU,GAAG,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;QAErF,OAAO,IAAI,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAC;IACpD,CAAC;IAED,mDAAmD;IACnD,kBAAkB;IAClB,mDAAmD;IAEnD;;;;OAIG;IACH,KAAK,CAAC,UAAU;QACZ,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACjD,CAAC;IAED;;OAEG;IACH,IAAI;QACA,OAAO;YACH,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,SAAS,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE;YACvD,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,OAAO,EAAE,IAAI,CAAC,OAAO;SACxB,CAAC;IACN,CAAC;IAED,mDAAmD;IACnD,aAAa;IACb,mDAAmD;IAEnD;;OAEG;IACK,KAAK,CAAC,uBAAuB,CACjC,UAAkB,EAClB,SAAS,GAAG,KAAM;QAElB,4DAA4D;QAC5D,MAAM,IAAI,GAA4B;YAClC,SAAS,EAAE,IAAI,CAAC,QAAQ;YACxB,OAAO,EAAE,UAAU;SACtB,CAAC;QAEF,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;QACxD,IAAI,KAAK,EAAE,CAAC;YACR,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC,eAAe,CAAC;YAC7C,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;QACrC,CAAC;QAED,yBAAyB;QACzB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAe,OAAO,EAAE,IAAI,CAAC,CAAC;QAEnE,MAAM,SAAS,GAAG,QAAQ,CAAC,UAAU,CAAC;QAEtC,+CAA+C;QAC/C,IAAI,CAAC;YACD,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,KAAK,CAAC;YAC3D,MAAM,EAAE,GAAG,IAAI,oBAAQ,CAAC;gBACpB,GAAG,EAAE,KAAK;gBACV,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,aAAa,EAAE,KAAK;aACvB,CAAC,CAAC;YACH,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC;YAEnB,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,OAAO,CAC3B,iBAAiB,EACjB,CAAC,CAAC,EAAE,EAAE,CAAE,CAAS,CAAC,UAAU,KAAK,SAAS,EAC1C,SAAS,CACZ,CAAC;YACF,EAAE,CAAC,UAAU,EAAE,CAAC;YAChB,OAAQ,MAAc,CAAC,SAAS,CAAC;QACrC,CAAC;QAAC,MAAM,CAAC;YACL,yCAAyC;QAC7C,CAAC;QAED,mBAAmB;QACnB,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;QACxC,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;YAC3B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAqB,SAAS,SAAS,EAAE,CAAC,CAAC;YAC7E,IAAI,MAAM,CAAC,MAAM,KAAK,UAAU,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;gBACnD,OAAO,MAAM,CAAC,SAAS,CAAC;YAC5B,CAAC;YACD,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;QACjD,CAAC;QAED,MAAM,IAAI,qBAAY,CAClB,2BAA2B,SAAS,gBAAgB,SAAS,GAAG,CACnE,CAAC;IACN,CAAC;IAED;;;;;;OAMG;IACK,KAAK,CAAC,kBAAkB,CAC5B,UAAkB;QAElB,IAAI,CAAC,IAAI,CAAC,WAAW;YAAE,OAAO,IAAI,CAAC;QAEnC,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QAEhD,2BAA2B;QAC3B,MAAM,aAAa,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAE9D,sEAAsE;QACtE,MAAM,YAAY,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAE1D,iCAAiC;QACjC,MAAM,cAAc,GAAG,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC;QACzC,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QACjD,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC,CAAC;QAE/C,kEAAkE;QAClE,MAAM,OAAO,GAAG,IAAA,eAAM,EAAC,CAAC,aAAa,EAAE,YAAY,EAAE,cAAc,CAAC,CAAC,CAAC;QACtE,MAAM,MAAM,GAAG,IAAA,iBAAQ,EAAC,IAAA,kBAAS,EAAC,OAAO,CAAC,CAAC,CAAC;QAE5C,kBAAkB;QAClB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAEjD,OAAO;YACH,eAAe,EAAE,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,GAAG,SAAS;YAC1E,SAAS;SACZ,CAAC;IACN,CAAC;IAEO,aAAa,CAAC,KAAY,EAAE,MAAe;QAC/C,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,UAAU,IAAI,KAAK,KAAK,UAAU,EAAE,CAAC;YACtE,OAAO,IAAI,wBAAc,CACrB,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CACrD,CAAC;QACN,CAAC;QACD,IAAI,KAAK,KAAK,QAAQ,EAAE,CAAC;YACrB,OAAO,IAAI,sBAAa,CACpB,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,EACjD,MAAM,CACT,CAAC;QACN,CAAC;QACD,wBAAwB;QACxB,IAAI,IAAI,CAAC,UAAU,EAAE,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;YACxC,OAAO,IAAI,0BAAe,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAC9C,CAAC;QACD,+CAA+C;QAC/C,+EAA+E;QAC/E,2DAA2D;QAC3D,yEAAyE;QACzE,MAAM,IAAI,mBAAU,CAChB,UAAU,KAAK,6CAA6C;YAC5D,mEAAmE;YACnE,+FAA+F,CAClG,CAAC;IACN,CAAC;IAgBO,UAAU;QACd,OAAO,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClD,CAAC;;AA1WL,wBA2WC;AAjB2B,iBAAU,GAAa;IAC3C,WAAW;IACX,UAAU,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ;IAC7D,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM;IAC5D,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;IAC3D,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa;IACrD,WAAW;IACX,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO;IAC3D,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,OAAO;IAC5D,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,YAAY;IAChE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO;IAC1D,aAAa;CAChB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sequence0/sdk",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.2",
|
|
4
4
|
"description": "Sequence0 Network SDK — Decentralized threshold signatures for any blockchain",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -12,9 +12,14 @@
|
|
|
12
12
|
"build": "tsc",
|
|
13
13
|
"clean": "rm -rf dist",
|
|
14
14
|
"prepublishOnly": "npm run clean && npm run build",
|
|
15
|
-
"test": "jest",
|
|
15
|
+
"test": "jest --forceExit",
|
|
16
|
+
"test:watch": "jest --watch --forceExit",
|
|
17
|
+
"test:coverage": "jest --coverage --forceExit",
|
|
16
18
|
"lint": "eslint src/**/*.ts"
|
|
17
19
|
},
|
|
20
|
+
"engines": {
|
|
21
|
+
"node": ">=18.0.0"
|
|
22
|
+
},
|
|
18
23
|
"keywords": [
|
|
19
24
|
"sequence0",
|
|
20
25
|
"threshold-signatures",
|
|
@@ -39,6 +44,7 @@
|
|
|
39
44
|
"ethers": "^6.0.0"
|
|
40
45
|
},
|
|
41
46
|
"devDependencies": {
|
|
47
|
+
"@types/jest": "^29.0.0",
|
|
42
48
|
"@types/node": "^20.19.33",
|
|
43
49
|
"eslint": "^8.0.0",
|
|
44
50
|
"jest": "^29.0.0",
|