@ensdomains/ensjs 3.0.0-alpha.2 → 3.0.0-alpha.21

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.
Files changed (683) hide show
  1. package/dist/cjs/GqlManager.js +105 -37
  2. package/dist/cjs/contracts/baseRegistrar.js +24 -3
  3. package/dist/cjs/contracts/bulkRenewal.js +25 -0
  4. package/dist/cjs/contracts/ethRegistrarController.js +24 -3
  5. package/dist/cjs/contracts/getContractAddress.js +62 -43
  6. package/dist/cjs/contracts/index.js +81 -32
  7. package/dist/cjs/contracts/multicall.js +24 -21
  8. package/dist/cjs/contracts/nameWrapper.js +24 -3
  9. package/dist/cjs/contracts/publicResolver.js +24 -3
  10. package/dist/cjs/contracts/registry.js +24 -3
  11. package/dist/cjs/contracts/reverseRegistrar.js +24 -3
  12. package/dist/cjs/contracts/types.js +15 -1
  13. package/dist/cjs/contracts/universalResolver.js +24 -3
  14. package/dist/cjs/functions/batch.js +42 -15
  15. package/dist/cjs/functions/batchWrappers.js +97 -67
  16. package/dist/cjs/functions/burnFuses.js +64 -14
  17. package/dist/cjs/functions/commitName.js +47 -0
  18. package/dist/cjs/functions/createSubname.js +79 -38
  19. package/dist/cjs/functions/deleteSubname.js +62 -4
  20. package/dist/cjs/functions/getDNSOwner.js +82 -0
  21. package/dist/cjs/functions/getExpiry.js +110 -41
  22. package/dist/cjs/functions/getFuses.js +63 -56
  23. package/dist/cjs/functions/getHistory.js +109 -173
  24. package/dist/cjs/functions/getName.js +51 -28
  25. package/dist/cjs/functions/getNames.js +118 -104
  26. package/dist/cjs/functions/getOwner.js +147 -125
  27. package/dist/cjs/functions/getPrice.js +118 -43
  28. package/dist/cjs/functions/getProfile.js +421 -265
  29. package/dist/cjs/functions/getRecords.js +29 -9
  30. package/dist/cjs/functions/getResolver.js +41 -19
  31. package/dist/cjs/functions/getSpecificRecord.js +188 -261
  32. package/dist/cjs/functions/getSubnames.js +74 -118
  33. package/dist/cjs/functions/initialGetters.js +46 -37
  34. package/dist/cjs/functions/registerName.js +42 -0
  35. package/dist/cjs/functions/renewNames.js +42 -0
  36. package/dist/cjs/functions/setName.js +40 -15
  37. package/dist/cjs/functions/setRecord.js +55 -0
  38. package/dist/cjs/functions/setRecords.js +49 -20
  39. package/dist/cjs/functions/setResolver.js +43 -23
  40. package/dist/cjs/functions/transferName.js +60 -30
  41. package/dist/cjs/functions/transferSubname.js +60 -24
  42. package/dist/cjs/functions/unwrapName.js +49 -25
  43. package/dist/cjs/functions/wrapName.js +121 -57
  44. package/dist/cjs/generated/BaseRegistrarImplementation.js +15 -1
  45. package/dist/cjs/generated/BulkRenewal.js +16 -0
  46. package/dist/cjs/generated/DNSRegistrar.js +15 -1
  47. package/dist/cjs/generated/DNSSECImpl.js +15 -1
  48. package/dist/cjs/generated/DefaultReverseResolver.js +15 -1
  49. package/dist/cjs/generated/ENSRegistry.js +15 -1
  50. package/dist/cjs/generated/ETHRegistrarController.js +15 -1
  51. package/dist/cjs/generated/Multicall.js +15 -1
  52. package/dist/cjs/generated/NameWrapper.js +15 -1
  53. package/dist/cjs/generated/P256SHA256Algorithm.js +15 -1
  54. package/dist/cjs/generated/PublicResolver.js +15 -1
  55. package/dist/cjs/generated/RSASHA1Algorithm.js +15 -1
  56. package/dist/cjs/generated/RSASHA256Algorithm.js +15 -1
  57. package/dist/cjs/generated/ReverseRegistrar.js +15 -1
  58. package/dist/cjs/generated/Root.js +15 -1
  59. package/dist/cjs/generated/SHA1Digest.js +15 -1
  60. package/dist/cjs/generated/SHA1NSEC3Digest.js +15 -1
  61. package/dist/cjs/generated/SHA256Digest.js +15 -1
  62. package/dist/cjs/generated/StaticMetadataService.js +15 -1
  63. package/dist/cjs/generated/TLDPublicSuffixList.js +15 -1
  64. package/dist/cjs/generated/UniversalResolver.js +15 -1
  65. package/dist/cjs/generated/common.js +15 -1
  66. package/dist/cjs/generated/factories/BaseRegistrarImplementation__factory.js +784 -764
  67. package/dist/cjs/generated/factories/BulkRenewal__factory.js +120 -0
  68. package/dist/cjs/generated/factories/DNSRegistrar__factory.js +281 -288
  69. package/dist/cjs/generated/factories/DNSSECImpl__factory.js +485 -492
  70. package/dist/cjs/generated/factories/DefaultReverseResolver__factory.js +102 -82
  71. package/dist/cjs/generated/factories/ENSRegistry__factory.js +447 -431
  72. package/dist/cjs/generated/factories/ETHRegistrarController__factory.js +534 -504
  73. package/dist/cjs/generated/factories/Multicall__factory.js +457 -441
  74. package/dist/cjs/generated/factories/NameWrapper__factory.js +1341 -1194
  75. package/dist/cjs/generated/factories/P256SHA256Algorithm__factory.js +60 -67
  76. package/dist/cjs/generated/factories/PublicResolver__factory.js +901 -885
  77. package/dist/cjs/generated/factories/RSASHA1Algorithm__factory.js +60 -67
  78. package/dist/cjs/generated/factories/RSASHA256Algorithm__factory.js +60 -67
  79. package/dist/cjs/generated/factories/ReverseRegistrar__factory.js +349 -333
  80. package/dist/cjs/generated/factories/Root__factory.js +253 -237
  81. package/dist/cjs/generated/factories/SHA1Digest__factory.js +55 -62
  82. package/dist/cjs/generated/factories/SHA1NSEC3Digest__factory.js +60 -67
  83. package/dist/cjs/generated/factories/SHA256Digest__factory.js +55 -62
  84. package/dist/cjs/generated/factories/StaticMetadataService__factory.js +64 -44
  85. package/dist/cjs/generated/factories/TLDPublicSuffixList__factory.js +50 -57
  86. package/dist/cjs/generated/factories/UniversalResolver__factory.js +215 -199
  87. package/dist/cjs/generated/factories/index.js +63 -17
  88. package/dist/cjs/generated/index.js +70 -37
  89. package/dist/cjs/index.js +319 -214
  90. package/dist/cjs/utils/contentHash.js +145 -142
  91. package/dist/cjs/utils/createReverseNode.js +23 -2
  92. package/dist/cjs/utils/format.js +27 -8
  93. package/dist/cjs/utils/fuses.js +64 -13
  94. package/dist/cjs/utils/generateFuseInput.js +37 -16
  95. package/dist/cjs/utils/hexEncodedName.js +29 -7
  96. package/dist/cjs/utils/labels.js +99 -83
  97. package/dist/cjs/utils/makeHashIndexes.js +27 -6
  98. package/dist/cjs/utils/normalise.js +49 -22
  99. package/dist/cjs/utils/recordHelpers.js +84 -39
  100. package/dist/cjs/utils/registerHelpers.js +114 -46
  101. package/dist/cjs/utils/singleCall.js +23 -6
  102. package/dist/cjs/utils/validation.js +76 -63
  103. package/dist/cjs/utils/wrapperExpiry.js +44 -0
  104. package/dist/cjs/utils/writeTx.js +25 -0
  105. package/dist/esm/GqlManager.mjs +85 -0
  106. package/dist/esm/contracts/baseRegistrar.mjs +6 -0
  107. package/dist/esm/contracts/bulkRenewal.mjs +6 -0
  108. package/dist/esm/contracts/ethRegistrarController.mjs +6 -0
  109. package/dist/esm/contracts/getContractAddress.mjs +46 -0
  110. package/dist/esm/contracts/index.mjs +61 -0
  111. package/dist/esm/contracts/multicall.mjs +6 -0
  112. package/dist/esm/contracts/nameWrapper.mjs +6 -0
  113. package/dist/esm/contracts/publicResolver.mjs +6 -0
  114. package/dist/esm/contracts/registry.mjs +6 -0
  115. package/dist/esm/contracts/reverseRegistrar.mjs +6 -0
  116. package/dist/esm/contracts/types.mjs +0 -0
  117. package/dist/esm/contracts/universalResolver.mjs +6 -0
  118. package/dist/esm/functions/batch.mjs +29 -0
  119. package/dist/esm/functions/batchWrappers.mjs +82 -0
  120. package/dist/esm/functions/burnFuses.mjs +52 -0
  121. package/dist/esm/functions/commitName.mjs +28 -0
  122. package/dist/esm/functions/createSubname.mjs +60 -0
  123. package/dist/esm/functions/deleteSubname.mjs +45 -0
  124. package/dist/esm/functions/getDNSOwner.mjs +57 -0
  125. package/dist/esm/functions/getExpiry.mjs +95 -0
  126. package/dist/esm/functions/getFuses.mjs +50 -0
  127. package/dist/esm/functions/getHistory.mjs +196 -0
  128. package/dist/esm/functions/getName.mjs +38 -0
  129. package/dist/esm/functions/getNames.mjs +217 -0
  130. package/dist/esm/functions/getOwner.mjs +143 -0
  131. package/dist/esm/functions/getPrice.mjs +106 -0
  132. package/dist/esm/functions/getProfile.mjs +439 -0
  133. package/dist/esm/functions/getRecords.mjs +12 -0
  134. package/dist/esm/functions/getResolver.mjs +27 -0
  135. package/dist/esm/functions/getSpecificRecord.mjs +176 -0
  136. package/dist/esm/functions/getSubnames.mjs +91 -0
  137. package/dist/esm/functions/initialGetters.mjs +23 -0
  138. package/dist/esm/functions/registerName.mjs +25 -0
  139. package/dist/esm/functions/renewNames.mjs +23 -0
  140. package/dist/esm/functions/setName.mjs +23 -0
  141. package/dist/esm/functions/setRecord.mjs +36 -0
  142. package/dist/esm/functions/setRecords.mjs +32 -0
  143. package/dist/esm/functions/setResolver.mjs +29 -0
  144. package/dist/esm/functions/transferName.mjs +45 -0
  145. package/dist/esm/functions/transferSubname.mjs +45 -0
  146. package/dist/esm/functions/unwrapName.mjs +33 -0
  147. package/dist/esm/functions/wrapName.mjs +103 -0
  148. package/dist/esm/generated/BaseRegistrarImplementation.mjs +0 -0
  149. package/dist/esm/generated/BulkRenewal.mjs +0 -0
  150. package/dist/esm/generated/DNSRegistrar.mjs +0 -0
  151. package/dist/esm/generated/DNSSECImpl.mjs +0 -0
  152. package/dist/esm/generated/DefaultReverseResolver.mjs +0 -0
  153. package/dist/esm/generated/ENSRegistry.mjs +0 -0
  154. package/dist/esm/generated/ETHRegistrarController.mjs +0 -0
  155. package/dist/esm/generated/Multicall.mjs +0 -0
  156. package/dist/esm/generated/NameWrapper.mjs +0 -0
  157. package/dist/esm/generated/P256SHA256Algorithm.mjs +0 -0
  158. package/dist/esm/generated/PublicResolver.mjs +0 -0
  159. package/dist/esm/generated/RSASHA1Algorithm.mjs +0 -0
  160. package/dist/esm/generated/RSASHA256Algorithm.mjs +0 -0
  161. package/dist/esm/generated/ReverseRegistrar.mjs +0 -0
  162. package/dist/esm/generated/Root.mjs +0 -0
  163. package/dist/esm/generated/SHA1Digest.mjs +0 -0
  164. package/dist/esm/generated/SHA1NSEC3Digest.mjs +0 -0
  165. package/dist/esm/generated/SHA256Digest.mjs +0 -0
  166. package/dist/esm/generated/StaticMetadataService.mjs +0 -0
  167. package/dist/esm/generated/TLDPublicSuffixList.mjs +0 -0
  168. package/dist/esm/generated/UniversalResolver.mjs +0 -0
  169. package/dist/esm/generated/common.mjs +0 -0
  170. package/dist/esm/generated/factories/BaseRegistrarImplementation__factory.mjs +778 -0
  171. package/dist/esm/generated/factories/BulkRenewal__factory.mjs +108 -0
  172. package/dist/esm/generated/factories/DNSRegistrar__factory.mjs +277 -0
  173. package/dist/esm/generated/factories/DNSSECImpl__factory.mjs +482 -0
  174. package/dist/esm/generated/factories/DefaultReverseResolver__factory.mjs +95 -0
  175. package/dist/esm/generated/factories/ENSRegistry__factory.mjs +443 -0
  176. package/dist/esm/generated/factories/ETHRegistrarController__factory.mjs +529 -0
  177. package/dist/esm/generated/factories/Multicall__factory.mjs +461 -0
  178. package/dist/esm/generated/factories/NameWrapper__factory.mjs +1335 -0
  179. package/dist/esm/generated/factories/P256SHA256Algorithm__factory.mjs +52 -0
  180. package/dist/esm/generated/factories/PublicResolver__factory.mjs +896 -0
  181. package/dist/esm/generated/factories/RSASHA1Algorithm__factory.mjs +52 -0
  182. package/dist/esm/generated/factories/RSASHA256Algorithm__factory.mjs +52 -0
  183. package/dist/esm/generated/factories/ReverseRegistrar__factory.mjs +344 -0
  184. package/dist/esm/generated/factories/Root__factory.mjs +247 -0
  185. package/dist/esm/generated/factories/SHA1Digest__factory.mjs +47 -0
  186. package/dist/esm/generated/factories/SHA1NSEC3Digest__factory.mjs +52 -0
  187. package/dist/esm/generated/factories/SHA256Digest__factory.mjs +47 -0
  188. package/dist/esm/generated/factories/StaticMetadataService__factory.mjs +57 -0
  189. package/dist/esm/generated/factories/TLDPublicSuffixList__factory.mjs +42 -0
  190. package/dist/esm/generated/factories/UniversalResolver__factory.mjs +208 -0
  191. package/dist/esm/generated/factories/index.mjs +45 -0
  192. package/dist/esm/generated/index.mjs +47 -0
  193. package/dist/esm/index.mjs +304 -0
  194. package/dist/esm/utils/contentHash.mjs +142 -0
  195. package/dist/esm/utils/createReverseNode.mjs +5 -0
  196. package/dist/esm/utils/format.mjs +9 -0
  197. package/dist/esm/utils/fuses.mjs +56 -0
  198. package/dist/esm/utils/generateFuseInput.mjs +15 -0
  199. package/dist/esm/utils/hexEncodedName.mjs +6 -0
  200. package/dist/esm/utils/labels.mjs +109 -0
  201. package/dist/esm/utils/makeHashIndexes.mjs +10 -0
  202. package/dist/esm/utils/normalise.mjs +30 -0
  203. package/dist/esm/utils/recordHelpers.mjs +70 -0
  204. package/dist/esm/utils/registerHelpers.mjs +95 -0
  205. package/dist/esm/utils/singleCall.mjs +5 -0
  206. package/dist/esm/utils/validation.mjs +67 -0
  207. package/dist/esm/utils/wrapperExpiry.mjs +25 -0
  208. package/dist/esm/utils/writeTx.mjs +6 -0
  209. package/dist/types/GqlManager.d.ts +11 -0
  210. package/dist/{cjs → types}/contracts/baseRegistrar.d.ts +0 -0
  211. package/dist/{cjs/contracts/ethRegistrarController.d.ts → types/contracts/bulkRenewal.d.ts} +1 -1
  212. package/dist/{esm → types}/contracts/ethRegistrarController.d.ts +1 -1
  213. package/dist/{cjs → types}/contracts/getContractAddress.d.ts +0 -0
  214. package/dist/types/contracts/index.d.ts +17 -0
  215. package/dist/{cjs → types}/contracts/multicall.d.ts +0 -0
  216. package/dist/{esm → types}/contracts/nameWrapper.d.ts +1 -1
  217. package/dist/{esm → types}/contracts/publicResolver.d.ts +1 -1
  218. package/dist/{cjs → types}/contracts/registry.d.ts +0 -0
  219. package/dist/{cjs → types}/contracts/reverseRegistrar.d.ts +1 -1
  220. package/dist/{cjs → types}/contracts/types.d.ts +1 -1
  221. package/dist/{cjs → types}/contracts/universalResolver.d.ts +1 -1
  222. package/dist/{cjs → types}/functions/batch.d.ts +0 -0
  223. package/dist/{esm → types}/functions/batchWrappers.d.ts +2 -2
  224. package/dist/types/functions/burnFuses.d.ts +13 -0
  225. package/dist/types/functions/commitName.d.ts +26 -0
  226. package/dist/{esm → types}/functions/createSubname.d.ts +3 -5
  227. package/dist/types/functions/deleteSubname.d.ts +7 -0
  228. package/dist/types/functions/getDNSOwner.d.ts +7 -0
  229. package/dist/types/functions/getExpiry.d.ts +19 -0
  230. package/dist/{cjs → types}/functions/getFuses.d.ts +5 -6
  231. package/dist/types/functions/getHistory.d.ts +28 -0
  232. package/dist/{cjs → types}/functions/getName.d.ts +2 -2
  233. package/dist/{cjs → types}/functions/getNames.d.ts +0 -0
  234. package/dist/{cjs → types}/functions/getOwner.d.ts +0 -0
  235. package/dist/{esm → types}/functions/getPrice.d.ts +2 -2
  236. package/dist/{esm → types}/functions/getProfile.d.ts +4 -1
  237. package/dist/{esm → types}/functions/getRecords.d.ts +1 -0
  238. package/dist/{cjs → types}/functions/getResolver.d.ts +0 -0
  239. package/dist/{esm → types}/functions/getSpecificRecord.d.ts +4 -4
  240. package/dist/{esm → types}/functions/getSubnames.d.ts +2 -2
  241. package/dist/{cjs → types}/functions/initialGetters.d.ts +0 -0
  242. package/dist/types/functions/registerName.d.ts +11 -0
  243. package/dist/types/functions/renewNames.d.ts +6 -0
  244. package/dist/types/functions/setName.d.ts +5 -0
  245. package/dist/types/functions/setRecord.d.ts +18 -0
  246. package/dist/types/functions/setRecords.d.ts +6 -0
  247. package/dist/types/functions/setResolver.d.ts +5 -0
  248. package/dist/types/functions/transferName.d.ts +6 -0
  249. package/dist/types/functions/transferSubname.d.ts +15 -0
  250. package/dist/types/functions/unwrapName.d.ts +5 -0
  251. package/dist/types/functions/wrapName.d.ts +10 -0
  252. package/dist/types/generated/BaseRegistrarImplementation.d.ts +508 -0
  253. package/dist/types/generated/BulkRenewal.d.ts +76 -0
  254. package/dist/{cjs → types}/generated/DNSRegistrar.d.ts +68 -64
  255. package/dist/{esm → types}/generated/DNSSECImpl.d.ts +111 -111
  256. package/dist/{cjs → types}/generated/DefaultReverseResolver.d.ts +17 -17
  257. package/dist/types/generated/ENSRegistry.d.ts +274 -0
  258. package/dist/{esm → types}/generated/ETHRegistrarController.d.ts +111 -109
  259. package/dist/{esm → types}/generated/Multicall.d.ts +60 -60
  260. package/dist/types/generated/NameWrapper.d.ts +814 -0
  261. package/dist/{cjs → types}/generated/P256SHA256Algorithm.d.ts +11 -7
  262. package/dist/types/generated/PublicResolver.d.ts +566 -0
  263. package/dist/{esm → types}/generated/RSASHA1Algorithm.d.ts +11 -7
  264. package/dist/{cjs → types}/generated/RSASHA256Algorithm.d.ts +11 -7
  265. package/dist/{esm → types}/generated/ReverseRegistrar.d.ts +112 -103
  266. package/dist/types/generated/Root.d.ts +173 -0
  267. package/dist/{cjs → types}/generated/SHA1Digest.d.ts +7 -7
  268. package/dist/{esm → types}/generated/SHA1NSEC3Digest.d.ts +11 -7
  269. package/dist/{cjs → types}/generated/SHA256Digest.d.ts +7 -7
  270. package/dist/{cjs → types}/generated/StaticMetadataService.d.ts +7 -7
  271. package/dist/{esm → types}/generated/TLDPublicSuffixList.d.ts +7 -7
  272. package/dist/types/generated/UniversalResolver.d.ts +82 -0
  273. package/dist/{esm → types}/generated/common.d.ts +1 -0
  274. package/dist/{cjs → types}/generated/factories/BaseRegistrarImplementation__factory.d.ts +0 -0
  275. package/dist/{esm/generated/factories/StaticMetadataService__factory.d.ts → types/generated/factories/BulkRenewal__factory.d.ts} +4 -4
  276. package/dist/{esm/generated/factories/ETHRegistrarController__factory.d.ts → types/generated/factories/DNSRegistrar__factory.d.ts} +15 -14
  277. package/dist/{esm/generated/factories/DoNotCallOnChainUniversalResolverProxy__factory.d.ts → types/generated/factories/DNSSECImpl__factory.d.ts} +9 -9
  278. package/dist/{cjs → types}/generated/factories/DefaultReverseResolver__factory.d.ts +0 -0
  279. package/dist/{cjs → types}/generated/factories/ENSRegistry__factory.d.ts +0 -0
  280. package/dist/{cjs → types}/generated/factories/ETHRegistrarController__factory.d.ts +0 -0
  281. package/dist/{cjs → types}/generated/factories/Multicall__factory.d.ts +0 -0
  282. package/dist/{cjs → types}/generated/factories/NameWrapper__factory.d.ts +0 -0
  283. package/dist/types/generated/factories/P256SHA256Algorithm__factory.d.ts +22 -0
  284. package/dist/{cjs → types}/generated/factories/PublicResolver__factory.d.ts +0 -0
  285. package/dist/types/generated/factories/RSASHA1Algorithm__factory.d.ts +22 -0
  286. package/dist/types/generated/factories/RSASHA256Algorithm__factory.d.ts +22 -0
  287. package/dist/{cjs → types}/generated/factories/ReverseRegistrar__factory.d.ts +0 -0
  288. package/dist/{cjs → types}/generated/factories/Root__factory.d.ts +0 -0
  289. package/dist/types/generated/factories/SHA1Digest__factory.d.ts +22 -0
  290. package/dist/types/generated/factories/SHA1NSEC3Digest__factory.d.ts +22 -0
  291. package/dist/types/generated/factories/SHA256Digest__factory.d.ts +22 -0
  292. package/dist/{cjs → types}/generated/factories/StaticMetadataService__factory.d.ts +0 -0
  293. package/dist/types/generated/factories/TLDPublicSuffixList__factory.d.ts +22 -0
  294. package/dist/{cjs → types}/generated/factories/UniversalResolver__factory.d.ts +0 -0
  295. package/dist/types/generated/factories/index.d.ts +21 -0
  296. package/dist/types/generated/index.d.ts +43 -0
  297. package/dist/{esm → types}/index.d.ts +94 -109
  298. package/dist/{cjs → types}/utils/contentHash.d.ts +0 -0
  299. package/dist/{cjs → types}/utils/createReverseNode.d.ts +0 -0
  300. package/dist/{cjs → types}/utils/format.d.ts +0 -0
  301. package/dist/types/utils/fuses.d.ts +43 -0
  302. package/dist/{cjs → types}/utils/generateFuseInput.d.ts +0 -0
  303. package/dist/{cjs → types}/utils/hexEncodedName.d.ts +0 -0
  304. package/dist/{cjs → types}/utils/labels.d.ts +0 -0
  305. package/dist/{cjs → types}/utils/makeHashIndexes.d.ts +0 -0
  306. package/dist/types/utils/normalise.d.ts +2 -0
  307. package/dist/{esm → types}/utils/recordHelpers.d.ts +3 -0
  308. package/dist/types/utils/registerHelpers.d.ts +54 -0
  309. package/dist/{cjs → types}/utils/singleCall.d.ts +0 -0
  310. package/dist/{cjs → types}/utils/validation.d.ts +0 -0
  311. package/dist/types/utils/wrapperExpiry.d.ts +5 -0
  312. package/dist/types/utils/writeTx.d.ts +21 -0
  313. package/package.json +71 -32
  314. package/src/@types/@ensdomains/ens-contracts.d.ts +1 -1
  315. package/src/@types/dns-packet/index.d.ts +114 -0
  316. package/src/ABIs/Multicall.json +452 -0
  317. package/src/GqlManager.test.ts +173 -0
  318. package/src/GqlManager.ts +90 -2
  319. package/src/contracts/bulkRenewal.ts +6 -0
  320. package/src/contracts/getContractAddress.ts +3 -0
  321. package/src/contracts/index.ts +15 -1
  322. package/src/contracts/multicall.ts +0 -19
  323. package/src/contracts/types.ts +1 -0
  324. package/src/functions/batch.test.ts +36 -0
  325. package/src/functions/batch.ts +3 -3
  326. package/src/functions/batchWrappers.test.ts +31 -0
  327. package/src/functions/batchWrappers.ts +2 -2
  328. package/src/functions/burnFuses.test.ts +148 -0
  329. package/src/functions/burnFuses.ts +67 -11
  330. package/src/functions/commitName.test.ts +61 -0
  331. package/src/functions/commitName.ts +36 -0
  332. package/src/{tests → functions}/createSubname.test.ts +11 -19
  333. package/src/functions/createSubname.ts +20 -15
  334. package/src/functions/deleteSubname.test.ts +49 -0
  335. package/src/functions/deleteSubname.ts +51 -13
  336. package/src/functions/getDNSOwner.test.ts +119 -0
  337. package/src/functions/getDNSOwner.ts +61 -0
  338. package/src/functions/getExpiry.test.ts +55 -0
  339. package/src/functions/getExpiry.ts +87 -9
  340. package/src/functions/getFuses.test.ts +96 -0
  341. package/src/functions/getFuses.ts +23 -44
  342. package/src/functions/getHistory.test.ts +29 -0
  343. package/src/functions/getHistory.ts +27 -141
  344. package/src/{tests → functions}/getName.test.ts +11 -11
  345. package/src/functions/getName.ts +2 -2
  346. package/src/functions/getNames.test.ts +285 -0
  347. package/src/functions/getNames.ts +25 -30
  348. package/src/functions/getOwner.test.ts +67 -0
  349. package/src/functions/getOwner.ts +16 -10
  350. package/src/functions/getPrice.test.ts +52 -0
  351. package/src/functions/getPrice.ts +62 -10
  352. package/src/{tests → functions}/getProfile.test.ts +54 -27
  353. package/src/functions/getProfile.ts +161 -96
  354. package/src/functions/getRecords.ts +2 -1
  355. package/src/functions/getResolver.test.ts +15 -0
  356. package/src/{tests → functions}/getSpecificRecord.test.ts +21 -18
  357. package/src/functions/getSpecificRecord.ts +18 -147
  358. package/src/functions/getSubnames.test.ts +675 -0
  359. package/src/functions/getSubnames.ts +43 -102
  360. package/src/{tests → functions}/makeCommitment.test.ts +6 -6
  361. package/src/{tests → functions}/normalise.test.ts +0 -0
  362. package/src/functions/registerName.test.ts +59 -0
  363. package/src/functions/registerName.ts +38 -0
  364. package/src/functions/renewNames.test.ts +64 -0
  365. package/src/functions/renewNames.ts +30 -0
  366. package/src/{tests → functions}/setName.test.ts +16 -16
  367. package/src/functions/setName.ts +15 -17
  368. package/src/functions/setRecord.test.ts +103 -0
  369. package/src/functions/setRecord.ts +59 -0
  370. package/src/{tests → functions}/setRecords.test.ts +19 -16
  371. package/src/functions/setRecords.ts +19 -13
  372. package/src/{tests → functions}/setResolver.test.ts +17 -25
  373. package/src/functions/setResolver.ts +15 -20
  374. package/src/functions/transferName.test.ts +65 -0
  375. package/src/functions/transferName.ts +17 -21
  376. package/src/functions/transferSubname.test.ts +55 -0
  377. package/src/functions/transferSubname.ts +39 -14
  378. package/src/functions/unwrapName.test.ts +53 -0
  379. package/src/functions/unwrapName.ts +23 -20
  380. package/src/functions/wrapName.test.ts +141 -0
  381. package/src/functions/wrapName.ts +71 -58
  382. package/src/generated/BaseRegistrarImplementation.ts +382 -296
  383. package/src/generated/BulkRenewal.ts +197 -0
  384. package/src/generated/DNSRegistrar.ts +103 -89
  385. package/src/generated/DNSSECImpl.ts +180 -149
  386. package/src/generated/DefaultReverseResolver.ts +37 -21
  387. package/src/generated/ENSRegistry.ts +257 -184
  388. package/src/generated/ETHRegistrarController.ts +252 -191
  389. package/src/generated/Multicall.ts +73 -57
  390. package/src/generated/NameWrapper.ts +979 -649
  391. package/src/generated/P256SHA256Algorithm.ts +21 -16
  392. package/src/generated/PublicResolver.ts +452 -362
  393. package/src/generated/RSASHA1Algorithm.ts +21 -16
  394. package/src/generated/RSASHA256Algorithm.ts +21 -16
  395. package/src/generated/ReverseRegistrar.ts +193 -141
  396. package/src/generated/Root.ts +146 -86
  397. package/src/generated/SHA1Digest.ts +12 -11
  398. package/src/generated/SHA1NSEC3Digest.ts +21 -16
  399. package/src/generated/SHA256Digest.ts +12 -11
  400. package/src/generated/StaticMetadataService.ts +22 -6
  401. package/src/generated/TLDPublicSuffixList.ts +10 -6
  402. package/src/generated/UniversalResolver.ts +44 -40
  403. package/src/generated/common.ts +2 -0
  404. package/src/generated/factories/BulkRenewal__factory.ts +108 -0
  405. package/src/generated/factories/DNSRegistrar__factory.ts +4 -56
  406. package/src/generated/factories/DNSSECImpl__factory.ts +4 -49
  407. package/src/generated/factories/ETHRegistrarController__factory.ts +14 -4
  408. package/src/generated/factories/NameWrapper__factory.ts +210 -79
  409. package/src/generated/factories/P256SHA256Algorithm__factory.ts +4 -40
  410. package/src/generated/factories/RSASHA1Algorithm__factory.ts +4 -40
  411. package/src/generated/factories/RSASHA256Algorithm__factory.ts +4 -40
  412. package/src/generated/factories/SHA1Digest__factory.ts +4 -40
  413. package/src/generated/factories/SHA1NSEC3Digest__factory.ts +4 -40
  414. package/src/generated/factories/SHA256Digest__factory.ts +4 -40
  415. package/src/generated/factories/TLDPublicSuffixList__factory.ts +4 -40
  416. package/src/generated/factories/index.ts +15 -0
  417. package/src/generated/index.ts +31 -1
  418. package/src/index.ts +169 -63
  419. package/src/utils/contentHash.ts +24 -22
  420. package/src/utils/createReverseNode.ts +1 -1
  421. package/src/utils/fuses.ts +52 -4
  422. package/src/utils/labels.ts +6 -4
  423. package/src/utils/normalise.ts +11 -5
  424. package/src/utils/recordHelpers.ts +52 -20
  425. package/src/utils/registerHelpers.ts +112 -53
  426. package/src/utils/validation.ts +8 -9
  427. package/src/utils/wrapperExpiry.ts +29 -0
  428. package/src/utils/writeTx.ts +16 -0
  429. package/dist/cjs/GqlManager.d.ts +0 -6
  430. package/dist/cjs/contracts/doNotCallOnChainUniversalResolverProxy.d.ts +0 -3
  431. package/dist/cjs/contracts/doNotCallOnChainUniversalResolverProxy.js +0 -4
  432. package/dist/cjs/contracts/index.d.ts +0 -16
  433. package/dist/cjs/contracts/nameWrapper.d.ts +0 -3
  434. package/dist/cjs/contracts/publicResolver.d.ts +0 -3
  435. package/dist/cjs/functions/batchWrappers.d.ts +0 -29
  436. package/dist/cjs/functions/burnFuses.d.ts +0 -3
  437. package/dist/cjs/functions/createSubname.d.ts +0 -19
  438. package/dist/cjs/functions/deleteSubname.d.ts +0 -4
  439. package/dist/cjs/functions/getExpiry.d.ts +0 -12
  440. package/dist/cjs/functions/getHistory.d.ts +0 -54
  441. package/dist/cjs/functions/getPrice.d.ts +0 -13
  442. package/dist/cjs/functions/getProfile.d.ts +0 -30
  443. package/dist/cjs/functions/getRecords.d.ts +0 -32
  444. package/dist/cjs/functions/getSpecificRecord.d.ts +0 -73
  445. package/dist/cjs/functions/getSubnames.d.ts +0 -26
  446. package/dist/cjs/functions/setName.d.ts +0 -4
  447. package/dist/cjs/functions/setRecords.d.ts +0 -3
  448. package/dist/cjs/functions/setResolver.d.ts +0 -4
  449. package/dist/cjs/functions/transferName.d.ts +0 -5
  450. package/dist/cjs/functions/transferSubname.d.ts +0 -5
  451. package/dist/cjs/functions/unwrapName.d.ts +0 -4
  452. package/dist/cjs/functions/wrapName.d.ts +0 -6
  453. package/dist/cjs/generated/BaseRegistrarImplementation.d.ts +0 -487
  454. package/dist/cjs/generated/DNSSECImpl.d.ts +0 -402
  455. package/dist/cjs/generated/DoNotCallOnChainUniversalResolverProxy.d.ts +0 -144
  456. package/dist/cjs/generated/DoNotCallOnChainUniversalResolverProxy.js +0 -2
  457. package/dist/cjs/generated/ENSRegistry.d.ts +0 -259
  458. package/dist/cjs/generated/ETHRegistrarController.d.ts +0 -319
  459. package/dist/cjs/generated/Multicall.d.ts +0 -292
  460. package/dist/cjs/generated/NameWrapper.d.ts +0 -675
  461. package/dist/cjs/generated/PublicResolver.d.ts +0 -542
  462. package/dist/cjs/generated/RSASHA1Algorithm.d.ts +0 -42
  463. package/dist/cjs/generated/ReverseRegistrar.d.ts +0 -259
  464. package/dist/cjs/generated/Root.d.ts +0 -173
  465. package/dist/cjs/generated/SHA1NSEC3Digest.d.ts +0 -72
  466. package/dist/cjs/generated/TLDPublicSuffixList.d.ts +0 -42
  467. package/dist/cjs/generated/UniversalResolver.d.ts +0 -82
  468. package/dist/cjs/generated/common.d.ts +0 -21
  469. package/dist/cjs/generated/factories/DNSRegistrar__factory.d.ts +0 -79
  470. package/dist/cjs/generated/factories/DNSSECImpl__factory.d.ts +0 -68
  471. package/dist/cjs/generated/factories/DoNotCallOnChainUniversalResolverProxy__factory.d.ts +0 -56
  472. package/dist/cjs/generated/factories/DoNotCallOnChainUniversalResolverProxy__factory.js +0 -171
  473. package/dist/cjs/generated/factories/P256SHA256Algorithm__factory.d.ts +0 -34
  474. package/dist/cjs/generated/factories/RSASHA1Algorithm__factory.d.ts +0 -34
  475. package/dist/cjs/generated/factories/RSASHA256Algorithm__factory.d.ts +0 -34
  476. package/dist/cjs/generated/factories/SHA1Digest__factory.d.ts +0 -34
  477. package/dist/cjs/generated/factories/SHA1NSEC3Digest__factory.d.ts +0 -34
  478. package/dist/cjs/generated/factories/SHA256Digest__factory.d.ts +0 -34
  479. package/dist/cjs/generated/factories/TLDPublicSuffixList__factory.d.ts +0 -34
  480. package/dist/cjs/generated/factories/index.d.ts +0 -6
  481. package/dist/cjs/generated/index.d.ts +0 -13
  482. package/dist/cjs/index.d.ts +0 -470
  483. package/dist/cjs/utils/fuses.d.ts +0 -20
  484. package/dist/cjs/utils/normalise.d.ts +0 -2
  485. package/dist/cjs/utils/recordHelpers.d.ts +0 -13
  486. package/dist/cjs/utils/registerHelpers.d.ts +0 -26
  487. package/dist/esm/GqlManager.d.ts +0 -6
  488. package/dist/esm/GqlManager.js +0 -18
  489. package/dist/esm/contracts/baseRegistrar.d.ts +0 -3
  490. package/dist/esm/contracts/baseRegistrar.js +0 -2
  491. package/dist/esm/contracts/doNotCallOnChainUniversalResolverProxy.d.ts +0 -3
  492. package/dist/esm/contracts/doNotCallOnChainUniversalResolverProxy.js +0 -2
  493. package/dist/esm/contracts/ethRegistrarController.js +0 -2
  494. package/dist/esm/contracts/getContractAddress.d.ts +0 -3
  495. package/dist/esm/contracts/getContractAddress.js +0 -42
  496. package/dist/esm/contracts/index.d.ts +0 -16
  497. package/dist/esm/contracts/index.js +0 -29
  498. package/dist/esm/contracts/multicall.d.ts +0 -3
  499. package/dist/esm/contracts/multicall.js +0 -20
  500. package/dist/esm/contracts/nameWrapper.js +0 -2
  501. package/dist/esm/contracts/publicResolver.js +0 -2
  502. package/dist/esm/contracts/registry.d.ts +0 -3
  503. package/dist/esm/contracts/registry.js +0 -2
  504. package/dist/esm/contracts/reverseRegistrar.d.ts +0 -3
  505. package/dist/esm/contracts/reverseRegistrar.js +0 -2
  506. package/dist/esm/contracts/types.d.ts +0 -2
  507. package/dist/esm/contracts/types.js +0 -1
  508. package/dist/esm/contracts/universalResolver.d.ts +0 -3
  509. package/dist/esm/contracts/universalResolver.js +0 -2
  510. package/dist/esm/functions/batch.d.ts +0 -9
  511. package/dist/esm/functions/batch.js +0 -19
  512. package/dist/esm/functions/batchWrappers.js +0 -68
  513. package/dist/esm/functions/burnFuses.d.ts +0 -3
  514. package/dist/esm/functions/burnFuses.js +0 -12
  515. package/dist/esm/functions/createSubname.js +0 -38
  516. package/dist/esm/functions/deleteSubname.d.ts +0 -4
  517. package/dist/esm/functions/deleteSubname.js +0 -3
  518. package/dist/esm/functions/getExpiry.d.ts +0 -12
  519. package/dist/esm/functions/getExpiry.js +0 -43
  520. package/dist/esm/functions/getFuses.d.ts +0 -17
  521. package/dist/esm/functions/getFuses.js +0 -60
  522. package/dist/esm/functions/getHistory.d.ts +0 -54
  523. package/dist/esm/functions/getHistory.js +0 -273
  524. package/dist/esm/functions/getName.d.ts +0 -19
  525. package/dist/esm/functions/getName.js +0 -32
  526. package/dist/esm/functions/getNames.d.ts +0 -40
  527. package/dist/esm/functions/getNames.js +0 -220
  528. package/dist/esm/functions/getOwner.d.ts +0 -14
  529. package/dist/esm/functions/getOwner.js +0 -138
  530. package/dist/esm/functions/getPrice.js +0 -48
  531. package/dist/esm/functions/getProfile.js +0 -299
  532. package/dist/esm/functions/getRecords.js +0 -8
  533. package/dist/esm/functions/getResolver.d.ts +0 -9
  534. package/dist/esm/functions/getResolver.js +0 -22
  535. package/dist/esm/functions/getSpecificRecord.js +0 -265
  536. package/dist/esm/functions/getSubnames.js +0 -152
  537. package/dist/esm/functions/initialGetters.d.ts +0 -11
  538. package/dist/esm/functions/initialGetters.js +0 -11
  539. package/dist/esm/functions/setName.d.ts +0 -4
  540. package/dist/esm/functions/setName.js +0 -14
  541. package/dist/esm/functions/setRecords.d.ts +0 -3
  542. package/dist/esm/functions/setRecords.js +0 -19
  543. package/dist/esm/functions/setResolver.d.ts +0 -4
  544. package/dist/esm/functions/setResolver.js +0 -25
  545. package/dist/esm/functions/transferName.d.ts +0 -5
  546. package/dist/esm/functions/transferName.js +0 -31
  547. package/dist/esm/functions/transferSubname.d.ts +0 -5
  548. package/dist/esm/functions/transferSubname.js +0 -25
  549. package/dist/esm/functions/unwrapName.d.ts +0 -4
  550. package/dist/esm/functions/unwrapName.js +0 -25
  551. package/dist/esm/functions/wrapName.d.ts +0 -6
  552. package/dist/esm/functions/wrapName.js +0 -58
  553. package/dist/esm/generated/BaseRegistrarImplementation.d.ts +0 -487
  554. package/dist/esm/generated/BaseRegistrarImplementation.js +0 -1
  555. package/dist/esm/generated/DNSRegistrar.d.ts +0 -220
  556. package/dist/esm/generated/DNSRegistrar.js +0 -1
  557. package/dist/esm/generated/DNSSECImpl.js +0 -1
  558. package/dist/esm/generated/DefaultReverseResolver.d.ts +0 -66
  559. package/dist/esm/generated/DefaultReverseResolver.js +0 -1
  560. package/dist/esm/generated/DoNotCallOnChainUniversalResolverProxy.d.ts +0 -144
  561. package/dist/esm/generated/DoNotCallOnChainUniversalResolverProxy.js +0 -1
  562. package/dist/esm/generated/ENSRegistry.d.ts +0 -259
  563. package/dist/esm/generated/ENSRegistry.js +0 -1
  564. package/dist/esm/generated/ETHRegistrarController.js +0 -1
  565. package/dist/esm/generated/Multicall.js +0 -1
  566. package/dist/esm/generated/NameWrapper.d.ts +0 -675
  567. package/dist/esm/generated/NameWrapper.js +0 -1
  568. package/dist/esm/generated/P256SHA256Algorithm.d.ts +0 -72
  569. package/dist/esm/generated/P256SHA256Algorithm.js +0 -1
  570. package/dist/esm/generated/PublicResolver.d.ts +0 -542
  571. package/dist/esm/generated/PublicResolver.js +0 -1
  572. package/dist/esm/generated/RSASHA1Algorithm.js +0 -1
  573. package/dist/esm/generated/RSASHA256Algorithm.d.ts +0 -42
  574. package/dist/esm/generated/RSASHA256Algorithm.js +0 -1
  575. package/dist/esm/generated/ReverseRegistrar.js +0 -1
  576. package/dist/esm/generated/Root.d.ts +0 -173
  577. package/dist/esm/generated/Root.js +0 -1
  578. package/dist/esm/generated/SHA1Digest.d.ts +0 -67
  579. package/dist/esm/generated/SHA1Digest.js +0 -1
  580. package/dist/esm/generated/SHA1NSEC3Digest.js +0 -1
  581. package/dist/esm/generated/SHA256Digest.d.ts +0 -67
  582. package/dist/esm/generated/SHA256Digest.js +0 -1
  583. package/dist/esm/generated/StaticMetadataService.d.ts +0 -42
  584. package/dist/esm/generated/StaticMetadataService.js +0 -1
  585. package/dist/esm/generated/TLDPublicSuffixList.js +0 -1
  586. package/dist/esm/generated/UniversalResolver.d.ts +0 -82
  587. package/dist/esm/generated/UniversalResolver.js +0 -1
  588. package/dist/esm/generated/common.js +0 -1
  589. package/dist/esm/generated/factories/BaseRegistrarImplementation__factory.d.ts +0 -52
  590. package/dist/esm/generated/factories/BaseRegistrarImplementation__factory.js +0 -766
  591. package/dist/esm/generated/factories/DNSRegistrar__factory.d.ts +0 -79
  592. package/dist/esm/generated/factories/DNSRegistrar__factory.js +0 -292
  593. package/dist/esm/generated/factories/DNSSECImpl__factory.d.ts +0 -68
  594. package/dist/esm/generated/factories/DNSSECImpl__factory.js +0 -497
  595. package/dist/esm/generated/factories/DefaultReverseResolver__factory.d.ts +0 -36
  596. package/dist/esm/generated/factories/DefaultReverseResolver__factory.js +0 -83
  597. package/dist/esm/generated/factories/DoNotCallOnChainUniversalResolverProxy__factory.js +0 -167
  598. package/dist/esm/generated/factories/ENSRegistry__factory.d.ts +0 -52
  599. package/dist/esm/generated/factories/ENSRegistry__factory.js +0 -435
  600. package/dist/esm/generated/factories/ETHRegistrarController__factory.js +0 -507
  601. package/dist/esm/generated/factories/Multicall__factory.d.ts +0 -42
  602. package/dist/esm/generated/factories/Multicall__factory.js +0 -453
  603. package/dist/esm/generated/factories/NameWrapper__factory.d.ts +0 -57
  604. package/dist/esm/generated/factories/NameWrapper__factory.js +0 -1196
  605. package/dist/esm/generated/factories/P256SHA256Algorithm__factory.d.ts +0 -34
  606. package/dist/esm/generated/factories/P256SHA256Algorithm__factory.js +0 -67
  607. package/dist/esm/generated/factories/PublicResolver__factory.d.ts +0 -46
  608. package/dist/esm/generated/factories/PublicResolver__factory.js +0 -888
  609. package/dist/esm/generated/factories/RSASHA1Algorithm__factory.d.ts +0 -34
  610. package/dist/esm/generated/factories/RSASHA1Algorithm__factory.js +0 -67
  611. package/dist/esm/generated/factories/RSASHA256Algorithm__factory.d.ts +0 -34
  612. package/dist/esm/generated/factories/RSASHA256Algorithm__factory.js +0 -67
  613. package/dist/esm/generated/factories/ReverseRegistrar__factory.d.ts +0 -46
  614. package/dist/esm/generated/factories/ReverseRegistrar__factory.js +0 -336
  615. package/dist/esm/generated/factories/Root__factory.d.ts +0 -52
  616. package/dist/esm/generated/factories/Root__factory.js +0 -239
  617. package/dist/esm/generated/factories/SHA1Digest__factory.d.ts +0 -34
  618. package/dist/esm/generated/factories/SHA1Digest__factory.js +0 -62
  619. package/dist/esm/generated/factories/SHA1NSEC3Digest__factory.d.ts +0 -34
  620. package/dist/esm/generated/factories/SHA1NSEC3Digest__factory.js +0 -67
  621. package/dist/esm/generated/factories/SHA256Digest__factory.d.ts +0 -34
  622. package/dist/esm/generated/factories/SHA256Digest__factory.js +0 -62
  623. package/dist/esm/generated/factories/StaticMetadataService__factory.js +0 -45
  624. package/dist/esm/generated/factories/TLDPublicSuffixList__factory.d.ts +0 -34
  625. package/dist/esm/generated/factories/TLDPublicSuffixList__factory.js +0 -57
  626. package/dist/esm/generated/factories/UniversalResolver__factory.d.ts +0 -42
  627. package/dist/esm/generated/factories/UniversalResolver__factory.js +0 -200
  628. package/dist/esm/generated/factories/index.d.ts +0 -6
  629. package/dist/esm/generated/factories/index.js +0 -9
  630. package/dist/esm/generated/index.d.ts +0 -13
  631. package/dist/esm/generated/index.js +0 -7
  632. package/dist/esm/index.js +0 -189
  633. package/dist/esm/utils/contentHash.d.ts +0 -28
  634. package/dist/esm/utils/contentHash.js +0 -153
  635. package/dist/esm/utils/createReverseNode.d.ts +0 -2
  636. package/dist/esm/utils/createReverseNode.js +0 -1
  637. package/dist/esm/utils/format.d.ts +0 -3
  638. package/dist/esm/utils/format.js +0 -3
  639. package/dist/esm/utils/fuses.d.ts +0 -20
  640. package/dist/esm/utils/fuses.js +0 -21
  641. package/dist/esm/utils/generateFuseInput.d.ts +0 -3
  642. package/dist/esm/utils/generateFuseInput.js +0 -14
  643. package/dist/esm/utils/hexEncodedName.d.ts +0 -1
  644. package/dist/esm/utils/hexEncodedName.js +0 -2
  645. package/dist/esm/utils/labels.d.ts +0 -14
  646. package/dist/esm/utils/labels.js +0 -95
  647. package/dist/esm/utils/makeHashIndexes.d.ts +0 -2
  648. package/dist/esm/utils/makeHashIndexes.js +0 -3
  649. package/dist/esm/utils/normalise.d.ts +0 -2
  650. package/dist/esm/utils/normalise.js +0 -20
  651. package/dist/esm/utils/recordHelpers.js +0 -39
  652. package/dist/esm/utils/registerHelpers.d.ts +0 -26
  653. package/dist/esm/utils/registerHelpers.js +0 -43
  654. package/dist/esm/utils/singleCall.d.ts +0 -9
  655. package/dist/esm/utils/singleCall.js +0 -5
  656. package/dist/esm/utils/validation.d.ts +0 -8
  657. package/dist/esm/utils/validation.js +0 -67
  658. package/src/ABIs/ETHRegistrarController.json +0 -494
  659. package/src/ABIs/NameWrapper.json +0 -1183
  660. package/src/ABIs/PublicResolver.json +0 -875
  661. package/src/ABIs/ReverseRegistrar.json +0 -323
  662. package/src/ABIs/StaticMetadataService.json +0 -32
  663. package/src/ABIs/UniversalResolver.json +0 -187
  664. package/src/contracts/doNotCallOnChainUniversalResolverProxy.ts +0 -5
  665. package/src/generated/DoNotCallOnChainUniversalResolverProxy.ts +0 -285
  666. package/src/generated/factories/DoNotCallOnChainUniversalResolverProxy__factory.ts +0 -186
  667. package/src/tests/batch.test.ts +0 -36
  668. package/src/tests/batchWrappers.test.ts +0 -31
  669. package/src/tests/burnFuses.test.ts +0 -44
  670. package/src/tests/deleteSubname.test.ts +0 -71
  671. package/src/tests/getExpiry.test.ts +0 -37
  672. package/src/tests/getFuses.test.ts +0 -103
  673. package/src/tests/getHistory.test.ts +0 -101
  674. package/src/tests/getNames.test.ts +0 -247
  675. package/src/tests/getOwner.test.ts +0 -71
  676. package/src/tests/getResolver.test.ts +0 -19
  677. package/src/tests/getSubnames.test.ts +0 -31
  678. package/src/tests/setup.ts +0 -53
  679. package/src/tests/transferName.test.ts +0 -81
  680. package/src/tests/transferSubname.test.ts +0 -73
  681. package/src/tests/unwrapName.test.ts +0 -68
  682. package/src/tests/withProvider.test.ts +0 -28
  683. package/src/tests/wrapName.test.ts +0 -64
