@sequence0/sdk 1.1.2 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/chains/algorand.d.ts +44 -0
- package/dist/chains/algorand.d.ts.map +1 -0
- package/dist/chains/algorand.js +148 -0
- package/dist/chains/algorand.js.map +1 -0
- package/dist/chains/aptos.d.ts +39 -0
- package/dist/chains/aptos.d.ts.map +1 -0
- package/dist/chains/aptos.js +168 -0
- package/dist/chains/aptos.js.map +1 -0
- package/dist/chains/cardano.d.ts +42 -0
- package/dist/chains/cardano.d.ts.map +1 -0
- package/dist/chains/cardano.js +188 -0
- package/dist/chains/cardano.js.map +1 -0
- package/dist/chains/cosmos.d.ts +42 -0
- package/dist/chains/cosmos.d.ts.map +1 -0
- package/dist/chains/cosmos.js +216 -0
- package/dist/chains/cosmos.js.map +1 -0
- package/dist/chains/dogecoin-litecoin.d.ts +57 -0
- package/dist/chains/dogecoin-litecoin.d.ts.map +1 -0
- package/dist/chains/dogecoin-litecoin.js +521 -0
- package/dist/chains/dogecoin-litecoin.js.map +1 -0
- package/dist/chains/ethereum.d.ts.map +1 -1
- package/dist/chains/ethereum.js +16 -0
- package/dist/chains/ethereum.js.map +1 -1
- package/dist/chains/hedera.d.ts +113 -0
- package/dist/chains/hedera.d.ts.map +1 -0
- package/dist/chains/hedera.js +302 -0
- package/dist/chains/hedera.js.map +1 -0
- package/dist/chains/icp.d.ts +95 -0
- package/dist/chains/icp.d.ts.map +1 -0
- package/dist/chains/icp.js +520 -0
- package/dist/chains/icp.js.map +1 -0
- package/dist/chains/kaspa.d.ts +152 -0
- package/dist/chains/kaspa.d.ts.map +1 -0
- package/dist/chains/kaspa.js +790 -0
- package/dist/chains/kaspa.js.map +1 -0
- package/dist/chains/multiversx.d.ts +143 -0
- package/dist/chains/multiversx.d.ts.map +1 -0
- package/dist/chains/multiversx.js +524 -0
- package/dist/chains/multiversx.js.map +1 -0
- package/dist/chains/near.d.ts +40 -0
- package/dist/chains/near.d.ts.map +1 -0
- package/dist/chains/near.js +170 -0
- package/dist/chains/near.js.map +1 -0
- package/dist/chains/polkadot.d.ts +43 -0
- package/dist/chains/polkadot.d.ts.map +1 -0
- package/dist/chains/polkadot.js +179 -0
- package/dist/chains/polkadot.js.map +1 -0
- package/dist/chains/ripple.d.ts +41 -0
- package/dist/chains/ripple.d.ts.map +1 -0
- package/dist/chains/ripple.js +190 -0
- package/dist/chains/ripple.js.map +1 -0
- package/dist/chains/stellar.d.ts +40 -0
- package/dist/chains/stellar.d.ts.map +1 -0
- package/dist/chains/stellar.js +156 -0
- package/dist/chains/stellar.js.map +1 -0
- package/dist/chains/sui.d.ts +44 -0
- package/dist/chains/sui.d.ts.map +1 -0
- package/dist/chains/sui.js +157 -0
- package/dist/chains/sui.js.map +1 -0
- package/dist/chains/tezos.d.ts +43 -0
- package/dist/chains/tezos.d.ts.map +1 -0
- package/dist/chains/tezos.js +162 -0
- package/dist/chains/tezos.js.map +1 -0
- package/dist/chains/ton.d.ts +40 -0
- package/dist/chains/ton.d.ts.map +1 -0
- package/dist/chains/ton.js +168 -0
- package/dist/chains/ton.js.map +1 -0
- package/dist/chains/tron.d.ts +41 -0
- package/dist/chains/tron.d.ts.map +1 -0
- package/dist/chains/tron.js +124 -0
- package/dist/chains/tron.js.map +1 -0
- package/dist/core/atomic.d.ts +76 -0
- package/dist/core/atomic.d.ts.map +1 -0
- package/dist/core/atomic.js +39 -0
- package/dist/core/atomic.js.map +1 -0
- package/dist/core/client.d.ts +238 -0
- package/dist/core/client.d.ts.map +1 -1
- package/dist/core/client.js +536 -4
- package/dist/core/client.js.map +1 -1
- package/dist/core/delegation.d.ts +184 -0
- package/dist/core/delegation.d.ts.map +1 -0
- package/dist/core/delegation.js +37 -0
- package/dist/core/delegation.js.map +1 -0
- package/dist/core/programmable.d.ts +66 -0
- package/dist/core/programmable.d.ts.map +1 -0
- package/dist/core/programmable.js +36 -0
- package/dist/core/programmable.js.map +1 -0
- package/dist/core/solvency.d.ts +223 -0
- package/dist/core/solvency.d.ts.map +1 -0
- package/dist/core/solvency.js +267 -0
- package/dist/core/solvency.js.map +1 -0
- package/dist/core/types.d.ts +172 -1
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/universal-account.d.ts +438 -0
- package/dist/core/universal-account.d.ts.map +1 -0
- package/dist/core/universal-account.js +597 -0
- package/dist/core/universal-account.js.map +1 -0
- package/dist/core/witness.d.ts +197 -0
- package/dist/core/witness.d.ts.map +1 -0
- package/dist/core/witness.js +298 -0
- package/dist/core/witness.js.map +1 -0
- package/dist/erc4337/types.js +2 -2
- package/dist/index.d.ts +30 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +91 -4
- package/dist/index.js.map +1 -1
- package/dist/settlement/settlement.d.ts +152 -0
- package/dist/settlement/settlement.d.ts.map +1 -0
- package/dist/settlement/settlement.js +172 -0
- package/dist/settlement/settlement.js.map +1 -0
- package/dist/utils/eip712.js +2 -2
- package/dist/utils/fee.d.ts +2 -2
- package/dist/utils/fee.js +2 -2
- package/dist/utils/optional-deps.d.ts +9 -0
- package/dist/utils/optional-deps.d.ts.map +1 -0
- package/dist/utils/optional-deps.js +21 -0
- package/dist/utils/optional-deps.js.map +1 -0
- package/dist/utils/validation.d.ts.map +1 -1
- package/dist/utils/validation.js +6 -1
- package/dist/utils/validation.js.map +1 -1
- package/dist/wallet/wallet.d.ts +52 -0
- package/dist/wallet/wallet.d.ts.map +1 -1
- package/dist/wallet/wallet.js +265 -33
- package/dist/wallet/wallet.js.map +1 -1
- package/package.json +35 -1
package/dist/index.js
CHANGED
|
@@ -38,14 +38,15 @@
|
|
|
38
38
|
* ```
|
|
39
39
|
*/
|
|
40
40
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
41
|
-
exports.
|
|
42
|
-
exports.
|
|
41
|
+
exports.DogecoinLitecoinAdapter = exports.createPolkadotWestendAdapter = exports.createKusamaAdapter = exports.createPolkadotAdapter = exports.PolkadotAdapter = exports.createCardanoPreprodAdapter = exports.createCardanoAdapter = exports.CardanoAdapter = exports.createTezosGhostnetAdapter = exports.createTezosAdapter = exports.TezosAdapter = exports.createAlgorandTestnetAdapter = exports.createAlgorandAdapter = exports.AlgorandAdapter = exports.createTonTestnetAdapter = exports.createTonAdapter = exports.TonAdapter = exports.createStellarTestnetAdapter = exports.createStellarAdapter = exports.StellarAdapter = exports.createAptosTestnetAdapter = exports.createAptosAdapter = exports.AptosAdapter = exports.createSuiTestnetAdapter = exports.createSuiAdapter = exports.SuiAdapter = exports.createNearTestnetAdapter = exports.createNearAdapter = exports.NearAdapter = exports.createRippleTestnetAdapter = exports.createRippleAdapter = exports.RippleAdapter = exports.createTronShastaAdapter = exports.createTronAdapter = exports.TronAdapter = exports.createOsmosisAdapter = exports.createCosmosAdapter = exports.CosmosAdapter = 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.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.UniversalAccountClient = exports.WitnessClient = exports.SolvencyClient = exports.SettlementClient = exports.AA_CHAIN_IDS = exports.DEFAULT_BUNDLER_URLS = exports.FACTORY_ADDRESSES = exports.ENTRYPOINT_V07_ADDRESS = exports.Sequence0Account = exports.createBitcoinTestnetTaprootAdapter = exports.createBitcoinTaprootAdapter = exports.BitcoinTaprootAdapter = exports.createIcpAdapter = exports.IcpAdapter = exports.createHederaTestnetAdapter = exports.createHederaAdapter = exports.HederaAdapter = exports.createKaspaTestnetAdapter = exports.createKaspaAdapter = exports.KaspaAdapter = exports.createMultiversXDevnetAdapter = exports.createMultiversXAdapter = exports.MultiversXAdapter = exports.createBitcoinSVAdapter = exports.createBitcoinCashAdapter = exports.createLitecoinAdapter = exports.createDogecoinAdapter = void 0;
|
|
43
|
+
exports.VERSION = exports.ValidationError = exports.InvalidResponseError = exports.ChainError = exports.TimeoutError = exports.SigningError = exports.DkgError = exports.NetworkError = exports.Sequence0Error = exports.validateThreshold = exports.validateHexMessage = exports.validateStringAmount = exports.validateAmount = exports.validateAddress = void 0;
|
|
43
44
|
// Core
|
|
44
45
|
var client_1 = require("./core/client");
|
|
45
46
|
Object.defineProperty(exports, "Sequence0", { enumerable: true, get: function () { return client_1.Sequence0; } });
|
|
46
47
|
var wallet_1 = require("./wallet/wallet");
|
|
47
48
|
Object.defineProperty(exports, "Wallet", { enumerable: true, get: function () { return wallet_1.Wallet; } });
|
|
48
|
-
// Chain Adapters
|
|
49
|
+
// Chain Adapters — EVM + Core
|
|
49
50
|
var ethereum_1 = require("./chains/ethereum");
|
|
50
51
|
Object.defineProperty(exports, "EthereumAdapter", { enumerable: true, get: function () { return ethereum_1.EthereumAdapter; } });
|
|
51
52
|
Object.defineProperty(exports, "createEthereumAdapter", { enumerable: true, get: function () { return ethereum_1.createEthereumAdapter; } });
|
|
@@ -59,6 +60,80 @@ var solana_1 = require("./chains/solana");
|
|
|
59
60
|
Object.defineProperty(exports, "SolanaAdapter", { enumerable: true, get: function () { return solana_1.SolanaAdapter; } });
|
|
60
61
|
Object.defineProperty(exports, "createSolanaAdapter", { enumerable: true, get: function () { return solana_1.createSolanaAdapter; } });
|
|
61
62
|
Object.defineProperty(exports, "createSolanaDevnetAdapter", { enumerable: true, get: function () { return solana_1.createSolanaDevnetAdapter; } });
|
|
63
|
+
// Chain Adapters — secp256k1 ECDSA
|
|
64
|
+
var cosmos_1 = require("./chains/cosmos");
|
|
65
|
+
Object.defineProperty(exports, "CosmosAdapter", { enumerable: true, get: function () { return cosmos_1.CosmosAdapter; } });
|
|
66
|
+
Object.defineProperty(exports, "createCosmosAdapter", { enumerable: true, get: function () { return cosmos_1.createCosmosAdapter; } });
|
|
67
|
+
Object.defineProperty(exports, "createOsmosisAdapter", { enumerable: true, get: function () { return cosmos_1.createOsmosisAdapter; } });
|
|
68
|
+
var tron_1 = require("./chains/tron");
|
|
69
|
+
Object.defineProperty(exports, "TronAdapter", { enumerable: true, get: function () { return tron_1.TronAdapter; } });
|
|
70
|
+
Object.defineProperty(exports, "createTronAdapter", { enumerable: true, get: function () { return tron_1.createTronAdapter; } });
|
|
71
|
+
Object.defineProperty(exports, "createTronShastaAdapter", { enumerable: true, get: function () { return tron_1.createTronShastaAdapter; } });
|
|
72
|
+
var ripple_1 = require("./chains/ripple");
|
|
73
|
+
Object.defineProperty(exports, "RippleAdapter", { enumerable: true, get: function () { return ripple_1.RippleAdapter; } });
|
|
74
|
+
Object.defineProperty(exports, "createRippleAdapter", { enumerable: true, get: function () { return ripple_1.createRippleAdapter; } });
|
|
75
|
+
Object.defineProperty(exports, "createRippleTestnetAdapter", { enumerable: true, get: function () { return ripple_1.createRippleTestnetAdapter; } });
|
|
76
|
+
// Chain Adapters — Ed25519
|
|
77
|
+
var near_1 = require("./chains/near");
|
|
78
|
+
Object.defineProperty(exports, "NearAdapter", { enumerable: true, get: function () { return near_1.NearAdapter; } });
|
|
79
|
+
Object.defineProperty(exports, "createNearAdapter", { enumerable: true, get: function () { return near_1.createNearAdapter; } });
|
|
80
|
+
Object.defineProperty(exports, "createNearTestnetAdapter", { enumerable: true, get: function () { return near_1.createNearTestnetAdapter; } });
|
|
81
|
+
var sui_1 = require("./chains/sui");
|
|
82
|
+
Object.defineProperty(exports, "SuiAdapter", { enumerable: true, get: function () { return sui_1.SuiAdapter; } });
|
|
83
|
+
Object.defineProperty(exports, "createSuiAdapter", { enumerable: true, get: function () { return sui_1.createSuiAdapter; } });
|
|
84
|
+
Object.defineProperty(exports, "createSuiTestnetAdapter", { enumerable: true, get: function () { return sui_1.createSuiTestnetAdapter; } });
|
|
85
|
+
var aptos_1 = require("./chains/aptos");
|
|
86
|
+
Object.defineProperty(exports, "AptosAdapter", { enumerable: true, get: function () { return aptos_1.AptosAdapter; } });
|
|
87
|
+
Object.defineProperty(exports, "createAptosAdapter", { enumerable: true, get: function () { return aptos_1.createAptosAdapter; } });
|
|
88
|
+
Object.defineProperty(exports, "createAptosTestnetAdapter", { enumerable: true, get: function () { return aptos_1.createAptosTestnetAdapter; } });
|
|
89
|
+
var stellar_1 = require("./chains/stellar");
|
|
90
|
+
Object.defineProperty(exports, "StellarAdapter", { enumerable: true, get: function () { return stellar_1.StellarAdapter; } });
|
|
91
|
+
Object.defineProperty(exports, "createStellarAdapter", { enumerable: true, get: function () { return stellar_1.createStellarAdapter; } });
|
|
92
|
+
Object.defineProperty(exports, "createStellarTestnetAdapter", { enumerable: true, get: function () { return stellar_1.createStellarTestnetAdapter; } });
|
|
93
|
+
var ton_1 = require("./chains/ton");
|
|
94
|
+
Object.defineProperty(exports, "TonAdapter", { enumerable: true, get: function () { return ton_1.TonAdapter; } });
|
|
95
|
+
Object.defineProperty(exports, "createTonAdapter", { enumerable: true, get: function () { return ton_1.createTonAdapter; } });
|
|
96
|
+
Object.defineProperty(exports, "createTonTestnetAdapter", { enumerable: true, get: function () { return ton_1.createTonTestnetAdapter; } });
|
|
97
|
+
var algorand_1 = require("./chains/algorand");
|
|
98
|
+
Object.defineProperty(exports, "AlgorandAdapter", { enumerable: true, get: function () { return algorand_1.AlgorandAdapter; } });
|
|
99
|
+
Object.defineProperty(exports, "createAlgorandAdapter", { enumerable: true, get: function () { return algorand_1.createAlgorandAdapter; } });
|
|
100
|
+
Object.defineProperty(exports, "createAlgorandTestnetAdapter", { enumerable: true, get: function () { return algorand_1.createAlgorandTestnetAdapter; } });
|
|
101
|
+
var tezos_1 = require("./chains/tezos");
|
|
102
|
+
Object.defineProperty(exports, "TezosAdapter", { enumerable: true, get: function () { return tezos_1.TezosAdapter; } });
|
|
103
|
+
Object.defineProperty(exports, "createTezosAdapter", { enumerable: true, get: function () { return tezos_1.createTezosAdapter; } });
|
|
104
|
+
Object.defineProperty(exports, "createTezosGhostnetAdapter", { enumerable: true, get: function () { return tezos_1.createTezosGhostnetAdapter; } });
|
|
105
|
+
var cardano_1 = require("./chains/cardano");
|
|
106
|
+
Object.defineProperty(exports, "CardanoAdapter", { enumerable: true, get: function () { return cardano_1.CardanoAdapter; } });
|
|
107
|
+
Object.defineProperty(exports, "createCardanoAdapter", { enumerable: true, get: function () { return cardano_1.createCardanoAdapter; } });
|
|
108
|
+
Object.defineProperty(exports, "createCardanoPreprodAdapter", { enumerable: true, get: function () { return cardano_1.createCardanoPreprodAdapter; } });
|
|
109
|
+
var polkadot_1 = require("./chains/polkadot");
|
|
110
|
+
Object.defineProperty(exports, "PolkadotAdapter", { enumerable: true, get: function () { return polkadot_1.PolkadotAdapter; } });
|
|
111
|
+
Object.defineProperty(exports, "createPolkadotAdapter", { enumerable: true, get: function () { return polkadot_1.createPolkadotAdapter; } });
|
|
112
|
+
Object.defineProperty(exports, "createKusamaAdapter", { enumerable: true, get: function () { return polkadot_1.createKusamaAdapter; } });
|
|
113
|
+
Object.defineProperty(exports, "createPolkadotWestendAdapter", { enumerable: true, get: function () { return polkadot_1.createPolkadotWestendAdapter; } });
|
|
114
|
+
// Chain Adapters — UTXO (P2PKH)
|
|
115
|
+
var dogecoin_litecoin_1 = require("./chains/dogecoin-litecoin");
|
|
116
|
+
Object.defineProperty(exports, "DogecoinLitecoinAdapter", { enumerable: true, get: function () { return dogecoin_litecoin_1.DogecoinLitecoinAdapter; } });
|
|
117
|
+
Object.defineProperty(exports, "createDogecoinAdapter", { enumerable: true, get: function () { return dogecoin_litecoin_1.createDogecoinAdapter; } });
|
|
118
|
+
Object.defineProperty(exports, "createLitecoinAdapter", { enumerable: true, get: function () { return dogecoin_litecoin_1.createLitecoinAdapter; } });
|
|
119
|
+
Object.defineProperty(exports, "createBitcoinCashAdapter", { enumerable: true, get: function () { return dogecoin_litecoin_1.createBitcoinCashAdapter; } });
|
|
120
|
+
Object.defineProperty(exports, "createBitcoinSVAdapter", { enumerable: true, get: function () { return dogecoin_litecoin_1.createBitcoinSVAdapter; } });
|
|
121
|
+
// Chain Adapters — New Non-EVM
|
|
122
|
+
var multiversx_1 = require("./chains/multiversx");
|
|
123
|
+
Object.defineProperty(exports, "MultiversXAdapter", { enumerable: true, get: function () { return multiversx_1.MultiversXAdapter; } });
|
|
124
|
+
Object.defineProperty(exports, "createMultiversXAdapter", { enumerable: true, get: function () { return multiversx_1.createMultiversXAdapter; } });
|
|
125
|
+
Object.defineProperty(exports, "createMultiversXDevnetAdapter", { enumerable: true, get: function () { return multiversx_1.createMultiversXDevnetAdapter; } });
|
|
126
|
+
var kaspa_1 = require("./chains/kaspa");
|
|
127
|
+
Object.defineProperty(exports, "KaspaAdapter", { enumerable: true, get: function () { return kaspa_1.KaspaAdapter; } });
|
|
128
|
+
Object.defineProperty(exports, "createKaspaAdapter", { enumerable: true, get: function () { return kaspa_1.createKaspaAdapter; } });
|
|
129
|
+
Object.defineProperty(exports, "createKaspaTestnetAdapter", { enumerable: true, get: function () { return kaspa_1.createKaspaTestnetAdapter; } });
|
|
130
|
+
var hedera_1 = require("./chains/hedera");
|
|
131
|
+
Object.defineProperty(exports, "HederaAdapter", { enumerable: true, get: function () { return hedera_1.HederaAdapter; } });
|
|
132
|
+
Object.defineProperty(exports, "createHederaAdapter", { enumerable: true, get: function () { return hedera_1.createHederaAdapter; } });
|
|
133
|
+
Object.defineProperty(exports, "createHederaTestnetAdapter", { enumerable: true, get: function () { return hedera_1.createHederaTestnetAdapter; } });
|
|
134
|
+
var icp_1 = require("./chains/icp");
|
|
135
|
+
Object.defineProperty(exports, "IcpAdapter", { enumerable: true, get: function () { return icp_1.IcpAdapter; } });
|
|
136
|
+
Object.defineProperty(exports, "createIcpAdapter", { enumerable: true, get: function () { return icp_1.createIcpAdapter; } });
|
|
62
137
|
// Bitcoin Taproot Adapter (full P2TR lifecycle)
|
|
63
138
|
var bitcoin_taproot_1 = require("./chains/bitcoin-taproot");
|
|
64
139
|
Object.defineProperty(exports, "BitcoinTaprootAdapter", { enumerable: true, get: function () { return bitcoin_taproot_1.BitcoinTaprootAdapter; } });
|
|
@@ -71,6 +146,18 @@ Object.defineProperty(exports, "ENTRYPOINT_V07_ADDRESS", { enumerable: true, get
|
|
|
71
146
|
Object.defineProperty(exports, "FACTORY_ADDRESSES", { enumerable: true, get: function () { return erc4337_1.FACTORY_ADDRESSES; } });
|
|
72
147
|
Object.defineProperty(exports, "DEFAULT_BUNDLER_URLS", { enumerable: true, get: function () { return erc4337_1.DEFAULT_BUNDLER_URLS; } });
|
|
73
148
|
Object.defineProperty(exports, "AA_CHAIN_IDS", { enumerable: true, get: function () { return erc4337_1.AA_CHAIN_IDS; } });
|
|
149
|
+
// K3: Settlement
|
|
150
|
+
var settlement_1 = require("./settlement/settlement");
|
|
151
|
+
Object.defineProperty(exports, "SettlementClient", { enumerable: true, get: function () { return settlement_1.SettlementClient; } });
|
|
152
|
+
// K5: Verifiable Solvency Protocol
|
|
153
|
+
var solvency_1 = require("./core/solvency");
|
|
154
|
+
Object.defineProperty(exports, "SolvencyClient", { enumerable: true, get: function () { return solvency_1.SolvencyClient; } });
|
|
155
|
+
// K6: WITNESS — Decentralized Cryptographic Witness Network
|
|
156
|
+
var witness_1 = require("./core/witness");
|
|
157
|
+
Object.defineProperty(exports, "WitnessClient", { enumerable: true, get: function () { return witness_1.WitnessClient; } });
|
|
158
|
+
// K7: Universal Account — One Wallet, All Chains
|
|
159
|
+
var universal_account_1 = require("./core/universal-account");
|
|
160
|
+
Object.defineProperty(exports, "UniversalAccountClient", { enumerable: true, get: function () { return universal_account_1.UniversalAccountClient; } });
|
|
74
161
|
// Utilities
|
|
75
162
|
var http_1 = require("./utils/http");
|
|
76
163
|
Object.defineProperty(exports, "HttpClient", { enumerable: true, get: function () { return http_1.HttpClient; } });
|
|
@@ -123,5 +210,5 @@ Object.defineProperty(exports, "ChainError", { enumerable: true, get: function (
|
|
|
123
210
|
Object.defineProperty(exports, "InvalidResponseError", { enumerable: true, get: function () { return errors_1.InvalidResponseError; } });
|
|
124
211
|
Object.defineProperty(exports, "ValidationError", { enumerable: true, get: function () { return errors_1.ValidationError; } });
|
|
125
212
|
// Version
|
|
126
|
-
exports.VERSION = '
|
|
213
|
+
exports.VERSION = '2.0.0';
|
|
127
214
|
//# 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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* K3: Universal Settlement Network -- multilateral netting + atomic settlement
|
|
3
|
+
*
|
|
4
|
+
* Provides a settlement layer for batching and netting payment intents across
|
|
5
|
+
* multiple wallets and chains. Instead of executing every individual transfer
|
|
6
|
+
* on-chain, the settlement engine accumulates intents during a cycle, computes
|
|
7
|
+
* net positions via multilateral netting, and settles only the net amounts
|
|
8
|
+
* atomically using K2 cross-chain signing.
|
|
9
|
+
*
|
|
10
|
+
* Settlement cycles:
|
|
11
|
+
* 1. OPEN -- intents are accepted and queued
|
|
12
|
+
* 2. NETTING -- cycle closes, net positions are computed (off-chain)
|
|
13
|
+
* 3. SETTLING -- atomic signing + broadcast of net transfers (via K2)
|
|
14
|
+
* 4. COMPLETE -- all net transfers confirmed on-chain
|
|
15
|
+
* 5. FAILED -- one or more net transfers could not settle
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* ```typescript
|
|
19
|
+
* import { Sequence0 } from '@sequence0/sdk';
|
|
20
|
+
*
|
|
21
|
+
* const s0 = new Sequence0({ network: 'mainnet', ownerPrivateKey: '0x...' });
|
|
22
|
+
* const settlement = s0.getSettlementClient();
|
|
23
|
+
*
|
|
24
|
+
* // Submit a payment intent
|
|
25
|
+
* const { intentHash, cycleId } = await settlement.submitIntent(
|
|
26
|
+
* {
|
|
27
|
+
* senderWalletId: 'alice-eth-wallet',
|
|
28
|
+
* recipientWalletId: 'bob-eth-wallet',
|
|
29
|
+
* chain: 'ethereum',
|
|
30
|
+
* amount: '1000000000000000000', // 1 ETH
|
|
31
|
+
* },
|
|
32
|
+
* ownerSignature,
|
|
33
|
+
* timestamp,
|
|
34
|
+
* );
|
|
35
|
+
*
|
|
36
|
+
* // Check current cycle status
|
|
37
|
+
* const cycle = await settlement.getCurrentCycle();
|
|
38
|
+
* console.log(cycle.status); // 'open' | 'netting' | 'settling' | 'complete'
|
|
39
|
+
* ```
|
|
40
|
+
*/
|
|
41
|
+
import { Chain } from '../core/types';
|
|
42
|
+
import { HttpClient } from '../utils/http';
|
|
43
|
+
export interface SettlementIntent {
|
|
44
|
+
/** Wallet ID of the sender */
|
|
45
|
+
senderWalletId: string;
|
|
46
|
+
/** Wallet ID of the recipient */
|
|
47
|
+
recipientWalletId: string;
|
|
48
|
+
/** Target blockchain for settlement */
|
|
49
|
+
chain: Chain;
|
|
50
|
+
/** Amount in the chain's smallest denomination (e.g. wei, lamports) */
|
|
51
|
+
amount: string;
|
|
52
|
+
/** Token contract address. Omit for native token transfers. */
|
|
53
|
+
token?: string;
|
|
54
|
+
}
|
|
55
|
+
export interface SettlementCycle {
|
|
56
|
+
/** Unique cycle identifier */
|
|
57
|
+
cycleId: number;
|
|
58
|
+
/** Current cycle status */
|
|
59
|
+
status: 'open' | 'netting' | 'settling' | 'complete' | 'failed';
|
|
60
|
+
/** Number of intents in this cycle */
|
|
61
|
+
intentCount: number;
|
|
62
|
+
/** Unix timestamp when the cycle opened */
|
|
63
|
+
openedAt: number;
|
|
64
|
+
/** Unix timestamp when the cycle closed (undefined if still open) */
|
|
65
|
+
closedAt?: number;
|
|
66
|
+
}
|
|
67
|
+
export interface NetPosition {
|
|
68
|
+
/** Sender wallet ID (after netting) */
|
|
69
|
+
senderWallet: string;
|
|
70
|
+
/** Recipient wallet ID (after netting) */
|
|
71
|
+
recipientWallet: string;
|
|
72
|
+
/** Chain for this net transfer */
|
|
73
|
+
chain: string;
|
|
74
|
+
/** Net amount to transfer (smallest denomination) */
|
|
75
|
+
netAmount: string;
|
|
76
|
+
}
|
|
77
|
+
export interface SettlementResult {
|
|
78
|
+
/** Cycle that was settled */
|
|
79
|
+
cycleId: number;
|
|
80
|
+
/** K2 atomic manifest ID used for settlement */
|
|
81
|
+
manifestId: string;
|
|
82
|
+
/** Final status */
|
|
83
|
+
status: 'complete' | 'failed';
|
|
84
|
+
/** Computed net positions that were settled */
|
|
85
|
+
netPositions: NetPosition[];
|
|
86
|
+
/** Error message if settlement failed */
|
|
87
|
+
error?: string;
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Settlement client for K3 Universal Settlement Network.
|
|
91
|
+
*
|
|
92
|
+
* Communicates with settlement endpoints on the agent node to submit
|
|
93
|
+
* payment intents, query cycle status, and retrieve settlement history.
|
|
94
|
+
*/
|
|
95
|
+
export declare class SettlementClient {
|
|
96
|
+
private httpClient;
|
|
97
|
+
/**
|
|
98
|
+
* Create a new SettlementClient
|
|
99
|
+
*
|
|
100
|
+
* @param baseUrl - Agent node REST API URL
|
|
101
|
+
* @param httpClient - Shared HttpClient instance for making requests
|
|
102
|
+
*/
|
|
103
|
+
constructor(baseUrl: string, httpClient: HttpClient);
|
|
104
|
+
/**
|
|
105
|
+
* Submit a payment intent to the current open settlement cycle.
|
|
106
|
+
*
|
|
107
|
+
* The intent is queued for netting when the cycle closes. The caller must
|
|
108
|
+
* provide an ownership proof (signature + timestamp) to authorize the
|
|
109
|
+
* sender wallet.
|
|
110
|
+
*
|
|
111
|
+
* @param intent - Payment intent details
|
|
112
|
+
* @param ownerSignature - EIP-712 ownership proof signature (hex string)
|
|
113
|
+
* @param timestamp - Unix timestamp used in the ownership proof
|
|
114
|
+
* @returns The intent hash and the cycle it was assigned to
|
|
115
|
+
*
|
|
116
|
+
* @throws {Sequence0Error} If the intent is invalid or the cycle is not open
|
|
117
|
+
* @throws {NetworkError} If the agent is unreachable
|
|
118
|
+
*/
|
|
119
|
+
submitIntent(intent: SettlementIntent, ownerSignature: string, timestamp: number): Promise<{
|
|
120
|
+
intentHash: string;
|
|
121
|
+
cycleId: number;
|
|
122
|
+
}>;
|
|
123
|
+
/**
|
|
124
|
+
* Get the current open settlement cycle.
|
|
125
|
+
*
|
|
126
|
+
* @returns Current cycle status
|
|
127
|
+
* @throws {NetworkError} If the agent is unreachable
|
|
128
|
+
*/
|
|
129
|
+
getCurrentCycle(): Promise<SettlementCycle>;
|
|
130
|
+
/**
|
|
131
|
+
* Get a specific settlement cycle by ID.
|
|
132
|
+
*
|
|
133
|
+
* @param cycleId - The cycle ID to look up
|
|
134
|
+
* @returns Cycle status and details
|
|
135
|
+
* @throws {Sequence0Error} If the cycle is not found
|
|
136
|
+
* @throws {NetworkError} If the agent is unreachable
|
|
137
|
+
*/
|
|
138
|
+
getCycle(cycleId: number): Promise<SettlementCycle>;
|
|
139
|
+
/**
|
|
140
|
+
* Get settlement cycle history.
|
|
141
|
+
*
|
|
142
|
+
* @param limit - Max number of cycles to return (default: 20)
|
|
143
|
+
* @returns Array of settlement cycles, most recent first
|
|
144
|
+
* @throws {NetworkError} If the agent is unreachable
|
|
145
|
+
*/
|
|
146
|
+
getCycleHistory(limit?: number): Promise<SettlementCycle[]>;
|
|
147
|
+
/**
|
|
148
|
+
* Map a raw cycle response from the agent to the SettlementCycle interface.
|
|
149
|
+
*/
|
|
150
|
+
private mapCycleResponse;
|
|
151
|
+
}
|
|
152
|
+
//# sourceMappingURL=settlement.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"settlement.d.ts","sourceRoot":"","sources":["../../src/settlement/settlement.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAK3C,MAAM,WAAW,gBAAgB;IAC7B,8BAA8B;IAC9B,cAAc,EAAE,MAAM,CAAC;IACvB,iCAAiC;IACjC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,uCAAuC;IACvC,KAAK,EAAE,KAAK,CAAC;IACb,uEAAuE;IACvE,MAAM,EAAE,MAAM,CAAC;IACf,+DAA+D;IAC/D,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAID,MAAM,WAAW,eAAe;IAC5B,8BAA8B;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,2BAA2B;IAC3B,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,UAAU,GAAG,UAAU,GAAG,QAAQ,CAAC;IAChE,sCAAsC;IACtC,WAAW,EAAE,MAAM,CAAC;IACpB,2CAA2C;IAC3C,QAAQ,EAAE,MAAM,CAAC;IACjB,qEAAqE;IACrE,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAID,MAAM,WAAW,WAAW;IACxB,uCAAuC;IACvC,YAAY,EAAE,MAAM,CAAC;IACrB,0CAA0C;IAC1C,eAAe,EAAE,MAAM,CAAC;IACxB,kCAAkC;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,qDAAqD;IACrD,SAAS,EAAE,MAAM,CAAC;CACrB;AAID,MAAM,WAAW,gBAAgB;IAC7B,6BAA6B;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,gDAAgD;IAChD,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB;IACnB,MAAM,EAAE,UAAU,GAAG,QAAQ,CAAC;IAC9B,+CAA+C;IAC/C,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,yCAAyC;IACzC,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAID;;;;;GAKG;AACH,qBAAa,gBAAgB;IACzB,OAAO,CAAC,UAAU,CAAa;IAE/B;;;;;OAKG;gBACS,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU;IAInD;;;;;;;;;;;;;;OAcG;IACG,YAAY,CACd,MAAM,EAAE,gBAAgB,EACxB,cAAc,EAAE,MAAM,EACtB,SAAS,EAAE,MAAM,GAClB,OAAO,CAAC;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IA0CnD;;;;;OAKG;IACG,eAAe,IAAI,OAAO,CAAC,eAAe,CAAC;IAYjD;;;;;;;OAOG;IACG,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAgBzD;;;;;;OAMG;IACG,eAAe,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAuBjE;;OAEG;IACH,OAAO,CAAC,gBAAgB;CA0B3B"}
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* K3: Universal Settlement Network -- multilateral netting + atomic settlement
|
|
4
|
+
*
|
|
5
|
+
* Provides a settlement layer for batching and netting payment intents across
|
|
6
|
+
* multiple wallets and chains. Instead of executing every individual transfer
|
|
7
|
+
* on-chain, the settlement engine accumulates intents during a cycle, computes
|
|
8
|
+
* net positions via multilateral netting, and settles only the net amounts
|
|
9
|
+
* atomically using K2 cross-chain signing.
|
|
10
|
+
*
|
|
11
|
+
* Settlement cycles:
|
|
12
|
+
* 1. OPEN -- intents are accepted and queued
|
|
13
|
+
* 2. NETTING -- cycle closes, net positions are computed (off-chain)
|
|
14
|
+
* 3. SETTLING -- atomic signing + broadcast of net transfers (via K2)
|
|
15
|
+
* 4. COMPLETE -- all net transfers confirmed on-chain
|
|
16
|
+
* 5. FAILED -- one or more net transfers could not settle
|
|
17
|
+
*
|
|
18
|
+
* @example
|
|
19
|
+
* ```typescript
|
|
20
|
+
* import { Sequence0 } from '@sequence0/sdk';
|
|
21
|
+
*
|
|
22
|
+
* const s0 = new Sequence0({ network: 'mainnet', ownerPrivateKey: '0x...' });
|
|
23
|
+
* const settlement = s0.getSettlementClient();
|
|
24
|
+
*
|
|
25
|
+
* // Submit a payment intent
|
|
26
|
+
* const { intentHash, cycleId } = await settlement.submitIntent(
|
|
27
|
+
* {
|
|
28
|
+
* senderWalletId: 'alice-eth-wallet',
|
|
29
|
+
* recipientWalletId: 'bob-eth-wallet',
|
|
30
|
+
* chain: 'ethereum',
|
|
31
|
+
* amount: '1000000000000000000', // 1 ETH
|
|
32
|
+
* },
|
|
33
|
+
* ownerSignature,
|
|
34
|
+
* timestamp,
|
|
35
|
+
* );
|
|
36
|
+
*
|
|
37
|
+
* // Check current cycle status
|
|
38
|
+
* const cycle = await settlement.getCurrentCycle();
|
|
39
|
+
* console.log(cycle.status); // 'open' | 'netting' | 'settling' | 'complete'
|
|
40
|
+
* ```
|
|
41
|
+
*/
|
|
42
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
43
|
+
exports.SettlementClient = void 0;
|
|
44
|
+
const errors_1 = require("../utils/errors");
|
|
45
|
+
// ── Settlement Client ──
|
|
46
|
+
/**
|
|
47
|
+
* Settlement client for K3 Universal Settlement Network.
|
|
48
|
+
*
|
|
49
|
+
* Communicates with settlement endpoints on the agent node to submit
|
|
50
|
+
* payment intents, query cycle status, and retrieve settlement history.
|
|
51
|
+
*/
|
|
52
|
+
class SettlementClient {
|
|
53
|
+
/**
|
|
54
|
+
* Create a new SettlementClient
|
|
55
|
+
*
|
|
56
|
+
* @param baseUrl - Agent node REST API URL
|
|
57
|
+
* @param httpClient - Shared HttpClient instance for making requests
|
|
58
|
+
*/
|
|
59
|
+
constructor(baseUrl, httpClient) {
|
|
60
|
+
this.httpClient = httpClient;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Submit a payment intent to the current open settlement cycle.
|
|
64
|
+
*
|
|
65
|
+
* The intent is queued for netting when the cycle closes. The caller must
|
|
66
|
+
* provide an ownership proof (signature + timestamp) to authorize the
|
|
67
|
+
* sender wallet.
|
|
68
|
+
*
|
|
69
|
+
* @param intent - Payment intent details
|
|
70
|
+
* @param ownerSignature - EIP-712 ownership proof signature (hex string)
|
|
71
|
+
* @param timestamp - Unix timestamp used in the ownership proof
|
|
72
|
+
* @returns The intent hash and the cycle it was assigned to
|
|
73
|
+
*
|
|
74
|
+
* @throws {Sequence0Error} If the intent is invalid or the cycle is not open
|
|
75
|
+
* @throws {NetworkError} If the agent is unreachable
|
|
76
|
+
*/
|
|
77
|
+
async submitIntent(intent, ownerSignature, timestamp) {
|
|
78
|
+
if (!intent.senderWalletId || typeof intent.senderWalletId !== 'string') {
|
|
79
|
+
throw new errors_1.Sequence0Error('senderWalletId must be a non-empty string');
|
|
80
|
+
}
|
|
81
|
+
if (!intent.recipientWalletId || typeof intent.recipientWalletId !== 'string') {
|
|
82
|
+
throw new errors_1.Sequence0Error('recipientWalletId must be a non-empty string');
|
|
83
|
+
}
|
|
84
|
+
if (!intent.amount || typeof intent.amount !== 'string') {
|
|
85
|
+
throw new errors_1.Sequence0Error('amount must be a non-empty string');
|
|
86
|
+
}
|
|
87
|
+
if (!ownerSignature || typeof ownerSignature !== 'string') {
|
|
88
|
+
throw new errors_1.Sequence0Error('ownerSignature must be a non-empty string');
|
|
89
|
+
}
|
|
90
|
+
if (typeof timestamp !== 'number' || timestamp <= 0) {
|
|
91
|
+
throw new errors_1.Sequence0Error('timestamp must be a positive number');
|
|
92
|
+
}
|
|
93
|
+
const response = await this.httpClient.post('/settlement/submit-intent', {
|
|
94
|
+
sender_wallet_id: intent.senderWalletId,
|
|
95
|
+
recipient_wallet_id: intent.recipientWalletId,
|
|
96
|
+
chain: intent.chain,
|
|
97
|
+
amount: intent.amount,
|
|
98
|
+
token: intent.token,
|
|
99
|
+
owner_signature: ownerSignature,
|
|
100
|
+
timestamp,
|
|
101
|
+
});
|
|
102
|
+
if (!response || typeof response.intent_hash !== 'string') {
|
|
103
|
+
throw new errors_1.Sequence0Error('Invalid response from /settlement/submit-intent: missing intent_hash');
|
|
104
|
+
}
|
|
105
|
+
return {
|
|
106
|
+
intentHash: response.intent_hash,
|
|
107
|
+
cycleId: response.cycle_id,
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Get the current open settlement cycle.
|
|
112
|
+
*
|
|
113
|
+
* @returns Current cycle status
|
|
114
|
+
* @throws {NetworkError} If the agent is unreachable
|
|
115
|
+
*/
|
|
116
|
+
async getCurrentCycle() {
|
|
117
|
+
const response = await this.httpClient.get('/settlement/cycle/current');
|
|
118
|
+
return this.mapCycleResponse(response);
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Get a specific settlement cycle by ID.
|
|
122
|
+
*
|
|
123
|
+
* @param cycleId - The cycle ID to look up
|
|
124
|
+
* @returns Cycle status and details
|
|
125
|
+
* @throws {Sequence0Error} If the cycle is not found
|
|
126
|
+
* @throws {NetworkError} If the agent is unreachable
|
|
127
|
+
*/
|
|
128
|
+
async getCycle(cycleId) {
|
|
129
|
+
if (typeof cycleId !== 'number' || cycleId < 0) {
|
|
130
|
+
throw new errors_1.Sequence0Error('cycleId must be a non-negative number');
|
|
131
|
+
}
|
|
132
|
+
const response = await this.httpClient.get(`/settlement/cycle/${cycleId}`);
|
|
133
|
+
return this.mapCycleResponse(response);
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* Get settlement cycle history.
|
|
137
|
+
*
|
|
138
|
+
* @param limit - Max number of cycles to return (default: 20)
|
|
139
|
+
* @returns Array of settlement cycles, most recent first
|
|
140
|
+
* @throws {NetworkError} If the agent is unreachable
|
|
141
|
+
*/
|
|
142
|
+
async getCycleHistory(limit) {
|
|
143
|
+
const queryLimit = limit && limit > 0 ? limit : 20;
|
|
144
|
+
const response = await this.httpClient.get(`/settlement/history?limit=${queryLimit}`);
|
|
145
|
+
if (!response || !Array.isArray(response.cycles)) {
|
|
146
|
+
throw new errors_1.Sequence0Error('Invalid response from /settlement/history: missing cycles array');
|
|
147
|
+
}
|
|
148
|
+
return response.cycles.map((c) => this.mapCycleResponse(c));
|
|
149
|
+
}
|
|
150
|
+
// ── Internals ──
|
|
151
|
+
/**
|
|
152
|
+
* Map a raw cycle response from the agent to the SettlementCycle interface.
|
|
153
|
+
*/
|
|
154
|
+
mapCycleResponse(response) {
|
|
155
|
+
if (!response || typeof response.cycle_id !== 'number') {
|
|
156
|
+
throw new errors_1.Sequence0Error('Invalid settlement cycle response: missing cycle_id');
|
|
157
|
+
}
|
|
158
|
+
const validStatuses = ['open', 'netting', 'settling', 'complete', 'failed'];
|
|
159
|
+
const status = validStatuses.includes(response.status)
|
|
160
|
+
? response.status
|
|
161
|
+
: 'open';
|
|
162
|
+
return {
|
|
163
|
+
cycleId: response.cycle_id,
|
|
164
|
+
status,
|
|
165
|
+
intentCount: response.intent_count ?? 0,
|
|
166
|
+
openedAt: response.opened_at ?? 0,
|
|
167
|
+
closedAt: response.closed_at,
|
|
168
|
+
};
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
exports.SettlementClient = SettlementClient;
|
|
172
|
+
//# sourceMappingURL=settlement.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"settlement.js","sourceRoot":"","sources":["../../src/settlement/settlement.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/eip712.js
CHANGED
|
@@ -29,8 +29,8 @@ function abiEncode(slots) {
|
|
|
29
29
|
}
|
|
30
30
|
/** WalletFactory contract addresses (EIP-712 verifyingContract) */
|
|
31
31
|
exports.WALLET_FACTORY_ADDRESSES = {
|
|
32
|
-
testnet: '
|
|
33
|
-
mainnet: '
|
|
32
|
+
testnet: '0x0fdb2d2147b80fd2e9ad4b8d1a70b68c1353afe3',
|
|
33
|
+
mainnet: '0x05b4df6ab0684bcc82a4a92677e4b46007638604',
|
|
34
34
|
};
|
|
35
35
|
/** Sequence0 chain IDs (EIP-712 chainId) */
|
|
36
36
|
exports.SEQUENCE0_CHAIN_IDS = {
|
package/dist/utils/fee.d.ts
CHANGED
|
@@ -12,8 +12,8 @@
|
|
|
12
12
|
* ```typescript
|
|
13
13
|
* const fee = new FeeManager({
|
|
14
14
|
* rpcUrl: 'https://rpc.sequence0.network',
|
|
15
|
-
* feeCollectorAddress: '
|
|
16
|
-
* registryAddress: '
|
|
15
|
+
* feeCollectorAddress: '0xccd70007534c33b0ab3997d81207fea5e59ca54a',
|
|
16
|
+
* registryAddress: '0xdefa5ab7ea6a87ac51628f4cde55bb4d49e62f50',
|
|
17
17
|
* });
|
|
18
18
|
*
|
|
19
19
|
* // Get the current per-signature fee
|
package/dist/utils/fee.js
CHANGED
|
@@ -13,8 +13,8 @@
|
|
|
13
13
|
* ```typescript
|
|
14
14
|
* const fee = new FeeManager({
|
|
15
15
|
* rpcUrl: 'https://rpc.sequence0.network',
|
|
16
|
-
* feeCollectorAddress: '
|
|
17
|
-
* registryAddress: '
|
|
16
|
+
* feeCollectorAddress: '0xccd70007534c33b0ab3997d81207fea5e59ca54a',
|
|
17
|
+
* registryAddress: '0xdefa5ab7ea6a87ac51628f4cde55bb4d49e62f50',
|
|
18
18
|
* });
|
|
19
19
|
*
|
|
20
20
|
* // Get the current per-signature fee
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Optional Dependency Loader
|
|
3
|
+
*
|
|
4
|
+
* Chain adapters use optional peer dependencies to avoid bloating
|
|
5
|
+
* the SDK with every chain's SDK. This helper provides a clear
|
|
6
|
+
* error when a required package isn't installed.
|
|
7
|
+
*/
|
|
8
|
+
export declare function requireOptionalDependency(packageName: string, chainName: string): any;
|
|
9
|
+
//# sourceMappingURL=optional-deps.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"optional-deps.d.ts","sourceRoot":"","sources":["../../src/utils/optional-deps.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,wBAAgB,yBAAyB,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,GAAG,CAUrF"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Optional Dependency Loader
|
|
4
|
+
*
|
|
5
|
+
* Chain adapters use optional peer dependencies to avoid bloating
|
|
6
|
+
* the SDK with every chain's SDK. This helper provides a clear
|
|
7
|
+
* error when a required package isn't installed.
|
|
8
|
+
*/
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.requireOptionalDependency = requireOptionalDependency;
|
|
11
|
+
const errors_1 = require("./errors");
|
|
12
|
+
function requireOptionalDependency(packageName, chainName) {
|
|
13
|
+
try {
|
|
14
|
+
return require(packageName);
|
|
15
|
+
}
|
|
16
|
+
catch {
|
|
17
|
+
throw new errors_1.ChainError(`Chain '${chainName}' requires the '${packageName}' package. ` +
|
|
18
|
+
`Install it: npm install ${packageName}`, chainName);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=optional-deps.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"optional-deps.js","sourceRoot":"","sources":["../../src/utils/optional-deps.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAIH,8DAUC;AAZD,qCAAsC;AAEtC,SAAgB,yBAAyB,CAAC,WAAmB,EAAE,SAAiB;IAC5E,IAAI,CAAC;QACD,OAAO,OAAO,CAAC,WAAW,CAAC,CAAC;IAChC,CAAC;IAAC,MAAM,CAAC;QACL,MAAM,IAAI,mBAAU,CAChB,UAAU,SAAS,mBAAmB,WAAW,aAAa;YAC9D,2BAA2B,WAAW,EAAE,EACxC,SAAS,CACZ,CAAC;IACN,CAAC;AACL,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/utils/validation.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EACR,KAAK,EACL,WAAW,EACX,YAAY,EACZ,kBAAkB,EAClB,cAAc,EACd,cAAc,EACd,eAAe,EAClB,MAAM,eAAe,CAAC;AAgCvB;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,WAAW,CA2ChF;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG;IACpE,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB,CA2CA;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,YAAY,CAmClF;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,kBAAkB,CAiE9F;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,cAAc,CAmBtF;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,cAAc,CA2BtF;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,eAAe,CAsCxF;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAsB/G;
|
|
1
|
+
{"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/utils/validation.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EACR,KAAK,EACL,WAAW,EACX,YAAY,EACZ,kBAAkB,EAClB,cAAc,EACd,cAAc,EACd,eAAe,EAClB,MAAM,eAAe,CAAC;AAgCvB;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,WAAW,CA2ChF;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG;IACpE,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB,CA2CA;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,YAAY,CAmClF;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,kBAAkB,CAiE9F;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,cAAc,CAmBtF;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,cAAc,CA2BtF;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,eAAe,CAsCxF;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAsB/G;AAmDD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,OAAO,GAAG,MAAM,CAuB1D;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,CAgBnD;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,GAAG,MAAM,CAyCtE;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,OAAO,EAAE,SAAS,SAAW,GAAG,MAAM,CA8B5E;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,SAAU,GAAG,MAAM,GAAG,MAAM,CAwCzF;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,SAAY,GAAG,MAAM,CAgBlF;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,OAAO,GAAG;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAiC9E"}
|
package/dist/utils/validation.js
CHANGED
|
@@ -235,10 +235,13 @@ const SUPPORTED_CHAINS = [
|
|
|
235
235
|
'zora', 'sei', 'boba', 'taiko', 'opbnb', 'fraxtal', 'worldchain',
|
|
236
236
|
'lisk', 'redstone', 'cyber', 'mint', 'bob', 'xai', 'morph',
|
|
237
237
|
'astar-zkevm',
|
|
238
|
+
'berachain', 'sonic', 'abstract', 'ink', 'unichain',
|
|
239
|
+
'soneium', 'gravity', 'zklink-nova',
|
|
238
240
|
// Non-EVM
|
|
239
241
|
'bitcoin', 'solana', 'cosmos', 'near', 'sui', 'aptos',
|
|
240
242
|
'polkadot', 'cardano', 'tron', 'dogecoin', 'litecoin',
|
|
241
243
|
'stellar', 'ton', 'algorand', 'tezos', 'ripple',
|
|
244
|
+
'bitcoincash', 'bitcoinsv', 'multiversx', 'kaspa', 'hedera', 'icp',
|
|
242
245
|
];
|
|
243
246
|
/** EVM-compatible chains (use 0x addresses) */
|
|
244
247
|
const EVM_CHAINS = [
|
|
@@ -252,7 +255,9 @@ const EVM_CHAINS = [
|
|
|
252
255
|
'mantle', 'blast', 'mode', 'manta', 'polygon-zkevm', 'metis',
|
|
253
256
|
'zora', 'sei', 'boba', 'taiko', 'opbnb', 'fraxtal', 'worldchain',
|
|
254
257
|
'lisk', 'redstone', 'cyber', 'mint', 'bob', 'xai', 'morph',
|
|
255
|
-
'astar-zkevm',
|
|
258
|
+
'astar-zkevm',
|
|
259
|
+
'berachain', 'sonic', 'abstract', 'ink', 'unichain',
|
|
260
|
+
'soneium', 'gravity', 'zklink-nova',
|
|
256
261
|
];
|
|
257
262
|
/** Wallet ID: alphanumeric, hyphens, underscores, max 64 chars */
|
|
258
263
|
const WALLET_ID_PATTERN = /^[a-zA-Z0-9_-]{1,64}$/;
|