@0xsequence/relayer 3.0.0-beta.9 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/.turbo/turbo-build.log +2 -2
  2. package/.turbo/turbo-lint.log +4 -0
  3. package/.turbo/turbo-typecheck.log +4 -0
  4. package/CHANGELOG.md +126 -0
  5. package/dist/preconditions/codec.d.ts.map +1 -1
  6. package/dist/preconditions/codec.js +55 -45
  7. package/dist/relayer/relayer.d.ts +2 -2
  8. package/dist/relayer/relayer.d.ts.map +1 -1
  9. package/dist/relayer/relayer.js +3 -1
  10. package/dist/relayer/rpc-relayer/index.d.ts +3 -3
  11. package/dist/relayer/rpc-relayer/index.d.ts.map +1 -1
  12. package/dist/relayer/rpc-relayer/index.js +26 -25
  13. package/dist/relayer/standard/eip6963.d.ts +2 -2
  14. package/dist/relayer/standard/eip6963.d.ts.map +1 -1
  15. package/dist/relayer/standard/eip6963.js +3 -3
  16. package/dist/relayer/standard/local.d.ts +2 -3
  17. package/dist/relayer/standard/local.d.ts.map +1 -1
  18. package/dist/relayer/standard/local.js +14 -30
  19. package/dist/relayer/standard/pk-relayer.d.ts +3 -3
  20. package/dist/relayer/standard/pk-relayer.d.ts.map +1 -1
  21. package/dist/relayer/standard/pk-relayer.js +3 -3
  22. package/dist/relayer/standard/sequence.d.ts +3 -3
  23. package/dist/relayer/standard/sequence.d.ts.map +1 -1
  24. package/dist/relayer/standard/sequence.js +2 -3
  25. package/eslint.config.js +4 -0
  26. package/package.json +9 -7
  27. package/src/preconditions/codec.ts +63 -39
  28. package/src/relayer/relayer.ts +4 -1
  29. package/src/relayer/rpc-relayer/index.ts +50 -33
  30. package/src/relayer/standard/eip6963.ts +4 -3
  31. package/src/relayer/standard/local.ts +37 -44
  32. package/src/relayer/standard/pk-relayer.ts +4 -3
  33. package/src/relayer/standard/sequence.ts +3 -3
  34. package/test/preconditions/codec.test.ts +11 -11
  35. package/test/preconditions/preconditions.test.ts +97 -138
  36. package/test/preconditions/selectors.test.ts +76 -254
  37. package/test/preconditions/types.test.ts +6 -6
  38. package/test/relayer/relayer.test.ts +4 -4
@@ -1,5 +1,5 @@
1
1
 
2
- 
3
- > @0xsequence/relayer@3.0.0-beta.9 build /Users/taylan/Development/Horizon/sequence.js/packages/services/relayer
2
+
3
+ > @0xsequence/relayer@3.0.0 build /home/taylan/development/sequence/sequence.js/packages/services/relayer
4
4
  > tsc
5
5
 
@@ -0,0 +1,4 @@
1
+
2
+ > @0xsequence/relayer@3.0.0 lint /home/taylan/development/sequence/sequence.js/packages/services/relayer
3
+ > eslint . --max-warnings 0
4
+
@@ -0,0 +1,4 @@
1
+
2
+ > @0xsequence/relayer@3.0.0 typecheck /home/taylan/development/sequence/sequence.js/packages/services/relayer
3
+ > tsc --noEmit
4
+
package/CHANGELOG.md CHANGED
@@ -1,5 +1,131 @@
1
1
  # @0xsequence/relayer
2
2
 
