@0xsequence/relayer 2.0.19 → 2.0.20
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/0xsequence-relayer.cjs.d.ts +1 -1
- package/dist/0xsequence-relayer.cjs.dev.js +22 -18
- package/dist/0xsequence-relayer.cjs.prod.js +22 -18
- package/dist/0xsequence-relayer.esm.js +22 -18
- package/dist/declarations/src/rpc-relayer/relayer.gen.d.ts +30 -30
- package/package.json +9 -9
- package/src/local-relayer.ts +13 -7
- package/src/provider-relayer.ts +10 -1
- package/src/rpc-relayer/index.ts +11 -7
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * from "./declarations/src/index";
|
|
1
|
+
export * from "./declarations/src/index.js";
|
|
2
2
|
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMHhzZXF1ZW5jZS1yZWxheWVyLmNqcy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi9kZWNsYXJhdGlvbnMvc3JjL2luZGV4LmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEifQ==
|
|
@@ -2,24 +2,19 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var ethers = require('ethers');
|
|
6
5
|
var utils = require('@0xsequence/utils');
|
|
6
|
+
var ethers = require('ethers');
|
|
7
7
|
var abi = require('@0xsequence/abi');
|
|
8
8
|
var core = require('@0xsequence/core');
|
|
9
9
|
|
|
10
10
|
function _extends() {
|
|
11
|
-
_extends = Object.assign ? Object.assign.bind() : function (
|
|
12
|
-
for (var
|
|
13
|
-
var
|
|
14
|
-
for (var
|
|
15
|
-
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
|
16
|
-
target[key] = source[key];
|
|
17
|
-
}
|
|
18
|
-
}
|
|
11
|
+
return _extends = Object.assign ? Object.assign.bind() : function (n) {
|
|
12
|
+
for (var e = 1; e < arguments.length; e++) {
|
|
13
|
+
var t = arguments[e];
|
|
14
|
+
for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);
|
|
19
15
|
}
|
|
20
|
-
return
|
|
21
|
-
};
|
|
22
|
-
return _extends.apply(this, arguments);
|
|
16
|
+
return n;
|
|
17
|
+
}, _extends.apply(null, arguments);
|
|
23
18
|
}
|
|
24
19
|
|
|
25
20
|
const DEFAULT_GAS_LIMIT = 800000n;
|
|
@@ -29,7 +24,7 @@ const ProviderRelayerDefaults = {
|
|
|
29
24
|
fromBlockLog: -1024
|
|
30
25
|
};
|
|
31
26
|
function isProviderRelayerOptions(obj) {
|
|
32
|
-
return typeof obj === 'object' && obj.provider
|
|
27
|
+
return typeof obj === 'object' && isAbstractProvider$1(obj.provider);
|
|
33
28
|
}
|
|
34
29
|
class ProviderRelayer {
|
|
35
30
|
constructor(options) {
|
|
@@ -183,20 +178,23 @@ class ProviderRelayer {
|
|
|
183
178
|
}
|
|
184
179
|
}
|
|
185
180
|
}
|
|
181
|
+
function isAbstractProvider$1(provider) {
|
|
182
|
+
return provider && typeof provider === 'object' && typeof provider.getNetwork === 'function' && typeof provider.getBlockNumber === 'function';
|
|
183
|
+
}
|
|
186
184
|
|
|
187
185
|
function isLocalRelayerOptions(obj) {
|
|
188
|
-
return typeof obj === 'object' && obj.signer
|
|
186
|
+
return typeof obj === 'object' && isAbstractSigner(obj.signer);
|
|
189
187
|
}
|
|
190
188
|
class LocalRelayer extends ProviderRelayer {
|
|
191
189
|
constructor(options) {
|
|
192
|
-
super(options
|
|
190
|
+
super(isAbstractSigner(options) ? {
|
|
193
191
|
provider: options.provider
|
|
194
192
|
} : _extends({}, options, {
|
|
195
193
|
provider: options.signer.provider
|
|
196
194
|
}));
|
|
197
195
|
this.signer = void 0;
|
|
198
196
|
this.txnOptions = void 0;
|
|
199
|
-
this.signer = options
|
|
197
|
+
this.signer = isAbstractSigner(options) ? options : options.signer;
|
|
200
198
|
if (!this.signer.provider) throw new Error('Signer must have a provider');
|
|
201
199
|
}
|
|
202
200
|
async getFeeOptions(_address, ..._transactions) {
|
|
@@ -244,6 +242,9 @@ class LocalRelayer extends ProviderRelayer {
|
|
|
244
242
|
}
|
|
245
243
|
}
|
|
246
244
|
}
|
|
245
|
+
function isAbstractSigner(signer) {
|
|
246
|
+
return signer && typeof signer === 'object' && typeof signer.provider === 'object' && typeof signer.getAddress === 'function' && typeof signer.connect === 'function';
|
|
247
|
+
}
|
|
247
248
|
|
|
248
249
|
/* eslint-disable */
|
|
249
250
|
// sequence-relayer v0.4.1 1e27d0fd295aa5897878939595ef0c6adc54b1a3
|
|
@@ -974,7 +975,7 @@ var relayer_gen = /*#__PURE__*/Object.freeze({
|
|
|
974
975
|
const FINAL_STATUSES = [ETHTxnStatus.DROPPED, ETHTxnStatus.SUCCEEDED, ETHTxnStatus.PARTIALLY_FAILED, ETHTxnStatus.FAILED];
|
|
975
976
|
const FAILED_STATUSES = [ETHTxnStatus.DROPPED, ETHTxnStatus.PARTIALLY_FAILED, ETHTxnStatus.FAILED];
|
|
976
977
|
function isRpcRelayerOptions(obj) {
|
|
977
|
-
return obj.url !== undefined && typeof obj.url === 'string' && obj.provider !== undefined && obj.provider
|
|
978
|
+
return obj.url !== undefined && typeof obj.url === 'string' && obj.provider !== undefined && isAbstractProvider(obj.provider);
|
|
978
979
|
}
|
|
979
980
|
const fetch = globalThis.fetch;
|
|
980
981
|
|
|
@@ -1004,7 +1005,7 @@ class RpcRelayer {
|
|
|
1004
1005
|
return fetch(input, init);
|
|
1005
1006
|
};
|
|
1006
1007
|
this.service = new Relayer(options.url, this._fetch);
|
|
1007
|
-
if (options.provider
|
|
1008
|
+
if (isAbstractProvider(options.provider)) {
|
|
1008
1009
|
this.provider = options.provider;
|
|
1009
1010
|
} else {
|
|
1010
1011
|
const {
|
|
@@ -1223,6 +1224,9 @@ class MetaTransactionResponseException {
|
|
|
1223
1224
|
this.receipt = receipt;
|
|
1224
1225
|
}
|
|
1225
1226
|
}
|
|
1227
|
+
function isAbstractProvider(provider) {
|
|
1228
|
+
return provider && typeof provider === 'object' && typeof provider.getNetwork === 'function' && typeof provider.getBlockNumber === 'function';
|
|
1229
|
+
}
|
|
1226
1230
|
|
|
1227
1231
|
// A fee quote is simply an opaque value that can be obtained via Relayer.getFeeOptions(), and
|
|
1228
1232
|
// returned back to the same relayer via Relayer.relay(). Fee quotes should be treated as an
|
|
@@ -2,24 +2,19 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var ethers = require('ethers');
|
|
6
5
|
var utils = require('@0xsequence/utils');
|
|
6
|
+
var ethers = require('ethers');
|
|
7
7
|
var abi = require('@0xsequence/abi');
|
|
8
8
|
var core = require('@0xsequence/core');
|
|
9
9
|
|
|
10
10
|
function _extends() {
|
|
11
|
-
_extends = Object.assign ? Object.assign.bind() : function (
|
|
12
|
-
for (var
|
|
13
|
-
var
|
|
14
|
-
for (var
|
|
15
|
-
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
|
16
|
-
target[key] = source[key];
|
|
17
|
-
}
|
|
18
|
-
}
|
|
11
|
+
return _extends = Object.assign ? Object.assign.bind() : function (n) {
|
|
12
|
+
for (var e = 1; e < arguments.length; e++) {
|
|
13
|
+
var t = arguments[e];
|
|
14
|
+
for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);
|
|
19
15
|
}
|
|
20
|
-
return
|
|
21
|
-
};
|
|
22
|
-
return _extends.apply(this, arguments);
|
|
16
|
+
return n;
|
|
17
|
+
}, _extends.apply(null, arguments);
|
|
23
18
|
}
|
|
24
19
|
|
|
25
20
|
const DEFAULT_GAS_LIMIT = 800000n;
|
|
@@ -29,7 +24,7 @@ const ProviderRelayerDefaults = {
|
|
|
29
24
|
fromBlockLog: -1024
|
|
30
25
|
};
|
|
31
26
|
function isProviderRelayerOptions(obj) {
|
|
32
|
-
return typeof obj === 'object' && obj.provider
|
|
27
|
+
return typeof obj === 'object' && isAbstractProvider$1(obj.provider);
|
|
33
28
|
}
|
|
34
29
|
class ProviderRelayer {
|
|
35
30
|
constructor(options) {
|
|
@@ -183,20 +178,23 @@ class ProviderRelayer {
|
|
|
183
178
|
}
|
|
184
179
|
}
|
|
185
180
|
}
|
|
181
|
+
function isAbstractProvider$1(provider) {
|
|
182
|
+
return provider && typeof provider === 'object' && typeof provider.getNetwork === 'function' && typeof provider.getBlockNumber === 'function';
|
|
183
|
+
}
|
|
186
184
|
|
|
187
185
|
function isLocalRelayerOptions(obj) {
|
|
188
|
-
return typeof obj === 'object' && obj.signer
|
|
186
|
+
return typeof obj === 'object' && isAbstractSigner(obj.signer);
|
|
189
187
|
}
|
|
190
188
|
class LocalRelayer extends ProviderRelayer {
|
|
191
189
|
constructor(options) {
|
|
192
|
-
super(options
|
|
190
|
+
super(isAbstractSigner(options) ? {
|
|
193
191
|
provider: options.provider
|
|
194
192
|
} : _extends({}, options, {
|
|
195
193
|
provider: options.signer.provider
|
|
196
194
|
}));
|
|
197
195
|
this.signer = void 0;
|
|
198
196
|
this.txnOptions = void 0;
|
|
199
|
-
this.signer = options
|
|
197
|
+
this.signer = isAbstractSigner(options) ? options : options.signer;
|
|
200
198
|
if (!this.signer.provider) throw new Error('Signer must have a provider');
|
|
201
199
|
}
|
|
202
200
|
async getFeeOptions(_address, ..._transactions) {
|
|
@@ -244,6 +242,9 @@ class LocalRelayer extends ProviderRelayer {
|
|
|
244
242
|
}
|
|
245
243
|
}
|
|
246
244
|
}
|
|
245
|
+
function isAbstractSigner(signer) {
|
|
246
|
+
return signer && typeof signer === 'object' && typeof signer.provider === 'object' && typeof signer.getAddress === 'function' && typeof signer.connect === 'function';
|
|
247
|
+
}
|
|
247
248
|
|
|
248
249
|
/* eslint-disable */
|
|
249
250
|
// sequence-relayer v0.4.1 1e27d0fd295aa5897878939595ef0c6adc54b1a3
|
|
@@ -974,7 +975,7 @@ var relayer_gen = /*#__PURE__*/Object.freeze({
|
|
|
974
975
|
const FINAL_STATUSES = [ETHTxnStatus.DROPPED, ETHTxnStatus.SUCCEEDED, ETHTxnStatus.PARTIALLY_FAILED, ETHTxnStatus.FAILED];
|
|
975
976
|
const FAILED_STATUSES = [ETHTxnStatus.DROPPED, ETHTxnStatus.PARTIALLY_FAILED, ETHTxnStatus.FAILED];
|
|
976
977
|
function isRpcRelayerOptions(obj) {
|
|
977
|
-
return obj.url !== undefined && typeof obj.url === 'string' && obj.provider !== undefined && obj.provider
|
|
978
|
+
return obj.url !== undefined && typeof obj.url === 'string' && obj.provider !== undefined && isAbstractProvider(obj.provider);
|
|
978
979
|
}
|
|
979
980
|
const fetch = globalThis.fetch;
|
|
980
981
|
|
|
@@ -1004,7 +1005,7 @@ class RpcRelayer {
|
|
|
1004
1005
|
return fetch(input, init);
|
|
1005
1006
|
};
|
|
1006
1007
|
this.service = new Relayer(options.url, this._fetch);
|
|
1007
|
-
if (options.provider
|
|
1008
|
+
if (isAbstractProvider(options.provider)) {
|
|
1008
1009
|
this.provider = options.provider;
|
|
1009
1010
|
} else {
|
|
1010
1011
|
const {
|
|
@@ -1223,6 +1224,9 @@ class MetaTransactionResponseException {
|
|
|
1223
1224
|
this.receipt = receipt;
|
|
1224
1225
|
}
|
|
1225
1226
|
}
|
|
1227
|
+
function isAbstractProvider(provider) {
|
|
1228
|
+
return provider && typeof provider === 'object' && typeof provider.getNetwork === 'function' && typeof provider.getBlockNumber === 'function';
|
|
1229
|
+
}
|
|
1226
1230
|
|
|
1227
1231
|
// A fee quote is simply an opaque value that can be obtained via Relayer.getFeeOptions(), and
|
|
1228
1232
|
// returned back to the same relayer via Relayer.relay(). Fee quotes should be treated as an
|
|
@@ -1,21 +1,16 @@
|
|
|
1
|
-
import { ethers } from 'ethers';
|
|
2
1
|
import { logger, getFetchRequest, bigintReplacer, toHexString } from '@0xsequence/utils';
|
|
2
|
+
import { ethers } from 'ethers';
|
|
3
3
|
import { walletContracts } from '@0xsequence/abi';
|
|
4
4
|
import { commons } from '@0xsequence/core';
|
|
5
5
|
|
|
6
6
|
function _extends() {
|
|
7
|
-
_extends = Object.assign ? Object.assign.bind() : function (
|
|
8
|
-
for (var
|
|
9
|
-
var
|
|
10
|
-
for (var
|
|
11
|
-
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
|
12
|
-
target[key] = source[key];
|
|
13
|
-
}
|
|
14
|
-
}
|
|
7
|
+
return _extends = Object.assign ? Object.assign.bind() : function (n) {
|
|
8
|
+
for (var e = 1; e < arguments.length; e++) {
|
|
9
|
+
var t = arguments[e];
|
|
10
|
+
for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);
|
|
15
11
|
}
|
|
16
|
-
return
|
|
17
|
-
};
|
|
18
|
-
return _extends.apply(this, arguments);
|
|
12
|
+
return n;
|
|
13
|
+
}, _extends.apply(null, arguments);
|
|
19
14
|
}
|
|
20
15
|
|
|
21
16
|
const DEFAULT_GAS_LIMIT = 800000n;
|
|
@@ -25,7 +20,7 @@ const ProviderRelayerDefaults = {
|
|
|
25
20
|
fromBlockLog: -1024
|
|
26
21
|
};
|
|
27
22
|
function isProviderRelayerOptions(obj) {
|
|
28
|
-
return typeof obj === 'object' && obj.provider
|
|
23
|
+
return typeof obj === 'object' && isAbstractProvider$1(obj.provider);
|
|
29
24
|
}
|
|
30
25
|
class ProviderRelayer {
|
|
31
26
|
constructor(options) {
|
|
@@ -179,20 +174,23 @@ class ProviderRelayer {
|
|
|
179
174
|
}
|
|
180
175
|
}
|
|
181
176
|
}
|
|
177
|
+
function isAbstractProvider$1(provider) {
|
|
178
|
+
return provider && typeof provider === 'object' && typeof provider.getNetwork === 'function' && typeof provider.getBlockNumber === 'function';
|
|
179
|
+
}
|
|
182
180
|
|
|
183
181
|
function isLocalRelayerOptions(obj) {
|
|
184
|
-
return typeof obj === 'object' && obj.signer
|
|
182
|
+
return typeof obj === 'object' && isAbstractSigner(obj.signer);
|
|
185
183
|
}
|
|
186
184
|
class LocalRelayer extends ProviderRelayer {
|
|
187
185
|
constructor(options) {
|
|
188
|
-
super(options
|
|
186
|
+
super(isAbstractSigner(options) ? {
|
|
189
187
|
provider: options.provider
|
|
190
188
|
} : _extends({}, options, {
|
|
191
189
|
provider: options.signer.provider
|
|
192
190
|
}));
|
|
193
191
|
this.signer = void 0;
|
|
194
192
|
this.txnOptions = void 0;
|
|
195
|
-
this.signer = options
|
|
193
|
+
this.signer = isAbstractSigner(options) ? options : options.signer;
|
|
196
194
|
if (!this.signer.provider) throw new Error('Signer must have a provider');
|
|
197
195
|
}
|
|
198
196
|
async getFeeOptions(_address, ..._transactions) {
|
|
@@ -240,6 +238,9 @@ class LocalRelayer extends ProviderRelayer {
|
|
|
240
238
|
}
|
|
241
239
|
}
|
|
242
240
|
}
|
|
241
|
+
function isAbstractSigner(signer) {
|
|
242
|
+
return signer && typeof signer === 'object' && typeof signer.provider === 'object' && typeof signer.getAddress === 'function' && typeof signer.connect === 'function';
|
|
243
|
+
}
|
|
243
244
|
|
|
244
245
|
/* eslint-disable */
|
|
245
246
|
// sequence-relayer v0.4.1 1e27d0fd295aa5897878939595ef0c6adc54b1a3
|
|
@@ -970,7 +971,7 @@ var relayer_gen = /*#__PURE__*/Object.freeze({
|
|
|
970
971
|
const FINAL_STATUSES = [ETHTxnStatus.DROPPED, ETHTxnStatus.SUCCEEDED, ETHTxnStatus.PARTIALLY_FAILED, ETHTxnStatus.FAILED];
|
|
971
972
|
const FAILED_STATUSES = [ETHTxnStatus.DROPPED, ETHTxnStatus.PARTIALLY_FAILED, ETHTxnStatus.FAILED];
|
|
972
973
|
function isRpcRelayerOptions(obj) {
|
|
973
|
-
return obj.url !== undefined && typeof obj.url === 'string' && obj.provider !== undefined && obj.provider
|
|
974
|
+
return obj.url !== undefined && typeof obj.url === 'string' && obj.provider !== undefined && isAbstractProvider(obj.provider);
|
|
974
975
|
}
|
|
975
976
|
const fetch = globalThis.fetch;
|
|
976
977
|
|
|
@@ -1000,7 +1001,7 @@ class RpcRelayer {
|
|
|
1000
1001
|
return fetch(input, init);
|
|
1001
1002
|
};
|
|
1002
1003
|
this.service = new Relayer(options.url, this._fetch);
|
|
1003
|
-
if (options.provider
|
|
1004
|
+
if (isAbstractProvider(options.provider)) {
|
|
1004
1005
|
this.provider = options.provider;
|
|
1005
1006
|
} else {
|
|
1006
1007
|
const {
|
|
@@ -1219,6 +1220,9 @@ class MetaTransactionResponseException {
|
|
|
1219
1220
|
this.receipt = receipt;
|
|
1220
1221
|
}
|
|
1221
1222
|
}
|
|
1223
|
+
function isAbstractProvider(provider) {
|
|
1224
|
+
return provider && typeof provider === 'object' && typeof provider.getNetwork === 'function' && typeof provider.getBlockNumber === 'function';
|
|
1225
|
+
}
|
|
1222
1226
|
|
|
1223
1227
|
// A fee quote is simply an opaque value that can be obtained via Relayer.getFeeOptions(), and
|
|
1224
1228
|
// returned back to the same relayer via Relayer.relay(). Fee quotes should be treated as an
|
|
@@ -492,36 +492,36 @@ export declare class Relayer implements Relayer {
|
|
|
492
492
|
protected path: string;
|
|
493
493
|
constructor(hostname: string, fetch: Fetch);
|
|
494
494
|
private url;
|
|
495
|
-
ping: (headers?: object
|
|
496
|
-
version: (headers?: object
|
|
497
|
-
runtimeStatus: (headers?: object
|
|
498
|
-
getSequenceContext: (headers?: object
|
|
499
|
-
getChainID: (headers?: object
|
|
500
|
-
sendMetaTxn: (args: SendMetaTxnArgs, headers?: object
|
|
501
|
-
getMetaTxnNonce: (args: GetMetaTxnNonceArgs, headers?: object
|
|
502
|
-
getMetaTxnReceipt: (args: GetMetaTxnReceiptArgs, headers?: object
|
|
503
|
-
simulate: (args: SimulateArgs, headers?: object
|
|
504
|
-
updateMetaTxnGasLimits: (args: UpdateMetaTxnGasLimitsArgs, headers?: object
|
|
505
|
-
feeTokens: (headers?: object
|
|
506
|
-
feeOptions: (args: FeeOptionsArgs, headers?: object
|
|
507
|
-
getMetaTxnNetworkFeeOptions: (args: GetMetaTxnNetworkFeeOptionsArgs, headers?: object
|
|
508
|
-
getMetaTransactions: (args: GetMetaTransactionsArgs, headers?: object
|
|
509
|
-
sentTransactions: (args: SentTransactionsArgs, headers?: object
|
|
510
|
-
pendingTransactions: (args: PendingTransactionsArgs, headers?: object
|
|
511
|
-
getGasTank: (args: GetGasTankArgs, headers?: object
|
|
512
|
-
addGasTank: (args: AddGasTankArgs, headers?: object
|
|
513
|
-
updateGasTank: (args: UpdateGasTankArgs, headers?: object
|
|
514
|
-
getGasSponsor: (args: GetGasSponsorArgs, headers?: object
|
|
515
|
-
addressGasSponsors: (args: AddressGasSponsorsArgs, headers?: object
|
|
516
|
-
listGasSponsors: (args: ListGasSponsorsArgs, headers?: object
|
|
517
|
-
addGasSponsor: (args: AddGasSponsorArgs, headers?: object
|
|
518
|
-
updateGasSponsor: (args: UpdateGasSponsorArgs, headers?: object
|
|
519
|
-
removeGasSponsor: (args: RemoveGasSponsorArgs, headers?: object
|
|
520
|
-
reportGasSponsorUsage: (args: ReportGasSponsorUsageArgs, headers?: object
|
|
521
|
-
nextGasTankBalanceAdjustmentNonce: (args: NextGasTankBalanceAdjustmentNonceArgs, headers?: object
|
|
522
|
-
adjustGasTankBalance: (args: AdjustGasTankBalanceArgs, headers?: object
|
|
523
|
-
getGasTankBalanceAdjustment: (args: GetGasTankBalanceAdjustmentArgs, headers?: object
|
|
524
|
-
listGasTankBalanceAdjustments: (args: ListGasTankBalanceAdjustmentsArgs, headers?: object
|
|
495
|
+
ping: (headers?: object, signal?: AbortSignal) => Promise<PingReturn>;
|
|
496
|
+
version: (headers?: object, signal?: AbortSignal) => Promise<VersionReturn>;
|
|
497
|
+
runtimeStatus: (headers?: object, signal?: AbortSignal) => Promise<RuntimeStatusReturn>;
|
|
498
|
+
getSequenceContext: (headers?: object, signal?: AbortSignal) => Promise<GetSequenceContextReturn>;
|
|
499
|
+
getChainID: (headers?: object, signal?: AbortSignal) => Promise<GetChainIDReturn>;
|
|
500
|
+
sendMetaTxn: (args: SendMetaTxnArgs, headers?: object, signal?: AbortSignal) => Promise<SendMetaTxnReturn>;
|
|
501
|
+
getMetaTxnNonce: (args: GetMetaTxnNonceArgs, headers?: object, signal?: AbortSignal) => Promise<GetMetaTxnNonceReturn>;
|
|
502
|
+
getMetaTxnReceipt: (args: GetMetaTxnReceiptArgs, headers?: object, signal?: AbortSignal) => Promise<GetMetaTxnReceiptReturn>;
|
|
503
|
+
simulate: (args: SimulateArgs, headers?: object, signal?: AbortSignal) => Promise<SimulateReturn>;
|
|
504
|
+
updateMetaTxnGasLimits: (args: UpdateMetaTxnGasLimitsArgs, headers?: object, signal?: AbortSignal) => Promise<UpdateMetaTxnGasLimitsReturn>;
|
|
505
|
+
feeTokens: (headers?: object, signal?: AbortSignal) => Promise<FeeTokensReturn>;
|
|
506
|
+
feeOptions: (args: FeeOptionsArgs, headers?: object, signal?: AbortSignal) => Promise<FeeOptionsReturn>;
|
|
507
|
+
getMetaTxnNetworkFeeOptions: (args: GetMetaTxnNetworkFeeOptionsArgs, headers?: object, signal?: AbortSignal) => Promise<GetMetaTxnNetworkFeeOptionsReturn>;
|
|
508
|
+
getMetaTransactions: (args: GetMetaTransactionsArgs, headers?: object, signal?: AbortSignal) => Promise<GetMetaTransactionsReturn>;
|
|
509
|
+
sentTransactions: (args: SentTransactionsArgs, headers?: object, signal?: AbortSignal) => Promise<SentTransactionsReturn>;
|
|
510
|
+
pendingTransactions: (args: PendingTransactionsArgs, headers?: object, signal?: AbortSignal) => Promise<PendingTransactionsReturn>;
|
|
511
|
+
getGasTank: (args: GetGasTankArgs, headers?: object, signal?: AbortSignal) => Promise<GetGasTankReturn>;
|
|
512
|
+
addGasTank: (args: AddGasTankArgs, headers?: object, signal?: AbortSignal) => Promise<AddGasTankReturn>;
|
|
513
|
+
updateGasTank: (args: UpdateGasTankArgs, headers?: object, signal?: AbortSignal) => Promise<UpdateGasTankReturn>;
|
|
514
|
+
getGasSponsor: (args: GetGasSponsorArgs, headers?: object, signal?: AbortSignal) => Promise<GetGasSponsorReturn>;
|
|
515
|
+
addressGasSponsors: (args: AddressGasSponsorsArgs, headers?: object, signal?: AbortSignal) => Promise<AddressGasSponsorsReturn>;
|
|
516
|
+
listGasSponsors: (args: ListGasSponsorsArgs, headers?: object, signal?: AbortSignal) => Promise<ListGasSponsorsReturn>;
|
|
517
|
+
addGasSponsor: (args: AddGasSponsorArgs, headers?: object, signal?: AbortSignal) => Promise<AddGasSponsorReturn>;
|
|
518
|
+
updateGasSponsor: (args: UpdateGasSponsorArgs, headers?: object, signal?: AbortSignal) => Promise<UpdateGasSponsorReturn>;
|
|
519
|
+
removeGasSponsor: (args: RemoveGasSponsorArgs, headers?: object, signal?: AbortSignal) => Promise<RemoveGasSponsorReturn>;
|
|
520
|
+
reportGasSponsorUsage: (args: ReportGasSponsorUsageArgs, headers?: object, signal?: AbortSignal) => Promise<ReportGasSponsorUsageReturn>;
|
|
521
|
+
nextGasTankBalanceAdjustmentNonce: (args: NextGasTankBalanceAdjustmentNonceArgs, headers?: object, signal?: AbortSignal) => Promise<NextGasTankBalanceAdjustmentNonceReturn>;
|
|
522
|
+
adjustGasTankBalance: (args: AdjustGasTankBalanceArgs, headers?: object, signal?: AbortSignal) => Promise<AdjustGasTankBalanceReturn>;
|
|
523
|
+
getGasTankBalanceAdjustment: (args: GetGasTankBalanceAdjustmentArgs, headers?: object, signal?: AbortSignal) => Promise<GetGasTankBalanceAdjustmentReturn>;
|
|
524
|
+
listGasTankBalanceAdjustments: (args: ListGasTankBalanceAdjustmentsArgs, headers?: object, signal?: AbortSignal) => Promise<ListGasTankBalanceAdjustmentsReturn>;
|
|
525
525
|
}
|
|
526
526
|
export declare class WebrpcError extends Error {
|
|
527
527
|
name: string;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@0xsequence/relayer",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.20",
|
|
4
4
|
"description": "relayer sub-package for Sequence",
|
|
5
5
|
"repository": "https://github.com/0xsequence/sequence.js/tree/master/packages/relayer",
|
|
6
6
|
"source": "src/index.ts",
|
|
@@ -8,19 +8,19 @@
|
|
|
8
8
|
"module": "dist/0xsequence-relayer.esm.js",
|
|
9
9
|
"author": "Horizon Blockchain Games",
|
|
10
10
|
"license": "Apache-2.0",
|
|
11
|
-
"dependencies": {
|
|
12
|
-
"@0xsequence/abi": "2.0.19",
|
|
13
|
-
"@0xsequence/utils": "2.0.19",
|
|
14
|
-
"@0xsequence/core": "2.0.19"
|
|
15
|
-
},
|
|
16
11
|
"peerDependencies": {
|
|
17
12
|
"ethers": ">=6"
|
|
18
13
|
},
|
|
14
|
+
"dependencies": {
|
|
15
|
+
"@0xsequence/abi": "2.0.20",
|
|
16
|
+
"@0xsequence/core": "2.0.20",
|
|
17
|
+
"@0xsequence/utils": "2.0.20"
|
|
18
|
+
},
|
|
19
19
|
"devDependencies": {
|
|
20
20
|
"@0xsequence/wallet-contracts": "^3.0.1",
|
|
21
|
-
"ethers": "
|
|
22
|
-
"@0xsequence/signhub": "2.0.
|
|
23
|
-
"@0xsequence/tests": "2.0.
|
|
21
|
+
"ethers": "6.13.4",
|
|
22
|
+
"@0xsequence/signhub": "2.0.20",
|
|
23
|
+
"@0xsequence/tests": "2.0.20"
|
|
24
24
|
},
|
|
25
25
|
"files": [
|
|
26
26
|
"src",
|
package/src/local-relayer.ts
CHANGED
|
@@ -9,7 +9,7 @@ export type LocalRelayerOptions = Omit<ProviderRelayerOptions, 'provider'> & {
|
|
|
9
9
|
}
|
|
10
10
|
|
|
11
11
|
export function isLocalRelayerOptions(obj: any): obj is LocalRelayerOptions {
|
|
12
|
-
return typeof obj === 'object' && obj.signer
|
|
12
|
+
return typeof obj === 'object' && isAbstractSigner(obj.signer)
|
|
13
13
|
}
|
|
14
14
|
|
|
15
15
|
export class LocalRelayer extends ProviderRelayer implements Relayer {
|
|
@@ -17,12 +17,8 @@ export class LocalRelayer extends ProviderRelayer implements Relayer {
|
|
|
17
17
|
private txnOptions: ethers.TransactionRequest
|
|
18
18
|
|
|
19
19
|
constructor(options: LocalRelayerOptions | ethers.AbstractSigner) {
|
|
20
|
-
super(
|
|
21
|
-
|
|
22
|
-
? { provider: options.provider! }
|
|
23
|
-
: { ...options, provider: options.signer.provider! }
|
|
24
|
-
)
|
|
25
|
-
this.signer = options instanceof ethers.AbstractSigner ? options : options.signer
|
|
20
|
+
super(isAbstractSigner(options) ? { provider: options.provider! } : { ...options, provider: options.signer.provider! })
|
|
21
|
+
this.signer = isAbstractSigner(options) ? options : options.signer
|
|
26
22
|
if (!this.signer.provider) throw new Error('Signer must have a provider')
|
|
27
23
|
}
|
|
28
24
|
|
|
@@ -81,3 +77,13 @@ export class LocalRelayer extends ProviderRelayer implements Relayer {
|
|
|
81
77
|
}
|
|
82
78
|
}
|
|
83
79
|
}
|
|
80
|
+
|
|
81
|
+
function isAbstractSigner(signer: any): signer is ethers.AbstractSigner {
|
|
82
|
+
return (
|
|
83
|
+
signer &&
|
|
84
|
+
typeof signer === 'object' &&
|
|
85
|
+
typeof signer.provider === 'object' &&
|
|
86
|
+
typeof signer.getAddress === 'function' &&
|
|
87
|
+
typeof signer.connect === 'function'
|
|
88
|
+
)
|
|
89
|
+
}
|
package/src/provider-relayer.ts
CHANGED
|
@@ -20,7 +20,7 @@ export const ProviderRelayerDefaults: Required<Optionals<ProviderRelayerOptions>
|
|
|
20
20
|
}
|
|
21
21
|
|
|
22
22
|
export function isProviderRelayerOptions(obj: any): obj is ProviderRelayerOptions {
|
|
23
|
-
return typeof obj === 'object' && obj.provider
|
|
23
|
+
return typeof obj === 'object' && isAbstractProvider(obj.provider)
|
|
24
24
|
}
|
|
25
25
|
|
|
26
26
|
export abstract class ProviderRelayer implements Relayer {
|
|
@@ -249,3 +249,12 @@ export abstract class ProviderRelayer implements Relayer {
|
|
|
249
249
|
}
|
|
250
250
|
}
|
|
251
251
|
}
|
|
252
|
+
|
|
253
|
+
function isAbstractProvider(provider: any): provider is ethers.AbstractProvider {
|
|
254
|
+
return (
|
|
255
|
+
provider &&
|
|
256
|
+
typeof provider === 'object' &&
|
|
257
|
+
typeof provider.getNetwork === 'function' &&
|
|
258
|
+
typeof provider.getBlockNumber === 'function'
|
|
259
|
+
)
|
|
260
|
+
}
|
package/src/rpc-relayer/index.ts
CHANGED
|
@@ -23,12 +23,7 @@ export interface RpcRelayerOptions {
|
|
|
23
23
|
}
|
|
24
24
|
|
|
25
25
|
export function isRpcRelayerOptions(obj: any): obj is RpcRelayerOptions {
|
|
26
|
-
return (
|
|
27
|
-
obj.url !== undefined &&
|
|
28
|
-
typeof obj.url === 'string' &&
|
|
29
|
-
obj.provider !== undefined &&
|
|
30
|
-
obj.provider instanceof ethers.AbstractProvider
|
|
31
|
-
)
|
|
26
|
+
return obj.url !== undefined && typeof obj.url === 'string' && obj.provider !== undefined && isAbstractProvider(obj.provider)
|
|
32
27
|
}
|
|
33
28
|
|
|
34
29
|
const fetch = globalThis.fetch
|
|
@@ -41,7 +36,7 @@ export class RpcRelayer implements Relayer {
|
|
|
41
36
|
constructor(public options: RpcRelayerOptions) {
|
|
42
37
|
this.service = new proto.Relayer(options.url, this._fetch)
|
|
43
38
|
|
|
44
|
-
if (options.provider
|
|
39
|
+
if (isAbstractProvider(options.provider)) {
|
|
45
40
|
this.provider = options.provider
|
|
46
41
|
} else {
|
|
47
42
|
const { jwtAuth, projectAccessKey } = this.options
|
|
@@ -332,3 +327,12 @@ export type RelayerTxReceipt = {
|
|
|
332
327
|
transactionHash: string
|
|
333
328
|
transactionIndex: string
|
|
334
329
|
}
|
|
330
|
+
|
|
331
|
+
function isAbstractProvider(provider: any): provider is ethers.AbstractProvider {
|
|
332
|
+
return (
|
|
333
|
+
provider &&
|
|
334
|
+
typeof provider === 'object' &&
|
|
335
|
+
typeof provider.getNetwork === 'function' &&
|
|
336
|
+
typeof provider.getBlockNumber === 'function'
|
|
337
|
+
)
|
|
338
|
+
}
|