@@ -1,23 +1,35 @@
1
+ import { ethers } from 'ethers'
2
+ import dotenv from 'dotenv'
1
3
  import { ENS } from '..'
2
- import setup from './setup'
4
+ import setup from '../tests/setup'
3
5
 
4
- let ENSInstance: ENS
6
+ dotenv.config()
7
+
8
+ let ensInstance: ENS
9
+ let revert: Awaited<ReturnType<typeof setup>>['revert']
10
+ let provider: ethers.providers.JsonRpcProvider
11
+ let accounts: string[]
5
12
 
6
13
  beforeAll(async () => {
7
- ;({ ENSInstance } = await setup())
14
+ ;({ ensInstance, revert, provider } = await setup())
15
+ accounts = await provider.listAccounts()
16
+ })
17
+
18
+ afterAll(async () => {
19
+ await revert()
8
20
  })
9
21
 
10
22
  const checkRecords = (
11
23
  result: Record<string, any> | undefined,
12
24
  textLength = 3,
13
- coinTypeLength = 5,
25
+ coinTypeLength = 3,
14
26
  ) => {
15
27
  expect(result).toBeDefined()
16
28
  if (result) {
17
29
  expect(result.records?.texts).toHaveLength(textLength)
18
30
  expect(result.records?.coinTypes).toHaveLength(coinTypeLength)
19
31
  expect(result.resolverAddress).toBe(
20
- '0x42D63ae25990889E35F215bC95884039Ba354115',
32
+ '0x1613beB3B2C4f22Ee086B2b38C1476A3cE7f78E8',
21
33
  )
22
34
  }
23
35
  }