3
+ ## 3.0.0
4
+
5
+ ### Patch Changes
6
+
7
+ - f68be62: ethauth support
8
+ - 49d8a2f: New chains, minor fixes
9
+ - 3411232: Beta release with dapp connector fixes
10
+ - 23cb9e9: New chains, relayer rpc fix
11
+ - f5f6a7a: dapp-client updates
12
+ - e7de3b1: Fix signer 404 error, minor fixes
13
+ - 493836f: multicall3 optimization
14
+ - 30e1f1a: 3.0.0 beta
15
+ - d5017e8: Beta release for v3
16
+ - 24a5fab: Final RC before 3.0.0
17
+ - e5e1a03: Apple auth fixes
18
+ - 0b63113: Apple auth fix
19
+ - a89134a: Userdata service updates
20
+ - 7c6c811: 3.0.0-beta.3 with fixes
21
+ - 3.0.0 release
22
+ - 98ce38b: 3.0.0-beta.2 with identity instrument updates
23
+ - 747e6b5: Relayer fee options fix
24
+ - 40c19ff: dapp client updates for EOA login
25
+ - 6d5de25: 3.0.0-beta.1
26
+ - 934acd1: RC5 upgrade
27
+ - Updated dependencies [f68be62]
28
+ - Updated dependencies [49d8a2f]
29
+ - Updated dependencies [3411232]
30
+ - Updated dependencies [23cb9e9]
31
+ - Updated dependencies [f5f6a7a]
32
+ - Updated dependencies [e7de3b1]
33
+ - Updated dependencies [493836f]
34
+ - Updated dependencies [30e1f1a]
35
+ - Updated dependencies [d5017e8]
36
+ - Updated dependencies [24a5fab]
37
+ - Updated dependencies [e5e1a03]
38
+ - Updated dependencies [0b63113]
39
+ - Updated dependencies [a89134a]
40
+ - Updated dependencies [7c6c811]
41
+ - Updated dependencies
42
+ - Updated dependencies [98ce38b]
43
+ - Updated dependencies [747e6b5]
44
+ - Updated dependencies [40c19ff]
45
+ - Updated dependencies [6d5de25]
46
+ - Updated dependencies [934acd1]
47
+ - @0xsequence/wallet-primitives@3.0.0
48
+
49
+ ## 3.0.0-beta.19
50
+
51
+ ### Patch Changes
52
+
53
+ - Final RC before 3.0.0
54
+ - Updated dependencies
55
+ - @0xsequence/wallet-primitives@3.0.0-beta.19
56
+
57
+ ## 3.0.0-beta.18
58
+
59
+ ### Patch Changes
60
+
61
+ - multicall3 optimization
62
+ - Updated dependencies
63
+ - @0xsequence/wallet-primitives@3.0.0-beta.18
64
+
65
+ ## 3.0.0-beta.17
66
+
67
+ ### Patch Changes
68
+
69
+ - New chains, relayer rpc fix
70
+ - Updated dependencies
71
+ - @0xsequence/wallet-primitives@3.0.0-beta.17
72
+
73
+ ## 3.0.0-beta.16
74
+
75
+ ### Patch Changes
76
+
77
+ - ethauth support
78
+ - Updated dependencies
79
+ - @0xsequence/wallet-primitives@3.0.0-beta.16
80
+
81
+ ## 3.0.0-beta.15
82
+
83
+ ### Patch Changes
84
+
85
+ - New chains, minor fixes
86
+ - Updated dependencies
87
+ - @0xsequence/wallet-primitives@3.0.0-beta.15
88
+
89
+ ## 3.0.0-beta.14
90
+
91
+ ### Patch Changes
92
+
93
+ - Relayer fee options fix
94
+ - Updated dependencies
95
+ - @0xsequence/wallet-primitives@3.0.0-beta.14
96
+
97
+ ## 3.0.0-beta.13
98
+
99
+ ### Patch Changes
100
+
101
+ - Userdata service updates
102
+ - Updated dependencies
103
+ - @0xsequence/wallet-primitives@3.0.0-beta.13
104
+
105
+ ## 3.0.0-beta.12
106
+
107
+ ### Patch Changes
108
+
109
+ - Beta release with dapp connector fixes
110
+ - Updated dependencies
111
+ - @0xsequence/wallet-primitives@3.0.0-beta.12
112
+
113
+ ## 3.0.0-beta.11
114
+
115
+ ### Patch Changes
116
+
117
+ - 3.0.0 beta
118
+ - Updated dependencies
119
+ - @0xsequence/wallet-primitives@3.0.0-beta.11
120
+
121
+ ## 3.0.0-beta.10
122
+
123
+ ### Patch Changes
124
+
125
+ - dapp-client updates
126
+ - Updated dependencies
127
+ - @0xsequence/wallet-primitives@3.0.0-beta.10
128
+
3
129
  ## 3.0.0-beta.9
4
130
 
5
131
  ### Patch Changes
