@ensnode/datasources 1.16.0 → 1.17.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/devnet/index.d.ts +23 -1
- package/dist/devnet/index.js +8 -1
- package/dist/devnet/index.js.map +1 -1
- package/dist/index.d.ts +1226 -5
- package/dist/index.js +214 -26
- package/dist/index.js.map +1 -1
- package/package.json +4 -4
package/dist/index.js
CHANGED
|
@@ -7096,6 +7096,61 @@ var ThreeDNSToken = [
|
|
|
7096
7096
|
// src/identify-contracts.ts
|
|
7097
7097
|
import { toNormalizedAddress } from "enssdk";
|
|
7098
7098
|
|
|
7099
|
+
// src/abis/efp/AccountMetadata.ts
|
|
7100
|
+
var AccountMetadata = [
|
|
7101
|
+
{
|
|
7102
|
+
type: "event",
|
|
7103
|
+
name: "UpdateAccountMetadata",
|
|
7104
|
+
inputs: [
|
|
7105
|
+
{ indexed: true, name: "addr", type: "address" },
|
|
7106
|
+
{ indexed: false, name: "key", type: "string" },
|
|
7107
|
+
{ indexed: false, name: "value", type: "bytes" }
|
|
7108
|
+
]
|
|
7109
|
+
}
|
|
7110
|
+
];
|
|
7111
|
+
|
|
7112
|
+
// src/abis/efp/ListRecords.ts
|
|
7113
|
+
var ListRecords = [
|
|
7114
|
+
{
|
|
7115
|
+
type: "event",
|
|
7116
|
+
name: "ListOp",
|
|
7117
|
+
inputs: [
|
|
7118
|
+
{ indexed: true, name: "slot", type: "uint256" },
|
|
7119
|
+
{ indexed: false, name: "op", type: "bytes" }
|
|
7120
|
+
]
|
|
7121
|
+
},
|
|
7122
|
+
{
|
|
7123
|
+
type: "event",
|
|
7124
|
+
name: "UpdateListMetadata",
|
|
7125
|
+
inputs: [
|
|
7126
|
+
{ indexed: true, name: "slot", type: "uint256" },
|
|
7127
|
+
{ indexed: false, name: "key", type: "string" },
|
|
7128
|
+
{ indexed: false, name: "value", type: "bytes" }
|
|
7129
|
+
]
|
|
7130
|
+
}
|
|
7131
|
+
];
|
|
7132
|
+
|
|
7133
|
+
// src/abis/efp/ListRegistry.ts
|
|
7134
|
+
var ListRegistry = [
|
|
7135
|
+
{
|
|
7136
|
+
type: "event",
|
|
7137
|
+
name: "Transfer",
|
|
7138
|
+
inputs: [
|
|
7139
|
+
{ indexed: true, name: "from", type: "address" },
|
|
7140
|
+
{ indexed: true, name: "to", type: "address" },
|
|
7141
|
+
{ indexed: true, name: "tokenId", type: "uint256" }
|
|
7142
|
+
]
|
|
7143
|
+
},
|
|
7144
|
+
{
|
|
7145
|
+
type: "event",
|
|
7146
|
+
name: "UpdateListStorageLocation",
|
|
7147
|
+
inputs: [
|
|
7148
|
+
{ indexed: true, name: "tokenId", type: "uint256" },
|
|
7149
|
+
{ indexed: false, name: "listStorageLocation", type: "bytes" }
|
|
7150
|
+
]
|
|
7151
|
+
}
|
|
7152
|
+
];
|
|
7153
|
+
|
|
7099
7154
|
// src/abis/root/UnwrappedEthRegistrarController.ts
|
|
7100
7155
|
var UnwrappedEthRegistrarController = [
|
|
7101
7156
|
{
|
|
@@ -7850,6 +7905,12 @@ var contracts = {
|
|
|
7850
7905
|
MockUSDC: "0xfd471836031dc5108809d173a067e8486b9047a3",
|
|
7851
7906
|
MockDAI: "0xcbeaf3bde82155f56486fb5a1072cb8baaf547cc"
|
|
7852
7907
|
};
|
|
7908
|
+
var efpContracts = {
|
|
7909
|
+
EFPAccountMetadata: "0xd5ac451b0c50b9476107823af206ed814a2e2580",
|
|
7910
|
+
EFPListRegistry: "0xf8e31cb472bc70500f08cd84917e5a1912ec8397",
|
|
7911
|
+
EFPListRecords: "0xc0f115a19107322cfbf1cdbc7ea011c19ebdb4f8",
|
|
7912
|
+
EFPListMinter: "0xc96304e3c037f81da488ed9dea1d8f2a48278a75"
|
|
7913
|
+
};
|
|
7853
7914
|
|
|
7854
7915
|
// src/lib/chains.ts
|
|
7855
7916
|
import { anvil } from "viem/chains";
|
|
@@ -9942,7 +10003,10 @@ var DatasourceNames = {
|
|
|
9942
10003
|
ReverseResolverOptimism: "rrOptimism",
|
|
9943
10004
|
ReverseResolverArbitrum: "rrArbitrum",
|
|
9944
10005
|
ReverseResolverScroll: "rrScroll",
|
|
9945
|
-
ENSv2Root: "ENSv2Root"
|
|
10006
|
+
ENSv2Root: "ENSv2Root",
|
|
10007
|
+
EFPBase: "efpBase",
|
|
10008
|
+
EFPOptimism: "efpOptimism",
|
|
10009
|
+
EFPEthereum: "efpEthereum"
|
|
9946
10010
|
};
|
|
9947
10011
|
|
|
9948
10012
|
// src/ens-test-env.ts
|
|
@@ -10070,6 +10134,61 @@ var ens_test_env_default = {
|
|
|
10070
10134
|
startBlock: 0
|
|
10071
10135
|
}
|
|
10072
10136
|
}
|
|
10137
|
+
},
|
|
10138
|
+
/**
|
|
10139
|
+
* EFP Datasources
|
|
10140
|
+
*
|
|
10141
|
+
* The Ethereum Follow Protocol contracts, deployed onto the ens-test-env devnet by the EFP devnet
|
|
10142
|
+
* image (attach mode) on top of the ENS deployment. On the `mainnet` namespace EFP spans Base,
|
|
10143
|
+
* Optimism, and Ethereum; the single-chain devnet has only one EFP deployment, so all three EFP
|
|
10144
|
+
* datasources resolve to `ensTestEnvChain` (id 31337) with the same `ListRecords` contract.
|
|
10145
|
+
*
|
|
10146
|
+
* The EFP plugin's Ponder config keys each contract by chain id, so the three datasources collapse
|
|
10147
|
+
* to a single set of contracts on chain 31337 (no double-indexing). This relies on the
|
|
10148
|
+
* `ListRecords` address being IDENTICAL across all three datasources below — if they diverge, the
|
|
10149
|
+
* per-chain-id merge silently keeps only `EFPEthereum`'s.
|
|
10150
|
+
*
|
|
10151
|
+
* @see docker/services/efp-devnet.yml for how these contracts are deployed and addresses captured.
|
|
10152
|
+
*/
|
|
10153
|
+
[DatasourceNames.EFPBase]: {
|
|
10154
|
+
chain: ensTestEnvChain,
|
|
10155
|
+
contracts: {
|
|
10156
|
+
ListRegistry: {
|
|
10157
|
+
abi: ListRegistry,
|
|
10158
|
+
address: efpContracts.EFPListRegistry,
|
|
10159
|
+
startBlock: 0
|
|
10160
|
+
},
|
|
10161
|
+
AccountMetadata: {
|
|
10162
|
+
abi: AccountMetadata,
|
|
10163
|
+
address: efpContracts.EFPAccountMetadata,
|
|
10164
|
+
startBlock: 0
|
|
10165
|
+
},
|
|
10166
|
+
ListRecords: {
|
|
10167
|
+
abi: ListRecords,
|
|
10168
|
+
address: efpContracts.EFPListRecords,
|
|
10169
|
+
startBlock: 0
|
|
10170
|
+
}
|
|
10171
|
+
}
|
|
10172
|
+
},
|
|
10173
|
+
[DatasourceNames.EFPOptimism]: {
|
|
10174
|
+
chain: ensTestEnvChain,
|
|
10175
|
+
contracts: {
|
|
10176
|
+
ListRecords: {
|
|
10177
|
+
abi: ListRecords,
|
|
10178
|
+
address: efpContracts.EFPListRecords,
|
|
10179
|
+
startBlock: 0
|
|
10180
|
+
}
|
|
10181
|
+
}
|
|
10182
|
+
},
|
|
10183
|
+
[DatasourceNames.EFPEthereum]: {
|
|
10184
|
+
chain: ensTestEnvChain,
|
|
10185
|
+
contracts: {
|
|
10186
|
+
ListRecords: {
|
|
10187
|
+
abi: ListRecords,
|
|
10188
|
+
address: efpContracts.EFPListRecords,
|
|
10189
|
+
startBlock: 0
|
|
10190
|
+
}
|
|
10191
|
+
}
|
|
10073
10192
|
}
|
|
10074
10193
|
};
|
|
10075
10194
|
|
|
@@ -16901,6 +17020,73 @@ var mainnet_default = {
|
|
|
16901
17020
|
startBlock: 17129405
|
|
16902
17021
|
}
|
|
16903
17022
|
}
|
|
17023
|
+
},
|
|
17024
|
+
/**
|
|
17025
|
+
* EFP (Ethereum Follow Protocol) Datasource on Base.
|
|
17026
|
+
*
|
|
17027
|
+
* The `ListRegistry` (list NFTs) and `AccountMetadata` contracts are deployed only on Base.
|
|
17028
|
+
* The `ListRecords` contract is also deployed on Base (one of the three "list storage location"
|
|
17029
|
+
* chains a list NFT may point at via `UpdateListStorageLocation`).
|
|
17030
|
+
*
|
|
17031
|
+
* Every address below is cross-checked against the official EFP deployments,
|
|
17032
|
+
* https://docs.efp.app/production/deployments/ (and ethereumfollowprotocol/api-v2).
|
|
17033
|
+
*/
|
|
17034
|
+
[DatasourceNames.EFPBase]: {
|
|
17035
|
+
chain: base,
|
|
17036
|
+
contracts: {
|
|
17037
|
+
// EFPListRegistry, Base. (All three Base EFP contracts deployed in block 20197231.)
|
|
17038
|
+
ListRegistry: {
|
|
17039
|
+
abi: ListRegistry,
|
|
17040
|
+
address: "0x0e688f5dca4a0a4729946acbc44c792341714e08",
|
|
17041
|
+
startBlock: 20197231
|
|
17042
|
+
},
|
|
17043
|
+
// EFPAccountMetadata, Base. NOTE: this is the SAME address as EFPListRecords on Ethereum
|
|
17044
|
+
// mainnet (see EFPEthereum below). EFP deploys via CREATE2, so one address can map to a
|
|
17045
|
+
// different contract on each chain; this is not a copy-paste error.
|
|
17046
|
+
AccountMetadata: {
|
|
17047
|
+
abi: AccountMetadata,
|
|
17048
|
+
address: "0x5289fe5dabc021d02fddf23d4a4df96f4e0f17ef",
|
|
17049
|
+
startBlock: 20197231
|
|
17050
|
+
},
|
|
17051
|
+
// EFPListRecords, Base.
|
|
17052
|
+
ListRecords: {
|
|
17053
|
+
abi: ListRecords,
|
|
17054
|
+
address: "0x41aa48ef3c0446b46a5b1cc6337ff3d3716e2a33",
|
|
17055
|
+
startBlock: 20197231
|
|
17056
|
+
}
|
|
17057
|
+
}
|
|
17058
|
+
},
|
|
17059
|
+
/**
|
|
17060
|
+
* EFP `ListRecords` Datasource on Optimism.
|
|
17061
|
+
*/
|
|
17062
|
+
[DatasourceNames.EFPOptimism]: {
|
|
17063
|
+
chain: optimism,
|
|
17064
|
+
contracts: {
|
|
17065
|
+
// EFPListRecords, Optimism.
|
|
17066
|
+
ListRecords: {
|
|
17067
|
+
abi: ListRecords,
|
|
17068
|
+
address: "0x4ca00413d850dcfa3516e14d21dae2772f2acb85",
|
|
17069
|
+
startBlock: 125792735
|
|
17070
|
+
}
|
|
17071
|
+
}
|
|
17072
|
+
},
|
|
17073
|
+
/**
|
|
17074
|
+
* EFP `ListRecords` Datasource on Ethereum mainnet.
|
|
17075
|
+
*/
|
|
17076
|
+
[DatasourceNames.EFPEthereum]: {
|
|
17077
|
+
chain: mainnet,
|
|
17078
|
+
contracts: {
|
|
17079
|
+
// EFPListRecords, Ethereum mainnet. This shares the 0x5289…0F17EF address with
|
|
17080
|
+
// EFPAccountMetadata on Base (above): EFP deploys via CREATE2, so the same address appears on
|
|
17081
|
+
// multiple chains for different contracts. Confirmed as ListRecords on Ethereum mainnet at
|
|
17082
|
+
// https://docs.efp.app/production/deployments/ (and ethereumfollowprotocol/api-v2); it is NOT
|
|
17083
|
+
// a copy-paste of the Base AccountMetadata address.
|
|
17084
|
+
ListRecords: {
|
|
17085
|
+
abi: ListRecords,
|
|
17086
|
+
address: "0x5289fe5dabc021d02fddf23d4a4df96f4e0f17ef",
|
|
17087
|
+
startBlock: 20820743
|
|
17088
|
+
}
|
|
17089
|
+
}
|
|
16904
17090
|
}
|
|
16905
17091
|
};
|
|
16906
17092
|
|
|
@@ -17255,7 +17441,8 @@ import {
|
|
|
17255
17441
|
sepolia as sepolia2
|
|
17256
17442
|
} from "viem/chains";
|
|
17257
17443
|
var SEPOLIA_ENSV1_DEPLOYMENT_BLOCK = 3702721;
|
|
17258
|
-
var
|
|
17444
|
+
var SEPOLIA_V2_ENSV1_DEPLOYMENT_BLOCK = 104e5;
|
|
17445
|
+
var SEPOLIA_V2_ENSV2_DEPLOYMENT_BLOCK = 10921916;
|
|
17259
17446
|
var sepolia_v2_default = {
|
|
17260
17447
|
/**
|
|
17261
17448
|
* ENS Root contracts deployed on Sepolia for the ENSv1 + ENSv2 test deployment.
|
|
@@ -17272,14 +17459,14 @@ var sepolia_v2_default = {
|
|
|
17272
17459
|
abi: Registry2,
|
|
17273
17460
|
// Registry was redeployed, same abi
|
|
17274
17461
|
address: zeroAddress,
|
|
17275
|
-
startBlock:
|
|
17462
|
+
startBlock: SEPOLIA_V2_ENSV1_DEPLOYMENT_BLOCK
|
|
17276
17463
|
},
|
|
17277
17464
|
// NOTE: named ENSRegistry in deployment
|
|
17278
17465
|
ENSv1Registry: {
|
|
17279
17466
|
abi: Registry2,
|
|
17280
17467
|
// Registry was redeployed, same abi
|
|
17281
17468
|
address: "0xb6fb46e1458915dd828633d91e1df8e4c3f2d4dd",
|
|
17282
|
-
startBlock:
|
|
17469
|
+
startBlock: SEPOLIA_V2_ENSV1_DEPLOYMENT_BLOCK
|
|
17283
17470
|
},
|
|
17284
17471
|
Resolver: {
|
|
17285
17472
|
abi: ResolverABI,
|
|
@@ -17289,23 +17476,24 @@ var sepolia_v2_default = {
|
|
|
17289
17476
|
BaseRegistrar: {
|
|
17290
17477
|
abi: BaseRegistrar,
|
|
17291
17478
|
address: "0xa51c9e6efe589407c72984e93b45e35a71a398ec",
|
|
17292
|
-
startBlock:
|
|
17479
|
+
startBlock: SEPOLIA_V2_ENSV1_DEPLOYMENT_BLOCK
|
|
17293
17480
|
},
|
|
17294
17481
|
// NOTE: named ETHRegistrarController in deployment
|
|
17295
17482
|
UnwrappedEthRegistrarController: {
|
|
17296
17483
|
abi: UnwrappedEthRegistrarController,
|
|
17297
17484
|
address: "0xb5778cf6cc9586d9ce740039c84dfb1802f307bc",
|
|
17298
|
-
startBlock:
|
|
17485
|
+
startBlock: SEPOLIA_V2_ENSV1_DEPLOYMENT_BLOCK
|
|
17299
17486
|
},
|
|
17300
17487
|
NameWrapper: {
|
|
17301
17488
|
abi: NameWrapper,
|
|
17302
17489
|
address: "0x250a6c640297f605b63c6e91c7cd376f04b288da",
|
|
17303
|
-
startBlock:
|
|
17490
|
+
startBlock: SEPOLIA_V2_ENSV1_DEPLOYMENT_BLOCK
|
|
17304
17491
|
},
|
|
17492
|
+
// NOTE: named UpgradableUniversalResolverProxy in deployment
|
|
17305
17493
|
UniversalResolver: {
|
|
17306
17494
|
abi: UniversalResolverABI,
|
|
17307
|
-
address: "
|
|
17308
|
-
startBlock:
|
|
17495
|
+
address: "0xeeeeeeee14d718c2b47d9923deab1335e144eeee",
|
|
17496
|
+
startBlock: SEPOLIA_V2_ENSV2_DEPLOYMENT_BLOCK
|
|
17309
17497
|
}
|
|
17310
17498
|
}
|
|
17311
17499
|
},
|
|
@@ -17313,25 +17501,25 @@ var sepolia_v2_default = {
|
|
|
17313
17501
|
chain: sepolia2,
|
|
17314
17502
|
contracts: {
|
|
17315
17503
|
Resolver: { abi: ResolverABI, startBlock: SEPOLIA_ENSV1_DEPLOYMENT_BLOCK },
|
|
17316
|
-
Registry: { abi: Registry, startBlock:
|
|
17504
|
+
Registry: { abi: Registry, startBlock: SEPOLIA_V2_ENSV2_DEPLOYMENT_BLOCK },
|
|
17317
17505
|
EnhancedAccessControl: {
|
|
17318
17506
|
abi: EnhancedAccessControl,
|
|
17319
|
-
startBlock:
|
|
17507
|
+
startBlock: SEPOLIA_V2_ENSV2_DEPLOYMENT_BLOCK
|
|
17320
17508
|
},
|
|
17321
17509
|
RootRegistry: {
|
|
17322
17510
|
abi: Registry,
|
|
17323
|
-
address: "
|
|
17324
|
-
startBlock:
|
|
17511
|
+
address: "0xc960f7217d3643b525ef36bec8adf86953cd9ab8",
|
|
17512
|
+
startBlock: SEPOLIA_V2_ENSV2_DEPLOYMENT_BLOCK
|
|
17325
17513
|
},
|
|
17326
17514
|
ETHRegistry: {
|
|
17327
17515
|
abi: Registry,
|
|
17328
|
-
address: "
|
|
17329
|
-
startBlock:
|
|
17516
|
+
address: "0xdedb92913a25abe1f7bcdd85d8a344a43b398b67",
|
|
17517
|
+
startBlock: SEPOLIA_V2_ENSV2_DEPLOYMENT_BLOCK
|
|
17330
17518
|
},
|
|
17331
17519
|
ETHRegistrar: {
|
|
17332
17520
|
abi: ETHRegistrar,
|
|
17333
|
-
address: "
|
|
17334
|
-
startBlock:
|
|
17521
|
+
address: "0x8c2e866b439358c41ae05de9cbe8a00bfefaffca",
|
|
17522
|
+
startBlock: SEPOLIA_V2_ENSV2_DEPLOYMENT_BLOCK
|
|
17335
17523
|
}
|
|
17336
17524
|
}
|
|
17337
17525
|
},
|
|
@@ -17341,38 +17529,38 @@ var sepolia_v2_default = {
|
|
|
17341
17529
|
DefaultReverseRegistrar: {
|
|
17342
17530
|
abi: StandaloneReverseRegistrar,
|
|
17343
17531
|
address: "0x26997c9d0f3dcbae3f78c69e621a3926ee30bb98",
|
|
17344
|
-
startBlock:
|
|
17532
|
+
startBlock: SEPOLIA_V2_ENSV1_DEPLOYMENT_BLOCK
|
|
17345
17533
|
},
|
|
17346
|
-
// NOTE: named
|
|
17534
|
+
// NOTE: named PublicResolverV2 in deployment
|
|
17347
17535
|
DefaultPublicResolver5: {
|
|
17348
17536
|
abi: ResolverABI,
|
|
17349
|
-
address: "
|
|
17350
|
-
startBlock:
|
|
17537
|
+
address: "0x5239a812ec9a62f46dbb5de8f346c8efe7553a9f",
|
|
17538
|
+
startBlock: SEPOLIA_V2_ENSV2_DEPLOYMENT_BLOCK
|
|
17351
17539
|
},
|
|
17352
17540
|
BaseReverseResolver: {
|
|
17353
17541
|
abi: ResolverABI,
|
|
17354
17542
|
address: "0xaf3b3f636be80b6709f5bd3a374d6ac0d0a7c7aa",
|
|
17355
|
-
startBlock:
|
|
17543
|
+
startBlock: SEPOLIA_V2_ENSV1_DEPLOYMENT_BLOCK
|
|
17356
17544
|
},
|
|
17357
17545
|
LineaReverseResolver: {
|
|
17358
17546
|
abi: ResolverABI,
|
|
17359
17547
|
address: "0x083da1dbc0f379ccda6ac81a934207c3d8a8a205",
|
|
17360
|
-
startBlock:
|
|
17548
|
+
startBlock: SEPOLIA_V2_ENSV1_DEPLOYMENT_BLOCK
|
|
17361
17549
|
},
|
|
17362
17550
|
OptimismReverseResolver: {
|
|
17363
17551
|
abi: ResolverABI,
|
|
17364
17552
|
address: "0xc9ae189772bd48e01410ab3be933637ee9d3aa5f",
|
|
17365
|
-
startBlock:
|
|
17553
|
+
startBlock: SEPOLIA_V2_ENSV1_DEPLOYMENT_BLOCK
|
|
17366
17554
|
},
|
|
17367
17555
|
ArbitrumReverseResolver: {
|
|
17368
17556
|
abi: ResolverABI,
|
|
17369
17557
|
address: "0x926f94d2adc77c86cb0050892097d49aadd02e8b",
|
|
17370
|
-
startBlock:
|
|
17558
|
+
startBlock: SEPOLIA_V2_ENSV1_DEPLOYMENT_BLOCK
|
|
17371
17559
|
},
|
|
17372
17560
|
ScrollReverseResolver: {
|
|
17373
17561
|
abi: ResolverABI,
|
|
17374
17562
|
address: "0x9fa59673e43f15bdb8722fdaf5c2107574b99062",
|
|
17375
|
-
startBlock:
|
|
17563
|
+
startBlock: SEPOLIA_V2_ENSV1_DEPLOYMENT_BLOCK
|
|
17376
17564
|
}
|
|
17377
17565
|
}
|
|
17378
17566
|
},
|