@rhinestone/sdk 0.12.8 → 0.13.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/dist/src/accounts/custom.d.ts +24 -0
- package/dist/src/accounts/custom.d.ts.map +1 -0
- package/dist/src/accounts/custom.js +128 -0
- package/dist/src/accounts/index.d.ts +7 -14
- package/dist/src/accounts/index.d.ts.map +1 -1
- package/dist/src/accounts/index.js +25 -0
- package/dist/src/actions/registry.test.js +1 -2
- package/dist/src/execution/smart-session.d.ts.map +1 -1
- package/dist/src/execution/smart-session.js +3 -0
- package/dist/src/index.d.ts +1 -2
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +3 -0
- package/dist/src/modules/index.d.ts.map +1 -1
- package/dist/src/modules/index.js +8 -0
- package/dist/src/modules/omni-account.d.ts +2 -1
- package/dist/src/modules/omni-account.d.ts.map +1 -1
- package/dist/src/modules/omni-account.js +3 -1
- package/dist/src/types.d.ts +26 -2
- package/dist/src/types.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { type Abi, type Address, type Hex, type PublicClient } from 'viem';
|
|
2
|
+
import { type SmartAccount, type SmartAccountImplementation } from 'viem/account-abstraction';
|
|
3
|
+
import type { Module } from '../modules/common';
|
|
4
|
+
import type { EnableSessionData } from '../modules/validators/smart-sessions';
|
|
5
|
+
import type { RhinestoneAccountConfig, Session } from '../types';
|
|
6
|
+
import { type ValidatorConfig } from './utils';
|
|
7
|
+
declare function getDeployArgs(config: RhinestoneAccountConfig): {
|
|
8
|
+
factory: Address;
|
|
9
|
+
factoryData: Hex;
|
|
10
|
+
implementation: Address;
|
|
11
|
+
initializationCallData: Hex | null;
|
|
12
|
+
};
|
|
13
|
+
declare function getInstallData(config: RhinestoneAccountConfig, module: Module): Hex[];
|
|
14
|
+
declare function getAddress(config: RhinestoneAccountConfig): Address;
|
|
15
|
+
declare function getPackedSignature(config: RhinestoneAccountConfig, signFn: (message: Hex) => Promise<Hex>, hash: Hex, validator: ValidatorConfig, transformSignature?: (signature: Hex) => Hex): Promise<`0x${string}`>;
|
|
16
|
+
declare function getSessionSmartAccount(config: RhinestoneAccountConfig, client: PublicClient, address: Address, session: Session, validatorAddress: Address, enableData: EnableSessionData | null): Promise<SmartAccount<SmartAccountImplementation<Abi, "0.7">>>;
|
|
17
|
+
declare function getBaseSmartAccount(address: Address, client: PublicClient, validatorAddress: Address, getStubSignature: () => Promise<Hex>, signUserOperation: (hash: Hex) => Promise<Hex>): Promise<SmartAccount<SmartAccountImplementation<Abi, '0.7'>>>;
|
|
18
|
+
declare function getSmartAccount(config: RhinestoneAccountConfig, client: PublicClient, address: Address, validatorAddress: Address, sign: (hash: Hex) => Promise<Hex>): Promise<SmartAccount<SmartAccountImplementation<Abi, "0.7">>>;
|
|
19
|
+
declare function get7702InitCalls(config: RhinestoneAccountConfig): {
|
|
20
|
+
to: Address;
|
|
21
|
+
data: Hex;
|
|
22
|
+
}[];
|
|
23
|
+
export { getDeployArgs, getInstallData, getAddress, getPackedSignature, getSessionSmartAccount, getBaseSmartAccount, getSmartAccount, get7702InitCalls, };
|
|
24
|
+
//# sourceMappingURL=custom.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"custom.d.ts","sourceRoot":"","sources":["../../../accounts/custom.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,GAAG,EACR,KAAK,OAAO,EAEZ,KAAK,GAAG,EACR,KAAK,YAAY,EAClB,MAAM,MAAM,CAAA;AACb,OAAO,EAIL,KAAK,YAAY,EACjB,KAAK,0BAA0B,EAEhC,MAAM,0BAA0B,CAAA;AACjC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAA;AAC7E,OAAO,KAAK,EAAY,uBAAuB,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AAC1E,OAAO,EAAoC,KAAK,eAAe,EAAE,MAAM,SAAS,CAAA;AAEhF,iBAAS,aAAa,CAAC,MAAM,EAAE,uBAAuB;;;;;EAMrD;AAED,iBAAS,cAAc,CACrB,MAAM,EAAE,uBAAuB,EAC/B,MAAM,EAAE,MAAM,GACb,GAAG,EAAE,CAMP;AAED,iBAAS,UAAU,CAAC,MAAM,EAAE,uBAAuB,GAAG,OAAO,CAM5D;AAED,iBAAe,kBAAkB,CAC/B,MAAM,EAAE,uBAAuB,EAC/B,MAAM,EAAE,CAAC,OAAO,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,EACtC,IAAI,EAAE,GAAG,EACT,SAAS,EAAE,eAAe,EAC1B,kBAAkB,GAAE,CAAC,SAAS,EAAE,GAAG,KAAK,GAA8B,0BAYvE;AAED,iBAAe,sBAAsB,CACnC,MAAM,EAAE,uBAAuB,EAC/B,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,OAAO,EAChB,gBAAgB,EAAE,OAAO,EACzB,UAAU,EAAE,iBAAiB,GAAG,IAAI,iEAyBrC;AAED,iBAAe,mBAAmB,CAChC,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,YAAY,EACpB,gBAAgB,EAAE,OAAO,EACzB,gBAAgB,EAAE,MAAM,OAAO,CAAC,GAAG,CAAC,EACpC,iBAAiB,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,GAC7C,OAAO,CAAC,YAAY,CAAC,0BAA0B,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAgE/D;AAED,iBAAe,eAAe,CAC5B,MAAM,EAAE,uBAAuB,EAC/B,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE,OAAO,EAChB,gBAAgB,EAAE,OAAO,EACzB,IAAI,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,iEAelC;AAED,iBAAS,gBAAgB,CAAC,MAAM,EAAE,uBAAuB;;;IAMxD;AAED,OAAO,EACL,aAAa,EACb,cAAc,EACd,UAAU,EACV,kBAAkB,EAClB,sBAAsB,EACtB,mBAAmB,EACnB,eAAe,EACf,gBAAgB,GACjB,CAAA"}
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getDeployArgs = getDeployArgs;
|
|
4
|
+
exports.getInstallData = getInstallData;
|
|
5
|
+
exports.getAddress = getAddress;
|
|
6
|
+
exports.getPackedSignature = getPackedSignature;
|
|
7
|
+
exports.getSessionSmartAccount = getSessionSmartAccount;
|
|
8
|
+
exports.getBaseSmartAccount = getBaseSmartAccount;
|
|
9
|
+
exports.getSmartAccount = getSmartAccount;
|
|
10
|
+
exports.get7702InitCalls = get7702InitCalls;
|
|
11
|
+
const viem_1 = require("viem");
|
|
12
|
+
const account_abstraction_1 = require("viem/account-abstraction");
|
|
13
|
+
const utils_1 = require("./utils");
|
|
14
|
+
function getDeployArgs(config) {
|
|
15
|
+
if (!config.account || config.account.type !== 'custom') {
|
|
16
|
+
throw new Error('Account provider not found');
|
|
17
|
+
}
|
|
18
|
+
return config.account.custom.getDeployArgs();
|
|
19
|
+
}
|
|
20
|
+
function getInstallData(config, module) {
|
|
21
|
+
if (!config.account || config.account.type !== 'custom') {
|
|
22
|
+
throw new Error('Account provider not found');
|
|
23
|
+
}
|
|
24
|
+
return config.account.custom.getInstallData(module);
|
|
25
|
+
}
|
|
26
|
+
function getAddress(config) {
|
|
27
|
+
if (!config.account || config.account.type !== 'custom') {
|
|
28
|
+
throw new Error('Account provider not found');
|
|
29
|
+
}
|
|
30
|
+
return config.account.custom.getAddress();
|
|
31
|
+
}
|
|
32
|
+
async function getPackedSignature(config, signFn, hash, validator, transformSignature = (signature) => signature) {
|
|
33
|
+
if (!config.account || config.account.type !== 'custom') {
|
|
34
|
+
throw new Error('Account provider not found');
|
|
35
|
+
}
|
|
36
|
+
return config.account.custom.getPackedSignature(signFn, hash, validator, transformSignature);
|
|
37
|
+
}
|
|
38
|
+
async function getSessionSmartAccount(config, client, address, session, validatorAddress, enableData) {
|
|
39
|
+
return await getBaseSmartAccount(address, client, validatorAddress, async () => {
|
|
40
|
+
if (!config.account || config.account.type !== 'custom') {
|
|
41
|
+
throw new Error('Account provider not found');
|
|
42
|
+
}
|
|
43
|
+
return config.account.custom.getSessionStubSignature(session, enableData);
|
|
44
|
+
}, async (hash) => {
|
|
45
|
+
if (!config.account || config.account.type !== 'custom') {
|
|
46
|
+
throw new Error('Account provider not found');
|
|
47
|
+
}
|
|
48
|
+
return config.account.custom.signSessionUserOperation(session, enableData, hash);
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
async function getBaseSmartAccount(address, client, validatorAddress, getStubSignature, signUserOperation) {
|
|
52
|
+
return await (0, account_abstraction_1.toSmartAccount)({
|
|
53
|
+
client,
|
|
54
|
+
entryPoint: {
|
|
55
|
+
abi: account_abstraction_1.entryPoint07Abi,
|
|
56
|
+
address: account_abstraction_1.entryPoint07Address,
|
|
57
|
+
version: '0.7',
|
|
58
|
+
},
|
|
59
|
+
async decodeCalls() {
|
|
60
|
+
throw new Error('Not implemented');
|
|
61
|
+
},
|
|
62
|
+
async encodeCalls(calls) {
|
|
63
|
+
return (0, utils_1.encode7579Calls)({
|
|
64
|
+
mode: {
|
|
65
|
+
type: calls.length > 1 ? 'batchcall' : 'call',
|
|
66
|
+
revertOnError: false,
|
|
67
|
+
selector: '0x',
|
|
68
|
+
context: '0x',
|
|
69
|
+
},
|
|
70
|
+
callData: calls,
|
|
71
|
+
});
|
|
72
|
+
},
|
|
73
|
+
async getAddress() {
|
|
74
|
+
return address;
|
|
75
|
+
},
|
|
76
|
+
async getFactoryArgs() {
|
|
77
|
+
return {};
|
|
78
|
+
},
|
|
79
|
+
async getNonce() {
|
|
80
|
+
const key = (0, viem_1.concat)([validatorAddress, '0x00000000']);
|
|
81
|
+
const nonce = await (0, utils_1.getAccountNonce)(client, {
|
|
82
|
+
address,
|
|
83
|
+
entryPointAddress: account_abstraction_1.entryPoint07Address,
|
|
84
|
+
key: BigInt(key),
|
|
85
|
+
});
|
|
86
|
+
return nonce;
|
|
87
|
+
},
|
|
88
|
+
async getStubSignature() {
|
|
89
|
+
return getStubSignature();
|
|
90
|
+
},
|
|
91
|
+
async signMessage() {
|
|
92
|
+
throw new Error('Not implemented');
|
|
93
|
+
},
|
|
94
|
+
async signTypedData() {
|
|
95
|
+
throw new Error('Not implemented');
|
|
96
|
+
},
|
|
97
|
+
async signUserOperation(parameters) {
|
|
98
|
+
const { chainId = client.chain?.id, ...userOperation } = parameters;
|
|
99
|
+
if (!chainId)
|
|
100
|
+
throw new Error('Chain id not found');
|
|
101
|
+
const hash = (0, account_abstraction_1.getUserOperationHash)({
|
|
102
|
+
userOperation: {
|
|
103
|
+
...userOperation,
|
|
104
|
+
sender: userOperation.sender ?? (await this.getAddress()),
|
|
105
|
+
signature: '0x',
|
|
106
|
+
},
|
|
107
|
+
entryPointAddress: account_abstraction_1.entryPoint07Address,
|
|
108
|
+
entryPointVersion: '0.7',
|
|
109
|
+
chainId: chainId,
|
|
110
|
+
});
|
|
111
|
+
return await signUserOperation(hash);
|
|
112
|
+
},
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
async function getSmartAccount(config, client, address, validatorAddress, sign) {
|
|
116
|
+
return getBaseSmartAccount(address, client, validatorAddress, async () => {
|
|
117
|
+
if (!config.account || config.account.type !== 'custom') {
|
|
118
|
+
throw new Error('Account provider not found');
|
|
119
|
+
}
|
|
120
|
+
return config.account.custom.getStubSignature();
|
|
121
|
+
}, sign);
|
|
122
|
+
}
|
|
123
|
+
function get7702InitCalls(config) {
|
|
124
|
+
if (!config.account || config.account.type !== 'custom') {
|
|
125
|
+
throw new Error('Account provider not found');
|
|
126
|
+
}
|
|
127
|
+
return config.account.custom.get7702InitCalls();
|
|
128
|
+
}
|
|
@@ -1,21 +1,14 @@
|
|
|
1
1
|
import { type Chain, type Hex, type PublicClient } from 'viem';
|
|
2
|
-
import { Module } from '../modules/common';
|
|
3
|
-
import { EnableSessionData } from '../modules/validators/smart-sessions';
|
|
2
|
+
import type { Module } from '../modules/common';
|
|
3
|
+
import type { EnableSessionData } from '../modules/validators/smart-sessions';
|
|
4
4
|
import type { AccountProviderConfig, Call, OwnerSet, RhinestoneAccountConfig, Session } from '../types';
|
|
5
5
|
import { AccountError, Eip7702AccountMustHaveEoaError, Eip7702NotSupportedForAccountError, ExistingEip7702AccountsNotSupportedError, FactoryArgsNotAvailableError, isAccountError, SigningNotSupportedForAccountError, SignMessageNotSupportedByAccountError, SmartSessionsNotEnabledError } from './error';
|
|
6
|
-
import { ValidatorConfig } from './utils';
|
|
6
|
+
import { type ValidatorConfig } from './utils';
|
|
7
7
|
declare function getDeployArgs(config: RhinestoneAccountConfig): {
|
|
8
|
-
factory:
|
|
9
|
-
factoryData:
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
initializationCallData: null;
|
|
13
|
-
} | {
|
|
14
|
-
factory: `0x${string}`;
|
|
15
|
-
factoryData: `0x${string}`;
|
|
16
|
-
salt: `0x${string}`;
|
|
17
|
-
implementation: `0x${string}`;
|
|
18
|
-
initializationCallData: `0x${string}`;
|
|
8
|
+
factory: import("viem").Address;
|
|
9
|
+
factoryData: Hex;
|
|
10
|
+
implementation: import("viem").Address;
|
|
11
|
+
initializationCallData: Hex | null;
|
|
19
12
|
};
|
|
20
13
|
declare function getModuleInstallationCalls(config: RhinestoneAccountConfig, module: Module): Call[];
|
|
21
14
|
declare function getModuleUninstallationCalls(config: RhinestoneAccountConfig, module: Module): Call[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../accounts/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,KAAK,EAMV,KAAK,GAAG,EAER,KAAK,YAAY,EAGlB,MAAM,MAAM,CAAA;AAOb,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../accounts/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,6 +21,7 @@ const smart_session_1 = require("../execution/smart-session");
|
|
|
21
21
|
const modules_1 = require("../modules");
|
|
22
22
|
const validators_1 = require("../modules/validators");
|
|
23
23
|
const core_1 = require("../modules/validators/core");
|
|
24
|
+
const custom_1 = require("./custom");
|
|
24
25
|
const error_1 = require("./error");
|
|
25
26
|
Object.defineProperty(exports, "AccountError", { enumerable: true, get: function () { return error_1.AccountError; } });
|
|
26
27
|
Object.defineProperty(exports, "Eip7702AccountMustHaveEoaError", { enumerable: true, get: function () { return error_1.Eip7702AccountMustHaveEoaError; } });
|
|
@@ -47,6 +48,9 @@ function getDeployArgs(config) {
|
|
|
47
48
|
case 'kernel': {
|
|
48
49
|
return (0, kernel_1.getDeployArgs)(config);
|
|
49
50
|
}
|
|
51
|
+
case 'custom': {
|
|
52
|
+
return (0, custom_1.getDeployArgs)(config);
|
|
53
|
+
}
|
|
50
54
|
}
|
|
51
55
|
}
|
|
52
56
|
function getModuleInstallationCalls(config, module) {
|
|
@@ -63,6 +67,9 @@ function getModuleInstallationCalls(config, module) {
|
|
|
63
67
|
case 'kernel': {
|
|
64
68
|
return (0, kernel_1.getInstallData)(module);
|
|
65
69
|
}
|
|
70
|
+
case 'custom': {
|
|
71
|
+
return (0, custom_1.getInstallData)(config, module);
|
|
72
|
+
}
|
|
66
73
|
}
|
|
67
74
|
}
|
|
68
75
|
const installData = getInstallData();
|
|
@@ -119,6 +126,9 @@ function getAddress(config) {
|
|
|
119
126
|
case 'kernel': {
|
|
120
127
|
return (0, kernel_1.getAddress)(config);
|
|
121
128
|
}
|
|
129
|
+
case 'custom': {
|
|
130
|
+
return (0, custom_1.getAddress)(config);
|
|
131
|
+
}
|
|
122
132
|
}
|
|
123
133
|
}
|
|
124
134
|
// Signs and packs a signature to be EIP-1271 compatibleAdd commentMore actions
|
|
@@ -136,6 +146,9 @@ async function getPackedSignature(config, owners, chain, validator, hash, transf
|
|
|
136
146
|
case 'kernel': {
|
|
137
147
|
return (0, kernel_1.getPackedSignature)(signFn, hash, validator, address, transformSignature);
|
|
138
148
|
}
|
|
149
|
+
case 'custom': {
|
|
150
|
+
return (0, custom_1.getPackedSignature)(config, signFn, hash, validator, transformSignature);
|
|
151
|
+
}
|
|
139
152
|
}
|
|
140
153
|
}
|
|
141
154
|
async function isDeployed(chain, config) {
|
|
@@ -314,6 +327,9 @@ async function getSmartAccount(config, client, chain) {
|
|
|
314
327
|
case 'kernel': {
|
|
315
328
|
return (0, kernel_1.getSmartAccount)(client, address, config.owners, ownerValidator.address, signFn);
|
|
316
329
|
}
|
|
330
|
+
case 'custom': {
|
|
331
|
+
return (0, custom_1.getSmartAccount)(config, client, address, ownerValidator.address, signFn);
|
|
332
|
+
}
|
|
317
333
|
}
|
|
318
334
|
}
|
|
319
335
|
async function getSmartSessionSmartAccount(config, client, chain, session, enableData) {
|
|
@@ -334,6 +350,9 @@ async function getSmartSessionSmartAccount(config, client, chain, session, enabl
|
|
|
334
350
|
case 'kernel': {
|
|
335
351
|
return (0, kernel_1.getSessionSmartAccount)(client, address, session, smartSessionValidator.address, enableData, signFn);
|
|
336
352
|
}
|
|
353
|
+
case 'custom': {
|
|
354
|
+
return (0, custom_1.getSessionSmartAccount)(config, client, address, session, smartSessionValidator.address, enableData);
|
|
355
|
+
}
|
|
337
356
|
}
|
|
338
357
|
}
|
|
339
358
|
async function getGuardianSmartAccount(config, client, chain, guardians) {
|
|
@@ -355,6 +374,9 @@ async function getGuardianSmartAccount(config, client, chain, guardians) {
|
|
|
355
374
|
case 'kernel': {
|
|
356
375
|
return (0, kernel_1.getGuardianSmartAccount)(client, address, guardians, socialRecoveryValidator.address, signFn);
|
|
357
376
|
}
|
|
377
|
+
case 'custom': {
|
|
378
|
+
throw new Error('Custom account does not support guardians');
|
|
379
|
+
}
|
|
358
380
|
}
|
|
359
381
|
}
|
|
360
382
|
async function sign(validators, chain, hash) {
|
|
@@ -413,6 +435,9 @@ async function get7702InitCalls(config) {
|
|
|
413
435
|
case 'kernel': {
|
|
414
436
|
return (0, kernel_1.get7702InitCalls)();
|
|
415
437
|
}
|
|
438
|
+
case 'custom': {
|
|
439
|
+
return (0, custom_1.get7702InitCalls)(config);
|
|
440
|
+
}
|
|
416
441
|
}
|
|
417
442
|
}
|
|
418
443
|
function is7702(config) {
|
|
@@ -2,14 +2,13 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const vitest_1 = require("vitest");
|
|
4
4
|
const consts_1 = require("../../test/consts");
|
|
5
|
-
const consts_2 = require("../../test/consts");
|
|
6
5
|
const __1 = require("..");
|
|
7
6
|
const registry_1 = require("./registry");
|
|
8
7
|
(0, vitest_1.describe)('Actions', async () => {
|
|
9
8
|
const rhinestoneAccount = await (0, __1.createRhinestoneAccount)({
|
|
10
9
|
owners: {
|
|
11
10
|
type: 'ecdsa',
|
|
12
|
-
accounts: [
|
|
11
|
+
accounts: [consts_1.accountA],
|
|
13
12
|
},
|
|
14
13
|
rhinestoneApiKey: consts_1.MOCK_API_KEY,
|
|
15
14
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"smart-session.d.ts","sourceRoot":"","sources":["../../../execution/smart-session.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,KAAK,EAKV,KAAK,GAAG,EAIT,MAAM,MAAM,CAAA;AAkBb,OAAO,EACL,WAAW,EAEX,iBAAiB,EAGjB,oBAAoB,EACrB,MAAM,sCAAsC,CAAA;AAC7C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAEhD,OAAO,KAAK,EAAe,uBAAuB,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AAG7E,UAAU,cAAc;IACtB,oBAAoB,EAAE,GAAG,CAAA;IACzB,IAAI,EAAE,oBAAoB,CAAA;IAC1B,iBAAiB,EAAE,WAAW,EAAE,CAAA;IAChC,iBAAiB,EAAE,iBAAiB,CAAA;CACrC;AAED,iBAAe,iBAAiB,CAC9B,MAAM,EAAE,uBAAuB,EAC/B,QAAQ,EAAE,OAAO,EAAE,EACnB,YAAY,EAAE,MAAM,EACpB,SAAS,CAAC,EAAE,GAAG,GACd,OAAO,CAAC,cAAc,CAAC,
|
|
1
|
+
{"version":3,"file":"smart-session.d.ts","sourceRoot":"","sources":["../../../execution/smart-session.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,KAAK,EAKV,KAAK,GAAG,EAIT,MAAM,MAAM,CAAA;AAkBb,OAAO,EACL,WAAW,EAEX,iBAAiB,EAGjB,oBAAoB,EACrB,MAAM,sCAAsC,CAAA;AAC7C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAEhD,OAAO,KAAK,EAAe,uBAAuB,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AAG7E,UAAU,cAAc;IACtB,oBAAoB,EAAE,GAAG,CAAA;IACzB,IAAI,EAAE,oBAAoB,CAAA;IAC1B,iBAAiB,EAAE,WAAW,EAAE,CAAA;IAChC,iBAAiB,EAAE,iBAAiB,CAAA;CACrC;AAED,iBAAe,iBAAiB,CAC9B,MAAM,EAAE,uBAAuB,EAC/B,QAAQ,EAAE,OAAO,EAAE,EACnB,YAAY,EAAE,MAAM,EACpB,SAAS,CAAC,EAAE,GAAG,GACd,OAAO,CAAC,cAAc,CAAC,CAgCzB;AA2FD,iBAAS,mBAAmB,CAAC,YAAY,EAAE,WAAW,EAAE,GAAG,GAAG,CAgC7D;AAiLD,iBAAe,kBAAkB,CAC/B,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,uBAAuB,EAC/B,OAAO,EAAE,OAAO,iBAiCjB;AAED,iBAAe,WAAW,CACxB,WAAW,EAAE,KAAK,EAClB,SAAS,EAAE,SAAS,EACpB,cAAc,EAAE,OAAO;;;;;GAiExB;AAED,iBAAS,mBAAmB,CAC1B,SAAS,EAAE,GAAG,EACd,kBAAkB,EAAE,GAAG,EACvB,UAAU,EAAE,GAAG,EACf,YAAY,EAAE,MAAM,EACpB,WAAW,EAAE,OAAO,iBAkBrB;AAED,OAAO,EACL,kBAAkB,EAClB,WAAW,EACX,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,GACpB,CAAA;AACD,YAAY,EAAE,cAAc,EAAE,CAAA"}
|
|
@@ -15,6 +15,9 @@ const utils_2 = require("../orchestrator/utils");
|
|
|
15
15
|
const error_1 = require("./error");
|
|
16
16
|
async function getSessionDetails(config, sessions, sessionIndex, signature) {
|
|
17
17
|
const account = (0, accounts_1.getAccountProvider)(config);
|
|
18
|
+
if (account.type === 'custom') {
|
|
19
|
+
throw new Error('Custom account does not support cross-chain smart sessions');
|
|
20
|
+
}
|
|
18
21
|
const accountAddress = (0, accounts_1.getAddress)(config);
|
|
19
22
|
const sessionDetails = await getEnableSessionDetails(account.type, sessions, sessionIndex, accountAddress);
|
|
20
23
|
const chain = sessions[sessionIndex].chain;
|
package/dist/src/index.d.ts
CHANGED
|
@@ -6,8 +6,7 @@ import type { TransactionResult } from './execution';
|
|
|
6
6
|
import { BundleFailedError, ExecutionError, isExecutionError, OrderPathRequiredForIntentsError, SessionChainRequiredError, SourceChainRequiredForSmartSessionsError, UserOperationRequiredForSmartSessionsError } from './execution';
|
|
7
7
|
import { SessionDetails } from './execution/smart-session';
|
|
8
8
|
import { BundleData, PreparedTransactionData, SignedTransactionData } from './execution/utils';
|
|
9
|
-
import { BundleResult, BundleStatus, MetaIntent, MultiChainCompact, PostOrderBundleResult, SignedMultiChainCompact, UserTokenBalance } from './orchestrator';
|
|
10
|
-
import { AuthenticationRequiredError, InsufficientBalanceError, InvalidApiKeyError, InvalidBundleSignatureError, isOrchestratorError, NoPathFoundError, OnlyOneTargetTokenAmountCanBeUnsetError, OrchestratorError, OrderBundleNotFoundError, TokenNotSupportedError, UnsupportedChainError, UnsupportedChainIdError, UnsupportedTokenError } from './orchestrator';
|
|
9
|
+
import { AuthenticationRequiredError, BundleResult, BundleStatus, InsufficientBalanceError, InvalidApiKeyError, InvalidBundleSignatureError, isOrchestratorError, MetaIntent, MultiChainCompact, NoPathFoundError, OnlyOneTargetTokenAmountCanBeUnsetError, OrchestratorError, OrderBundleNotFoundError, PostOrderBundleResult, SignedMultiChainCompact, TokenNotSupportedError, UnsupportedChainError, UnsupportedChainIdError, UnsupportedTokenError, UserTokenBalance } from './orchestrator';
|
|
11
10
|
import type { Call, Execution, RhinestoneAccountConfig, Session, Transaction } from './types';
|
|
12
11
|
interface RhinestoneAccount {
|
|
13
12
|
config: RhinestoneAccountConfig;
|
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,EACL,iBAAiB,EACjB,cAAc,EAGd,gBAAgB,EAChB,gCAAgC,EAChC,yBAAyB,EACzB,wCAAwC,EAExC,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,YAAY,EACZ,YAAY,EACZ,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../index.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.js
CHANGED
|
@@ -123,6 +123,9 @@ async function createRhinestoneAccount(config) {
|
|
|
123
123
|
}
|
|
124
124
|
function getValidators(chain) {
|
|
125
125
|
const accountType = config.account?.type || 'nexus';
|
|
126
|
+
if (accountType === 'custom') {
|
|
127
|
+
throw new Error('Validator fetching is not supported for custom accounts');
|
|
128
|
+
}
|
|
126
129
|
const account = getAddress();
|
|
127
130
|
return (0, modules_1.getValidators)(accountType, account, chain);
|
|
128
131
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../modules/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,OAAO,EAEZ,KAAK,KAAK,EAEV,KAAK,GAAG,EAET,MAAM,MAAM,CAAA;AAYb,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAA;AAEvD,OAAO,EAGL,KAAK,MAAM,EACZ,MAAM,UAAU,CAAA;AACjB,OAAO,EACL,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../modules/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,OAAO,EAEZ,KAAK,KAAK,EAEV,KAAK,GAAG,EAET,MAAM,MAAM,CAAA;AAYb,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAA;AAEvD,OAAO,EAGL,KAAK,MAAM,EACZ,MAAM,UAAU,CAAA;AACjB,OAAO,EACL,YAAY,EAOb,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,mBAAmB,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAA;AACtE,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AACtE,OAAO,EAAE,iBAAiB,EAA4B,MAAM,cAAc,CAAA;AAM1E,UAAU,YAAY;IACpB,iBAAiB,EAAE,GAAG,CAAA;IACtB,cAAc,EAAE,MAAM,CAAA;IACtB,SAAS,EAAE,MAAM,GAAG,MAAM,CAAA;CAC3B;AAED,UAAU,0BAA0B;IAClC,QAAQ,EAAE,YAAY,CAAA;IACtB,SAAS,EAAE,iBAAiB,GAAG,GAAG,GAAG,UAAU,CAAA;IAC/C,cAAc,CAAC,EAAE,OAAO,CAAA;CACzB;AAED,UAAU,iBAAiB;IACzB,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;CACV;AAED,UAAU,WAAW;IACnB,UAAU,EAAE,MAAM,EAAE,CAAA;IACpB,SAAS,EAAE,MAAM,EAAE,CAAA;IACnB,SAAS,EAAE,MAAM,EAAE,CAAA;IACnB,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,QAAQ,EAAE,OAAO,CAAA;IACjB,SAAS,EAAE,OAAO,EAAE,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,iBAAS,QAAQ,CAAC,MAAM,EAAE,uBAAuB,GAAG,WAAW,CAkG9D;AAED,iBAAS,6BAA6B,CAAC,EACrC,QAAQ,EACR,SAAS,EACT,cAAsB,GACvB,EAAE,0BAA0B,iBA6C5B;AAED,iBAAS,yBAAyB,CAAC,KAAK,EAAE,KAAK,WAa9C;AAaD,iBAAS,YAAY,IAAI;IACvB,IAAI,EAAE,OAAO,EAAE,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;CAClB,CAKA;AAED,OAAO,EACL,YAAY,EACZ,QAAQ,EACR,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,EACjB,6BAA6B,EAC7B,YAAY,EACZ,mBAAmB,EACnB,SAAS,EACT,aAAa,EACb,yBAAyB,GAC1B,CAAA"}
|
|
@@ -54,6 +54,14 @@ function getSetup(config) {
|
|
|
54
54
|
additionalContext: '0x',
|
|
55
55
|
type: common_1.MODULE_TYPE_ID_EXECUTOR,
|
|
56
56
|
},
|
|
57
|
+
// For V1 compatibility
|
|
58
|
+
{
|
|
59
|
+
address: omni_account_1.INTENT_EXECUTOR_ADDRESS,
|
|
60
|
+
initData: '0x',
|
|
61
|
+
deInitData: '0x',
|
|
62
|
+
additionalContext: '0x',
|
|
63
|
+
type: common_1.MODULE_TYPE_ID_EXECUTOR,
|
|
64
|
+
},
|
|
57
65
|
];
|
|
58
66
|
const fallbacks = [
|
|
59
67
|
{
|
|
@@ -5,5 +5,6 @@ declare const RHINESTONE_ATTESTER_ADDRESS: Address;
|
|
|
5
5
|
declare const HOOK_ADDRESS: Address;
|
|
6
6
|
declare const TARGET_MODULE_ADDRESS: Address;
|
|
7
7
|
declare const SAME_CHAIN_MODULE_ADDRESS: Address;
|
|
8
|
-
|
|
8
|
+
declare const INTENT_EXECUTOR_ADDRESS: Address;
|
|
9
|
+
export { OMNI_ACCOUNT_MOCK_ATTESTER_ADDRESS, RHINESTONE_MODULE_REGISTRY_ADDRESS, RHINESTONE_ATTESTER_ADDRESS, HOOK_ADDRESS, TARGET_MODULE_ADDRESS, SAME_CHAIN_MODULE_ADDRESS, INTENT_EXECUTOR_ADDRESS, };
|
|
9
10
|
//# sourceMappingURL=omni-account.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"omni-account.d.ts","sourceRoot":"","sources":["../../../modules/omni-account.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAEnC,QAAA,MAAM,kCAAkC,EAAE,OACI,CAAA;AAE9C,QAAA,MAAM,kCAAkC,EAAE,OACI,CAAA;AAC9C,QAAA,MAAM,2BAA2B,EAAE,OACW,CAAA;AAE9C,QAAA,MAAM,YAAY,EAAE,OAAsD,CAAA;AAC1E,QAAA,MAAM,qBAAqB,EAAE,OACiB,CAAA;AAC9C,QAAA,MAAM,yBAAyB,EAAE,OACa,CAAA;AAE9C,OAAO,EACL,kCAAkC,EAClC,kCAAkC,EAClC,2BAA2B,EAC3B,YAAY,EACZ,qBAAqB,EACrB,yBAAyB,
|
|
1
|
+
{"version":3,"file":"omni-account.d.ts","sourceRoot":"","sources":["../../../modules/omni-account.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAEnC,QAAA,MAAM,kCAAkC,EAAE,OACI,CAAA;AAE9C,QAAA,MAAM,kCAAkC,EAAE,OACI,CAAA;AAC9C,QAAA,MAAM,2BAA2B,EAAE,OACW,CAAA;AAE9C,QAAA,MAAM,YAAY,EAAE,OAAsD,CAAA;AAC1E,QAAA,MAAM,qBAAqB,EAAE,OACiB,CAAA;AAC9C,QAAA,MAAM,yBAAyB,EAAE,OACa,CAAA;AAE9C,QAAA,MAAM,uBAAuB,EAAE,OACe,CAAA;AAE9C,OAAO,EACL,kCAAkC,EAClC,kCAAkC,EAClC,2BAA2B,EAC3B,YAAY,EACZ,qBAAqB,EACrB,yBAAyB,EACzB,uBAAuB,GACxB,CAAA"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SAME_CHAIN_MODULE_ADDRESS = exports.TARGET_MODULE_ADDRESS = exports.HOOK_ADDRESS = exports.RHINESTONE_ATTESTER_ADDRESS = exports.RHINESTONE_MODULE_REGISTRY_ADDRESS = exports.OMNI_ACCOUNT_MOCK_ATTESTER_ADDRESS = void 0;
|
|
3
|
+
exports.INTENT_EXECUTOR_ADDRESS = exports.SAME_CHAIN_MODULE_ADDRESS = exports.TARGET_MODULE_ADDRESS = exports.HOOK_ADDRESS = exports.RHINESTONE_ATTESTER_ADDRESS = exports.RHINESTONE_MODULE_REGISTRY_ADDRESS = exports.OMNI_ACCOUNT_MOCK_ATTESTER_ADDRESS = void 0;
|
|
4
4
|
const OMNI_ACCOUNT_MOCK_ATTESTER_ADDRESS = '0x6D0515e8E499468DCe9583626f0cA15b887f9d03';
|
|
5
5
|
exports.OMNI_ACCOUNT_MOCK_ATTESTER_ADDRESS = OMNI_ACCOUNT_MOCK_ATTESTER_ADDRESS;
|
|
6
6
|
const RHINESTONE_MODULE_REGISTRY_ADDRESS = '0x000000000069e2a187aeffb852bf3ccdc95151b2';
|
|
@@ -13,3 +13,5 @@ const TARGET_MODULE_ADDRESS = '0x0000000000E5a37279A001301A837a91b5de1D5E';
|
|
|
13
13
|
exports.TARGET_MODULE_ADDRESS = TARGET_MODULE_ADDRESS;
|
|
14
14
|
const SAME_CHAIN_MODULE_ADDRESS = '0x000000000043ff16d5776c7F0f65Ec485C17Ca04';
|
|
15
15
|
exports.SAME_CHAIN_MODULE_ADDRESS = SAME_CHAIN_MODULE_ADDRESS;
|
|
16
|
+
const INTENT_EXECUTOR_ADDRESS = '0x00000000005aD9ce1f5035FD62CA96CEf16AdAAF';
|
|
17
|
+
exports.INTENT_EXECUTOR_ADDRESS = INTENT_EXECUTOR_ADDRESS;
|
package/dist/src/types.d.ts
CHANGED
|
@@ -1,9 +1,33 @@
|
|
|
1
1
|
import type { Account, Address, Chain, Hex } from 'viem';
|
|
2
2
|
import type { WebAuthnAccount } from 'viem/account-abstraction';
|
|
3
|
-
import {
|
|
3
|
+
import type { ValidatorConfig } from './accounts/utils';
|
|
4
|
+
import type { Module } from './modules/common';
|
|
5
|
+
import type { EnableSessionData } from './modules/validators/smart-sessions';
|
|
4
6
|
type AccountType = 'safe' | 'nexus' | 'kernel';
|
|
5
|
-
|
|
7
|
+
type AccountProviderConfig = {
|
|
6
8
|
type: AccountType;
|
|
9
|
+
} | {
|
|
10
|
+
type: 'custom';
|
|
11
|
+
custom: CustomAccountProviderConfig;
|
|
12
|
+
};
|
|
13
|
+
interface CustomAccountProviderConfig {
|
|
14
|
+
getDeployArgs: () => {
|
|
15
|
+
factory: Address;
|
|
16
|
+
factoryData: Hex;
|
|
17
|
+
implementation: Address;
|
|
18
|
+
initializationCallData: Hex | null;
|
|
19
|
+
};
|
|
20
|
+
getInstallData: (module: Module) => Hex[];
|
|
21
|
+
getAddress: () => Address;
|
|
22
|
+
getPackedSignature: (signFn: (message: Hex) => Promise<Hex>, hash: Hex, validator: ValidatorConfig, transformSignature: (signature: Hex) => Hex) => Promise<Hex>;
|
|
23
|
+
getSessionStubSignature: (session: Session, enableData: EnableSessionData | null) => Promise<Hex>;
|
|
24
|
+
signSessionUserOperation: (session: Session, enableData: EnableSessionData | null, hash: Hex) => Promise<Hex>;
|
|
25
|
+
getStubSignature: () => Promise<Hex>;
|
|
26
|
+
sign: (hash: Hex) => Promise<Hex>;
|
|
27
|
+
get7702InitCalls: () => {
|
|
28
|
+
to: Address;
|
|
29
|
+
data: Hex;
|
|
30
|
+
}[];
|
|
7
31
|
}
|
|
8
32
|
interface OwnableValidatorConfig {
|
|
9
33
|
type: 'ecdsa';
|
package/dist/src/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,MAAM,CAAA;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAA;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../types.ts"],"names":[],"mappings":"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"}
|