@@ -1 +1 @@
1
- {"version":3,"file":"codec.d.ts","sourceRoot":"","sources":["../../src/preconditions/codec.ts"],"names":[],"mappings":"AACA,OAAO,EACL,YAAY,EAQb,MAAM,YAAY,CAAA;AAEnB,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,YAAY,EAAE,MAAM,CAAA;IACpB,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,wBAAgB,mBAAmB,CAAC,aAAa,EAAE,uBAAuB,EAAE,GAAG,YAAY,EAAE,CAW5F;AAED,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,uBAAuB,GAAG,YAAY,GAAG,SAAS,CAoFvF;AAED,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,YAAY,GAAG,MAAM,CAsE1D"}
1
+ {"version":3,"file":"codec.d.ts","sourceRoot":"","sources":["../../src/preconditions/codec.ts"],"names":[],"mappings":"AACA,OAAO,EACL,YAAY,EAQb,MAAM,YAAY,CAAA;AAEnB,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,YAAY,EAAE,MAAM,CAAA;IACpB,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,wBAAgB,mBAAmB,CAAC,aAAa,EAAE,uBAAuB,EAAE,GAAG,YAAY,EAAE,CAW5F;AAED,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,uBAAuB,GAAG,YAAY,GAAG,SAAS,CAyFvF;AAED,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,YAAY,GAAG,MAAM,CAyF1D"}
@@ -14,6 +14,10 @@ export function decodePrecondition(p) {
14
14
  if (!p) {
15
15
  return undefined;
16
16
  }
17
+ if (typeof p.minAmount !== 'bigint') {
18
+ console.warn(`Failed to decode precondition: minAmount must be a bigint`);
19
+ return undefined;
20
+ }
17
21
  let precondition;
18
22
  try {
19
23
  switch (p.type) {
@@ -54,72 +58,78 @@ export function decodePrecondition(p) {
54
58
  }
55
59
  }
56
60
  export function encodePrecondition(p) {
57
- const data = {};
58
61
  switch (p.type()) {
59
62
  case 'native-balance': {
60
63
  const native = p;
61
- data.address = native.address.toString();
62
- if (native.min !== undefined)
63
- data.min = native.min.toString();
64
- if (native.max !== undefined)
65
- data.max = native.max.toString();
66
- break;
64
+ const data = {
65
+ address: native.address.toString(),
66
+ ...(native.min !== undefined && { min: native.min.toString() }),
67
+ ...(native.max !== undefined && { max: native.max.toString() }),
68
+ };
69
+ return JSON.stringify(data);
67
70
  }
68
71
  case 'erc20-balance': {
69
72
  const erc20 = p;
70
- data.address = erc20.address.toString();
71
- data.token = erc20.token.toString();
72
- if (erc20.min !== undefined)
73
- data.min = erc20.min.toString();
74
- if (erc20.max !== undefined)
75
- data.max = erc20.max.toString();
76
- break;
73
+ const data = {
74
+ address: erc20.address.toString(),
75
+ token: erc20.token.toString(),
76
+ ...(erc20.min !== undefined && { min: erc20.min.toString() }),
77
+ ...(erc20.max !== undefined && { max: erc20.max.toString() }),
78
+ };
79
+ return JSON.stringify(data);
77
80
  }
78
81
  case 'erc20-approval': {
79
82
  const erc20 = p;
80
- data.address = erc20.address.toString();
81
- data.token = erc20.token.toString();
82
- data.operator = erc20.operator.toString();
83
- data.min = erc20.min.toString();
84
- break;
83
+ const data = {
84
+ address: erc20.address.toString(),
85
+ token: erc20.token.toString(),
86
+ operator: erc20.operator.toString(),
87
+ min: erc20.min.toString(),
88
+ };
89
+ return JSON.stringify(data);
85
90
  }
86
91
  case 'erc721-ownership': {
87
92
  const erc721 = p;
88
- data.address = erc721.address.toString();
89
- data.token = erc721.token.toString();
90
- data.tokenId = erc721.tokenId.toString();
91
- if (erc721.owned !== undefined)
92
- data.owned = erc721.owned;
93
- break;
93
+ const data = {
94
+ address: erc721.address.toString(),
95
+ token: erc721.token.toString(),
96
+ tokenId: erc721.tokenId.toString(),
97
+ ...(erc721.owned !== undefined && { owned: erc721.owned }),
98
+ };
99
+ return JSON.stringify(data);
94
100
  }
95
101
  case 'erc721-approval': {
96
102
  const erc721 = p;
97
- data.address = erc721.address.toString();
98
- data.token = erc721.token.toString();
99
- data.tokenId = erc721.tokenId.toString();
100
- data.operator = erc721.operator.toString();
101
- break;
103
+ const data = {
104
+ address: erc721.address.toString(),
105
+ token: erc721.token.toString(),
106
+ tokenId: erc721.tokenId.toString(),
107
+ operator: erc721.operator.toString(),
108
+ };
109
+ return JSON.stringify(data);
102
110
  }
103
111
  case 'erc1155-balance': {
104
112
  const erc1155 = p;
105
- data.address = erc1155.address.toString();
106
- data.token = erc1155.token.toString();
107
- data.tokenId = erc1155.tokenId.toString();
108
- if (erc1155.min !== undefined)
109
- data.min = erc1155.min.toString();
110
- if (erc1155.max !== undefined)
111
- data.max = erc1155.max.toString();
112
- break;
113
+ const data = {
114
+ address: erc1155.address.toString(),
115
+ token: erc1155.token.toString(),
116
+ tokenId: erc1155.tokenId.toString(),
117
+ ...(erc1155.min !== undefined && { min: erc1155.min.toString() }),
118
+ ...(erc1155.max !== undefined && { max: erc1155.max.toString() }),
119
+ };
120
+ return JSON.stringify(data);
113
121
  }
114
122
  case 'erc1155-approval': {
115
123
  const erc1155 = p;
116
- data.address = erc1155.address.toString();
117
- data.token = erc1155.token.toString();
118
- data.tokenId = erc1155.tokenId.toString();
119
- data.operator = erc1155.operator.toString();
120
- data.min = erc1155.min.toString();
121
- break;
124
+ const data = {
125
+ address: erc1155.address.toString(),
126
+ token: erc1155.token.toString(),
127
+ tokenId: erc1155.tokenId.toString(),
128
+ operator: erc1155.operator.toString(),
129
+ min: erc1155.min.toString(),
130
+ };
131
+ return JSON.stringify(data);
122
132
  }
123
133
  }
124
- return JSON.stringify(data);
134
+ return JSON.stringify({});
125
135
  }
@@ -12,7 +12,7 @@ export interface Relayer {
12
12
  tokens?: FeeToken[];
13
13
  paymentAddress?: Address.Address;
14
14
  }>;
15
- feeOptions(wallet: Address.Address, chainId: number, calls: Payload.Call[]): Promise<{
15
+ feeOptions(wallet: Address.Address, chainId: number, to: Address.Address, calls: Payload.Call[]): Promise<{
16
16
  options: FeeOption[];
17
17
  quote?: FeeQuote;
18
18
  }>;
@@ -22,5 +22,5 @@ export interface Relayer {
22
22
  status(opHash: Hex.Hex, chainId: number): Promise<OperationStatus>;
23
23
  checkPrecondition(precondition: Precondition.Precondition): Promise<boolean>;
24
24
  }
25
- export declare function isRelayer(relayer: any): relayer is Relayer;
25
+ export declare function isRelayer(relayer: unknown): relayer is Relayer;
26
26
  //# sourceMappingURL=relayer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"relayer.d.ts","sourceRoot":"","sources":["../../src/relayer/relayer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,IAAI,CAAA;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAA;AACvD,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AACjE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAA;AAErE,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,SAAS,CAAA;IAEf,IAAI,EAAE,MAAM,CAAA;IACZ,EAAE,EAAE,MAAM,CAAA;IAEV,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAEvE,SAAS,IAAI,OAAO,CAAC;QAAE,aAAa,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC;QAAC,cAAc,CAAC,EAAE,OAAO,CAAC,OAAO,CAAA;KAAE,CAAC,CAAA;IAEvG,UAAU,CACR,MAAM,EAAE,OAAO,CAAC,OAAO,EACvB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,OAAO,CAAC,IAAI,EAAE,GACpB,OAAO,CAAC;QAAE,OAAO,EAAE,SAAS,EAAE,CAAC;QAAC,KAAK,CAAC,EAAE,QAAQ,CAAA;KAAE,CAAC,CAAA;IAEtD,KAAK,CAAC,EAAE,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,GAAG,CAAC,GAAG,CAAA;KAAE,CAAC,CAAA;IAE1G,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAAA;IAElE,iBAAiB,CAAC,YAAY,EAAE,YAAY,CAAC,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;CAC7E;AAED,wBAAgB,SAAS,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO,IAAI,OAAO,CAQ1D"}
1
+ {"version":3,"file":"relayer.d.ts","sourceRoot":"","sources":["../../src/relayer/relayer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,IAAI,CAAA;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAA;AACvD,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AACjE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAA;AAErE,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,SAAS,CAAA;IAEf,IAAI,EAAE,MAAM,CAAA;IACZ,EAAE,EAAE,MAAM,CAAA;IAEV,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAEvE,SAAS,IAAI,OAAO,CAAC;QAAE,aAAa,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC;QAAC,cAAc,CAAC,EAAE,OAAO,CAAC,OAAO,CAAA;KAAE,CAAC,CAAA;IAEvG,UAAU,CACR,MAAM,EAAE,OAAO,CAAC,OAAO,EACvB,OAAO,EAAE,MAAM,EACf,EAAE,EAAE,OAAO,CAAC,OAAO,EACnB,KAAK,EAAE,OAAO,CAAC,IAAI,EAAE,GACpB,OAAO,CAAC;QAAE,OAAO,EAAE,SAAS,EAAE,CAAC;QAAC,KAAK,CAAC,EAAE,QAAQ,CAAA;KAAE,CAAC,CAAA;IAEtD,KAAK,CAAC,EAAE,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,GAAG,CAAC,GAAG,CAAA;KAAE,CAAC,CAAA;IAE1G,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAAA;IAElE,iBAAiB,CAAC,YAAY,EAAE,YAAY,CAAC,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;CAC7E;AAED,wBAAgB,SAAS,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,IAAI,OAAO,CAU9D"}
@@ -1,5 +1,7 @@
1
1
  export function isRelayer(relayer) {
2
- return ('isAvailable' in relayer &&
2
+ return (typeof relayer === 'object' &&
3
+ relayer !== null &&
4
+ 'isAvailable' in relayer &&
3
5
  'feeOptions' in relayer &&
4
6
  'relay' in relayer &&
5
7
  'status' in relayer &&
@@ -6,7 +6,7 @@ import { Chain } from 'viem';
6
6
  export type Fetch = (input: RequestInfo, init?: RequestInit) => Promise<Response>;
7
7
  export declare const getChain: (chainId: number) => Chain;
8
8
  export declare class RpcRelayer implements Relayer {
9
- readonly kind: 'relayer';
9
+ readonly kind = "relayer";
10
10
  readonly type = "rpc";
11
11
  readonly id: string;
12
12
  readonly chainId: number;
@@ -21,7 +21,7 @@ export declare class RpcRelayer implements Relayer {
21
21
  tokens?: RpcFeeToken[];
22
22
  paymentAddress?: Address.Address;
23
23
  }>;
24
- feeOptions(wallet: Address.Address, chainId: number, calls: Payload.Call[]): Promise<{
24
+ feeOptions(wallet: Address.Address, chainId: number, to: Address.Address, calls: Payload.Call[]): Promise<{
25
25
  options: FeeOption[];
26
26
  quote?: FeeQuote;
27
27
  }>;
@@ -31,7 +31,7 @@ export declare class RpcRelayer implements Relayer {
31
31
  relay(to: Address.Address, data: Hex.Hex, chainId: number, quote?: FeeQuote, preconditions?: TransactionPrecondition[]): Promise<{
32
32
  opHash: Hex.Hex;
33
33
  }>;
34
- status(opHash: Hex.Hex, chainId: number): Promise<OperationStatus>;
34
+ status(opHash: Hex.Hex, _chainId: number): Promise<OperationStatus>;
35
35
  checkPrecondition(precondition: TransactionPrecondition): Promise<boolean>;
36
36
  private mapRpcFeeTokenToAddress;
37
37
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/relayer/rpc-relayer/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,QAAQ,IAAI,WAAW,EACvB,uBAAuB,EAExB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,OAAO,EAAE,GAAG,EAAsB,MAAM,IAAI,CAAA;AACrD,OAAO,EAAa,OAAO,EAAW,MAAM,+BAA+B,CAAA;AAC3E,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAU3E,OAAO,EAA0C,KAAK,EAAE,MAAM,MAAM,CAAA;AAGpE,MAAM,MAAM,KAAK,GAAG,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAA;AAqCjF,eAAO,MAAM,QAAQ,GAAI,SAAS,MAAM,KAAG,KAc1C,CAAA;AAED,qBAAa,UAAW,YAAW,OAAO;IACxC,SAAgB,IAAI,EAAE,SAAS,CAAY;IAC3C,SAAgB,IAAI,SAAQ;IAC5B,SAAgB,EAAE,EAAE,MAAM,CAAA;IAC1B,SAAgB,OAAO,EAAE,MAAM,CAAA;IAC/B,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,KAAK,CAAO;IACpB,OAAO,CAAC,QAAQ,CAAc;IAC9B,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAQ;gBAE9B,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,KAAK,EAAE,gBAAgB,CAAC,EAAE,MAAM;IAqB3G,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAIlE,SAAS,IAAI,OAAO,CAAC;QAAE,aAAa,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,WAAW,EAAE,CAAC;QAAC,cAAc,CAAC,EAAE,OAAO,CAAC,OAAO,CAAA;KAAE,CAAC;IAqB1G,UAAU,CACd,MAAM,EAAE,OAAO,CAAC,OAAO,EACvB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,OAAO,CAAC,IAAI,EAAE,GACpB,OAAO,CAAC;QAAE,OAAO,EAAE,SAAS,EAAE,CAAC;QAAC,KAAK,CAAC,EAAE,QAAQ,CAAA;KAAE,CAAC;IAgChD,WAAW,CACf,aAAa,EAAE,OAAO,CAAC,OAAO,EAC9B,EAAE,EAAE,OAAO,CAAC,OAAO,EACnB,IAAI,EAAE,GAAG,CAAC,GAAG,EACb,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,QAAQ,EAChB,aAAa,CAAC,EAAE,uBAAuB,EAAE,GACxC,OAAO,CAAC;QAAE,MAAM,EAAE,GAAG,CAAC,GAAG,CAAA;KAAE,CAAC;IAyBzB,KAAK,CACT,EAAE,EAAE,OAAO,CAAC,OAAO,EACnB,IAAI,EAAE,GAAG,CAAC,GAAG,EACb,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,QAAQ,EAChB,aAAa,CAAC,EAAE,uBAAuB,EAAE,GACxC,OAAO,CAAC;QAAE,MAAM,EAAE,GAAG,CAAC,GAAG,CAAA;KAAE,CAAC;IAyBzB,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IA2ClE,iBAAiB,CAAC,YAAY,EAAE,uBAAuB,GAAG,OAAO,CAAC,OAAO,CAAC;IAuKhF,OAAO,CAAC,uBAAuB;CAMhC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/relayer/rpc-relayer/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,QAAQ,IAAI,WAAW,EACvB,uBAAuB,EAExB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,OAAO,EAAE,GAAG,EAAe,MAAM,IAAI,CAAA;AAC9C,OAAO,EAAa,OAAO,EAAW,MAAM,+BAA+B,CAAA;AAC3E,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAmB3E,OAAO,EAA0C,KAAK,EAAE,MAAM,MAAM,CAAA;AAGpE,MAAM,MAAM,KAAK,GAAG,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAA;AAuCjF,eAAO,MAAM,QAAQ,GAAI,SAAS,MAAM,KAAG,KAgB1C,CAAA;AAED,qBAAa,UAAW,YAAW,OAAO;IACxC,SAAgB,IAAI,aAAY;IAChC,SAAgB,IAAI,SAAQ;IAC5B,SAAgB,EAAE,EAAE,MAAM,CAAA;IAC1B,SAAgB,OAAO,EAAE,MAAM,CAAA;IAC/B,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,KAAK,CAAO;IACpB,OAAO,CAAC,QAAQ,CAAc;IAC9B,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAQ;gBAE9B,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,KAAK,EAAE,gBAAgB,CAAC,EAAE,MAAM;IAqB3G,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAIlE,SAAS,IAAI,OAAO,CAAC;QAAE,aAAa,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,WAAW,EAAE,CAAC;QAAC,cAAc,CAAC,EAAE,OAAO,CAAC,OAAO,CAAA;KAAE,CAAC;IAqB1G,UAAU,CACd,MAAM,EAAE,OAAO,CAAC,OAAO,EACvB,OAAO,EAAE,MAAM,EACf,EAAE,EAAE,OAAO,CAAC,OAAO,EACnB,KAAK,EAAE,OAAO,CAAC,IAAI,EAAE,GACpB,OAAO,CAAC;QAAE,OAAO,EAAE,SAAS,EAAE,CAAC;QAAC,KAAK,CAAC,EAAE,QAAQ,CAAA;KAAE,CAAC;IAsChD,WAAW,CACf,aAAa,EAAE,OAAO,CAAC,OAAO,EAC9B,EAAE,EAAE,OAAO,CAAC,OAAO,EACnB,IAAI,EAAE,GAAG,CAAC,GAAG,EACb,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,QAAQ,EAChB,aAAa,CAAC,EAAE,uBAAuB,EAAE,GACxC,OAAO,CAAC;QAAE,MAAM,EAAE,GAAG,CAAC,GAAG,CAAA;KAAE,CAAC;IAyBzB,KAAK,CACT,EAAE,EAAE,OAAO,CAAC,OAAO,EACnB,IAAI,EAAE,GAAG,CAAC,GAAG,EACb,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,QAAQ,EAChB,aAAa,CAAC,EAAE,uBAAuB,EAAE,GACxC,OAAO,CAAC;QAAE,MAAM,EAAE,GAAG,CAAC,GAAG,CAAA;KAAE,CAAC;IAyBzB,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IA2CnE,iBAAiB,CAAC,YAAY,EAAE,uBAAuB,GAAG,OAAO,CAAC,OAAO,CAAC;IAoKhF,OAAO,CAAC,uBAAuB;CAMhC"}
@@ -1,7 +1,7 @@
1
1
  import { Relayer as GenRelayer, FeeTokenType, ETHTxnStatus, } from './relayer.gen.js';
2
- import { Address, Hex, Bytes, AbiFunction } from 'ox';
2
+ import { Address, Hex, AbiFunction } from 'ox';
3
3
  import { Constants, Payload, Network } from '@0xsequence/wallet-primitives';
4
- import { decodePrecondition } from '../../preconditions/index.js';
4
+ import { decodePrecondition, } from '../../preconditions/index.js';
5
5
  import { erc20BalanceOf, erc20Allowance, erc721OwnerOf, erc721GetApproved, erc1155BalanceOf, erc1155IsApprovedForAll, } from '../standard/abi.js';
6
6
  import { createPublicClient, http } from 'viem';
7
7
  import * as chains from 'viem/chains';
@@ -30,12 +30,11 @@ const networkToChain = (network) => {
30
30
  },
31
31
  }
32
32
  : undefined,
33
- contracts: network.ensAddress
34
- ? {
35
- ensUniversalResolver: {
36
- address: network.ensAddress,
37
- },
38
- }
33
+ contracts: network.contracts
34
+ ? Object.entries(network.contracts).reduce((acc, [name, address]) => {
35
+ acc[name] = { address };
36
+ return acc;
37
+ }, {})
39
38
  : undefined,
40
39
  };
41
40
  };
@@ -46,7 +45,7 @@ export const getChain = (chainId) => {
46
45
  return networkToChain(sequenceNetwork);
47
46
  }
48
47
  // Fall back to viem's built-in chains
49
- const viemChain = Object.values(chains).find((c) => typeof c === 'object' && 'id' in c && c.id === chainId);
48
+ const viemChain = Object.values(chains).find((c) => typeof c === 'object' && c !== null && 'id' in c && c.id === chainId);
50
49
  if (viemChain) {
51
50
  return viemChain;
52
51
  }
@@ -103,14 +102,19 @@ export class RpcRelayer {
103
102
  return { isFeeRequired: false };
104
103
  }
105
104
  }
106
- async feeOptions(wallet, chainId, calls) {
105
+ async feeOptions(wallet, chainId, to, calls) {
106
+ // IMPORTANT:
107
+ // The relayer FeeOptions endpoint simulates `eth_call(to, data)`.
108
+ // wallet-webapp-v3 requests FeeOptions with `to = wallet` and `data = Payload.encode(calls, self=wallet)`.
109
+ // This works for undeployed wallets and avoids guest-module simulation pitfalls.
107
110
  const callsStruct = { type: 'call', space: 0n, nonce: 0n, calls: calls };
108
- const data = Payload.encode(callsStruct);
111
+ const feeOptionsTo = wallet;
112
+ const data = Payload.encode(callsStruct, wallet);
109
113
  try {
110
114
  const result = await this.client.feeOptions({
111
- wallet: wallet,
112
- to: wallet,
113
- data: Bytes.toHex(data),
115
+ wallet,
116
+ to: feeOptionsTo,
117
+ data: Hex.fromBytes(data),
114
118
  }, { ...(this.projectAccessKey ? { 'X-Access-Key': this.projectAccessKey } : undefined) });
115
119
  const quote = result.quote ? { _tag: 'FeeQuote', _quote: result.quote } : undefined;
116
120
  const options = result.options.map((option) => ({
@@ -165,7 +169,7 @@ export class RpcRelayer {
165
169
  }
166
170
  return { opHash: `0x${result.txnHash}` };
167
171
  }
168
- async status(opHash, chainId) {
172
+ async status(opHash, _chainId) {
169
173
  try {
170
174
  const cleanedOpHash = opHash.startsWith('0x') ? opHash.substring(2) : opHash;
171
175
  const result = await this.client.getMetaTxnReceipt({ metaTxID: cleanedOpHash });
@@ -214,7 +218,7 @@ export class RpcRelayer {
214
218
  case 'native-balance': {
215
219
  const native = decoded;
216
220
  try {
217
- const balance = await this.provider.getBalance({ address: native.address.toString() });
221
+ const balance = await this.provider.getBalance({ address: native.address });
218
222
  const minWei = native.min !== undefined ? BigInt(native.min) : undefined;
219
223
  const maxWei = native.max !== undefined ? BigInt(native.max) : undefined;
220
224
  if (minWei !== undefined && maxWei !== undefined) {
@@ -238,7 +242,7 @@ export class RpcRelayer {
238
242
  case 'erc20-balance': {
239
243
  const erc20 = decoded;
240
244
  try {
241
- const data = AbiFunction.encodeData(erc20BalanceOf, [erc20.address.toString()]);
245
+ const data = AbiFunction.encodeData(erc20BalanceOf, [erc20.address]);
242
246
  const result = await this.provider.call({
243
247
  to: erc20.token.toString(),
244
248
  data: data,
@@ -266,7 +270,7 @@ export class RpcRelayer {
266
270
  case 'erc20-approval': {
267
271
  const erc20 = decoded;
268
272
  try {
269
- const data = AbiFunction.encodeData(erc20Allowance, [erc20.address.toString(), erc20.operator.toString()]);
273
+ const data = AbiFunction.encodeData(erc20Allowance, [erc20.address, erc20.operator]);
270
274
  const result = await this.provider.call({
271
275
  to: erc20.token.toString(),
272
276
  data: data,
@@ -285,7 +289,7 @@ export class RpcRelayer {
285
289
  try {
286
290
  const data = AbiFunction.encodeData(erc721OwnerOf, [erc721.tokenId]);
287
291
  const result = await this.provider.call({
288
- to: erc721.token.toString(),
292
+ to: erc721.token,
289
293
  data: data,
290
294
  });
291
295
  const resultHex = result.toString();
@@ -319,7 +323,7 @@ export class RpcRelayer {
319
323
  case 'erc1155-balance': {
320
324
  const erc1155 = decoded;
321
325
  try {
322
- const data = AbiFunction.encodeData(erc1155BalanceOf, [erc1155.address.toString(), erc1155.tokenId]);
326
+ const data = AbiFunction.encodeData(erc1155BalanceOf, [erc1155.address, erc1155.tokenId]);
323
327
  const result = await this.provider.call({
324
328
  to: erc1155.token.toString(),
325
329
  data: data,
@@ -347,12 +351,9 @@ export class RpcRelayer {
347
351
  case 'erc1155-approval': {
348
352
  const erc1155 = decoded;
349
353
  try {
350
- const data = AbiFunction.encodeData(erc1155IsApprovedForAll, [
351
- erc1155.address.toString(),
352
- erc1155.operator.toString(),
353
- ]);
354
+ const data = AbiFunction.encodeData(erc1155IsApprovedForAll, [erc1155.address, erc1155.operator]);
354
355
  const result = await this.provider.call({
355
- to: erc1155.token.toString(),
356
+ to: erc1155.token,
356
357
  data: data,
357
358
  });
358
359
  return BigInt(result.toString()) === 1n;
@@ -4,7 +4,7 @@ import { Address, Hex } from 'ox';
4
4
  import { Payload } from '@0xsequence/wallet-primitives';
5
5
  import { FeeToken, TransactionPrecondition } from '../rpc-relayer/relayer.gen.js';
6
6
  export declare class EIP6963Relayer implements Relayer {
7
- readonly kind: 'relayer';
7
+ readonly kind = "relayer";
8
8
  readonly type = "eip6963";
9
9
  readonly id: string;
10
10
  readonly info: EIP6963ProviderInfo;
@@ -16,7 +16,7 @@ export declare class EIP6963Relayer implements Relayer {
16
16
  tokens?: FeeToken[];
17
17
  paymentAddress?: Address.Address;
18
18
  }>;
19
- feeOptions(wallet: Address.Address, chainId: number, calls: Payload.Call[]): Promise<{
19
+ feeOptions(wallet: Address.Address, chainId: number, to: Address.Address, calls: Payload.Call[]): Promise<{
20
20
  options: FeeOption[];
21
21
  quote?: FeeQuote;
22
22
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"eip6963.d.ts","sourceRoot":"","sources":["../../../src/relayer/standard/eip6963.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,MAAM,CAAA;AAE9E,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAC3E,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,IAAI,CAAA;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAA;AACvD,OAAO,EAAE,QAAQ,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAA;AAEjF,qBAAa,cAAe,YAAW,OAAO;IAC5C,SAAgB,IAAI,EAAE,SAAS,CAAY;IAC3C,SAAgB,IAAI,aAAY;IAChC,SAAgB,EAAE,EAAE,MAAM,CAAA;IAC1B,SAAgB,IAAI,EAAE,mBAAmB,CAAA;IACzC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAc;gBAE1B,MAAM,EAAE,qBAAqB;IAOzC,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAIvE,SAAS,IAAI,OAAO,CAAC;QAAE,aAAa,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC;QAAC,cAAc,CAAC,EAAE,OAAO,CAAC,OAAO,CAAA;KAAE,CAAC;IAIvG,UAAU,CACR,MAAM,EAAE,OAAO,CAAC,OAAO,EACvB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,OAAO,CAAC,IAAI,EAAE,GACpB,OAAO,CAAC;QAAE,OAAO,EAAE,SAAS,EAAE,CAAC;QAAC,KAAK,CAAC,EAAE,QAAQ,CAAA;KAAE,CAAC;IAIhD,KAAK,CAAC,EAAE,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,GAAG,CAAC,GAAG,CAAA;KAAE,CAAC;IAI5G,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAI5D,iBAAiB,CAAC,YAAY,EAAE,uBAAuB,GAAG,OAAO,CAAC,OAAO,CAAC;CAGjF;AAKD,wBAAgB,eAAe,yBAK9B;AAID,wBAAgB,WAAW,IAAI,cAAc,EAAE,CAW9C"}
1
+ {"version":3,"file":"eip6963.d.ts","sourceRoot":"","sources":["../../../src/relayer/standard/eip6963.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,MAAM,CAAA;AAE9E,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAC3E,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,IAAI,CAAA;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAA;AACvD,OAAO,EAAE,QAAQ,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAA;AAEjF,qBAAa,cAAe,YAAW,OAAO;IAC5C,SAAgB,IAAI,aAAY;IAChC,SAAgB,IAAI,aAAY;IAChC,SAAgB,EAAE,EAAE,MAAM,CAAA;IAC1B,SAAgB,IAAI,EAAE,mBAAmB,CAAA;IACzC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAc;gBAE1B,MAAM,EAAE,qBAAqB;IAOzC,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAIvE,SAAS,IAAI,OAAO,CAAC;QAAE,aAAa,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC;QAAC,cAAc,CAAC,EAAE,OAAO,CAAC,OAAO,CAAA;KAAE,CAAC;IAIvG,UAAU,CACR,MAAM,EAAE,OAAO,CAAC,OAAO,EACvB,OAAO,EAAE,MAAM,EACf,EAAE,EAAE,OAAO,CAAC,OAAO,EACnB,KAAK,EAAE,OAAO,CAAC,IAAI,EAAE,GACpB,OAAO,CAAC;QAAE,OAAO,EAAE,SAAS,EAAE,CAAC;QAAC,KAAK,CAAC,EAAE,QAAQ,CAAA;KAAE,CAAC;IAIhD,KAAK,CAAC,EAAE,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,GAAG,CAAC,GAAG,CAAA;KAAE,CAAC;IAI5G,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAI5D,iBAAiB,CAAC,YAAY,EAAE,uBAAuB,GAAG,OAAO,CAAC,OAAO,CAAC;CAGjF;AAKD,wBAAgB,eAAe,yBAK9B;AAID,wBAAgB,WAAW,IAAI,cAAc,EAAE,CAW9C"}
@@ -17,8 +17,8 @@ export class EIP6963Relayer {
17
17
  feeTokens() {
18
18
  return this.relayer.feeTokens();
19
19
  }
20
- feeOptions(wallet, chainId, calls) {
21
- return this.relayer.feeOptions(wallet, chainId, calls);
20
+ feeOptions(wallet, chainId, to, calls) {
21
+ return this.relayer.feeOptions(wallet, chainId, to, calls);
22
22
  }
23
23
  async relay(to, data, chainId, _) {
24
24
  return this.relayer.relay(to, data, chainId);
@@ -38,7 +38,7 @@ export function getEIP6963Store() {
38
38
  }
39
39
  return store;
40
40
  }
41
- let relayers = new Map();
41
+ const relayers = new Map();
42
42
  export function getRelayers() {
43
43
  const store = getEIP6963Store();
44
44
  const providers = store.getProviders();
@@ -18,7 +18,7 @@ export interface GenericProvider {
18
18
  }
19
19
  export declare class LocalRelayer implements Relayer {
20
20
  readonly provider: GenericProvider;
21
- readonly kind: 'relayer';
21
+ readonly kind = "relayer";
22
22
  readonly type = "local";
23
23
  readonly id = "local";
24
24
  constructor(provider: GenericProvider);
@@ -30,11 +30,10 @@ export declare class LocalRelayer implements Relayer {
30
30
  tokens?: FeeToken[];
31
31
  paymentAddress?: Address.Address;
32
32
  }>;
33
- feeOptions(wallet: Address.Address, chainId: number, calls: Payload.Call[]): Promise<{
33
+ feeOptions(_wallet: Address.Address, _chainId: number, _to: Address.Address, _calls: Payload.Call[]): Promise<{
34
34
  options: FeeOption[];
35
35
  quote?: FeeQuote;
36
36
  }>;
37
- private decodeCalls;
38
37
  relay(to: Address.Address, data: Hex.Hex, chainId: number, quote?: FeeQuote, preconditions?: TransactionPrecondition[], checkInterval?: number): Promise<{
39
38
  opHash: Hex.Hex;
40
39
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"local.d.ts","sourceRoot":"","sources":["../../../src/relayer/standard/local.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"local.d.ts","sourceRoot":"","sources":["../../../src/relayer/standard/local.ts"],"names":[],"mappings":"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"}