@sequence0/sdk 1.0.3 → 1.1.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 +137 -10
- package/dist/chains/bitcoin-taproot.d.ts +371 -0
- package/dist/chains/bitcoin-taproot.d.ts.map +1 -0
- package/dist/chains/bitcoin-taproot.js +1241 -0
- package/dist/chains/bitcoin-taproot.js.map +1 -0
- package/dist/chains/bitcoin.d.ts +12 -7
- package/dist/chains/bitcoin.d.ts.map +1 -1
- package/dist/chains/bitcoin.js +14 -9
- package/dist/chains/bitcoin.js.map +1 -1
- package/dist/core/client.d.ts +4 -5
- package/dist/core/client.d.ts.map +1 -1
- package/dist/core/client.js +54 -29
- package/dist/core/client.js.map +1 -1
- package/dist/erc4337/account.d.ts +241 -0
- package/dist/erc4337/account.d.ts.map +1 -0
- package/dist/erc4337/account.js +810 -0
- package/dist/erc4337/account.js.map +1 -0
- package/dist/erc4337/index.d.ts +9 -0
- package/dist/erc4337/index.d.ts.map +1 -0
- package/dist/erc4337/index.js +16 -0
- package/dist/erc4337/index.js.map +1 -0
- package/dist/erc4337/types.d.ts +173 -0
- package/dist/erc4337/types.d.ts.map +1 -0
- package/dist/erc4337/types.js +52 -0
- package/dist/erc4337/types.js.map +1 -0
- package/dist/index.d.ts +29 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +43 -2
- package/dist/index.js.map +1 -1
- package/dist/utils/discovery.d.ts.map +1 -1
- package/dist/utils/discovery.js +56 -1
- package/dist/utils/discovery.js.map +1 -1
- package/dist/utils/eip712.d.ts +36 -0
- package/dist/utils/eip712.d.ts.map +1 -0
- package/dist/utils/eip712.js +80 -0
- package/dist/utils/eip712.js.map +1 -0
- package/dist/utils/fee.d.ts +2 -2
- package/dist/utils/fee.js +2 -2
- package/dist/utils/validation.d.ts +8 -0
- package/dist/utils/validation.d.ts.map +1 -1
- package/dist/utils/validation.js +18 -0
- package/dist/utils/validation.js.map +1 -1
- package/dist/utils/websocket.js +1 -1
- package/dist/utils/websocket.js.map +1 -1
- package/dist/wallet/wallet.d.ts +23 -2
- package/dist/wallet/wallet.d.ts.map +1 -1
- package/dist/wallet/wallet.js +91 -31
- package/dist/wallet/wallet.js.map +1 -1
- package/package.json +8 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"account.js","sourceRoot":"","sources":["../../src/erc4337/account.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ERC-4337 Account Abstraction Module
|
|
3
|
+
*
|
|
4
|
+
* Smart accounts backed by FROST threshold signing.
|
|
5
|
+
*/
|
|
6
|
+
export { Sequence0Account } from './account';
|
|
7
|
+
export type { PackedUserOperation, UserOperationParams, AccountTransaction, Sequence0AccountOptions, BundlerResponse, UserOperationGasEstimate, UserOperationReceipt, } from './types';
|
|
8
|
+
export { ENTRYPOINT_V07_ADDRESS, FACTORY_ADDRESSES, DEFAULT_BUNDLER_URLS, CHAIN_IDS as AA_CHAIN_IDS, } from './types';
|
|
9
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/erc4337/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAE7C,YAAY,EACR,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,uBAAuB,EACvB,eAAe,EACf,wBAAwB,EACxB,oBAAoB,GACvB,MAAM,SAAS,CAAC;AAEjB,OAAO,EACH,sBAAsB,EACtB,iBAAiB,EACjB,oBAAoB,EACpB,SAAS,IAAI,YAAY,GAC5B,MAAM,SAAS,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* ERC-4337 Account Abstraction Module
|
|
4
|
+
*
|
|
5
|
+
* Smart accounts backed by FROST threshold signing.
|
|
6
|
+
*/
|
|
7
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
+
exports.AA_CHAIN_IDS = exports.DEFAULT_BUNDLER_URLS = exports.FACTORY_ADDRESSES = exports.ENTRYPOINT_V07_ADDRESS = exports.Sequence0Account = void 0;
|
|
9
|
+
var account_1 = require("./account");
|
|
10
|
+
Object.defineProperty(exports, "Sequence0Account", { enumerable: true, get: function () { return account_1.Sequence0Account; } });
|
|
11
|
+
var types_1 = require("./types");
|
|
12
|
+
Object.defineProperty(exports, "ENTRYPOINT_V07_ADDRESS", { enumerable: true, get: function () { return types_1.ENTRYPOINT_V07_ADDRESS; } });
|
|
13
|
+
Object.defineProperty(exports, "FACTORY_ADDRESSES", { enumerable: true, get: function () { return types_1.FACTORY_ADDRESSES; } });
|
|
14
|
+
Object.defineProperty(exports, "DEFAULT_BUNDLER_URLS", { enumerable: true, get: function () { return types_1.DEFAULT_BUNDLER_URLS; } });
|
|
15
|
+
Object.defineProperty(exports, "AA_CHAIN_IDS", { enumerable: true, get: function () { return types_1.CHAIN_IDS; } });
|
|
16
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/erc4337/index.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,qCAA6C;AAApC,2GAAA,gBAAgB,OAAA;AAYzB,iCAKiB;AAJb,+GAAA,sBAAsB,OAAA;AACtB,0GAAA,iBAAiB,OAAA;AACjB,6GAAA,oBAAoB,OAAA;AACpB,qGAAA,SAAS,OAAgB"}
|
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ERC-4337 Account Abstraction Types
|
|
3
|
+
*
|
|
4
|
+
* Type definitions for UserOperations, bundler interactions,
|
|
5
|
+
* and Sequence0 AA wallet configuration.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Packed UserOperation for ERC-4337 v0.7.
|
|
9
|
+
*
|
|
10
|
+
* This is the on-chain format submitted to the EntryPoint contract.
|
|
11
|
+
* Gas limits and fee parameters are packed into bytes32 fields.
|
|
12
|
+
*/
|
|
13
|
+
export interface PackedUserOperation {
|
|
14
|
+
/** Smart account address */
|
|
15
|
+
sender: string;
|
|
16
|
+
/** Anti-replay nonce (hex-encoded uint256) */
|
|
17
|
+
nonce: string;
|
|
18
|
+
/** Factory address + factoryData for first-time account deployment (hex, empty for existing accounts) */
|
|
19
|
+
initCode: string;
|
|
20
|
+
/** Encoded call to execute on the smart account (hex) */
|
|
21
|
+
callData: string;
|
|
22
|
+
/** Packed: verificationGasLimit (16 bytes) || callGasLimit (16 bytes) */
|
|
23
|
+
accountGasLimits: string;
|
|
24
|
+
/** Pre-verification gas (hex-encoded uint256) */
|
|
25
|
+
preVerificationGas: string;
|
|
26
|
+
/** Packed: maxPriorityFeePerGas (16 bytes) || maxFeePerGas (16 bytes) */
|
|
27
|
+
gasFees: string;
|
|
28
|
+
/** Paymaster address + verification/postOp gas + paymaster-specific data (hex) */
|
|
29
|
+
paymasterAndData: string;
|
|
30
|
+
/** FROST Schnorr signature or ECDSA signature (hex) */
|
|
31
|
+
signature: string;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Parameters for building a UserOperation.
|
|
35
|
+
*/
|
|
36
|
+
export interface UserOperationParams {
|
|
37
|
+
/** Smart account address */
|
|
38
|
+
sender: string;
|
|
39
|
+
/** Nonce (hex-encoded, auto-fetched if omitted) */
|
|
40
|
+
nonce?: string;
|
|
41
|
+
/** Encoded call to execute (hex) */
|
|
42
|
+
callData: string;
|
|
43
|
+
/** Gas limit for the main execution call */
|
|
44
|
+
callGasLimit?: number;
|
|
45
|
+
/** Gas limit for the verification step */
|
|
46
|
+
verificationGasLimit?: number;
|
|
47
|
+
/** Pre-verification gas (covers calldata cost + overhead) */
|
|
48
|
+
preVerificationGas?: number;
|
|
49
|
+
/** Maximum fee per gas (hex or number) */
|
|
50
|
+
maxFeePerGas?: string | number;
|
|
51
|
+
/** Maximum priority fee per gas (hex or number) */
|
|
52
|
+
maxPriorityFeePerGas?: string | number;
|
|
53
|
+
/** Init code for first-time account deployment (hex) */
|
|
54
|
+
initCode?: string;
|
|
55
|
+
/** Paymaster + paymaster data (hex) */
|
|
56
|
+
paymasterAndData?: string;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* A single call to execute via the smart account.
|
|
60
|
+
*/
|
|
61
|
+
export interface AccountTransaction {
|
|
62
|
+
/** Target contract address */
|
|
63
|
+
to: string;
|
|
64
|
+
/** ETH value to send (in wei) */
|
|
65
|
+
value?: bigint | string;
|
|
66
|
+
/** Calldata for the target contract (hex) */
|
|
67
|
+
data?: string;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Options for creating a new Sequence0 AA wallet.
|
|
71
|
+
*/
|
|
72
|
+
export interface Sequence0AccountOptions {
|
|
73
|
+
/** FROST threshold: minimum signers required */
|
|
74
|
+
threshold: number;
|
|
75
|
+
/** FROST committee size: total agents */
|
|
76
|
+
committeeSize: number;
|
|
77
|
+
/** Target EVM chain (e.g. 'ethereum', 'polygon', 'base') */
|
|
78
|
+
chain: string;
|
|
79
|
+
/** EntryPoint v0.7 contract address (defaults to canonical deployment) */
|
|
80
|
+
entryPoint?: string;
|
|
81
|
+
/** Sequence0AccountFactory contract address */
|
|
82
|
+
factory?: string;
|
|
83
|
+
/** Sequence0 SDK network ('mainnet' | 'testnet') */
|
|
84
|
+
network?: 'mainnet' | 'testnet';
|
|
85
|
+
/** Agent URL override (for testnet or direct connection) */
|
|
86
|
+
agentUrl?: string;
|
|
87
|
+
/** Owner private key for signing DKG and sign requests */
|
|
88
|
+
ownerPrivateKey?: string;
|
|
89
|
+
/** Custom RPC URL for the target EVM chain */
|
|
90
|
+
rpcUrl?: string;
|
|
91
|
+
/** Bundler RPC URL for submitting UserOperations */
|
|
92
|
+
bundlerUrl?: string;
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* JSON-RPC request to a bundler.
|
|
96
|
+
*/
|
|
97
|
+
export interface BundlerRequest {
|
|
98
|
+
jsonrpc: '2.0';
|
|
99
|
+
method: string;
|
|
100
|
+
params: unknown[];
|
|
101
|
+
id: number;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* JSON-RPC response from a bundler.
|
|
105
|
+
*/
|
|
106
|
+
export interface BundlerResponse<T = unknown> {
|
|
107
|
+
jsonrpc: '2.0';
|
|
108
|
+
result?: T;
|
|
109
|
+
error?: {
|
|
110
|
+
code: number;
|
|
111
|
+
message: string;
|
|
112
|
+
data?: unknown;
|
|
113
|
+
};
|
|
114
|
+
id: number;
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Gas estimate returned by eth_estimateUserOperationGas.
|
|
118
|
+
*/
|
|
119
|
+
export interface UserOperationGasEstimate {
|
|
120
|
+
preVerificationGas: string;
|
|
121
|
+
verificationGasLimit: string;
|
|
122
|
+
callGasLimit: string;
|
|
123
|
+
paymasterVerificationGasLimit?: string;
|
|
124
|
+
paymasterPostOpGasLimit?: string;
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* Receipt returned by eth_getUserOperationReceipt.
|
|
128
|
+
*/
|
|
129
|
+
export interface UserOperationReceipt {
|
|
130
|
+
userOpHash: string;
|
|
131
|
+
entryPoint: string;
|
|
132
|
+
sender: string;
|
|
133
|
+
nonce: string;
|
|
134
|
+
paymaster: string;
|
|
135
|
+
actualGasCost: string;
|
|
136
|
+
actualGasUsed: string;
|
|
137
|
+
success: boolean;
|
|
138
|
+
logs: any[];
|
|
139
|
+
receipt: {
|
|
140
|
+
transactionHash: string;
|
|
141
|
+
transactionIndex: string;
|
|
142
|
+
blockHash: string;
|
|
143
|
+
blockNumber: string;
|
|
144
|
+
from: string;
|
|
145
|
+
to: string;
|
|
146
|
+
cumulativeGasUsed: string;
|
|
147
|
+
gasUsed: string;
|
|
148
|
+
contractAddress: string | null;
|
|
149
|
+
logs: any[];
|
|
150
|
+
status: string;
|
|
151
|
+
effectiveGasPrice: string;
|
|
152
|
+
};
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* Canonical ERC-4337 EntryPoint v0.7 deployment address.
|
|
156
|
+
* Deployed at the same address on all EVM chains via CREATE2.
|
|
157
|
+
*/
|
|
158
|
+
export declare const ENTRYPOINT_V07_ADDRESS = "0x0000000071727De22E5E9d8BAf0edAc6f37da032";
|
|
159
|
+
/**
|
|
160
|
+
* Sequence0AccountFactory default addresses per network.
|
|
161
|
+
* These are the factory contracts that deploy Sequence0 AA wallets.
|
|
162
|
+
*/
|
|
163
|
+
export declare const FACTORY_ADDRESSES: Record<string, string>;
|
|
164
|
+
/**
|
|
165
|
+
* Default bundler URLs per chain.
|
|
166
|
+
* These are public bundlers -- for production, use a private bundler.
|
|
167
|
+
*/
|
|
168
|
+
export declare const DEFAULT_BUNDLER_URLS: Record<string, string>;
|
|
169
|
+
/**
|
|
170
|
+
* Chain IDs for supported EVM chains.
|
|
171
|
+
*/
|
|
172
|
+
export declare const CHAIN_IDS: Record<string, number>;
|
|
173
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/erc4337/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* ERC-4337 Account Abstraction Types
|
|
4
|
+
*
|
|
5
|
+
* Type definitions for UserOperations, bundler interactions,
|
|
6
|
+
* and Sequence0 AA wallet configuration.
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.CHAIN_IDS = exports.DEFAULT_BUNDLER_URLS = exports.FACTORY_ADDRESSES = exports.ENTRYPOINT_V07_ADDRESS = void 0;
|
|
10
|
+
// ── EntryPoint Constants ──
|
|
11
|
+
/**
|
|
12
|
+
* Canonical ERC-4337 EntryPoint v0.7 deployment address.
|
|
13
|
+
* Deployed at the same address on all EVM chains via CREATE2.
|
|
14
|
+
*/
|
|
15
|
+
exports.ENTRYPOINT_V07_ADDRESS = '0x0000000071727De22E5E9d8BAf0edAc6f37da032';
|
|
16
|
+
/**
|
|
17
|
+
* Sequence0AccountFactory default addresses per network.
|
|
18
|
+
* These are the factory contracts that deploy Sequence0 AA wallets.
|
|
19
|
+
*/
|
|
20
|
+
exports.FACTORY_ADDRESSES = {
|
|
21
|
+
mainnet: '0x06f3556ffa89ca7060c727fff0f7e2444380cb58',
|
|
22
|
+
testnet: '0x2379786fa3fb6e9de621df5ae91ec6035f9122ed',
|
|
23
|
+
};
|
|
24
|
+
/**
|
|
25
|
+
* Default bundler URLs per chain.
|
|
26
|
+
* These are public bundlers -- for production, use a private bundler.
|
|
27
|
+
*/
|
|
28
|
+
exports.DEFAULT_BUNDLER_URLS = {
|
|
29
|
+
ethereum: 'https://api.pimlico.io/v2/1/rpc',
|
|
30
|
+
polygon: 'https://api.pimlico.io/v2/137/rpc',
|
|
31
|
+
arbitrum: 'https://api.pimlico.io/v2/42161/rpc',
|
|
32
|
+
optimism: 'https://api.pimlico.io/v2/10/rpc',
|
|
33
|
+
base: 'https://api.pimlico.io/v2/8453/rpc',
|
|
34
|
+
};
|
|
35
|
+
/**
|
|
36
|
+
* Chain IDs for supported EVM chains.
|
|
37
|
+
*/
|
|
38
|
+
exports.CHAIN_IDS = {
|
|
39
|
+
ethereum: 1,
|
|
40
|
+
polygon: 137,
|
|
41
|
+
bsc: 56,
|
|
42
|
+
avalanche: 43114,
|
|
43
|
+
arbitrum: 42161,
|
|
44
|
+
optimism: 10,
|
|
45
|
+
base: 8453,
|
|
46
|
+
scroll: 534352,
|
|
47
|
+
linea: 59144,
|
|
48
|
+
mantle: 5000,
|
|
49
|
+
blast: 81457,
|
|
50
|
+
zksync: 324,
|
|
51
|
+
};
|
|
52
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/erc4337/types.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAqKH,6BAA6B;AAE7B;;;GAGG;AACU,QAAA,sBAAsB,GAAG,4CAA4C,CAAC;AAEnF;;;GAGG;AACU,QAAA,iBAAiB,GAA2B;IACrD,OAAO,EAAE,4CAA4C;IACrD,OAAO,EAAE,4CAA4C;CACxD,CAAC;AAEF;;;GAGG;AACU,QAAA,oBAAoB,GAA2B;IACxD,QAAQ,EAAE,iCAAiC;IAC3C,OAAO,EAAE,mCAAmC;IAC5C,QAAQ,EAAE,qCAAqC;IAC/C,QAAQ,EAAE,kCAAkC;IAC5C,IAAI,EAAE,oCAAoC;CAC7C,CAAC;AAEF;;GAEG;AACU,QAAA,SAAS,GAA2B;IAC7C,QAAQ,EAAE,CAAC;IACX,OAAO,EAAE,GAAG;IACZ,GAAG,EAAE,EAAE;IACP,SAAS,EAAE,KAAK;IAChB,QAAQ,EAAE,KAAK;IACf,QAAQ,EAAE,EAAE;IACZ,IAAI,EAAE,IAAI;IACV,MAAM,EAAE,MAAM;IACd,KAAK,EAAE,KAAK;IACZ,MAAM,EAAE,IAAI;IACZ,KAAK,EAAE,KAAK;IACZ,MAAM,EAAE,GAAG;CACd,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -13,6 +13,28 @@
|
|
|
13
13
|
* const wallet = await s0.createWallet({ chain: 'ethereum' });
|
|
14
14
|
* const txHash = await wallet.sendTransaction({ to: '0x...', value: '1000000000' });
|
|
15
15
|
* ```
|
|
16
|
+
*
|
|
17
|
+
* @example Bitcoin Taproot
|
|
18
|
+
* ```typescript
|
|
19
|
+
* import { BitcoinTaprootAdapter } from '@sequence0/sdk';
|
|
20
|
+
*
|
|
21
|
+
* const btc = new BitcoinTaprootAdapter({ network: 'mainnet' });
|
|
22
|
+
* const addr = btc.deriveAddress('02abcdef...');
|
|
23
|
+
* const balance = await btc.getBalance(addr.address);
|
|
24
|
+
* ```
|
|
25
|
+
*
|
|
26
|
+
* @example ERC-4337 Account Abstraction
|
|
27
|
+
* ```typescript
|
|
28
|
+
* import { Sequence0Account } from '@sequence0/sdk';
|
|
29
|
+
*
|
|
30
|
+
* const account = await Sequence0Account.create({
|
|
31
|
+
* threshold: 16,
|
|
32
|
+
* committeeSize: 24,
|
|
33
|
+
* chain: 'ethereum',
|
|
34
|
+
* ownerPrivateKey: '0x...',
|
|
35
|
+
* });
|
|
36
|
+
* const txHash = await account.sendTransaction({ to: '0x...', value: 1000000000n });
|
|
37
|
+
* ```
|
|
16
38
|
*/
|
|
17
39
|
export { Sequence0 } from './core/client';
|
|
18
40
|
export { Wallet } from './wallet/wallet';
|
|
@@ -21,6 +43,10 @@ export type { Chain, NetworkConfig, OwnerSigner, Threshold, CreateWalletOptions,
|
|
|
21
43
|
export { EthereumAdapter, createEthereumAdapter, createPolygonAdapter, createArbitrumAdapter, createBaseAdapter } from './chains/ethereum';
|
|
22
44
|
export { BitcoinAdapter, createBitcoinAdapter } from './chains/bitcoin';
|
|
23
45
|
export { SolanaAdapter, createSolanaAdapter, createSolanaDevnetAdapter } from './chains/solana';
|
|
46
|
+
export { BitcoinTaprootAdapter, createBitcoinTaprootAdapter, createBitcoinTestnetTaprootAdapter, } from './chains/bitcoin-taproot';
|
|
47
|
+
export type { BitcoinNetwork, BitcoinTaprootOptions, TaprootUtxo, TaprootAddressInfo, UnsignedTaprootTx, SignedTaprootTx, TaprootTxInput, TaprootTxOutput, FeeRateEstimate, } from './chains/bitcoin-taproot';
|
|
48
|
+
export { Sequence0Account, ENTRYPOINT_V07_ADDRESS, FACTORY_ADDRESSES, DEFAULT_BUNDLER_URLS, AA_CHAIN_IDS, } from './erc4337';
|
|
49
|
+
export type { PackedUserOperation, UserOperationParams, AccountTransaction, Sequence0AccountOptions, UserOperationGasEstimate, UserOperationReceipt, } from './erc4337';
|
|
24
50
|
export { HttpClient, CircuitBreaker, CircuitBreakerError } from './utils/http';
|
|
25
51
|
export type { HttpOptions, CircuitBreakerOptions, CircuitState } from './utils/http';
|
|
26
52
|
export { WsClient } from './utils/websocket';
|
|
@@ -29,11 +55,12 @@ export { AgentDiscovery } from './utils/discovery';
|
|
|
29
55
|
export type { DiscoveryOptions } from './utils/discovery';
|
|
30
56
|
export { FeeManager } from './utils/fee';
|
|
31
57
|
export type { FeeManagerOptions, UnsignedFeeTx } from './utils/fee';
|
|
58
|
+
export { computeEip712Digest, SEQUENCE0_CHAIN_IDS, WALLET_FACTORY_ADDRESSES } from './utils/eip712';
|
|
32
59
|
export { RateLimiter } from './utils/rate-limiter';
|
|
33
60
|
export type { RateLimiterOptions } from './utils/rate-limiter';
|
|
34
61
|
export { DebugLogger, NullLogger, maskAddress, maskSensitive } from './utils/logger';
|
|
35
62
|
export type { Logger } from './utils/logger';
|
|
36
|
-
export { validateDkgResponse, validateSignResponse, validateSignResultResponse, validateHealthResponse, validateStatusResponse, validateWalletsResponse, validateWalletId, validateChain, validateAddress, validateAmount, validateStringAmount, validateHexMessage, validateThreshold, } from './utils/validation';
|
|
63
|
+
export { validateDkgResponse, validateSignResponse, validateSignResultResponse, validateHealthResponse, validateStatusResponse, validateWalletsResponse, validateRefreshResponse, validateWalletId, validateChain, validateAddress, validateAmount, validateStringAmount, validateHexMessage, validateThreshold, } from './utils/validation';
|
|
37
64
|
export { Sequence0Error, NetworkError, DkgError, SigningError, TimeoutError, ChainError, InvalidResponseError, ValidationError, } from './utils/errors';
|
|
38
|
-
export declare const VERSION = "1.0
|
|
65
|
+
export declare const VERSION = "1.1.0";
|
|
39
66
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -14,9 +14,32 @@
|
|
|
14
14
|
* const wallet = await s0.createWallet({ chain: 'ethereum' });
|
|
15
15
|
* const txHash = await wallet.sendTransaction({ to: '0x...', value: '1000000000' });
|
|
16
16
|
* ```
|
|
17
|
+
*
|
|
18
|
+
* @example Bitcoin Taproot
|
|
19
|
+
* ```typescript
|
|
20
|
+
* import { BitcoinTaprootAdapter } from '@sequence0/sdk';
|
|
21
|
+
*
|
|
22
|
+
* const btc = new BitcoinTaprootAdapter({ network: 'mainnet' });
|
|
23
|
+
* const addr = btc.deriveAddress('02abcdef...');
|
|
24
|
+
* const balance = await btc.getBalance(addr.address);
|
|
25
|
+
* ```
|
|
26
|
+
*
|
|
27
|
+
* @example ERC-4337 Account Abstraction
|
|
28
|
+
* ```typescript
|
|
29
|
+
* import { Sequence0Account } from '@sequence0/sdk';
|
|
30
|
+
*
|
|
31
|
+
* const account = await Sequence0Account.create({
|
|
32
|
+
* threshold: 16,
|
|
33
|
+
* committeeSize: 24,
|
|
34
|
+
* chain: 'ethereum',
|
|
35
|
+
* ownerPrivateKey: '0x...',
|
|
36
|
+
* });
|
|
37
|
+
* const txHash = await account.sendTransaction({ to: '0x...', value: 1000000000n });
|
|
38
|
+
* ```
|
|
17
39
|
*/
|
|
18
40
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
|
-
exports.
|
|
41
|
+
exports.NetworkError = exports.Sequence0Error = exports.validateThreshold = exports.validateHexMessage = exports.validateStringAmount = exports.validateAmount = exports.validateAddress = exports.validateChain = exports.validateWalletId = exports.validateRefreshResponse = exports.validateWalletsResponse = exports.validateStatusResponse = exports.validateHealthResponse = exports.validateSignResultResponse = exports.validateSignResponse = exports.validateDkgResponse = exports.maskSensitive = exports.maskAddress = exports.NullLogger = exports.DebugLogger = exports.RateLimiter = exports.WALLET_FACTORY_ADDRESSES = exports.SEQUENCE0_CHAIN_IDS = exports.computeEip712Digest = exports.FeeManager = exports.AgentDiscovery = exports.WsClient = exports.CircuitBreakerError = exports.CircuitBreaker = exports.HttpClient = exports.AA_CHAIN_IDS = exports.DEFAULT_BUNDLER_URLS = exports.FACTORY_ADDRESSES = exports.ENTRYPOINT_V07_ADDRESS = exports.Sequence0Account = exports.createBitcoinTestnetTaprootAdapter = exports.createBitcoinTaprootAdapter = exports.BitcoinTaprootAdapter = exports.createSolanaDevnetAdapter = exports.createSolanaAdapter = exports.SolanaAdapter = exports.createBitcoinAdapter = exports.BitcoinAdapter = exports.createBaseAdapter = exports.createArbitrumAdapter = exports.createPolygonAdapter = exports.createEthereumAdapter = exports.EthereumAdapter = exports.Wallet = exports.Sequence0 = void 0;
|
|
42
|
+
exports.VERSION = exports.ValidationError = exports.InvalidResponseError = exports.ChainError = exports.TimeoutError = exports.SigningError = exports.DkgError = void 0;
|
|
20
43
|
// Core
|
|
21
44
|
var client_1 = require("./core/client");
|
|
22
45
|
Object.defineProperty(exports, "Sequence0", { enumerable: true, get: function () { return client_1.Sequence0; } });
|
|
@@ -36,6 +59,18 @@ var solana_1 = require("./chains/solana");
|
|
|
36
59
|
Object.defineProperty(exports, "SolanaAdapter", { enumerable: true, get: function () { return solana_1.SolanaAdapter; } });
|
|
37
60
|
Object.defineProperty(exports, "createSolanaAdapter", { enumerable: true, get: function () { return solana_1.createSolanaAdapter; } });
|
|
38
61
|
Object.defineProperty(exports, "createSolanaDevnetAdapter", { enumerable: true, get: function () { return solana_1.createSolanaDevnetAdapter; } });
|
|
62
|
+
// Bitcoin Taproot Adapter (full P2TR lifecycle)
|
|
63
|
+
var bitcoin_taproot_1 = require("./chains/bitcoin-taproot");
|
|
64
|
+
Object.defineProperty(exports, "BitcoinTaprootAdapter", { enumerable: true, get: function () { return bitcoin_taproot_1.BitcoinTaprootAdapter; } });
|
|
65
|
+
Object.defineProperty(exports, "createBitcoinTaprootAdapter", { enumerable: true, get: function () { return bitcoin_taproot_1.createBitcoinTaprootAdapter; } });
|
|
66
|
+
Object.defineProperty(exports, "createBitcoinTestnetTaprootAdapter", { enumerable: true, get: function () { return bitcoin_taproot_1.createBitcoinTestnetTaprootAdapter; } });
|
|
67
|
+
// ERC-4337 Account Abstraction
|
|
68
|
+
var erc4337_1 = require("./erc4337");
|
|
69
|
+
Object.defineProperty(exports, "Sequence0Account", { enumerable: true, get: function () { return erc4337_1.Sequence0Account; } });
|
|
70
|
+
Object.defineProperty(exports, "ENTRYPOINT_V07_ADDRESS", { enumerable: true, get: function () { return erc4337_1.ENTRYPOINT_V07_ADDRESS; } });
|
|
71
|
+
Object.defineProperty(exports, "FACTORY_ADDRESSES", { enumerable: true, get: function () { return erc4337_1.FACTORY_ADDRESSES; } });
|
|
72
|
+
Object.defineProperty(exports, "DEFAULT_BUNDLER_URLS", { enumerable: true, get: function () { return erc4337_1.DEFAULT_BUNDLER_URLS; } });
|
|
73
|
+
Object.defineProperty(exports, "AA_CHAIN_IDS", { enumerable: true, get: function () { return erc4337_1.AA_CHAIN_IDS; } });
|
|
39
74
|
// Utilities
|
|
40
75
|
var http_1 = require("./utils/http");
|
|
41
76
|
Object.defineProperty(exports, "HttpClient", { enumerable: true, get: function () { return http_1.HttpClient; } });
|
|
@@ -47,6 +82,11 @@ var discovery_1 = require("./utils/discovery");
|
|
|
47
82
|
Object.defineProperty(exports, "AgentDiscovery", { enumerable: true, get: function () { return discovery_1.AgentDiscovery; } });
|
|
48
83
|
var fee_1 = require("./utils/fee");
|
|
49
84
|
Object.defineProperty(exports, "FeeManager", { enumerable: true, get: function () { return fee_1.FeeManager; } });
|
|
85
|
+
// EIP-712 Auth Utilities
|
|
86
|
+
var eip712_1 = require("./utils/eip712");
|
|
87
|
+
Object.defineProperty(exports, "computeEip712Digest", { enumerable: true, get: function () { return eip712_1.computeEip712Digest; } });
|
|
88
|
+
Object.defineProperty(exports, "SEQUENCE0_CHAIN_IDS", { enumerable: true, get: function () { return eip712_1.SEQUENCE0_CHAIN_IDS; } });
|
|
89
|
+
Object.defineProperty(exports, "WALLET_FACTORY_ADDRESSES", { enumerable: true, get: function () { return eip712_1.WALLET_FACTORY_ADDRESSES; } });
|
|
50
90
|
// Rate Limiter
|
|
51
91
|
var rate_limiter_1 = require("./utils/rate-limiter");
|
|
52
92
|
Object.defineProperty(exports, "RateLimiter", { enumerable: true, get: function () { return rate_limiter_1.RateLimiter; } });
|
|
@@ -64,6 +104,7 @@ Object.defineProperty(exports, "validateSignResultResponse", { enumerable: true,
|
|
|
64
104
|
Object.defineProperty(exports, "validateHealthResponse", { enumerable: true, get: function () { return validation_1.validateHealthResponse; } });
|
|
65
105
|
Object.defineProperty(exports, "validateStatusResponse", { enumerable: true, get: function () { return validation_1.validateStatusResponse; } });
|
|
66
106
|
Object.defineProperty(exports, "validateWalletsResponse", { enumerable: true, get: function () { return validation_1.validateWalletsResponse; } });
|
|
107
|
+
Object.defineProperty(exports, "validateRefreshResponse", { enumerable: true, get: function () { return validation_1.validateRefreshResponse; } });
|
|
67
108
|
Object.defineProperty(exports, "validateWalletId", { enumerable: true, get: function () { return validation_1.validateWalletId; } });
|
|
68
109
|
Object.defineProperty(exports, "validateChain", { enumerable: true, get: function () { return validation_1.validateChain; } });
|
|
69
110
|
Object.defineProperty(exports, "validateAddress", { enumerable: true, get: function () { return validation_1.validateAddress; } });
|
|
@@ -82,5 +123,5 @@ Object.defineProperty(exports, "ChainError", { enumerable: true, get: function (
|
|
|
82
123
|
Object.defineProperty(exports, "InvalidResponseError", { enumerable: true, get: function () { return errors_1.InvalidResponseError; } });
|
|
83
124
|
Object.defineProperty(exports, "ValidationError", { enumerable: true, get: function () { return errors_1.ValidationError; } });
|
|
84
125
|
// Version
|
|
85
|
-
exports.VERSION = '1.0
|
|
126
|
+
exports.VERSION = '1.1.0';
|
|
86
127
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;;;;AAEH,OAAO;AACP,wCAA0C;AAAjC,mGAAA,SAAS,OAAA;AAClB,0CAAyC;AAAhC,gGAAA,MAAM,OAAA;AA0Bf,iBAAiB;AACjB,8CAA2I;AAAlI,2GAAA,eAAe,OAAA;AAAE,iHAAA,qBAAqB,OAAA;AAAE,gHAAA,oBAAoB,OAAA;AAAE,iHAAA,qBAAqB,OAAA;AAAE,6GAAA,iBAAiB,OAAA;AAC/G,4CAAwE;AAA/D,yGAAA,cAAc,OAAA;AAAE,+GAAA,oBAAoB,OAAA;AAC7C,0CAAgG;AAAvF,uGAAA,aAAa,OAAA;AAAE,6GAAA,mBAAmB,OAAA;AAAE,mHAAA,yBAAyB,OAAA;AAEtE,gDAAgD;AAChD,4DAIkC;AAH9B,wHAAA,qBAAqB,OAAA;AACrB,8HAAA,2BAA2B,OAAA;AAC3B,qIAAA,kCAAkC,OAAA;AActC,+BAA+B;AAC/B,qCAMmB;AALf,2GAAA,gBAAgB,OAAA;AAChB,iHAAA,sBAAsB,OAAA;AACtB,4GAAA,iBAAiB,OAAA;AACjB,+GAAA,oBAAoB,OAAA;AACpB,uGAAA,YAAY,OAAA;AAWhB,YAAY;AACZ,qCAA+E;AAAtE,kGAAA,UAAU,OAAA;AAAE,sGAAA,cAAc,OAAA;AAAE,2GAAA,mBAAmB,OAAA;AAExD,+CAA6C;AAApC,qGAAA,QAAQ,OAAA;AAEjB,+CAAmD;AAA1C,2GAAA,cAAc,OAAA;AAEvB,mCAAyC;AAAhC,iGAAA,UAAU,OAAA;AAGnB,yBAAyB;AACzB,yCAAoG;AAA3F,6GAAA,mBAAmB,OAAA;AAAE,6GAAA,mBAAmB,OAAA;AAAE,kHAAA,wBAAwB,OAAA;AAE3E,eAAe;AACf,qDAAmD;AAA1C,2GAAA,WAAW,OAAA;AAGpB,SAAS;AACT,yCAAqF;AAA5E,qGAAA,WAAW,OAAA;AAAE,oGAAA,UAAU,OAAA;AAAE,qGAAA,WAAW,OAAA;AAAE,uGAAA,aAAa,OAAA;AAG5D,aAAa;AACb,iDAe4B;AAdxB,iHAAA,mBAAmB,OAAA;AACnB,kHAAA,oBAAoB,OAAA;AACpB,wHAAA,0BAA0B,OAAA;AAC1B,oHAAA,sBAAsB,OAAA;AACtB,oHAAA,sBAAsB,OAAA;AACtB,qHAAA,uBAAuB,OAAA;AACvB,qHAAA,uBAAuB,OAAA;AACvB,8GAAA,gBAAgB,OAAA;AAChB,2GAAA,aAAa,OAAA;AACb,6GAAA,eAAe,OAAA;AACf,4GAAA,cAAc,OAAA;AACd,kHAAA,oBAAoB,OAAA;AACpB,gHAAA,kBAAkB,OAAA;AAClB,+GAAA,iBAAiB,OAAA;AAGrB,SAAS;AACT,yCASwB;AARpB,wGAAA,cAAc,OAAA;AACd,sGAAA,YAAY,OAAA;AACZ,kGAAA,QAAQ,OAAA;AACR,sGAAA,YAAY,OAAA;AACZ,sGAAA,YAAY,OAAA;AACZ,oGAAA,UAAU,OAAA;AACV,8GAAA,oBAAoB,OAAA;AACpB,yGAAA,eAAe,OAAA;AAGnB,UAAU;AACG,QAAA,OAAO,GAAG,OAAO,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discovery.d.ts","sourceRoot":"","sources":["../../src/utils/discovery.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;
|
|
1
|
+
{"version":3,"file":"discovery.d.ts","sourceRoot":"","sources":["../../src/utils/discovery.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAgDH,MAAM,WAAW,SAAS;IACtB,wCAAwC;IACxC,MAAM,EAAE,MAAM,CAAC;IACf,kEAAkE;IAClE,SAAS,EAAE,MAAM,CAAC;IAClB,sDAAsD;IACtD,MAAM,EAAE,MAAM,CAAC;IACf,8BAA8B;IAC9B,cAAc,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,gBAAgB;IAC7B,8BAA8B;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,qCAAqC;IACrC,eAAe,EAAE,MAAM,CAAC;IACxB,uCAAuC;IACvC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,sEAAsE;IACtE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,OAAO,CAAC;CACtB;AAQD,qBAAa,cAAc;IACvB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAU;IAC1B,OAAO,CAAC,KAAK,CAA2D;gBAE5D,OAAO,EAAE,gBAAgB;IAQrC;;;;OAIG;IACG,cAAc,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;IAI5C;;;;OAIG;IACG,iBAAiB,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;IA0B/C;;;;OAIG;YACW,cAAc;IAc5B;;;;OAIG;IACG,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;IAWpC;;OAEG;IACG,gBAAgB,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;IAsB9C;;;;OAIG;IACG,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAoBzD;;OAEG;IACG,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAU1E;;OAEG;IACH,UAAU,IAAI,IAAI;YAMJ,OAAO;IAmBrB;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;IAiC3B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAwBzB;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB;CAuB5B"}
|
package/dist/utils/discovery.js
CHANGED
|
@@ -18,6 +18,53 @@
|
|
|
18
18
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
19
|
exports.AgentDiscovery = void 0;
|
|
20
20
|
const errors_1 = require("./errors");
|
|
21
|
+
/**
|
|
22
|
+
* Returns true if the given IPv4 address belongs to a private, loopback,
|
|
23
|
+
* link-local, or unspecified range that must never be contacted by the SDK.
|
|
24
|
+
*
|
|
25
|
+
* Blocked ranges:
|
|
26
|
+
* 127.0.0.0/8 — loopback
|
|
27
|
+
* 10.0.0.0/8 — private
|
|
28
|
+
* 172.16.0.0/12 — private (172.16.x.x – 172.31.x.x)
|
|
29
|
+
* 192.168.0.0/16 — private
|
|
30
|
+
* 169.254.0.0/16 — link-local / cloud metadata (e.g. 169.254.169.254)
|
|
31
|
+
* 0.0.0.0 — unspecified
|
|
32
|
+
*/
|
|
33
|
+
function isPrivateIP(ip) {
|
|
34
|
+
const parts = ip.split('.');
|
|
35
|
+
if (parts.length !== 4)
|
|
36
|
+
return true; // Malformed — treat as blocked
|
|
37
|
+
const [a, b] = parts.map(Number);
|
|
38
|
+
if (ip === '0.0.0.0')
|
|
39
|
+
return true;
|
|
40
|
+
if (a === 127)
|
|
41
|
+
return true; // 127.0.0.0/8
|
|
42
|
+
if (a === 10)
|
|
43
|
+
return true; // 10.0.0.0/8
|
|
44
|
+
if (a === 172 && b >= 16 && b <= 31)
|
|
45
|
+
return true; // 172.16.0.0/12
|
|
46
|
+
if (a === 192 && b === 168)
|
|
47
|
+
return true; // 192.168.0.0/16
|
|
48
|
+
if (a === 169 && b === 254)
|
|
49
|
+
return true; // 169.254.0.0/16
|
|
50
|
+
return false;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Cryptographically secure random number in [0, 1).
|
|
54
|
+
* Replaces Math.random() for agent selection to prevent prediction attacks.
|
|
55
|
+
*/
|
|
56
|
+
function secureRandom() {
|
|
57
|
+
const array = new Uint32Array(1);
|
|
58
|
+
if (typeof globalThis.crypto !== 'undefined') {
|
|
59
|
+
globalThis.crypto.getRandomValues(array);
|
|
60
|
+
}
|
|
61
|
+
else {
|
|
62
|
+
// Node.js fallback
|
|
63
|
+
const { randomBytes } = require('crypto');
|
|
64
|
+
array[0] = randomBytes(4).readUInt32BE(0);
|
|
65
|
+
}
|
|
66
|
+
return array[0] / (0xFFFFFFFF + 1);
|
|
67
|
+
}
|
|
21
68
|
// ABI: getActiveAgents(uint256 offset, uint256 limit) returns (string[] peerIds, string[] multiaddrs)
|
|
22
69
|
const GET_ACTIVE_AGENTS_SELECTOR = '0x07261960';
|
|
23
70
|
// ABI: getReputation(string peerId) returns (uint256)
|
|
@@ -89,7 +136,7 @@ class AgentDiscovery {
|
|
|
89
136
|
if (healthy.length === 0) {
|
|
90
137
|
throw new errors_1.NetworkError('No healthy agents found in the registry. The network may not have active node runners yet.');
|
|
91
138
|
}
|
|
92
|
-
const idx = Math.floor(
|
|
139
|
+
const idx = Math.floor(secureRandom() * healthy.length);
|
|
93
140
|
return healthy[idx].apiUrl;
|
|
94
141
|
}
|
|
95
142
|
/**
|
|
@@ -241,8 +288,16 @@ class AgentDiscovery {
|
|
|
241
288
|
if (ipIdx === -1 || tcpIdx === -1)
|
|
242
289
|
return null;
|
|
243
290
|
const ip = parts[ipIdx + 1];
|
|
291
|
+
// Block private/loopback/link-local IPs to prevent SSRF attacks.
|
|
292
|
+
// A malicious agent could register /ip4/169.254.169.254/tcp/... to
|
|
293
|
+
// trick the SDK into hitting cloud metadata endpoints or internal services.
|
|
294
|
+
if (isPrivateIP(ip))
|
|
295
|
+
return null;
|
|
244
296
|
const p2pPort = parseInt(parts[tcpIdx + 1]);
|
|
245
297
|
const apiPort = p2pPort + this.apiPortOffset;
|
|
298
|
+
// Validate port is in a legitimate range
|
|
299
|
+
if (apiPort < 1 || apiPort > 65535)
|
|
300
|
+
return null;
|
|
246
301
|
const protocol = this.useHttps ? 'https' : 'http';
|
|
247
302
|
return `${protocol}://${ip}:${apiPort}`;
|
|
248
303
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discovery.js","sourceRoot":"","sources":["../../src/utils/discovery.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;;;AAEH,qCAAwC;
|
|
1
|
+
{"version":3,"file":"discovery.js","sourceRoot":"","sources":["../../src/utils/discovery.ts"],"names":[],"mappings":"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"}
|