@ensdomains/ensjs 3.2.0 → 3.2.1
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/cjs/clients/public.js.map +1 -1
- package/dist/cjs/clients/subgraph.js.map +1 -1
- package/dist/cjs/clients/wallet.js.map +1 -1
- package/dist/cjs/contracts/addEnsContracts.js.map +1 -1
- package/dist/cjs/contracts/consts.js +74 -32
- package/dist/cjs/contracts/consts.js.map +1 -1
- package/dist/cjs/contracts/dnsRegistrar.js +65 -9
- package/dist/cjs/contracts/dnsRegistrar.js.map +1 -1
- package/dist/cjs/contracts/dnssecImpl.js +18 -16
- package/dist/cjs/contracts/dnssecImpl.js.map +1 -1
- package/dist/cjs/contracts/getChainContractAddress.js +5 -1
- package/dist/cjs/contracts/getChainContractAddress.js.map +1 -1
- package/dist/cjs/contracts/index.js +4 -3
- package/dist/cjs/contracts/index.js.map +1 -1
- package/dist/cjs/errors/version.js +1 -1
- package/dist/cjs/functions/dns/getDnsImportData.js +22 -45
- package/dist/cjs/functions/dns/getDnsImportData.js.map +1 -1
- package/dist/cjs/functions/dns/importDnsName.js +2 -12
- package/dist/cjs/functions/dns/importDnsName.js.map +1 -1
- package/dist/cjs/functions/public/_getAbi.js +1 -2
- package/dist/cjs/functions/public/_getAbi.js.map +1 -1
- package/dist/cjs/functions/public/getAbiRecord.js +2 -2
- package/dist/cjs/functions/public/getAbiRecord.js.map +1 -1
- package/dist/cjs/functions/public/getRecords.js +2 -2
- package/dist/cjs/functions/public/getRecords.js.map +1 -1
- package/dist/cjs/utils/generateRecordCallArray.js +6 -3
- package/dist/cjs/utils/generateRecordCallArray.js.map +1 -1
- package/dist/cjs/utils/generateSupportedContentTypes.js +22 -0
- package/dist/cjs/utils/generateSupportedContentTypes.js.map +1 -0
- package/dist/cjs/utils/generateSupportedContentTypes.test.ts.js +20 -0
- package/dist/cjs/utils/generateSupportedContentTypes.test.ts.js.map +1 -0
- package/dist/cjs/utils/index.js +3 -1
- package/dist/cjs/utils/index.js.map +1 -1
- package/dist/cjs/utils/registerHelpers.js +1 -1
- package/dist/cjs/utils/registerHelpers.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/clients/wallet.js.map +1 -1
- package/dist/esm/contracts/addEnsContracts.js.map +1 -1
- package/dist/esm/contracts/consts.js +74 -32
- package/dist/esm/contracts/consts.js.map +1 -1
- package/dist/esm/contracts/dnsRegistrar.js +64 -8
- package/dist/esm/contracts/dnsRegistrar.js.map +1 -1
- package/dist/esm/contracts/dnssecImpl.js +17 -15
- package/dist/esm/contracts/dnssecImpl.js.map +1 -1
- package/dist/esm/contracts/getChainContractAddress.js +5 -1
- package/dist/esm/contracts/getChainContractAddress.js.map +1 -1
- package/dist/esm/contracts/index.js +2 -2
- package/dist/esm/contracts/index.js.map +1 -1
- package/dist/esm/errors/version.js +1 -1
- package/dist/esm/functions/dns/getDnsImportData.js +25 -48
- package/dist/esm/functions/dns/getDnsImportData.js.map +1 -1
- package/dist/esm/functions/dns/importDnsName.js +3 -13
- package/dist/esm/functions/dns/importDnsName.js.map +1 -1
- package/dist/esm/functions/public/_getAbi.js +1 -7
- package/dist/esm/functions/public/_getAbi.js.map +1 -1
- package/dist/esm/functions/public/getAbiRecord.js +2 -2
- package/dist/esm/functions/public/getAbiRecord.js.map +1 -1
- package/dist/esm/functions/public/getRecords.js +2 -2
- package/dist/esm/functions/public/getRecords.js.map +1 -1
- package/dist/esm/utils/generateRecordCallArray.js +6 -3
- package/dist/esm/utils/generateRecordCallArray.js.map +1 -1
- package/dist/esm/utils/generateSupportedContentTypes.js +18 -0
- package/dist/esm/utils/generateSupportedContentTypes.js.map +1 -0
- package/dist/esm/utils/generateSupportedContentTypes.test.ts.js +18 -0
- package/dist/esm/utils/generateSupportedContentTypes.test.ts.js.map +1 -0
- package/dist/esm/utils/index.js +1 -0
- package/dist/esm/utils/index.js.map +1 -1
- package/dist/esm/utils/registerHelpers.js +1 -1
- package/dist/esm/utils/registerHelpers.js.map +1 -1
- package/dist/types/clients/decorators/wallet.d.ts +12 -12
- package/dist/types/clients/public.d.ts +9 -8
- package/dist/types/clients/public.d.ts.map +1 -1
- package/dist/types/clients/subgraph.d.ts +4 -4
- package/dist/types/clients/subgraph.d.ts.map +1 -1
- package/dist/types/clients/wallet.d.ts +116 -116
- package/dist/types/clients/wallet.d.ts.map +1 -1
- package/dist/types/contracts/addEnsContracts.d.ts +2 -2
- package/dist/types/contracts/addEnsContracts.d.ts.map +1 -1
- package/dist/types/contracts/consts.d.ts +75 -34
- package/dist/types/contracts/consts.d.ts.map +1 -1
- package/dist/types/contracts/dnsRegistrar.d.ts +135 -6
- package/dist/types/contracts/dnsRegistrar.d.ts.map +1 -1
- package/dist/types/contracts/dnssecImpl.d.ts +14 -13
- package/dist/types/contracts/dnssecImpl.d.ts.map +1 -1
- package/dist/types/contracts/getChainContractAddress.d.ts +15 -7
- package/dist/types/contracts/getChainContractAddress.d.ts.map +1 -1
- package/dist/types/contracts/index.d.ts +2 -2
- package/dist/types/contracts/index.d.ts.map +1 -1
- package/dist/types/errors/version.d.ts +1 -1
- package/dist/types/functions/dns/getDnsImportData.d.ts +6 -8
- package/dist/types/functions/dns/getDnsImportData.d.ts.map +1 -1
- package/dist/types/functions/dns/importDnsName.d.ts +25 -25
- package/dist/types/functions/dns/importDnsName.d.ts.map +1 -1
- package/dist/types/functions/public/_getAbi.d.ts +8 -1
- package/dist/types/functions/public/_getAbi.d.ts.map +1 -1
- package/dist/types/functions/public/getAbiRecord.d.ts +1 -1
- package/dist/types/functions/public/getAbiRecord.d.ts.map +1 -1
- package/dist/types/functions/public/getRecords.d.ts +6 -9
- package/dist/types/functions/public/getRecords.d.ts.map +1 -1
- package/dist/types/functions/wallet/clearRecords.d.ts +24 -24
- package/dist/types/functions/wallet/commitName.d.ts +24 -24
- package/dist/types/functions/wallet/createSubname.d.ts +24 -24
- package/dist/types/functions/wallet/deleteSubname.d.ts +24 -24
- package/dist/types/functions/wallet/registerName.d.ts +24 -24
- package/dist/types/functions/wallet/renewNames.d.ts +24 -24
- package/dist/types/functions/wallet/setAbiRecord.d.ts +24 -24
- package/dist/types/functions/wallet/setAddressRecord.d.ts +24 -24
- package/dist/types/functions/wallet/setChildFuses.d.ts +24 -24
- package/dist/types/functions/wallet/setContentHashRecord.d.ts +24 -24
- package/dist/types/functions/wallet/setFuses.d.ts +24 -24
- package/dist/types/functions/wallet/setPrimaryName.d.ts +24 -24
- package/dist/types/functions/wallet/setRecords.d.ts +24 -24
- package/dist/types/functions/wallet/setResolver.d.ts +24 -24
- package/dist/types/functions/wallet/setTextRecord.d.ts +24 -24
- package/dist/types/functions/wallet/transferName.d.ts +24 -24
- package/dist/types/functions/wallet/unwrapName.d.ts +24 -24
- package/dist/types/functions/wallet/wrapName.d.ts +24 -24
- package/dist/types/types.d.ts +4 -0
- package/dist/types/types.d.ts.map +1 -1
- package/dist/types/utils/encoders/encodeAbi.d.ts +1 -1
- package/dist/types/utils/encoders/encodeAbi.d.ts.map +1 -1
- package/dist/types/utils/generateRecordCallArray.d.ts +2 -2
- package/dist/types/utils/generateRecordCallArray.d.ts.map +1 -1
- package/dist/types/utils/generateSupportedContentTypes.d.ts +3 -0
- package/dist/types/utils/generateSupportedContentTypes.d.ts.map +1 -0
- package/dist/types/utils/generateSupportedContentTypes.test.ts.d.ts +2 -0
- package/dist/types/utils/generateSupportedContentTypes.test.ts.d.ts.map +1 -0
- package/dist/types/utils/index.d.ts +1 -0
- package/dist/types/utils/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/clients/public.ts +6 -4
- package/src/clients/subgraph.ts +6 -4
- package/src/clients/wallet.ts +19 -13
- package/src/contracts/addEnsContracts.ts +3 -3
- package/src/contracts/consts.ts +92 -37
- package/src/contracts/dnsRegistrar.ts +65 -8
- package/src/contracts/dnssecImpl.ts +17 -15
- package/src/contracts/getChainContractAddress.ts +22 -7
- package/src/contracts/index.ts +2 -1
- package/src/errors/version.ts +1 -1
- package/src/functions/dns/getDnsImportData.ts +32 -62
- package/src/functions/dns/importDnsName.ts +4 -14
- package/src/functions/public/_getAbi.ts +11 -8
- package/src/functions/public/getAbiRecord.ts +6 -2
- package/src/functions/public/getRecords.ts +23 -31
- package/src/types.ts +10 -0
- package/src/utils/encoders/encodeAbi.ts +1 -1
- package/src/utils/generateRecordCallArray.ts +6 -3
- package/src/utils/generateSupportedContentTypes.test.ts.ts +24 -0
- package/src/utils/generateSupportedContentTypes.ts +21 -0
- package/src/utils/index.ts +1 -0
- package/src/utils/registerHelpers.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"encodeAbi.d.ts","sourceRoot":"","sources":["../../../../src/utils/encoders/encodeAbi.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,KAAK,GAAG,EAAE,MAAM,MAAM,CAAA;AAExD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAE9C,
|
|
1
|
+
{"version":3,"file":"encodeAbi.d.ts","sourceRoot":"","sources":["../../../../src/utils/encoders/encodeAbi.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,KAAK,GAAG,EAAE,MAAM,MAAM,CAAA;AAExD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAE9C,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,CAAA;AAE1D,KAAK,cAAc,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;AAEnC,QAAA,MAAM,YAAY;;;;;CAKR,CAAA;AACV,KAAK,YAAY,GAAG,OAAO,YAAY,CAAA;AAEvC,KAAK,iBAAiB,CAAC,SAAS,SAAS,WAAW,IAAI,YAAY,CAAC,SAAS,CAAC,CAAA;AAE/E,MAAM,MAAM,mBAAmB,CAAC,SAAS,SAAS,WAAW,GAAG,WAAW,IACzE,SAAS,SAAS,KAAK,GACnB;IACE,QAAQ,EAAE,SAAS,CAAA;IACnB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;CACpB,GACD;IACE,QAAQ,EAAE,SAAS,CAAA;IACnB,IAAI,EAAE,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,IAAI,CAAA;CAC9B,CAAA;AAEP,MAAM,MAAM,UAAU,CAAC,YAAY,SAAS,cAAc,GAAG,cAAc,IAAI;IAC7E,WAAW,EAAE,YAAY,CAAA;IACzB,WAAW,EAAE,GAAG,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,mBAAmB,CAAC,YAAY,SAAS,cAAc,IACjE,UAAU,CAAC,YAAY,CAAC,CAAA;AAE1B,eAAO,MAAM,qBAAqB,gBACnB,cAAc,KAC1B,WAaF,CAAA;AAED,eAAO,MAAM,qBAAqB,aACtB,WAAW,KACpB,cAMF,CAAA;AAED,eAAO,MAAM,SAAS;;iBAjCP,GAAG;EAwEjB,CAAA"}
|
|
@@ -13,7 +13,7 @@ export type RecordOptions = Prettify<{
|
|
|
13
13
|
/** Array of coin records */
|
|
14
14
|
coins?: Omit<EncodeSetAddrParameters, 'namehash'>[];
|
|
15
15
|
/** ABI value */
|
|
16
|
-
abi?: EncodedAbi;
|
|
16
|
+
abi?: EncodedAbi | EncodedAbi[];
|
|
17
17
|
}>;
|
|
18
18
|
export declare const generateRecordCallArray: ({ namehash, clearRecords, contentHash, texts, coins, abi, }: {
|
|
19
19
|
namehash: Hex;
|
|
@@ -22,6 +22,6 @@ export declare const generateRecordCallArray: ({ namehash, clearRecords, content
|
|
|
22
22
|
contentHash?: string | null | undefined;
|
|
23
23
|
texts?: Omit<EncodeSetTextParameters, "namehash">[] | undefined;
|
|
24
24
|
coins?: Omit<EncodeSetAddrParameters, "namehash">[] | undefined;
|
|
25
|
-
abi?: EncodedAbi | undefined;
|
|
25
|
+
abi?: EncodedAbi | EncodedAbi[] | undefined;
|
|
26
26
|
}) => Hex[];
|
|
27
27
|
//# sourceMappingURL=generateRecordCallArray.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateRecordCallArray.d.ts","sourceRoot":"","sources":["../../../src/utils/generateRecordCallArray.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,MAAM,CAAA;AAC/B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAMzD,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,6BAA6B,CAAA;AAEpC,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,6BAA6B,CAAA;AAEpC,MAAM,MAAM,aAAa,GAAG,QAAQ,CAAC;IACnC,iCAAiC;IACjC,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,wBAAwB;IACxB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,4BAA4B;IAC5B,KAAK,CAAC,EAAE,IAAI,CAAC,uBAAuB,EAAE,UAAU,CAAC,EAAE,CAAA;IACnD,4BAA4B;IAC5B,KAAK,CAAC,EAAE,IAAI,CAAC,uBAAuB,EAAE,UAAU,CAAC,EAAE,CAAA;IACnD,gBAAgB;IAChB,GAAG,CAAC,EAAE,UAAU,CAAA;
|
|
1
|
+
{"version":3,"file":"generateRecordCallArray.d.ts","sourceRoot":"","sources":["../../../src/utils/generateRecordCallArray.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,MAAM,CAAA;AAC/B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAMzD,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,6BAA6B,CAAA;AAEpC,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,6BAA6B,CAAA;AAEpC,MAAM,MAAM,aAAa,GAAG,QAAQ,CAAC;IACnC,iCAAiC;IACjC,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,wBAAwB;IACxB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,4BAA4B;IAC5B,KAAK,CAAC,EAAE,IAAI,CAAC,uBAAuB,EAAE,UAAU,CAAC,EAAE,CAAA;IACnD,4BAA4B;IAC5B,KAAK,CAAC,EAAE,IAAI,CAAC,uBAAuB,EAAE,UAAU,CAAC,EAAE,CAAA;IACnD,gBAAgB;IAChB,GAAG,CAAC,EAAE,UAAU,GAAG,UAAU,EAAE,CAAA;CAChC,CAAC,CAAA;AAEF,eAAO,MAAM,uBAAuB;cAOrB,GAAG;;;;;;;MAAqB,GAAG,EAmCzC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generateSupportedContentTypes.d.ts","sourceRoot":"","sources":["../../../src/utils/generateSupportedContentTypes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAS1D,eAAO,MAAM,6BAA6B,uBACpB,WAAW,GAAG,WAAW,EAAE,KAC9C,MASF,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generateSupportedContentTypes.test.ts.d.ts","sourceRoot":"","sources":["../../../src/utils/generateSupportedContentTypes.test.ts.ts"],"names":[],"mappings":""}
|
|
@@ -16,4 +16,5 @@ export { beautify, emoji, isCombiningMark, namehash, normalise, normaliseFragmen
|
|
|
16
16
|
export { makeCommitment, makeCommitmentFromTuple, makeCommitmentTuple, makeRegistrationTuple, randomSecret, type CommitmentTuple, type RegistrationParameters, type RegistrationTuple, } from './registerHelpers.js';
|
|
17
17
|
export { checkIsDotEth, parseInput, validateName, type ParsedInputResult, } from './validation.js';
|
|
18
18
|
export { MAX_EXPIRY, expiryToBigInt, wrappedLabelLengthCheck, } from './wrapper.js';
|
|
19
|
+
export { generateSupportedContentTypes } from './generateSupportedContentTypes.js';
|
|
19
20
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,SAAS,EACT,qBAAqB,EACrB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,UAAU,GAChB,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAA;AACrE,OAAO,EACL,YAAY,EACZ,KAAK,sBAAsB,EAC3B,KAAK,sBAAsB,GAC5B,MAAM,4BAA4B,CAAA;AACnC,OAAO,EACL,aAAa,EACb,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,GAC7B,MAAM,6BAA6B,CAAA;AACpC,OAAO,EACL,oBAAoB,EACpB,KAAK,8BAA8B,EACnC,KAAK,8BAA8B,GACpC,MAAM,oCAAoC,CAAA;AAC3C,OAAO,EACL,aAAa,EACb,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,GAC7B,MAAM,6BAA6B,CAAA;AAEpC,OAAO,EACL,aAAa,EACb,oBAAoB,EACpB,YAAY,EACZ,UAAU,EACV,qBAAqB,GACtB,MAAM,aAAa,CAAA;AACpB,OAAO,EACL,aAAa,EACb,kBAAkB,EAClB,UAAU,EACV,kBAAkB,EAClB,uBAAuB,EACvB,eAAe,EACf,UAAU,EACV,cAAc,EACd,mBAAmB,EACnB,WAAW,EACX,oBAAoB,EACpB,iBAAiB,EACjB,qBAAqB,EACrB,kBAAkB,EAClB,oBAAoB,EACpB,iBAAiB,EACjB,cAAc,EACd,WAAW,EACX,WAAW,EACX,KAAK,sBAAsB,EAC3B,KAAK,YAAY,EACjB,KAAK,2BAA2B,EAChC,KAAK,sBAAsB,EAC3B,KAAK,4BAA4B,EACjC,KAAK,2BAA2B,EAChC,KAAK,uBAAuB,GAC7B,MAAM,YAAY,CAAA;AAEnB,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,KAAK,kBAAkB,EACvB,KAAK,YAAY,GAClB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,EACL,uBAAuB,EACvB,KAAK,aAAa,GACnB,MAAM,8BAA8B,CAAA;AACrC,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAClE,OAAO,EACL,gBAAgB,EAChB,UAAU,EACV,eAAe,EACf,WAAW,EACX,eAAe,EACf,kBAAkB,EAClB,SAAS,EACT,QAAQ,GACT,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAC9D,OAAO,EACL,QAAQ,EACR,KAAK,EACL,eAAe,EACf,QAAQ,EACR,SAAS,EACT,iBAAiB,EACjB,YAAY,EACZ,KAAK,EACL,QAAQ,EACR,KAAK,eAAe,EACpB,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,KAAK,EACV,KAAK,WAAW,EAChB,KAAK,QAAQ,EACb,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,KAAK,EACV,KAAK,UAAU,GAChB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EACL,cAAc,EACd,uBAAuB,EACvB,mBAAmB,EACnB,qBAAqB,EACrB,YAAY,EACZ,KAAK,eAAe,EACpB,KAAK,sBAAsB,EAC3B,KAAK,iBAAiB,GACvB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EACL,aAAa,EACb,UAAU,EACV,YAAY,EACZ,KAAK,iBAAiB,GACvB,MAAM,iBAAiB,CAAA;AACxB,OAAO,EACL,UAAU,EACV,cAAc,EACd,uBAAuB,GACxB,MAAM,cAAc,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,SAAS,EACT,qBAAqB,EACrB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,UAAU,GAChB,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAA;AACrE,OAAO,EACL,YAAY,EACZ,KAAK,sBAAsB,EAC3B,KAAK,sBAAsB,GAC5B,MAAM,4BAA4B,CAAA;AACnC,OAAO,EACL,aAAa,EACb,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,GAC7B,MAAM,6BAA6B,CAAA;AACpC,OAAO,EACL,oBAAoB,EACpB,KAAK,8BAA8B,EACnC,KAAK,8BAA8B,GACpC,MAAM,oCAAoC,CAAA;AAC3C,OAAO,EACL,aAAa,EACb,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,GAC7B,MAAM,6BAA6B,CAAA;AAEpC,OAAO,EACL,aAAa,EACb,oBAAoB,EACpB,YAAY,EACZ,UAAU,EACV,qBAAqB,GACtB,MAAM,aAAa,CAAA;AACpB,OAAO,EACL,aAAa,EACb,kBAAkB,EAClB,UAAU,EACV,kBAAkB,EAClB,uBAAuB,EACvB,eAAe,EACf,UAAU,EACV,cAAc,EACd,mBAAmB,EACnB,WAAW,EACX,oBAAoB,EACpB,iBAAiB,EACjB,qBAAqB,EACrB,kBAAkB,EAClB,oBAAoB,EACpB,iBAAiB,EACjB,cAAc,EACd,WAAW,EACX,WAAW,EACX,KAAK,sBAAsB,EAC3B,KAAK,YAAY,EACjB,KAAK,2BAA2B,EAChC,KAAK,sBAAsB,EAC3B,KAAK,4BAA4B,EACjC,KAAK,2BAA2B,EAChC,KAAK,uBAAuB,GAC7B,MAAM,YAAY,CAAA;AAEnB,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,KAAK,kBAAkB,EACvB,KAAK,YAAY,GAClB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,EACL,uBAAuB,EACvB,KAAK,aAAa,GACnB,MAAM,8BAA8B,CAAA;AACrC,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAClE,OAAO,EACL,gBAAgB,EAChB,UAAU,EACV,eAAe,EACf,WAAW,EACX,eAAe,EACf,kBAAkB,EAClB,SAAS,EACT,QAAQ,GACT,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAC9D,OAAO,EACL,QAAQ,EACR,KAAK,EACL,eAAe,EACf,QAAQ,EACR,SAAS,EACT,iBAAiB,EACjB,YAAY,EACZ,KAAK,EACL,QAAQ,EACR,KAAK,eAAe,EACpB,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,KAAK,EACV,KAAK,WAAW,EAChB,KAAK,QAAQ,EACb,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,KAAK,EACV,KAAK,UAAU,GAChB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EACL,cAAc,EACd,uBAAuB,EACvB,mBAAmB,EACnB,qBAAqB,EACrB,YAAY,EACZ,KAAK,eAAe,EACpB,KAAK,sBAAsB,EAC3B,KAAK,iBAAiB,GACvB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EACL,aAAa,EACb,UAAU,EACV,YAAY,EACZ,KAAK,iBAAiB,GACvB,MAAM,iBAAiB,CAAA;AACxB,OAAO,EACL,UAAU,EACV,cAAc,EACd,uBAAuB,GACxB,MAAM,cAAc,CAAA;AACrB,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAA"}
|
package/package.json
CHANGED
package/src/clients/public.ts
CHANGED
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
import {
|
|
2
2
|
createClient,
|
|
3
|
-
type Chain,
|
|
4
3
|
type Client,
|
|
5
4
|
type ClientConfig,
|
|
6
5
|
type PublicRpcSchema,
|
|
7
6
|
type Transport,
|
|
8
7
|
} from 'viem'
|
|
9
8
|
import { addEnsContracts } from '../contracts/addEnsContracts.js'
|
|
10
|
-
import type {
|
|
9
|
+
import type {
|
|
10
|
+
ChainWithBaseContracts,
|
|
11
|
+
ChainWithEns,
|
|
12
|
+
} from '../contracts/consts.js'
|
|
11
13
|
import type { Prettify } from '../types.js'
|
|
12
14
|
import { ensPublicActions, type EnsPublicActions } from './decorators/public.js'
|
|
13
15
|
import {
|
|
@@ -17,7 +19,7 @@ import {
|
|
|
17
19
|
|
|
18
20
|
export type EnsPublicClientConfig<
|
|
19
21
|
TTransport extends Transport = Transport,
|
|
20
|
-
TChain extends
|
|
22
|
+
TChain extends ChainWithBaseContracts = ChainWithBaseContracts,
|
|
21
23
|
> = Pick<
|
|
22
24
|
ClientConfig<TTransport, TChain>,
|
|
23
25
|
'batch' | 'key' | 'name' | 'pollingInterval' | 'transport'
|
|
@@ -56,7 +58,7 @@ export type EnsPublicClient<
|
|
|
56
58
|
*/
|
|
57
59
|
export const createEnsPublicClient = <
|
|
58
60
|
TTransport extends Transport,
|
|
59
|
-
TChain extends
|
|
61
|
+
TChain extends ChainWithBaseContracts,
|
|
60
62
|
>({
|
|
61
63
|
batch,
|
|
62
64
|
chain,
|
package/src/clients/subgraph.ts
CHANGED
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
import {
|
|
2
2
|
createClient,
|
|
3
|
-
type Chain,
|
|
4
3
|
type Client,
|
|
5
4
|
type ClientConfig,
|
|
6
5
|
type PublicRpcSchema,
|
|
7
6
|
type Transport,
|
|
8
7
|
} from 'viem'
|
|
9
8
|
import { addEnsContracts } from '../contracts/addEnsContracts.js'
|
|
10
|
-
import type {
|
|
9
|
+
import type {
|
|
10
|
+
ChainWithBaseContracts,
|
|
11
|
+
ChainWithEns,
|
|
12
|
+
} from '../contracts/consts.js'
|
|
11
13
|
import type { Prettify } from '../types.js'
|
|
12
14
|
import {
|
|
13
15
|
ensSubgraphActions,
|
|
@@ -16,7 +18,7 @@ import {
|
|
|
16
18
|
|
|
17
19
|
export type EnsSubgraphClientConfig<
|
|
18
20
|
TTransport extends Transport = Transport,
|
|
19
|
-
TChain extends
|
|
21
|
+
TChain extends ChainWithBaseContracts = ChainWithBaseContracts,
|
|
20
22
|
> = Pick<
|
|
21
23
|
ClientConfig<TTransport, TChain>,
|
|
22
24
|
'batch' | 'key' | 'name' | 'pollingInterval' | 'transport'
|
|
@@ -49,7 +51,7 @@ export type EnsSubgraphClient<
|
|
|
49
51
|
*/
|
|
50
52
|
export const createEnsSubgraphClient = <
|
|
51
53
|
TTransport extends Transport,
|
|
52
|
-
TChain extends
|
|
54
|
+
TChain extends ChainWithBaseContracts,
|
|
53
55
|
>({
|
|
54
56
|
batch,
|
|
55
57
|
chain,
|
package/src/clients/wallet.ts
CHANGED
|
@@ -2,7 +2,6 @@ import {
|
|
|
2
2
|
createWalletClient,
|
|
3
3
|
type Account,
|
|
4
4
|
type Address,
|
|
5
|
-
type Chain,
|
|
6
5
|
type Client,
|
|
7
6
|
type ClientConfig,
|
|
8
7
|
type ParseAccount,
|
|
@@ -11,23 +10,30 @@ import {
|
|
|
11
10
|
type WalletRpcSchema,
|
|
12
11
|
} from 'viem'
|
|
13
12
|
import { addEnsContracts } from '../contracts/addEnsContracts.js'
|
|
14
|
-
import type {
|
|
15
|
-
|
|
13
|
+
import type {
|
|
14
|
+
ChainWithBaseContracts,
|
|
15
|
+
ChainWithEns,
|
|
16
|
+
CheckedChainWithEns,
|
|
17
|
+
} from '../contracts/consts.js'
|
|
18
|
+
import type { Assign, Prettify } from '../types.js'
|
|
16
19
|
import { ensWalletActions, type EnsWalletActions } from './decorators/wallet.js'
|
|
17
20
|
|
|
18
21
|
export type EnsWalletClientConfig<
|
|
19
22
|
TTransport extends Transport,
|
|
20
|
-
TChain extends
|
|
23
|
+
TChain extends ChainWithBaseContracts,
|
|
21
24
|
TAccountOrAddress extends Account | Address | undefined =
|
|
22
25
|
| Account
|
|
23
26
|
| Address
|
|
24
27
|
| undefined,
|
|
25
|
-
> =
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
28
|
+
> = Assign<
|
|
29
|
+
Pick<
|
|
30
|
+
ClientConfig<TTransport, TChain, TAccountOrAddress>,
|
|
31
|
+
'account' | 'chain' | 'key' | 'name' | 'pollingInterval' | 'transport'
|
|
32
|
+
>,
|
|
33
|
+
{
|
|
34
|
+
chain: TChain
|
|
35
|
+
}
|
|
36
|
+
>
|
|
31
37
|
|
|
32
38
|
export type EnsWalletClient<
|
|
33
39
|
TTransport extends Transport = Transport,
|
|
@@ -61,7 +67,7 @@ export type EnsWalletClient<
|
|
|
61
67
|
*/
|
|
62
68
|
export const createEnsWalletClient = <
|
|
63
69
|
TTransport extends Transport,
|
|
64
|
-
TChain extends
|
|
70
|
+
TChain extends ChainWithBaseContracts,
|
|
65
71
|
TAccountOrAddress extends Account | Address | undefined = undefined,
|
|
66
72
|
>({
|
|
67
73
|
account,
|
|
@@ -76,12 +82,12 @@ export const createEnsWalletClient = <
|
|
|
76
82
|
TAccountOrAddress
|
|
77
83
|
>): EnsWalletClient<
|
|
78
84
|
TTransport,
|
|
79
|
-
|
|
85
|
+
CheckedChainWithEns<TChain>,
|
|
80
86
|
ParseAccount<TAccountOrAddress>
|
|
81
87
|
> => {
|
|
82
88
|
return createWalletClient({
|
|
83
89
|
account,
|
|
84
|
-
chain: addEnsContracts
|
|
90
|
+
chain: addEnsContracts(chain),
|
|
85
91
|
key,
|
|
86
92
|
name,
|
|
87
93
|
pollingInterval,
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
addresses,
|
|
5
5
|
subgraphs,
|
|
6
6
|
supportedChains,
|
|
7
|
-
type
|
|
7
|
+
type CheckedChainWithEns,
|
|
8
8
|
type SupportedChain,
|
|
9
9
|
} from './consts.js'
|
|
10
10
|
|
|
@@ -22,7 +22,7 @@ import {
|
|
|
22
22
|
* transport: http(),
|
|
23
23
|
* })
|
|
24
24
|
*/
|
|
25
|
-
export const addEnsContracts = <TChain extends Chain>(chain: TChain) => {
|
|
25
|
+
export const addEnsContracts = <const TChain extends Chain>(chain: TChain) => {
|
|
26
26
|
if (!chain) throw new NoChainError()
|
|
27
27
|
if (!supportedChains.includes(chain.network as SupportedChain))
|
|
28
28
|
throw new UnsupportedNetworkError({
|
|
@@ -38,5 +38,5 @@ export const addEnsContracts = <TChain extends Chain>(chain: TChain) => {
|
|
|
38
38
|
subgraphs: {
|
|
39
39
|
...subgraphs[chain.network as SupportedChain],
|
|
40
40
|
},
|
|
41
|
-
} as
|
|
41
|
+
} as unknown as CheckedChainWithEns<TChain>
|
|
42
42
|
}
|
package/src/contracts/consts.ts
CHANGED
|
@@ -6,24 +6,30 @@ import type {
|
|
|
6
6
|
Transport,
|
|
7
7
|
WalletClient,
|
|
8
8
|
} from 'viem'
|
|
9
|
+
import type { Assign, Prettify } from '../types.js'
|
|
9
10
|
|
|
10
11
|
type ChainContract = {
|
|
11
12
|
address: Address
|
|
12
13
|
blockCreated?: number
|
|
13
14
|
}
|
|
14
15
|
|
|
15
|
-
export const supportedChains = [
|
|
16
|
+
export const supportedChains = [
|
|
17
|
+
'homestead',
|
|
18
|
+
'goerli',
|
|
19
|
+
'sepolia',
|
|
20
|
+
'holesky',
|
|
21
|
+
] as const
|
|
16
22
|
export const supportedContracts = [
|
|
17
23
|
'ensBaseRegistrarImplementation',
|
|
24
|
+
'ensBulkRenewal',
|
|
18
25
|
'ensDnsRegistrar',
|
|
26
|
+
'ensDnssecImpl',
|
|
19
27
|
'ensEthRegistrarController',
|
|
20
28
|
'ensNameWrapper',
|
|
21
29
|
'ensPublicResolver',
|
|
30
|
+
'ensRegistry',
|
|
22
31
|
'ensReverseRegistrar',
|
|
23
|
-
'ensBulkRenewal',
|
|
24
|
-
'ensDnssecImpl',
|
|
25
32
|
'ensUniversalResolver',
|
|
26
|
-
'ensRegistry',
|
|
27
33
|
] as const
|
|
28
34
|
|
|
29
35
|
export type SupportedChain = (typeof supportedChains)[number]
|
|
@@ -31,15 +37,18 @@ export type SupportedContract = (typeof supportedContracts)[number]
|
|
|
31
37
|
|
|
32
38
|
export const addresses = {
|
|
33
39
|
homestead: {
|
|
34
|
-
ensRegistry: {
|
|
35
|
-
address: '0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e',
|
|
36
|
-
},
|
|
37
40
|
ensBaseRegistrarImplementation: {
|
|
38
|
-
address: '
|
|
41
|
+
address: '0x57f1887a8BF19b14fC0dF6Fd9B2acc9Af147eA85',
|
|
42
|
+
},
|
|
43
|
+
ensBulkRenewal: {
|
|
44
|
+
address: '0xa12159e5131b1eEf6B4857EEE3e1954744b5033A',
|
|
39
45
|
},
|
|
40
46
|
ensDnsRegistrar: {
|
|
41
47
|
address: '0x58774Bb8acD458A640aF0B88238369A167546ef2',
|
|
42
48
|
},
|
|
49
|
+
ensDnssecImpl: {
|
|
50
|
+
address: '0x0fc3152971714E5ed7723FAFa650F86A4BaF30C5',
|
|
51
|
+
},
|
|
43
52
|
ensEthRegistrarController: {
|
|
44
53
|
address: '0x253553366Da8546fC250F225fe3d25d0C782303b',
|
|
45
54
|
},
|
|
@@ -49,29 +58,29 @@ export const addresses = {
|
|
|
49
58
|
ensPublicResolver: {
|
|
50
59
|
address: '0x231b0Ee14048e9dCcD1d247744d114a4EB5E8E63',
|
|
51
60
|
},
|
|
61
|
+
ensRegistry: {
|
|
62
|
+
address: '0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e',
|
|
63
|
+
},
|
|
52
64
|
ensReverseRegistrar: {
|
|
53
65
|
address: '0xa58E81fe9b61B5c3fE2AFD33CF304c454AbFc7Cb',
|
|
54
66
|
},
|
|
55
|
-
ensBulkRenewal: {
|
|
56
|
-
address: '0xa12159e5131b1eEf6B4857EEE3e1954744b5033A',
|
|
57
|
-
},
|
|
58
|
-
ensDnssecImpl: {
|
|
59
|
-
address: '0x21745FF62108968fBf5aB1E07961CC0FCBeB2364',
|
|
60
|
-
},
|
|
61
67
|
ensUniversalResolver: {
|
|
62
68
|
address: '0x8cab227b1162f03b8338331adaad7aadc83b895e',
|
|
63
69
|
},
|
|
64
70
|
},
|
|
65
71
|
goerli: {
|
|
66
|
-
ensRegistry: {
|
|
67
|
-
address: '0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e',
|
|
68
|
-
},
|
|
69
72
|
ensBaseRegistrarImplementation: {
|
|
70
|
-
address: '
|
|
73
|
+
address: '0x57f1887a8BF19b14fC0dF6Fd9B2acc9Af147eA85',
|
|
74
|
+
},
|
|
75
|
+
ensBulkRenewal: {
|
|
76
|
+
address: '0x6d9F26FfBcF1c6f0bAe9F2C1f7fBe8eE6B1d8d4d',
|
|
71
77
|
},
|
|
72
78
|
ensDnsRegistrar: {
|
|
73
79
|
address: '0x8edc487D26F6c8Fa76e032066A3D4F87E273515d',
|
|
74
80
|
},
|
|
81
|
+
ensDnssecImpl: {
|
|
82
|
+
address: '0xF427c4AdED8B6dfde604865c1a7E953B160C26f0',
|
|
83
|
+
},
|
|
75
84
|
ensEthRegistrarController: {
|
|
76
85
|
address: '0xCc5e7dB10E65EED1BBD105359e7268aa660f6734',
|
|
77
86
|
},
|
|
@@ -81,28 +90,28 @@ export const addresses = {
|
|
|
81
90
|
ensPublicResolver: {
|
|
82
91
|
address: '0xd7a4F6473f32aC2Af804B3686AE8F1932bC35750',
|
|
83
92
|
},
|
|
84
|
-
|
|
85
|
-
address: '
|
|
93
|
+
ensRegistry: {
|
|
94
|
+
address: '0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e',
|
|
86
95
|
},
|
|
87
|
-
|
|
96
|
+
ensReverseRegistrar: {
|
|
88
97
|
address: '0x6d9F26FfBcF1c6f0bAe9F2C1f7fBe8eE6B1d8d4d',
|
|
89
98
|
},
|
|
90
|
-
ensDnssecImpl: {
|
|
91
|
-
address: '0xF427c4AdED8B6dfde604865c1a7E953B160C26f0',
|
|
92
|
-
},
|
|
93
99
|
ensUniversalResolver: {
|
|
94
100
|
address: '0xfc4AC75C46C914aF5892d6d3eFFcebD7917293F1',
|
|
95
101
|
},
|
|
96
102
|
},
|
|
97
103
|
sepolia: {
|
|
98
|
-
ensRegistry: {
|
|
99
|
-
address: '0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e',
|
|
100
|
-
},
|
|
101
104
|
ensBaseRegistrarImplementation: {
|
|
102
|
-
address: '
|
|
105
|
+
address: '0x57f1887a8BF19b14fC0dF6Fd9B2acc9Af147eA85',
|
|
106
|
+
},
|
|
107
|
+
ensBulkRenewal: {
|
|
108
|
+
address: '0x4EF77b90762Eddb33C8Eba5B5a19558DaE53D7a1',
|
|
103
109
|
},
|
|
104
110
|
ensDnsRegistrar: {
|
|
105
|
-
address: '
|
|
111
|
+
address: '0x5a07C75Ae469Bf3ee2657B588e8E6ABAC6741b4f',
|
|
112
|
+
},
|
|
113
|
+
ensDnssecImpl: {
|
|
114
|
+
address: '0xe62E4b6cE018Ad6e916fcC24545e20a33b9d8653',
|
|
106
115
|
},
|
|
107
116
|
ensEthRegistrarController: {
|
|
108
117
|
address: '0xFED6a969AaA60E4961FCD3EBF1A2e8913ac65B72',
|
|
@@ -113,17 +122,46 @@ export const addresses = {
|
|
|
113
122
|
ensPublicResolver: {
|
|
114
123
|
address: '0x8FADE66B79cC9f707aB26799354482EB93a5B7dD',
|
|
115
124
|
},
|
|
125
|
+
ensRegistry: {
|
|
126
|
+
address: '0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e',
|
|
127
|
+
},
|
|
116
128
|
ensReverseRegistrar: {
|
|
117
129
|
address: '0xA0a1AbcDAe1a2a4A2EF8e9113Ff0e02DD81DC0C6',
|
|
118
130
|
},
|
|
131
|
+
ensUniversalResolver: {
|
|
132
|
+
address: '0xBaBC7678D7A63104f1658c11D6AE9A21cdA09725',
|
|
133
|
+
},
|
|
134
|
+
},
|
|
135
|
+
holesky: {
|
|
136
|
+
ensBaseRegistrarImplementation: {
|
|
137
|
+
address: '0x57f1887a8BF19b14fC0dF6Fd9B2acc9Af147eA85',
|
|
138
|
+
},
|
|
119
139
|
ensBulkRenewal: {
|
|
120
|
-
address: '
|
|
140
|
+
address: '0xbc4cfB363F948E64Cd73Da6438F64CB37E2e33d1',
|
|
141
|
+
},
|
|
142
|
+
ensDnsRegistrar: {
|
|
143
|
+
address: '0x458d278AEd4cE82BAeC384170f39198b01B8351c',
|
|
121
144
|
},
|
|
122
145
|
ensDnssecImpl: {
|
|
123
|
-
address: '
|
|
146
|
+
address: '0x283af0b28c62c092c9727f1ee09c02ca627eb7f5',
|
|
147
|
+
},
|
|
148
|
+
ensEthRegistrarController: {
|
|
149
|
+
address: '0x179Be112b24Ad4cFC392eF8924DfA08C20Ad8583',
|
|
150
|
+
},
|
|
151
|
+
ensNameWrapper: {
|
|
152
|
+
address: '0xab50971078225D365994dc1Edcb9b7FD72Bb4862',
|
|
153
|
+
},
|
|
154
|
+
ensPublicResolver: {
|
|
155
|
+
address: '0x9010A27463717360cAD99CEA8bD39b8705CCA238',
|
|
156
|
+
},
|
|
157
|
+
ensRegistry: {
|
|
158
|
+
address: '0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e',
|
|
159
|
+
},
|
|
160
|
+
ensReverseRegistrar: {
|
|
161
|
+
address: '0x132AC0B116a73add4225029D1951A9A707Ef673f',
|
|
124
162
|
},
|
|
125
163
|
ensUniversalResolver: {
|
|
126
|
-
address: '
|
|
164
|
+
address: '0x2548a7E09deE955c4d97688dcB6C5b24085725f5',
|
|
127
165
|
},
|
|
128
166
|
},
|
|
129
167
|
} as const satisfies Record<
|
|
@@ -153,6 +191,11 @@ export const subgraphs = {
|
|
|
153
191
|
url: 'https://api.studio.thegraph.com/query/49574/enssepolia/version/latest',
|
|
154
192
|
},
|
|
155
193
|
},
|
|
194
|
+
holesky: {
|
|
195
|
+
ens: {
|
|
196
|
+
url: 'https://api.studio.thegraph.com/query/49574/ensholesky/version/latest',
|
|
197
|
+
},
|
|
198
|
+
},
|
|
156
199
|
} as const satisfies Record<SupportedChain, Subgraphs>
|
|
157
200
|
|
|
158
201
|
type EnsChainContracts = {
|
|
@@ -172,17 +215,29 @@ type BaseChainContracts = {
|
|
|
172
215
|
ensRegistry: ChainContract
|
|
173
216
|
}
|
|
174
217
|
|
|
175
|
-
export type ChainWithEns<TChain extends Chain = Chain> =
|
|
218
|
+
export type ChainWithEns<TChain extends Chain = Chain> = Omit<
|
|
219
|
+
TChain,
|
|
220
|
+
'contracts'
|
|
221
|
+
> & {
|
|
176
222
|
contracts: BaseChainContracts & EnsChainContracts
|
|
177
223
|
subgraphs: Subgraphs
|
|
178
224
|
}
|
|
179
225
|
|
|
226
|
+
export type ChainWithBaseContracts = Assign<
|
|
227
|
+
Omit<Chain, 'contracts'>,
|
|
228
|
+
{
|
|
229
|
+
contracts: BaseChainContracts
|
|
230
|
+
}
|
|
231
|
+
>
|
|
232
|
+
|
|
180
233
|
export type CheckedChainWithEns<TChain extends Chain> =
|
|
181
234
|
TChain['network'] extends SupportedChain
|
|
182
|
-
? TChain
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
235
|
+
? TChain['contracts'] extends BaseChainContracts
|
|
236
|
+
? TChain & {
|
|
237
|
+
contracts: Prettify<(typeof addresses)[TChain['network']]>
|
|
238
|
+
subgraphs: (typeof subgraphs)[TChain['network']]
|
|
239
|
+
}
|
|
240
|
+
: never
|
|
186
241
|
: never
|
|
187
242
|
|
|
188
243
|
export type ClientWithEns<
|
|
@@ -1,4 +1,66 @@
|
|
|
1
|
+
export const dnsRegistrarErrors = [
|
|
2
|
+
{
|
|
3
|
+
inputs: [
|
|
4
|
+
{
|
|
5
|
+
internalType: 'bytes',
|
|
6
|
+
name: 'name',
|
|
7
|
+
type: 'bytes',
|
|
8
|
+
},
|
|
9
|
+
],
|
|
10
|
+
name: 'InvalidPublicSuffix',
|
|
11
|
+
type: 'error',
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
inputs: [],
|
|
15
|
+
name: 'NoOwnerRecordFound',
|
|
16
|
+
type: 'error',
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
inputs: [
|
|
20
|
+
{
|
|
21
|
+
internalType: 'uint256',
|
|
22
|
+
name: 'offset',
|
|
23
|
+
type: 'uint256',
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
internalType: 'uint256',
|
|
27
|
+
name: 'length',
|
|
28
|
+
type: 'uint256',
|
|
29
|
+
},
|
|
30
|
+
],
|
|
31
|
+
name: 'OffsetOutOfBoundsError',
|
|
32
|
+
type: 'error',
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
inputs: [
|
|
36
|
+
{
|
|
37
|
+
internalType: 'address',
|
|
38
|
+
name: 'caller',
|
|
39
|
+
type: 'address',
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
internalType: 'address',
|
|
43
|
+
name: 'owner',
|
|
44
|
+
type: 'address',
|
|
45
|
+
},
|
|
46
|
+
],
|
|
47
|
+
name: 'PermissionDenied',
|
|
48
|
+
type: 'error',
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
inputs: [],
|
|
52
|
+
name: 'PreconditionNotMet',
|
|
53
|
+
type: 'error',
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
inputs: [],
|
|
57
|
+
name: 'StaleProof',
|
|
58
|
+
type: 'error',
|
|
59
|
+
},
|
|
60
|
+
] as const
|
|
61
|
+
|
|
1
62
|
export const dnsRegistrarProveAndClaimSnippet = [
|
|
63
|
+
...dnsRegistrarErrors,
|
|
2
64
|
{
|
|
3
65
|
inputs: [
|
|
4
66
|
{
|
|
@@ -19,10 +81,6 @@ export const dnsRegistrarProveAndClaimSnippet = [
|
|
|
19
81
|
name: 'input',
|
|
20
82
|
type: 'tuple[]',
|
|
21
83
|
},
|
|
22
|
-
{
|
|
23
|
-
name: 'proof',
|
|
24
|
-
type: 'bytes',
|
|
25
|
-
},
|
|
26
84
|
],
|
|
27
85
|
name: 'proveAndClaim',
|
|
28
86
|
outputs: [],
|
|
@@ -32,6 +90,7 @@ export const dnsRegistrarProveAndClaimSnippet = [
|
|
|
32
90
|
] as const
|
|
33
91
|
|
|
34
92
|
export const dnsRegistrarProveAndClaimWithResolverSnippet = [
|
|
93
|
+
...dnsRegistrarErrors,
|
|
35
94
|
{
|
|
36
95
|
inputs: [
|
|
37
96
|
{
|
|
@@ -41,10 +100,12 @@ export const dnsRegistrarProveAndClaimWithResolverSnippet = [
|
|
|
41
100
|
{
|
|
42
101
|
components: [
|
|
43
102
|
{
|
|
103
|
+
internalType: 'bytes',
|
|
44
104
|
name: 'rrset',
|
|
45
105
|
type: 'bytes',
|
|
46
106
|
},
|
|
47
107
|
{
|
|
108
|
+
internalType: 'bytes',
|
|
48
109
|
name: 'sig',
|
|
49
110
|
type: 'bytes',
|
|
50
111
|
},
|
|
@@ -52,10 +113,6 @@ export const dnsRegistrarProveAndClaimWithResolverSnippet = [
|
|
|
52
113
|
name: 'input',
|
|
53
114
|
type: 'tuple[]',
|
|
54
115
|
},
|
|
55
|
-
{
|
|
56
|
-
name: 'proof',
|
|
57
|
-
type: 'bytes',
|
|
58
|
-
},
|
|
59
116
|
{
|
|
60
117
|
name: 'resolver',
|
|
61
118
|
type: 'address',
|
|
@@ -1,29 +1,31 @@
|
|
|
1
|
-
export const
|
|
1
|
+
export const dnssecImplVerifyRrSetSnippet = [
|
|
2
2
|
{
|
|
3
3
|
inputs: [
|
|
4
4
|
{
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
5
|
+
components: [
|
|
6
|
+
{
|
|
7
|
+
name: 'rrset',
|
|
8
|
+
type: 'bytes',
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
name: 'sig',
|
|
12
|
+
type: 'bytes',
|
|
13
|
+
},
|
|
14
|
+
],
|
|
15
|
+
name: 'input',
|
|
16
|
+
type: 'tuple[]',
|
|
11
17
|
},
|
|
12
18
|
],
|
|
13
|
-
name: '
|
|
19
|
+
name: 'verifyRRSet',
|
|
14
20
|
outputs: [
|
|
15
21
|
{
|
|
16
|
-
name: '',
|
|
17
|
-
type: '
|
|
22
|
+
name: 'rrs',
|
|
23
|
+
type: 'bytes',
|
|
18
24
|
},
|
|
19
25
|
{
|
|
20
|
-
name: '',
|
|
26
|
+
name: 'inception',
|
|
21
27
|
type: 'uint32',
|
|
22
28
|
},
|
|
23
|
-
{
|
|
24
|
-
name: '',
|
|
25
|
-
type: 'bytes20',
|
|
26
|
-
},
|
|
27
29
|
],
|
|
28
30
|
stateMutability: 'view',
|
|
29
31
|
type: 'function',
|
|
@@ -1,13 +1,19 @@
|
|
|
1
|
+
import type { Address, Chain } from 'viem'
|
|
1
2
|
import { getChainContractAddress as _getChainContractAddress } from 'viem/utils'
|
|
2
|
-
import type { ChainWithEns } from './consts.js'
|
|
3
3
|
|
|
4
|
-
type
|
|
5
|
-
chain:
|
|
4
|
+
type ExtractContract<TClient> = TClient extends {
|
|
5
|
+
chain: { contracts: infer C }
|
|
6
6
|
}
|
|
7
|
+
? C extends Record<string, { address: string }>
|
|
8
|
+
? C
|
|
9
|
+
: never
|
|
10
|
+
: never
|
|
7
11
|
|
|
8
12
|
export const getChainContractAddress = <
|
|
9
|
-
|
|
10
|
-
|
|
13
|
+
const TClient extends { chain: Chain },
|
|
14
|
+
TContracts extends ExtractContract<TClient> = ExtractContract<TClient>,
|
|
15
|
+
TContractName extends keyof TContracts = keyof TContracts,
|
|
16
|
+
TContract extends TContracts[TContractName] = TContracts[TContractName],
|
|
11
17
|
>({
|
|
12
18
|
blockNumber,
|
|
13
19
|
client,
|
|
@@ -15,5 +21,14 @@ export const getChainContractAddress = <
|
|
|
15
21
|
}: {
|
|
16
22
|
blockNumber?: bigint
|
|
17
23
|
client: TClient
|
|
18
|
-
contract:
|
|
19
|
-
}) =>
|
|
24
|
+
contract: TContractName
|
|
25
|
+
}) =>
|
|
26
|
+
_getChainContractAddress({
|
|
27
|
+
blockNumber,
|
|
28
|
+
chain: client.chain,
|
|
29
|
+
contract: contract as string,
|
|
30
|
+
}) as TContract extends { address: infer A }
|
|
31
|
+
? A extends Address
|
|
32
|
+
? A
|
|
33
|
+
: never
|
|
34
|
+
: Address
|