@ensdomains/ensjs 3.0.0-beta.1 → 3.0.0-beta.11
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/contracts/OldestResolver.json +170 -0
- package/contracts/UniversalResolverv2.json +628 -0
- package/dist/cjs/clients/decorators/subgraph.js.map +1 -1
- package/dist/cjs/clients/decorators/wallet.js +2 -0
- package/dist/cjs/clients/decorators/wallet.js.map +1 -1
- package/dist/cjs/clients/public.js.map +1 -1
- package/dist/cjs/clients/subgraph.js.map +1 -1
- package/dist/cjs/contracts/consts.js +53 -2
- package/dist/cjs/contracts/consts.js.map +1 -1
- package/dist/cjs/contracts/universalResolver.js +46 -1
- package/dist/cjs/contracts/universalResolver.js.map +1 -1
- package/dist/cjs/dns.js +3 -3
- package/dist/cjs/dns.js.map +1 -1
- package/dist/cjs/errors/subgraph.js.map +1 -1
- package/dist/cjs/errors/utils.js +27 -18
- package/dist/cjs/errors/utils.js.map +1 -1
- package/dist/cjs/errors/version.js +1 -1
- package/dist/cjs/errors/version.js.map +1 -1
- package/dist/cjs/functions/dns/{prepareDnsImport.js → getDnsImportData.js} +3 -3
- package/dist/cjs/functions/dns/{prepareDnsImport.js.map → getDnsImportData.js.map} +1 -1
- package/dist/cjs/functions/dns/importDnsName.js +7 -7
- package/dist/cjs/functions/dns/importDnsName.js.map +1 -1
- package/dist/cjs/functions/public/_getAbi.js +2 -2
- package/dist/cjs/functions/public/_getAbi.js.map +1 -1
- package/dist/cjs/functions/public/_getAddr.js +9 -19
- package/dist/cjs/functions/public/_getAddr.js.map +1 -1
- package/dist/cjs/functions/public/_getContentHash.js +1 -1
- package/dist/cjs/functions/public/batch.js.map +1 -1
- package/dist/cjs/functions/public/getAbiRecord.js.map +1 -1
- package/dist/cjs/functions/public/getAddressRecord.js.map +1 -1
- package/dist/cjs/functions/public/getAvailable.js.map +1 -1
- package/dist/cjs/functions/public/getContentHashRecord.js.map +1 -1
- package/dist/cjs/functions/public/getExpiry.js.map +1 -1
- package/dist/cjs/functions/public/getName.js.map +1 -1
- package/dist/cjs/functions/public/getOwner.js.map +1 -1
- package/dist/cjs/functions/public/getPrice.js.map +1 -1
- package/dist/cjs/functions/public/getRecords.js +56 -42
- package/dist/cjs/functions/public/getRecords.js.map +1 -1
- package/dist/cjs/functions/public/getResolver.js.map +1 -1
- package/dist/cjs/functions/public/getSupportedInterfaces.js +1 -1
- package/dist/cjs/functions/public/getSupportedInterfaces.js.map +1 -1
- package/dist/cjs/functions/public/getTextRecord.js.map +1 -1
- package/dist/cjs/functions/public/getWrapperData.js.map +1 -1
- package/dist/cjs/functions/public/getWrapperName.js.map +1 -1
- package/dist/cjs/functions/public/multicallWrapper.js.map +1 -1
- package/dist/cjs/functions/public/universalWrapper.js.map +1 -1
- package/dist/cjs/functions/subgraph/client.js.map +1 -1
- package/dist/cjs/functions/subgraph/filters.js +3 -0
- package/dist/cjs/functions/subgraph/filters.js.map +1 -0
- package/dist/cjs/functions/subgraph/getDecodedName.js.map +1 -1
- package/dist/cjs/functions/subgraph/getNameHistory.js +4 -3
- package/dist/cjs/functions/subgraph/getNameHistory.js.map +1 -1
- package/dist/cjs/functions/subgraph/getNamesForAddress.js +155 -190
- package/dist/cjs/functions/subgraph/getNamesForAddress.js.map +1 -1
- package/dist/cjs/functions/subgraph/getSubgraphRecords.js +34 -26
- package/dist/cjs/functions/subgraph/getSubgraphRecords.js.map +1 -1
- package/dist/cjs/functions/subgraph/getSubgraphRegistrant.js.map +1 -1
- package/dist/cjs/functions/subgraph/getSubnames.js +95 -108
- package/dist/cjs/functions/subgraph/getSubnames.js.map +1 -1
- package/dist/cjs/functions/subgraph/types.js +3 -0
- package/dist/cjs/functions/subgraph/types.js.map +1 -0
- package/dist/cjs/functions/subgraph/utils.js.map +1 -1
- package/dist/cjs/functions/wallet/clearRecords.js +26 -0
- package/dist/cjs/functions/wallet/clearRecords.js.map +1 -0
- package/dist/cjs/functions/wallet/commitName.js.map +1 -1
- package/dist/cjs/functions/wallet/createSubname.js +1 -1
- package/dist/cjs/functions/wallet/createSubname.js.map +1 -1
- package/dist/cjs/functions/wallet/deleteSubname.js.map +1 -1
- package/dist/cjs/functions/wallet/registerName.js.map +1 -1
- package/dist/cjs/functions/wallet/renewNames.js.map +1 -1
- package/dist/cjs/functions/wallet/setAbiRecord.js.map +1 -1
- package/dist/cjs/functions/wallet/setAddressRecord.js.map +1 -1
- package/dist/cjs/functions/wallet/setChildFuses.js +1 -1
- package/dist/cjs/functions/wallet/setChildFuses.js.map +1 -1
- package/dist/cjs/functions/wallet/setContentHashRecord.js.map +1 -1
- package/dist/cjs/functions/wallet/setFuses.js +1 -1
- package/dist/cjs/functions/wallet/setFuses.js.map +1 -1
- package/dist/cjs/functions/wallet/setPrimaryName.js.map +1 -1
- package/dist/cjs/functions/wallet/setRecords.js.map +1 -1
- package/dist/cjs/functions/wallet/setResolver.js.map +1 -1
- package/dist/cjs/functions/wallet/setTextRecord.js.map +1 -1
- package/dist/cjs/functions/wallet/transferName.js.map +1 -1
- package/dist/cjs/functions/wallet/unwrapName.js.map +1 -1
- package/dist/cjs/functions/wallet/wrapName.js +3 -1
- package/dist/cjs/functions/wallet/wrapName.js.map +1 -1
- package/dist/cjs/index.js +1 -2
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/subgraph.js +4 -1
- package/dist/cjs/subgraph.js.map +1 -1
- package/dist/cjs/utils/contentHash.js +60 -131
- package/dist/cjs/utils/contentHash.js.map +1 -1
- package/dist/cjs/utils/encoders/encodeAbi.js +33 -3
- package/dist/cjs/utils/encoders/encodeAbi.js.map +1 -1
- package/dist/cjs/utils/encoders/encodeClearRecords.js +12 -0
- package/dist/cjs/utils/encoders/encodeClearRecords.js.map +1 -0
- package/dist/cjs/utils/encoders/encodeSetAddr.js +5 -16
- package/dist/cjs/utils/encoders/encodeSetAddr.js.map +1 -1
- package/dist/cjs/utils/encoders/encodeSetContentHash.js +1 -4
- package/dist/cjs/utils/encoders/encodeSetContentHash.js.map +1 -1
- package/dist/cjs/utils/format.js +1 -5
- package/dist/cjs/utils/format.js.map +1 -1
- package/dist/cjs/utils/fuses.js +184 -200
- package/dist/cjs/utils/fuses.js.map +1 -1
- package/dist/cjs/utils/generateRecordCallArray.js +6 -10
- package/dist/cjs/utils/generateRecordCallArray.js.map +1 -1
- package/dist/cjs/utils/getRevertErrorData.js +4 -1
- package/dist/cjs/utils/getRevertErrorData.js.map +1 -1
- package/dist/cjs/utils/index.js +31 -7
- package/dist/cjs/utils/index.js.map +1 -1
- package/dist/cjs/utils/normaliseCoinId.js +35 -0
- package/dist/cjs/utils/normaliseCoinId.js.map +1 -0
- package/dist/cjs/utils/registerHelpers.js +3 -1
- package/dist/cjs/utils/registerHelpers.js.map +1 -1
- package/dist/cjs/wallet.js +3 -1
- package/dist/cjs/wallet.js.map +1 -1
- package/dist/esm/clients/decorators/subgraph.js.map +1 -1
- package/dist/esm/clients/decorators/wallet.js +2 -0
- package/dist/esm/clients/decorators/wallet.js.map +1 -1
- package/dist/esm/clients/public.js.map +1 -1
- package/dist/esm/clients/subgraph.js.map +1 -1
- package/dist/esm/contracts/consts.js +53 -2
- package/dist/esm/contracts/consts.js.map +1 -1
- package/dist/esm/contracts/universalResolver.js +46 -1
- package/dist/esm/contracts/universalResolver.js.map +1 -1
- package/dist/esm/dns.js +1 -1
- package/dist/esm/dns.js.map +1 -1
- package/dist/esm/errors/subgraph.js.map +1 -1
- package/dist/esm/errors/utils.js +24 -16
- package/dist/esm/errors/utils.js.map +1 -1
- package/dist/esm/errors/version.js +1 -1
- package/dist/esm/errors/version.js.map +1 -1
- package/dist/esm/functions/dns/{prepareDnsImport.js → getDnsImportData.js} +10 -10
- package/dist/esm/functions/dns/{prepareDnsImport.js.map → getDnsImportData.js.map} +1 -1
- package/dist/esm/functions/dns/getDnsOwner.js +1 -1
- package/dist/esm/functions/dns/importDnsName.js +13 -12
- package/dist/esm/functions/dns/importDnsName.js.map +1 -1
- package/dist/esm/functions/public/_getAbi.js +2 -2
- package/dist/esm/functions/public/_getAbi.js.map +1 -1
- package/dist/esm/functions/public/_getAddr.js +10 -20
- package/dist/esm/functions/public/_getAddr.js.map +1 -1
- package/dist/esm/functions/public/_getContentHash.js +2 -2
- package/dist/esm/functions/public/batch.js +2 -1
- package/dist/esm/functions/public/batch.js.map +1 -1
- package/dist/esm/functions/public/getAbiRecord.js +2 -1
- package/dist/esm/functions/public/getAbiRecord.js.map +1 -1
- package/dist/esm/functions/public/getAddressRecord.js +2 -1
- package/dist/esm/functions/public/getAddressRecord.js.map +1 -1
- package/dist/esm/functions/public/getAvailable.js +2 -1
- package/dist/esm/functions/public/getAvailable.js.map +1 -1
- package/dist/esm/functions/public/getContentHashRecord.js +2 -1
- package/dist/esm/functions/public/getContentHashRecord.js.map +1 -1
- package/dist/esm/functions/public/getExpiry.js +2 -1
- package/dist/esm/functions/public/getExpiry.js.map +1 -1
- package/dist/esm/functions/public/getName.js +2 -1
- package/dist/esm/functions/public/getName.js.map +1 -1
- package/dist/esm/functions/public/getOwner.js +3 -2
- package/dist/esm/functions/public/getOwner.js.map +1 -1
- package/dist/esm/functions/public/getPrice.js +3 -2
- package/dist/esm/functions/public/getPrice.js.map +1 -1
- package/dist/esm/functions/public/getRecords.js +59 -48
- package/dist/esm/functions/public/getRecords.js.map +1 -1
- package/dist/esm/functions/public/getResolver.js +2 -1
- package/dist/esm/functions/public/getResolver.js.map +1 -1
- package/dist/esm/functions/public/getSupportedInterfaces.js +24 -2
- package/dist/esm/functions/public/getSupportedInterfaces.js.map +1 -1
- package/dist/esm/functions/public/getTextRecord.js +2 -1
- package/dist/esm/functions/public/getTextRecord.js.map +1 -1
- package/dist/esm/functions/public/getWrapperData.js +2 -1
- package/dist/esm/functions/public/getWrapperData.js.map +1 -1
- package/dist/esm/functions/public/getWrapperName.js +2 -1
- package/dist/esm/functions/public/getWrapperName.js.map +1 -1
- package/dist/esm/functions/public/multicallWrapper.js.map +1 -1
- package/dist/esm/functions/public/universalWrapper.js.map +1 -1
- package/dist/esm/functions/subgraph/client.js.map +1 -1
- package/dist/esm/functions/subgraph/filters.js +2 -0
- package/dist/esm/functions/subgraph/filters.js.map +1 -0
- package/dist/esm/functions/subgraph/getDecodedName.js +2 -1
- package/dist/esm/functions/subgraph/getDecodedName.js.map +1 -1
- package/dist/esm/functions/subgraph/getNameHistory.js +8 -6
- package/dist/esm/functions/subgraph/getNameHistory.js.map +1 -1
- package/dist/esm/functions/subgraph/getNamesForAddress.js +163 -192
- package/dist/esm/functions/subgraph/getNamesForAddress.js.map +1 -1
- package/dist/esm/functions/subgraph/getSubgraphRecords.js +36 -27
- package/dist/esm/functions/subgraph/getSubgraphRecords.js.map +1 -1
- package/dist/esm/functions/subgraph/getSubgraphRegistrant.js +2 -1
- package/dist/esm/functions/subgraph/getSubgraphRegistrant.js.map +1 -1
- package/dist/esm/functions/subgraph/getSubnames.js +103 -112
- package/dist/esm/functions/subgraph/getSubnames.js.map +1 -1
- package/dist/esm/functions/subgraph/types.js +2 -0
- package/dist/esm/functions/subgraph/types.js.map +1 -0
- package/dist/esm/functions/subgraph/utils.js.map +1 -1
- package/dist/esm/functions/wallet/clearRecords.js +44 -0
- package/dist/esm/functions/wallet/clearRecords.js.map +1 -0
- package/dist/esm/functions/wallet/commitName.js +3 -1
- package/dist/esm/functions/wallet/commitName.js.map +1 -1
- package/dist/esm/functions/wallet/createSubname.js +3 -2
- package/dist/esm/functions/wallet/createSubname.js.map +1 -1
- package/dist/esm/functions/wallet/deleteSubname.js +2 -1
- package/dist/esm/functions/wallet/deleteSubname.js.map +1 -1
- package/dist/esm/functions/wallet/registerName.js +4 -1
- package/dist/esm/functions/wallet/registerName.js.map +1 -1
- package/dist/esm/functions/wallet/renewNames.js +3 -1
- package/dist/esm/functions/wallet/renewNames.js.map +1 -1
- package/dist/esm/functions/wallet/setAbiRecord.js +3 -1
- package/dist/esm/functions/wallet/setAbiRecord.js.map +1 -1
- package/dist/esm/functions/wallet/setAddressRecord.js +2 -1
- package/dist/esm/functions/wallet/setAddressRecord.js.map +1 -1
- package/dist/esm/functions/wallet/setChildFuses.js +3 -2
- package/dist/esm/functions/wallet/setChildFuses.js.map +1 -1
- package/dist/esm/functions/wallet/setContentHashRecord.js +2 -1
- package/dist/esm/functions/wallet/setContentHashRecord.js.map +1 -1
- package/dist/esm/functions/wallet/setFuses.js +4 -3
- package/dist/esm/functions/wallet/setFuses.js.map +1 -1
- package/dist/esm/functions/wallet/setPrimaryName.js +2 -1
- package/dist/esm/functions/wallet/setPrimaryName.js.map +1 -1
- package/dist/esm/functions/wallet/setRecords.js +2 -1
- package/dist/esm/functions/wallet/setRecords.js.map +1 -1
- package/dist/esm/functions/wallet/setResolver.js +2 -1
- package/dist/esm/functions/wallet/setResolver.js.map +1 -1
- package/dist/esm/functions/wallet/setTextRecord.js +2 -1
- package/dist/esm/functions/wallet/setTextRecord.js.map +1 -1
- package/dist/esm/functions/wallet/transferName.js +2 -1
- package/dist/esm/functions/wallet/transferName.js.map +1 -1
- package/dist/esm/functions/wallet/unwrapName.js +2 -1
- package/dist/esm/functions/wallet/unwrapName.js.map +1 -1
- package/dist/esm/functions/wallet/wrapName.js +6 -3
- package/dist/esm/functions/wallet/wrapName.js.map +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/subgraph.js +1 -0
- package/dist/esm/subgraph.js.map +1 -1
- package/dist/esm/utils/contentHash.js +56 -128
- package/dist/esm/utils/contentHash.js.map +1 -1
- package/dist/esm/utils/encoders/encodeAbi.js +30 -2
- package/dist/esm/utils/encoders/encodeAbi.js.map +1 -1
- package/dist/esm/utils/encoders/encodeClearRecords.js +8 -0
- package/dist/esm/utils/encoders/encodeClearRecords.js.map +1 -0
- package/dist/esm/utils/encoders/encodeSetAddr.js +5 -16
- package/dist/esm/utils/encoders/encodeSetAddr.js.map +1 -1
- package/dist/esm/utils/encoders/encodeSetContentHash.js +2 -5
- package/dist/esm/utils/encoders/encodeSetContentHash.js.map +1 -1
- package/dist/esm/utils/format.js +0 -2
- package/dist/esm/utils/format.js.map +1 -1
- package/dist/esm/utils/fuses.js +183 -201
- package/dist/esm/utils/fuses.js.map +1 -1
- package/dist/esm/utils/generateRecordCallArray.js +7 -10
- package/dist/esm/utils/generateRecordCallArray.js.map +1 -1
- package/dist/esm/utils/getRevertErrorData.js +4 -1
- package/dist/esm/utils/getRevertErrorData.js.map +1 -1
- package/dist/esm/utils/index.js +5 -3
- package/dist/esm/utils/index.js.map +1 -1
- package/dist/esm/utils/normaliseCoinId.js +30 -0
- package/dist/esm/utils/normaliseCoinId.js.map +1 -0
- package/dist/esm/utils/registerHelpers.js +4 -2
- package/dist/esm/utils/registerHelpers.js.map +1 -1
- package/dist/esm/wallet.js +1 -0
- package/dist/esm/wallet.js.map +1 -1
- package/dist/types/clients/decorators/public.d.ts +1 -519
- package/dist/types/clients/decorators/public.d.ts.map +1 -1
- package/dist/types/clients/decorators/subgraph.d.ts +2 -520
- package/dist/types/clients/decorators/subgraph.d.ts.map +1 -1
- package/dist/types/clients/decorators/wallet.d.ts +66 -47
- package/dist/types/clients/decorators/wallet.d.ts.map +1 -1
- package/dist/types/clients/public.d.ts +24 -265
- package/dist/types/clients/public.d.ts.map +1 -1
- package/dist/types/clients/subgraph.d.ts +19 -260
- package/dist/types/clients/subgraph.d.ts.map +1 -1
- package/dist/types/clients/wallet.d.ts +60 -92
- package/dist/types/clients/wallet.d.ts.map +1 -1
- package/dist/types/contracts/consts.d.ts +52 -3
- package/dist/types/contracts/consts.d.ts.map +1 -1
- package/dist/types/contracts/universalResolver.d.ts +133 -1
- package/dist/types/contracts/universalResolver.d.ts.map +1 -1
- package/dist/types/dns.d.ts +2 -2
- package/dist/types/dns.d.ts.map +1 -1
- package/dist/types/errors/subgraph.d.ts +4 -4
- package/dist/types/errors/subgraph.d.ts.map +1 -1
- package/dist/types/errors/utils.d.ts +16 -13
- package/dist/types/errors/utils.d.ts.map +1 -1
- package/dist/types/errors/version.d.ts +1 -1
- package/dist/types/errors/version.d.ts.map +1 -1
- package/dist/types/functions/dns/getDnsImportData.d.ts +39 -0
- package/dist/types/functions/dns/{prepareDnsImport.d.ts.map → getDnsImportData.d.ts.map} +1 -1
- package/dist/types/functions/dns/getDnsOwner.d.ts +1 -1
- package/dist/types/functions/dns/importDnsName.d.ts +88 -102
- package/dist/types/functions/dns/importDnsName.d.ts.map +1 -1
- package/dist/types/functions/public/_getAddr.d.ts.map +1 -1
- package/dist/types/functions/public/batch.d.ts +2 -1
- package/dist/types/functions/public/batch.d.ts.map +1 -1
- package/dist/types/functions/public/getAbiRecord.d.ts +2 -1
- package/dist/types/functions/public/getAbiRecord.d.ts.map +1 -1
- package/dist/types/functions/public/getAddressRecord.d.ts +2 -1
- package/dist/types/functions/public/getAddressRecord.d.ts.map +1 -1
- package/dist/types/functions/public/getAvailable.d.ts +2 -1
- package/dist/types/functions/public/getAvailable.d.ts.map +1 -1
- package/dist/types/functions/public/getContentHashRecord.d.ts +2 -1
- package/dist/types/functions/public/getContentHashRecord.d.ts.map +1 -1
- package/dist/types/functions/public/getExpiry.d.ts +2 -1
- package/dist/types/functions/public/getExpiry.d.ts.map +1 -1
- package/dist/types/functions/public/getName.d.ts +2 -1
- package/dist/types/functions/public/getName.d.ts.map +1 -1
- package/dist/types/functions/public/getOwner.d.ts +19 -9
- package/dist/types/functions/public/getOwner.d.ts.map +1 -1
- package/dist/types/functions/public/getPrice.d.ts +3 -2
- package/dist/types/functions/public/getPrice.d.ts.map +1 -1
- package/dist/types/functions/public/getRecords.d.ts +3 -2
- package/dist/types/functions/public/getRecords.d.ts.map +1 -1
- package/dist/types/functions/public/getResolver.d.ts +2 -1
- package/dist/types/functions/public/getResolver.d.ts.map +1 -1
- package/dist/types/functions/public/getSupportedInterfaces.d.ts +41 -4
- package/dist/types/functions/public/getSupportedInterfaces.d.ts.map +1 -1
- package/dist/types/functions/public/getTextRecord.d.ts +2 -1
- package/dist/types/functions/public/getTextRecord.d.ts.map +1 -1
- package/dist/types/functions/public/getWrapperData.d.ts +4 -3
- package/dist/types/functions/public/getWrapperData.d.ts.map +1 -1
- package/dist/types/functions/public/getWrapperName.d.ts +2 -1
- package/dist/types/functions/public/getWrapperName.d.ts.map +1 -1
- package/dist/types/functions/subgraph/client.d.ts +2 -2
- package/dist/types/functions/subgraph/client.d.ts.map +1 -1
- package/dist/types/functions/subgraph/filters.d.ts +693 -0
- package/dist/types/functions/subgraph/filters.d.ts.map +1 -0
- package/dist/types/functions/subgraph/getDecodedName.d.ts +2 -1
- package/dist/types/functions/subgraph/getDecodedName.d.ts.map +1 -1
- package/dist/types/functions/subgraph/getNameHistory.d.ts +2 -1
- package/dist/types/functions/subgraph/getNameHistory.d.ts.map +1 -1
- package/dist/types/functions/subgraph/getNamesForAddress.d.ts +7 -2
- package/dist/types/functions/subgraph/getNamesForAddress.d.ts.map +1 -1
- package/dist/types/functions/subgraph/getSubgraphRecords.d.ts +2 -1
- package/dist/types/functions/subgraph/getSubgraphRecords.d.ts.map +1 -1
- package/dist/types/functions/subgraph/getSubgraphRegistrant.d.ts +2 -1
- package/dist/types/functions/subgraph/getSubgraphRegistrant.d.ts.map +1 -1
- package/dist/types/functions/subgraph/getSubnames.d.ts +5 -2
- package/dist/types/functions/subgraph/getSubnames.d.ts.map +1 -1
- package/dist/types/functions/subgraph/types.d.ts +13 -0
- package/dist/types/functions/subgraph/types.d.ts.map +1 -0
- package/dist/types/functions/subgraph/utils.d.ts +2 -2
- package/dist/types/functions/subgraph/utils.d.ts.map +1 -1
- package/dist/types/functions/wallet/clearRecords.d.ts +555 -0
- package/dist/types/functions/wallet/clearRecords.d.ts.map +1 -0
- package/dist/types/functions/wallet/commitName.d.ts +80 -93
- package/dist/types/functions/wallet/commitName.d.ts.map +1 -1
- package/dist/types/functions/wallet/createSubname.d.ts +82 -96
- package/dist/types/functions/wallet/createSubname.d.ts.map +1 -1
- package/dist/types/functions/wallet/deleteSubname.d.ts +79 -93
- package/dist/types/functions/wallet/deleteSubname.d.ts.map +1 -1
- package/dist/types/functions/wallet/registerName.d.ts +80 -89
- package/dist/types/functions/wallet/registerName.d.ts.map +1 -1
- package/dist/types/functions/wallet/renewNames.d.ts +79 -89
- package/dist/types/functions/wallet/renewNames.d.ts.map +1 -1
- package/dist/types/functions/wallet/setAbiRecord.d.ts +80 -93
- package/dist/types/functions/wallet/setAbiRecord.d.ts.map +1 -1
- package/dist/types/functions/wallet/setAddressRecord.d.ts +79 -93
- package/dist/types/functions/wallet/setAddressRecord.d.ts.map +1 -1
- package/dist/types/functions/wallet/setChildFuses.d.ts +81 -95
- package/dist/types/functions/wallet/setChildFuses.d.ts.map +1 -1
- package/dist/types/functions/wallet/setContentHashRecord.d.ts +79 -93
- package/dist/types/functions/wallet/setContentHashRecord.d.ts.map +1 -1
- package/dist/types/functions/wallet/setFuses.d.ts +81 -95
- package/dist/types/functions/wallet/setFuses.d.ts.map +1 -1
- package/dist/types/functions/wallet/setPrimaryName.d.ts +79 -93
- package/dist/types/functions/wallet/setPrimaryName.d.ts.map +1 -1
- package/dist/types/functions/wallet/setRecords.d.ts +79 -93
- package/dist/types/functions/wallet/setRecords.d.ts.map +1 -1
- package/dist/types/functions/wallet/setResolver.d.ts +79 -93
- package/dist/types/functions/wallet/setResolver.d.ts.map +1 -1
- package/dist/types/functions/wallet/setTextRecord.d.ts +79 -93
- package/dist/types/functions/wallet/setTextRecord.d.ts.map +1 -1
- package/dist/types/functions/wallet/transferName.d.ts +80 -94
- package/dist/types/functions/wallet/transferName.d.ts.map +1 -1
- package/dist/types/functions/wallet/unwrapName.d.ts +79 -93
- package/dist/types/functions/wallet/unwrapName.d.ts.map +1 -1
- package/dist/types/functions/wallet/wrapName.d.ts +81 -95
- package/dist/types/functions/wallet/wrapName.d.ts.map +1 -1
- package/dist/types/index.d.ts +1 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/subgraph.d.ts +1 -0
- package/dist/types/subgraph.d.ts.map +1 -1
- package/dist/types/types.d.ts +3 -1
- package/dist/types/types.d.ts.map +1 -1
- package/dist/types/utils/contentHash.d.ts +10 -11
- package/dist/types/utils/contentHash.d.ts.map +1 -1
- package/dist/types/utils/encoders/encodeAbi.d.ts +8 -5
- package/dist/types/utils/encoders/encodeAbi.d.ts.map +1 -1
- package/dist/types/utils/encoders/encodeClearRecords.d.ts +3 -0
- package/dist/types/utils/encoders/encodeClearRecords.d.ts.map +1 -0
- package/dist/types/utils/encoders/encodeSetAddr.d.ts.map +1 -1
- package/dist/types/utils/encoders/encodeSetContentHash.d.ts.map +1 -1
- package/dist/types/utils/format.d.ts +0 -2
- package/dist/types/utils/format.d.ts.map +1 -1
- package/dist/types/utils/fuses.d.ts +164 -125
- package/dist/types/utils/fuses.d.ts.map +1 -1
- package/dist/types/utils/generateRecordCallArray.d.ts +5 -5
- package/dist/types/utils/generateRecordCallArray.d.ts.map +1 -1
- package/dist/types/utils/getRevertErrorData.d.ts.map +1 -1
- package/dist/types/utils/index.d.ts +5 -3
- package/dist/types/utils/index.d.ts.map +1 -1
- package/dist/types/utils/normaliseCoinId.d.ts +10 -0
- package/dist/types/utils/normaliseCoinId.d.ts.map +1 -0
- package/dist/types/utils/registerHelpers.d.ts +2 -2
- package/dist/types/utils/registerHelpers.d.ts.map +1 -1
- package/dist/types/wallet.d.ts +18 -17
- package/dist/types/wallet.d.ts.map +1 -1
- package/package.json +9 -9
- package/src/clients/decorators/subgraph.ts +1 -0
- package/src/clients/decorators/wallet.ts +41 -3
- package/src/clients/public.ts +3 -2
- package/src/clients/subgraph.ts +3 -2
- package/src/clients/wallet.ts +1 -1
- package/src/contracts/consts.ts +58 -13
- package/src/contracts/universalResolver.ts +46 -1
- package/src/dns.ts +7 -5
- package/src/errors/subgraph.ts +4 -4
- package/src/errors/utils.ts +29 -18
- package/src/errors/version.ts +1 -1
- package/src/functions/dns/{prepareDnsImport.ts → getDnsImportData.ts} +13 -13
- package/src/functions/dns/getDnsOwner.ts +1 -1
- package/src/functions/dns/importDnsName.ts +21 -15
- package/src/functions/public/_getAbi.ts +2 -2
- package/src/functions/public/_getAddr.ts +16 -23
- package/src/functions/public/_getContentHash.ts +2 -2
- package/src/functions/public/batch.ts +2 -1
- package/src/functions/public/getAbiRecord.ts +2 -1
- package/src/functions/public/getAddressRecord.ts +2 -1
- package/src/functions/public/getAvailable.ts +2 -1
- package/src/functions/public/getContentHashRecord.ts +2 -1
- package/src/functions/public/getExpiry.ts +2 -1
- package/src/functions/public/getName.ts +3 -2
- package/src/functions/public/getOwner.ts +54 -33
- package/src/functions/public/getPrice.ts +3 -2
- package/src/functions/public/getRecords.ts +130 -114
- package/src/functions/public/getResolver.ts +3 -2
- package/src/functions/public/getSupportedInterfaces.ts +70 -10
- package/src/functions/public/getTextRecord.ts +2 -1
- package/src/functions/public/getWrapperData.ts +5 -4
- package/src/functions/public/getWrapperName.ts +3 -2
- package/src/functions/public/multicallWrapper.ts +1 -1
- package/src/functions/public/universalWrapper.ts +1 -1
- package/src/functions/subgraph/client.ts +2 -2
- package/src/functions/subgraph/filters.ts +702 -0
- package/src/functions/subgraph/getDecodedName.ts +2 -1
- package/src/functions/subgraph/getNameHistory.ts +8 -6
- package/src/functions/subgraph/getNamesForAddress.ts +199 -195
- package/src/functions/subgraph/getSubgraphRecords.ts +65 -33
- package/src/functions/subgraph/getSubgraphRegistrant.ts +2 -1
- package/src/functions/subgraph/getSubnames.ts +123 -114
- package/src/functions/subgraph/types.ts +13 -0
- package/src/functions/subgraph/utils.ts +2 -2
- package/src/functions/wallet/clearRecords.ts +97 -0
- package/src/functions/wallet/commitName.ts +3 -1
- package/src/functions/wallet/createSubname.ts +6 -5
- package/src/functions/wallet/deleteSubname.ts +2 -1
- package/src/functions/wallet/registerName.ts +4 -1
- package/src/functions/wallet/renewNames.ts +3 -1
- package/src/functions/wallet/setAbiRecord.ts +3 -1
- package/src/functions/wallet/setAddressRecord.ts +2 -1
- package/src/functions/wallet/setChildFuses.ts +5 -4
- package/src/functions/wallet/setContentHashRecord.ts +2 -1
- package/src/functions/wallet/setFuses.ts +8 -4
- package/src/functions/wallet/setPrimaryName.ts +2 -1
- package/src/functions/wallet/setRecords.ts +2 -1
- package/src/functions/wallet/setResolver.ts +2 -1
- package/src/functions/wallet/setTextRecord.ts +2 -1
- package/src/functions/wallet/transferName.ts +3 -2
- package/src/functions/wallet/unwrapName.ts +2 -1
- package/src/functions/wallet/wrapName.ts +10 -4
- package/src/index.ts +0 -1
- package/src/subgraph.ts +5 -0
- package/src/types.ts +6 -3
- package/src/utils/contentHash.ts +65 -113
- package/src/utils/encoders/encodeAbi.ts +37 -8
- package/src/utils/encoders/encodeClearRecords.ts +9 -0
- package/src/utils/encoders/encodeSetAddr.ts +5 -16
- package/src/utils/encoders/encodeSetContentHash.ts +2 -4
- package/src/utils/format.ts +0 -6
- package/src/utils/fuses.ts +312 -308
- package/src/utils/generateRecordCallArray.ts +10 -14
- package/src/utils/getRevertErrorData.ts +3 -1
- package/src/utils/index.ts +37 -5
- package/src/utils/normaliseCoinId.ts +36 -0
- package/src/utils/registerHelpers.ts +5 -3
- package/src/wallet.ts +41 -0
- package/dist/types/functions/dns/prepareDnsImport.d.ts +0 -39
- package/src/@types/@ensdomains/content-hash.d.ts +0 -1
- package/src/functions/dns/getDnsOwner.test.ts +0 -195
- package/src/functions/dns/importDnsName.test.ts +0 -117
- package/src/functions/dns/prepareDnsImport.test.ts +0 -115
- package/src/functions/public/batch.test.ts +0 -67
- package/src/functions/public/ccip.test.ts +0 -78
- package/src/functions/public/getAbiRecord.test.ts +0 -174
- package/src/functions/public/getAddressRecord.test.ts +0 -83
- package/src/functions/public/getAvailable.test.ts +0 -17
- package/src/functions/public/getContentHashRecord.test.ts +0 -28
- package/src/functions/public/getExpiry.test.ts +0 -48
- package/src/functions/public/getName.test.ts +0 -66
- package/src/functions/public/getOwner.test.ts +0 -87
- package/src/functions/public/getPrice.test.ts +0 -45
- package/src/functions/public/getRecords.test.ts +0 -49
- package/src/functions/public/getResolver.test.ts +0 -12
- package/src/functions/public/getTextRecord.test.ts +0 -20
- package/src/functions/public/getWrapperData.test.ts +0 -79
- package/src/functions/public/getWrapperName.test.ts +0 -19
- package/src/functions/subgraph/client.test.ts +0 -170
- package/src/functions/subgraph/getDecodedName.test.ts +0 -31
- package/src/functions/subgraph/getNameHistory.test.ts +0 -39
- package/src/functions/subgraph/getNamesForAddress.test.ts +0 -244
- package/src/functions/subgraph/getSubgraphRecords.test.ts +0 -74
- package/src/functions/subgraph/getSubgraphRegistrant.test.ts +0 -34
- package/src/functions/subgraph/getSubnames.test.ts +0 -202
- package/src/functions/wallet/commitName.test.ts +0 -58
- package/src/functions/wallet/createSubname.test.ts +0 -73
- package/src/functions/wallet/deleteSubname.test.ts +0 -150
- package/src/functions/wallet/registerName.test.ts +0 -81
- package/src/functions/wallet/renewNames.test.ts +0 -92
- package/src/functions/wallet/setAbiRecord.test.ts +0 -156
- package/src/functions/wallet/setAddressRecord.test.ts +0 -121
- package/src/functions/wallet/setChildFuses.test.ts +0 -97
- package/src/functions/wallet/setContentHashRecord.test.ts +0 -69
- package/src/functions/wallet/setFuses.test.ts +0 -287
- package/src/functions/wallet/setPrimaryName.test.ts +0 -71
- package/src/functions/wallet/setRecords.test.ts +0 -127
- package/src/functions/wallet/setResolver.test.ts +0 -114
- package/src/functions/wallet/setTextRecord.test.ts +0 -67
- package/src/functions/wallet/transferName.test.ts +0 -201
- package/src/functions/wallet/unwrapName.test.ts +0 -93
- package/src/functions/wallet/wrapName.test.ts +0 -195
- package/src/utils/generateRecordCallArray.test.ts +0 -84
- package/src/utils/labels.test.ts +0 -163
- package/src/utils/makeLabelNodeAndParent.test.ts +0 -11
- package/src/utils/makeSafeSecondsDate.test.ts +0 -14
- package/src/utils/normalise.test.ts +0 -35
- package/src/utils/ownerFromContract.test.ts +0 -52
- package/src/utils/registerHelpers.test.ts +0 -159
- package/src/utils/validation.test.ts +0 -170
- package/src/utils/wrapper.test.ts +0 -46
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
import type { Account, Transport, WalletClient } from 'viem'
|
|
2
2
|
import type { ChainWithEns } from '../../contracts/consts.js'
|
|
3
|
+
import clearRecords, {
|
|
4
|
+
type ClearRecordsParameters,
|
|
5
|
+
type ClearRecordsReturnType,
|
|
6
|
+
} from '../../functions/wallet/clearRecords.js'
|
|
3
7
|
import commitName, {
|
|
4
8
|
type CommitNameParameters,
|
|
5
9
|
type CommitNameReturnType,
|
|
@@ -73,6 +77,35 @@ export type EnsWalletActions<
|
|
|
73
77
|
TChain extends ChainWithEns,
|
|
74
78
|
TAccount extends Account | undefined,
|
|
75
79
|
> = {
|
|
80
|
+
/**
|
|
81
|
+
* Clears the records for a name on a resolver.
|
|
82
|
+
* @param parameters - {@link ClearRecordsParameters}
|
|
83
|
+
* @returns Transaction hash. {@link ClearRecordsReturnType}
|
|
84
|
+
*
|
|
85
|
+
* @example
|
|
86
|
+
* import { createWalletClient, custom } from 'viem'
|
|
87
|
+
* import { mainnet } from 'viem/chains'
|
|
88
|
+
* import { addEnsContracts, ensWalletActions } from '@ensdomains/ensjs'
|
|
89
|
+
*
|
|
90
|
+
* const wallet = createWalletClient({
|
|
91
|
+
* chain: addEnsContracts(mainnet),
|
|
92
|
+
* transport: custom(window.ethereum),
|
|
93
|
+
* }).extend(ensWalletActions)
|
|
94
|
+
* const hash = await wallet.clearRecords({
|
|
95
|
+
* name: 'ens.eth',
|
|
96
|
+
* resolverAddress: '0x4976fb03C32e5B8cfe2b6cCB31c09Ba78EBaBa41',
|
|
97
|
+
* })
|
|
98
|
+
* // 0x...
|
|
99
|
+
*/
|
|
100
|
+
clearRecords: ({
|
|
101
|
+
name,
|
|
102
|
+
resolverAddress,
|
|
103
|
+
...txArgs
|
|
104
|
+
}: ClearRecordsParameters<
|
|
105
|
+
TChain,
|
|
106
|
+
TAccount,
|
|
107
|
+
TChain
|
|
108
|
+
>) => Promise<ClearRecordsReturnType>
|
|
76
109
|
/**
|
|
77
110
|
* Commits a name to be registered
|
|
78
111
|
* @param parameters - {@link CommitNameParameters}
|
|
@@ -81,7 +114,8 @@ export type EnsWalletActions<
|
|
|
81
114
|
* @example
|
|
82
115
|
* import { createWalletClient, custom } from 'viem'
|
|
83
116
|
* import { mainnet } from 'viem/chains'
|
|
84
|
-
* import { addEnsContracts, ensWalletActions
|
|
117
|
+
* import { addEnsContracts, ensWalletActions } from '@ensdomains/ensjs'
|
|
118
|
+
* import { randomSecret } from '@ensdomains/ensjs/utils'
|
|
85
119
|
*
|
|
86
120
|
* const wallet = createWalletClient({
|
|
87
121
|
* chain: addEnsContracts(mainnet),
|
|
@@ -183,7 +217,8 @@ export type EnsWalletActions<
|
|
|
183
217
|
* @example
|
|
184
218
|
* import { createPublicClient, createWalletClient, http, custom } from 'viem'
|
|
185
219
|
* import { mainnet } from 'viem/chains'
|
|
186
|
-
* import { addEnsContracts, ensPublicActions, ensWalletActions
|
|
220
|
+
* import { addEnsContracts, ensPublicActions, ensWalletActions } from '@ensdomains/ensjs'
|
|
221
|
+
* import { randomSecret } from '@ensdomains/ensjs/utils'
|
|
187
222
|
*
|
|
188
223
|
* const mainnetWithEns = addEnsContracts(mainnet)
|
|
189
224
|
* const client = createPublicClient({
|
|
@@ -279,7 +314,8 @@ export type EnsWalletActions<
|
|
|
279
314
|
* import abi from './abi.json'
|
|
280
315
|
* import { createWalletClient, custom } from 'viem'
|
|
281
316
|
* import { mainnet } from 'viem/chains'
|
|
282
|
-
* import { addEnsContracts, ensWalletActions
|
|
317
|
+
* import { addEnsContracts, ensWalletActions } from '@ensdomains/ensjs'
|
|
318
|
+
* import { encodeAbi } from '@ensdomains/ensjs/utils'
|
|
283
319
|
*
|
|
284
320
|
* const wallet = createWalletClient({
|
|
285
321
|
* chain: addEnsContracts(mainnet),
|
|
@@ -492,6 +528,7 @@ export type EnsWalletActions<
|
|
|
492
528
|
setRecords: ({
|
|
493
529
|
name,
|
|
494
530
|
resolverAddress,
|
|
531
|
+
// eslint-disable-next-line @typescript-eslint/no-shadow
|
|
495
532
|
clearRecords,
|
|
496
533
|
contentHash,
|
|
497
534
|
texts,
|
|
@@ -687,6 +724,7 @@ export const ensWalletActions = <
|
|
|
687
724
|
>(
|
|
688
725
|
client: WalletClient<TTransport, TChain, TAccount>,
|
|
689
726
|
): EnsWalletActions<TChain, TAccount> => ({
|
|
727
|
+
clearRecords: (parameters) => clearRecords(client, parameters),
|
|
690
728
|
commitName: (parameters) => commitName(client, parameters),
|
|
691
729
|
createSubname: (parameters) => createSubname(client, parameters),
|
|
692
730
|
deleteSubname: (parameters) => deleteSubname(client, parameters),
|
package/src/clients/public.ts
CHANGED
|
@@ -3,6 +3,7 @@ import {
|
|
|
3
3
|
type Chain,
|
|
4
4
|
type Client,
|
|
5
5
|
type ClientConfig,
|
|
6
|
+
type PublicRpcSchema,
|
|
6
7
|
type Transport,
|
|
7
8
|
} from 'viem'
|
|
8
9
|
import { addEnsContracts } from '../contracts/addEnsContracts.js'
|
|
@@ -21,7 +22,7 @@ export type EnsPublicClientConfig<
|
|
|
21
22
|
ClientConfig<TTransport, TChain>,
|
|
22
23
|
'batch' | 'key' | 'name' | 'pollingInterval' | 'transport'
|
|
23
24
|
> & {
|
|
24
|
-
chain:
|
|
25
|
+
chain: TChain
|
|
25
26
|
}
|
|
26
27
|
|
|
27
28
|
export type EnsPublicClient<
|
|
@@ -32,7 +33,7 @@ export type EnsPublicClient<
|
|
|
32
33
|
TTransport,
|
|
33
34
|
TChain,
|
|
34
35
|
undefined,
|
|
35
|
-
|
|
36
|
+
PublicRpcSchema,
|
|
36
37
|
EnsPublicActions & EnsSubgraphActions
|
|
37
38
|
>
|
|
38
39
|
>
|
package/src/clients/subgraph.ts
CHANGED
|
@@ -3,6 +3,7 @@ import {
|
|
|
3
3
|
type Chain,
|
|
4
4
|
type Client,
|
|
5
5
|
type ClientConfig,
|
|
6
|
+
type PublicRpcSchema,
|
|
6
7
|
type Transport,
|
|
7
8
|
} from 'viem'
|
|
8
9
|
import { addEnsContracts } from '../contracts/addEnsContracts.js'
|
|
@@ -20,14 +21,14 @@ export type EnsSubgraphClientConfig<
|
|
|
20
21
|
ClientConfig<TTransport, TChain>,
|
|
21
22
|
'batch' | 'key' | 'name' | 'pollingInterval' | 'transport'
|
|
22
23
|
> & {
|
|
23
|
-
chain:
|
|
24
|
+
chain: TChain
|
|
24
25
|
}
|
|
25
26
|
|
|
26
27
|
export type EnsSubgraphClient<
|
|
27
28
|
TTransport extends Transport = Transport,
|
|
28
29
|
TChain extends ChainWithEns = ChainWithEns,
|
|
29
30
|
> = Prettify<
|
|
30
|
-
Client<TTransport, TChain, undefined,
|
|
31
|
+
Client<TTransport, TChain, undefined, PublicRpcSchema, EnsSubgraphActions>
|
|
31
32
|
>
|
|
32
33
|
|
|
33
34
|
/**
|
package/src/clients/wallet.ts
CHANGED
|
@@ -26,7 +26,7 @@ export type EnsWalletClientConfig<
|
|
|
26
26
|
ClientConfig<TTransport, TChain, TAccountOrAddress>,
|
|
27
27
|
'account' | 'chain' | 'key' | 'name' | 'pollingInterval' | 'transport'
|
|
28
28
|
> & {
|
|
29
|
-
chain:
|
|
29
|
+
chain: TChain
|
|
30
30
|
}
|
|
31
31
|
|
|
32
32
|
export type EnsWalletClient<
|
package/src/contracts/consts.ts
CHANGED
|
@@ -12,7 +12,7 @@ type ChainContract = {
|
|
|
12
12
|
blockCreated?: number
|
|
13
13
|
}
|
|
14
14
|
|
|
15
|
-
export const supportedChains = ['homestead', 'goerli'] as const
|
|
15
|
+
export const supportedChains = ['homestead', 'goerli', 'sepolia'] as const
|
|
16
16
|
export const supportedContracts = [
|
|
17
17
|
'ensBaseRegistrarImplementation',
|
|
18
18
|
'ensDnsRegistrar',
|
|
@@ -22,6 +22,8 @@ export const supportedContracts = [
|
|
|
22
22
|
'ensReverseRegistrar',
|
|
23
23
|
'ensBulkRenewal',
|
|
24
24
|
'ensDnssecImpl',
|
|
25
|
+
'ensUniversalResolver',
|
|
26
|
+
'ensRegistry',
|
|
25
27
|
] as const
|
|
26
28
|
|
|
27
29
|
export type SupportedChain = (typeof supportedChains)[number]
|
|
@@ -29,6 +31,9 @@ export type SupportedContract = (typeof supportedContracts)[number]
|
|
|
29
31
|
|
|
30
32
|
export const addresses = {
|
|
31
33
|
homestead: {
|
|
34
|
+
ensRegistry: {
|
|
35
|
+
address: '0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e',
|
|
36
|
+
},
|
|
32
37
|
ensBaseRegistrarImplementation: {
|
|
33
38
|
address: '0x57f1887a8bf19b14fc0df6fd9b2acc9af147ea85',
|
|
34
39
|
},
|
|
@@ -53,8 +58,14 @@ export const addresses = {
|
|
|
53
58
|
ensDnssecImpl: {
|
|
54
59
|
address: '0x21745FF62108968fBf5aB1E07961CC0FCBeB2364',
|
|
55
60
|
},
|
|
61
|
+
ensUniversalResolver: {
|
|
62
|
+
address: '0x20814C8e689187DfF7C93A9239ea22385d13b9F1',
|
|
63
|
+
},
|
|
56
64
|
},
|
|
57
65
|
goerli: {
|
|
66
|
+
ensRegistry: {
|
|
67
|
+
address: '0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e',
|
|
68
|
+
},
|
|
58
69
|
ensBaseRegistrarImplementation: {
|
|
59
70
|
address: '0x57f1887a8bf19b14fc0df6fd9b2acc9af147ea85',
|
|
60
71
|
},
|
|
@@ -68,7 +79,7 @@ export const addresses = {
|
|
|
68
79
|
address: '0x114D4603199df73e7D157787f8778E21fCd13066',
|
|
69
80
|
},
|
|
70
81
|
ensPublicResolver: {
|
|
71
|
-
address: '
|
|
82
|
+
address: '0xd7a4F6473f32aC2Af804B3686AE8F1932bC35750',
|
|
72
83
|
},
|
|
73
84
|
ensReverseRegistrar: {
|
|
74
85
|
address: '0x6d9F26FfBcF1c6f0bAe9F2C1f7fBe8eE6B1d8d4d',
|
|
@@ -79,14 +90,46 @@ export const addresses = {
|
|
|
79
90
|
ensDnssecImpl: {
|
|
80
91
|
address: '0xF427c4AdED8B6dfde604865c1a7E953B160C26f0',
|
|
81
92
|
},
|
|
93
|
+
ensUniversalResolver: {
|
|
94
|
+
address: '0xaac727b9451268d7779F699dbaF6c2eAE571C369',
|
|
95
|
+
},
|
|
82
96
|
},
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
97
|
+
sepolia: {
|
|
98
|
+
ensRegistry: {
|
|
99
|
+
address: '0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e',
|
|
100
|
+
},
|
|
101
|
+
ensBaseRegistrarImplementation: {
|
|
102
|
+
address: '0x57f1887a8bf19b14fc0df6fd9b2acc9af147ea85',
|
|
103
|
+
},
|
|
104
|
+
ensDnsRegistrar: {
|
|
105
|
+
address: '0x537625B0D7901FD20C57850d61580Bf1624Ef146',
|
|
106
|
+
},
|
|
107
|
+
ensEthRegistrarController: {
|
|
108
|
+
address: '0xFED6a969AaA60E4961FCD3EBF1A2e8913ac65B72',
|
|
109
|
+
},
|
|
110
|
+
ensNameWrapper: {
|
|
111
|
+
address: '0x0635513f179D50A207757E05759CbD106d7dFcE8',
|
|
112
|
+
},
|
|
113
|
+
ensPublicResolver: {
|
|
114
|
+
address: '0x8FADE66B79cC9f707aB26799354482EB93a5B7dD',
|
|
115
|
+
},
|
|
116
|
+
ensReverseRegistrar: {
|
|
117
|
+
address: '0xA0a1AbcDAe1a2a4A2EF8e9113Ff0e02DD81DC0C6',
|
|
118
|
+
},
|
|
119
|
+
ensBulkRenewal: {
|
|
120
|
+
address: '0x4EF77b90762Eddb33C8Eba5B5a19558DaE53D7a1',
|
|
121
|
+
},
|
|
122
|
+
ensDnssecImpl: {
|
|
123
|
+
address: '0x7b3ada1c8f012bae747cf99d6cbbf70d040b84cf',
|
|
124
|
+
},
|
|
125
|
+
ensUniversalResolver: {
|
|
126
|
+
address: '0x64da0719987c29e0CEC0113D605996c6a4D4aB0c',
|
|
127
|
+
},
|
|
128
|
+
},
|
|
129
|
+
} as const satisfies Record<
|
|
130
|
+
SupportedChain,
|
|
131
|
+
Record<SupportedContract, { address: Address }>
|
|
132
|
+
>
|
|
90
133
|
|
|
91
134
|
type Subgraphs = {
|
|
92
135
|
ens: {
|
|
@@ -105,10 +148,12 @@ export const subgraphs = {
|
|
|
105
148
|
url: 'https://api.thegraph.com/subgraphs/name/ensdomains/ensgoerli',
|
|
106
149
|
},
|
|
107
150
|
},
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
151
|
+
sepolia: {
|
|
152
|
+
ens: {
|
|
153
|
+
url: 'https://api.studio.thegraph.com/query/49574/enssepolia/version/latest',
|
|
154
|
+
},
|
|
155
|
+
},
|
|
156
|
+
} as const satisfies Record<SupportedChain, Subgraphs>
|
|
112
157
|
|
|
113
158
|
type EnsChainContracts = {
|
|
114
159
|
ensBaseRegistrarImplementation: ChainContract
|
|
@@ -9,6 +9,41 @@ export const universalResolverErrors = [
|
|
|
9
9
|
name: 'ResolverWildcardNotSupported',
|
|
10
10
|
type: 'error',
|
|
11
11
|
},
|
|
12
|
+
{
|
|
13
|
+
inputs: [],
|
|
14
|
+
name: 'ResolverNotContract',
|
|
15
|
+
type: 'error',
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
inputs: [
|
|
19
|
+
{
|
|
20
|
+
name: 'returnData',
|
|
21
|
+
type: 'bytes',
|
|
22
|
+
},
|
|
23
|
+
],
|
|
24
|
+
name: 'ResolverError',
|
|
25
|
+
type: 'error',
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
inputs: [
|
|
29
|
+
{
|
|
30
|
+
components: [
|
|
31
|
+
{
|
|
32
|
+
name: 'status',
|
|
33
|
+
type: 'uint16',
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
name: 'message',
|
|
37
|
+
type: 'string',
|
|
38
|
+
},
|
|
39
|
+
],
|
|
40
|
+
name: 'errors',
|
|
41
|
+
type: 'tuple[]',
|
|
42
|
+
},
|
|
43
|
+
],
|
|
44
|
+
name: 'HttpError',
|
|
45
|
+
type: 'error',
|
|
46
|
+
},
|
|
12
47
|
] as const
|
|
13
48
|
|
|
14
49
|
export const universalResolverReverseSnippet = [
|
|
@@ -77,8 +112,18 @@ export const universalResolverResolveArraySnippet = [
|
|
|
77
112
|
name: 'resolve',
|
|
78
113
|
outputs: [
|
|
79
114
|
{
|
|
115
|
+
components: [
|
|
116
|
+
{
|
|
117
|
+
name: 'success',
|
|
118
|
+
type: 'bool',
|
|
119
|
+
},
|
|
120
|
+
{
|
|
121
|
+
name: 'returnData',
|
|
122
|
+
type: 'bytes',
|
|
123
|
+
},
|
|
124
|
+
],
|
|
80
125
|
name: '',
|
|
81
|
-
type: '
|
|
126
|
+
type: 'tuple[]',
|
|
82
127
|
},
|
|
83
128
|
{
|
|
84
129
|
name: '',
|
package/src/dns.ts
CHANGED
|
@@ -1,3 +1,8 @@
|
|
|
1
|
+
export {
|
|
2
|
+
default as getDnsImportData,
|
|
3
|
+
type GetDnsImportDataParameters,
|
|
4
|
+
type GetDnsImportDataReturnType,
|
|
5
|
+
} from './functions/dns/getDnsImportData.js'
|
|
1
6
|
export {
|
|
2
7
|
default as getDnsOwner,
|
|
3
8
|
type GetDnsOwnerParameters,
|
|
@@ -5,12 +10,9 @@ export {
|
|
|
5
10
|
} from './functions/dns/getDnsOwner.js'
|
|
6
11
|
export {
|
|
7
12
|
default as importDnsName,
|
|
13
|
+
type ImportDnsNameDataParameters,
|
|
14
|
+
type ImportDnsNameDataReturnType,
|
|
8
15
|
type ImportDnsNameParameters,
|
|
9
16
|
type ImportDnsNameReturnType,
|
|
10
17
|
} from './functions/dns/importDnsName.js'
|
|
11
|
-
export {
|
|
12
|
-
default as prepareDnsImport,
|
|
13
|
-
type PrepareDnsImportParameters,
|
|
14
|
-
type PrepareDnsImportReturnType,
|
|
15
|
-
} from './functions/dns/prepareDnsImport.js'
|
|
16
18
|
export type { Endpoint } from './functions/dns/types.js'
|
package/src/errors/subgraph.ts
CHANGED
|
@@ -3,7 +3,7 @@ import { BaseError } from './base.js'
|
|
|
3
3
|
export class InvalidFilterKeyError extends BaseError {
|
|
4
4
|
filterKey: string
|
|
5
5
|
|
|
6
|
-
supportedFilterKeys: string[]
|
|
6
|
+
supportedFilterKeys: readonly string[]
|
|
7
7
|
|
|
8
8
|
override name = 'InvalidFilterKeyError'
|
|
9
9
|
|
|
@@ -12,7 +12,7 @@ export class InvalidFilterKeyError extends BaseError {
|
|
|
12
12
|
supportedFilterKeys,
|
|
13
13
|
}: {
|
|
14
14
|
filterKey: string
|
|
15
|
-
supportedFilterKeys: string[]
|
|
15
|
+
supportedFilterKeys: readonly string[]
|
|
16
16
|
}) {
|
|
17
17
|
super(`Invalid filter key: ${filterKey}`, {
|
|
18
18
|
metaMessages: [
|
|
@@ -25,7 +25,7 @@ export class InvalidFilterKeyError extends BaseError {
|
|
|
25
25
|
}
|
|
26
26
|
|
|
27
27
|
export class FilterKeyRequiredError extends BaseError {
|
|
28
|
-
supportedFilterKeys: string[]
|
|
28
|
+
supportedFilterKeys: readonly string[]
|
|
29
29
|
|
|
30
30
|
override name = 'FilterKeyRequiredError'
|
|
31
31
|
|
|
@@ -33,7 +33,7 @@ export class FilterKeyRequiredError extends BaseError {
|
|
|
33
33
|
supportedFilterKeys,
|
|
34
34
|
details,
|
|
35
35
|
}: {
|
|
36
|
-
supportedFilterKeys: string[]
|
|
36
|
+
supportedFilterKeys: readonly string[]
|
|
37
37
|
details?: string
|
|
38
38
|
}) {
|
|
39
39
|
super('At least one filter key is required', {
|
package/src/errors/utils.ts
CHANGED
|
@@ -5,13 +5,13 @@ export class FusesOutOfRangeError extends BaseError {
|
|
|
5
5
|
|
|
6
6
|
constructor({
|
|
7
7
|
fuses,
|
|
8
|
-
minimum =
|
|
9
|
-
maximum =
|
|
8
|
+
minimum = 0n,
|
|
9
|
+
maximum = 2n ** 32n,
|
|
10
10
|
details,
|
|
11
11
|
}: {
|
|
12
|
-
fuses:
|
|
13
|
-
minimum?:
|
|
14
|
-
maximum?:
|
|
12
|
+
fuses: bigint
|
|
13
|
+
minimum?: bigint
|
|
14
|
+
maximum?: bigint
|
|
15
15
|
details?: string
|
|
16
16
|
}) {
|
|
17
17
|
super('Fuse value out of range', {
|
|
@@ -24,21 +24,16 @@ export class FusesOutOfRangeError extends BaseError {
|
|
|
24
24
|
}
|
|
25
25
|
}
|
|
26
26
|
|
|
27
|
-
export class FusesNonIntegerError extends BaseError {
|
|
28
|
-
override name = 'FusesNonIntegerError'
|
|
29
|
-
|
|
30
|
-
constructor({ fuses, details }: { fuses: number; details?: string }) {
|
|
31
|
-
super('Fuse was not an integer, which is required', {
|
|
32
|
-
metaMessages: [`- Fuse value: ${fuses}`],
|
|
33
|
-
details,
|
|
34
|
-
})
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
|
|
38
27
|
export class FusesRestrictionNotAllowedError extends BaseError {
|
|
39
28
|
override name = 'FusesRestrictionNotAllowed'
|
|
40
29
|
|
|
41
|
-
constructor({
|
|
30
|
+
constructor({
|
|
31
|
+
fuses,
|
|
32
|
+
details,
|
|
33
|
+
}: {
|
|
34
|
+
fuses: object | bigint
|
|
35
|
+
details?: string
|
|
36
|
+
}) {
|
|
42
37
|
super('Restriction not allowed', {
|
|
43
38
|
metaMessages: [`- Fuse value: ${fuses}`],
|
|
44
39
|
details,
|
|
@@ -76,7 +71,7 @@ export class FusesInvalidNamedFuseError extends BaseError {
|
|
|
76
71
|
export class FusesFuseNotAllowedError extends BaseError {
|
|
77
72
|
override name = 'FusesFuseNotAllowedError'
|
|
78
73
|
|
|
79
|
-
constructor({ fuse }: { fuse: string |
|
|
74
|
+
constructor({ fuse }: { fuse: string | bigint }) {
|
|
80
75
|
super(`${fuse} is not allowed for this operation`)
|
|
81
76
|
}
|
|
82
77
|
}
|
|
@@ -159,3 +154,19 @@ export class CampaignReferenceTooLargeError extends BaseError {
|
|
|
159
154
|
})
|
|
160
155
|
}
|
|
161
156
|
}
|
|
157
|
+
|
|
158
|
+
export class InvalidContentHashError extends BaseError {
|
|
159
|
+
override name = 'InvalidContentHashError'
|
|
160
|
+
|
|
161
|
+
constructor() {
|
|
162
|
+
super('Invalid content hash')
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
export class UnknownContentTypeError extends BaseError {
|
|
167
|
+
override name = 'UnknownContentTypeError'
|
|
168
|
+
|
|
169
|
+
constructor({ contentType }: { contentType: string }) {
|
|
170
|
+
super(`Unknown content type: ${contentType}`)
|
|
171
|
+
}
|
|
172
|
+
}
|
package/src/errors/version.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const version = 'v3.0.0-beta.
|
|
1
|
+
export const version = 'v3.0.0-beta.11'
|
|
@@ -13,7 +13,7 @@ import { DnsNewerRecordTypeAvailableError } from '../../errors/dns.js'
|
|
|
13
13
|
import { packetToBytes } from '../../utils/hexEncodedName.js'
|
|
14
14
|
import type { Endpoint } from './types.js'
|
|
15
15
|
|
|
16
|
-
export type
|
|
16
|
+
export type GetDnsImportDataParameters = {
|
|
17
17
|
/** Name to prepare for DNS import */
|
|
18
18
|
name: string
|
|
19
19
|
/** An RFC-1035 compatible DNS endpoint to use (default: `https://cloudflare-dns.com/dns-query`) */
|
|
@@ -25,7 +25,7 @@ export type RrSetWithSig = {
|
|
|
25
25
|
sig: Uint8Array
|
|
26
26
|
}
|
|
27
27
|
|
|
28
|
-
export type
|
|
28
|
+
export type GetDnsImportDataReturnType = {
|
|
29
29
|
rrsets: RrSetWithSig[]
|
|
30
30
|
proof: Uint8Array
|
|
31
31
|
}
|
|
@@ -43,32 +43,32 @@ const encodeProofs = (
|
|
|
43
43
|
}))
|
|
44
44
|
|
|
45
45
|
/**
|
|
46
|
-
*
|
|
46
|
+
* Gets DNS import data, used for `importDnsName()`
|
|
47
47
|
* @param client - {@link ClientWithEns}
|
|
48
|
-
* @param parameters - {@link
|
|
49
|
-
* @returns
|
|
48
|
+
* @param parameters - {@link GetDnsImportDataParameters}
|
|
49
|
+
* @returns DNS import data object, used for proving the value of the `_ens` TXT record
|
|
50
50
|
*
|
|
51
51
|
* @example
|
|
52
52
|
* import { createPublicClient, http } from 'viem'
|
|
53
53
|
* import { mainnet } from 'viem/chains'
|
|
54
|
-
* import {
|
|
54
|
+
* import { addEnsContracts } from '@ensdomains/ensjs'
|
|
55
|
+
* import { getDnsImportData } from '@ensdomains/ensjs/dns'
|
|
55
56
|
*
|
|
56
|
-
* const mainnetWithEns = addContracts([mainnet])
|
|
57
57
|
* const client = createPublicClient({
|
|
58
|
-
* chain:
|
|
58
|
+
* chain: addEnsContracts(mainnet),
|
|
59
59
|
* transport: http(),
|
|
60
60
|
* })
|
|
61
|
-
* const
|
|
61
|
+
* const data = await getDnsImportData(client, {
|
|
62
62
|
* name: 'example.eth',
|
|
63
63
|
* })
|
|
64
64
|
*/
|
|
65
|
-
const
|
|
65
|
+
const getDnsImportData = async (
|
|
66
66
|
client: ClientWithEns,
|
|
67
67
|
{
|
|
68
68
|
name,
|
|
69
69
|
endpoint = 'https://cloudflare-dns.com/dns-query',
|
|
70
|
-
}:
|
|
71
|
-
): Promise<
|
|
70
|
+
}: GetDnsImportDataParameters,
|
|
71
|
+
): Promise<GetDnsImportDataReturnType> => {
|
|
72
72
|
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
73
73
|
const { DNSProver } = await import('@ensdomains/dnsprovejs')
|
|
74
74
|
const prover = DNSProver.create(endpoint)
|
|
@@ -130,4 +130,4 @@ const prepareDnsImport = async (
|
|
|
130
130
|
}
|
|
131
131
|
}
|
|
132
132
|
|
|
133
|
-
export default
|
|
133
|
+
export default getDnsImportData
|
|
@@ -82,7 +82,7 @@ type DnsResponse = {
|
|
|
82
82
|
* @returns Address of DNS owner. {@link GetDnsOwnerReturnType}
|
|
83
83
|
*
|
|
84
84
|
* @example
|
|
85
|
-
* import { getDnsOwner } from '@ensdomains/ensjs'
|
|
85
|
+
* import { getDnsOwner } from '@ensdomains/ensjs/dns'
|
|
86
86
|
*
|
|
87
87
|
* const owner = await getDnsOwner({ name: 'ens.domains' })
|
|
88
88
|
* // '0xb8c2C29ee19D8307cb7255e1Cd9CbDE883A267d5'
|
|
@@ -21,13 +21,13 @@ import type {
|
|
|
21
21
|
WriteTransactionParameters,
|
|
22
22
|
} from '../../types.js'
|
|
23
23
|
import { packetToBytes } from '../../utils/hexEncodedName.js'
|
|
24
|
-
import type {
|
|
24
|
+
import type { GetDnsImportDataReturnType } from './getDnsImportData.js'
|
|
25
25
|
|
|
26
26
|
type BaseImportDnsNameDataParameters = {
|
|
27
27
|
/** Name to import */
|
|
28
28
|
name: string
|
|
29
|
-
/** Data returned from `
|
|
30
|
-
|
|
29
|
+
/** Data returned from `getDnsImportData()` */
|
|
30
|
+
dnsImportData: GetDnsImportDataReturnType
|
|
31
31
|
/** Address to claim the name for */
|
|
32
32
|
address?: Address
|
|
33
33
|
/** Address of the resolver to use (default: `ensPublicResolver`) */
|
|
@@ -65,9 +65,14 @@ export const makeFunctionData = <
|
|
|
65
65
|
TAccount extends Account | undefined,
|
|
66
66
|
>(
|
|
67
67
|
wallet: WalletWithEns<Transport, TChain, TAccount>,
|
|
68
|
-
{
|
|
68
|
+
{
|
|
69
|
+
name,
|
|
70
|
+
dnsImportData,
|
|
71
|
+
address,
|
|
72
|
+
resolverAddress,
|
|
73
|
+
}: ImportDnsNameDataParameters,
|
|
69
74
|
): ImportDnsNameDataReturnType => {
|
|
70
|
-
const data =
|
|
75
|
+
const data = dnsImportData.rrsets.map((rrset) => ({
|
|
71
76
|
rrset: bytesToHex(rrset.rrset),
|
|
72
77
|
sig: bytesToHex(rrset.sig),
|
|
73
78
|
}))
|
|
@@ -81,7 +86,7 @@ export const makeFunctionData = <
|
|
|
81
86
|
if (resolverAddress)
|
|
82
87
|
throw new AdditionalParameterSpecifiedError({
|
|
83
88
|
parameter: 'resolverAddress',
|
|
84
|
-
allowedParameters: ['name', '
|
|
89
|
+
allowedParameters: ['name', 'dnsImportData'],
|
|
85
90
|
details:
|
|
86
91
|
'resolverAddress cannot be specified when claiming without an address',
|
|
87
92
|
})
|
|
@@ -90,7 +95,7 @@ export const makeFunctionData = <
|
|
|
90
95
|
data: encodeFunctionData({
|
|
91
96
|
abi: dnsRegistrarProveAndClaimSnippet,
|
|
92
97
|
functionName: 'proveAndClaim',
|
|
93
|
-
args: [hexEncodedName, data, bytesToHex(
|
|
98
|
+
args: [hexEncodedName, data, bytesToHex(dnsImportData.proof)],
|
|
94
99
|
}),
|
|
95
100
|
}
|
|
96
101
|
}
|
|
@@ -107,7 +112,7 @@ export const makeFunctionData = <
|
|
|
107
112
|
args: [
|
|
108
113
|
hexEncodedName,
|
|
109
114
|
data,
|
|
110
|
-
bytesToHex(
|
|
115
|
+
bytesToHex(dnsImportData.proof),
|
|
111
116
|
resolverAddress_,
|
|
112
117
|
address,
|
|
113
118
|
],
|
|
@@ -124,9 +129,10 @@ export const makeFunctionData = <
|
|
|
124
129
|
* @example
|
|
125
130
|
* import { createPublicClient, createWalletClient, http, custom } from 'viem'
|
|
126
131
|
* import { mainnet } from 'viem/chains'
|
|
127
|
-
* import {
|
|
132
|
+
* import { addEnsContracts } from '@ensdomains/ensjs'
|
|
133
|
+
* import { getDnsImportData, importDnsName } from '@ensdomains/ensjs/dns'
|
|
128
134
|
*
|
|
129
|
-
* const
|
|
135
|
+
* const mainnetWithEns = addEnsContracts(mainnet)
|
|
130
136
|
* const client = createPublicClient({
|
|
131
137
|
* chain: mainnetWithEns,
|
|
132
138
|
* transport: http(),
|
|
@@ -135,12 +141,12 @@ export const makeFunctionData = <
|
|
|
135
141
|
* chain: mainnetWithEns,
|
|
136
142
|
* transport: custom(window.ethereum),
|
|
137
143
|
* })
|
|
138
|
-
* const
|
|
144
|
+
* const dnsImportData = await getDnsImportData(client, {
|
|
139
145
|
* name: 'example.com',
|
|
140
146
|
* })
|
|
141
|
-
* const hash = await importDnsName(
|
|
147
|
+
* const hash = await importDnsName(wallet, {
|
|
142
148
|
* name: 'example.com',
|
|
143
|
-
*
|
|
149
|
+
* dnsImportData,
|
|
144
150
|
* })
|
|
145
151
|
*/
|
|
146
152
|
async function importDnsName<
|
|
@@ -152,7 +158,7 @@ async function importDnsName<
|
|
|
152
158
|
{
|
|
153
159
|
name,
|
|
154
160
|
address,
|
|
155
|
-
|
|
161
|
+
dnsImportData,
|
|
156
162
|
resolverAddress,
|
|
157
163
|
...txArgs
|
|
158
164
|
}: ImportDnsNameParameters<TChain, TAccount, TChainOverride>,
|
|
@@ -160,7 +166,7 @@ async function importDnsName<
|
|
|
160
166
|
const data = makeFunctionData(wallet, {
|
|
161
167
|
name,
|
|
162
168
|
address,
|
|
163
|
-
|
|
169
|
+
dnsImportData,
|
|
164
170
|
resolverAddress,
|
|
165
171
|
} as ImportDnsNameDataParameters)
|
|
166
172
|
const writeArgs = {
|
|
@@ -84,8 +84,8 @@ const decode = async (
|
|
|
84
84
|
}
|
|
85
85
|
// CBOR
|
|
86
86
|
case 4: {
|
|
87
|
-
const {
|
|
88
|
-
abiData = await
|
|
87
|
+
const { cborDecode } = await import('@ensdomains/address-encoder/utils')
|
|
88
|
+
abiData = await cborDecode(hexToBytes(encodedAbiData).buffer)
|
|
89
89
|
decoded = true
|
|
90
90
|
break
|
|
91
91
|
}
|