@@ -27,37 +39,37 @@ jest.setTimeout(20000)
27
39
  describe('getProfile', () => {
28
40
  describe('with an address', () => {
29
41
  it('should return a profile object with no other args', async () => {
30
- const result = await ENSInstance.getProfile(
31
- '0x866B3c4994e1416B7C738B9818b31dC246b95eEE',
42
+ const result = await ensInstance.getProfile(
43
+ '0x3C44CdDdB6a900fa2b585dd299e03d12FA4293BC',
32
44
  )
33
45
  expect(result).toBeDefined()
34
46
  if (result) {
35
- expect((result as any).name).toBe('jefflau.eth')
47
+ expect((result as any).name).toBe('with-profile.eth')
36
48
  expect((result as any).address).toBeUndefined()
37
49
  checkRecords(result)
38
50
  }
39
51
  })
40
52
  it('should return a profile object with specified records', async () => {
41
- const result = await ENSInstance.getProfile(
42
- '0x866B3c4994e1416B7C738B9818b31dC246b95eEE',
53
+ const result = await ensInstance.getProfile(
54
+ '0x3C44CdDdB6a900fa2b585dd299e03d12FA4293BC',
43
55
  { texts: ['description', 'url'], coinTypes: ['ETC', '0'] },
44
56
  )
45
57
  expect(result).toBeDefined()
46
58
  if (result) {
47
- expect((result as any).name).toBe('jefflau.eth')
59
+ expect((result as any).name).toBe('with-profile.eth')
48
60
  expect((result as any).address).toBeUndefined()
49
61
  checkRecords(result, 2, 3)
50
62
  }
51
63
  })
52
64
  it('should return a profile object with all of each specified record type', async () => {
53
- const result = await ENSInstance.getProfile(
54
- '0x866B3c4994e1416B7C738B9818b31dC246b95eEE',
65
+ const result = await ensInstance.getProfile(
66
+ '0x3C44CdDdB6a900fa2b585dd299e03d12FA4293BC',
55
67
  { texts: true, coinTypes: true },
56
68
  )
57
69
  checkRecords(result)
58
70
  })
59
71
  it('should return null for an address without a name', async () => {
60
- const result = await ENSInstance.getProfile(
72
+ const result = await ensInstance.getProfile(
61
73
  '0x8e8db5ccef88cca9d624701db544989c996e3216',
62
74
  )
63
75
  expect(result).toBeUndefined()
@@ -65,52 +77,67 @@ describe('getProfile', () => {
65
77
  })
66
78
  describe('with a name', () => {
67
79
  it('should return a profile object with no other args', async () => {
68
- const result = await ENSInstance.getProfile('jefflau.eth')
80
+ const result = await ensInstance.getProfile('with-profile.eth')
69
81
  expect((result as any).address).toBe(
70
- '0x866B3c4994e1416B7C738B9818b31dC246b95eEE',
82
+ '0x3C44CdDdB6a900fa2b585dd299e03d12FA4293BC',
71
83
  )
72
84
  checkRecords(result)
73
85
  })
74
86
  it('should return a profile object with specified records', async () => {
75
- const result = await ENSInstance.getProfile('jefflau.eth', {
87
+ const result = await ensInstance.getProfile('with-profile.eth', {
76
88
  texts: ['description', 'url'],
77
89
  coinTypes: ['ETC', '0'],
78
90
  })
79
91
  expect((result as any).address).toBe(
80
- '0x866B3c4994e1416B7C738B9818b31dC246b95eEE',
92
+ '0x3C44CdDdB6a900fa2b585dd299e03d12FA4293BC',
81
93
  )
82
94
  checkRecords(result, 2, 3)
83
95
  })
84
96
  it('should return a profile object with all of each specified record type', async () => {
85
- const result = await ENSInstance.getProfile('jefflau.eth', {
97
+ const result = await ensInstance.getProfile('with-profile.eth', {
86
98
  texts: true,
87
99
  coinTypes: true,
88
100
  })
89
101
  checkRecords(result)
90
102
  })
103
+ it('should return a profile object for a specified resolver', async () => {
104
+ const tx = await ensInstance.wrapName('test123.eth', {
105
+ wrappedOwner: accounts[1],
106
+ addressOrIndex: 1,
107
+ })
108
+ await tx.wait()
109
+ const result = await ensInstance.getProfile('test123.eth', {
110
+ resolverAddress: '0x1613beB3B2C4f22Ee086B2b38C1476A3cE7f78E8',
111
+ })
112
+ expect(result).toBeDefined()
113
+ expect(result?.address).toBe(accounts[1])
114
+ expect(result?.resolverAddress).toBe(
115
+ '0x1613beB3B2C4f22Ee086B2b38C1476A3cE7f78E8',
116
+ )
117
+ })
91
118
  it('should return undefined for an unregistered name', async () => {
92
- const result = await ENSInstance.getProfile('test123123123cool.eth')
119
+ const result = await ensInstance.getProfile('test123123123cool.eth')
93
120
  expect(result).toBeUndefined()
94
121
  })
95
122
  })
96
123
  describe('with an old resolver', () => {
97
124
  it('should use fallback methods for a name with an older resolver (no multicall)', async () => {
98
- const result = await ENSInstance.getProfile('pepeq6.eth')
125
+ const result = await ensInstance.getProfile('with-legacy-resolver.eth')
126
+ const deploymentAddresses = JSON.parse(process.env.DEPLOYMENT_ADDRESSES!)
99
127
  expect(result).toBeDefined()
100
128
  if (result) {
101
129
  expect(result.address).toBe(
102
- '0x6308F1c6f283583C8bf8E31Da793B87718b051eD',
130
+ '0x70997970C51812dc3A010C7d01b50e0d17dc79C8',
131
+ )
132
+ expect(result.resolverAddress).toBe(
133
+ deploymentAddresses.NoMulticallResolver.toLowerCase(),
103
134
  )
104
135
  }
105
136
  })
106
137
  })
107
138
  describe('with an unmigrated name', () => {
108
- beforeAll(async () => {
109
- ;({ ENSInstance } = await setup(true))
110
- jest.setTimeout(20000)
111
- })
112
139
  it('should return an object with isMigrated false and a message', async () => {
113
- const result = await ENSInstance.getProfile('jefflau.test')
140
+ const result = await ensInstance.getProfile('legacy.test')
114
141
  expect(result).toBeTruthy()
115
142
  if (result) {
116
143
  expect(result.isMigrated).toBe(false)
@@ -3,6 +3,7 @@ import { ethers } from 'ethers'
3
3
  import { ENSArgs } from '..'
4
4
  import { decodeContenthash, DecodedContentHash } from '../utils/contentHash'
5
5
  import { hexEncodeName } from '../utils/hexEncodedName'
6
+ import { namehash } from '../utils/normalise'
6
7
  import { parseInputType } from '../utils/validation'
7
8
 
8
9
  type InternalProfileOptions = {
@@ -53,8 +54,8 @@ const makeMulticallData = async (
53
54
  options: InternalProfileOptions,
54
55
  ) => {
55
56
  let calls: any[] = []
56
- options.texts &&
57
- (calls = [
57
+ if (options.texts)
58
+ calls = [
58
59
  ...calls,
59
60
  ...(await Promise.all(
60
61
  options.texts.map(async (x) => ({
@@ -63,9 +64,10 @@ const makeMulticallData = async (
63
64
  type: 'text',
64
65
  })),
65
66
  )),
66
- ])
67
- options.coinTypes &&
68
- (calls = [
67
+ ]
68
+
69
+ if (options.coinTypes)
70
+ calls = [
69
71
  ...calls,
70
72
  ...(await Promise.all(
71
73
  options.coinTypes.map(async (x) => ({
@@ -74,7 +76,8 @@ const makeMulticallData = async (
74
76
  type: 'addr',
75
77
  })),
76
78
  )),
77
- ])
79
+ ]
80
+
78
81
  if (typeof options.contentHash === 'boolean' && options.contentHash) {
79
82
  calls.push({
80
83
  key: 'contentHash',
@@ -118,71 +121,6 @@ const fetchWithoutResolverMulticall = async (
118
121
  )
119
122
  }
120
123
 
121
- const getDataForName = async (
122
- {
123
- contracts,
124
- _getAddr,
125
- _getContentHash,
126
- _getText,
127
- resolverMulticallWrapper,
128
- multicallWrapper,
129
- }: ENSArgs<
130
- | 'contracts'
131
- | '_getText'
132
- | '_getAddr'
133
- | '_getContentHash'
134
- | 'resolverMulticallWrapper'
135
- | 'multicallWrapper'
136
- >,
137
- name: string,
138
- options: InternalProfileOptions,
139
- fallbackResolver: string,
140
- ) => {
141
- const universalResolver = await contracts?.getUniversalResolver()
142
-
143
- const { data, calls } = await makeMulticallData(
144
- { _getAddr, _getContentHash, _getText, resolverMulticallWrapper },
145
- name,
146
- options,
147
- )
148
-
149
- let resolvedData: any
150
- let useFallbackResolver = false
151
- try {
152
- resolvedData = await universalResolver?.resolve(hexEncodeName(name), data)
153
- } catch {
154
- useFallbackResolver = true
155
- }
156
-
157
- let resolverAddress: string
158
- let recordData: any
159
-
160
- if (useFallbackResolver) {
161
- resolverAddress = fallbackResolver
162
- recordData = await fetchWithoutResolverMulticall(
163
- { multicallWrapper },
164
- calls,
165
- resolverAddress,
166
- )
167
- } else {
168
- resolverAddress = resolvedData['1']
169
- ;[recordData] = await resolverMulticallWrapper.decode(resolvedData['0'])
170
- }
171
-
172
- const matchAddress = recordData[calls.findIndex((x) => x.key === '60')]
173
-
174
- return {
175
- address: matchAddress && (await _getAddr.decode(matchAddress)),
176
- records: await formatRecords(
177
- { _getAddr, _getContentHash, _getText },
178
- recordData,
179
- calls,
180
- options,
181
- ),
182
- resolverAddress,
183
- }
184
- }
185
-
186
124
  const formatRecords = async (
187
125
  {
188
126
  _getText,
@@ -193,7 +131,7 @@ const formatRecords = async (
193
131
  calls: any[],
194
132
  options: InternalProfileOptions,
195
133
  ) => {
196
- let returnedRecords: DataItem[] = (
134
+ const returnedRecords: DataItem[] = (
197
135
  await Promise.all(
198
136
  data.map(async (item: string, i: number) => {
199
137
  let decodedFromAbi: any
@@ -202,10 +140,10 @@ const formatRecords = async (
202
140
  type: calls[i].type,
203
141
  }
204
142
  if (itemRet.type === 'contenthash') {
205
- decodedFromAbi = ethers.utils.defaultAbiCoder.decode(
143
+ ;[decodedFromAbi] = ethers.utils.defaultAbiCoder.decode(
206
144
  ['bytes'],
207
145
  item,
208
- )[0]
146
+ )
209
147
  if (ethers.utils.hexStripZeros(decodedFromAbi) === '0x') {
210
148
  return
211
149
  }
@@ -239,9 +177,11 @@ const formatRecords = async (
239
177
  ...itemRet,
240
178
  value: await _getContentHash.decode(item),
241
179
  }
180
+ break
242
181
  } catch {
243
182
  return
244
183
  }
184
+ // no default
245
185
  }
246
186
  return itemRet
247
187
  }),
@@ -252,7 +192,7 @@ const formatRecords = async (
252
192
  })
253
193
  .filter((x) => x)
254
194
 
255
- let returnedResponse: {
195
+ const returnedResponse: {
256
196
  contentHash?: string | null | DecodedContentHash
257
197
  coinTypes?: DataItem[]
258
198
  texts?: DataItem[]
@@ -294,14 +234,95 @@ const formatRecords = async (
294
234
  return returnedResponse
295
235
  }
296
236
 
237
+ const getDataForName = async (
238
+ {
239
+ contracts,
240
+ _getAddr,
241
+ _getContentHash,
242
+ _getText,
243
+ resolverMulticallWrapper,
244
+ multicallWrapper,
245
+ }: ENSArgs<
246
+ | 'contracts'
247
+ | '_getText'
248
+ | '_getAddr'
249
+ | '_getContentHash'
250
+ | 'resolverMulticallWrapper'
251
+ | 'multicallWrapper'
252
+ >,
253
+ name: string,
254
+ options: InternalProfileOptions,
255
+ fallbackResolver?: string,
256
+ specificResolver?: string,
257
+ ) => {
258
+ const universalResolver = await contracts?.getUniversalResolver()
259
+
260
+ const { data, calls } = await makeMulticallData(
261
+ { _getAddr, _getContentHash, _getText, resolverMulticallWrapper },
262
+ name,
263
+ options,
264
+ )
265
+
266
+ let resolvedData: any
267
+ let useFallbackResolver = false
268
+ try {
269
+ if (specificResolver) {
270
+ const publicResolver = await contracts?.getPublicResolver(
271
+ undefined,
272
+ specificResolver,
273
+ )
274
+ resolvedData = await publicResolver?.callStatic.multicall(
275
+ calls.map((x) => x.data),
276
+ )
277
+ } else {
278
+ resolvedData = await universalResolver?.resolve(hexEncodeName(name), data)
279
+ }
280
+ } catch {
281
+ useFallbackResolver = true
282
+ }
283
+
284
+ let resolverAddress: string
285
+ let recordData: any
286
+
287
+ if (useFallbackResolver) {
288
+ resolverAddress = specificResolver || fallbackResolver!
289
+ recordData = await fetchWithoutResolverMulticall(
290
+ { multicallWrapper },
291
+ calls,
292
+ resolverAddress,
293
+ )
294
+ } else {
295
+ resolverAddress = specificResolver || resolvedData['1']
296
+ if (specificResolver) {
297
+ recordData = resolvedData
298
+ } else {
299
+ ;[recordData] = await resolverMulticallWrapper.decode(resolvedData['0'])
300
+ }
301
+ }
302
+
303
+ const matchAddress = recordData[calls.findIndex((x) => x.key === '60')]
304
+
305
+ return {
306
+ address: matchAddress && (await _getAddr.decode(matchAddress)),
307
+ records: await formatRecords(
308
+ { _getAddr, _getContentHash, _getText },
309
+ recordData,
310
+ calls,
311
+ options,
312
+ ),
313
+ resolverAddress,
314
+ }
315
+ }
316
+
297
317
  const graphFetch = async (
298
318
  { gqlInstance }: ENSArgs<'gqlInstance'>,
299
319
  name: string,
300
320
  wantedRecords?: ProfileOptions,
321
+ resolverAddress?: string,
301
322
  ) => {
302
323
  const query = gqlInstance.gql`
303
- query getRecords($name: String!) {
304
- domains(where: { name: $name }) {
324
+ query getRecords($id: String!) {
325
+ domain(id: $id) {
305
326
  isMigrated
306
327
  createdAt
307
328
  resolver {
@@ -317,15 +338,46 @@ const graphFetch = async (
317
338
  }
318
339
  `
319
340
 
320
- const client = gqlInstance.client
341
+ const customResolverQuery = gqlInstance.gql`
342
+ query getRecordsWithCustomResolver($id: String!, $resolverId: String!) {
343
+ domain(id: $id) {
344
+ isMigrated
345
+ createdAt
346
+ }
347
+ resolver(id: $resolverId) {
348
+ texts
349
+ coinTypes
350
+ contentHash
351
+ addr {
352
+ id
353
+ }
354
+ }
355
+ }
356
+ `
357
+
358
+ const { client } = gqlInstance
321
359
 
322
- const { domains } = await client.request(query, { name })
360
+ const id = namehash(name)
361
+
362
+ let domain: any
363
+ let resolverResponse: any
364
+
365
+ if (!resolverAddress) {
366
+ ;({ domain } = await client.request(query, { id }))
367
+ resolverResponse = domain?.resolver
368
+ } else {
369
+ const resolverId = `${resolverAddress.toLowerCase()}-${id}`
370
+ ;({ resolver: resolverResponse, domain } = await client.request(
371
+ customResolverQuery,
372
+ { id, resolverId },
373
+ ))
374
+ }
323
375
 
324
- if (!domains || domains.length === 0) return
376
+ if (!domain) return
325
377
 
326
- const [{ resolver: resolverResponse, isMigrated, createdAt }] = domains
378
+ const { isMigrated, createdAt } = domain
327
379
 
328
- let returnedRecords: ProfileResponse = {}
380
+ const returnedRecords: ProfileResponse = {}
329
381
 
330
382
  if (!resolverResponse) return { isMigrated, createdAt }
331
383
 
@@ -333,7 +385,7 @@ const graphFetch = async (
333
385
  return {
334
386
  isMigrated,
335
387
  createdAt,
336
- graphResolverAddress: resolverResponse.address,
388
+ graphResolverAddress: resolverResponse.address || resolverAddress,
337
389
  }
338
390
 
339
391
  Object.keys(wantedRecords).forEach((key: string) => {
@@ -351,7 +403,7 @@ const graphFetch = async (
351
403
  ...returnedRecords,
352
404
  isMigrated,
353
405
  createdAt,
354
- graphResolverAddress: resolverResponse.address,
406
+ graphResolverAddress: resolverResponse.address || resolverAddress,
355
407
  }
356
408
  }
357
409
 
@@ -361,6 +413,10 @@ type ProfileOptions = {
361
413
  coinTypes?: boolean | string[]
362
414
  }
363
415
 
416
+ type InputProfileOptions = ProfileOptions & {
417
+ resolverAddress?: string
418
+ }
419
+
364
420
  const getProfileFromName = async (
365
421
  {
366
422
  contracts,
@@ -380,13 +436,22 @@ const getProfileFromName = async (
380
436
  | 'multicallWrapper'
381
437
  >,
382
438
  name: string,
383
- options?: ProfileOptions,
439
+ options?: InputProfileOptions,
384
440
  ) => {
385
- const usingOptions =
386
- !options || options?.texts === true || options?.coinTypes === true
387
- ? options || { contentHash: true, texts: true, coinTypes: true }
388
- : undefined
389
- const graphResult = await graphFetch({ gqlInstance }, name, usingOptions)
441
+ const { resolverAddress, ..._options } = options || {}
442
+ const optsLength = Object.keys(_options).length
443
+ let usingOptions: InputProfileOptions | undefined
444
+ if (!optsLength || _options?.texts === true || _options?.coinTypes === true) {
445
+ if (optsLength) usingOptions = _options
446
+ else usingOptions = { contentHash: true, texts: true, coinTypes: true }
447
+ }
448
+
449
+ const graphResult = await graphFetch(
450
+ { gqlInstance },
451
+ name,
452
+ usingOptions,
453
+ resolverAddress,
454
+ )
390
455
  if (!graphResult) return
391
456
  const {
392
457
  isMigrated,
@@ -398,7 +463,7 @@ const getProfileFromName = async (
398
463
  createdAt: string
399
464
  graphResolverAddress?: string
400
465
  } & InternalProfileOptions = graphResult
401
- if (!graphResolverAddress)
466
+ if (!graphResolverAddress && !options?.resolverAddress)
402
467
  return { isMigrated, createdAt, message: "Name doesn't have a resolver" }
403
468
  const result = await getDataForName(
404
469
  {
@@ -412,6 +477,7 @@ const getProfileFromName = async (
412
477
  name,
413
478
  usingOptions ? wantedRecords : (options as InternalProfileOptions),
414
479
  graphResolverAddress,
480
+ options?.resolverAddress!,
415
481
  )
416
482
  if (!result)
417
483
  return { isMigrated, createdAt, message: "Records fetch didn't complete" }
@@ -439,7 +505,7 @@ const getProfileFromAddress = async (
439
505
  | 'multicallWrapper'
440
506
  >,
441
507
  address: string,
442
- options?: ProfileOptions,
508
+ options?: InputProfileOptions,
443
509
  ) => {
444
510
  let name
445
511
  try {
@@ -492,15 +558,14 @@ export default async function (
492
558
  | 'multicallWrapper'
493
559
  >,
494
560
  nameOrAddress: string,
495
- options?: ProfileOptions,
561
+ options?: InputProfileOptions,
496
562
  ): Promise<ResolvedProfile | undefined> {
497
563
  if (options && options.coinTypes && typeof options.coinTypes !== 'boolean') {
498
564
  options.coinTypes = options.coinTypes.map((coin: string) => {
499
- if (!isNaN(parseInt(coin))) {
565
+ if (!Number.isNaN(parseInt(coin))) {
500
566
  return coin
501
- } else {
502
- return `${formatsByName[coin.toUpperCase()].coinType}`
503
567
  }
568
+ return `${formatsByName[coin.toUpperCase()].coinType}`
504
569
  })
505
570
  }
506
571
 
@@ -5,6 +5,7 @@ type ProfileOptions = {
5
5
  contentHash?: boolean
6
6
  texts?: boolean | string[]
7
7
  coinTypes?: boolean | string[]
8
+ resolverAddress?: string
8
9
  }
9
10
 
10
11
  export default async function (
@@ -18,5 +19,5 @@ export default async function (
18
19
  throw new Error('Input must be an ENS name')
19
20
  }
20
21
 
21
- return await getProfile(name, options)
22
+ return getProfile(name, options)
22
23
  }
@@ -0,0 +1,15 @@
1
+ import { ENS } from '..'
2
+ import setup from '../tests/setup'
3
+
4
+ let ensInstance: ENS
5
+
6
+ beforeAll(async () => {
7
+ ;({ ensInstance } = await setup())
8
+ })
9
+
10
+ describe('getResolver', () => {
11
+ it('should find the resolver for a name with a resolver', async () => {
12
+ const result = await ensInstance.getResolver('with-profile.eth')
13
+ expect(result).toBe('0x1613beB3B2C4f22Ee086B2b38C1476A3cE7f78E8')
14
+ })
15
+ })
@@ -1,24 +1,24 @@
1
1
  import { ENS } from '..'
2
- import setup from './setup'
2
+ import setup from '../tests/setup'
3
3
 
4
- let ENSInstance: ENS
4
+ let ensInstance: ENS
5
5
 
6
6
  beforeAll(async () => {
7
- ;({ ENSInstance } = await setup())
7
+ ;({ ensInstance } = await setup())
8
8
  })
9
9
 
10
10
  describe('getSpecificRecord', () => {
11
11
  describe('getContentHash', () => {
12
12
  it('should return null for a non-existent name', async () => {
13
- const result = await ENSInstance.getContentHash('test123123cool.eth')
13
+ const result = await ensInstance.getContentHash('test123123cool.eth')
14
14
  expect(result).toBeUndefined()
15
15
  })
16
16
  it('should return null for a name with no contenthash record', async () => {
17
- const result = await ENSInstance.getContentHash('jefflau.eth')
17
+ const result = await ensInstance.getContentHash('with-profile.eth')
18
18
  expect(result).toBeUndefined()
19
19
  })
20
20
  it('should return the contenthash for a name with the record set', async () => {
21
- const result = await ENSInstance.getContentHash('matoken.eth')
21
+ const result = await ensInstance.getContentHash('with-contenthash.eth')
22
22
  expect(result).toMatchObject({
23
23
  protocolType: 'ipfs',
24
24
  decoded: 'bafybeico3uuyj3vphxpvbowchdwjlrlrh62awxscrnii7w7flu5z6fk77y',
@@ -29,13 +29,16 @@ describe('getSpecificRecord', () => {
29
29
 
30
30
  describe('getText', () => {
31
31
  it('should return a record from a key', async () => {
32
- const result = await ENSInstance.getText('jefflau.eth', 'description')
32
+ const result = await ensInstance.getText(
33
+ 'with-profile.eth',
34
+ 'description',
35
+ )
33
36
  expect(result).toBe('Hello2')
34
37
  })
35
38
 
36
39
  it('should return null for a non-existent key', async () => {
37
- const result = await ENSInstance.getText(
38
- 'jefflau.eth',
40
+ const result = await ensInstance.getText(
41
+ 'with-profile.eth',
39
42
  'thiskeydoesntexist',
40
43
  )
41
44
  expect(result).toBeUndefined()
@@ -44,32 +47,32 @@ describe('getSpecificRecord', () => {
44
47
 
45
48
  describe('getAddr', () => {
46
49
  it('should return the ETH addr record if no coinType is provided', async () => {
47
- const result = await ENSInstance.getAddr('jefflau.eth')
48
- expect(result).toBe('0x866B3c4994e1416B7C738B9818b31dC246b95eEE')
50
+ const result = await ensInstance.getAddr('with-profile.eth')
51
+ expect(result).toBe('0x3C44CdDdB6a900fa2b585dd299e03d12FA4293BC')
49
52
  })
50
53
  it('should return the correct address based on a coin ID input as a number', async () => {
51
- const result = await ENSInstance.getAddr('jefflau.eth', 61)
54
+ const result = await ensInstance.getAddr('with-profile.eth', 61)
52
55
  expect((result as any).addr).toBe(
53
- '0x866B3c4994e1416B7C738B9818b31dC246b95eEE',
56
+ '0x3C44CdDdB6a900fa2b585dd299e03d12FA4293BC',
54
57
  )
55
58
  expect((result as any).coin).toBe('ETC')
56
59
  })
57
60
  it('should return the correct address based on a coin ID input as a string', async () => {
58
- const result = await ENSInstance.getAddr('jefflau.eth', '61')
61
+ const result = await ensInstance.getAddr('with-profile.eth', '61')
59
62
  expect((result as any).addr).toBe(
60
- '0x866B3c4994e1416B7C738B9818b31dC246b95eEE',
63
+ '0x3C44CdDdB6a900fa2b585dd299e03d12FA4293BC',
61
64
  )
62
65
  expect((result as any).coin).toBe('ETC')
63
66
  })
64
67
  it('should return the correct address based on a coin name', async () => {
65
- const result = await ENSInstance.getAddr('jefflau.eth', 'ETC')
68
+ const result = await ensInstance.getAddr('with-profile.eth', 'ETC')
66
69
  expect((result as any).addr).toBe(
67
- '0x866B3c4994e1416B7C738B9818b31dC246b95eEE',
70
+ '0x3C44CdDdB6a900fa2b585dd299e03d12FA4293BC',
68
71
  )
69
72
  expect((result as any).coin).toBe('ETC')
70
73
  })
71
74
  it('should return null for a non-existent coin', async () => {
72
- const result = await ENSInstance.getAddr('jefflau.eth', 'BNB')
75
+ const result = await ensInstance.getAddr('with-profile.eth', 'BNB')
73
76
  expect(result).toBeUndefined()
74
77
  })
75
78
  })