@charterlabs/rhinestone-sdk 0.3.1 → 0.3.3
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 +31 -200
- package/dist/src/accounts/index.d.ts +3 -2
- package/dist/src/accounts/index.d.ts.map +1 -1
- package/dist/src/accounts/index.js +14 -6
- package/dist/src/accounts/signing/common.d.ts.map +1 -1
- package/dist/src/accounts/signing/common.js +9 -18
- package/dist/src/actions/compact.d.ts +2 -1
- package/dist/src/actions/compact.d.ts.map +1 -1
- package/dist/src/actions/compact.js +3 -1
- package/dist/src/actions/smart-sessions.d.ts +11 -1
- package/dist/src/actions/smart-sessions.d.ts.map +1 -1
- package/dist/src/actions/smart-sessions.js +35 -2
- package/dist/src/errors/index.d.ts +2 -2
- package/dist/src/errors/index.d.ts.map +1 -1
- package/dist/src/errors/index.js +2 -1
- package/dist/src/execution/compact.d.ts +3 -1
- package/dist/src/execution/compact.d.ts.map +1 -1
- package/dist/src/execution/compact.js +5 -1
- package/dist/src/execution/error.d.ts +1 -0
- package/dist/src/execution/error.d.ts.map +1 -1
- 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 +18 -12
- package/dist/src/execution/utils.d.ts +12 -8
- package/dist/src/execution/utils.d.ts.map +1 -1
- package/dist/src/execution/utils.js +116 -26
- package/dist/src/index.d.ts +6 -4
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +14 -12
- package/dist/src/modules/index.d.ts +4 -4
- package/dist/src/modules/index.d.ts.map +1 -1
- package/dist/src/modules/index.js +2 -1
- package/dist/src/modules/validators/core.d.ts +3 -1
- package/dist/src/modules/validators/core.d.ts.map +1 -1
- package/dist/src/modules/validators/core.js +7 -3
- package/dist/src/modules/validators/smart-sessions.d.ts +12 -8
- package/dist/src/modules/validators/smart-sessions.d.ts.map +1 -1
- package/dist/src/modules/validators/smart-sessions.js +396 -29
- package/dist/src/orchestrator/client.d.ts +2 -7
- package/dist/src/orchestrator/client.d.ts.map +1 -1
- package/dist/src/orchestrator/client.js +49 -43
- package/dist/src/orchestrator/error.d.ts +11 -1
- package/dist/src/orchestrator/error.d.ts.map +1 -1
- package/dist/src/orchestrator/error.js +16 -1
- package/dist/src/orchestrator/index.d.ts +4 -4
- package/dist/src/orchestrator/index.d.ts.map +1 -1
- package/dist/src/orchestrator/index.js +2 -1
- package/dist/src/orchestrator/registry.d.ts +1 -1
- package/dist/src/orchestrator/registry.d.ts.map +1 -1
- package/dist/src/orchestrator/registry.js +3 -14
- package/dist/src/orchestrator/registry.test.js +5 -1
- package/dist/src/orchestrator/types.d.ts +28 -4
- package/dist/src/orchestrator/types.d.ts.map +1 -1
- package/dist/src/orchestrator/types.js +15 -1
- package/dist/src/types.d.ts +30 -11
- package/dist/src/types.d.ts.map +1 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../../execution/error.ts"],"names":[],"mappings":"AAAA,cAAM,cAAe,SAAQ,KAAK;IAChC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAQ;IACjC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAK;IAC9B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAQ;IACnC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAQ;gBAErB,MAAM,CAAC,EAAE;QACnB,OAAO,CAAC,EAAE,MAAM,CAAA;QAChB,OAAO,CAAC,EAAE,GAAG,CAAA;QACb,SAAS,CAAC,EAAE,MAAM,CAAA;QAClB,OAAO,CAAC,EAAE,MAAM,CAAA;KACjB;IAQD,IAAI,OAAO,WAEV;IAED,IAAI,OAAO,QAEV;IAED,IAAI,SAAS,WAEZ;IAED,IAAI,OAAO,WAEV;CACF;AAED,cAAM,uBAAwB,SAAQ,cAAc;gBACtC,MAAM,CAAC,EAAE;QACnB,OAAO,CAAC,EAAE,GAAG,CAAA;QACb,SAAS,CAAC,EAAE,MAAM,CAAA;QAClB,OAAO,CAAC,EAAE,MAAM,CAAA;KACjB;CAOF;AAED,cAAM,gCAAiC,SAAQ,cAAc;gBAC/C,MAAM,CAAC,EAAE;QACnB,OAAO,CAAC,EAAE,GAAG,CAAA;QACb,SAAS,CAAC,EAAE,MAAM,CAAA;QAClB,OAAO,CAAC,EAAE,MAAM,CAAA;KACjB;CAMF;AAED,cAAM,yBAA0B,SAAQ,cAAc;gBACxC,MAAM,CAAC,EAAE;QACnB,OAAO,CAAC,EAAE,GAAG,CAAA;QACb,SAAS,CAAC,EAAE,MAAM,CAAA;QAClB,OAAO,CAAC,EAAE,MAAM,CAAA;KACjB;CAOF;AAED,cAAM,iBAAkB,SAAQ,cAAc;gBAChC,MAAM,CAAC,EAAE;QACnB,OAAO,CAAC,EAAE,GAAG,CAAA;QACb,SAAS,CAAC,EAAE,MAAM,CAAA;QAClB,OAAO,CAAC,EAAE,MAAM,CAAA;KACjB;CAMF;AAED,cAAM,wBAAyB,SAAQ,cAAc;gBACvC,MAAM,CAAC,EAAE;QACnB,OAAO,CAAC,EAAE,GAAG,CAAA;QACb,SAAS,CAAC,EAAE,MAAM,CAAA;QAClB,OAAO,CAAC,EAAE,MAAM,CAAA;KACjB;CAMF;AAED,iBAAS,gBAAgB,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,IAAI,cAAc,CAE/D;AAED,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,gCAAgC,EAChC,yBAAyB,EACzB,iBAAiB,EACjB,wBAAwB,EACxB,uBAAuB,GACxB,CAAA"}
|
|
1
|
+
{"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../../execution/error.ts"],"names":[],"mappings":"AAAA,cAAM,cAAe,SAAQ,KAAK;IAChC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAQ;IACjC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAK;IAC9B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAQ;IACnC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAQ;gBAErB,MAAM,CAAC,EAAE;QACnB,OAAO,CAAC,EAAE,MAAM,CAAA;QAChB,OAAO,CAAC,EAAE,GAAG,CAAA;QACb,SAAS,CAAC,EAAE,MAAM,CAAA;QAClB,OAAO,CAAC,EAAE,MAAM,CAAA;KACjB;IAQD,IAAI,OAAO,WAEV;IAED,IAAI,OAAO,QAEV;IAED,IAAI,SAAS,WAEZ;IAED,IAAI,OAAO,WAEV;CACF;AAED,cAAM,uBAAwB,SAAQ,cAAc;gBACtC,MAAM,CAAC,EAAE;QACnB,OAAO,CAAC,EAAE,GAAG,CAAA;QACb,SAAS,CAAC,EAAE,MAAM,CAAA;QAClB,OAAO,CAAC,EAAE,MAAM,CAAA;KACjB;CAOF;AAED,cAAM,gCAAiC,SAAQ,cAAc;gBAC/C,MAAM,CAAC,EAAE;QACnB,OAAO,CAAC,EAAE,GAAG,CAAA;QACb,SAAS,CAAC,EAAE,MAAM,CAAA;QAClB,OAAO,CAAC,EAAE,MAAM,CAAA;KACjB;CAMF;AAED,cAAM,yBAA0B,SAAQ,cAAc;gBACxC,MAAM,CAAC,EAAE;QACnB,OAAO,CAAC,EAAE,GAAG,CAAA;QACb,SAAS,CAAC,EAAE,MAAM,CAAA;QAClB,OAAO,CAAC,EAAE,MAAM,CAAA;KACjB;CAOF;AAED,cAAM,iBAAkB,SAAQ,cAAc;gBAChC,MAAM,CAAC,EAAE;QACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;QACjB,OAAO,CAAC,EAAE,GAAG,CAAA;QACb,SAAS,CAAC,EAAE,MAAM,CAAA;QAClB,OAAO,CAAC,EAAE,MAAM,CAAA;KACjB;CAMF;AAED,cAAM,wBAAyB,SAAQ,cAAc;gBACvC,MAAM,CAAC,EAAE;QACnB,OAAO,CAAC,EAAE,GAAG,CAAA;QACb,SAAS,CAAC,EAAE,MAAM,CAAA;QAClB,OAAO,CAAC,EAAE,MAAM,CAAA;KACjB;CAMF;AAED,iBAAS,gBAAgB,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,IAAI,cAAc,CAE/D;AAED,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,gCAAgC,EAChC,yBAAyB,EACzB,iBAAiB,EACjB,wBAAwB,EACxB,uBAAuB,GACxB,CAAA"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type Address, type Chain, type Hex } from 'viem';
|
|
2
2
|
import type { UserOperationReceipt } from 'viem/_types/account-abstraction';
|
|
3
|
-
import type { IntentOpStatus } from '../orchestrator';
|
|
3
|
+
import type { IntentOpStatus, SplitIntentsInput } from '../orchestrator';
|
|
4
4
|
import type { SettlementLayer } from '../orchestrator/types';
|
|
5
5
|
import type { CalldataInput, CallInput, RhinestoneAccountConfig, RhinestoneConfig, SignerSet, SourceAssetInput, Sponsorship, TokenRequest, TokenSymbol, Transaction, UserOperationTransaction } from '../types';
|
|
6
6
|
import { ExecutionError, IntentFailedError, IntentStatusTimeoutError, isExecutionError, OrderPathRequiredForIntentsError, SessionChainRequiredError, SignerNotSupportedError } from './error';
|
|
@@ -31,11 +31,11 @@ declare function sendTransactionInternal(config: RhinestoneConfig, sourceChains:
|
|
|
31
31
|
}): Promise<TransactionResult>;
|
|
32
32
|
declare function sendUserOperationInternal(config: RhinestoneConfig, chain: Chain, callInputs: CalldataInput[], signers?: SignerSet): Promise<UserOperationResult>;
|
|
33
33
|
declare function waitForExecution(config: RhinestoneConfig, result: TransactionResult | UserOperationResult, acceptsPreconfirmations: boolean): Promise<TransactionStatus | UserOperationReceipt>;
|
|
34
|
-
declare function getMaxSpendableAmount(config: RhinestoneConfig, chain: Chain, token: Address | TokenSymbol, gasUnits: bigint, sponsored?: boolean): Promise<bigint>;
|
|
35
34
|
declare function getPortfolio(config: RhinestoneConfig, onTestnets: boolean): Promise<import("../orchestrator").Portfolio>;
|
|
36
35
|
declare function getIntentStatus(apiKey: string | undefined, endpointUrl: string | undefined, intentId: bigint): Promise<TransactionStatus & {
|
|
37
36
|
status: IntentOpStatus['status'];
|
|
38
37
|
}>;
|
|
39
|
-
|
|
38
|
+
declare function splitIntents(apiKey: string | undefined, endpointUrl: string | undefined, input: SplitIntentsInput): Promise<import("../orchestrator").SplitIntentsResult>;
|
|
39
|
+
export { sendTransaction, sendTransactionInternal, sendUserOperation, sendUserOperationInternal, waitForExecution, getPortfolio, getIntentStatus, splitIntents, isExecutionError, ExecutionError, IntentFailedError, IntentStatusTimeoutError, OrderPathRequiredForIntentsError, SessionChainRequiredError, SignerNotSupportedError, };
|
|
40
40
|
export type { TransactionStatus, TransactionResult, UserOperationResult };
|
|
41
41
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../execution/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,KAAK,EAAsB,KAAK,GAAG,EAAE,MAAM,MAAM,CAAA;AAC7E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAA;AAI3E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../execution/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,9 +6,9 @@ exports.sendTransactionInternal = sendTransactionInternal;
|
|
|
6
6
|
exports.sendUserOperation = sendUserOperation;
|
|
7
7
|
exports.sendUserOperationInternal = sendUserOperationInternal;
|
|
8
8
|
exports.waitForExecution = waitForExecution;
|
|
9
|
-
exports.getMaxSpendableAmount = getMaxSpendableAmount;
|
|
10
9
|
exports.getPortfolio = getPortfolio;
|
|
11
10
|
exports.getIntentStatus = getIntentStatus;
|
|
11
|
+
exports.splitIntents = splitIntents;
|
|
12
12
|
const viem_1 = require("viem");
|
|
13
13
|
const chains_1 = require("viem/chains");
|
|
14
14
|
const accounts_1 = require("../accounts");
|
|
@@ -92,15 +92,16 @@ async function sendUserOperationInternal(config, chain, callInputs, signers) {
|
|
|
92
92
|
};
|
|
93
93
|
}
|
|
94
94
|
async function sendTransactionAsIntent(config, sourceChains, targetChain, callInputs, gasLimit, tokenRequests, recipient, signers, sponsored, settlementLayers, sourceAssets, feeAsset, lockFunds) {
|
|
95
|
-
const intentRoute = await (0, utils_2.prepareTransactionAsIntent)(config, sourceChains, targetChain, callInputs, gasLimit, tokenRequests, recipient, sponsored ?? false, undefined, settlementLayers, sourceAssets, feeAsset, lockFunds, undefined);
|
|
95
|
+
const intentRoute = await (0, utils_2.prepareTransactionAsIntent)(config, sourceChains, targetChain, callInputs, gasLimit, tokenRequests, recipient, sponsored ?? false, undefined, settlementLayers, sourceAssets, feeAsset, lockFunds, undefined, signers);
|
|
96
96
|
if (!intentRoute) {
|
|
97
97
|
throw new error_1.OrderPathRequiredForIntentsError();
|
|
98
98
|
}
|
|
99
|
-
const { originSignatures, destinationSignature } = await (0, utils_2.signIntent)(config, intentRoute.intentOp, signers);
|
|
99
|
+
const { originSignatures, destinationSignature } = await (0, utils_2.signIntent)(config, intentRoute.intentOp, targetChain, signers);
|
|
100
|
+
const targetExecutionSignature = await (0, utils_2.getTargetExecutionSignature)(config, intentRoute.intentOp, targetChain, signers);
|
|
100
101
|
const authorizations = config.eoa
|
|
101
102
|
? await (0, utils_2.signAuthorizationsInternal)(config, intentRoute)
|
|
102
103
|
: [];
|
|
103
|
-
return await (0, utils_2.submitIntentInternal)(config, sourceChains, targetChain, intentRoute.intentOp, originSignatures, destinationSignature, authorizations, false);
|
|
104
|
+
return await (0, utils_2.submitIntentInternal)(config, sourceChains, targetChain, intentRoute.intentOp, originSignatures, destinationSignature, targetExecutionSignature, authorizations, false);
|
|
104
105
|
}
|
|
105
106
|
async function waitForExecution(config, result, acceptsPreconfirmations) {
|
|
106
107
|
const validStatuses = new Set([
|
|
@@ -121,7 +122,9 @@ async function waitForExecution(config, result, acceptsPreconfirmations) {
|
|
|
121
122
|
const now = Date.now();
|
|
122
123
|
if (now - startTs >= POLL_MAX_WAIT_MS) {
|
|
123
124
|
throw new error_1.IntentStatusTimeoutError({
|
|
124
|
-
context: {
|
|
125
|
+
context: {
|
|
126
|
+
intentId: result.id.toString(),
|
|
127
|
+
},
|
|
125
128
|
});
|
|
126
129
|
}
|
|
127
130
|
const orchestrator = (0, utils_2.getOrchestratorByChain)(result.targetChain, config.apiKey, config.endpointUrl);
|
|
@@ -166,7 +169,12 @@ async function waitForExecution(config, result, acceptsPreconfirmations) {
|
|
|
166
169
|
}
|
|
167
170
|
}
|
|
168
171
|
if (intentStatus.status === orchestrator_1.INTENT_STATUS_FAILED) {
|
|
169
|
-
|
|
172
|
+
const intentId = result.id.toString();
|
|
173
|
+
throw new error_1.IntentFailedError({
|
|
174
|
+
context: {
|
|
175
|
+
intentId,
|
|
176
|
+
},
|
|
177
|
+
});
|
|
170
178
|
}
|
|
171
179
|
return {
|
|
172
180
|
fill: {
|
|
@@ -196,12 +204,6 @@ async function waitForExecution(config, result, acceptsPreconfirmations) {
|
|
|
196
204
|
}
|
|
197
205
|
}
|
|
198
206
|
}
|
|
199
|
-
async function getMaxSpendableAmount(config, chain, token, gasUnits, sponsored = false) {
|
|
200
|
-
const orchestrator = (0, utils_2.getOrchestratorByChain)(chain.id, config.apiKey, config.endpointUrl);
|
|
201
|
-
const tokenAddress = (0, registry_1.resolveTokenAddress)(token, chain.id);
|
|
202
|
-
const account = (0, utils_2.getIntentAccount)(config, undefined, undefined);
|
|
203
|
-
return orchestrator.getMaxTokenAmount(account, chain.id, tokenAddress, gasUnits, sponsored);
|
|
204
|
-
}
|
|
205
207
|
async function getPortfolio(config, onTestnets) {
|
|
206
208
|
const address = (0, accounts_1.getAddress)(config);
|
|
207
209
|
const chainId = onTestnets ? chains_1.baseSepolia.id : chains_1.base.id;
|
|
@@ -225,3 +227,7 @@ async function getIntentStatus(apiKey, endpointUrl, intentId) {
|
|
|
225
227
|
})),
|
|
226
228
|
};
|
|
227
229
|
}
|
|
230
|
+
async function splitIntents(apiKey, endpointUrl, input) {
|
|
231
|
+
const orchestrator = (0, utils_2.getOrchestratorByChain)(input.chain.id, apiKey, endpointUrl);
|
|
232
|
+
return orchestrator.splitIntents(input);
|
|
233
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type Address, type Chain, type HashTypedDataParameters, type Hex, type PublicClient, type SignableMessage, type SignedAuthorization, type SignedAuthorizationList, type TypedData, type TypedDataDefinition } from 'viem';
|
|
2
2
|
import { type UserOperation } from 'viem/account-abstraction';
|
|
3
3
|
import { type IntentOp, type IntentRoute } from '../orchestrator';
|
|
4
|
-
import type
|
|
4
|
+
import { type OriginSignature, type SettlementLayer } from '../orchestrator/types';
|
|
5
5
|
import type { Call, CalldataInput, CallInput, RhinestoneAccountConfig, RhinestoneConfig, SignerSet, SourceAssetInput, Sponsorship, TokenRequest, TokenSymbol, Transaction, UserOperationTransaction } from '../types';
|
|
6
6
|
interface UserOperationResult {
|
|
7
7
|
type: 'userop';
|
|
@@ -24,8 +24,9 @@ interface PreparedUserOperationData {
|
|
|
24
24
|
transaction: UserOperationTransaction;
|
|
25
25
|
}
|
|
26
26
|
interface SignedTransactionData extends PreparedTransactionData {
|
|
27
|
-
originSignatures:
|
|
27
|
+
originSignatures: OriginSignature[];
|
|
28
28
|
destinationSignature: Hex;
|
|
29
|
+
targetExecutionSignature: Hex | undefined;
|
|
29
30
|
}
|
|
30
31
|
interface SignedUserOperationData extends PreparedUserOperationData {
|
|
31
32
|
signature: Hex;
|
|
@@ -38,10 +39,13 @@ declare function getTransactionMessages(config: RhinestoneConfig, preparedTransa
|
|
|
38
39
|
destination: TypedDataDefinition;
|
|
39
40
|
};
|
|
40
41
|
declare function signTransaction(config: RhinestoneConfig, preparedTransaction: PreparedTransactionData): Promise<SignedTransactionData>;
|
|
42
|
+
declare function getTargetExecutionSignature(config: RhinestoneConfig, intentOp: IntentOp, targetChain: Chain, signers: SignerSet | undefined): Promise<`0x${string}` | undefined>;
|
|
41
43
|
declare function signUserOperation(config: RhinestoneConfig, preparedUserOperation: PreparedUserOperationData): Promise<SignedUserOperationData>;
|
|
42
44
|
declare function signAuthorizations(config: RhinestoneConfig, preparedTransaction: PreparedTransactionData): Promise<SignedAuthorization[]>;
|
|
43
45
|
declare function signMessage(config: RhinestoneConfig, message: SignableMessage, chain: Chain, signers: SignerSet | undefined): Promise<`0x${string}`>;
|
|
44
|
-
declare function signTypedData<typedData extends TypedData | Record<string, unknown> = TypedData, primaryType extends keyof typedData | 'EIP712Domain' = keyof typedData>(config: RhinestoneConfig, parameters: HashTypedDataParameters<typedData, primaryType>, chain: Chain, signers: SignerSet | undefined
|
|
46
|
+
declare function signTypedData<typedData extends TypedData | Record<string, unknown> = TypedData, primaryType extends keyof typedData | 'EIP712Domain' = keyof typedData>(config: RhinestoneConfig, parameters: HashTypedDataParameters<typedData, primaryType>, chain: Chain, signers: SignerSet | undefined, options?: {
|
|
47
|
+
skipErc6492?: boolean;
|
|
48
|
+
}): Promise<`0x${string}`>;
|
|
45
49
|
declare function signAuthorizationsInternal(config: RhinestoneConfig, data: IntentRoute | UserOperation): Promise<SignedAuthorization[]>;
|
|
46
50
|
declare function submitTransaction(config: RhinestoneConfig, signedTransaction: SignedTransactionData, authorizations: SignedAuthorizationList, dryRun?: boolean): Promise<TransactionResult>;
|
|
47
51
|
declare function submitUserOperation(config: RhinestoneConfig, signedUserOperation: SignedUserOperationData): Promise<UserOperationResult>;
|
|
@@ -69,15 +73,15 @@ declare function prepareTransactionAsIntent(config: RhinestoneConfig, sourceChai
|
|
|
69
73
|
to: Address;
|
|
70
74
|
data: Hex;
|
|
71
75
|
}[];
|
|
72
|
-
} | undefined): Promise<IntentRoute>;
|
|
73
|
-
declare function signIntent(config: RhinestoneConfig, intentOp: IntentOp, signers?: SignerSet): Promise<{
|
|
74
|
-
originSignatures:
|
|
76
|
+
} | undefined, signers: SignerSet | undefined): Promise<IntentRoute>;
|
|
77
|
+
declare function signIntent(config: RhinestoneConfig, intentOp: IntentOp, targetChain: Chain, signers?: SignerSet, targetExecution?: boolean): Promise<{
|
|
78
|
+
originSignatures: OriginSignature[];
|
|
75
79
|
destinationSignature: `0x${string}`;
|
|
76
80
|
}>;
|
|
77
81
|
declare function getOrchestratorByChain(chainId: number, apiKey: string | undefined, orchestratorUrl?: string): import("../orchestrator").Orchestrator;
|
|
78
|
-
declare function submitIntentInternal(config: RhinestoneConfig, sourceChains: Chain[] | undefined, targetChain: Chain, intentOp: IntentOp, originSignatures:
|
|
82
|
+
declare function submitIntentInternal(config: RhinestoneConfig, sourceChains: Chain[] | undefined, targetChain: Chain, intentOp: IntentOp, originSignatures: OriginSignature[], destinationSignature: Hex, targetExecutionSignature: Hex | undefined, authorizations: SignedAuthorizationList, dryRun: boolean): Promise<TransactionResult>;
|
|
79
83
|
declare function getValidatorAccount(config: RhinestoneConfig, 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>;
|
|
80
84
|
declare function parseCalls(calls: CalldataInput[], chainId: number): Call[];
|
|
81
|
-
export { prepareTransaction, getTransactionMessages, signTransaction, signAuthorizations, signAuthorizationsInternal, signMessage, signTypedData, submitTransaction, prepareUserOperation, signUserOperation, submitUserOperation, getOrchestratorByChain, signIntent, prepareTransactionAsIntent, submitIntentInternal, getValidatorAccount, parseCalls, getTokenRequests, resolveCallInputs, getIntentAccount, };
|
|
85
|
+
export { prepareTransaction, getTransactionMessages, signTransaction, signAuthorizations, signAuthorizationsInternal, signMessage, signTypedData, submitTransaction, prepareUserOperation, signUserOperation, submitUserOperation, getOrchestratorByChain, signIntent, prepareTransactionAsIntent, submitIntentInternal, getValidatorAccount, parseCalls, getTokenRequests, resolveCallInputs, getIntentAccount, getTargetExecutionSignature, };
|
|
82
86
|
export type { IntentRoute, TransactionResult, PreparedTransactionData, PreparedUserOperationData, SignedTransactionData, SignedUserOperationData, UserOperationResult, };
|
|
83
87
|
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../execution/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,KAAK,EAKV,KAAK,uBAAuB,EAC5B,KAAK,GAAG,EAIR,KAAK,YAAY,EAEjB,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,uBAAuB,EAC5B,KAAK,SAAS,EACd,KAAK,mBAAmB,EAIzB,MAAM,MAAM,CAAA;AACb,OAAO,EAGL,KAAK,aAAa,EACnB,MAAM,0BAA0B,CAAA;
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../execution/utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,6 +20,7 @@ exports.parseCalls = parseCalls;
|
|
|
20
20
|
exports.getTokenRequests = getTokenRequests;
|
|
21
21
|
exports.resolveCallInputs = resolveCallInputs;
|
|
22
22
|
exports.getIntentAccount = getIntentAccount;
|
|
23
|
+
exports.getTargetExecutionSignature = getTargetExecutionSignature;
|
|
23
24
|
const viem_1 = require("viem");
|
|
24
25
|
const account_abstraction_1 = require("viem/account-abstraction");
|
|
25
26
|
const erc7739_1 = require("viem/experimental/erc7739");
|
|
@@ -31,6 +32,7 @@ const core_1 = require("../modules/validators/core");
|
|
|
31
32
|
const orchestrator_1 = require("../orchestrator");
|
|
32
33
|
const consts_1 = require("../orchestrator/consts");
|
|
33
34
|
const registry_1 = require("../orchestrator/registry");
|
|
35
|
+
const types_1 = require("../orchestrator/types");
|
|
34
36
|
const compact_1 = require("./compact");
|
|
35
37
|
const error_1 = require("./error");
|
|
36
38
|
const permit2_1 = require("./permit2");
|
|
@@ -42,7 +44,7 @@ async function prepareTransaction(config, transaction) {
|
|
|
42
44
|
if (isUserOpSigner) {
|
|
43
45
|
throw new error_1.SignerNotSupportedError();
|
|
44
46
|
}
|
|
45
|
-
const intentRoute = await prepareTransactionAsIntent(config, sourceChains, targetChain, await resolveCallInputs(transaction.calls, config, targetChain, accountAddress), transaction.gasLimit, tokenRequests, recipient, sponsored, eip7702InitSignature, settlementLayers, sourceAssets, feeAsset, lockFunds, account);
|
|
47
|
+
const intentRoute = await prepareTransactionAsIntent(config, sourceChains, targetChain, await resolveCallInputs(transaction.calls, config, targetChain, accountAddress), transaction.gasLimit, tokenRequests, recipient, sponsored, eip7702InitSignature, settlementLayers, sourceAssets, feeAsset, lockFunds, account, signers);
|
|
46
48
|
return {
|
|
47
49
|
intentRoute,
|
|
48
50
|
transaction,
|
|
@@ -81,19 +83,35 @@ async function resolveCallInputs(inputs, config, chain, accountAddress) {
|
|
|
81
83
|
return resolved;
|
|
82
84
|
}
|
|
83
85
|
function getTransactionMessages(config, preparedTransaction) {
|
|
84
|
-
return getIntentMessages(config, preparedTransaction.intentRoute.intentOp);
|
|
86
|
+
return getIntentMessages(config, preparedTransaction.intentRoute.intentOp, false);
|
|
85
87
|
}
|
|
86
88
|
async function signTransaction(config, preparedTransaction) {
|
|
87
89
|
const { signers } = getTransactionParams(preparedTransaction.transaction);
|
|
88
90
|
const intentRoute = preparedTransaction.intentRoute;
|
|
89
|
-
const
|
|
91
|
+
const targetChain = 'targetChain' in preparedTransaction.transaction
|
|
92
|
+
? preparedTransaction.transaction.targetChain
|
|
93
|
+
: preparedTransaction.transaction.chain;
|
|
94
|
+
const { originSignatures, destinationSignature } = await signIntent(config, intentRoute.intentOp, targetChain, signers, false);
|
|
95
|
+
const targetExecutionSignature = await getTargetExecutionSignature(config, intentRoute.intentOp, targetChain, signers);
|
|
90
96
|
return {
|
|
91
97
|
intentRoute,
|
|
92
98
|
transaction: preparedTransaction.transaction,
|
|
93
99
|
originSignatures,
|
|
94
100
|
destinationSignature,
|
|
101
|
+
targetExecutionSignature,
|
|
95
102
|
};
|
|
96
103
|
}
|
|
104
|
+
async function getTargetExecutionSignature(config, intentOp, targetChain, signers) {
|
|
105
|
+
if (signers?.type !== 'experimental_session') {
|
|
106
|
+
return undefined;
|
|
107
|
+
}
|
|
108
|
+
const targetExecutionIntentOp = {
|
|
109
|
+
...intentOp,
|
|
110
|
+
nonce: intentOp.targetExecutionNonce,
|
|
111
|
+
};
|
|
112
|
+
const { destinationSignature: targetExecutionSignature } = await signIntent(config, targetExecutionIntentOp, targetChain, signers, true);
|
|
113
|
+
return targetExecutionSignature;
|
|
114
|
+
}
|
|
97
115
|
async function signUserOperation(config, preparedUserOperation) {
|
|
98
116
|
const chain = preparedUserOperation.transaction.chain;
|
|
99
117
|
const userOp = preparedUserOperation.userOperation;
|
|
@@ -118,13 +136,13 @@ async function signMessage(config, message, chain, signers) {
|
|
|
118
136
|
const ownerValidator = (0, validators_1.getOwnerValidator)(config);
|
|
119
137
|
const isRoot = validator.address === ownerValidator.address;
|
|
120
138
|
const hash = (0, viem_1.hashMessage)(message);
|
|
121
|
-
const signature = await (0, accounts_1.
|
|
139
|
+
const signature = await (0, accounts_1.getEip1271Signature)(config, signers, chain, {
|
|
122
140
|
address: validator.address,
|
|
123
141
|
isRoot,
|
|
124
142
|
}, hash);
|
|
125
143
|
return await (0, accounts_1.toErc6492Signature)(config, signature, chain);
|
|
126
144
|
}
|
|
127
|
-
async function signTypedData(config, parameters, chain, signers) {
|
|
145
|
+
async function signTypedData(config, parameters, chain, signers, options) {
|
|
128
146
|
const validator = getValidator(config, signers);
|
|
129
147
|
if (!validator) {
|
|
130
148
|
throw new Error('Validator not available');
|
|
@@ -141,7 +159,10 @@ async function signTypedData(config, parameters, chain, signers) {
|
|
|
141
159
|
address: validator.address,
|
|
142
160
|
isRoot,
|
|
143
161
|
}, parameters);
|
|
144
|
-
|
|
162
|
+
if (!options?.skipErc6492) {
|
|
163
|
+
return await (0, accounts_1.toErc6492Signature)(config, signature, chain);
|
|
164
|
+
}
|
|
165
|
+
return signature;
|
|
145
166
|
}
|
|
146
167
|
async function signTypedDataWithSession(config, chain, validator, signers, parameters) {
|
|
147
168
|
const { name, version, chainId, verifyingContract, salt } = (0, accounts_1.getEip712Domain)(config, chain);
|
|
@@ -216,10 +237,10 @@ async function signAuthorizationsInternal(config, data) {
|
|
|
216
237
|
return authorizations;
|
|
217
238
|
}
|
|
218
239
|
async function submitTransaction(config, signedTransaction, authorizations, dryRun = false) {
|
|
219
|
-
const { intentRoute, transaction, originSignatures, destinationSignature } = signedTransaction;
|
|
240
|
+
const { intentRoute, transaction, originSignatures, destinationSignature, targetExecutionSignature, } = signedTransaction;
|
|
220
241
|
const { sourceChains, targetChain } = getTransactionParams(transaction);
|
|
221
242
|
const intentOp = intentRoute.intentOp;
|
|
222
|
-
return await submitIntent(config, sourceChains, targetChain, intentOp, originSignatures, destinationSignature, authorizations, dryRun);
|
|
243
|
+
return await submitIntent(config, sourceChains, targetChain, intentOp, originSignatures, destinationSignature, targetExecutionSignature, authorizations, dryRun);
|
|
223
244
|
}
|
|
224
245
|
async function submitUserOperation(config, signedUserOperation) {
|
|
225
246
|
const chain = signedUserOperation.transaction.chain;
|
|
@@ -324,7 +345,7 @@ function getIntentAccount(config, eip7702InitSignature, account) {
|
|
|
324
345
|
delegations,
|
|
325
346
|
};
|
|
326
347
|
}
|
|
327
|
-
async function prepareTransactionAsIntent(config, sourceChains, targetChain, callInputs, gasLimit, tokenRequests, recipientInput, sponsored, eip7702InitSignature, settlementLayers, sourceAssets, feeAsset, lockFunds, account) {
|
|
348
|
+
async function prepareTransactionAsIntent(config, sourceChains, targetChain, callInputs, gasLimit, tokenRequests, recipientInput, sponsored, eip7702InitSignature, settlementLayers, sourceAssets, feeAsset, lockFunds, account, signers) {
|
|
328
349
|
const calls = parseCalls(callInputs, targetChain.id);
|
|
329
350
|
const accountAccessList = createAccountAccessList(sourceChains, sourceAssets);
|
|
330
351
|
function getRecipient(recipient) {
|
|
@@ -344,6 +365,9 @@ async function prepareTransactionAsIntent(config, sourceChains, targetChain, cal
|
|
|
344
365
|
}
|
|
345
366
|
const intentAccount = getIntentAccount(config, eip7702InitSignature, account);
|
|
346
367
|
const recipient = getRecipient(recipientInput);
|
|
368
|
+
const signatureMode = signers?.type === 'experimental_session'
|
|
369
|
+
? types_1.SIG_MODE_EMISSARY_EXECUTION_ERC1271
|
|
370
|
+
: types_1.SIG_MODE_ERC1271_EMISSARY;
|
|
347
371
|
const metaIntent = {
|
|
348
372
|
destinationChainId: targetChain.id,
|
|
349
373
|
tokenRequests: tokenRequests.map((tokenRequest) => ({
|
|
@@ -372,14 +396,15 @@ async function prepareTransactionAsIntent(config, sourceChains, targetChain, cal
|
|
|
372
396
|
}
|
|
373
397
|
: undefined,
|
|
374
398
|
settlementLayers,
|
|
399
|
+
signatureMode,
|
|
375
400
|
},
|
|
376
401
|
};
|
|
377
402
|
const orchestrator = getOrchestratorByChain(targetChain.id, config.apiKey, config.endpointUrl);
|
|
378
403
|
const intentRoute = await orchestrator.getIntentRoute(metaIntent);
|
|
379
404
|
return intentRoute;
|
|
380
405
|
}
|
|
381
|
-
async function signIntent(config, intentOp, signers) {
|
|
382
|
-
const { origin } = getIntentMessages(config, intentOp);
|
|
406
|
+
async function signIntent(config, intentOp, targetChain, signers, targetExecution) {
|
|
407
|
+
const { origin, destination } = getIntentMessages(config, intentOp, targetExecution ?? false);
|
|
383
408
|
if (config.account?.type === 'eoa') {
|
|
384
409
|
const eoa = config.eoa;
|
|
385
410
|
if (!eoa) {
|
|
@@ -410,21 +435,49 @@ async function signIntent(config, intentOp, signers) {
|
|
|
410
435
|
const originSignatures = [];
|
|
411
436
|
for (const typedData of origin) {
|
|
412
437
|
const chain = (0, registry_1.getChainById)(typedData.domain?.chainId);
|
|
413
|
-
|
|
438
|
+
// For same chain transactions, we need to modify the origin signers
|
|
439
|
+
// Specifically, we need to remove the enable data in this case
|
|
440
|
+
const matchesTargetChain = chain.id === targetChain.id;
|
|
441
|
+
const originSigners = signers?.type === 'experimental_session'
|
|
442
|
+
? {
|
|
443
|
+
type: 'experimental_session',
|
|
444
|
+
session: signers.session,
|
|
445
|
+
verifyExecutions: matchesTargetChain
|
|
446
|
+
? signers.verifyExecutions
|
|
447
|
+
: undefined,
|
|
448
|
+
enableData: matchesTargetChain ? signers.enableData : undefined,
|
|
449
|
+
}
|
|
450
|
+
: signers;
|
|
451
|
+
const signature = await signIntentTypedData(config, originSigners, validator, isRoot, typedData, chain, targetExecution ?? false);
|
|
414
452
|
originSignatures.push(signature);
|
|
415
453
|
}
|
|
416
|
-
const destinationSignature = originSignatures
|
|
454
|
+
const destinationSignature = await getDestinationSignature(config, signers, validator, isRoot, targetChain, destination, originSignatures, targetExecution ?? false);
|
|
417
455
|
return {
|
|
418
456
|
originSignatures,
|
|
419
457
|
destinationSignature,
|
|
420
458
|
};
|
|
421
459
|
}
|
|
422
|
-
function
|
|
460
|
+
async function getDestinationSignature(config, signers, validator, isRoot, targetChain, destination, originSignatures, targetExecution) {
|
|
461
|
+
// For smart sessions, we need to provide a separate destination signature for the target chain
|
|
462
|
+
if (signers?.type === 'experimental_session') {
|
|
463
|
+
const destinationChain = (0, registry_1.getChainById)(targetChain.id);
|
|
464
|
+
const destinationSignatures = await signIntentTypedData(config, signers, validator, isRoot, destination, destinationChain, targetExecution);
|
|
465
|
+
return typeof destinationSignatures === 'object'
|
|
466
|
+
? destinationSignatures.preClaimSig
|
|
467
|
+
: (destinationSignatures ?? '0x');
|
|
468
|
+
}
|
|
469
|
+
const lastOriginSignature = originSignatures.at(-1);
|
|
470
|
+
return typeof lastOriginSignature === 'object'
|
|
471
|
+
? lastOriginSignature.preClaimSig
|
|
472
|
+
: (lastOriginSignature ?? '0x');
|
|
473
|
+
}
|
|
474
|
+
function getIntentMessages(config, intentOp, targetExecution) {
|
|
423
475
|
const address = (0, accounts_1.getAddress)(config);
|
|
424
476
|
const intentExecutor = (0, modules_1.getIntentExecutor)(config);
|
|
425
477
|
const withPermit2 = intentOp.elements.some((element) => element.mandate.qualifier.settlementContext.fundingMethod === 'PERMIT2');
|
|
426
|
-
const withIntentExecutorOps =
|
|
427
|
-
|
|
478
|
+
const withIntentExecutorOps = targetExecution ||
|
|
479
|
+
intentOp.elements.some((element) => element.mandate.qualifier.settlementContext.settlementLayer ===
|
|
480
|
+
'INTENT_EXECUTOR');
|
|
428
481
|
const origin = [];
|
|
429
482
|
for (const element of intentOp.elements) {
|
|
430
483
|
if (withIntentExecutorOps) {
|
|
@@ -446,7 +499,7 @@ function getIntentMessages(config, intentOp) {
|
|
|
446
499
|
destination,
|
|
447
500
|
};
|
|
448
501
|
}
|
|
449
|
-
async function signIntentTypedData(config, signers, validator, isRoot, parameters, chain) {
|
|
502
|
+
async function signIntentTypedData(config, signers, validator, isRoot, parameters, chain, targetExecution) {
|
|
450
503
|
if ((0, core_1.supportsEip712)(validator)) {
|
|
451
504
|
return await (0, accounts_1.getTypedDataPackedSignature)(config, signers, chain, {
|
|
452
505
|
address: validator.address,
|
|
@@ -454,7 +507,35 @@ async function signIntentTypedData(config, signers, validator, isRoot, parameter
|
|
|
454
507
|
}, parameters);
|
|
455
508
|
}
|
|
456
509
|
const hash = (0, viem_1.hashTypedData)(parameters);
|
|
457
|
-
|
|
510
|
+
if (signers?.type === 'experimental_session' && signers.verifyExecutions) {
|
|
511
|
+
if (targetExecution) {
|
|
512
|
+
return await (0, accounts_1.getEmissarySignature)(config, {
|
|
513
|
+
type: 'experimental_session',
|
|
514
|
+
session: signers.session,
|
|
515
|
+
verifyExecutions: true,
|
|
516
|
+
}, chain, hash);
|
|
517
|
+
}
|
|
518
|
+
const eip1271Signature = await (0, accounts_1.getEip1271Signature)(config, {
|
|
519
|
+
type: 'experimental_session',
|
|
520
|
+
session: signers.session,
|
|
521
|
+
verifyExecutions: false,
|
|
522
|
+
enableData: signers.enableData,
|
|
523
|
+
}, chain, {
|
|
524
|
+
address: validator.address,
|
|
525
|
+
isRoot,
|
|
526
|
+
}, hash);
|
|
527
|
+
const emissarySignature = await (0, accounts_1.getEmissarySignature)(config, {
|
|
528
|
+
type: 'experimental_session',
|
|
529
|
+
session: signers.session,
|
|
530
|
+
verifyExecutions: true,
|
|
531
|
+
enableData: signers.enableData,
|
|
532
|
+
}, chain, hash);
|
|
533
|
+
return {
|
|
534
|
+
preClaimSig: emissarySignature,
|
|
535
|
+
notarizedClaimSig: eip1271Signature,
|
|
536
|
+
};
|
|
537
|
+
}
|
|
538
|
+
return await (0, accounts_1.getEip1271Signature)(config, signers, chain, {
|
|
458
539
|
address: validator.address,
|
|
459
540
|
isRoot,
|
|
460
541
|
}, hash);
|
|
@@ -513,8 +594,8 @@ async function submitUserOp(config, chain, userOp, signature) {
|
|
|
513
594
|
chain: chain.id,
|
|
514
595
|
};
|
|
515
596
|
}
|
|
516
|
-
async function submitIntent(config, sourceChains, targetChain, intentOp, originSignatures, destinationSignature, authorizations, dryRun) {
|
|
517
|
-
return submitIntentInternal(config, sourceChains, targetChain, intentOp, originSignatures, destinationSignature, authorizations, dryRun);
|
|
597
|
+
async function submitIntent(config, sourceChains, targetChain, intentOp, originSignatures, destinationSignature, targetExecutionSignature, authorizations, dryRun) {
|
|
598
|
+
return submitIntentInternal(config, sourceChains, targetChain, intentOp, originSignatures, destinationSignature, targetExecutionSignature, authorizations, dryRun);
|
|
518
599
|
}
|
|
519
600
|
function getOrchestratorByChain(chainId, apiKey, orchestratorUrl) {
|
|
520
601
|
if (orchestratorUrl) {
|
|
@@ -525,11 +606,12 @@ function getOrchestratorByChain(chainId, apiKey, orchestratorUrl) {
|
|
|
525
606
|
: consts_1.PROD_ORCHESTRATOR_URL;
|
|
526
607
|
return (0, orchestrator_1.getOrchestrator)(apiKey, defaultOrchestratorUrl);
|
|
527
608
|
}
|
|
528
|
-
function createSignedIntentOp(intentOp, originSignatures, destinationSignature, authorizations) {
|
|
609
|
+
function createSignedIntentOp(intentOp, originSignatures, destinationSignature, targetExecutionSignature, authorizations) {
|
|
529
610
|
return {
|
|
530
611
|
...intentOp,
|
|
531
612
|
originSignatures,
|
|
532
613
|
destinationSignature,
|
|
614
|
+
targetExecutionSignature,
|
|
533
615
|
signedAuthorizations: authorizations.length > 0
|
|
534
616
|
? authorizations.map((authorization) => ({
|
|
535
617
|
chainId: authorization.chainId,
|
|
@@ -542,8 +624,8 @@ function createSignedIntentOp(intentOp, originSignatures, destinationSignature,
|
|
|
542
624
|
: undefined,
|
|
543
625
|
};
|
|
544
626
|
}
|
|
545
|
-
async function submitIntentInternal(config, sourceChains, targetChain, intentOp, originSignatures, destinationSignature, authorizations, dryRun) {
|
|
546
|
-
const signedIntentOp = createSignedIntentOp(intentOp, originSignatures, destinationSignature, authorizations);
|
|
627
|
+
async function submitIntentInternal(config, sourceChains, targetChain, intentOp, originSignatures, destinationSignature, targetExecutionSignature, authorizations, dryRun) {
|
|
628
|
+
const signedIntentOp = createSignedIntentOp(intentOp, originSignatures, destinationSignature, targetExecutionSignature, authorizations);
|
|
547
629
|
const orchestrator = getOrchestratorByChain(targetChain.id, config.apiKey, config.endpointUrl);
|
|
548
630
|
const intentResults = await orchestrator.submitIntent(signedIntentOp, dryRun);
|
|
549
631
|
return {
|
|
@@ -595,7 +677,7 @@ function getValidator(config, signers) {
|
|
|
595
677
|
}
|
|
596
678
|
}
|
|
597
679
|
// Smart sessions
|
|
598
|
-
const withSession = signers.type === 'experimental_session'
|
|
680
|
+
const withSession = signers.type === 'experimental_session';
|
|
599
681
|
if (withSession) {
|
|
600
682
|
return (0, validators_1.getSmartSessionValidator)(config);
|
|
601
683
|
}
|
|
@@ -618,10 +700,18 @@ function createAccountAccessList(sourceChains, sourceAssets) {
|
|
|
618
700
|
if (!sourceChains && !sourceAssets)
|
|
619
701
|
return undefined;
|
|
620
702
|
const chainIds = sourceChains?.map((chain) => chain.id);
|
|
621
|
-
if (!sourceAssets)
|
|
703
|
+
if (!sourceAssets)
|
|
622
704
|
return { chainIds };
|
|
623
|
-
}
|
|
624
705
|
if (Array.isArray(sourceAssets)) {
|
|
706
|
+
const isExactConfig = sourceAssets.length > 0 && typeof sourceAssets[0] !== 'string';
|
|
707
|
+
if (isExactConfig) {
|
|
708
|
+
const resolvedConfigs = sourceAssets.map((config) => ({
|
|
709
|
+
chainId: config.chain.id,
|
|
710
|
+
tokenAddress: (0, registry_1.resolveTokenAddress)(config.address, config.chain.id),
|
|
711
|
+
amount: config.amount,
|
|
712
|
+
}));
|
|
713
|
+
return resolvedConfigs;
|
|
714
|
+
}
|
|
625
715
|
return chainIds
|
|
626
716
|
? { chainIds, tokens: sourceAssets }
|
|
627
717
|
: { tokens: sourceAssets };
|
package/dist/src/index.d.ts
CHANGED
|
@@ -6,8 +6,8 @@ import { deployAccountsForOwners } from './actions/deployment';
|
|
|
6
6
|
import { type TransactionResult, type TransactionStatus, type UserOperationResult } from './execution';
|
|
7
7
|
import { type BatchPermit2Result, checkERC20AllowanceDirect, getPermit2Address, type MultiChainPermit2Config, type MultiChainPermit2Result, signPermit2Batch, signPermit2Sequential } from './execution/permit2';
|
|
8
8
|
import { type IntentRoute, type PreparedTransactionData, type PreparedUserOperationData, type SignedTransactionData, type SignedUserOperationData } from './execution/utils';
|
|
9
|
-
import type
|
|
10
|
-
import { type ApprovalRequired, getAllSupportedChainsAndTokens, getSupportedTokens, getTokenAddress, getTokenDecimals, type
|
|
9
|
+
import { type SessionDetails } from './modules/validators/smart-sessions';
|
|
10
|
+
import { type ApprovalRequired, getAllSupportedChainsAndTokens, getSupportedTokens, getTokenAddress, getTokenDecimals, type IntentInput, type IntentOp, type IntentOpStatus, type Portfolio, type SettlementLayer, type SignedIntentOp, type SplitIntentsInput, type SplitIntentsResult, type TokenRequirements, type WrapRequired } from './orchestrator';
|
|
11
11
|
import type { AccountProviderConfig, AccountType, BundlerConfig, Call, CallInput, MultiFactorValidatorConfig, OwnableValidatorConfig, OwnerSet, PaymasterConfig, Policy, ProviderConfig, Recovery, RhinestoneAccountConfig, RhinestoneConfig, RhinestoneSDKConfig, Session, SignerSet, TokenRequest, TokenSymbol, Transaction, UniversalActionPolicyParamCondition, UserOperationTransaction, WebauthnValidatorConfig } from './types';
|
|
12
12
|
interface RhinestoneAccount {
|
|
13
13
|
config: RhinestoneAccountConfig;
|
|
@@ -42,8 +42,9 @@ interface RhinestoneAccount {
|
|
|
42
42
|
waitForExecution(result: UserOperationResult, acceptsPreconfirmations?: boolean): Promise<UserOperationReceipt>;
|
|
43
43
|
getAddress: () => Address;
|
|
44
44
|
getPortfolio: (onTestnets?: boolean) => Promise<Portfolio>;
|
|
45
|
-
getMaxSpendableAmount: (chain: Chain, tokenAddress: Address | TokenSymbol, gasUnits: bigint, sponsored?: boolean) => Promise<bigint>;
|
|
46
45
|
experimental_getSessionDetails: (sessions: Session[]) => Promise<SessionDetails>;
|
|
46
|
+
experimental_isSessionEnabled: (session: Session) => Promise<boolean>;
|
|
47
|
+
experimental_signEnableSession: (details: SessionDetails) => Promise<Hex>;
|
|
47
48
|
getOwners: (chain: Chain) => Promise<{
|
|
48
49
|
accounts: Address[];
|
|
49
50
|
threshold: number;
|
|
@@ -70,9 +71,10 @@ declare class RhinestoneSDK {
|
|
|
70
71
|
getIntentStatus(intentId: bigint): Promise<TransactionStatus & {
|
|
71
72
|
status: IntentOpStatus["status"];
|
|
72
73
|
}>;
|
|
74
|
+
splitIntents(input: SplitIntentsInput): Promise<SplitIntentsResult>;
|
|
73
75
|
}
|
|
74
76
|
export { RhinestoneSDK, createRhinestoneAccount, deployAccountsForOwners, walletClientToAccount, wrapParaAccount, getSupportedTokens, getTokenAddress, getTokenDecimals, getAllSupportedChainsAndTokens, deployStandaloneWithEoaInternal as deployStandaloneWithEoa, checkERC20AllowanceDirect, getPermit2Address, signPermit2Batch, signPermit2Sequential, };
|
|
75
|
-
export type { RhinestoneAccount, AccountType, RhinestoneAccountConfig, AccountProviderConfig, ProviderConfig, BundlerConfig, PaymasterConfig, Transaction, TokenSymbol, CallInput, Call, TokenRequest, OwnerSet, OwnableValidatorConfig, WebauthnValidatorConfig, MultiFactorValidatorConfig, SignerSet, Session, Recovery, Policy, UniversalActionPolicyParamCondition, PreparedTransactionData, SignedTransactionData, TransactionResult, PreparedUserOperationData, SignedUserOperationData, UserOperationResult,
|
|
77
|
+
export type { RhinestoneAccount, AccountType, RhinestoneAccountConfig, AccountProviderConfig, ProviderConfig, BundlerConfig, PaymasterConfig, Transaction, TokenSymbol, CallInput, Call, TokenRequest, OwnerSet, OwnableValidatorConfig, WebauthnValidatorConfig, MultiFactorValidatorConfig, SignerSet, Session, Recovery, Policy, UniversalActionPolicyParamCondition, PreparedTransactionData, SignedTransactionData, TransactionResult, PreparedUserOperationData, SignedUserOperationData, UserOperationResult, IntentInput, IntentOp, IntentOpStatus, IntentRoute, SettlementLayer, SignedIntentOp, SplitIntentsInput, SplitIntentsResult, Portfolio, TokenRequirements, WrapRequired, ApprovalRequired, MultiChainPermit2Config, MultiChainPermit2Result, BatchPermit2Result, };
|
|
76
78
|
export { generateCredentialId, getCredentialIds, hasCredentialById, hasCredential, addCredential, removeCredential, setThreshold, getCredentialInfo, getThreshold, getCredentials, WEBAUTHN_VALIDATOR_ABI, } from './modules/validators/webauthn-contract';
|
|
77
79
|
export { getOrchestrator } from './orchestrator';
|
|
78
80
|
//# 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,EACV,OAAO,EACP,KAAK,EACL,uBAAuB,EACvB,GAAG,EACH,eAAe,EACf,uBAAuB,EACvB,SAAS,EACT,mBAAmB,EACnB,OAAO,EACR,MAAM,MAAM,CAAA;AACb,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAA;AACpE,OAAO,EAWL,uBAAuB,IAAI,+BAA+B,EAC3D,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAChF,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAA;AAC9D,OAAO,EAML,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EAEzB,MAAM,aAAa,CAAA;AACpB,OAAO,EACL,KAAK,kBAAkB,EACvB,yBAAyB,EAEzB,iBAAiB,EACjB,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,EAC5B,gBAAgB,EAChB,qBAAqB,EACtB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAEL,KAAK,WAAW,EAChB,KAAK,uBAAuB,EAC5B,KAAK,yBAAyB,EAG9B,KAAK,qBAAqB,EAC1B,KAAK,uBAAuB,EAQ7B,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../index.ts"],"names":[],"mappings":"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"}
|