@snapshot-labs/snapshot.js 0.5.5 → 0.5.6
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/sign/eip1271.d.ts +1 -1
- package/dist/sign/utils.d.ts +1 -1
- package/dist/snapshot.cjs.js +42 -28
- package/dist/snapshot.esm.js +42 -28
- package/dist/snapshot.min.js +1 -1
- package/dist/utils/blockfinder.d.ts +1 -1
- package/dist/utils/provider.d.ts +6 -2
- package/dist/utils.d.ts +6 -6
- package/package.json +1 -1
- package/src/sign/eip1271.ts +2 -2
- package/src/sign/utils.ts +2 -2
- package/src/utils/blockfinder.ts +8 -2
- package/src/utils/provider.ts +10 -4
- package/src/utils.ts +31 -25
package/dist/sign/eip1271.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { StaticJsonRpcProvider } from '@ethersproject/providers';
|
|
2
2
|
export declare function verifyDefault(address: string, sig: string, hash: string, provider: StaticJsonRpcProvider): Promise<boolean>;
|
|
3
3
|
export declare function verifyOldVersion(address: string, sig: string, hash: string, provider: StaticJsonRpcProvider): Promise<boolean>;
|
|
4
|
-
export declare function verify(address: any, sig: any, hash: any, network?: string): Promise<boolean>;
|
|
4
|
+
export declare function verify(address: any, sig: any, hash: any, network?: string, options?: {}): Promise<boolean>;
|
package/dist/sign/utils.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export declare function getHash(data: any): string;
|
|
2
|
-
export declare function verify(address: any, sig: any, data: any, network?: string): Promise<boolean>;
|
|
2
|
+
export declare function verify(address: any, sig: any, data: any, network?: string, options?: {}): Promise<boolean>;
|
package/dist/snapshot.cjs.js
CHANGED
|
@@ -1216,7 +1216,8 @@ var Multicaller = /** @class */ (function () {
|
|
|
1216
1216
|
|
|
1217
1217
|
var cache = {};
|
|
1218
1218
|
var expirationTime = 0;
|
|
1219
|
-
function getSnapshots(network, snapshot, provider, networks) {
|
|
1219
|
+
function getSnapshots(network, snapshot, provider, networks, options) {
|
|
1220
|
+
if (options === void 0) { options = {}; }
|
|
1220
1221
|
return __awaiter(this, void 0, void 0, function () {
|
|
1221
1222
|
var snapshots, cacheKey, cachedEntry, now, networkIn, block, query, url, data;
|
|
1222
1223
|
return __generator(this, function (_a) {
|
|
@@ -1257,7 +1258,7 @@ function getSnapshots(network, snapshot, provider, networks) {
|
|
|
1257
1258
|
number: true
|
|
1258
1259
|
}
|
|
1259
1260
|
};
|
|
1260
|
-
url = 'https://blockfinder.snapshot.org';
|
|
1261
|
+
url = options.blockFinderUrl || 'https://blockfinder.snapshot.org';
|
|
1261
1262
|
return [4 /*yield*/, subgraphRequest(url, query)];
|
|
1262
1263
|
case 2:
|
|
1263
1264
|
data = _a.sent();
|
|
@@ -1270,8 +1271,9 @@ function getSnapshots(network, snapshot, provider, networks) {
|
|
|
1270
1271
|
}
|
|
1271
1272
|
|
|
1272
1273
|
var providers = {};
|
|
1273
|
-
function getProvider(network) {
|
|
1274
|
-
var
|
|
1274
|
+
function getProvider(network, _a) {
|
|
1275
|
+
var _b = (_a === void 0 ? {} : _a).broviderUrl, broviderUrl = _b === void 0 ? 'https://rpc.snapshot.org' : _b;
|
|
1276
|
+
var url = broviderUrl + "/" + network;
|
|
1275
1277
|
if (!providers[network])
|
|
1276
1278
|
providers[network] = new providers$1.StaticJsonRpcProvider({
|
|
1277
1279
|
url: url,
|
|
@@ -1356,14 +1358,15 @@ function verifyOldVersion(address, sig, hash, provider) {
|
|
|
1356
1358
|
});
|
|
1357
1359
|
});
|
|
1358
1360
|
}
|
|
1359
|
-
function verify(address, sig, hash, network) {
|
|
1361
|
+
function verify(address, sig, hash, network, options) {
|
|
1360
1362
|
if (network === void 0) { network = '1'; }
|
|
1363
|
+
if (options === void 0) { options = {}; }
|
|
1361
1364
|
return __awaiter(this, void 0, void 0, function () {
|
|
1362
1365
|
var provider;
|
|
1363
1366
|
return __generator(this, function (_a) {
|
|
1364
1367
|
switch (_a.label) {
|
|
1365
1368
|
case 0:
|
|
1366
|
-
provider = getProvider(network);
|
|
1369
|
+
provider = getProvider(network, options);
|
|
1367
1370
|
return [4 /*yield*/, verifyDefault(address, sig, hash, provider)];
|
|
1368
1371
|
case 1:
|
|
1369
1372
|
if (_a.sent())
|
|
@@ -1379,8 +1382,9 @@ function getHash(data) {
|
|
|
1379
1382
|
var domain = data.domain, types = data.types, message = data.message;
|
|
1380
1383
|
return hash._TypedDataEncoder.hash(domain, types, message);
|
|
1381
1384
|
}
|
|
1382
|
-
function verify$1(address, sig, data, network) {
|
|
1385
|
+
function verify$1(address, sig, data, network, options) {
|
|
1383
1386
|
if (network === void 0) { network = '1'; }
|
|
1387
|
+
if (options === void 0) { options = {}; }
|
|
1384
1388
|
return __awaiter(this, void 0, void 0, function () {
|
|
1385
1389
|
var domain, types, message, hash, recoverAddress;
|
|
1386
1390
|
return __generator(this, function (_a) {
|
|
@@ -1399,7 +1403,7 @@ function verify$1(address, sig, data, network) {
|
|
|
1399
1403
|
catch (e) {
|
|
1400
1404
|
// console.log('Could not recoverAddress:' + e.message);
|
|
1401
1405
|
}
|
|
1402
|
-
return [4 /*yield*/, verify(address, sig, hash, network)];
|
|
1406
|
+
return [4 /*yield*/, verify(address, sig, hash, network, options)];
|
|
1403
1407
|
case 1:
|
|
1404
1408
|
// console.log('Check EIP1271 signature');
|
|
1405
1409
|
return [2 /*return*/, _a.sent()];
|
|
@@ -4346,14 +4350,15 @@ function call(provider, abi, call, options) {
|
|
|
4346
4350
|
}
|
|
4347
4351
|
function multicall(network, provider, abi$1, calls, options) {
|
|
4348
4352
|
return __awaiter(this, void 0, void 0, function () {
|
|
4349
|
-
var multicallAbi, multi, itf, max_1, pages, promises_1, results, e_2;
|
|
4353
|
+
var multicallAbi, multicallAddress, multi, itf, max_1, pages, promises_1, results, e_2;
|
|
4350
4354
|
return __generator(this, function (_a) {
|
|
4351
4355
|
switch (_a.label) {
|
|
4352
4356
|
case 0:
|
|
4353
4357
|
multicallAbi = [
|
|
4354
4358
|
'function aggregate(tuple(address target, bytes callData)[] calls) view returns (uint256 blockNumber, bytes[] returnData)'
|
|
4355
4359
|
];
|
|
4356
|
-
|
|
4360
|
+
multicallAddress = (options === null || options === void 0 ? void 0 : options.multicallAddress) || networks[network].multicall;
|
|
4361
|
+
multi = new contracts.Contract(multicallAddress, multicallAbi, provider);
|
|
4357
4362
|
itf = new abi.Interface(abi$1);
|
|
4358
4363
|
_a.label = 1;
|
|
4359
4364
|
case 1:
|
|
@@ -4436,11 +4441,12 @@ function getUrl(uri, gateway) {
|
|
|
4436
4441
|
return uri.replace('ipns://', ipfsGateway + "/ipns/");
|
|
4437
4442
|
return uri;
|
|
4438
4443
|
}
|
|
4439
|
-
function getJSON(uri) {
|
|
4444
|
+
function getJSON(uri, options) {
|
|
4445
|
+
if (options === void 0) { options = {}; }
|
|
4440
4446
|
return __awaiter(this, void 0, void 0, function () {
|
|
4441
4447
|
var url;
|
|
4442
4448
|
return __generator(this, function (_a) {
|
|
4443
|
-
url = getUrl(uri);
|
|
4449
|
+
url = getUrl(uri, options.gateways);
|
|
4444
4450
|
return [2 /*return*/, fetch__default['default'](url).then(function (res) { return res.json(); })];
|
|
4445
4451
|
});
|
|
4446
4452
|
});
|
|
@@ -4601,17 +4607,20 @@ function validateSchema(schema, data) {
|
|
|
4601
4607
|
var valid = ajvValidate(data);
|
|
4602
4608
|
return valid ? valid : ajvValidate.errors;
|
|
4603
4609
|
}
|
|
4604
|
-
function getEnsTextRecord(ens, record, network) {
|
|
4610
|
+
function getEnsTextRecord(ens, record, network, options) {
|
|
4605
4611
|
if (network === void 0) { network = '1'; }
|
|
4612
|
+
if (options === void 0) { options = {}; }
|
|
4606
4613
|
return __awaiter(this, void 0, void 0, function () {
|
|
4607
4614
|
var ensResolvers, ensHash, provider, result;
|
|
4608
4615
|
return __generator(this, function (_a) {
|
|
4609
4616
|
switch (_a.label) {
|
|
4610
4617
|
case 0:
|
|
4611
|
-
ensResolvers =
|
|
4618
|
+
ensResolvers = options.ensResolvers ||
|
|
4619
|
+
networks[network].ensResolvers ||
|
|
4620
|
+
networks['1'].ensResolvers;
|
|
4612
4621
|
ensHash = hash.namehash(hash.ensNormalize(ens));
|
|
4613
|
-
provider = getProvider(network);
|
|
4614
|
-
return [4 /*yield*/, multicall(network, provider, ENS_RESOLVER_ABI, ensResolvers.map(function (address) { return [address, 'text', [ensHash, record]]; }))];
|
|
4622
|
+
provider = getProvider(network, options);
|
|
4623
|
+
return [4 /*yield*/, multicall(network, provider, ENS_RESOLVER_ABI, ensResolvers.map(function (address) { return [address, 'text', [ensHash, record]]; }), options)];
|
|
4615
4624
|
case 1:
|
|
4616
4625
|
result = _a.sent();
|
|
4617
4626
|
return [2 /*return*/, result.flat().find(function (r) { return r; }) || ''];
|
|
@@ -4619,15 +4628,16 @@ function getEnsTextRecord(ens, record, network) {
|
|
|
4619
4628
|
});
|
|
4620
4629
|
});
|
|
4621
4630
|
}
|
|
4622
|
-
function getSpaceUri(id, network) {
|
|
4631
|
+
function getSpaceUri(id, network, options) {
|
|
4623
4632
|
if (network === void 0) { network = '1'; }
|
|
4633
|
+
if (options === void 0) { options = {}; }
|
|
4624
4634
|
return __awaiter(this, void 0, void 0, function () {
|
|
4625
4635
|
var e_4;
|
|
4626
4636
|
return __generator(this, function (_a) {
|
|
4627
4637
|
switch (_a.label) {
|
|
4628
4638
|
case 0:
|
|
4629
4639
|
_a.trys.push([0, 2, , 3]);
|
|
4630
|
-
return [4 /*yield*/, getEnsTextRecord(id, 'snapshot', network)];
|
|
4640
|
+
return [4 /*yield*/, getEnsTextRecord(id, 'snapshot', network, options)];
|
|
4631
4641
|
case 1: return [2 /*return*/, _a.sent()];
|
|
4632
4642
|
case 2:
|
|
4633
4643
|
e_4 = _a.sent();
|
|
@@ -4638,17 +4648,18 @@ function getSpaceUri(id, network) {
|
|
|
4638
4648
|
});
|
|
4639
4649
|
});
|
|
4640
4650
|
}
|
|
4641
|
-
function getEnsOwner(ens, network) {
|
|
4651
|
+
function getEnsOwner(ens, network, options) {
|
|
4642
4652
|
if (network === void 0) { network = '1'; }
|
|
4653
|
+
if (options === void 0) { options = {}; }
|
|
4643
4654
|
return __awaiter(this, void 0, void 0, function () {
|
|
4644
4655
|
var registryAddress, provider, ensRegistry, ensNameWrapper, ensHash, owner, ensNameWrapperContract;
|
|
4645
4656
|
return __generator(this, function (_a) {
|
|
4646
4657
|
switch (_a.label) {
|
|
4647
4658
|
case 0:
|
|
4648
4659
|
registryAddress = '0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e';
|
|
4649
|
-
provider = getProvider(network);
|
|
4660
|
+
provider = getProvider(network, options);
|
|
4650
4661
|
ensRegistry = new contracts.Contract(registryAddress, ['function owner(bytes32) view returns (address)'], provider);
|
|
4651
|
-
ensNameWrapper = networks[network].ensNameWrapper;
|
|
4662
|
+
ensNameWrapper = options.ensNameWrapper || networks[network].ensNameWrapper;
|
|
4652
4663
|
ensHash = hash.namehash(hash.ensNormalize(ens));
|
|
4653
4664
|
return [4 /*yield*/, ensRegistry.owner(ensHash)];
|
|
4654
4665
|
case 1:
|
|
@@ -4664,13 +4675,14 @@ function getEnsOwner(ens, network) {
|
|
|
4664
4675
|
});
|
|
4665
4676
|
});
|
|
4666
4677
|
}
|
|
4667
|
-
function getSpaceController(id, network) {
|
|
4678
|
+
function getSpaceController(id, network, options) {
|
|
4668
4679
|
if (network === void 0) { network = '1'; }
|
|
4680
|
+
if (options === void 0) { options = {}; }
|
|
4669
4681
|
return __awaiter(this, void 0, void 0, function () {
|
|
4670
4682
|
var spaceUri, isUriAddress, uriParts, position, address$1;
|
|
4671
4683
|
return __generator(this, function (_a) {
|
|
4672
4684
|
switch (_a.label) {
|
|
4673
|
-
case 0: return [4 /*yield*/, getSpaceUri(id, network)];
|
|
4685
|
+
case 0: return [4 /*yield*/, getSpaceUri(id, network, options)];
|
|
4674
4686
|
case 1:
|
|
4675
4687
|
spaceUri = _a.sent();
|
|
4676
4688
|
if (spaceUri) {
|
|
@@ -4684,20 +4696,22 @@ function getSpaceController(id, network) {
|
|
|
4684
4696
|
if (isUriAddress)
|
|
4685
4697
|
return [2 /*return*/, address$1];
|
|
4686
4698
|
}
|
|
4687
|
-
return [4 /*yield*/, getEnsOwner(id, network)];
|
|
4699
|
+
return [4 /*yield*/, getEnsOwner(id, network, options)];
|
|
4688
4700
|
case 2: return [2 /*return*/, _a.sent()];
|
|
4689
4701
|
}
|
|
4690
4702
|
});
|
|
4691
4703
|
});
|
|
4692
4704
|
}
|
|
4693
|
-
function getDelegatesBySpace(network, space, snapshot) {
|
|
4705
|
+
function getDelegatesBySpace(network, space, snapshot, options) {
|
|
4694
4706
|
if (snapshot === void 0) { snapshot = 'latest'; }
|
|
4707
|
+
if (options === void 0) { options = {}; }
|
|
4695
4708
|
return __awaiter(this, void 0, void 0, function () {
|
|
4696
|
-
var spaceIn, PAGE_SIZE, result, page, params, pageResult, pageDelegations;
|
|
4709
|
+
var subgraphUrl, spaceIn, PAGE_SIZE, result, page, params, pageResult, pageDelegations;
|
|
4697
4710
|
return __generator(this, function (_a) {
|
|
4698
4711
|
switch (_a.label) {
|
|
4699
4712
|
case 0:
|
|
4700
|
-
|
|
4713
|
+
subgraphUrl = options.subgraphUrl || SNAPSHOT_SUBGRAPH_URL[network];
|
|
4714
|
+
if (!subgraphUrl) {
|
|
4701
4715
|
return [2 /*return*/, Promise.reject("Delegation subgraph not available for network " + network)];
|
|
4702
4716
|
}
|
|
4703
4717
|
spaceIn = ['', space];
|
|
@@ -4726,7 +4740,7 @@ function getDelegatesBySpace(network, space, snapshot) {
|
|
|
4726
4740
|
_a.label = 1;
|
|
4727
4741
|
case 1:
|
|
4728
4742
|
params.delegations.__args.skip = page * PAGE_SIZE;
|
|
4729
|
-
return [4 /*yield*/, subgraphRequest(
|
|
4743
|
+
return [4 /*yield*/, subgraphRequest(subgraphUrl, params)];
|
|
4730
4744
|
case 2:
|
|
4731
4745
|
pageResult = _a.sent();
|
|
4732
4746
|
pageDelegations = pageResult.delegations || [];
|
package/dist/snapshot.esm.js
CHANGED
|
@@ -1207,7 +1207,8 @@ var Multicaller = /** @class */ (function () {
|
|
|
1207
1207
|
|
|
1208
1208
|
var cache = {};
|
|
1209
1209
|
var expirationTime = 0;
|
|
1210
|
-
function getSnapshots(network, snapshot, provider, networks) {
|
|
1210
|
+
function getSnapshots(network, snapshot, provider, networks, options) {
|
|
1211
|
+
if (options === void 0) { options = {}; }
|
|
1211
1212
|
return __awaiter(this, void 0, void 0, function () {
|
|
1212
1213
|
var snapshots, cacheKey, cachedEntry, now, networkIn, block, query, url, data;
|
|
1213
1214
|
return __generator(this, function (_a) {
|
|
@@ -1248,7 +1249,7 @@ function getSnapshots(network, snapshot, provider, networks) {
|
|
|
1248
1249
|
number: true
|
|
1249
1250
|
}
|
|
1250
1251
|
};
|
|
1251
|
-
url = 'https://blockfinder.snapshot.org';
|
|
1252
|
+
url = options.blockFinderUrl || 'https://blockfinder.snapshot.org';
|
|
1252
1253
|
return [4 /*yield*/, subgraphRequest(url, query)];
|
|
1253
1254
|
case 2:
|
|
1254
1255
|
data = _a.sent();
|
|
@@ -1261,8 +1262,9 @@ function getSnapshots(network, snapshot, provider, networks) {
|
|
|
1261
1262
|
}
|
|
1262
1263
|
|
|
1263
1264
|
var providers = {};
|
|
1264
|
-
function getProvider(network) {
|
|
1265
|
-
var
|
|
1265
|
+
function getProvider(network, _a) {
|
|
1266
|
+
var _b = (_a === void 0 ? {} : _a).broviderUrl, broviderUrl = _b === void 0 ? 'https://rpc.snapshot.org' : _b;
|
|
1267
|
+
var url = broviderUrl + "/" + network;
|
|
1266
1268
|
if (!providers[network])
|
|
1267
1269
|
providers[network] = new StaticJsonRpcProvider({
|
|
1268
1270
|
url: url,
|
|
@@ -1347,14 +1349,15 @@ function verifyOldVersion(address, sig, hash, provider) {
|
|
|
1347
1349
|
});
|
|
1348
1350
|
});
|
|
1349
1351
|
}
|
|
1350
|
-
function verify(address, sig, hash, network) {
|
|
1352
|
+
function verify(address, sig, hash, network, options) {
|
|
1351
1353
|
if (network === void 0) { network = '1'; }
|
|
1354
|
+
if (options === void 0) { options = {}; }
|
|
1352
1355
|
return __awaiter(this, void 0, void 0, function () {
|
|
1353
1356
|
var provider;
|
|
1354
1357
|
return __generator(this, function (_a) {
|
|
1355
1358
|
switch (_a.label) {
|
|
1356
1359
|
case 0:
|
|
1357
|
-
provider = getProvider(network);
|
|
1360
|
+
provider = getProvider(network, options);
|
|
1358
1361
|
return [4 /*yield*/, verifyDefault(address, sig, hash, provider)];
|
|
1359
1362
|
case 1:
|
|
1360
1363
|
if (_a.sent())
|
|
@@ -1370,8 +1373,9 @@ function getHash(data) {
|
|
|
1370
1373
|
var domain = data.domain, types = data.types, message = data.message;
|
|
1371
1374
|
return _TypedDataEncoder.hash(domain, types, message);
|
|
1372
1375
|
}
|
|
1373
|
-
function verify$1(address, sig, data, network) {
|
|
1376
|
+
function verify$1(address, sig, data, network, options) {
|
|
1374
1377
|
if (network === void 0) { network = '1'; }
|
|
1378
|
+
if (options === void 0) { options = {}; }
|
|
1375
1379
|
return __awaiter(this, void 0, void 0, function () {
|
|
1376
1380
|
var domain, types, message, hash, recoverAddress;
|
|
1377
1381
|
return __generator(this, function (_a) {
|
|
@@ -1390,7 +1394,7 @@ function verify$1(address, sig, data, network) {
|
|
|
1390
1394
|
catch (e) {
|
|
1391
1395
|
// console.log('Could not recoverAddress:' + e.message);
|
|
1392
1396
|
}
|
|
1393
|
-
return [4 /*yield*/, verify(address, sig, hash, network)];
|
|
1397
|
+
return [4 /*yield*/, verify(address, sig, hash, network, options)];
|
|
1394
1398
|
case 1:
|
|
1395
1399
|
// console.log('Check EIP1271 signature');
|
|
1396
1400
|
return [2 /*return*/, _a.sent()];
|
|
@@ -4337,14 +4341,15 @@ function call(provider, abi, call, options) {
|
|
|
4337
4341
|
}
|
|
4338
4342
|
function multicall(network, provider, abi, calls, options) {
|
|
4339
4343
|
return __awaiter(this, void 0, void 0, function () {
|
|
4340
|
-
var multicallAbi, multi, itf, max_1, pages, promises_1, results, e_2;
|
|
4344
|
+
var multicallAbi, multicallAddress, multi, itf, max_1, pages, promises_1, results, e_2;
|
|
4341
4345
|
return __generator(this, function (_a) {
|
|
4342
4346
|
switch (_a.label) {
|
|
4343
4347
|
case 0:
|
|
4344
4348
|
multicallAbi = [
|
|
4345
4349
|
'function aggregate(tuple(address target, bytes callData)[] calls) view returns (uint256 blockNumber, bytes[] returnData)'
|
|
4346
4350
|
];
|
|
4347
|
-
|
|
4351
|
+
multicallAddress = (options === null || options === void 0 ? void 0 : options.multicallAddress) || networks[network].multicall;
|
|
4352
|
+
multi = new Contract(multicallAddress, multicallAbi, provider);
|
|
4348
4353
|
itf = new Interface(abi);
|
|
4349
4354
|
_a.label = 1;
|
|
4350
4355
|
case 1:
|
|
@@ -4427,11 +4432,12 @@ function getUrl(uri, gateway) {
|
|
|
4427
4432
|
return uri.replace('ipns://', ipfsGateway + "/ipns/");
|
|
4428
4433
|
return uri;
|
|
4429
4434
|
}
|
|
4430
|
-
function getJSON(uri) {
|
|
4435
|
+
function getJSON(uri, options) {
|
|
4436
|
+
if (options === void 0) { options = {}; }
|
|
4431
4437
|
return __awaiter(this, void 0, void 0, function () {
|
|
4432
4438
|
var url;
|
|
4433
4439
|
return __generator(this, function (_a) {
|
|
4434
|
-
url = getUrl(uri);
|
|
4440
|
+
url = getUrl(uri, options.gateways);
|
|
4435
4441
|
return [2 /*return*/, fetch(url).then(function (res) { return res.json(); })];
|
|
4436
4442
|
});
|
|
4437
4443
|
});
|
|
@@ -4592,17 +4598,20 @@ function validateSchema(schema, data) {
|
|
|
4592
4598
|
var valid = ajvValidate(data);
|
|
4593
4599
|
return valid ? valid : ajvValidate.errors;
|
|
4594
4600
|
}
|
|
4595
|
-
function getEnsTextRecord(ens, record, network) {
|
|
4601
|
+
function getEnsTextRecord(ens, record, network, options) {
|
|
4596
4602
|
if (network === void 0) { network = '1'; }
|
|
4603
|
+
if (options === void 0) { options = {}; }
|
|
4597
4604
|
return __awaiter(this, void 0, void 0, function () {
|
|
4598
4605
|
var ensResolvers, ensHash, provider, result;
|
|
4599
4606
|
return __generator(this, function (_a) {
|
|
4600
4607
|
switch (_a.label) {
|
|
4601
4608
|
case 0:
|
|
4602
|
-
ensResolvers =
|
|
4609
|
+
ensResolvers = options.ensResolvers ||
|
|
4610
|
+
networks[network].ensResolvers ||
|
|
4611
|
+
networks['1'].ensResolvers;
|
|
4603
4612
|
ensHash = namehash(ensNormalize(ens));
|
|
4604
|
-
provider = getProvider(network);
|
|
4605
|
-
return [4 /*yield*/, multicall(network, provider, ENS_RESOLVER_ABI, ensResolvers.map(function (address) { return [address, 'text', [ensHash, record]]; }))];
|
|
4613
|
+
provider = getProvider(network, options);
|
|
4614
|
+
return [4 /*yield*/, multicall(network, provider, ENS_RESOLVER_ABI, ensResolvers.map(function (address) { return [address, 'text', [ensHash, record]]; }), options)];
|
|
4606
4615
|
case 1:
|
|
4607
4616
|
result = _a.sent();
|
|
4608
4617
|
return [2 /*return*/, result.flat().find(function (r) { return r; }) || ''];
|
|
@@ -4610,15 +4619,16 @@ function getEnsTextRecord(ens, record, network) {
|
|
|
4610
4619
|
});
|
|
4611
4620
|
});
|
|
4612
4621
|
}
|
|
4613
|
-
function getSpaceUri(id, network) {
|
|
4622
|
+
function getSpaceUri(id, network, options) {
|
|
4614
4623
|
if (network === void 0) { network = '1'; }
|
|
4624
|
+
if (options === void 0) { options = {}; }
|
|
4615
4625
|
return __awaiter(this, void 0, void 0, function () {
|
|
4616
4626
|
var e_4;
|
|
4617
4627
|
return __generator(this, function (_a) {
|
|
4618
4628
|
switch (_a.label) {
|
|
4619
4629
|
case 0:
|
|
4620
4630
|
_a.trys.push([0, 2, , 3]);
|
|
4621
|
-
return [4 /*yield*/, getEnsTextRecord(id, 'snapshot', network)];
|
|
4631
|
+
return [4 /*yield*/, getEnsTextRecord(id, 'snapshot', network, options)];
|
|
4622
4632
|
case 1: return [2 /*return*/, _a.sent()];
|
|
4623
4633
|
case 2:
|
|
4624
4634
|
e_4 = _a.sent();
|
|
@@ -4629,17 +4639,18 @@ function getSpaceUri(id, network) {
|
|
|
4629
4639
|
});
|
|
4630
4640
|
});
|
|
4631
4641
|
}
|
|
4632
|
-
function getEnsOwner(ens, network) {
|
|
4642
|
+
function getEnsOwner(ens, network, options) {
|
|
4633
4643
|
if (network === void 0) { network = '1'; }
|
|
4644
|
+
if (options === void 0) { options = {}; }
|
|
4634
4645
|
return __awaiter(this, void 0, void 0, function () {
|
|
4635
4646
|
var registryAddress, provider, ensRegistry, ensNameWrapper, ensHash, owner, ensNameWrapperContract;
|
|
4636
4647
|
return __generator(this, function (_a) {
|
|
4637
4648
|
switch (_a.label) {
|
|
4638
4649
|
case 0:
|
|
4639
4650
|
registryAddress = '0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e';
|
|
4640
|
-
provider = getProvider(network);
|
|
4651
|
+
provider = getProvider(network, options);
|
|
4641
4652
|
ensRegistry = new Contract(registryAddress, ['function owner(bytes32) view returns (address)'], provider);
|
|
4642
|
-
ensNameWrapper = networks[network].ensNameWrapper;
|
|
4653
|
+
ensNameWrapper = options.ensNameWrapper || networks[network].ensNameWrapper;
|
|
4643
4654
|
ensHash = namehash(ensNormalize(ens));
|
|
4644
4655
|
return [4 /*yield*/, ensRegistry.owner(ensHash)];
|
|
4645
4656
|
case 1:
|
|
@@ -4655,13 +4666,14 @@ function getEnsOwner(ens, network) {
|
|
|
4655
4666
|
});
|
|
4656
4667
|
});
|
|
4657
4668
|
}
|
|
4658
|
-
function getSpaceController(id, network) {
|
|
4669
|
+
function getSpaceController(id, network, options) {
|
|
4659
4670
|
if (network === void 0) { network = '1'; }
|
|
4671
|
+
if (options === void 0) { options = {}; }
|
|
4660
4672
|
return __awaiter(this, void 0, void 0, function () {
|
|
4661
4673
|
var spaceUri, isUriAddress, uriParts, position, address;
|
|
4662
4674
|
return __generator(this, function (_a) {
|
|
4663
4675
|
switch (_a.label) {
|
|
4664
|
-
case 0: return [4 /*yield*/, getSpaceUri(id, network)];
|
|
4676
|
+
case 0: return [4 /*yield*/, getSpaceUri(id, network, options)];
|
|
4665
4677
|
case 1:
|
|
4666
4678
|
spaceUri = _a.sent();
|
|
4667
4679
|
if (spaceUri) {
|
|
@@ -4675,20 +4687,22 @@ function getSpaceController(id, network) {
|
|
|
4675
4687
|
if (isUriAddress)
|
|
4676
4688
|
return [2 /*return*/, address];
|
|
4677
4689
|
}
|
|
4678
|
-
return [4 /*yield*/, getEnsOwner(id, network)];
|
|
4690
|
+
return [4 /*yield*/, getEnsOwner(id, network, options)];
|
|
4679
4691
|
case 2: return [2 /*return*/, _a.sent()];
|
|
4680
4692
|
}
|
|
4681
4693
|
});
|
|
4682
4694
|
});
|
|
4683
4695
|
}
|
|
4684
|
-
function getDelegatesBySpace(network, space, snapshot) {
|
|
4696
|
+
function getDelegatesBySpace(network, space, snapshot, options) {
|
|
4685
4697
|
if (snapshot === void 0) { snapshot = 'latest'; }
|
|
4698
|
+
if (options === void 0) { options = {}; }
|
|
4686
4699
|
return __awaiter(this, void 0, void 0, function () {
|
|
4687
|
-
var spaceIn, PAGE_SIZE, result, page, params, pageResult, pageDelegations;
|
|
4700
|
+
var subgraphUrl, spaceIn, PAGE_SIZE, result, page, params, pageResult, pageDelegations;
|
|
4688
4701
|
return __generator(this, function (_a) {
|
|
4689
4702
|
switch (_a.label) {
|
|
4690
4703
|
case 0:
|
|
4691
|
-
|
|
4704
|
+
subgraphUrl = options.subgraphUrl || SNAPSHOT_SUBGRAPH_URL[network];
|
|
4705
|
+
if (!subgraphUrl) {
|
|
4692
4706
|
return [2 /*return*/, Promise.reject("Delegation subgraph not available for network " + network)];
|
|
4693
4707
|
}
|
|
4694
4708
|
spaceIn = ['', space];
|
|
@@ -4717,7 +4731,7 @@ function getDelegatesBySpace(network, space, snapshot) {
|
|
|
4717
4731
|
_a.label = 1;
|
|
4718
4732
|
case 1:
|
|
4719
4733
|
params.delegations.__args.skip = page * PAGE_SIZE;
|
|
4720
|
-
return [4 /*yield*/, subgraphRequest(
|
|
4734
|
+
return [4 /*yield*/, subgraphRequest(subgraphUrl, params)];
|
|
4721
4735
|
case 2:
|
|
4722
4736
|
pageResult = _a.sent();
|
|
4723
4737
|
pageDelegations = pageResult.delegations || [];
|