@rhinestone/sdk 1.0.0-alpha.0 → 1.0.0-alpha.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/dist/src/execution/compact.d.ts +4 -1
- package/dist/src/execution/compact.d.ts.map +1 -1
- package/dist/src/execution/compact.js +41 -0
- package/dist/src/execution/index.d.ts +3 -3
- package/dist/src/execution/index.d.ts.map +1 -1
- package/dist/src/execution/index.js +37 -13
- package/dist/src/execution/utils.d.ts +4 -4
- package/dist/src/execution/utils.d.ts.map +1 -1
- package/dist/src/execution/utils.js +1 -3
- package/dist/src/index.d.ts +4 -4
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +3 -3
- package/dist/src/orchestrator/client.d.ts +2 -2
- package/dist/src/orchestrator/client.d.ts.map +1 -1
- package/dist/src/orchestrator/client.js +16 -12
- package/dist/src/orchestrator/index.d.ts +2 -2
- package/dist/src/orchestrator/index.d.ts.map +1 -1
- package/dist/src/orchestrator/types.d.ts +60 -77
- package/dist/src/orchestrator/types.d.ts.map +1 -1
- package/dist/src/orchestrator/utils.d.ts +2 -3
- package/dist/src/orchestrator/utils.d.ts.map +1 -1
- package/dist/src/orchestrator/utils.js +3 -41
- package/package.json +1 -1
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
import { Address } from 'viem';
|
|
2
2
|
import { Call } from '../types';
|
|
3
|
+
declare const COMPACT_ADDRESS = "0xa2E6C7Ba8613E1534dCB990e7e4962216C0a5d58";
|
|
3
4
|
declare function getDepositEtherCall(account: Address, value: bigint): Call;
|
|
4
|
-
|
|
5
|
+
declare function getDepositErc20Call(account: Address, tokenAddress: Address, amount: bigint): Call;
|
|
6
|
+
declare function getApproveErc20Call(tokenAddress: Address, amount: bigint): Call;
|
|
7
|
+
export { COMPACT_ADDRESS, getDepositEtherCall, getDepositErc20Call, getApproveErc20Call, };
|
|
5
8
|
//# sourceMappingURL=compact.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compact.d.ts","sourceRoot":"","sources":["../../../execution/compact.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"compact.d.ts","sourceRoot":"","sources":["../../../execution/compact.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAqC,MAAM,MAAM,CAAA;AACjE,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAA;AAc/B,QAAA,MAAM,eAAe,+CAA+C,CAAA;AAKpE,iBAAS,mBAAmB,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAqBlE;AAED,iBAAS,mBAAmB,CAC1B,OAAO,EAAE,OAAO,EAChB,YAAY,EAAE,OAAO,EACrB,MAAM,EAAE,MAAM,GACb,IAAI,CA0BN;AAED,iBAAS,mBAAmB,CAAC,YAAY,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CASxE;AAoCD,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,GACpB,CAAA"}
|
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.COMPACT_ADDRESS = void 0;
|
|
3
4
|
exports.getDepositEtherCall = getDepositEtherCall;
|
|
5
|
+
exports.getDepositErc20Call = getDepositErc20Call;
|
|
6
|
+
exports.getApproveErc20Call = getApproveErc20Call;
|
|
4
7
|
const viem_1 = require("viem");
|
|
5
8
|
const COMPACT_ADDRESS = '0xa2E6C7Ba8613E1534dCB990e7e4962216C0a5d58';
|
|
9
|
+
exports.COMPACT_ADDRESS = COMPACT_ADDRESS;
|
|
6
10
|
const ALLOCATOR_ADDRESS = '0x9Ef7519F90C9B6828650Ff4913d663BB1f688507';
|
|
7
11
|
const DEFAULT_RESET_PERIOD = 3;
|
|
8
12
|
const DEFAULT_SCOPE = 0;
|
|
@@ -28,6 +32,43 @@ function getDepositEtherCall(account, value) {
|
|
|
28
32
|
value,
|
|
29
33
|
};
|
|
30
34
|
}
|
|
35
|
+
function getDepositErc20Call(account, tokenAddress, amount) {
|
|
36
|
+
return {
|
|
37
|
+
to: COMPACT_ADDRESS,
|
|
38
|
+
data: (0, viem_1.encodeFunctionData)({
|
|
39
|
+
abi: [
|
|
40
|
+
{
|
|
41
|
+
type: 'function',
|
|
42
|
+
name: 'depositERC20',
|
|
43
|
+
inputs: [
|
|
44
|
+
{
|
|
45
|
+
name: 'token',
|
|
46
|
+
type: 'address',
|
|
47
|
+
internalType: 'address',
|
|
48
|
+
},
|
|
49
|
+
{ name: 'lockTag', type: 'bytes12', internalType: 'bytes12' },
|
|
50
|
+
{ name: 'amount', type: 'uint256', internalType: 'uint256' },
|
|
51
|
+
{ name: 'recipient', type: 'address', internalType: 'address' },
|
|
52
|
+
],
|
|
53
|
+
outputs: [{ name: 'id', type: 'uint256', internalType: 'uint256' }],
|
|
54
|
+
stateMutability: 'nonpayable',
|
|
55
|
+
},
|
|
56
|
+
],
|
|
57
|
+
functionName: 'depositERC20',
|
|
58
|
+
args: [tokenAddress, lockTag(), amount, account],
|
|
59
|
+
}),
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
function getApproveErc20Call(tokenAddress, amount) {
|
|
63
|
+
return {
|
|
64
|
+
to: tokenAddress,
|
|
65
|
+
data: (0, viem_1.encodeFunctionData)({
|
|
66
|
+
abi: viem_1.erc20Abi,
|
|
67
|
+
functionName: 'approve',
|
|
68
|
+
args: [COMPACT_ADDRESS, amount],
|
|
69
|
+
}),
|
|
70
|
+
};
|
|
71
|
+
}
|
|
31
72
|
function toCompactFlag(allocator) {
|
|
32
73
|
const addrBytes = Buffer.from(allocator.slice(2), 'hex');
|
|
33
74
|
let leadingZeroNibbles = 0;
|
|
@@ -18,8 +18,8 @@ declare function waitForExecution(config: RhinestoneAccountConfig, result: Trans
|
|
|
18
18
|
userOpHash: import("viem").Hash;
|
|
19
19
|
}>;
|
|
20
20
|
declare function getMaxSpendableAmount(config: RhinestoneAccountConfig, chain: Chain, tokenAddress: Address, gasUnits: bigint): Promise<bigint>;
|
|
21
|
-
declare function getPortfolio(config: RhinestoneAccountConfig, onTestnets: boolean): Promise<import("../orchestrator").
|
|
22
|
-
declare function
|
|
23
|
-
export { sendTransaction, waitForExecution, getMaxSpendableAmount, getPortfolio,
|
|
21
|
+
declare function getPortfolio(config: RhinestoneAccountConfig, onTestnets: boolean): Promise<import("../orchestrator").Portfolio>;
|
|
22
|
+
declare function deposit(config: RhinestoneAccountConfig, chain: Chain, amount: bigint, tokenAddress?: Address): Promise<TransactionResult>;
|
|
23
|
+
export { sendTransaction, waitForExecution, getMaxSpendableAmount, getPortfolio, deposit, isExecutionError, IntentFailedError, ExecutionError, SourceChainRequiredForSmartSessionsError, SourceTargetChainMismatchError, UserOperationRequiredForSmartSessionsError, OrderPathRequiredForIntentsError, SessionChainRequiredError, };
|
|
24
24
|
export type { IntentData, TransactionResult };
|
|
25
25
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../execution/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../execution/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,KAAK,EAKX,MAAM,MAAM,CAAA;AAKb,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAQrD,OAAO,KAAK,EAEV,uBAAuB,EAGvB,WAAW,EACZ,MAAM,UAAU,CAAA;AAOjB,OAAO,EACL,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,gCAAgC,EAChC,yBAAyB,EACzB,wCAAwC,EACxC,8BAA8B,EAC9B,0CAA0C,EAC3C,MAAM,SAAS,CAAA;AAEhB,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAW5D,iBAAe,eAAe,CAC5B,MAAM,EAAE,uBAAuB,EAC/B,WAAW,EAAE,WAAW,8BAyBzB;AAyID,iBAAe,gBAAgB,CAC7B,MAAM,EAAE,uBAAuB,EAC/B,MAAM,EAAE,iBAAiB,EACzB,uBAAuB,EAAE,OAAO;;;;;;;;;;;;GAwCjC;AAED,iBAAe,qBAAqB,CAClC,MAAM,EAAE,uBAAuB,EAC/B,KAAK,EAAE,KAAK,EACZ,YAAY,EAAE,OAAO,EACrB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC,CASjB;AAED,iBAAe,YAAY,CACzB,MAAM,EAAE,uBAAuB,EAC/B,UAAU,EAAE,OAAO,gDAMpB;AAED,iBAAe,OAAO,CACpB,MAAM,EAAE,uBAAuB,EAC/B,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,YAAY,CAAC,EAAE,OAAO,8BAgDvB;AAED,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,qBAAqB,EACrB,YAAY,EACZ,OAAO,EAEP,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,wCAAwC,EACxC,8BAA8B,EAC9B,0CAA0C,EAC1C,gCAAgC,EAChC,yBAAyB,GAC1B,CAAA;AACD,YAAY,EAAE,UAAU,EAAE,iBAAiB,EAAE,CAAA"}
|
|
@@ -5,14 +5,13 @@ exports.sendTransaction = sendTransaction;
|
|
|
5
5
|
exports.waitForExecution = waitForExecution;
|
|
6
6
|
exports.getMaxSpendableAmount = getMaxSpendableAmount;
|
|
7
7
|
exports.getPortfolio = getPortfolio;
|
|
8
|
-
exports.
|
|
8
|
+
exports.deposit = deposit;
|
|
9
9
|
const viem_1 = require("viem");
|
|
10
10
|
const chains_1 = require("viem/chains");
|
|
11
11
|
const accounts_1 = require("../accounts");
|
|
12
12
|
const utils_1 = require("../accounts/utils");
|
|
13
13
|
const orchestrator_1 = require("../orchestrator");
|
|
14
14
|
const registry_1 = require("../orchestrator/registry");
|
|
15
|
-
const utils_2 = require("../orchestrator/utils");
|
|
16
15
|
const compact_1 = require("./compact");
|
|
17
16
|
const error_1 = require("./error");
|
|
18
17
|
Object.defineProperty(exports, "ExecutionError", { enumerable: true, get: function () { return error_1.ExecutionError; } });
|
|
@@ -24,7 +23,7 @@ Object.defineProperty(exports, "SourceChainRequiredForSmartSessionsError", { enu
|
|
|
24
23
|
Object.defineProperty(exports, "SourceTargetChainMismatchError", { enumerable: true, get: function () { return error_1.SourceTargetChainMismatchError; } });
|
|
25
24
|
Object.defineProperty(exports, "UserOperationRequiredForSmartSessionsError", { enumerable: true, get: function () { return error_1.UserOperationRequiredForSmartSessionsError; } });
|
|
26
25
|
const smart_session_1 = require("./smart-session");
|
|
27
|
-
const
|
|
26
|
+
const utils_2 = require("./utils");
|
|
28
27
|
const POLLING_INTERVAL = 500;
|
|
29
28
|
async function sendTransaction(config, transaction) {
|
|
30
29
|
if ('chain' in transaction) {
|
|
@@ -75,7 +74,7 @@ async function sendTransactionAsUserOp(config, sourceChain, targetChain, calls,
|
|
|
75
74
|
chain: sourceChain,
|
|
76
75
|
transport: (0, viem_1.http)(),
|
|
77
76
|
});
|
|
78
|
-
const validatorAccount = await (0,
|
|
77
|
+
const validatorAccount = await (0, utils_2.getValidatorAccount)(config, signers, publicClient, sourceChain);
|
|
79
78
|
if (!validatorAccount) {
|
|
80
79
|
throw new Error('No validator account found');
|
|
81
80
|
}
|
|
@@ -95,13 +94,12 @@ async function sendTransactionAsUserOp(config, sourceChain, targetChain, calls,
|
|
|
95
94
|
};
|
|
96
95
|
}
|
|
97
96
|
async function sendTransactionAsIntent(config, sourceChain, targetChain, calls, gasLimit, tokenRequests, accountAddress, signers) {
|
|
98
|
-
const { intentRoute, hash: intentHash } = await (0,
|
|
97
|
+
const { intentRoute, hash: intentHash } = await (0, utils_2.prepareTransactionAsIntent)(config, sourceChain, targetChain, calls, gasLimit, tokenRequests, accountAddress);
|
|
99
98
|
if (!intentRoute) {
|
|
100
99
|
throw new error_1.OrderPathRequiredForIntentsError();
|
|
101
100
|
}
|
|
102
|
-
const signature = await (0,
|
|
103
|
-
|
|
104
|
-
return await (0, utils_3.submitIntentInternal)(config, sourceChain, targetChain, parsedIntentOp, signature, true);
|
|
101
|
+
const signature = await (0, utils_2.signIntent)(config, sourceChain, targetChain, intentHash, signers);
|
|
102
|
+
return await (0, utils_2.submitIntentInternal)(config, sourceChain, targetChain, intentRoute.intentOp, signature, true);
|
|
105
103
|
}
|
|
106
104
|
async function waitForExecution(config, result, acceptsPreconfirmations) {
|
|
107
105
|
const validStatuses = new Set([
|
|
@@ -116,7 +114,7 @@ async function waitForExecution(config, result, acceptsPreconfirmations) {
|
|
|
116
114
|
case 'intent': {
|
|
117
115
|
let intentStatus = null;
|
|
118
116
|
while (intentStatus === null || !validStatuses.has(intentStatus.status)) {
|
|
119
|
-
const orchestrator = (0,
|
|
117
|
+
const orchestrator = (0, utils_2.getOrchestratorByChain)(result.targetChain, config.rhinestoneApiKey);
|
|
120
118
|
intentStatus = await orchestrator.getIntentOpStatus(result.id);
|
|
121
119
|
await new Promise((resolve) => setTimeout(resolve, POLLING_INTERVAL));
|
|
122
120
|
}
|
|
@@ -141,19 +139,45 @@ async function waitForExecution(config, result, acceptsPreconfirmations) {
|
|
|
141
139
|
}
|
|
142
140
|
async function getMaxSpendableAmount(config, chain, tokenAddress, gasUnits) {
|
|
143
141
|
const address = (0, accounts_1.getAddress)(config);
|
|
144
|
-
const orchestrator = (0,
|
|
142
|
+
const orchestrator = (0, utils_2.getOrchestratorByChain)(chain.id, config.rhinestoneApiKey);
|
|
145
143
|
return orchestrator.getMaxTokenAmount(address, chain.id, tokenAddress, gasUnits);
|
|
146
144
|
}
|
|
147
145
|
async function getPortfolio(config, onTestnets) {
|
|
148
146
|
const address = (0, accounts_1.getAddress)(config);
|
|
149
147
|
const chainId = onTestnets ? chains_1.sepolia.id : chains_1.mainnet.id;
|
|
150
|
-
const orchestrator = (0,
|
|
148
|
+
const orchestrator = (0, utils_2.getOrchestratorByChain)(chainId, config.rhinestoneApiKey);
|
|
151
149
|
return orchestrator.getPortfolio(address);
|
|
152
150
|
}
|
|
153
|
-
async function
|
|
151
|
+
async function deposit(config, chain, amount, tokenAddress) {
|
|
152
|
+
async function getCalls(address) {
|
|
153
|
+
if (!tokenAddress || tokenAddress === viem_1.zeroAddress) {
|
|
154
|
+
// ETH deposit
|
|
155
|
+
return [(0, compact_1.getDepositEtherCall)(address, amount)];
|
|
156
|
+
}
|
|
157
|
+
else {
|
|
158
|
+
// ERC20 deposit
|
|
159
|
+
const publicClient = (0, viem_1.createPublicClient)({
|
|
160
|
+
chain,
|
|
161
|
+
transport: (0, viem_1.http)(),
|
|
162
|
+
});
|
|
163
|
+
const allowance = await publicClient.readContract({
|
|
164
|
+
address: tokenAddress,
|
|
165
|
+
abi: viem_1.erc20Abi,
|
|
166
|
+
functionName: 'allowance',
|
|
167
|
+
args: [address, compact_1.COMPACT_ADDRESS],
|
|
168
|
+
});
|
|
169
|
+
const calls = [];
|
|
170
|
+
if (allowance < amount) {
|
|
171
|
+
calls.push((0, compact_1.getApproveErc20Call)(tokenAddress, amount));
|
|
172
|
+
}
|
|
173
|
+
calls.push((0, compact_1.getDepositErc20Call)(address, tokenAddress, amount));
|
|
174
|
+
return calls;
|
|
175
|
+
}
|
|
176
|
+
}
|
|
154
177
|
const address = (0, accounts_1.getAddress)(config);
|
|
155
178
|
const owners = config.owners;
|
|
156
|
-
|
|
179
|
+
const calls = await getCalls(address);
|
|
180
|
+
return await sendTransactionAsUserOp(config, chain, chain, calls, owners.type === 'ecdsa'
|
|
157
181
|
? {
|
|
158
182
|
type: 'owner',
|
|
159
183
|
kind: 'ecdsa',
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { Address, Chain, Hex } from 'viem';
|
|
1
|
+
import { Address, Chain, Hex, PublicClient } from 'viem';
|
|
2
2
|
import { UserOperation } from 'viem/account-abstraction';
|
|
3
|
-
import {
|
|
3
|
+
import { IntentOp, IntentRoute } from '../orchestrator';
|
|
4
4
|
import { Call, RhinestoneAccountConfig, SignerSet, TokenRequest, Transaction } from '../types';
|
|
5
5
|
type TransactionResult = {
|
|
6
6
|
type: 'userop';
|
|
@@ -36,8 +36,8 @@ declare function submitTransaction(config: RhinestoneAccountConfig, signedTransa
|
|
|
36
36
|
declare function prepareTransactionAsIntent(config: RhinestoneAccountConfig, sourceChain: Chain | undefined, targetChain: Chain, calls: Call[], gasLimit: bigint | undefined, tokenRequests: TokenRequest[], accountAddress: Address): Promise<IntentData>;
|
|
37
37
|
declare function signIntent(config: RhinestoneAccountConfig, sourceChain: Chain | undefined, targetChain: Chain, intentHash: Hex, signers?: SignerSet): Promise<`0x${string}`>;
|
|
38
38
|
declare function getOrchestratorByChain(chainId: number, apiKey: string): import("../orchestrator").Orchestrator;
|
|
39
|
-
declare function submitIntentInternal(config: RhinestoneAccountConfig, sourceChain: Chain | undefined, targetChain: Chain, intentOp:
|
|
40
|
-
declare function getValidatorAccount(config: RhinestoneAccountConfig, signers: SignerSet | undefined, publicClient:
|
|
39
|
+
declare function submitIntentInternal(config: RhinestoneAccountConfig, sourceChain: Chain | undefined, targetChain: Chain, intentOp: IntentOp, signature: Hex, deploy: boolean): Promise<TransactionResult>;
|
|
40
|
+
declare function getValidatorAccount(config: RhinestoneAccountConfig, signers: SignerSet | undefined, publicClient: PublicClient, chain: Chain): Promise<import("viem/account-abstraction").SmartAccount<import("viem/account-abstraction").SmartAccountImplementation<import("viem").Abi, "0.7">> | null | undefined>;
|
|
41
41
|
export { prepareTransaction, signTransaction, submitTransaction, getOrchestratorByChain, signIntent, prepareTransactionAsIntent, submitIntentInternal, getValidatorAccount, };
|
|
42
42
|
export type { IntentData, TransactionResult, PreparedTransactionData, SignedTransactionData, };
|
|
43
43
|
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../execution/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,KAAK,EAEL,GAAG,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../execution/utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,7 +17,6 @@ const core_1 = require("../modules/validators/core");
|
|
|
17
17
|
const orchestrator_1 = require("../orchestrator");
|
|
18
18
|
const consts_1 = require("../orchestrator/consts");
|
|
19
19
|
const registry_1 = require("../orchestrator/registry");
|
|
20
|
-
const utils_2 = require("../orchestrator/utils");
|
|
21
20
|
const error_1 = require("./error");
|
|
22
21
|
async function prepareTransaction(config, transaction) {
|
|
23
22
|
const { sourceChain, targetChain, tokenRequests, signers } = getTransactionParams(transaction);
|
|
@@ -238,8 +237,7 @@ async function submitUserOp(config, chain, userOp, signature) {
|
|
|
238
237
|
};
|
|
239
238
|
}
|
|
240
239
|
async function submitIntent(config, sourceChain, targetChain, intentOp, signature) {
|
|
241
|
-
|
|
242
|
-
return submitIntentInternal(config, sourceChain, targetChain, parsedIntentOp, signature, false);
|
|
240
|
+
return submitIntentInternal(config, sourceChain, targetChain, intentOp, signature, false);
|
|
243
241
|
}
|
|
244
242
|
function getOrchestratorByChain(chainId, apiKey) {
|
|
245
243
|
const orchestratorUrl = (0, registry_1.isTestnet)(chainId)
|
package/dist/src/index.d.ts
CHANGED
|
@@ -6,7 +6,7 @@ import type { TransactionResult } from './execution';
|
|
|
6
6
|
import { ExecutionError, IntentFailedError, isExecutionError, OrderPathRequiredForIntentsError, SessionChainRequiredError, SourceChainRequiredForSmartSessionsError, SourceTargetChainMismatchError, UserOperationRequiredForSmartSessionsError } from './execution';
|
|
7
7
|
import { SessionDetails } from './execution/smart-session';
|
|
8
8
|
import { IntentData, PreparedTransactionData, SignedTransactionData } from './execution/utils';
|
|
9
|
-
import { IntentCost, IntentInput, IntentOp, IntentOpStatus, IntentResult, IntentRoute,
|
|
9
|
+
import { IntentCost, IntentInput, IntentOp, IntentOpStatus, IntentResult, IntentRoute, Portfolio, SettlementSystem, SignedIntentOp } from './orchestrator';
|
|
10
10
|
import { AuthenticationRequiredError, InsufficientBalanceError, IntentNotFoundError, InvalidApiKeyError, InvalidIntentSignatureError, isOrchestratorError, NoPathFoundError, OnlyOneTargetTokenAmountCanBeUnsetError, OrchestratorError, TokenNotSupportedError, UnsupportedChainError, UnsupportedChainIdError, UnsupportedTokenError } from './orchestrator';
|
|
11
11
|
import type { Call, Execution, RhinestoneAccountConfig, Session, Transaction } from './types';
|
|
12
12
|
interface RhinestoneAccount {
|
|
@@ -18,7 +18,7 @@ interface RhinestoneAccount {
|
|
|
18
18
|
sendTransaction: (transaction: Transaction) => Promise<TransactionResult>;
|
|
19
19
|
waitForExecution: (result: TransactionResult, acceptsPreconfirmations?: boolean) => Promise<IntentOpStatus | UserOperationReceipt>;
|
|
20
20
|
getAddress: () => Address;
|
|
21
|
-
getPortfolio: (onTestnets?: boolean) => Promise<
|
|
21
|
+
getPortfolio: (onTestnets?: boolean) => Promise<Portfolio>;
|
|
22
22
|
getMaxSpendableAmount: (chain: Chain, tokenAddress: Address, gasUnits: bigint) => Promise<bigint>;
|
|
23
23
|
getSessionDetails: (sessions: Session[], sessionIndex: number, signature?: Hex) => Promise<SessionDetails>;
|
|
24
24
|
areAttestersTrusted: (chain: Chain) => Promise<boolean>;
|
|
@@ -27,7 +27,7 @@ interface RhinestoneAccount {
|
|
|
27
27
|
threshold: number;
|
|
28
28
|
} | null>;
|
|
29
29
|
getValidators: (chain: Chain) => Promise<Address[]>;
|
|
30
|
-
|
|
30
|
+
deposit: (chain: Chain, amount: bigint, tokenAddress?: Address) => Promise<TransactionResult>;
|
|
31
31
|
}
|
|
32
32
|
/**
|
|
33
33
|
* Initialize a Rhinestone account
|
|
@@ -37,5 +37,5 @@ interface RhinestoneAccount {
|
|
|
37
37
|
*/
|
|
38
38
|
declare function createRhinestoneAccount(config: RhinestoneAccountConfig): Promise<RhinestoneAccount>;
|
|
39
39
|
export { createRhinestoneAccount, addOwner, changeThreshold, disableEcdsa, disablePasskeys, enableEcdsa, enablePasskeys, recover, removeOwner, setUpRecovery, encodeSmartSessionSignature, trustAttester, isAccountError, AccountError, Eip7702AccountMustHaveEoaError, ExistingEip7702AccountsNotSupportedError, FactoryArgsNotAvailableError, SmartSessionsNotEnabledError, SigningNotSupportedForAccountError, SignMessageNotSupportedByAccountError, Eip7702NotSupportedForAccountError, isExecutionError, IntentFailedError, ExecutionError, SourceChainRequiredForSmartSessionsError, SourceTargetChainMismatchError, UserOperationRequiredForSmartSessionsError, OrderPathRequiredForIntentsError, SessionChainRequiredError, isOrchestratorError, AuthenticationRequiredError, InsufficientBalanceError, InvalidApiKeyError, InvalidIntentSignatureError, NoPathFoundError, OnlyOneTargetTokenAmountCanBeUnsetError, OrchestratorError, IntentNotFoundError, TokenNotSupportedError, UnsupportedChainError, UnsupportedChainIdError, UnsupportedTokenError, };
|
|
40
|
-
export type { RhinestoneAccount, Session, Call, Execution, IntentData, PreparedTransactionData, SignedTransactionData, TransactionResult, IntentCost, IntentInput, IntentOp, IntentOpStatus, IntentResult, IntentRoute,
|
|
40
|
+
export type { RhinestoneAccount, Session, Call, Execution, IntentData, PreparedTransactionData, SignedTransactionData, TransactionResult, IntentCost, IntentInput, IntentOp, IntentOpStatus, IntentResult, IntentRoute, SettlementSystem, SignedIntentOp, Portfolio, };
|
|
41
41
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,MAAM,CAAA;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAA;AAC/D,OAAO,EACL,YAAY,EAEZ,8BAA8B,EAC9B,kCAAkC,EAClC,wCAAwC,EACxC,4BAA4B,EAE5B,cAAc,EACd,kCAAkC,EAClC,qCAAqC,EACrC,4BAA4B,EAC7B,MAAM,YAAY,CAAA;AACnB,OAAO,EACL,QAAQ,EACR,eAAe,EACf,YAAY,EACZ,eAAe,EACf,WAAW,EACX,cAAc,EACd,2BAA2B,EAC3B,OAAO,EACP,WAAW,EACX,aAAa,EACb,aAAa,EACd,MAAM,WAAW,CAAA;AAClB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AACpD,OAAO,EAEL,cAAc,EAGd,iBAAiB,EACjB,gBAAgB,EAChB,gCAAgC,EAChC,yBAAyB,EACzB,wCAAwC,EACxC,8BAA8B,EAE9B,0CAA0C,EAE3C,MAAM,aAAa,CAAA;AACpB,OAAO,EAEL,cAAc,EACf,MAAM,2BAA2B,CAAA;AAClC,OAAO,EACL,UAAU,EACV,uBAAuB,EAEvB,qBAAqB,EAGtB,MAAM,mBAAmB,CAAA;AAM1B,OAAO,EACL,UAAU,EACV,WAAW,EACX,QAAQ,EACR,cAAc,EACd,YAAY,EACZ,WAAW,EACX,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../index.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.js
CHANGED
|
@@ -127,8 +127,8 @@ async function createRhinestoneAccount(config) {
|
|
|
127
127
|
const account = getAddress();
|
|
128
128
|
return (0, modules_1.getValidators)(accountType, account, chain);
|
|
129
129
|
}
|
|
130
|
-
async function
|
|
131
|
-
return (0, execution_1.
|
|
130
|
+
async function deposit(chain, amount, tokenAddress) {
|
|
131
|
+
return (0, execution_1.deposit)(config, chain, amount, tokenAddress);
|
|
132
132
|
}
|
|
133
133
|
return {
|
|
134
134
|
config,
|
|
@@ -145,6 +145,6 @@ async function createRhinestoneAccount(config) {
|
|
|
145
145
|
areAttestersTrusted,
|
|
146
146
|
getOwners,
|
|
147
147
|
getValidators,
|
|
148
|
-
|
|
148
|
+
deposit,
|
|
149
149
|
};
|
|
150
150
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type Address } from 'viem';
|
|
2
|
-
import type { IntentCost, IntentInput, IntentOpStatus, IntentResult, IntentRoute,
|
|
2
|
+
import type { IntentCost, IntentInput, IntentOpStatus, IntentResult, IntentRoute, Portfolio, SignedIntentOp } from './types';
|
|
3
3
|
export declare class Orchestrator {
|
|
4
4
|
private serverUrl;
|
|
5
5
|
private apiKey;
|
|
@@ -9,7 +9,7 @@ export declare class Orchestrator {
|
|
|
9
9
|
tokens?: {
|
|
10
10
|
[chainId: number]: Address[];
|
|
11
11
|
};
|
|
12
|
-
}): Promise<
|
|
12
|
+
}): Promise<Portfolio>;
|
|
13
13
|
getMaxTokenAmount(userAddress: Address, destinationChainId: number, destinationTokenAddress: Address, destinationGasUnits: bigint): Promise<bigint>;
|
|
14
14
|
getIntentCost(input: IntentInput): Promise<IntentCost>;
|
|
15
15
|
getIntentRoute(input: IntentInput): Promise<IntentRoute>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../orchestrator/client.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,OAAO,EAAU,MAAM,MAAM,CAAA;AAe3C,OAAO,KAAK,EACV,UAAU,EACV,WAAW,EACX,cAAc,EACd,YAAY,EACZ,WAAW,EACX,
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../orchestrator/client.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,OAAO,EAAU,MAAM,MAAM,CAAA;AAe3C,OAAO,KAAK,EACV,UAAU,EACV,WAAW,EACX,cAAc,EACd,YAAY,EACZ,WAAW,EACX,SAAS,EAGT,cAAc,EACf,MAAM,SAAS,CAAA;AAGhB,qBAAa,YAAY;IACvB,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,MAAM,CAAQ;gBAEV,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAKvC,YAAY,CAChB,WAAW,EAAE,OAAO,EACpB,MAAM,CAAC,EAAE;QACP,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;QACnB,MAAM,CAAC,EAAE;YACP,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,EAAE,CAAA;SAC7B,CAAA;KACF,GACA,OAAO,CAAC,SAAS,CAAC;IAmDf,iBAAiB,CACrB,WAAW,EAAE,OAAO,EACpB,kBAAkB,EAAE,MAAM,EAC1B,uBAAuB,EAAE,OAAO,EAChC,mBAAmB,EAAE,MAAM,GAC1B,OAAO,CAAC,MAAM,CAAC;IAmCZ,aAAa,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;IAqBtD,cAAc,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IAgBxD,YAAY,CAAC,cAAc,EAAE,cAAc,GAAG,OAAO,CAAC,YAAY,CAAC;IAgBnE,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAalE,OAAO,CAAC,UAAU;CAwHnB"}
|
|
@@ -30,18 +30,22 @@ class Orchestrator {
|
|
|
30
30
|
'x-api-key': this.apiKey,
|
|
31
31
|
},
|
|
32
32
|
});
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
33
|
+
const portfolioResponse = response.data.portfolio;
|
|
34
|
+
const portfolio = portfolioResponse.map((tokenResponse) => ({
|
|
35
|
+
symbol: tokenResponse.tokenName,
|
|
36
|
+
decimals: tokenResponse.tokenDecimals,
|
|
37
|
+
balances: {
|
|
38
|
+
locked: BigInt(tokenResponse.balance.locked),
|
|
39
|
+
unlocked: BigInt(tokenResponse.balance.unlocked),
|
|
40
|
+
},
|
|
41
|
+
chains: tokenResponse.tokenChainBalance.map((chainBalance) => ({
|
|
42
|
+
chain: chainBalance.chainId,
|
|
43
|
+
address: chainBalance.tokenAddress,
|
|
44
|
+
locked: BigInt(chainBalance.balance.locked),
|
|
45
|
+
unlocked: BigInt(chainBalance.balance.unlocked),
|
|
46
|
+
})),
|
|
47
|
+
}));
|
|
48
|
+
return portfolio;
|
|
45
49
|
}
|
|
46
50
|
catch (error) {
|
|
47
51
|
this.parseError(error);
|
|
@@ -2,10 +2,10 @@ import { Orchestrator } from './client';
|
|
|
2
2
|
import { RHINESTONE_SPOKE_POOL_ADDRESS } from './consts';
|
|
3
3
|
import { AuthenticationRequiredError, InsufficientBalanceError, IntentNotFoundError, InvalidApiKeyError, InvalidIntentSignatureError, isOrchestratorError, NoPathFoundError, OnlyOneTargetTokenAmountCanBeUnsetError, OrchestratorError, TokenNotSupportedError, UnsupportedChainError, UnsupportedChainIdError, UnsupportedTokenError } from './error';
|
|
4
4
|
import { getHookAddress, getRhinestoneSpokePoolAddress, getSameChainModuleAddress, getSupportedTokens, getTargetModuleAddress, getTokenAddress, getTokenBalanceSlot, getTokenRootBalanceSlot, getTokenSymbol, getWethAddress, isTokenAddressSupported } from './registry';
|
|
5
|
-
import type { IntentCost, IntentInput, IntentOp, IntentOpStatus, IntentResult, IntentRoute,
|
|
5
|
+
import type { IntentCost, IntentInput, IntentOp, IntentOpStatus, IntentResult, IntentRoute, Portfolio, SettlementSystem, SignedIntentOp, SupportedChain, TokenConfig } from './types';
|
|
6
6
|
import { INTENT_STATUS_COMPLETED, INTENT_STATUS_EXPIRED, INTENT_STATUS_FAILED, INTENT_STATUS_FILLED, INTENT_STATUS_PARTIALLY_COMPLETED, INTENT_STATUS_PENDING, INTENT_STATUS_PRECONFIRMED, INTENT_STATUS_UNKNOWN } from './types';
|
|
7
7
|
import { getIntentOpHash } from './utils';
|
|
8
8
|
declare function getOrchestrator(apiKey: string, orchestratorUrl?: string): Orchestrator;
|
|
9
|
-
export type { IntentCost, IntentInput, IntentOp, IntentOpStatus, IntentResult, IntentRoute,
|
|
9
|
+
export type { IntentCost, IntentInput, IntentOp, IntentOpStatus, IntentResult, IntentRoute, SettlementSystem, SignedIntentOp, SupportedChain, TokenConfig, Portfolio, };
|
|
10
10
|
export { INTENT_STATUS_PENDING, INTENT_STATUS_EXPIRED, INTENT_STATUS_PARTIALLY_COMPLETED, INTENT_STATUS_COMPLETED, INTENT_STATUS_FILLED, INTENT_STATUS_FAILED, INTENT_STATUS_PRECONFIRMED, INTENT_STATUS_UNKNOWN, RHINESTONE_SPOKE_POOL_ADDRESS, Orchestrator, AuthenticationRequiredError, InsufficientBalanceError, InvalidApiKeyError, InvalidIntentSignatureError, NoPathFoundError, OnlyOneTargetTokenAmountCanBeUnsetError, OrchestratorError, IntentNotFoundError, TokenNotSupportedError, UnsupportedChainError, UnsupportedChainIdError, UnsupportedTokenError, getOrchestrator, getIntentOpHash, getWethAddress, getTokenBalanceSlot, getTokenRootBalanceSlot, getTokenSymbol, getHookAddress, getSameChainModuleAddress, getTargetModuleAddress, getRhinestoneSpokePoolAddress, getTokenAddress, getSupportedTokens, isOrchestratorError, isTokenAddressSupported, };
|
|
11
11
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../orchestrator/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AACvC,OAAO,EAAyB,6BAA6B,EAAE,MAAM,UAAU,CAAA;AAC/E,OAAO,EACL,2BAA2B,EAC3B,wBAAwB,EACxB,mBAAmB,EACnB,kBAAkB,EAClB,2BAA2B,EAC3B,mBAAmB,EACnB,gBAAgB,EAChB,uCAAuC,EACvC,iBAAiB,EACjB,sBAAsB,EACtB,qBAAqB,EACrB,uBAAuB,EACvB,qBAAqB,EACtB,MAAM,SAAS,CAAA;AAChB,OAAO,EACL,cAAc,EACd,6BAA6B,EAC7B,yBAAyB,EACzB,kBAAkB,EAClB,sBAAsB,EACtB,eAAe,EACf,mBAAmB,EACnB,uBAAuB,EACvB,cAAc,EACd,cAAc,EACd,uBAAuB,EACxB,MAAM,YAAY,CAAA;AACnB,OAAO,KAAK,EACV,UAAU,EACV,WAAW,EACX,QAAQ,EACR,cAAc,EACd,YAAY,EACZ,WAAW,EACX,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../orchestrator/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AACvC,OAAO,EAAyB,6BAA6B,EAAE,MAAM,UAAU,CAAA;AAC/E,OAAO,EACL,2BAA2B,EAC3B,wBAAwB,EACxB,mBAAmB,EACnB,kBAAkB,EAClB,2BAA2B,EAC3B,mBAAmB,EACnB,gBAAgB,EAChB,uCAAuC,EACvC,iBAAiB,EACjB,sBAAsB,EACtB,qBAAqB,EACrB,uBAAuB,EACvB,qBAAqB,EACtB,MAAM,SAAS,CAAA;AAChB,OAAO,EACL,cAAc,EACd,6BAA6B,EAC7B,yBAAyB,EACzB,kBAAkB,EAClB,sBAAsB,EACtB,eAAe,EACf,mBAAmB,EACnB,uBAAuB,EACvB,cAAc,EACd,cAAc,EACd,uBAAuB,EACxB,MAAM,YAAY,CAAA;AACnB,OAAO,KAAK,EACV,UAAU,EACV,WAAW,EACX,QAAQ,EACR,cAAc,EACd,YAAY,EACZ,WAAW,EACX,SAAS,EACT,gBAAgB,EAChB,cAAc,EACd,cAAc,EACd,WAAW,EACZ,MAAM,SAAS,CAAA;AAChB,OAAO,EACL,uBAAuB,EACvB,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,EACpB,iCAAiC,EACjC,qBAAqB,EACrB,0BAA0B,EAC1B,qBAAqB,EACtB,MAAM,SAAS,CAAA;AAChB,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAEzC,iBAAS,eAAe,CACtB,MAAM,EAAE,MAAM,EACd,eAAe,CAAC,EAAE,MAAM,GACvB,YAAY,CAEd;AAED,YAAY,EACV,UAAU,EACV,WAAW,EACX,QAAQ,EACR,cAAc,EACd,YAAY,EACZ,WAAW,EACX,gBAAgB,EAChB,cAAc,EACd,cAAc,EACd,WAAW,EACX,SAAS,GACV,CAAA;AACD,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,iCAAiC,EACjC,uBAAuB,EACvB,oBAAoB,EACpB,oBAAoB,EACpB,0BAA0B,EAC1B,qBAAqB,EACrB,6BAA6B,EAC7B,YAAY,EACZ,2BAA2B,EAC3B,wBAAwB,EACxB,kBAAkB,EAClB,2BAA2B,EAC3B,gBAAgB,EAChB,uCAAuC,EACvC,iBAAiB,EACjB,mBAAmB,EACnB,sBAAsB,EACtB,qBAAqB,EACrB,uBAAuB,EACvB,qBAAqB,EACrB,eAAe,EACf,eAAe,EACf,cAAc,EACd,mBAAmB,EACnB,uBAAuB,EACvB,cAAc,EACd,cAAc,EACd,yBAAyB,EACzB,sBAAsB,EACtB,6BAA6B,EAC7B,eAAe,EACf,kBAAkB,EAClB,mBAAmB,EACnB,uBAAuB,GACxB,CAAA"}
|
|
@@ -8,6 +8,8 @@ type SupportedOPStackTestnet = typeof optimismSepolia.id | typeof baseSepolia.id
|
|
|
8
8
|
type SupportedChain = SupportedMainnet | SupportedTestnet;
|
|
9
9
|
type SupportedTokenSymbol = 'ETH' | 'WETH' | 'USDC' | 'USDT';
|
|
10
10
|
type SupportedToken = SupportedTokenSymbol | Address;
|
|
11
|
+
type DeployedAccountStatus = 'ERC7579';
|
|
12
|
+
type AccountStatus = 'NOT_DEPLOYED' | DeployedAccountStatus;
|
|
11
13
|
declare const INTENT_STATUS_PENDING = "PENDING";
|
|
12
14
|
declare const INTENT_STATUS_FAILED = "FAILED";
|
|
13
15
|
declare const INTENT_STATUS_EXPIRED = "EXPIRED";
|
|
@@ -44,16 +46,23 @@ interface Execution {
|
|
|
44
46
|
value: bigint;
|
|
45
47
|
data: Hex;
|
|
46
48
|
}
|
|
47
|
-
interface
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
49
|
+
interface PortfolioToken {
|
|
50
|
+
symbol: string;
|
|
51
|
+
decimals: number;
|
|
52
|
+
balances: {
|
|
53
|
+
locked: bigint;
|
|
54
|
+
unlocked: bigint;
|
|
55
|
+
};
|
|
56
|
+
chains: [
|
|
57
|
+
{
|
|
58
|
+
chain: number;
|
|
59
|
+
address: Address;
|
|
60
|
+
locked: bigint;
|
|
61
|
+
unlocked: bigint;
|
|
62
|
+
}
|
|
63
|
+
];
|
|
56
64
|
}
|
|
65
|
+
type Portfolio = PortfolioToken[];
|
|
57
66
|
interface IntentInput {
|
|
58
67
|
account: Address;
|
|
59
68
|
destinationChainId: number;
|
|
@@ -65,7 +74,7 @@ interface IntentInput {
|
|
|
65
74
|
}[];
|
|
66
75
|
accountAccessList?: AccountAccessList;
|
|
67
76
|
smartAccount: {
|
|
68
|
-
accountType:
|
|
77
|
+
accountType: DeployedAccountStatus;
|
|
69
78
|
};
|
|
70
79
|
}
|
|
71
80
|
type SettlementSystem = 'SAME_CHAIN' | 'ACROSS';
|
|
@@ -89,33 +98,30 @@ interface IntentCost {
|
|
|
89
98
|
};
|
|
90
99
|
};
|
|
91
100
|
}
|
|
101
|
+
interface IntentOpElement {
|
|
102
|
+
arbiter: Address;
|
|
103
|
+
chainId: string;
|
|
104
|
+
idsAndAmounts: [[string, string]];
|
|
105
|
+
beforeFill: boolean;
|
|
106
|
+
smartAccountStatus: DeployedAccountStatus;
|
|
107
|
+
mandate: {
|
|
108
|
+
recipient: Address;
|
|
109
|
+
tokenOut: [[string, string]];
|
|
110
|
+
destinationChainId: string;
|
|
111
|
+
fillDeadline: string;
|
|
112
|
+
destinationOps: Execution[];
|
|
113
|
+
preClaimOps: Execution[];
|
|
114
|
+
qualifier: {
|
|
115
|
+
settlementSystem: SettlementSystem;
|
|
116
|
+
encodedVal: Hex;
|
|
117
|
+
};
|
|
118
|
+
};
|
|
119
|
+
}
|
|
92
120
|
interface IntentOp {
|
|
93
121
|
sponsor: Address;
|
|
94
122
|
nonce: string;
|
|
95
123
|
expires: string;
|
|
96
|
-
elements:
|
|
97
|
-
arbiter: Address;
|
|
98
|
-
chainId: string;
|
|
99
|
-
idsAndAmounts: [[string, string]];
|
|
100
|
-
beforeFill: boolean;
|
|
101
|
-
smartAccountStatus: 'ERC7579';
|
|
102
|
-
mandate: {
|
|
103
|
-
recipient: Address;
|
|
104
|
-
tokenOut: [[string, string]];
|
|
105
|
-
destinationChainId: string;
|
|
106
|
-
fillDeadline: string;
|
|
107
|
-
destinationOps: {
|
|
108
|
-
to: Address;
|
|
109
|
-
value: string;
|
|
110
|
-
data: Hex;
|
|
111
|
-
}[];
|
|
112
|
-
preClaimOps: [];
|
|
113
|
-
qualifier: {
|
|
114
|
-
settlementSystem: SettlementSystem;
|
|
115
|
-
encodedVal: Hex;
|
|
116
|
-
};
|
|
117
|
-
};
|
|
118
|
-
}[];
|
|
124
|
+
elements: IntentOpElement[];
|
|
119
125
|
serverSignature: string;
|
|
120
126
|
signedMetadata: {
|
|
121
127
|
quotes: unknown;
|
|
@@ -141,49 +147,7 @@ interface IntentResult {
|
|
|
141
147
|
status: IntentStatus;
|
|
142
148
|
};
|
|
143
149
|
}
|
|
144
|
-
|
|
145
|
-
sponsor: Address;
|
|
146
|
-
nonce: bigint;
|
|
147
|
-
expires: bigint;
|
|
148
|
-
elements: {
|
|
149
|
-
arbiter: Address;
|
|
150
|
-
chainId: bigint;
|
|
151
|
-
idsAndAmounts: [[bigint, bigint]];
|
|
152
|
-
beforeFill: boolean;
|
|
153
|
-
smartAccountStatus: unknown;
|
|
154
|
-
mandate: {
|
|
155
|
-
recipient: Address;
|
|
156
|
-
tokenOut: [[bigint, bigint]];
|
|
157
|
-
destinationChainId: bigint;
|
|
158
|
-
fillDeadline: string;
|
|
159
|
-
destinationOps: {
|
|
160
|
-
to: Address;
|
|
161
|
-
value: bigint;
|
|
162
|
-
data: Hex;
|
|
163
|
-
}[];
|
|
164
|
-
preClaimOps: [];
|
|
165
|
-
qualifier: {
|
|
166
|
-
settlementSystem: SettlementSystem;
|
|
167
|
-
encodedVal: Hex;
|
|
168
|
-
};
|
|
169
|
-
};
|
|
170
|
-
}[];
|
|
171
|
-
serverSignature: string;
|
|
172
|
-
signedMetadata: {
|
|
173
|
-
quotes: unknown;
|
|
174
|
-
tokenPrices: Record<string, number>;
|
|
175
|
-
opGasParams: Record<string, {
|
|
176
|
-
l1BaseFee: string;
|
|
177
|
-
l1BlobBaseFee: string;
|
|
178
|
-
baseFeeScalar: string;
|
|
179
|
-
blobFeeScalar: string;
|
|
180
|
-
}> & {
|
|
181
|
-
estimatedCalldataSize: number;
|
|
182
|
-
};
|
|
183
|
-
gasPrices: Record<string, string>;
|
|
184
|
-
};
|
|
185
|
-
}
|
|
186
|
-
type SignedIntentOp = ParsedIntentOp & {
|
|
150
|
+
type SignedIntentOp = IntentOp & {
|
|
187
151
|
originSignatures: Hex[];
|
|
188
152
|
destinationSignature: Hex;
|
|
189
153
|
};
|
|
@@ -220,6 +184,25 @@ interface UserOpStatus {
|
|
|
220
184
|
type: 'userop';
|
|
221
185
|
receipt: UserOperationReceipt;
|
|
222
186
|
}
|
|
223
|
-
|
|
187
|
+
interface PortfolioTokenChainResponse {
|
|
188
|
+
chainId: number;
|
|
189
|
+
accountStatus: AccountStatus;
|
|
190
|
+
tokenAddress: Address;
|
|
191
|
+
balance: {
|
|
192
|
+
locked: string;
|
|
193
|
+
unlocked: string;
|
|
194
|
+
};
|
|
195
|
+
}
|
|
196
|
+
interface PortfolioTokenResponse {
|
|
197
|
+
tokenName: 'ETH';
|
|
198
|
+
tokenDecimals: 18;
|
|
199
|
+
balance: {
|
|
200
|
+
locked: string;
|
|
201
|
+
unlocked: string;
|
|
202
|
+
};
|
|
203
|
+
tokenChainBalance: PortfolioTokenChainResponse[];
|
|
204
|
+
}
|
|
205
|
+
type PortfolioResponse = PortfolioTokenResponse[];
|
|
206
|
+
export type { TokenConfig, SupportedChain, SettlementSystem, IntentInput, IntentCost, IntentRoute, IntentOp, IntentOpElement, SignedIntentOp, IntentOpStatus, UserOpStatus, IntentResult, PortfolioTokenResponse, PortfolioResponse, Portfolio, PortfolioToken, };
|
|
224
207
|
export { INTENT_STATUS_PENDING, INTENT_STATUS_FAILED, INTENT_STATUS_EXPIRED, INTENT_STATUS_PARTIALLY_COMPLETED, INTENT_STATUS_COMPLETED, INTENT_STATUS_FILLED, INTENT_STATUS_PRECONFIRMED, INTENT_STATUS_UNKNOWN, };
|
|
225
208
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../orchestrator/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,MAAM,CAAA;AACxC,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAA;AAC/D,OAAO,KAAK,EACV,QAAQ,EACR,eAAe,EACf,IAAI,EACJ,WAAW,EACX,OAAO,EACP,QAAQ,EACR,eAAe,EACf,OAAO,EACP,WAAW,EACX,OAAO,EACP,MAAM,EACP,MAAM,aAAa,CAAA;AAEpB,KAAK,gBAAgB,GACjB,OAAO,OAAO,CAAC,EAAE,GACjB,OAAO,WAAW,CAAC,EAAE,GACrB,OAAO,eAAe,CAAC,EAAE,GACzB,OAAO,eAAe,CAAC,EAAE,GACzB,OAAO,WAAW,CAAC,EAAE,CAAA;AACzB,KAAK,gBAAgB,GACjB,OAAO,OAAO,CAAC,EAAE,GACjB,OAAO,IAAI,CAAC,EAAE,GACd,OAAO,QAAQ,CAAC,EAAE,GAClB,OAAO,QAAQ,CAAC,EAAE,GAClB,OAAO,OAAO,CAAC,EAAE,GACjB,OAAO,MAAM,CAAC,EAAE,CAAA;AACpB,KAAK,uBAAuB,GAAG,OAAO,QAAQ,CAAC,EAAE,GAAG,OAAO,IAAI,CAAC,EAAE,CAAA;AAClE,KAAK,uBAAuB,GAAG,OAAO,eAAe,CAAC,EAAE,GAAG,OAAO,WAAW,CAAC,EAAE,CAAA;AAChF,KAAK,cAAc,GAAG,gBAAgB,GAAG,gBAAgB,CAAA;AACzD,KAAK,oBAAoB,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAA;AAC5D,KAAK,cAAc,GAAG,oBAAoB,GAAG,OAAO,CAAA;AAEpD,QAAA,MAAM,qBAAqB,YAAY,CAAA;AACvC,QAAA,MAAM,oBAAoB,WAAW,CAAA;AACrC,QAAA,MAAM,qBAAqB,YAAY,CAAA;AACvC,QAAA,MAAM,iCAAiC,wBAAwB,CAAA;AAC/D,QAAA,MAAM,uBAAuB,cAAc,CAAA;AAC3C,QAAA,MAAM,oBAAoB,WAAW,CAAA;AACrC,QAAA,MAAM,0BAA0B,iBAAiB,CAAA;AACjD,QAAA,MAAM,qBAAqB,YAAY,CAAA;AAEvC,KAAK,YAAY,GACb,OAAO,qBAAqB,GAC5B,OAAO,qBAAqB,GAC5B,OAAO,iCAAiC,GACxC,OAAO,uBAAuB,GAC9B,OAAO,oBAAoB,GAC3B,OAAO,0BAA0B,GACjC,OAAO,oBAAoB,GAC3B,OAAO,qBAAqB,CAAA;AAEhC,KAAK,uBAAuB,GAAG;IAC7B,OAAO,EAAE,MAAM,CAAA;IACf,YAAY,EAAE,OAAO,CAAA;CACtB,EAAE,CAAA;AAEH,KAAK,0BAA0B,GAAG;IAChC,WAAW,CAAC,EAAE;SACX,OAAO,IAAI,cAAc,CAAC,CAAC,EAAE,cAAc,EAAE;KAC/C,CAAA;CACF,CAAA;AAED,KAAK,4BAA4B,GAAG;IAClC,QAAQ,CAAC,EAAE,cAAc,EAAE,CAAA;IAC3B,MAAM,CAAC,EAAE,cAAc,EAAE,CAAA;CAC1B,CAAA;AAED,KAAK,iBAAiB,GAClB,uBAAuB,GACvB,0BAA0B,GAC1B,4BAA4B,CAAA;AAEhC,KAAK,WAAW,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAA;AAEpD,UAAU,KAAK;IACb,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,WAAW,CAAA;IACnB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,oBAAoB,CAAC,EAAE,GAAG,CAAA;CAC3B;AAED,UAAU,SAAS;IACjB,EAAE,EAAE,OAAO,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,GAAG,CAAA;CACV;AAED,UAAU,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../orchestrator/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import type { IntentOp
|
|
1
|
+
import type { IntentOp } from './types';
|
|
2
2
|
declare function getIntentOpHash(intentOp: IntentOp): `0x${string}`;
|
|
3
3
|
declare function convertBigIntFields(obj: any): any;
|
|
4
|
-
|
|
5
|
-
export { getIntentOpHash, convertBigIntFields, parseCompactResponse };
|
|
4
|
+
export { getIntentOpHash, convertBigIntFields };
|
|
6
5
|
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../orchestrator/utils.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,QAAQ,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../orchestrator/utils.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,QAAQ,EAAoB,MAAM,SAAS,CAAA;AAWzD,iBAAS,eAAe,CAAC,QAAQ,EAAE,QAAQ,iBA4F1C;AAED,iBAAS,mBAAmB,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,CAwB1C;AAED,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,CAAA"}
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getIntentOpHash = getIntentOpHash;
|
|
4
4
|
exports.convertBigIntFields = convertBigIntFields;
|
|
5
|
-
exports.parseCompactResponse = parseCompactResponse;
|
|
6
5
|
const viem_1 = require("viem");
|
|
7
6
|
function getClaimProofer(settlementSystem) {
|
|
8
7
|
switch (settlementSystem) {
|
|
@@ -84,13 +83,13 @@ function getIntentOpHash(intentOp) {
|
|
|
84
83
|
token: (0, viem_1.slice)((0, viem_1.toHex)(BigInt(token[0])), 12, 32),
|
|
85
84
|
amount: BigInt(token[1]),
|
|
86
85
|
})),
|
|
87
|
-
targetChain: element.mandate.destinationChainId,
|
|
88
|
-
fillExpiry: element.mandate.fillDeadline,
|
|
86
|
+
targetChain: BigInt(element.mandate.destinationChainId),
|
|
87
|
+
fillExpiry: BigInt(element.mandate.fillDeadline),
|
|
89
88
|
claimProofer: claimProofer,
|
|
90
89
|
},
|
|
91
90
|
originOps: element.mandate.preClaimOps.map((op) => ({
|
|
92
91
|
to: op.to,
|
|
93
|
-
value: op.value,
|
|
92
|
+
value: BigInt(op.value),
|
|
94
93
|
data: op.data,
|
|
95
94
|
})),
|
|
96
95
|
destOps: element.mandate.destinationOps.map((op) => ({
|
|
@@ -125,40 +124,3 @@ function convertBigIntFields(obj) {
|
|
|
125
124
|
}
|
|
126
125
|
return obj;
|
|
127
126
|
}
|
|
128
|
-
function parseCompactResponse(response) {
|
|
129
|
-
return {
|
|
130
|
-
sponsor: response.sponsor,
|
|
131
|
-
nonce: BigInt(response.nonce),
|
|
132
|
-
expires: BigInt(response.expires),
|
|
133
|
-
elements: response.elements.map((element) => {
|
|
134
|
-
return {
|
|
135
|
-
arbiter: element.arbiter,
|
|
136
|
-
chainId: BigInt(element.chainId),
|
|
137
|
-
idsAndAmounts: element.idsAndAmounts.map((idsAndAmount) => {
|
|
138
|
-
return [BigInt(idsAndAmount[0]), BigInt(idsAndAmount[1])];
|
|
139
|
-
}),
|
|
140
|
-
beforeFill: element.beforeFill,
|
|
141
|
-
smartAccountStatus: element.smartAccountStatus,
|
|
142
|
-
mandate: {
|
|
143
|
-
recipient: element.mandate.recipient,
|
|
144
|
-
tokenOut: element.mandate.tokenOut.map((tokenOut) => {
|
|
145
|
-
return [BigInt(tokenOut[0]), BigInt(tokenOut[1])];
|
|
146
|
-
}),
|
|
147
|
-
destinationChainId: BigInt(element.mandate.destinationChainId),
|
|
148
|
-
fillDeadline: element.mandate.fillDeadline,
|
|
149
|
-
destinationOps: element.mandate.destinationOps.map((exec) => {
|
|
150
|
-
return {
|
|
151
|
-
to: exec.to,
|
|
152
|
-
value: BigInt(exec.value),
|
|
153
|
-
data: exec.data,
|
|
154
|
-
};
|
|
155
|
-
}),
|
|
156
|
-
preClaimOps: [],
|
|
157
|
-
qualifier: element.mandate.qualifier,
|
|
158
|
-
},
|
|
159
|
-
};
|
|
160
|
-
}),
|
|
161
|
-
serverSignature: response.serverSignature,
|
|
162
|
-
signedMetadata: response.signedMetadata,
|
|
163
|
-
};
|
|
164
|
-
}
|