@rhinestone/sdk 1.13.4 → 1.15.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/index.d.ts +5 -2
- package/dist/src/accounts/index.d.ts.map +1 -1
- package/dist/src/accounts/index.js +43 -25
- package/dist/src/accounts/safe.d.ts.map +1 -1
- package/dist/src/accounts/safe.js +2 -0
- package/dist/src/accounts/signing/common.d.ts +7 -1
- package/dist/src/accounts/signing/common.d.ts.map +1 -1
- package/dist/src/accounts/signing/common.js +90 -15
- package/dist/src/accounts/signing/quorum.d.ts +78 -0
- package/dist/src/accounts/signing/quorum.d.ts.map +1 -0
- package/dist/src/accounts/signing/quorum.js +41 -0
- package/dist/src/actions/smart-sessions.d.ts +2 -1
- package/dist/src/actions/smart-sessions.d.ts.map +1 -1
- package/dist/src/actions/smart-sessions.js +6 -0
- package/dist/src/execution/index.d.ts +2 -1
- package/dist/src/execution/index.d.ts.map +1 -1
- package/dist/src/execution/index.js +5 -4
- package/dist/src/execution/quoters.d.ts +7 -0
- package/dist/src/execution/quoters.d.ts.map +1 -0
- package/dist/src/execution/quoters.js +55 -0
- package/dist/src/execution/utils.d.ts +2 -2
- package/dist/src/execution/utils.d.ts.map +1 -1
- package/dist/src/execution/utils.js +70 -6
- package/dist/src/index.d.ts +3 -3
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +7 -0
- package/dist/src/modules/validators/core.d.ts.map +1 -1
- package/dist/src/modules/validators/core.js +5 -0
- package/dist/src/modules/validators/quorum.d.ts +56 -0
- package/dist/src/modules/validators/quorum.d.ts.map +1 -0
- package/dist/src/modules/validators/quorum.js +215 -0
- package/dist/src/modules/validators/smart-sessions/swap/abi.d.ts +3 -0
- package/dist/src/modules/validators/smart-sessions/swap/abi.d.ts.map +1 -0
- package/dist/src/modules/validators/smart-sessions/swap/abi.js +67 -0
- package/dist/src/modules/validators/smart-sessions/swap/fynd.d.ts +92 -0
- package/dist/src/modules/validators/smart-sessions/swap/fynd.d.ts.map +1 -0
- package/dist/src/modules/validators/smart-sessions/swap/fynd.js +106 -0
- package/dist/src/modules/validators/smart-sessions/swap/rhinestone.d.ts +147 -0
- package/dist/src/modules/validators/smart-sessions/swap/rhinestone.d.ts.map +1 -0
- package/dist/src/modules/validators/smart-sessions/swap/rhinestone.js +311 -0
- package/dist/src/modules/validators/smart-sessions/swap/rules.d.ts +73 -0
- package/dist/src/modules/validators/smart-sessions/swap/rules.d.ts.map +1 -0
- package/dist/src/modules/validators/smart-sessions/swap/rules.js +112 -0
- package/dist/src/modules/validators/smart-sessions/swap/scope.d.ts +18 -0
- package/dist/src/modules/validators/smart-sessions/swap/scope.d.ts.map +1 -0
- package/dist/src/modules/validators/smart-sessions/swap/scope.js +124 -0
- package/dist/src/modules/validators/smart-sessions/swap/zero-ex.d.ts +143 -0
- package/dist/src/modules/validators/smart-sessions/swap/zero-ex.d.ts.map +1 -0
- package/dist/src/modules/validators/smart-sessions/swap/zero-ex.js +170 -0
- package/dist/src/modules/validators/smart-sessions.d.ts +9 -3
- package/dist/src/modules/validators/smart-sessions.d.ts.map +1 -1
- package/dist/src/modules/validators/smart-sessions.js +229 -89
- package/dist/src/orchestrator/consts.d.ts +1 -1
- package/dist/src/orchestrator/consts.js +1 -1
- 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 +12 -1
- package/dist/src/orchestrator/types.d.ts.map +1 -1
- package/dist/src/types.d.ts +84 -4
- package/dist/src/types.d.ts.map +1 -1
- package/package.json +7 -2
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.narrowQuoterPin = narrowQuoterPin;
|
|
4
|
+
exports.quoterPinFromSession = quoterPinFromSession;
|
|
5
|
+
exports.venuesForSession = venuesForSession;
|
|
6
|
+
function venuesForSession(session) {
|
|
7
|
+
const via = session?.swap?.via;
|
|
8
|
+
if (!via?.length)
|
|
9
|
+
return null;
|
|
10
|
+
const quoters = new Set();
|
|
11
|
+
for (const venue of via) {
|
|
12
|
+
if (venue.id === '0x')
|
|
13
|
+
quoters.add('0x');
|
|
14
|
+
else if (venue.id === 'fynd')
|
|
15
|
+
quoters.add('fynd');
|
|
16
|
+
else if (venue.id === 'rhinestone')
|
|
17
|
+
return null;
|
|
18
|
+
else
|
|
19
|
+
return null;
|
|
20
|
+
}
|
|
21
|
+
return quoters;
|
|
22
|
+
}
|
|
23
|
+
function quoterPinFromSession(signers, chainIds) {
|
|
24
|
+
if (signers?.type !== 'experimental_session')
|
|
25
|
+
return undefined;
|
|
26
|
+
const relevant = new Set(chainIds);
|
|
27
|
+
const sessions = 'session' in signers
|
|
28
|
+
? [signers.session]
|
|
29
|
+
: Object.entries(signers.sessions)
|
|
30
|
+
.filter(([chainId]) => relevant.has(Number(chainId)))
|
|
31
|
+
.map(([, config]) => config.session);
|
|
32
|
+
let pinned = null;
|
|
33
|
+
for (const session of sessions) {
|
|
34
|
+
const venues = venuesForSession(session);
|
|
35
|
+
if (!venues)
|
|
36
|
+
continue;
|
|
37
|
+
if (!pinned) {
|
|
38
|
+
pinned = venues;
|
|
39
|
+
continue;
|
|
40
|
+
}
|
|
41
|
+
pinned = new Set([...pinned].filter((quoter) => venues.has(quoter)));
|
|
42
|
+
}
|
|
43
|
+
return pinned ? { include: [...pinned] } : undefined;
|
|
44
|
+
}
|
|
45
|
+
function narrowQuoterPin(derived, explicit) {
|
|
46
|
+
if (!explicit)
|
|
47
|
+
return derived;
|
|
48
|
+
if (!derived || !('include' in derived))
|
|
49
|
+
return explicit;
|
|
50
|
+
const allowed = new Set(derived.include);
|
|
51
|
+
const include = 'include' in explicit
|
|
52
|
+
? explicit.include.filter((quoter) => allowed.has(quoter))
|
|
53
|
+
: derived.include.filter((quoter) => !explicit.exclude.includes(quoter));
|
|
54
|
+
return { include };
|
|
55
|
+
}
|
|
@@ -2,7 +2,7 @@ import { type Address, type Chain, type HashTypedDataParameters, type Hex, type
|
|
|
2
2
|
import { type UserOperation } from 'viem/account-abstraction';
|
|
3
3
|
import type { ResolvedSessionSignerSet } from '../modules/validators/smart-sessions';
|
|
4
4
|
import { type IntentOp, type IntentRoute } from '../orchestrator';
|
|
5
|
-
import { type AppFeeRate, type AuxiliaryFunds, type OriginSignature, type ProtocolFeeRate, type SettlementLayer, type SignatureMode } from '../orchestrator/types';
|
|
5
|
+
import { type AppFeeRate, type AuxiliaryFunds, type OriginSignature, type ProtocolFeeRate, type SettlementLayer, type SignatureMode, type SwapQuoterFilter } from '../orchestrator/types';
|
|
6
6
|
import type { Call, CalldataInput, CallInput, RhinestoneAccountConfig, RhinestoneConfig, Session, SessionEnableData, SessionSignerSet, SignerSet, SourceAssetInput, Sponsorship, TokenRequest, TokenSymbol, Transaction, UserOperationTransaction } from '../types';
|
|
7
7
|
type InternalSignerSet = Exclude<SignerSet, SessionSignerSet> | ResolvedSessionSignerSet;
|
|
8
8
|
declare function resolveSignatureMode(config: RhinestoneConfig, signers: SignerSet | undefined, sourceChains: Chain[] | undefined, targetChain: Chain): Promise<SignatureMode>;
|
|
@@ -82,7 +82,7 @@ declare function prepareTransactionAsIntent(config: RhinestoneConfig, sourceChai
|
|
|
82
82
|
to: Address;
|
|
83
83
|
data: Hex;
|
|
84
84
|
}[];
|
|
85
|
-
} | undefined, signers: SignerSet | undefined, sourceCalls: Record<number, CallInput[]> | undefined, appFees?: AppFeeRate, customDeadline?: number, protocolFees?: ProtocolFeeRate): Promise<{
|
|
85
|
+
} | undefined, signers: SignerSet | undefined, sourceCalls: Record<number, CallInput[]> | undefined, appFees?: AppFeeRate, customDeadline?: number, protocolFees?: ProtocolFeeRate, quoters?: SwapQuoterFilter): Promise<{
|
|
86
86
|
intentRoute: IntentRoute;
|
|
87
87
|
intentInput: any;
|
|
88
88
|
}>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../execution/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,KAAK,EAMV,KAAK,uBAAuB,EAC5B,KAAK,GAAG,EAOR,KAAK,YAAY,EAEjB,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,uBAAuB,EAC5B,KAAK,SAAS,EACd,KAAK,mBAAmB,EACxB,KAAK,eAAe,EAErB,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":"AAAA,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,KAAK,EAMV,KAAK,uBAAuB,EAC5B,KAAK,GAAG,EAOR,KAAK,YAAY,EAEjB,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,uBAAuB,EAC5B,KAAK,SAAS,EACd,KAAK,mBAAmB,EACxB,KAAK,eAAe,EAErB,MAAM,MAAM,CAAA;AACb,OAAO,EAGL,KAAK,aAAa,EACnB,MAAM,0BAA0B,CAAA;AAyDjC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAA;AACpF,OAAO,EAIL,KAAK,QAAQ,EACb,KAAK,WAAW,EAEjB,MAAM,iBAAiB,CAAA;AAMxB,OAAO,EAEL,KAAK,UAAU,EACf,KAAK,cAAc,EAGnB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,eAAe,EAGpB,KAAK,aAAa,EAElB,KAAK,gBAAgB,EACtB,MAAM,uBAAuB,CAAA;AAE9B,OAAO,KAAK,EAEV,IAAI,EACJ,aAAa,EACb,SAAS,EAET,uBAAuB,EACvB,gBAAgB,EAChB,OAAO,EACP,iBAAiB,EACjB,gBAAgB,EAChB,SAAS,EAET,gBAAgB,EAChB,WAAW,EACX,YAAY,EACZ,WAAW,EACX,WAAW,EACX,wBAAwB,EACzB,MAAM,UAAU,CAAA;AAWjB,KAAK,iBAAiB,GAClB,OAAO,CAAC,SAAS,EAAE,gBAAgB,CAAC,GACpC,wBAAwB,CAAA;AAgD5B,iBAAe,oBAAoB,CACjC,MAAM,EAAE,gBAAgB,EACxB,OAAO,EAAE,SAAS,GAAG,SAAS,EAC9B,YAAY,EAAE,KAAK,EAAE,GAAG,SAAS,EACjC,WAAW,EAAE,KAAK,GACjB,OAAO,CAAC,aAAa,CAAC,CA4BxB;AAED,iBAAS,sBAAsB,CAC7B,OAAO,EAAE,gBAAgB,EACzB,OAAO,EAAE,MAAM,GACd;IACD,OAAO,EAAE,OAAO,CAAA;IAChB,UAAU,CAAC,EAAE,iBAAiB,CAAA;IAC9B,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B,CASA;AAED,UAAU,mBAAmB;IAC3B,IAAI,EAAE,QAAQ,CAAA;IACd,IAAI,EAAE,GAAG,CAAA;IACT,KAAK,EAAE,MAAM,CAAA;CACd;AAED,UAAU,iBAAiB;IACzB,IAAI,EAAE,QAAQ,CAAA;IACd,EAAE,EAAE,MAAM,CAAA;IACV,YAAY,CAAC,EAAE,MAAM,EAAE,CAAA;IACvB,WAAW,EAAE,MAAM,CAAA;CACpB;AAED,UAAU,uBAAuB;IAC/B,WAAW,EAAE,WAAW,CAAA;IACxB,WAAW,EAAE,OAAO,CAAA;IACpB,WAAW,EAAE,WAAW,CAAA;CACzB;AAED,UAAU,yBAAyB;IACjC,aAAa,EAAE,aAAa,CAAA;IAC5B,IAAI,EAAE,GAAG,CAAA;IACT,WAAW,EAAE,wBAAwB,CAAA;CACtC;AAED,UAAU,qBAAsB,SAAQ,uBAAuB;IAC7D,gBAAgB,EAAE,eAAe,EAAE,CAAA;IACnC,oBAAoB,EAAE,GAAG,CAAA;IACzB,wBAAwB,EAAE,GAAG,GAAG,SAAS,CAAA;CAC1C;AAED,UAAU,uBAAwB,SAAQ,yBAAyB;IACjE,SAAS,EAAE,GAAG,CAAA;CACf;AAED,iBAAe,kBAAkB,CAC/B,MAAM,EAAE,gBAAgB,EACxB,WAAW,EAAE,WAAW,GACvB,OAAO,CAAC,uBAAuB,CAAC,CA6DlC;AAED,iBAAe,oBAAoB,CACjC,MAAM,EAAE,gBAAgB,EACxB,WAAW,EAAE,wBAAwB,GACpC,OAAO,CAAC,yBAAyB,CAAC,CAgBpC;AAED,iBAAe,iBAAiB,CAC9B,MAAM,EAAE,SAAS,EAAE,GAAG,SAAS,EAC/B,MAAM,EAAE,gBAAgB,EACxB,KAAK,EAAE,KAAK,EACZ,cAAc,EAAE,OAAO,GACtB,OAAO,CAAC,aAAa,EAAE,CAAC,CAkB1B;AAED,iBAAS,sBAAsB,CAC7B,MAAM,EAAE,gBAAgB,EACxB,mBAAmB,EAAE,uBAAuB,GAC3C;IACD,MAAM,EAAE,mBAAmB,EAAE,CAAA;IAC7B,WAAW,EAAE,mBAAmB,CAAA;CACjC,CAEA;AAED,iBAAe,eAAe,CAC5B,MAAM,EAAE,gBAAgB,EACxB,mBAAmB,EAAE,uBAAuB,GAC3C,OAAO,CAAC,qBAAqB,CAAC,CA6BhC;AAED,iBAAe,2BAA2B,CACxC,MAAM,EAAE,gBAAgB,EACxB,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,KAAK,EAClB,OAAO,EAAE,SAAS,GAAG,SAAS,sCA4C/B;AAED,iBAAe,iBAAiB,CAC9B,MAAM,EAAE,gBAAgB,EACxB,qBAAqB,EAAE,yBAAyB,GAC/C,OAAO,CAAC,uBAAuB,CAAC,CAYlC;AAED,iBAAe,kBAAkB,CAC/B,MAAM,EAAE,gBAAgB,EACxB,mBAAmB,EAAE,uBAAuB,kCAM7C;AAED,iBAAe,WAAW,CACxB,MAAM,EAAE,gBAAgB,EACxB,OAAO,EAAE,eAAe,EACxB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,SAAS,GAAG,SAAS,0BAqB/B;AAED,iBAAe,aAAa,CAC1B,SAAS,SAAS,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EACjE,WAAW,SAAS,MAAM,SAAS,GAAG,cAAc,GAAG,MAAM,SAAS,EAEtE,MAAM,EAAE,gBAAgB,EACxB,UAAU,EAAE,uBAAuB,CAAC,SAAS,EAAE,WAAW,CAAC,EAC3D,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,SAAS,GAAG,SAAS,EAC9B,OAAO,CAAC,EAAE;IACR,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB,0BA0DF;AA+DD,iBAAe,0BAA0B,CACvC,MAAM,EAAE,gBAAgB,EACxB,IAAI,EAAE,WAAW,GAAG,aAAa,kCAmClC;AAED,iBAAe,iBAAiB,CAC9B,MAAM,EAAE,gBAAgB,EACxB,iBAAiB,EAAE,qBAAqB,EACxC,cAAc,EAAE,uBAAuB,EACvC,MAAM,GAAE,OAAe,GACtB,OAAO,CAAC,iBAAiB,CAAC,CAuB5B;AAED,iBAAe,mBAAmB,CAChC,MAAM,EAAE,gBAAgB,EACxB,mBAAmB,EAAE,uBAAuB,gCAO7C;AAkDD,iBAAS,gBAAgB,CACvB,WAAW,EAAE,KAAK,EAClB,oBAAoB,EAAE,YAAY,EAAE,GAAG,SAAS,kBASjD;AAkDD,iBAAS,gBAAgB,CACvB,MAAM,EAAE,gBAAgB,EACxB,oBAAoB,EAAE,GAAG,GAAG,SAAS,EACrC,OAAO,EACH;IACE,QAAQ,CAAC,EAAE;QACT,EAAE,EAAE,OAAO,CAAA;QACX,IAAI,EAAE,GAAG,CAAA;KACV,EAAE,CAAA;CACJ,GACD,SAAS;;;;YAJD,OAAO;cACL,GAAG;;;;;;;EAmBlB;AAED,iBAAe,0BAA0B,CACvC,MAAM,EAAE,gBAAgB,EACxB,YAAY,EAAE,KAAK,EAAE,GAAG,SAAS,EACjC,WAAW,EAAE,KAAK,EAClB,UAAU,EAAE,aAAa,EAAE,EAC3B,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,aAAa,EAAE,YAAY,EAAE,EAC7B,cAAc,EAAE,uBAAuB,GAAG,OAAO,GAAG,SAAS,EAC7D,SAAS,EAAE,WAAW,GAAG,SAAS,EAClC,oBAAoB,EAAE,GAAG,GAAG,SAAS,EACrC,gBAAgB,EAAE,eAAe,EAAE,GAAG,SAAS,EAC/C,YAAY,EAAE,gBAAgB,GAAG,SAAS,EAC1C,QAAQ,EAAE,OAAO,GAAG,WAAW,GAAG,SAAS,EAC3C,SAAS,EAAE,OAAO,GAAG,SAAS,EAC9B,cAAc,EAAE,cAAc,GAAG,SAAS,EAC1C,OAAO,EACH;IACE,QAAQ,CAAC,EAAE;QACT,EAAE,EAAE,OAAO,CAAA;QACX,IAAI,EAAE,GAAG,CAAA;KACV,EAAE,CAAA;CACJ,GACD,SAAS,EACb,OAAO,EAAE,SAAS,GAAG,SAAS,EAC9B,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,GAAG,SAAS,EACpD,OAAO,CAAC,EAAE,UAAU,EACpB,cAAc,CAAC,EAAE,MAAM,EACvB,YAAY,CAAC,EAAE,eAAe,EAC9B,OAAO,CAAC,EAAE,gBAAgB;;;GA6K3B;AAED,iBAAe,UAAU,CACvB,MAAM,EAAE,gBAAgB,EACxB,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,KAAK,EAClB,OAAO,CAAC,EAAE,SAAS,EACnB,eAAe,CAAC,EAAE,OAAO;;;GAiF1B;AAidD,iBAAe,oBAAoB,CACjC,MAAM,EAAE,gBAAgB,EACxB,YAAY,EAAE,KAAK,EAAE,GAAG,SAAS,EACjC,WAAW,EAAE,KAAK,EAClB,QAAQ,EAAE,QAAQ,EAClB,gBAAgB,EAAE,eAAe,EAAE,EACnC,oBAAoB,EAAE,GAAG,EACzB,wBAAwB,EAAE,GAAG,GAAG,SAAS,EACzC,cAAc,EAAE,uBAAuB,EACvC,MAAM,EAAE,OAAO,EACf,WAAW,CAAC,EAAE,OAAO,8BA+BtB;AAED,iBAAe,mBAAmB,CAChC,MAAM,EAAE,gBAAgB,EACxB,OAAO,EAAE,SAAS,GAAG,SAAS,EAC9B,YAAY,EAAE,YAAY,EAC1B,KAAK,EAAE,KAAK,yKAoBb;AAqDD,iBAAS,UAAU,CAAC,KAAK,EAAE,aAAa,EAAE,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,EAAE,CAMnE;AAwKD,iBAAS,6BAA6B,CAAC,EACrC,MAAM,EACN,KAAK,EACL,WAAW,EACX,OAAO,EACP,cAAc,GACf,EAAE;IACD,MAAM,EAAE,eAAe,CAAA;IACvB,KAAK,EAAE,SAAS,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;IACnB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAChC,cAAc,EAAE;QACd,IAAI,EAAE,MAAM,CAAA;QACZ,OAAO,EAAE,MAAM,CAAA;QACf,OAAO,EAAE,MAAM,CAAA;QACf,iBAAiB,EAAE,OAAO,CAAA;QAC1B,IAAI,EAAE,GAAG,CAAA;KACV,CAAA;CACF,GAAG,GAAG,CAoFN;AAED,YAAY,EACV,WAAW,EACX,iBAAiB,EACjB,uBAAuB,EACvB,yBAAyB,EACzB,qBAAqB,EACrB,uBAAuB,EACvB,iBAAiB,EACjB,mBAAmB,GACpB,CAAA;AACD,OAAO,EACL,gBAAgB,EAChB,2BAA2B,EAC3B,gBAAgB,EAChB,sBAAsB,EACtB,mBAAmB,EACnB,6BAA6B,EAC7B,UAAU,EACV,kBAAkB,EAClB,0BAA0B,EAC1B,oBAAoB,EACpB,iBAAiB,EACjB,sBAAsB,EACtB,oBAAoB,EACpB,kBAAkB,EAClB,0BAA0B,EAC1B,UAAU,EACV,WAAW,EACX,eAAe,EACf,aAAa,EACb,iBAAiB,EACjB,oBAAoB,EACpB,iBAAiB,EACjB,mBAAmB,GACpB,CAAA"}
|
|
@@ -27,6 +27,7 @@ const viem_1 = require("viem");
|
|
|
27
27
|
const account_abstraction_1 = require("viem/account-abstraction");
|
|
28
28
|
const erc7739_1 = require("viem/experimental/erc7739");
|
|
29
29
|
const accounts_1 = require("../accounts");
|
|
30
|
+
const kernel_1 = require("../accounts/kernel");
|
|
30
31
|
const common_1 = require("../accounts/signing/common");
|
|
31
32
|
const startale_1 = require("../accounts/startale");
|
|
32
33
|
const utils_1 = require("../accounts/utils");
|
|
@@ -35,6 +36,7 @@ const modules_1 = require("../modules");
|
|
|
35
36
|
const validators_1 = require("../modules/validators");
|
|
36
37
|
const core_1 = require("../modules/validators/core");
|
|
37
38
|
const permit2_1 = require("../modules/validators/policies/claim/permit2");
|
|
39
|
+
const quorum_1 = require("../modules/validators/quorum");
|
|
38
40
|
const orchestrator_1 = require("../orchestrator");
|
|
39
41
|
const registry_1 = require("../orchestrator/registry");
|
|
40
42
|
const types_1 = require("../orchestrator/types");
|
|
@@ -42,6 +44,7 @@ const utils_2 = require("../orchestrator/utils");
|
|
|
42
44
|
const compact_1 = require("./compact");
|
|
43
45
|
const error_1 = require("./error");
|
|
44
46
|
const permit2_2 = require("./permit2");
|
|
47
|
+
const quoters_1 = require("./quoters");
|
|
45
48
|
const singleChainOps_1 = require("./singleChainOps");
|
|
46
49
|
function isResolvedSessionSignerSet(signers) {
|
|
47
50
|
return (signers?.type === 'experimental_session' && 'verifyExecutions' in signers);
|
|
@@ -53,13 +56,20 @@ async function resolveSignersForChain(config, signers, chainId) {
|
|
|
53
56
|
const resolved = resolveSessionForChain(signers, chainId);
|
|
54
57
|
const enabled = await (0, validators_1.isSessionEnabled)((0, accounts_1.getAddress)(config), config.provider, resolved.session, config.useDevContracts);
|
|
55
58
|
const enableData = enabled ? undefined : resolved.enableData;
|
|
56
|
-
const
|
|
57
|
-
|
|
59
|
+
const restricted = resolved.session.restrictToActions === true ||
|
|
60
|
+
resolved.session.swap !== undefined;
|
|
61
|
+
const hasExplicitActions = !!resolved.session.actions?.length || resolved.session.swap !== undefined;
|
|
62
|
+
const verifyExecutions = restricted
|
|
63
|
+
? true
|
|
64
|
+
: (resolved.verifyExecutions ??
|
|
65
|
+
signers.verifyExecutions ??
|
|
66
|
+
hasExplicitActions);
|
|
58
67
|
return {
|
|
59
68
|
type: 'experimental_session',
|
|
60
69
|
session: resolved.session,
|
|
61
70
|
enableData,
|
|
62
71
|
verifyExecutions,
|
|
72
|
+
useDevContracts: config.useDevContracts,
|
|
63
73
|
};
|
|
64
74
|
}
|
|
65
75
|
// Picks the single signature mode that matches the bytes shape the SDK will
|
|
@@ -104,13 +114,13 @@ function resolveSessionForChain(signers, chainId) {
|
|
|
104
114
|
return { session: signers.session, enableData: signers.enableData };
|
|
105
115
|
}
|
|
106
116
|
async function prepareTransaction(config, transaction) {
|
|
107
|
-
const { sourceChains, targetChain, tokenRequests, signers, sponsored, eip7702InitSignature, settlementLayers, sourceAssets, feeAsset, appFees, customDeadline, protocolFees, lockFunds, auxiliaryFunds, account, recipient, sourceCalls, } = getTransactionParams(transaction);
|
|
117
|
+
const { sourceChains, targetChain, tokenRequests, signers, sponsored, eip7702InitSignature, settlementLayers, quoters, sourceAssets, feeAsset, appFees, customDeadline, protocolFees, lockFunds, auxiliaryFunds, account, recipient, sourceCalls, } = getTransactionParams(transaction);
|
|
108
118
|
const accountAddress = (0, accounts_1.getAddress)(config);
|
|
109
119
|
const isUserOpSigner = signers?.type === 'guardians';
|
|
110
120
|
if (isUserOpSigner) {
|
|
111
121
|
throw new error_1.SignerNotSupportedError();
|
|
112
122
|
}
|
|
113
|
-
const prepared = await prepareTransactionAsIntent(config, sourceChains, targetChain, await resolveCallInputs(transaction.calls, config, targetChain, accountAddress), transaction.gasLimit, tokenRequests, recipient, sponsored, eip7702InitSignature, settlementLayers, sourceAssets, feeAsset, lockFunds, auxiliaryFunds, account, signers, sourceCalls, appFees, customDeadline, protocolFees);
|
|
123
|
+
const prepared = await prepareTransactionAsIntent(config, sourceChains, targetChain, await resolveCallInputs(transaction.calls, config, targetChain, accountAddress), transaction.gasLimit, tokenRequests, recipient, sponsored, eip7702InitSignature, settlementLayers, sourceAssets, feeAsset, lockFunds, auxiliaryFunds, account, signers, sourceCalls, appFees, customDeadline, protocolFees, quoters);
|
|
114
124
|
return {
|
|
115
125
|
intentRoute: prepared.intentRoute,
|
|
116
126
|
intentInput: prepared.intentInput,
|
|
@@ -350,6 +360,7 @@ function getTransactionParams(transaction) {
|
|
|
350
360
|
const sponsored = transaction.sponsored;
|
|
351
361
|
const gasLimit = transaction.gasLimit;
|
|
352
362
|
const settlementLayers = transaction.settlementLayers;
|
|
363
|
+
const quoters = transaction.quoters;
|
|
353
364
|
const sourceAssets = transaction.sourceAssets;
|
|
354
365
|
const feeAsset = transaction.feeAsset;
|
|
355
366
|
const appFees = transaction.appFees;
|
|
@@ -370,6 +381,7 @@ function getTransactionParams(transaction) {
|
|
|
370
381
|
eip7702InitSignature,
|
|
371
382
|
gasLimit,
|
|
372
383
|
settlementLayers,
|
|
384
|
+
quoters,
|
|
373
385
|
sourceAssets,
|
|
374
386
|
feeAsset,
|
|
375
387
|
appFees,
|
|
@@ -433,7 +445,7 @@ function getIntentAccount(config, eip7702InitSignature, account) {
|
|
|
433
445
|
delegations,
|
|
434
446
|
};
|
|
435
447
|
}
|
|
436
|
-
async function prepareTransactionAsIntent(config, sourceChains, targetChain, callInputs, gasLimit, tokenRequests, recipientInput, sponsored, eip7702InitSignature, settlementLayers, sourceAssets, feeAsset, lockFunds, auxiliaryFunds, account, signers, sourceCalls, appFees, customDeadline, protocolFees) {
|
|
448
|
+
async function prepareTransactionAsIntent(config, sourceChains, targetChain, callInputs, gasLimit, tokenRequests, recipientInput, sponsored, eip7702InitSignature, settlementLayers, sourceAssets, feeAsset, lockFunds, auxiliaryFunds, account, signers, sourceCalls, appFees, customDeadline, protocolFees, quoters) {
|
|
437
449
|
const calls = parseCalls(callInputs, targetChain.id);
|
|
438
450
|
const accountAccessList = createAccountAccessList(sourceChains, sourceAssets);
|
|
439
451
|
function getRecipient(recipient) {
|
|
@@ -522,6 +534,11 @@ async function prepareTransactionAsIntent(config, sourceChains, targetChain, cal
|
|
|
522
534
|
];
|
|
523
535
|
}
|
|
524
536
|
}
|
|
537
|
+
const sessionQuoters = (0, quoters_1.quoterPinFromSession)(signers, [
|
|
538
|
+
...(sourceChains ?? []).map((chain) => chain.id),
|
|
539
|
+
targetChain.id,
|
|
540
|
+
]);
|
|
541
|
+
const resolvedQuoters = (0, quoters_1.narrowQuoterPin)(sessionQuoters, quoters);
|
|
525
542
|
const metaIntent = {
|
|
526
543
|
destinationChainId: targetChain.id,
|
|
527
544
|
tokenRequests: tokenRequests.map((tokenRequest) => ({
|
|
@@ -555,6 +572,7 @@ async function prepareTransactionAsIntent(config, sourceChains, targetChain, cal
|
|
|
555
572
|
}
|
|
556
573
|
: undefined,
|
|
557
574
|
settlementLayers,
|
|
575
|
+
...(resolvedQuoters ? { quoters: resolvedQuoters } : {}),
|
|
558
576
|
signatureMode,
|
|
559
577
|
auxiliaryFunds,
|
|
560
578
|
},
|
|
@@ -594,6 +612,12 @@ async function signIntent(config, intentOp, targetChain, signers, targetExecutio
|
|
|
594
612
|
}
|
|
595
613
|
const ownerValidator = (0, validators_1.getOwnerValidator)(config);
|
|
596
614
|
const isRoot = validator.address === ownerValidator.address;
|
|
615
|
+
if (isRoot &&
|
|
616
|
+
config.owners?.type === 'quorum' &&
|
|
617
|
+
origin.length > 1 &&
|
|
618
|
+
(!signers || (signers.type === 'owner' && signers.kind === 'quorum'))) {
|
|
619
|
+
return signQuorumIntentOrigins(config, origin, validator, isRoot, signers);
|
|
620
|
+
}
|
|
597
621
|
const originSignatures = [];
|
|
598
622
|
for (const typedData of origin) {
|
|
599
623
|
const chain = (0, registry_1.getChainById)(typedData.domain?.chainId);
|
|
@@ -608,6 +632,40 @@ async function signIntent(config, intentOp, targetChain, signers, targetExecutio
|
|
|
608
632
|
destinationSignature,
|
|
609
633
|
};
|
|
610
634
|
}
|
|
635
|
+
async function signQuorumIntentOrigins(config, origins, validator, isRoot, signers) {
|
|
636
|
+
if (config.owners?.type !== 'quorum') {
|
|
637
|
+
throw new Error('Quorum owner configuration is missing');
|
|
638
|
+
}
|
|
639
|
+
const address = (0, accounts_1.getAddress)(config);
|
|
640
|
+
const account = (0, accounts_1.getAccountProvider)(config);
|
|
641
|
+
const chains = origins.map((typedData) => (0, registry_1.getChainById)(typedData.domain?.chainId));
|
|
642
|
+
const quorumSigners = signers ?? (0, common_1.convertOwnerSetToSignerSet)(config.owners);
|
|
643
|
+
if (quorumSigners.type !== 'owner' || quorumSigners.kind !== 'quorum') {
|
|
644
|
+
throw new Error('Quorum owners require quorum signers');
|
|
645
|
+
}
|
|
646
|
+
const tree = (0, quorum_1.buildQuorumMerkleTree)(origins.map((typedData, index) => {
|
|
647
|
+
const hash = (0, viem_1.hashTypedData)(typedData);
|
|
648
|
+
const accountHash = account.type === 'kernel' ? (0, kernel_1.wrapMessageHash)(hash, address) : hash;
|
|
649
|
+
return {
|
|
650
|
+
account: address,
|
|
651
|
+
digest: (0, quorum_1.getQuorumSignableHash)({
|
|
652
|
+
validator: validator.address,
|
|
653
|
+
chainId: chains[index].id,
|
|
654
|
+
account: address,
|
|
655
|
+
hash: accountHash,
|
|
656
|
+
}),
|
|
657
|
+
};
|
|
658
|
+
}));
|
|
659
|
+
const signatures = await (0, common_1.signQuorumHash)(quorumSigners, config.owners, undefined, (0, quorum_1.getQuorumMerkleRootSignableHash)({
|
|
660
|
+
validator: validator.address,
|
|
661
|
+
root: tree.root,
|
|
662
|
+
}));
|
|
663
|
+
const originSignatures = await Promise.all(tree.operations.map((operation) => (0, accounts_1.packEip1271Signature)(config, (0, quorum_1.encodeQuorumMerkleSignature)({ operation, signatures }), { address: validator.address, isRoot })));
|
|
664
|
+
return {
|
|
665
|
+
originSignatures,
|
|
666
|
+
destinationSignature: originSignatures.at(-1),
|
|
667
|
+
};
|
|
668
|
+
}
|
|
611
669
|
async function getDestinationSignature(config, signers, validator, isRoot, targetChain, destination, originSignatures, targetExecution) {
|
|
612
670
|
// Smart sessions require a separate destination signature because the
|
|
613
671
|
// session enable data differs per chain
|
|
@@ -709,6 +767,7 @@ async function signIntentTypedData(config, signers, validator, isRoot, parameter
|
|
|
709
767
|
session: signers.session,
|
|
710
768
|
verifyExecutions: true,
|
|
711
769
|
enableData: signers.enableData,
|
|
770
|
+
useDevContracts: signers.useDevContracts,
|
|
712
771
|
};
|
|
713
772
|
// signWithSession (called inside getEmissarySignature) already calls packSignature
|
|
714
773
|
// internally, so no transform is needed here
|
|
@@ -721,6 +780,7 @@ async function signIntentTypedData(config, signers, validator, isRoot, parameter
|
|
|
721
780
|
verifyExecutions: false,
|
|
722
781
|
enableData: signers.enableData,
|
|
723
782
|
claimPolicyData,
|
|
783
|
+
useDevContracts: signers.useDevContracts,
|
|
724
784
|
};
|
|
725
785
|
const eip1271Signature = await (0, accounts_1.getEip1271Signature)(config, sessionSignersForEip1271, chain, {
|
|
726
786
|
address: validator.address,
|
|
@@ -731,6 +791,7 @@ async function signIntentTypedData(config, signers, validator, isRoot, parameter
|
|
|
731
791
|
session: signers.session,
|
|
732
792
|
verifyExecutions: true,
|
|
733
793
|
enableData: signers.enableData,
|
|
794
|
+
useDevContracts: signers.useDevContracts,
|
|
734
795
|
}, chain, hash);
|
|
735
796
|
return {
|
|
736
797
|
preClaimSig: emissarySignature,
|
|
@@ -846,7 +907,7 @@ async function getValidatorAccount(config, signers, publicClient, chain) {
|
|
|
846
907
|
// Owners
|
|
847
908
|
const withOwner = signers.type === 'owner' ? signers : null;
|
|
848
909
|
if (withOwner) {
|
|
849
|
-
return (0, accounts_1.getSmartAccount)(config, publicClient, chain);
|
|
910
|
+
return (0, accounts_1.getSmartAccount)(config, publicClient, chain, withOwner);
|
|
850
911
|
}
|
|
851
912
|
const withGuardians = signers.type === 'guardians' ? signers : null;
|
|
852
913
|
return withGuardians
|
|
@@ -868,6 +929,9 @@ function getValidator(config, signers) {
|
|
|
868
929
|
// Use the configured owner validator (e.g., ENS) rather than forcing Ownable
|
|
869
930
|
return (0, validators_1.getOwnerValidator)(config);
|
|
870
931
|
}
|
|
932
|
+
if (withOwner.kind === 'quorum') {
|
|
933
|
+
return (0, validators_1.getOwnerValidator)(config);
|
|
934
|
+
}
|
|
871
935
|
// Passkeys (WebAuthn)
|
|
872
936
|
if (withOwner.kind === 'passkey') {
|
|
873
937
|
return (0, core_1.getWebAuthnValidator)(1, withOwner.accounts.map((account) => ({
|
package/dist/src/index.d.ts
CHANGED
|
@@ -7,8 +7,8 @@ import { type BatchPermit2Result, checkERC20AllowanceDirect, getPermit2Address,
|
|
|
7
7
|
import { type IntentRoute, type PreparedTransactionData, type PreparedUserOperationData, type SignedTransactionData, type SignedUserOperationData } from './execution/utils';
|
|
8
8
|
import { MULTI_FACTOR_VALIDATOR_ADDRESS, OWNABLE_VALIDATOR_ADDRESS, SMART_SESSION_EMISSARY_ADDRESS, WEBAUTHN_VALIDATOR_ADDRESS } from './modules';
|
|
9
9
|
import { type SessionDetails } from './modules/validators/smart-sessions';
|
|
10
|
-
import { type AppFee, type AppFeeBalances, type AppFeeRate, type ApprovalRequired, type AuxiliaryFunds, 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
|
-
import type { AccountProviderConfig, AccountType, BundlerConfig, Call, CallInput, ChainSessionConfig, MultiFactorValidatorConfig, OwnableValidatorConfig, OwnerSet, PaymasterConfig, Permit2ClaimPolicy, Policy, ProviderConfig, Recovery, RhinestoneAccountConfig, RhinestoneConfig, RhinestoneSDKConfig, Session, SignerSet, TokenRequest, TokenSymbol, Transaction, UniversalActionPolicyParamCondition, UserOperationTransaction, WebauthnValidatorConfig } from './types';
|
|
10
|
+
import { type AppFee, type AppFeeBalances, type AppFeeRate, type ApprovalRequired, type AuxiliaryFunds, getAllSupportedChainsAndTokens, getSupportedTokens, getTokenAddress, getTokenDecimals, type IntentInput, type IntentOp, type IntentOpStatus, type Portfolio, type SettlementLayer, type SignedIntentOp, type SplitIntentsInput, type SplitIntentsResult, type SwapQuoter, type SwapQuoterFilter, type TokenRequirements, type WrapRequired } from './orchestrator';
|
|
11
|
+
import type { AccountProviderConfig, AccountType, BundlerConfig, Call, CallInput, ChainSessionConfig, MultiFactorValidatorConfig, OwnableValidatorConfig, OwnerSet, PaymasterConfig, Permit2ClaimPolicy, Policy, ProviderConfig, QuorumOwner, QuorumValidatorConfig, Recovery, RhinestoneAccountConfig, RhinestoneConfig, RhinestoneSDKConfig, Session, SignerSet, SwapScope, TokenRequest, TokenSymbol, Transaction, UniversalActionPolicyParamCondition, UserOperationTransaction, WebauthnValidatorConfig } from './types';
|
|
12
12
|
interface RhinestoneAccount {
|
|
13
13
|
config: RhinestoneAccountConfig;
|
|
14
14
|
deploy: (chain: Chain, params?: {
|
|
@@ -84,6 +84,6 @@ declare class RhinestoneSDK {
|
|
|
84
84
|
*/
|
|
85
85
|
getAppFeeBalances(): Promise<AppFeeBalances>;
|
|
86
86
|
}
|
|
87
|
-
export type { AccountProviderConfig, AccountType, AppFee, AppFeeBalances, AppFeeRate, ApprovalRequired, AuxiliaryFunds, BatchPermit2Result, BundlerConfig, Call, CallInput, ChainSessionConfig, IntentInput, IntentOp, IntentOpStatus, IntentRoute, MultiChainPermit2Config, MultiChainPermit2Result, MultiFactorValidatorConfig, OwnableValidatorConfig, OwnerSet, PaymasterConfig, Permit2ClaimPolicy, Policy, Portfolio, PreparedTransactionData, PreparedUserOperationData, ProviderConfig, Recovery, RhinestoneAccount, RhinestoneAccountConfig, Session, SettlementLayer, SignedIntentOp, SignedTransactionData, SignedUserOperationData, SignerSet, SplitIntentsInput, SplitIntentsResult, TokenRequest, TokenRequirements, TokenSymbol, Transaction, TransactionResult, UniversalActionPolicyParamCondition, UserOperationResult, WebauthnValidatorConfig, WrapRequired, };
|
|
87
|
+
export type { AccountProviderConfig, AccountType, AppFee, AppFeeBalances, AppFeeRate, ApprovalRequired, AuxiliaryFunds, BatchPermit2Result, BundlerConfig, Call, CallInput, ChainSessionConfig, IntentInput, IntentOp, IntentOpStatus, IntentRoute, MultiChainPermit2Config, MultiChainPermit2Result, MultiFactorValidatorConfig, OwnableValidatorConfig, OwnerSet, PaymasterConfig, Permit2ClaimPolicy, Policy, Portfolio, PreparedTransactionData, PreparedUserOperationData, ProviderConfig, QuorumOwner, QuorumValidatorConfig, Recovery, RhinestoneAccount, RhinestoneAccountConfig, Session, SettlementLayer, SignedIntentOp, SignedTransactionData, SignedUserOperationData, SignerSet, SplitIntentsInput, SplitIntentsResult, SwapQuoter, SwapQuoterFilter, SwapScope, TokenRequest, TokenRequirements, TokenSymbol, Transaction, TransactionResult, UniversalActionPolicyParamCondition, UserOperationResult, WebauthnValidatorConfig, WrapRequired, };
|
|
88
88
|
export { checkERC20AllowanceDirect, createRhinestoneAccount, deployAccountsForOwners, getAllSupportedChainsAndTokens, getPermit2Address, getSupportedTokens, getTokenAddress, getTokenDecimals, MULTI_FACTOR_VALIDATOR_ADDRESS, OWNABLE_VALIDATOR_ADDRESS, RhinestoneSDK, SMART_SESSION_EMISSARY_ADDRESS, signPermit2Batch, signPermit2Sequential, WEBAUTHN_VALIDATOR_ADDRESS, walletClientToAccount, wrapParaAccount, };
|
|
89
89
|
//# 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,EACpB,MAAM,MAAM,CAAA;AACb,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAA;AAapE,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAChF,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAA;AAE9D,OAAO,EAOL,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;AAC1B,OAAO,EAKL,8BAA8B,EAC9B,yBAAyB,EACzB,8BAA8B,EAE9B,0BAA0B,EAC3B,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../index.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.js
CHANGED
|
@@ -21,6 +21,7 @@ Object.defineProperty(exports, "MULTI_FACTOR_VALIDATOR_ADDRESS", { enumerable: t
|
|
|
21
21
|
Object.defineProperty(exports, "OWNABLE_VALIDATOR_ADDRESS", { enumerable: true, get: function () { return modules_1.OWNABLE_VALIDATOR_ADDRESS; } });
|
|
22
22
|
Object.defineProperty(exports, "SMART_SESSION_EMISSARY_ADDRESS", { enumerable: true, get: function () { return modules_1.SMART_SESSION_EMISSARY_ADDRESS; } });
|
|
23
23
|
Object.defineProperty(exports, "WEBAUTHN_VALIDATOR_ADDRESS", { enumerable: true, get: function () { return modules_1.WEBAUTHN_VALIDATOR_ADDRESS; } });
|
|
24
|
+
const quorum_1 = require("./modules/validators/quorum");
|
|
24
25
|
const smart_sessions_1 = require("./modules/validators/smart-sessions");
|
|
25
26
|
const orchestrator_1 = require("./orchestrator");
|
|
26
27
|
Object.defineProperty(exports, "getAllSupportedChainsAndTokens", { enumerable: true, get: function () { return orchestrator_1.getAllSupportedChainsAndTokens; } });
|
|
@@ -41,6 +42,9 @@ async function createRhinestoneAccount(config) {
|
|
|
41
42
|
if (config.account?.type !== 'eoa' && !config.owners) {
|
|
42
43
|
throw new accounts_1.OwnersFieldRequiredError();
|
|
43
44
|
}
|
|
45
|
+
if (config.owners?.type === 'quorum') {
|
|
46
|
+
(0, quorum_1.getQuorumValidator)(config.owners);
|
|
47
|
+
}
|
|
44
48
|
/**
|
|
45
49
|
* Deploys the account on a given chain
|
|
46
50
|
* @param chain Chain to deploy the account on
|
|
@@ -221,6 +225,9 @@ async function createRhinestoneAccount(config) {
|
|
|
221
225
|
* @returns Account owners
|
|
222
226
|
*/
|
|
223
227
|
function getOwners(chain) {
|
|
228
|
+
if (config.owners?.type === 'quorum') {
|
|
229
|
+
throw new Error('getOwners is not supported for Quorum validators');
|
|
230
|
+
}
|
|
224
231
|
const accountType = (0, accounts_1.getAccountProvider)(config).type;
|
|
225
232
|
const account = getAddress();
|
|
226
233
|
// For HCA, the module lives behind the factory (custom factories define
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../../modules/validators/core.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,OAAO,EAMZ,KAAK,GAAG,EAOT,MAAM,MAAM,CAAA;AAMb,OAAO,KAAK,EACV,kBAAkB,EAClB,sBAAsB,EACtB,QAAQ,EACR,uBAAuB,EACvB,uBAAuB,EACxB,MAAM,aAAa,CAAA;AAEpB,OAAO,EAA4B,KAAK,MAAM,EAAE,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../../modules/validators/core.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,OAAO,EAMZ,KAAK,GAAG,EAOT,MAAM,MAAM,CAAA;AAMb,OAAO,KAAK,EACV,kBAAkB,EAClB,sBAAsB,EACtB,QAAQ,EACR,uBAAuB,EACvB,uBAAuB,EACxB,MAAM,aAAa,CAAA;AAEpB,OAAO,EAA4B,KAAK,MAAM,EAAE,MAAM,WAAW,CAAA;AAIjE,QAAA,MAAM,kCAAkC,EAAE,OACI,CAAA;AAC9C,QAAA,MAAM,8BAA8B,EAAE,OACQ,CAAA;AAE9C,UAAU,SAAS;IACjB,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC3B,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;CACV;AAED,UAAU,kBAAkB;IAC1B,MAAM,EAAE,SAAS,GAAG,GAAG,GAAG,UAAU,CAAA;IACpC,eAAe,EAAE,MAAM,CAAA;CACxB;AAED,QAAA,MAAM,yBAAyB,EAAE,OACa,CAAA;AAC9C,QAAA,MAAM,cAAc,EAAE,OAAsD,CAAA;AAC5E,QAAA,MAAM,0BAA0B,EAAE,OACY,CAAA;AAG9C,QAAA,MAAM,8BAA8B,EAAE,OACQ,CAAA;AAO9C,QAAA,MAAM,6BAA6B,EAAE,OACS,CAAA;AAS9C,iBAAS,eAAe,CAAC,MAAM,EAAE,QAAQ,GAAG,OAAO,CAMlD;AAED,iBAAS,iBAAiB,CAAC,MAAM,EAAE,uBAAuB,UAazD;AAED,iBAAS,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,GAAG,GAAG,CAwDjD;AAED,iBAAS,YAAY,CAAC,MAAM,EAAE,QAAQ,UAmCrC;AA2BD,iBAAS,mBAAmB,CAC1B,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,OAAO,EAAE,EACjB,OAAO,CAAC,EAAE,OAAO,GAChB,MAAM,CAiBR;AAED,iBAAS,eAAe,CACtB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,OAAO,EAAE,EACjB,gBAAgB,EAAE,MAAM,EAAE,GACzB,MAAM,CAsCR;AAED,iBAAS,oBAAoB,CAC3B,SAAS,EAAE,MAAM,EACjB,mBAAmB,EAAE,kBAAkB,EAAE,EACzC,OAAO,CAAC,EAAE,OAAO,GAChB,MAAM,CA4DR;AAED,iBAAS,yBAAyB,CAChC,SAAS,EACL,sBAAsB,GACtB,kBAAkB,GAClB,uBAAuB,GAC1B,GAAG,CAgFL;AAED,iBAAS,uBAAuB,CAC9B,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,CACR,sBAAsB,GACtB,kBAAkB,GAClB,uBAAuB,GACvB,IAAI,CACP,EAAE,EACH,OAAO,CAAC,EAAE,OAAO,GAChB,MAAM,CAgDR;AAED,iBAAS,0BAA0B,CACjC,SAAS,EAAE,OAAO,EAAE,EACpB,SAAS,SAAI,GACZ,MAAM,CAyBR;AAeD,iBAAS,cAAc,CAAC,SAAS,EAAE,MAAM,WAUxC;AAED,OAAO,EACL,yBAAyB,EACzB,cAAc,EACd,0BAA0B,EAC1B,8BAA8B,EAC9B,6BAA6B,EAC7B,8BAA8B,EAC9B,kCAAkC,EAClC,iBAAiB,EACjB,mBAAmB,EACnB,eAAe,EACf,oBAAoB,EACpB,uBAAuB,EACvB,yBAAyB,EACzB,0BAA0B,EAC1B,YAAY,EACZ,gBAAgB,EAChB,cAAc,EACd,eAAe,GAChB,CAAA;AACD,YAAY,EAAE,kBAAkB,EAAE,CAAA"}
|
|
@@ -16,6 +16,7 @@ const viem_1 = require("viem");
|
|
|
16
16
|
const error_1 = require("../../accounts/error");
|
|
17
17
|
const common_1 = require("../common");
|
|
18
18
|
const ordering_1 = require("./ordering");
|
|
19
|
+
const quorum_1 = require("./quorum");
|
|
19
20
|
const SMART_SESSION_EMISSARY_ADDRESS_DEV = '0x60731de80d78548875f8a67c4fec2a8660194e0c';
|
|
20
21
|
exports.SMART_SESSION_EMISSARY_ADDRESS_DEV = SMART_SESSION_EMISSARY_ADDRESS_DEV;
|
|
21
22
|
const SMART_SESSION_EMISSARY_ADDRESS = '0xad568b3f825a8d5ffc06dd3253526b64d810ae89';
|
|
@@ -63,6 +64,8 @@ function getMockSignature(ownerSet) {
|
|
|
63
64
|
const signatures = owners.map(() => ECDSA_MOCK_SIGNATURE);
|
|
64
65
|
return (0, viem_1.concat)(signatures);
|
|
65
66
|
}
|
|
67
|
+
case 'quorum':
|
|
68
|
+
return (0, quorum_1.getQuorumMockSignature)(ownerSet);
|
|
66
69
|
case 'passkey':
|
|
67
70
|
return WEBAUTHN_MOCK_SIGNATURE;
|
|
68
71
|
case 'multi-factor': {
|
|
@@ -102,6 +105,8 @@ function getValidator(owners) {
|
|
|
102
105
|
switch (owners.type) {
|
|
103
106
|
case 'ecdsa':
|
|
104
107
|
return getOwnableValidator(owners.threshold ?? 1, owners.accounts.map((account) => account.address), owners.module);
|
|
108
|
+
case 'quorum':
|
|
109
|
+
return (0, quorum_1.getQuorumValidator)(owners);
|
|
105
110
|
case 'ens':
|
|
106
111
|
// ENS validation is baked into the HCA account implementation, so the
|
|
107
112
|
// module address is fixed (no override).
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { type Address, type Hex } from 'viem';
|
|
2
|
+
import type { QuorumValidatorConfig } from '../../types';
|
|
3
|
+
import type { Module } from '../common';
|
|
4
|
+
interface QuorumSigningOwner {
|
|
5
|
+
readonly ownerId: string;
|
|
6
|
+
readonly signer: Address;
|
|
7
|
+
readonly weight: bigint;
|
|
8
|
+
}
|
|
9
|
+
interface QuorumOwnerSignature {
|
|
10
|
+
readonly ownerId: string;
|
|
11
|
+
readonly signature: Hex;
|
|
12
|
+
}
|
|
13
|
+
interface QuorumMerkleProof {
|
|
14
|
+
readonly root: Hex;
|
|
15
|
+
readonly proof: readonly Hex[];
|
|
16
|
+
}
|
|
17
|
+
interface QuorumMerkleOperation extends QuorumMerkleProof {
|
|
18
|
+
readonly account: Address;
|
|
19
|
+
readonly digest: Hex;
|
|
20
|
+
readonly leaf: Hex;
|
|
21
|
+
}
|
|
22
|
+
declare function getQuorumSignableHash(input: {
|
|
23
|
+
readonly validator: Address;
|
|
24
|
+
readonly chainId: number;
|
|
25
|
+
readonly account: Address;
|
|
26
|
+
readonly hash: Hex;
|
|
27
|
+
}): Hex;
|
|
28
|
+
declare function buildQuorumMerkleTree(operations: readonly {
|
|
29
|
+
readonly account: Address;
|
|
30
|
+
readonly digest: Hex;
|
|
31
|
+
}[]): {
|
|
32
|
+
readonly root: Hex;
|
|
33
|
+
readonly operations: readonly QuorumMerkleOperation[];
|
|
34
|
+
};
|
|
35
|
+
declare function getQuorumMerkleRootSignableHash(input: {
|
|
36
|
+
readonly validator: Address;
|
|
37
|
+
readonly root: Hex;
|
|
38
|
+
}): Hex;
|
|
39
|
+
declare function getQuorumValidator(config: QuorumValidatorConfig): Module;
|
|
40
|
+
declare function encodeQuorumOwnerSignatures(input: {
|
|
41
|
+
readonly owners: readonly QuorumSigningOwner[];
|
|
42
|
+
readonly thresholdWeight: bigint;
|
|
43
|
+
readonly signatures: readonly QuorumOwnerSignature[];
|
|
44
|
+
}): Hex;
|
|
45
|
+
declare function encodeQuorumErc1271Signature(input: {
|
|
46
|
+
readonly signatures: Hex;
|
|
47
|
+
}): Hex;
|
|
48
|
+
declare function encodeQuorumMerkleSignature(input: {
|
|
49
|
+
readonly operation: QuorumMerkleProof;
|
|
50
|
+
readonly signatures: Hex;
|
|
51
|
+
}): Hex;
|
|
52
|
+
declare function getQuorumMockSignature(config: QuorumValidatorConfig): Hex;
|
|
53
|
+
declare function getQuorumConfigOwners(config: QuorumValidatorConfig): QuorumSigningOwner[];
|
|
54
|
+
export { buildQuorumMerkleTree, encodeQuorumErc1271Signature, encodeQuorumMerkleSignature, encodeQuorumOwnerSignatures, getQuorumConfigOwners, getQuorumMerkleRootSignableHash, getQuorumMockSignature, getQuorumSignableHash, getQuorumValidator, };
|
|
55
|
+
export type { QuorumMerkleOperation, QuorumMerkleProof, QuorumOwnerSignature, QuorumSigningOwner, };
|
|
56
|
+
//# sourceMappingURL=quorum.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"quorum.d.ts","sourceRoot":"","sources":["../../../../modules/validators/quorum.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,OAAO,EAGZ,KAAK,GAAG,EAMT,MAAM,MAAM,CAAA;AACb,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA;AACxD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAcvC,UAAU,kBAAkB;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CACxB;AAED,UAAU,oBAAoB;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,SAAS,EAAE,GAAG,CAAA;CACxB;AAED,UAAU,iBAAiB;IACzB,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAA;IAClB,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,EAAE,CAAA;CAC/B;AAED,UAAU,qBAAsB,SAAQ,iBAAiB;IACvD,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;IACzB,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAA;IACpB,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAA;CACnB;AAED,iBAAS,qBAAqB,CAAC,KAAK,EAAE;IACpC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAA;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;IACzB,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAA;CACnB,GAAG,GAAG,CAmBN;AAED,iBAAS,qBAAqB,CAC5B,UAAU,EAAE,SAAS;IACnB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;IACzB,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAA;CACrB,EAAE,GACF;IACD,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAA;IAClB,QAAQ,CAAC,UAAU,EAAE,SAAS,qBAAqB,EAAE,CAAA;CACtD,CAuCA;AAED,iBAAS,+BAA+B,CAAC,KAAK,EAAE;IAC9C,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAA;IAC3B,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAA;CACnB,GAAG,GAAG,CAaN;AAED,iBAAS,kBAAkB,CAAC,MAAM,EAAE,qBAAqB,GAAG,MAAM,CA4BjE;AAED,iBAAS,2BAA2B,CAAC,KAAK,EAAE;IAC1C,QAAQ,CAAC,MAAM,EAAE,SAAS,kBAAkB,EAAE,CAAA;IAC9C,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAA;IAChC,QAAQ,CAAC,UAAU,EAAE,SAAS,oBAAoB,EAAE,CAAA;CACrD,GAAG,GAAG,CA8BN;AAED,iBAAS,4BAA4B,CAAC,KAAK,EAAE;IAC3C,QAAQ,CAAC,UAAU,EAAE,GAAG,CAAA;CACzB,GAAG,GAAG,CAKN;AAED,iBAAS,2BAA2B,CAAC,KAAK,EAAE;IAC1C,QAAQ,CAAC,SAAS,EAAE,iBAAiB,CAAA;IACrC,QAAQ,CAAC,UAAU,EAAE,GAAG,CAAA;CACzB,GAAG,GAAG,CAaN;AAED,iBAAS,sBAAsB,CAAC,MAAM,EAAE,qBAAqB,GAAG,GAAG,CAUlE;AAED,iBAAS,qBAAqB,CAC5B,MAAM,EAAE,qBAAqB,GAC5B,kBAAkB,EAAE,CAEtB;AA2ED,OAAO,EACL,qBAAqB,EACrB,4BAA4B,EAC5B,2BAA2B,EAC3B,2BAA2B,EAC3B,qBAAqB,EACrB,+BAA+B,EAC/B,sBAAsB,EACtB,qBAAqB,EACrB,kBAAkB,GACnB,CAAA;AACD,YAAY,EACV,qBAAqB,EACrB,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,GACnB,CAAA"}
|