@ensdomains/ensjs 3.0.0-alpha.9 → 3.0.0-beta.2

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 (1322) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +21 -692
  3. package/contracts/OldResolver.json +456 -0
  4. package/contracts/package.json +5 -0
  5. package/dist/cjs/clients/decorators/public.js +35 -0
  6. package/dist/cjs/clients/decorators/public.js.map +1 -0
  7. package/dist/cjs/clients/decorators/subgraph.js +19 -0
  8. package/dist/cjs/clients/decorators/subgraph.js.map +1 -0
  9. package/dist/cjs/clients/decorators/wallet.js +41 -0
  10. package/dist/cjs/clients/decorators/wallet.js.map +1 -0
  11. package/dist/cjs/clients/public.js +22 -0
  12. package/dist/cjs/clients/public.js.map +1 -0
  13. package/dist/cjs/clients/subgraph.js +19 -0
  14. package/dist/cjs/clients/subgraph.js.map +1 -0
  15. package/dist/cjs/clients/wallet.js +18 -0
  16. package/dist/cjs/clients/wallet.js.map +1 -0
  17. package/dist/cjs/contracts/addEnsContracts.js +26 -0
  18. package/dist/cjs/contracts/addEnsContracts.js.map +1 -0
  19. package/dist/cjs/contracts/baseRegistrar.js +80 -2
  20. package/dist/cjs/contracts/baseRegistrar.js.map +1 -0
  21. package/dist/cjs/contracts/bulkRenewal.js +45 -0
  22. package/dist/cjs/contracts/bulkRenewal.js.map +1 -0
  23. package/dist/cjs/contracts/consts.js +87 -0
  24. package/dist/cjs/contracts/consts.js.map +1 -0
  25. package/dist/cjs/contracts/dnsRegistrar.js +76 -0
  26. package/dist/cjs/contracts/dnsRegistrar.js.map +1 -0
  27. package/dist/cjs/contracts/dnssecImpl.js +49 -0
  28. package/dist/cjs/contracts/dnssecImpl.js.map +1 -0
  29. package/dist/cjs/contracts/erc1155.js +34 -0
  30. package/dist/cjs/contracts/erc1155.js.map +1 -0
  31. package/dist/cjs/contracts/erc165.js +23 -0
  32. package/dist/cjs/contracts/erc165.js.map +1 -0
  33. package/dist/cjs/contracts/erc721.js +71 -0
  34. package/dist/cjs/contracts/erc721.js.map +1 -0
  35. package/dist/cjs/contracts/ethRegistrarController.js +205 -2
  36. package/dist/cjs/contracts/ethRegistrarController.js.map +1 -0
  37. package/dist/cjs/contracts/getChainContractAddress.js +7 -0
  38. package/dist/cjs/contracts/getChainContractAddress.js.map +1 -0
  39. package/dist/cjs/contracts/index.js +84 -35
  40. package/dist/cjs/contracts/index.js.map +1 -0
  41. package/dist/cjs/contracts/multicall.js +58 -19
  42. package/dist/cjs/contracts/multicall.js.map +1 -0
  43. package/dist/cjs/contracts/nameWrapper.js +377 -2
  44. package/dist/cjs/contracts/nameWrapper.js.map +1 -0
  45. package/dist/cjs/contracts/publicResolver.js +233 -2
  46. package/dist/cjs/contracts/publicResolver.js.map +1 -0
  47. package/dist/cjs/contracts/registry.js +177 -2
  48. package/dist/cjs/contracts/registry.js.map +1 -0
  49. package/dist/cjs/contracts/reverseRegistrar.js +52 -2
  50. package/dist/cjs/contracts/reverseRegistrar.js.map +1 -0
  51. package/dist/cjs/contracts/universalResolver.js +114 -2
  52. package/dist/cjs/contracts/universalResolver.js.map +1 -0
  53. package/dist/cjs/dns.js +10 -0
  54. package/dist/cjs/dns.js.map +1 -0
  55. package/dist/cjs/errors/base.js +56 -0
  56. package/dist/cjs/errors/base.js.map +1 -0
  57. package/dist/cjs/errors/contracts.js +46 -0
  58. package/dist/cjs/errors/contracts.js.map +1 -0
  59. package/dist/cjs/errors/dns.js +138 -0
  60. package/dist/cjs/errors/dns.js.map +1 -0
  61. package/dist/cjs/errors/error-utils.js +7 -0
  62. package/dist/cjs/errors/error-utils.js.map +1 -0
  63. package/dist/cjs/errors/general.js +115 -0
  64. package/dist/cjs/errors/general.js.map +1 -0
  65. package/dist/cjs/errors/public.js +55 -0
  66. package/dist/cjs/errors/public.js.map +1 -0
  67. package/dist/cjs/errors/subgraph.js +89 -0
  68. package/dist/cjs/errors/subgraph.js.map +1 -0
  69. package/dist/cjs/errors/utils.js +208 -0
  70. package/dist/cjs/errors/utils.js.map +1 -0
  71. package/dist/cjs/errors/version.js +5 -0
  72. package/dist/cjs/errors/version.js.map +1 -0
  73. package/dist/cjs/errors/wallet.js +3 -0
  74. package/dist/cjs/errors/wallet.js.map +1 -0
  75. package/dist/cjs/functions/dns/getDnsImportData.js +64 -0
  76. package/dist/cjs/functions/dns/getDnsImportData.js.map +1 -0
  77. package/dist/cjs/functions/dns/getDnsOwner.js +72 -0
  78. package/dist/cjs/functions/dns/getDnsOwner.js.map +1 -0
  79. package/dist/cjs/functions/dns/importDnsName.js +68 -0
  80. package/dist/cjs/functions/dns/importDnsName.js.map +1 -0
  81. package/dist/cjs/functions/dns/types.js +3 -0
  82. package/dist/cjs/functions/dns/types.js.map +1 -0
  83. package/dist/cjs/functions/public/_getAbi.js +74 -0
  84. package/dist/cjs/functions/public/_getAbi.js.map +1 -0
  85. package/dist/cjs/functions/public/_getAddr.js +83 -0
  86. package/dist/cjs/functions/public/_getAddr.js.map +1 -0
  87. package/dist/cjs/functions/public/_getContentHash.js +31 -0
  88. package/dist/cjs/functions/public/_getContentHash.js.map +1 -0
  89. package/dist/cjs/functions/public/_getText.js +32 -0
  90. package/dist/cjs/functions/public/_getText.js.map +1 -0
  91. package/dist/cjs/functions/public/batch.js +33 -0
  92. package/dist/cjs/functions/public/batch.js.map +1 -0
  93. package/dist/cjs/functions/public/getAbiRecord.js +16 -0
  94. package/dist/cjs/functions/public/getAbiRecord.js.map +1 -0
  95. package/dist/cjs/functions/public/getAddressRecord.js +16 -0
  96. package/dist/cjs/functions/public/getAddressRecord.js.map +1 -0
  97. package/dist/cjs/functions/public/getAvailable.js +42 -0
  98. package/dist/cjs/functions/public/getAvailable.js.map +1 -0
  99. package/dist/cjs/functions/public/getContentHashRecord.js +16 -0
  100. package/dist/cjs/functions/public/getContentHashRecord.js.map +1 -0
  101. package/dist/cjs/functions/public/getExpiry.js +120 -0
  102. package/dist/cjs/functions/public/getExpiry.js.map +1 -0
  103. package/dist/cjs/functions/public/getName.js +61 -0
  104. package/dist/cjs/functions/public/getName.js.map +1 -0
  105. package/dist/cjs/functions/public/getOwner.js +121 -0
  106. package/dist/cjs/functions/public/getOwner.js.map +1 -0
  107. package/dist/cjs/functions/public/getPrice.js +88 -0
  108. package/dist/cjs/functions/public/getPrice.js.map +1 -0
  109. package/dist/cjs/functions/public/getRecords.js +201 -0
  110. package/dist/cjs/functions/public/getRecords.js.map +1 -0
  111. package/dist/cjs/functions/public/getResolver.js +44 -0
  112. package/dist/cjs/functions/public/getResolver.js.map +1 -0
  113. package/dist/cjs/functions/public/getSupportedInterfaces.js +33 -0
  114. package/dist/cjs/functions/public/getSupportedInterfaces.js.map +1 -0
  115. package/dist/cjs/functions/public/getTextRecord.js +16 -0
  116. package/dist/cjs/functions/public/getTextRecord.js.map +1 -0
  117. package/dist/cjs/functions/public/getWrapperData.js +61 -0
  118. package/dist/cjs/functions/public/getWrapperData.js.map +1 -0
  119. package/dist/cjs/functions/public/getWrapperName.js +44 -0
  120. package/dist/cjs/functions/public/getWrapperName.js.map +1 -0
  121. package/dist/cjs/functions/public/multicallWrapper.js +56 -0
  122. package/dist/cjs/functions/public/multicallWrapper.js.map +1 -0
  123. package/dist/cjs/functions/public/universalWrapper.js +71 -0
  124. package/dist/cjs/functions/public/universalWrapper.js.map +1 -0
  125. package/dist/cjs/functions/subgraph/client.js +82 -0
  126. package/dist/cjs/functions/subgraph/client.js.map +1 -0
  127. package/dist/cjs/functions/subgraph/events.js +3 -0
  128. package/dist/cjs/functions/subgraph/events.js.map +1 -0
  129. package/dist/cjs/functions/subgraph/filters.js +3 -0
  130. package/dist/cjs/functions/subgraph/filters.js.map +1 -0
  131. package/dist/cjs/functions/subgraph/fragments.js +48 -0
  132. package/dist/cjs/functions/subgraph/fragments.js.map +1 -0
  133. package/dist/cjs/functions/subgraph/getDecodedName.js +64 -0
  134. package/dist/cjs/functions/subgraph/getDecodedName.js.map +1 -0
  135. package/dist/cjs/functions/subgraph/getNameHistory.js +231 -0
  136. package/dist/cjs/functions/subgraph/getNameHistory.js.map +1 -0
  137. package/dist/cjs/functions/subgraph/getNamesForAddress.js +204 -0
  138. package/dist/cjs/functions/subgraph/getNamesForAddress.js.map +1 -0
  139. package/dist/cjs/functions/subgraph/getSubgraphRecords.js +73 -0
  140. package/dist/cjs/functions/subgraph/getSubgraphRecords.js.map +1 -0
  141. package/dist/cjs/functions/subgraph/getSubgraphRegistrant.js +35 -0
  142. package/dist/cjs/functions/subgraph/getSubgraphRegistrant.js.map +1 -0
  143. package/dist/cjs/functions/subgraph/getSubnames.js +158 -0
  144. package/dist/cjs/functions/subgraph/getSubnames.js.map +1 -0
  145. package/dist/cjs/functions/subgraph/types.js +3 -0
  146. package/dist/cjs/functions/subgraph/types.js.map +1 -0
  147. package/dist/cjs/functions/subgraph/utils.js +56 -0
  148. package/dist/cjs/functions/subgraph/utils.js.map +1 -0
  149. package/dist/cjs/functions/wallet/commitName.js +53 -0
  150. package/dist/cjs/functions/wallet/commitName.js.map +1 -0
  151. package/dist/cjs/functions/wallet/createSubname.js +92 -0
  152. package/dist/cjs/functions/wallet/createSubname.js.map +1 -0
  153. package/dist/cjs/functions/wallet/deleteSubname.js +106 -0
  154. package/dist/cjs/functions/wallet/deleteSubname.js.map +1 -0
  155. package/dist/cjs/functions/wallet/registerName.js +55 -0
  156. package/dist/cjs/functions/wallet/registerName.js.map +1 -0
  157. package/dist/cjs/functions/wallet/renewNames.js +61 -0
  158. package/dist/cjs/functions/wallet/renewNames.js.map +1 -0
  159. package/dist/cjs/functions/wallet/setAbiRecord.js +31 -0
  160. package/dist/cjs/functions/wallet/setAbiRecord.js.map +1 -0
  161. package/dist/cjs/functions/wallet/setAddressRecord.js +28 -0
  162. package/dist/cjs/functions/wallet/setAddressRecord.js.map +1 -0
  163. package/dist/cjs/functions/wallet/setChildFuses.js +34 -0
  164. package/dist/cjs/functions/wallet/setChildFuses.js.map +1 -0
  165. package/dist/cjs/functions/wallet/setContentHashRecord.js +27 -0
  166. package/dist/cjs/functions/wallet/setContentHashRecord.js.map +1 -0
  167. package/dist/cjs/functions/wallet/setFuses.js +31 -0
  168. package/dist/cjs/functions/wallet/setFuses.js.map +1 -0
  169. package/dist/cjs/functions/wallet/setPrimaryName.js +58 -0
  170. package/dist/cjs/functions/wallet/setPrimaryName.js.map +1 -0
  171. package/dist/cjs/functions/wallet/setRecords.js +49 -0
  172. package/dist/cjs/functions/wallet/setRecords.js.map +1 -0
  173. package/dist/cjs/functions/wallet/setResolver.js +47 -0
  174. package/dist/cjs/functions/wallet/setResolver.js.map +1 -0
  175. package/dist/cjs/functions/wallet/setTextRecord.js +28 -0
  176. package/dist/cjs/functions/wallet/setTextRecord.js.map +1 -0
  177. package/dist/cjs/functions/wallet/transferName.js +139 -0
  178. package/dist/cjs/functions/wallet/transferName.js.map +1 -0
  179. package/dist/cjs/functions/wallet/unwrapName.js +62 -0
  180. package/dist/cjs/functions/wallet/unwrapName.js.map +1 -0
  181. package/dist/cjs/functions/wallet/wrapName.js +78 -0
  182. package/dist/cjs/functions/wallet/wrapName.js.map +1 -0
  183. package/dist/cjs/index.js +55 -245
  184. package/dist/cjs/index.js.map +1 -0
  185. package/dist/cjs/package.json +1 -0
  186. package/dist/cjs/public.js +44 -0
  187. package/dist/cjs/public.js.map +1 -0
  188. package/dist/cjs/subgraph.js +18 -0
  189. package/dist/cjs/subgraph.js.map +1 -0
  190. package/dist/cjs/types.js +3 -0
  191. package/dist/cjs/types.js.map +1 -0
  192. package/dist/cjs/utils/consts.js +9 -0
  193. package/dist/cjs/utils/consts.js.map +1 -0
  194. package/dist/cjs/utils/contentHash.js +59 -149
  195. package/dist/cjs/utils/contentHash.js.map +1 -0
  196. package/dist/cjs/utils/encoders/encodeAbi.js +34 -0
  197. package/dist/cjs/utils/encoders/encodeAbi.js.map +1 -0
  198. package/dist/cjs/utils/encoders/encodeSetAbi.js +14 -0
  199. package/dist/cjs/utils/encoders/encodeSetAbi.js.map +1 -0
  200. package/dist/cjs/utils/encoders/encodeSetAddr.js +34 -0
  201. package/dist/cjs/utils/encoders/encodeSetAddr.js.map +1 -0
  202. package/dist/cjs/utils/encoders/encodeSetContentHash.js +19 -0
  203. package/dist/cjs/utils/encoders/encodeSetContentHash.js.map +1 -0
  204. package/dist/cjs/utils/encoders/encodeSetText.js +14 -0
  205. package/dist/cjs/utils/encoders/encodeSetText.js.map +1 -0
  206. package/dist/cjs/utils/format.js +2 -5
  207. package/dist/cjs/utils/format.js.map +1 -0
  208. package/dist/cjs/utils/fuses.js +214 -21
  209. package/dist/cjs/utils/fuses.js.map +1 -0
  210. package/dist/cjs/utils/generateFunction.js +30 -0
  211. package/dist/cjs/utils/generateFunction.js.map +1 -0
  212. package/dist/cjs/utils/generateRecordCallArray.js +42 -0
  213. package/dist/cjs/utils/generateRecordCallArray.js.map +1 -0
  214. package/dist/cjs/utils/getNameType.js +24 -0
  215. package/dist/cjs/utils/getNameType.js.map +1 -0
  216. package/dist/cjs/utils/getRevertErrorData.js +12 -0
  217. package/dist/cjs/utils/getRevertErrorData.js.map +1 -0
  218. package/dist/cjs/utils/hexEncodedName.js +39 -7
  219. package/dist/cjs/utils/hexEncodedName.js.map +1 -0
  220. package/dist/cjs/utils/index.js +67 -0
  221. package/dist/cjs/utils/index.js.map +1 -0
  222. package/dist/cjs/utils/labels.js +34 -60
  223. package/dist/cjs/utils/labels.js.map +1 -0
  224. package/dist/cjs/utils/makeLabelNodeAndParent.js +17 -0
  225. package/dist/cjs/utils/makeLabelNodeAndParent.js.map +1 -0
  226. package/dist/cjs/utils/makeSafeSecondsDate.js +12 -0
  227. package/dist/cjs/utils/makeSafeSecondsDate.js.map +1 -0
  228. package/dist/cjs/utils/normalise.js +29 -27
  229. package/dist/cjs/utils/normalise.js.map +1 -0
  230. package/dist/cjs/utils/ownerFromContract.js +50 -0
  231. package/dist/cjs/utils/ownerFromContract.js.map +1 -0
  232. package/dist/cjs/utils/registerHelpers.js +67 -43
  233. package/dist/cjs/utils/registerHelpers.js.map +1 -0
  234. package/dist/cjs/utils/validation.js +49 -56
  235. package/dist/cjs/utils/validation.js.map +1 -0
  236. package/dist/cjs/utils/wrapper.js +25 -0
  237. package/dist/cjs/utils/wrapper.js.map +1 -0
  238. package/dist/cjs/wallet.js +38 -0
  239. package/dist/cjs/wallet.js.map +1 -0
  240. package/dist/esm/clients/decorators/public.js +45 -0
  241. package/dist/esm/clients/decorators/public.js.map +1 -0
  242. package/dist/esm/clients/decorators/subgraph.js +29 -0
  243. package/dist/esm/clients/decorators/subgraph.js.map +1 -0
  244. package/dist/esm/clients/decorators/wallet.js +51 -0
  245. package/dist/esm/clients/decorators/wallet.js.map +1 -0
  246. package/dist/esm/clients/public.js +34 -0
  247. package/dist/esm/clients/public.js.map +1 -0
  248. package/dist/esm/clients/subgraph.js +31 -0
  249. package/dist/esm/clients/subgraph.js.map +1 -0
  250. package/dist/esm/clients/wallet.js +30 -0
  251. package/dist/esm/clients/wallet.js.map +1 -0
  252. package/dist/esm/contracts/addEnsContracts.js +36 -0
  253. package/dist/esm/contracts/addEnsContracts.js.map +1 -0
  254. package/dist/esm/contracts/baseRegistrar.js +79 -2
  255. package/dist/esm/contracts/baseRegistrar.js.map +1 -0
  256. package/dist/esm/contracts/bulkRenewal.js +42 -0
  257. package/dist/esm/contracts/bulkRenewal.js.map +1 -0
  258. package/dist/esm/contracts/consts.js +84 -0
  259. package/dist/esm/contracts/consts.js.map +1 -0
  260. package/dist/esm/contracts/dnsRegistrar.js +73 -0
  261. package/dist/esm/contracts/dnsRegistrar.js.map +1 -0
  262. package/dist/esm/contracts/dnssecImpl.js +46 -0
  263. package/dist/esm/contracts/dnssecImpl.js.map +1 -0
  264. package/dist/esm/contracts/erc1155.js +31 -0
  265. package/dist/esm/contracts/erc1155.js.map +1 -0
  266. package/dist/esm/contracts/erc165.js +20 -0
  267. package/dist/esm/contracts/erc165.js.map +1 -0
  268. package/dist/esm/contracts/erc721.js +68 -0
  269. package/dist/esm/contracts/erc721.js.map +1 -0
  270. package/dist/esm/contracts/ethRegistrarController.js +204 -2
  271. package/dist/esm/contracts/ethRegistrarController.js.map +1 -0
  272. package/dist/esm/contracts/getChainContractAddress.js +3 -0
  273. package/dist/esm/contracts/getChainContractAddress.js.map +1 -0
  274. package/dist/esm/contracts/index.js +15 -29
  275. package/dist/esm/contracts/index.js.map +1 -0
  276. package/dist/esm/contracts/multicall.js +57 -19
  277. package/dist/esm/contracts/multicall.js.map +1 -0
  278. package/dist/esm/contracts/nameWrapper.js +376 -2
  279. package/dist/esm/contracts/nameWrapper.js.map +1 -0
  280. package/dist/esm/contracts/publicResolver.js +232 -2
  281. package/dist/esm/contracts/publicResolver.js.map +1 -0
  282. package/dist/esm/contracts/registry.js +176 -2
  283. package/dist/esm/contracts/registry.js.map +1 -0
  284. package/dist/esm/contracts/reverseRegistrar.js +51 -2
  285. package/dist/esm/contracts/reverseRegistrar.js.map +1 -0
  286. package/dist/esm/contracts/universalResolver.js +113 -2
  287. package/dist/esm/contracts/universalResolver.js.map +1 -0
  288. package/dist/esm/dns.js +4 -0
  289. package/dist/esm/dns.js.map +1 -0
  290. package/dist/esm/errors/base.js +52 -0
  291. package/dist/esm/errors/base.js.map +1 -0
  292. package/dist/esm/errors/contracts.js +41 -0
  293. package/dist/esm/errors/contracts.js.map +1 -0
  294. package/dist/esm/errors/dns.js +129 -0
  295. package/dist/esm/errors/dns.js.map +1 -0
  296. package/dist/esm/errors/error-utils.js +3 -0
  297. package/dist/esm/errors/error-utils.js.map +1 -0
  298. package/dist/esm/errors/general.js +108 -0
  299. package/dist/esm/errors/general.js.map +1 -0
  300. package/dist/esm/errors/public.js +49 -0
  301. package/dist/esm/errors/public.js.map +1 -0
  302. package/dist/esm/errors/subgraph.js +83 -0
  303. package/dist/esm/errors/subgraph.js.map +1 -0
  304. package/dist/esm/errors/utils.js +191 -0
  305. package/dist/esm/errors/utils.js.map +1 -0
  306. package/dist/esm/errors/version.js +2 -0
  307. package/dist/esm/errors/version.js.map +1 -0
  308. package/dist/esm/errors/wallet.js +2 -0
  309. package/dist/esm/errors/wallet.js.map +1 -0
  310. package/dist/esm/functions/dns/getDnsImportData.js +84 -0
  311. package/dist/esm/functions/dns/getDnsImportData.js.map +1 -0
  312. package/dist/esm/functions/dns/getDnsOwner.js +81 -0
  313. package/dist/esm/functions/dns/getDnsOwner.js.map +1 -0
  314. package/dist/esm/functions/dns/importDnsName.js +92 -0
  315. package/dist/esm/functions/dns/importDnsName.js.map +1 -0
  316. package/dist/esm/functions/dns/types.js +2 -0
  317. package/dist/esm/functions/dns/types.js.map +1 -0
  318. package/dist/esm/functions/public/_getAbi.js +81 -0
  319. package/dist/esm/functions/public/_getAbi.js.map +1 -0
  320. package/dist/esm/functions/public/_getAddr.js +81 -0
  321. package/dist/esm/functions/public/_getAddr.js.map +1 -0
  322. package/dist/esm/functions/public/_getContentHash.js +29 -0
  323. package/dist/esm/functions/public/_getContentHash.js.map +1 -0
  324. package/dist/esm/functions/public/_getText.js +30 -0
  325. package/dist/esm/functions/public/_getText.js.map +1 -0
  326. package/dist/esm/functions/public/batch.js +53 -0
  327. package/dist/esm/functions/public/batch.js.map +1 -0
  328. package/dist/esm/functions/public/getAbiRecord.js +32 -0
  329. package/dist/esm/functions/public/getAbiRecord.js.map +1 -0
  330. package/dist/esm/functions/public/getAddressRecord.js +32 -0
  331. package/dist/esm/functions/public/getAddressRecord.js.map +1 -0
  332. package/dist/esm/functions/public/getAvailable.js +58 -0
  333. package/dist/esm/functions/public/getAvailable.js.map +1 -0
  334. package/dist/esm/functions/public/getContentHashRecord.js +32 -0
  335. package/dist/esm/functions/public/getContentHashRecord.js.map +1 -0
  336. package/dist/esm/functions/public/getExpiry.js +136 -0
  337. package/dist/esm/functions/public/getExpiry.js.map +1 -0
  338. package/dist/esm/functions/public/getName.js +77 -0
  339. package/dist/esm/functions/public/getName.js.map +1 -0
  340. package/dist/esm/functions/public/getOwner.js +155 -0
  341. package/dist/esm/functions/public/getOwner.js.map +1 -0
  342. package/dist/esm/functions/public/getPrice.js +104 -0
  343. package/dist/esm/functions/public/getPrice.js.map +1 -0
  344. package/dist/esm/functions/public/getRecords.js +231 -0
  345. package/dist/esm/functions/public/getRecords.js.map +1 -0
  346. package/dist/esm/functions/public/getResolver.js +60 -0
  347. package/dist/esm/functions/public/getResolver.js.map +1 -0
  348. package/dist/esm/functions/public/getSupportedInterfaces.js +31 -0
  349. package/dist/esm/functions/public/getSupportedInterfaces.js.map +1 -0
  350. package/dist/esm/functions/public/getTextRecord.js +32 -0
  351. package/dist/esm/functions/public/getTextRecord.js.map +1 -0
  352. package/dist/esm/functions/public/getWrapperData.js +76 -0
  353. package/dist/esm/functions/public/getWrapperData.js.map +1 -0
  354. package/dist/esm/functions/public/getWrapperName.js +60 -0
  355. package/dist/esm/functions/public/getWrapperName.js.map +1 -0
  356. package/dist/esm/functions/public/multicallWrapper.js +55 -0
  357. package/dist/esm/functions/public/multicallWrapper.js.map +1 -0
  358. package/dist/esm/functions/public/universalWrapper.js +69 -0
  359. package/dist/esm/functions/public/universalWrapper.js.map +1 -0
  360. package/dist/esm/functions/subgraph/client.js +79 -0
  361. package/dist/esm/functions/subgraph/client.js.map +1 -0
  362. package/dist/esm/functions/subgraph/events.js +2 -0
  363. package/dist/esm/functions/subgraph/events.js.map +1 -0
  364. package/dist/esm/functions/subgraph/filters.js +2 -0
  365. package/dist/esm/functions/subgraph/filters.js.map +1 -0
  366. package/dist/esm/functions/subgraph/fragments.js +45 -0
  367. package/dist/esm/functions/subgraph/fragments.js.map +1 -0
  368. package/dist/esm/functions/subgraph/getDecodedName.js +83 -0
  369. package/dist/esm/functions/subgraph/getDecodedName.js.map +1 -0
  370. package/dist/esm/functions/subgraph/getNameHistory.js +246 -0
  371. package/dist/esm/functions/subgraph/getNameHistory.js.map +1 -0
  372. package/dist/esm/functions/subgraph/getNamesForAddress.js +226 -0
  373. package/dist/esm/functions/subgraph/getNamesForAddress.js.map +1 -0
  374. package/dist/esm/functions/subgraph/getSubgraphRecords.js +94 -0
  375. package/dist/esm/functions/subgraph/getSubgraphRecords.js.map +1 -0
  376. package/dist/esm/functions/subgraph/getSubgraphRegistrant.js +51 -0
  377. package/dist/esm/functions/subgraph/getSubgraphRegistrant.js.map +1 -0
  378. package/dist/esm/functions/subgraph/getSubnames.js +180 -0
  379. package/dist/esm/functions/subgraph/getSubnames.js.map +1 -0
  380. package/dist/esm/functions/subgraph/types.js +2 -0
  381. package/dist/esm/functions/subgraph/types.js.map +1 -0
  382. package/dist/esm/functions/subgraph/utils.js +51 -0
  383. package/dist/esm/functions/subgraph/utils.js.map +1 -0
  384. package/dist/esm/functions/wallet/commitName.js +73 -0
  385. package/dist/esm/functions/wallet/commitName.js.map +1 -0
  386. package/dist/esm/functions/wallet/createSubname.js +110 -0
  387. package/dist/esm/functions/wallet/createSubname.js.map +1 -0
  388. package/dist/esm/functions/wallet/deleteSubname.js +123 -0
  389. package/dist/esm/functions/wallet/deleteSubname.js.map +1 -0
  390. package/dist/esm/functions/wallet/registerName.js +88 -0
  391. package/dist/esm/functions/wallet/registerName.js.map +1 -0
  392. package/dist/esm/functions/wallet/renewNames.js +91 -0
  393. package/dist/esm/functions/wallet/renewNames.js.map +1 -0
  394. package/dist/esm/functions/wallet/setAbiRecord.js +52 -0
  395. package/dist/esm/functions/wallet/setAbiRecord.js.map +1 -0
  396. package/dist/esm/functions/wallet/setAddressRecord.js +47 -0
  397. package/dist/esm/functions/wallet/setAddressRecord.js.map +1 -0
  398. package/dist/esm/functions/wallet/setChildFuses.js +55 -0
  399. package/dist/esm/functions/wallet/setChildFuses.js.map +1 -0
  400. package/dist/esm/functions/wallet/setContentHashRecord.js +45 -0
  401. package/dist/esm/functions/wallet/setContentHashRecord.js.map +1 -0
  402. package/dist/esm/functions/wallet/setFuses.js +50 -0
  403. package/dist/esm/functions/wallet/setFuses.js.map +1 -0
  404. package/dist/esm/functions/wallet/setPrimaryName.js +74 -0
  405. package/dist/esm/functions/wallet/setPrimaryName.js.map +1 -0
  406. package/dist/esm/functions/wallet/setRecords.js +73 -0
  407. package/dist/esm/functions/wallet/setRecords.js.map +1 -0
  408. package/dist/esm/functions/wallet/setResolver.js +65 -0
  409. package/dist/esm/functions/wallet/setResolver.js.map +1 -0
  410. package/dist/esm/functions/wallet/setTextRecord.js +47 -0
  411. package/dist/esm/functions/wallet/setTextRecord.js.map +1 -0
  412. package/dist/esm/functions/wallet/transferName.js +157 -0
  413. package/dist/esm/functions/wallet/transferName.js.map +1 -0
  414. package/dist/esm/functions/wallet/unwrapName.js +80 -0
  415. package/dist/esm/functions/wallet/unwrapName.js.map +1 -0
  416. package/dist/esm/functions/wallet/wrapName.js +95 -0
  417. package/dist/esm/functions/wallet/wrapName.js.map +1 -0
  418. package/dist/esm/index.js +15 -212
  419. package/dist/esm/index.js.map +1 -0
  420. package/dist/esm/package.json +1 -0
  421. package/dist/esm/public.js +21 -0
  422. package/dist/esm/public.js.map +1 -0
  423. package/dist/esm/subgraph.js +8 -0
  424. package/dist/esm/subgraph.js.map +1 -0
  425. package/dist/esm/types.js +2 -0
  426. package/dist/esm/types.js.map +1 -0
  427. package/dist/esm/utils/consts.js +6 -0
  428. package/dist/esm/utils/consts.js.map +1 -0
  429. package/dist/esm/utils/contentHash.js +55 -141
  430. package/dist/esm/utils/contentHash.js.map +1 -0
  431. package/dist/esm/utils/encoders/encodeAbi.js +30 -0
  432. package/dist/esm/utils/encoders/encodeAbi.js.map +1 -0
  433. package/dist/esm/utils/encoders/encodeSetAbi.js +10 -0
  434. package/dist/esm/utils/encoders/encodeSetAbi.js.map +1 -0
  435. package/dist/esm/utils/encoders/encodeSetAddr.js +30 -0
  436. package/dist/esm/utils/encoders/encodeSetAddr.js.map +1 -0
  437. package/dist/esm/utils/encoders/encodeSetContentHash.js +15 -0
  438. package/dist/esm/utils/encoders/encodeSetContentHash.js.map +1 -0
  439. package/dist/esm/utils/encoders/encodeSetText.js +10 -0
  440. package/dist/esm/utils/encoders/encodeSetText.js.map +1 -0
  441. package/dist/esm/utils/format.js +1 -2
  442. package/dist/esm/utils/format.js.map +1 -0
  443. package/dist/esm/utils/fuses.js +211 -20
  444. package/dist/esm/utils/fuses.js.map +1 -0
  445. package/dist/esm/utils/generateFunction.js +26 -0
  446. package/dist/esm/utils/generateFunction.js.map +1 -0
  447. package/dist/esm/utils/generateRecordCallArray.js +38 -0
  448. package/dist/esm/utils/generateRecordCallArray.js.map +1 -0
  449. package/dist/esm/utils/getNameType.js +20 -0
  450. package/dist/esm/utils/getNameType.js.map +1 -0
  451. package/dist/esm/utils/getRevertErrorData.js +8 -0
  452. package/dist/esm/utils/getRevertErrorData.js.map +1 -0
  453. package/dist/esm/utils/hexEncodedName.js +43 -2
  454. package/dist/esm/utils/hexEncodedName.js.map +1 -0
  455. package/dist/esm/utils/index.js +17 -0
  456. package/dist/esm/utils/index.js.map +1 -0
  457. package/dist/esm/utils/labels.js +32 -52
  458. package/dist/esm/utils/labels.js.map +1 -0
  459. package/dist/esm/utils/makeLabelNodeAndParent.js +13 -0
  460. package/dist/esm/utils/makeLabelNodeAndParent.js.map +1 -0
  461. package/dist/esm/utils/makeSafeSecondsDate.js +8 -0
  462. package/dist/esm/utils/makeSafeSecondsDate.js.map +1 -0
  463. package/dist/esm/utils/normalise.js +29 -23
  464. package/dist/esm/utils/normalise.js.map +1 -0
  465. package/dist/esm/utils/ownerFromContract.js +46 -0
  466. package/dist/esm/utils/ownerFromContract.js.map +1 -0
  467. package/dist/esm/utils/registerHelpers.js +62 -36
  468. package/dist/esm/utils/registerHelpers.js.map +1 -0
  469. package/dist/esm/utils/validation.js +46 -53
  470. package/dist/esm/utils/validation.js.map +1 -0
  471. package/dist/esm/utils/wrapper.js +20 -0
  472. package/dist/esm/utils/wrapper.js.map +1 -0
  473. package/dist/esm/wallet.js +18 -0
  474. package/dist/esm/wallet.js.map +1 -0
  475. package/dist/types/clients/decorators/public.d.ts +813 -0
  476. package/dist/types/clients/decorators/public.d.ts.map +1 -0
  477. package/dist/types/clients/decorators/subgraph.d.ts +654 -0
  478. package/dist/types/clients/decorators/subgraph.d.ts.map +1 -0
  479. package/dist/types/clients/decorators/wallet.d.ts +714 -0
  480. package/dist/types/clients/decorators/wallet.d.ts.map +1 -0
  481. package/dist/types/clients/public.d.ts +335 -0
  482. package/dist/types/clients/public.d.ts.map +1 -0
  483. package/dist/types/clients/subgraph.d.ts +304 -0
  484. package/dist/types/clients/subgraph.d.ts.map +1 -0
  485. package/dist/types/clients/wallet.d.ts +465 -0
  486. package/dist/types/clients/wallet.d.ts.map +1 -0
  487. package/dist/types/contracts/addEnsContracts.d.ts +18 -0
  488. package/dist/types/contracts/addEnsContracts.d.ts.map +1 -0
  489. package/dist/types/contracts/baseRegistrar.d.ts +98 -0
  490. package/dist/types/contracts/baseRegistrar.d.ts.map +1 -0
  491. package/dist/types/contracts/bulkRenewal.d.ts +30 -0
  492. package/dist/types/contracts/bulkRenewal.d.ts.map +1 -0
  493. package/dist/types/contracts/consts.d.ts +113 -0
  494. package/dist/types/contracts/consts.d.ts.map +1 -0
  495. package/dist/types/contracts/dnsRegistrar.d.ts +53 -0
  496. package/dist/types/contracts/dnsRegistrar.d.ts.map +1 -0
  497. package/dist/types/contracts/dnssecImpl.d.ts +33 -0
  498. package/dist/types/contracts/dnssecImpl.d.ts.map +1 -0
  499. package/dist/types/contracts/erc1155.d.ts +23 -0
  500. package/dist/types/contracts/erc1155.d.ts.map +1 -0
  501. package/dist/types/contracts/erc165.d.ts +14 -0
  502. package/dist/types/contracts/erc165.d.ts.map +1 -0
  503. package/dist/types/contracts/erc721.d.ts +49 -0
  504. package/dist/types/contracts/erc721.d.ts.map +1 -0
  505. package/dist/types/contracts/ethRegistrarController.d.ts +398 -0
  506. package/dist/types/contracts/ethRegistrarController.d.ts.map +1 -0
  507. package/dist/types/contracts/getChainContractAddress.d.ts +11 -0
  508. package/dist/types/contracts/getChainContractAddress.d.ts.map +1 -0
  509. package/dist/types/contracts/index.d.ts +15 -0
  510. package/dist/types/contracts/index.d.ts.map +1 -0
  511. package/dist/types/contracts/multicall.d.ts +41 -0
  512. package/dist/types/contracts/multicall.d.ts.map +1 -0
  513. package/dist/types/contracts/nameWrapper.d.ts +1094 -0
  514. package/dist/types/contracts/nameWrapper.d.ts.map +1 -0
  515. package/dist/types/contracts/publicResolver.d.ts +165 -0
  516. package/dist/types/contracts/publicResolver.d.ts.map +1 -0
  517. package/dist/types/contracts/registry.d.ts +126 -0
  518. package/dist/types/contracts/registry.d.ts.map +1 -0
  519. package/dist/types/contracts/reverseRegistrar.d.ts +36 -0
  520. package/dist/types/contracts/reverseRegistrar.d.ts.map +1 -0
  521. package/dist/types/contracts/universalResolver.d.ts +118 -0
  522. package/dist/types/contracts/universalResolver.d.ts.map +1 -0
  523. package/dist/types/dns.d.ts +5 -0
  524. package/dist/types/dns.d.ts.map +1 -0
  525. package/dist/types/errors/base.d.ts +19 -0
  526. package/dist/types/errors/base.d.ts.map +1 -0
  527. package/dist/types/errors/contracts.d.ts +16 -0
  528. package/dist/types/errors/contracts.d.ts.map +1 -0
  529. package/dist/types/errors/dns.d.ts +47 -0
  530. package/dist/types/errors/dns.d.ts.map +1 -0
  531. package/dist/types/errors/error-utils.d.ts +2 -0
  532. package/dist/types/errors/error-utils.d.ts.map +1 -0
  533. package/dist/types/errors/general.d.ts +41 -0
  534. package/dist/types/errors/general.d.ts.map +1 -0
  535. package/dist/types/errors/public.d.ts +20 -0
  536. package/dist/types/errors/public.d.ts.map +1 -0
  537. package/dist/types/errors/subgraph.d.ts +28 -0
  538. package/dist/types/errors/subgraph.d.ts.map +1 -0
  539. package/dist/types/errors/utils.d.ts +91 -0
  540. package/dist/types/errors/utils.d.ts.map +1 -0
  541. package/dist/types/errors/version.d.ts +2 -0
  542. package/dist/types/errors/version.d.ts.map +1 -0
  543. package/dist/types/errors/wallet.d.ts +2 -0
  544. package/dist/types/errors/wallet.d.ts.map +1 -0
  545. package/dist/types/functions/dns/getDnsImportData.d.ts +38 -0
  546. package/dist/types/functions/dns/getDnsImportData.d.ts.map +1 -0
  547. package/dist/types/functions/dns/getDnsOwner.d.ts +25 -0
  548. package/dist/types/functions/dns/getDnsOwner.d.ts.map +1 -0
  549. package/dist/types/functions/dns/importDnsName.d.ts +590 -0
  550. package/dist/types/functions/dns/importDnsName.d.ts.map +1 -0
  551. package/dist/types/functions/dns/types.d.ts +2 -0
  552. package/dist/types/functions/dns/types.d.ts.map +1 -0
  553. package/dist/types/functions/public/_getAbi.d.ts +11 -0
  554. package/dist/types/functions/public/_getAbi.d.ts.map +1 -0
  555. package/dist/types/functions/public/_getAddr.d.ts +15 -0
  556. package/dist/types/functions/public/_getAddr.d.ts.map +1 -0
  557. package/dist/types/functions/public/_getContentHash.d.ts +12 -0
  558. package/dist/types/functions/public/_getContentHash.d.ts.map +1 -0
  559. package/dist/types/functions/public/_getText.d.ts +13 -0
  560. package/dist/types/functions/public/_getText.d.ts.map +1 -0
  561. package/dist/types/functions/public/batch.d.ts +39 -0
  562. package/dist/types/functions/public/batch.d.ts.map +1 -0
  563. package/dist/types/functions/public/getAbiRecord.d.ts +31 -0
  564. package/dist/types/functions/public/getAbiRecord.d.ts.map +1 -0
  565. package/dist/types/functions/public/getAddressRecord.d.ts +31 -0
  566. package/dist/types/functions/public/getAddressRecord.d.ts.map +1 -0
  567. package/dist/types/functions/public/getAvailable.d.ts +33 -0
  568. package/dist/types/functions/public/getAvailable.d.ts.map +1 -0
  569. package/dist/types/functions/public/getContentHashRecord.d.ts +31 -0
  570. package/dist/types/functions/public/getContentHashRecord.d.ts.map +1 -0
  571. package/dist/types/functions/public/getExpiry.d.ts +44 -0
  572. package/dist/types/functions/public/getExpiry.d.ts.map +1 -0
  573. package/dist/types/functions/public/getName.d.ts +42 -0
  574. package/dist/types/functions/public/getName.d.ts.map +1 -0
  575. package/dist/types/functions/public/getOwner.d.ts +64 -0
  576. package/dist/types/functions/public/getOwner.d.ts.map +1 -0
  577. package/dist/types/functions/public/getPrice.d.ts +40 -0
  578. package/dist/types/functions/public/getPrice.d.ts.map +1 -0
  579. package/dist/types/functions/public/getRecords.d.ts +97 -0
  580. package/dist/types/functions/public/getRecords.d.ts.map +1 -0
  581. package/dist/types/functions/public/getResolver.d.ts +33 -0
  582. package/dist/types/functions/public/getResolver.d.ts.map +1 -0
  583. package/dist/types/functions/public/getSupportedInterfaces.d.ts +26 -0
  584. package/dist/types/functions/public/getSupportedInterfaces.d.ts.map +1 -0
  585. package/dist/types/functions/public/getTextRecord.d.ts +31 -0
  586. package/dist/types/functions/public/getTextRecord.d.ts.map +1 -0
  587. package/dist/types/functions/public/getWrapperData.d.ts +42 -0
  588. package/dist/types/functions/public/getWrapperData.d.ts.map +1 -0
  589. package/dist/types/functions/public/getWrapperName.d.ts +33 -0
  590. package/dist/types/functions/public/getWrapperName.d.ts.map +1 -0
  591. package/dist/types/functions/public/multicallWrapper.d.ts +14 -0
  592. package/dist/types/functions/public/multicallWrapper.d.ts.map +1 -0
  593. package/dist/types/functions/public/universalWrapper.d.ts +14 -0
  594. package/dist/types/functions/public/universalWrapper.d.ts.map +1 -0
  595. package/dist/types/functions/subgraph/client.d.ts +9 -0
  596. package/dist/types/functions/subgraph/client.d.ts.map +1 -0
  597. package/dist/types/functions/subgraph/events.d.ts +140 -0
  598. package/dist/types/functions/subgraph/events.d.ts.map +1 -0
  599. package/dist/types/functions/subgraph/filters.d.ts +693 -0
  600. package/dist/types/functions/subgraph/filters.d.ts.map +1 -0
  601. package/dist/types/functions/subgraph/fragments.d.ts +41 -0
  602. package/dist/types/functions/subgraph/fragments.d.ts.map +1 -0
  603. package/dist/types/functions/subgraph/getDecodedName.d.ts +29 -0
  604. package/dist/types/functions/subgraph/getDecodedName.d.ts.map +1 -0
  605. package/dist/types/functions/subgraph/getNameHistory.d.ts +53 -0
  606. package/dist/types/functions/subgraph/getNameHistory.d.ts.map +1 -0
  607. package/dist/types/functions/subgraph/getNamesForAddress.d.ts +60 -0
  608. package/dist/types/functions/subgraph/getNamesForAddress.d.ts.map +1 -0
  609. package/dist/types/functions/subgraph/getSubgraphRecords.d.ts +45 -0
  610. package/dist/types/functions/subgraph/getSubgraphRecords.d.ts.map +1 -0
  611. package/dist/types/functions/subgraph/getSubgraphRegistrant.d.ts +28 -0
  612. package/dist/types/functions/subgraph/getSubgraphRegistrant.d.ts.map +1 -0
  613. package/dist/types/functions/subgraph/getSubnames.d.ts +42 -0
  614. package/dist/types/functions/subgraph/getSubnames.d.ts.map +1 -0
  615. package/dist/types/functions/subgraph/types.d.ts +13 -0
  616. package/dist/types/functions/subgraph/types.d.ts.map +1 -0
  617. package/dist/types/functions/subgraph/utils.d.ts +39 -0
  618. package/dist/types/functions/subgraph/utils.d.ts.map +1 -0
  619. package/dist/types/functions/wallet/commitName.d.ts +568 -0
  620. package/dist/types/functions/wallet/commitName.d.ts.map +1 -0
  621. package/dist/types/functions/wallet/createSubname.d.ts +590 -0
  622. package/dist/types/functions/wallet/createSubname.d.ts.map +1 -0
  623. package/dist/types/functions/wallet/deleteSubname.d.ts +571 -0
  624. package/dist/types/functions/wallet/deleteSubname.d.ts.map +1 -0
  625. package/dist/types/functions/wallet/registerName.d.ts +583 -0
  626. package/dist/types/functions/wallet/registerName.d.ts.map +1 -0
  627. package/dist/types/functions/wallet/renewNames.d.ts +583 -0
  628. package/dist/types/functions/wallet/renewNames.d.ts.map +1 -0
  629. package/dist/types/functions/wallet/setAbiRecord.d.ts +576 -0
  630. package/dist/types/functions/wallet/setAbiRecord.d.ts.map +1 -0
  631. package/dist/types/functions/wallet/setAddressRecord.d.ts +575 -0
  632. package/dist/types/functions/wallet/setAddressRecord.d.ts.map +1 -0
  633. package/dist/types/functions/wallet/setChildFuses.d.ts +576 -0
  634. package/dist/types/functions/wallet/setChildFuses.d.ts.map +1 -0
  635. package/dist/types/functions/wallet/setContentHashRecord.d.ts +572 -0
  636. package/dist/types/functions/wallet/setContentHashRecord.d.ts.map +1 -0
  637. package/dist/types/functions/wallet/setFuses.d.ts +572 -0
  638. package/dist/types/functions/wallet/setFuses.d.ts.map +1 -0
  639. package/dist/types/functions/wallet/setPrimaryName.d.ts +579 -0
  640. package/dist/types/functions/wallet/setPrimaryName.d.ts.map +1 -0
  641. package/dist/types/functions/wallet/setRecords.d.ts +577 -0
  642. package/dist/types/functions/wallet/setRecords.d.ts.map +1 -0
  643. package/dist/types/functions/wallet/setResolver.d.ts +572 -0
  644. package/dist/types/functions/wallet/setResolver.d.ts.map +1 -0
  645. package/dist/types/functions/wallet/setTextRecord.d.ts +575 -0
  646. package/dist/types/functions/wallet/setTextRecord.d.ts.map +1 -0
  647. package/dist/types/functions/wallet/transferName.d.ts +586 -0
  648. package/dist/types/functions/wallet/transferName.d.ts.map +1 -0
  649. package/dist/types/functions/wallet/unwrapName.d.ts +581 -0
  650. package/dist/types/functions/wallet/unwrapName.d.ts.map +1 -0
  651. package/dist/types/functions/wallet/wrapName.d.ts +574 -0
  652. package/dist/types/functions/wallet/wrapName.d.ts.map +1 -0
  653. package/dist/types/index.d.ts +15 -0
  654. package/dist/types/index.d.ts.map +1 -0
  655. package/dist/types/public.d.ts +21 -0
  656. package/dist/types/public.d.ts.map +1 -0
  657. package/dist/types/subgraph.d.ts +9 -0
  658. package/dist/types/subgraph.d.ts.map +1 -0
  659. package/dist/types/types.d.ts +61 -0
  660. package/dist/types/types.d.ts.map +1 -0
  661. package/dist/types/utils/consts.d.ts +6 -0
  662. package/dist/types/utils/consts.d.ts.map +1 -0
  663. package/dist/types/utils/contentHash.d.ts +14 -0
  664. package/dist/types/utils/contentHash.d.ts.map +1 -0
  665. package/dist/types/utils/encoders/encodeAbi.d.ts +29 -0
  666. package/dist/types/utils/encoders/encodeAbi.d.ts.map +1 -0
  667. package/dist/types/utils/encoders/encodeSetAbi.d.ts +11 -0
  668. package/dist/types/utils/encoders/encodeSetAbi.d.ts.map +1 -0
  669. package/dist/types/utils/encoders/encodeSetAddr.d.ts +9 -0
  670. package/dist/types/utils/encoders/encodeSetAddr.d.ts.map +1 -0
  671. package/dist/types/utils/encoders/encodeSetContentHash.d.ts +8 -0
  672. package/dist/types/utils/encoders/encodeSetContentHash.d.ts.map +1 -0
  673. package/dist/types/utils/encoders/encodeSetText.d.ts +9 -0
  674. package/dist/types/utils/encoders/encodeSetText.d.ts.map +1 -0
  675. package/dist/types/utils/format.d.ts +2 -0
  676. package/dist/types/utils/format.d.ts.map +1 -0
  677. package/dist/types/utils/fuses.d.ts +176 -0
  678. package/dist/types/utils/fuses.d.ts.map +1 -0
  679. package/dist/types/utils/generateFunction.d.ts +23 -0
  680. package/dist/types/utils/generateFunction.d.ts.map +1 -0
  681. package/dist/types/utils/generateRecordCallArray.d.ts +27 -0
  682. package/dist/types/utils/generateRecordCallArray.d.ts.map +1 -0
  683. package/dist/types/utils/getNameType.d.ts +3 -0
  684. package/dist/types/utils/getNameType.d.ts.map +1 -0
  685. package/dist/types/utils/getRevertErrorData.d.ts +2 -0
  686. package/dist/types/utils/getRevertErrorData.d.ts.map +1 -0
  687. package/dist/types/utils/hexEncodedName.d.ts +4 -0
  688. package/dist/types/utils/hexEncodedName.d.ts.map +1 -0
  689. package/dist/types/utils/index.d.ts +17 -0
  690. package/dist/types/utils/index.d.ts.map +1 -0
  691. package/dist/types/utils/labels.d.ts +10 -0
  692. package/dist/types/utils/labels.d.ts.map +1 -0
  693. package/dist/types/utils/makeLabelNodeAndParent.d.ts +6 -0
  694. package/dist/types/utils/makeLabelNodeAndParent.d.ts.map +1 -0
  695. package/dist/types/utils/makeSafeSecondsDate.d.ts +2 -0
  696. package/dist/types/utils/makeSafeSecondsDate.d.ts.map +1 -0
  697. package/dist/types/utils/normalise.d.ts +12 -0
  698. package/dist/types/utils/normalise.d.ts.map +1 -0
  699. package/dist/types/utils/ownerFromContract.d.ts +20 -0
  700. package/dist/types/utils/ownerFromContract.d.ts.map +1 -0
  701. package/dist/types/utils/registerHelpers.d.ts +50 -0
  702. package/dist/types/utils/registerHelpers.d.ts.map +1 -0
  703. package/dist/types/utils/validation.d.ts +14 -0
  704. package/dist/types/utils/validation.d.ts.map +1 -0
  705. package/dist/types/utils/wrapper.d.ts +5 -0
  706. package/dist/types/utils/wrapper.d.ts.map +1 -0
  707. package/dist/types/wallet.d.ts +18 -0
  708. package/dist/types/wallet.d.ts.map +1 -0
  709. package/dns/package.json +5 -0
  710. package/package.json +89 -76
  711. package/public/package.json +5 -0
  712. package/src/@types/@ensdomains/ens-contracts.d.ts +1 -1
  713. package/src/@types/dns-packet/index.d.ts +113 -113
  714. package/src/@types/dns-packet/types.d.ts +4 -0
  715. package/src/@types/pako.d.ts +188 -0
  716. package/src/ABIs/Multicall.json +452 -0
  717. package/src/clients/decorators/public.ts +394 -0
  718. package/src/clients/decorators/subgraph.ts +195 -0
  719. package/src/clients/decorators/wallet.ts +708 -0
  720. package/src/clients/public.ts +81 -0
  721. package/src/clients/subgraph.ts +72 -0
  722. package/src/clients/wallet.ts +90 -0
  723. package/src/contracts/addEnsContracts.ts +42 -0
  724. package/src/contracts/baseRegistrar.ts +88 -4
  725. package/src/contracts/bulkRenewal.ts +42 -0
  726. package/src/contracts/consts.ts +158 -0
  727. package/src/contracts/dnsRegistrar.ts +73 -0
  728. package/src/contracts/dnssecImpl.ts +46 -0
  729. package/src/contracts/erc1155.ts +30 -0
  730. package/src/contracts/erc165.ts +19 -0
  731. package/src/contracts/erc721.ts +69 -0
  732. package/src/contracts/ethRegistrarController.ts +207 -4
  733. package/src/contracts/getChainContractAddress.ts +19 -0
  734. package/src/contracts/index.ts +97 -68
  735. package/src/contracts/multicall.ts +57 -23
  736. package/src/contracts/nameWrapper.ts +388 -4
  737. package/src/contracts/publicResolver.ts +240 -4
  738. package/src/contracts/registry.ts +181 -4
  739. package/src/contracts/reverseRegistrar.ts +50 -4
  740. package/src/contracts/universalResolver.ts +115 -4
  741. package/src/dns.ts +16 -0
  742. package/src/errors/base.ts +48 -0
  743. package/src/errors/contracts.ts +34 -0
  744. package/src/errors/dns.ts +91 -0
  745. package/src/errors/error-utils.ts +3 -0
  746. package/src/errors/general.ts +92 -0
  747. package/src/errors/public.ts +31 -0
  748. package/src/errors/subgraph.ts +71 -0
  749. package/src/errors/utils.ts +164 -0
  750. package/src/errors/version.ts +1 -0
  751. package/src/errors/wallet.ts +0 -0
  752. package/src/functions/dns/getDnsImportData.ts +132 -0
  753. package/src/functions/dns/getDnsOwner.ts +141 -0
  754. package/src/functions/dns/importDnsName.ts +180 -0
  755. package/src/functions/dns/types.ts +1 -0
  756. package/src/functions/public/_getAbi.ts +115 -0
  757. package/src/functions/public/_getAddr.ts +121 -0
  758. package/src/functions/public/_getContentHash.ts +52 -0
  759. package/src/functions/public/_getText.ts +51 -0
  760. package/src/functions/public/batch.ts +100 -0
  761. package/src/functions/public/getAbiRecord.ts +65 -0
  762. package/src/functions/public/getAddressRecord.ts +66 -0
  763. package/src/functions/public/getAvailable.ts +91 -0
  764. package/src/functions/public/getContentHashRecord.ts +67 -0
  765. package/src/functions/public/getExpiry.ts +199 -0
  766. package/src/functions/public/getName.ts +128 -0
  767. package/src/functions/public/getOwner.ts +250 -0
  768. package/src/functions/public/getPrice.ts +147 -0
  769. package/src/functions/public/getRecords.ts +384 -0
  770. package/src/functions/public/getResolver.ts +100 -0
  771. package/src/functions/public/getSupportedInterfaces.ts +92 -0
  772. package/src/functions/public/getTextRecord.ts +65 -0
  773. package/src/functions/public/getWrapperData.ts +128 -0
  774. package/src/functions/public/getWrapperName.ts +97 -0
  775. package/src/functions/public/multicallWrapper.ts +88 -0
  776. package/src/functions/public/universalWrapper.ts +108 -0
  777. package/src/functions/subgraph/client.ts +90 -0
  778. package/src/functions/subgraph/events.ts +211 -0
  779. package/src/functions/subgraph/filters.ts +702 -0
  780. package/src/functions/subgraph/fragments.ts +88 -0
  781. package/src/functions/subgraph/getDecodedName.ts +120 -0
  782. package/src/functions/subgraph/getNameHistory.ts +326 -0
  783. package/src/functions/subgraph/getNamesForAddress.ts +344 -0
  784. package/src/functions/subgraph/getSubgraphRecords.ts +151 -0
  785. package/src/functions/subgraph/getSubgraphRegistrant.ts +75 -0
  786. package/src/functions/subgraph/getSubnames.ts +259 -0
  787. package/src/functions/subgraph/types.ts +13 -0
  788. package/src/functions/subgraph/utils.ts +90 -0
  789. package/src/functions/wallet/commitName.ts +129 -0
  790. package/src/functions/wallet/createSubname.ts +207 -0
  791. package/src/functions/wallet/deleteSubname.ts +190 -0
  792. package/src/functions/wallet/registerName.ts +152 -0
  793. package/src/functions/wallet/renewNames.ts +150 -0
  794. package/src/functions/wallet/setAbiRecord.ts +112 -0
  795. package/src/functions/wallet/setAddressRecord.ts +106 -0
  796. package/src/functions/wallet/setChildFuses.ts +111 -0
  797. package/src/functions/wallet/setContentHashRecord.ts +101 -0
  798. package/src/functions/wallet/setFuses.ts +105 -0
  799. package/src/functions/wallet/setPrimaryName.ts +154 -0
  800. package/src/functions/wallet/setRecords.ts +133 -0
  801. package/src/functions/wallet/setResolver.ts +125 -0
  802. package/src/functions/wallet/setTextRecord.ts +106 -0
  803. package/src/functions/wallet/transferName.ts +262 -0
  804. package/src/functions/wallet/unwrapName.ts +171 -0
  805. package/src/functions/wallet/wrapName.ts +187 -0
  806. package/src/index.ts +70 -595
  807. package/src/public.ts +100 -0
  808. package/src/subgraph.ts +65 -0
  809. package/src/types.ts +117 -0
  810. package/src/utils/consts.ts +5 -0
  811. package/src/utils/contentHash.ts +74 -129
  812. package/src/utils/encoders/encodeAbi.ts +71 -0
  813. package/src/utils/encoders/encodeSetAbi.ts +21 -0
  814. package/src/utils/encoders/encodeSetAddr.ts +43 -0
  815. package/src/utils/encoders/encodeSetContentHash.ts +25 -0
  816. package/src/utils/encoders/encodeSetText.ts +22 -0
  817. package/src/utils/format.ts +0 -6
  818. package/src/utils/fuses.ts +380 -22
  819. package/src/utils/generateFunction.ts +83 -0
  820. package/src/utils/generateRecordCallArray.ts +76 -0
  821. package/src/utils/getNameType.ts +18 -0
  822. package/src/utils/getRevertErrorData.ts +7 -0
  823. package/src/utils/hexEncodedName.ts +48 -3
  824. package/src/utils/index.ts +102 -0
  825. package/src/utils/labels.ts +40 -65
  826. package/src/utils/makeLabelNodeAndParent.ts +13 -0
  827. package/src/utils/makeSafeSecondsDate.ts +7 -0
  828. package/src/utils/normalise.ts +58 -23
  829. package/src/utils/ownerFromContract.ts +70 -0
  830. package/src/utils/registerHelpers.ts +139 -69
  831. package/src/utils/validation.ts +59 -53
  832. package/src/utils/wrapper.ts +20 -0
  833. package/src/wallet.ts +85 -0
  834. package/subgraph/package.json +5 -0
  835. package/utils/package.json +5 -0
  836. package/wallet/package.json +5 -0
  837. package/dist/cjs/GqlManager.d.ts +0 -9
  838. package/dist/cjs/GqlManager.js +0 -102
  839. package/dist/cjs/contracts/baseRegistrar.d.ts +0 -3
  840. package/dist/cjs/contracts/doNotCallOnChainUniversalResolverProxy.d.ts +0 -3
  841. package/dist/cjs/contracts/doNotCallOnChainUniversalResolverProxy.js +0 -4
  842. package/dist/cjs/contracts/ethRegistrarController.d.ts +0 -3
  843. package/dist/cjs/contracts/getContractAddress.d.ts +0 -3
  844. package/dist/cjs/contracts/getContractAddress.js +0 -46
  845. package/dist/cjs/contracts/index.d.ts +0 -16
  846. package/dist/cjs/contracts/multicall.d.ts +0 -3
  847. package/dist/cjs/contracts/nameWrapper.d.ts +0 -3
  848. package/dist/cjs/contracts/publicResolver.d.ts +0 -3
  849. package/dist/cjs/contracts/registry.d.ts +0 -3
  850. package/dist/cjs/contracts/reverseRegistrar.d.ts +0 -3
  851. package/dist/cjs/contracts/types.d.ts +0 -2
  852. package/dist/cjs/contracts/types.js +0 -2
  853. package/dist/cjs/contracts/universalResolver.d.ts +0 -3
  854. package/dist/cjs/functions/batch.d.ts +0 -9
  855. package/dist/cjs/functions/batch.js +0 -21
  856. package/dist/cjs/functions/batchWrappers.d.ts +0 -29
  857. package/dist/cjs/functions/batchWrappers.js +0 -71
  858. package/dist/cjs/functions/burnFuses.d.ts +0 -5
  859. package/dist/cjs/functions/burnFuses.js +0 -14
  860. package/dist/cjs/functions/createSubname.d.ts +0 -15
  861. package/dist/cjs/functions/createSubname.js +0 -40
  862. package/dist/cjs/functions/deleteSubname.d.ts +0 -4
  863. package/dist/cjs/functions/deleteSubname.js +0 -9
  864. package/dist/cjs/functions/getDNSOwner.d.ts +0 -7
  865. package/dist/cjs/functions/getDNSOwner.js +0 -81
  866. package/dist/cjs/functions/getExpiry.d.ts +0 -12
  867. package/dist/cjs/functions/getExpiry.js +0 -45
  868. package/dist/cjs/functions/getFuses.d.ts +0 -17
  869. package/dist/cjs/functions/getFuses.js +0 -62
  870. package/dist/cjs/functions/getHistory.d.ts +0 -54
  871. package/dist/cjs/functions/getHistory.js +0 -279
  872. package/dist/cjs/functions/getName.d.ts +0 -19
  873. package/dist/cjs/functions/getName.js +0 -34
  874. package/dist/cjs/functions/getNames.d.ts +0 -40
  875. package/dist/cjs/functions/getNames.js +0 -222
  876. package/dist/cjs/functions/getOwner.d.ts +0 -14
  877. package/dist/cjs/functions/getOwner.js +0 -140
  878. package/dist/cjs/functions/getPrice.d.ts +0 -13
  879. package/dist/cjs/functions/getPrice.js +0 -50
  880. package/dist/cjs/functions/getProfile.d.ts +0 -33
  881. package/dist/cjs/functions/getProfile.js +0 -346
  882. package/dist/cjs/functions/getRecords.d.ts +0 -33
  883. package/dist/cjs/functions/getRecords.js +0 -11
  884. package/dist/cjs/functions/getResolver.d.ts +0 -9
  885. package/dist/cjs/functions/getResolver.js +0 -24
  886. package/dist/cjs/functions/getSpecificRecord.d.ts +0 -73
  887. package/dist/cjs/functions/getSpecificRecord.js +0 -268
  888. package/dist/cjs/functions/getSubnames.d.ts +0 -26
  889. package/dist/cjs/functions/getSubnames.js +0 -154
  890. package/dist/cjs/functions/initialGetters.d.ts +0 -11
  891. package/dist/cjs/functions/initialGetters.js +0 -40
  892. package/dist/cjs/functions/setName.d.ts +0 -5
  893. package/dist/cjs/functions/setName.js +0 -12
  894. package/dist/cjs/functions/setRecord.d.ts +0 -18
  895. package/dist/cjs/functions/setRecord.js +0 -27
  896. package/dist/cjs/functions/setRecords.d.ts +0 -6
  897. package/dist/cjs/functions/setRecords.js +0 -24
  898. package/dist/cjs/functions/setResolver.d.ts +0 -5
  899. package/dist/cjs/functions/setResolver.js +0 -22
  900. package/dist/cjs/functions/transferName.d.ts +0 -6
  901. package/dist/cjs/functions/transferName.js +0 -29
  902. package/dist/cjs/functions/transferSubname.d.ts +0 -6
  903. package/dist/cjs/functions/transferSubname.js +0 -24
  904. package/dist/cjs/functions/unwrapName.d.ts +0 -5
  905. package/dist/cjs/functions/unwrapName.js +0 -23
  906. package/dist/cjs/functions/wrapName.d.ts +0 -8
  907. package/dist/cjs/functions/wrapName.js +0 -60
  908. package/dist/cjs/generated/BaseRegistrarImplementation.d.ts +0 -487
  909. package/dist/cjs/generated/BaseRegistrarImplementation.js +0 -2
  910. package/dist/cjs/generated/DNSRegistrar.d.ts +0 -220
  911. package/dist/cjs/generated/DNSRegistrar.js +0 -2
  912. package/dist/cjs/generated/DNSSECImpl.d.ts +0 -402
  913. package/dist/cjs/generated/DNSSECImpl.js +0 -2
  914. package/dist/cjs/generated/DefaultReverseResolver.d.ts +0 -66
  915. package/dist/cjs/generated/DefaultReverseResolver.js +0 -2
  916. package/dist/cjs/generated/DoNotCallOnChainUniversalResolverProxy.d.ts +0 -144
  917. package/dist/cjs/generated/DoNotCallOnChainUniversalResolverProxy.js +0 -2
  918. package/dist/cjs/generated/ENSRegistry.d.ts +0 -259
  919. package/dist/cjs/generated/ENSRegistry.js +0 -2
  920. package/dist/cjs/generated/ETHRegistrarController.d.ts +0 -319
  921. package/dist/cjs/generated/ETHRegistrarController.js +0 -2
  922. package/dist/cjs/generated/Multicall.d.ts +0 -292
  923. package/dist/cjs/generated/Multicall.js +0 -2
  924. package/dist/cjs/generated/NameWrapper.d.ts +0 -675
  925. package/dist/cjs/generated/NameWrapper.js +0 -2
  926. package/dist/cjs/generated/P256SHA256Algorithm.d.ts +0 -72
  927. package/dist/cjs/generated/P256SHA256Algorithm.js +0 -2
  928. package/dist/cjs/generated/PublicResolver.d.ts +0 -542
  929. package/dist/cjs/generated/PublicResolver.js +0 -2
  930. package/dist/cjs/generated/RSASHA1Algorithm.d.ts +0 -42
  931. package/dist/cjs/generated/RSASHA1Algorithm.js +0 -2
  932. package/dist/cjs/generated/RSASHA256Algorithm.d.ts +0 -42
  933. package/dist/cjs/generated/RSASHA256Algorithm.js +0 -2
  934. package/dist/cjs/generated/ReverseRegistrar.d.ts +0 -259
  935. package/dist/cjs/generated/ReverseRegistrar.js +0 -2
  936. package/dist/cjs/generated/Root.d.ts +0 -173
  937. package/dist/cjs/generated/Root.js +0 -2
  938. package/dist/cjs/generated/SHA1Digest.d.ts +0 -67
  939. package/dist/cjs/generated/SHA1Digest.js +0 -2
  940. package/dist/cjs/generated/SHA1NSEC3Digest.d.ts +0 -72
  941. package/dist/cjs/generated/SHA1NSEC3Digest.js +0 -2
  942. package/dist/cjs/generated/SHA256Digest.d.ts +0 -67
  943. package/dist/cjs/generated/SHA256Digest.js +0 -2
  944. package/dist/cjs/generated/StaticMetadataService.d.ts +0 -42
  945. package/dist/cjs/generated/StaticMetadataService.js +0 -2
  946. package/dist/cjs/generated/TLDPublicSuffixList.d.ts +0 -42
  947. package/dist/cjs/generated/TLDPublicSuffixList.js +0 -2
  948. package/dist/cjs/generated/UniversalResolver.d.ts +0 -82
  949. package/dist/cjs/generated/UniversalResolver.js +0 -2
  950. package/dist/cjs/generated/common.d.ts +0 -21
  951. package/dist/cjs/generated/common.js +0 -2
  952. package/dist/cjs/generated/factories/BaseRegistrarImplementation__factory.d.ts +0 -52
  953. package/dist/cjs/generated/factories/BaseRegistrarImplementation__factory.js +0 -770
  954. package/dist/cjs/generated/factories/DNSRegistrar__factory.d.ts +0 -79
  955. package/dist/cjs/generated/factories/DNSRegistrar__factory.js +0 -296
  956. package/dist/cjs/generated/factories/DNSSECImpl__factory.d.ts +0 -68
  957. package/dist/cjs/generated/factories/DNSSECImpl__factory.js +0 -501
  958. package/dist/cjs/generated/factories/DefaultReverseResolver__factory.d.ts +0 -36
  959. package/dist/cjs/generated/factories/DefaultReverseResolver__factory.js +0 -87
  960. package/dist/cjs/generated/factories/DoNotCallOnChainUniversalResolverProxy__factory.d.ts +0 -56
  961. package/dist/cjs/generated/factories/DoNotCallOnChainUniversalResolverProxy__factory.js +0 -171
  962. package/dist/cjs/generated/factories/ENSRegistry__factory.d.ts +0 -52
  963. package/dist/cjs/generated/factories/ENSRegistry__factory.js +0 -439
  964. package/dist/cjs/generated/factories/ETHRegistrarController__factory.d.ts +0 -66
  965. package/dist/cjs/generated/factories/ETHRegistrarController__factory.js +0 -511
  966. package/dist/cjs/generated/factories/Multicall__factory.d.ts +0 -42
  967. package/dist/cjs/generated/factories/Multicall__factory.js +0 -457
  968. package/dist/cjs/generated/factories/NameWrapper__factory.d.ts +0 -57
  969. package/dist/cjs/generated/factories/NameWrapper__factory.js +0 -1200
  970. package/dist/cjs/generated/factories/P256SHA256Algorithm__factory.d.ts +0 -34
  971. package/dist/cjs/generated/factories/P256SHA256Algorithm__factory.js +0 -71
  972. package/dist/cjs/generated/factories/PublicResolver__factory.d.ts +0 -46
  973. package/dist/cjs/generated/factories/PublicResolver__factory.js +0 -892
  974. package/dist/cjs/generated/factories/RSASHA1Algorithm__factory.d.ts +0 -34
  975. package/dist/cjs/generated/factories/RSASHA1Algorithm__factory.js +0 -71
  976. package/dist/cjs/generated/factories/RSASHA256Algorithm__factory.d.ts +0 -34
  977. package/dist/cjs/generated/factories/RSASHA256Algorithm__factory.js +0 -71
  978. package/dist/cjs/generated/factories/ReverseRegistrar__factory.d.ts +0 -46
  979. package/dist/cjs/generated/factories/ReverseRegistrar__factory.js +0 -340
  980. package/dist/cjs/generated/factories/Root__factory.d.ts +0 -52
  981. package/dist/cjs/generated/factories/Root__factory.js +0 -243
  982. package/dist/cjs/generated/factories/SHA1Digest__factory.d.ts +0 -34
  983. package/dist/cjs/generated/factories/SHA1Digest__factory.js +0 -66
  984. package/dist/cjs/generated/factories/SHA1NSEC3Digest__factory.d.ts +0 -34
  985. package/dist/cjs/generated/factories/SHA1NSEC3Digest__factory.js +0 -71
  986. package/dist/cjs/generated/factories/SHA256Digest__factory.d.ts +0 -34
  987. package/dist/cjs/generated/factories/SHA256Digest__factory.js +0 -66
  988. package/dist/cjs/generated/factories/StaticMetadataService__factory.d.ts +0 -32
  989. package/dist/cjs/generated/factories/StaticMetadataService__factory.js +0 -49
  990. package/dist/cjs/generated/factories/TLDPublicSuffixList__factory.d.ts +0 -34
  991. package/dist/cjs/generated/factories/TLDPublicSuffixList__factory.js +0 -61
  992. package/dist/cjs/generated/factories/UniversalResolver__factory.d.ts +0 -42
  993. package/dist/cjs/generated/factories/UniversalResolver__factory.js +0 -204
  994. package/dist/cjs/generated/factories/index.d.ts +0 -6
  995. package/dist/cjs/generated/factories/index.js +0 -18
  996. package/dist/cjs/generated/index.d.ts +0 -13
  997. package/dist/cjs/generated/index.js +0 -39
  998. package/dist/cjs/index.d.ts +0 -472
  999. package/dist/cjs/utils/contentHash.d.ts +0 -28
  1000. package/dist/cjs/utils/createReverseNode.d.ts +0 -2
  1001. package/dist/cjs/utils/createReverseNode.js +0 -3
  1002. package/dist/cjs/utils/format.d.ts +0 -3
  1003. package/dist/cjs/utils/fuses.d.ts +0 -20
  1004. package/dist/cjs/utils/generateFuseInput.d.ts +0 -3
  1005. package/dist/cjs/utils/generateFuseInput.js +0 -19
  1006. package/dist/cjs/utils/hexEncodedName.d.ts +0 -1
  1007. package/dist/cjs/utils/labels.d.ts +0 -14
  1008. package/dist/cjs/utils/makeHashIndexes.d.ts +0 -2
  1009. package/dist/cjs/utils/makeHashIndexes.js +0 -8
  1010. package/dist/cjs/utils/normalise.d.ts +0 -2
  1011. package/dist/cjs/utils/recordHelpers.d.ts +0 -16
  1012. package/dist/cjs/utils/recordHelpers.js +0 -71
  1013. package/dist/cjs/utils/registerHelpers.d.ts +0 -26
  1014. package/dist/cjs/utils/singleCall.d.ts +0 -9
  1015. package/dist/cjs/utils/singleCall.js +0 -7
  1016. package/dist/cjs/utils/validation.d.ts +0 -8
  1017. package/dist/cjs/utils/writeTx.d.ts +0 -4
  1018. package/dist/cjs/utils/writeTx.js +0 -3
  1019. package/dist/esm/GqlManager.d.ts +0 -9
  1020. package/dist/esm/GqlManager.js +0 -74
  1021. package/dist/esm/contracts/baseRegistrar.d.ts +0 -3
  1022. package/dist/esm/contracts/doNotCallOnChainUniversalResolverProxy.d.ts +0 -3
  1023. package/dist/esm/contracts/doNotCallOnChainUniversalResolverProxy.js +0 -2
  1024. package/dist/esm/contracts/ethRegistrarController.d.ts +0 -3
  1025. package/dist/esm/contracts/getContractAddress.d.ts +0 -3
  1026. package/dist/esm/contracts/getContractAddress.js +0 -42
  1027. package/dist/esm/contracts/index.d.ts +0 -16
  1028. package/dist/esm/contracts/multicall.d.ts +0 -3
  1029. package/dist/esm/contracts/nameWrapper.d.ts +0 -3
  1030. package/dist/esm/contracts/publicResolver.d.ts +0 -3
  1031. package/dist/esm/contracts/registry.d.ts +0 -3
  1032. package/dist/esm/contracts/reverseRegistrar.d.ts +0 -3
  1033. package/dist/esm/contracts/types.d.ts +0 -2
  1034. package/dist/esm/contracts/types.js +0 -1
  1035. package/dist/esm/contracts/universalResolver.d.ts +0 -3
  1036. package/dist/esm/functions/batch.d.ts +0 -9
  1037. package/dist/esm/functions/batch.js +0 -19
  1038. package/dist/esm/functions/batchWrappers.d.ts +0 -29
  1039. package/dist/esm/functions/batchWrappers.js +0 -68
  1040. package/dist/esm/functions/burnFuses.d.ts +0 -5
  1041. package/dist/esm/functions/burnFuses.js +0 -8
  1042. package/dist/esm/functions/createSubname.d.ts +0 -15
  1043. package/dist/esm/functions/createSubname.js +0 -34
  1044. package/dist/esm/functions/deleteSubname.d.ts +0 -4
  1045. package/dist/esm/functions/deleteSubname.js +0 -6
  1046. package/dist/esm/functions/getDNSOwner.d.ts +0 -7
  1047. package/dist/esm/functions/getDNSOwner.js +0 -51
  1048. package/dist/esm/functions/getExpiry.d.ts +0 -12
  1049. package/dist/esm/functions/getExpiry.js +0 -43
  1050. package/dist/esm/functions/getFuses.d.ts +0 -17
  1051. package/dist/esm/functions/getFuses.js +0 -60
  1052. package/dist/esm/functions/getHistory.d.ts +0 -54
  1053. package/dist/esm/functions/getHistory.js +0 -273
  1054. package/dist/esm/functions/getName.d.ts +0 -19
  1055. package/dist/esm/functions/getName.js +0 -32
  1056. package/dist/esm/functions/getNames.d.ts +0 -40
  1057. package/dist/esm/functions/getNames.js +0 -220
  1058. package/dist/esm/functions/getOwner.d.ts +0 -14
  1059. package/dist/esm/functions/getOwner.js +0 -138
  1060. package/dist/esm/functions/getPrice.d.ts +0 -13
  1061. package/dist/esm/functions/getPrice.js +0 -48
  1062. package/dist/esm/functions/getProfile.d.ts +0 -33
  1063. package/dist/esm/functions/getProfile.js +0 -343
  1064. package/dist/esm/functions/getRecords.d.ts +0 -33
  1065. package/dist/esm/functions/getRecords.js +0 -8
  1066. package/dist/esm/functions/getResolver.d.ts +0 -9
  1067. package/dist/esm/functions/getResolver.js +0 -22
  1068. package/dist/esm/functions/getSpecificRecord.d.ts +0 -73
  1069. package/dist/esm/functions/getSpecificRecord.js +0 -265
  1070. package/dist/esm/functions/getSubnames.d.ts +0 -26
  1071. package/dist/esm/functions/getSubnames.js +0 -152
  1072. package/dist/esm/functions/initialGetters.d.ts +0 -11
  1073. package/dist/esm/functions/initialGetters.js +0 -11
  1074. package/dist/esm/functions/setName.d.ts +0 -5
  1075. package/dist/esm/functions/setName.js +0 -9
  1076. package/dist/esm/functions/setRecord.d.ts +0 -18
  1077. package/dist/esm/functions/setRecord.js +0 -24
  1078. package/dist/esm/functions/setRecords.d.ts +0 -6
  1079. package/dist/esm/functions/setRecords.js +0 -21
  1080. package/dist/esm/functions/setResolver.d.ts +0 -5
  1081. package/dist/esm/functions/setResolver.js +0 -19
  1082. package/dist/esm/functions/transferName.d.ts +0 -6
  1083. package/dist/esm/functions/transferName.js +0 -26
  1084. package/dist/esm/functions/transferSubname.d.ts +0 -6
  1085. package/dist/esm/functions/transferSubname.js +0 -21
  1086. package/dist/esm/functions/unwrapName.d.ts +0 -5
  1087. package/dist/esm/functions/unwrapName.js +0 -20
  1088. package/dist/esm/functions/wrapName.d.ts +0 -8
  1089. package/dist/esm/functions/wrapName.js +0 -54
  1090. package/dist/esm/generated/BaseRegistrarImplementation.d.ts +0 -487
  1091. package/dist/esm/generated/BaseRegistrarImplementation.js +0 -1
  1092. package/dist/esm/generated/DNSRegistrar.d.ts +0 -220
  1093. package/dist/esm/generated/DNSRegistrar.js +0 -1
  1094. package/dist/esm/generated/DNSSECImpl.d.ts +0 -402
  1095. package/dist/esm/generated/DNSSECImpl.js +0 -1
  1096. package/dist/esm/generated/DefaultReverseResolver.d.ts +0 -66
  1097. package/dist/esm/generated/DefaultReverseResolver.js +0 -1
  1098. package/dist/esm/generated/DoNotCallOnChainUniversalResolverProxy.d.ts +0 -144
  1099. package/dist/esm/generated/DoNotCallOnChainUniversalResolverProxy.js +0 -1
  1100. package/dist/esm/generated/ENSRegistry.d.ts +0 -259
  1101. package/dist/esm/generated/ENSRegistry.js +0 -1
  1102. package/dist/esm/generated/ETHRegistrarController.d.ts +0 -319
  1103. package/dist/esm/generated/ETHRegistrarController.js +0 -1
  1104. package/dist/esm/generated/Multicall.d.ts +0 -292
  1105. package/dist/esm/generated/Multicall.js +0 -1
  1106. package/dist/esm/generated/NameWrapper.d.ts +0 -675
  1107. package/dist/esm/generated/NameWrapper.js +0 -1
  1108. package/dist/esm/generated/P256SHA256Algorithm.d.ts +0 -72
  1109. package/dist/esm/generated/P256SHA256Algorithm.js +0 -1
  1110. package/dist/esm/generated/PublicResolver.d.ts +0 -542
  1111. package/dist/esm/generated/PublicResolver.js +0 -1
  1112. package/dist/esm/generated/RSASHA1Algorithm.d.ts +0 -42
  1113. package/dist/esm/generated/RSASHA1Algorithm.js +0 -1
  1114. package/dist/esm/generated/RSASHA256Algorithm.d.ts +0 -42
  1115. package/dist/esm/generated/RSASHA256Algorithm.js +0 -1
  1116. package/dist/esm/generated/ReverseRegistrar.d.ts +0 -259
  1117. package/dist/esm/generated/ReverseRegistrar.js +0 -1
  1118. package/dist/esm/generated/Root.d.ts +0 -173
  1119. package/dist/esm/generated/Root.js +0 -1
  1120. package/dist/esm/generated/SHA1Digest.d.ts +0 -67
  1121. package/dist/esm/generated/SHA1Digest.js +0 -1
  1122. package/dist/esm/generated/SHA1NSEC3Digest.d.ts +0 -72
  1123. package/dist/esm/generated/SHA1NSEC3Digest.js +0 -1
  1124. package/dist/esm/generated/SHA256Digest.d.ts +0 -67
  1125. package/dist/esm/generated/SHA256Digest.js +0 -1
  1126. package/dist/esm/generated/StaticMetadataService.d.ts +0 -42
  1127. package/dist/esm/generated/StaticMetadataService.js +0 -1
  1128. package/dist/esm/generated/TLDPublicSuffixList.d.ts +0 -42
  1129. package/dist/esm/generated/TLDPublicSuffixList.js +0 -1
  1130. package/dist/esm/generated/UniversalResolver.d.ts +0 -82
  1131. package/dist/esm/generated/UniversalResolver.js +0 -1
  1132. package/dist/esm/generated/common.d.ts +0 -21
  1133. package/dist/esm/generated/common.js +0 -1
  1134. package/dist/esm/generated/factories/BaseRegistrarImplementation__factory.d.ts +0 -52
  1135. package/dist/esm/generated/factories/BaseRegistrarImplementation__factory.js +0 -766
  1136. package/dist/esm/generated/factories/DNSRegistrar__factory.d.ts +0 -79
  1137. package/dist/esm/generated/factories/DNSRegistrar__factory.js +0 -292
  1138. package/dist/esm/generated/factories/DNSSECImpl__factory.d.ts +0 -68
  1139. package/dist/esm/generated/factories/DNSSECImpl__factory.js +0 -497
  1140. package/dist/esm/generated/factories/DefaultReverseResolver__factory.d.ts +0 -36
  1141. package/dist/esm/generated/factories/DefaultReverseResolver__factory.js +0 -83
  1142. package/dist/esm/generated/factories/DoNotCallOnChainUniversalResolverProxy__factory.d.ts +0 -56
  1143. package/dist/esm/generated/factories/DoNotCallOnChainUniversalResolverProxy__factory.js +0 -167
  1144. package/dist/esm/generated/factories/ENSRegistry__factory.d.ts +0 -52
  1145. package/dist/esm/generated/factories/ENSRegistry__factory.js +0 -435
  1146. package/dist/esm/generated/factories/ETHRegistrarController__factory.d.ts +0 -66
  1147. package/dist/esm/generated/factories/ETHRegistrarController__factory.js +0 -507
  1148. package/dist/esm/generated/factories/Multicall__factory.d.ts +0 -42
  1149. package/dist/esm/generated/factories/Multicall__factory.js +0 -453
  1150. package/dist/esm/generated/factories/NameWrapper__factory.d.ts +0 -57
  1151. package/dist/esm/generated/factories/NameWrapper__factory.js +0 -1196
  1152. package/dist/esm/generated/factories/P256SHA256Algorithm__factory.d.ts +0 -34
  1153. package/dist/esm/generated/factories/P256SHA256Algorithm__factory.js +0 -67
  1154. package/dist/esm/generated/factories/PublicResolver__factory.d.ts +0 -46
  1155. package/dist/esm/generated/factories/PublicResolver__factory.js +0 -888
  1156. package/dist/esm/generated/factories/RSASHA1Algorithm__factory.d.ts +0 -34
  1157. package/dist/esm/generated/factories/RSASHA1Algorithm__factory.js +0 -67
  1158. package/dist/esm/generated/factories/RSASHA256Algorithm__factory.d.ts +0 -34
  1159. package/dist/esm/generated/factories/RSASHA256Algorithm__factory.js +0 -67
  1160. package/dist/esm/generated/factories/ReverseRegistrar__factory.d.ts +0 -46
  1161. package/dist/esm/generated/factories/ReverseRegistrar__factory.js +0 -336
  1162. package/dist/esm/generated/factories/Root__factory.d.ts +0 -52
  1163. package/dist/esm/generated/factories/Root__factory.js +0 -239
  1164. package/dist/esm/generated/factories/SHA1Digest__factory.d.ts +0 -34
  1165. package/dist/esm/generated/factories/SHA1Digest__factory.js +0 -62
  1166. package/dist/esm/generated/factories/SHA1NSEC3Digest__factory.d.ts +0 -34
  1167. package/dist/esm/generated/factories/SHA1NSEC3Digest__factory.js +0 -67
  1168. package/dist/esm/generated/factories/SHA256Digest__factory.d.ts +0 -34
  1169. package/dist/esm/generated/factories/SHA256Digest__factory.js +0 -62
  1170. package/dist/esm/generated/factories/StaticMetadataService__factory.d.ts +0 -32
  1171. package/dist/esm/generated/factories/StaticMetadataService__factory.js +0 -45
  1172. package/dist/esm/generated/factories/TLDPublicSuffixList__factory.d.ts +0 -34
  1173. package/dist/esm/generated/factories/TLDPublicSuffixList__factory.js +0 -57
  1174. package/dist/esm/generated/factories/UniversalResolver__factory.d.ts +0 -42
  1175. package/dist/esm/generated/factories/UniversalResolver__factory.js +0 -200
  1176. package/dist/esm/generated/factories/index.d.ts +0 -6
  1177. package/dist/esm/generated/factories/index.js +0 -9
  1178. package/dist/esm/generated/index.d.ts +0 -13
  1179. package/dist/esm/generated/index.js +0 -7
  1180. package/dist/esm/index.d.ts +0 -472
  1181. package/dist/esm/utils/contentHash.d.ts +0 -28
  1182. package/dist/esm/utils/createReverseNode.d.ts +0 -2
  1183. package/dist/esm/utils/createReverseNode.js +0 -1
  1184. package/dist/esm/utils/format.d.ts +0 -3
  1185. package/dist/esm/utils/fuses.d.ts +0 -20
  1186. package/dist/esm/utils/generateFuseInput.d.ts +0 -3
  1187. package/dist/esm/utils/generateFuseInput.js +0 -14
  1188. package/dist/esm/utils/hexEncodedName.d.ts +0 -1
  1189. package/dist/esm/utils/labels.d.ts +0 -14
  1190. package/dist/esm/utils/makeHashIndexes.d.ts +0 -2
  1191. package/dist/esm/utils/makeHashIndexes.js +0 -3
  1192. package/dist/esm/utils/normalise.d.ts +0 -2
  1193. package/dist/esm/utils/recordHelpers.d.ts +0 -16
  1194. package/dist/esm/utils/recordHelpers.js +0 -65
  1195. package/dist/esm/utils/registerHelpers.d.ts +0 -26
  1196. package/dist/esm/utils/singleCall.d.ts +0 -9
  1197. package/dist/esm/utils/singleCall.js +0 -5
  1198. package/dist/esm/utils/validation.d.ts +0 -8
  1199. package/dist/esm/utils/writeTx.d.ts +0 -4
  1200. package/dist/esm/utils/writeTx.js +0 -1
  1201. package/src/@types/@ensdomains/content-hash.d.ts +0 -1
  1202. package/src/@types/FuseOptions.d.ts +0 -9
  1203. package/src/@types/idna-uts46-hx.d.ts +0 -1
  1204. package/src/ABIs/ETHRegistrarController.json +0 -494
  1205. package/src/ABIs/NameWrapper.json +0 -1183
  1206. package/src/ABIs/PublicResolver.json +0 -875
  1207. package/src/ABIs/ReverseRegistrar.json +0 -323
  1208. package/src/ABIs/StaticMetadataService.json +0 -32
  1209. package/src/ABIs/UniversalResolver.json +0 -187
  1210. package/src/GqlManager.test.ts +0 -170
  1211. package/src/GqlManager.ts +0 -83
  1212. package/src/contracts/doNotCallOnChainUniversalResolverProxy.ts +0 -5
  1213. package/src/contracts/getContractAddress.ts +0 -52
  1214. package/src/contracts/types.ts +0 -11
  1215. package/src/functions/batch.test.ts +0 -36
  1216. package/src/functions/batch.ts +0 -36
  1217. package/src/functions/batchWrappers.test.ts +0 -31
  1218. package/src/functions/batchWrappers.ts +0 -91
  1219. package/src/functions/burnFuses.test.ts +0 -45
  1220. package/src/functions/burnFuses.ts +0 -21
  1221. package/src/functions/createSubname.test.ts +0 -55
  1222. package/src/functions/createSubname.ts +0 -76
  1223. package/src/functions/deleteSubname.test.ts +0 -72
  1224. package/src/functions/deleteSubname.ts +0 -16
  1225. package/src/functions/getDNSOwner.test.ts +0 -122
  1226. package/src/functions/getDNSOwner.ts +0 -61
  1227. package/src/functions/getExpiry.test.ts +0 -37
  1228. package/src/functions/getExpiry.ts +0 -63
  1229. package/src/functions/getFuses.test.ts +0 -105
  1230. package/src/functions/getFuses.ts +0 -76
  1231. package/src/functions/getHistory.test.ts +0 -101
  1232. package/src/functions/getHistory.ts +0 -347
  1233. package/src/functions/getName.test.ts +0 -47
  1234. package/src/functions/getName.ts +0 -41
  1235. package/src/functions/getNames.test.ts +0 -247
  1236. package/src/functions/getNames.ts +0 -275
  1237. package/src/functions/getOwner.test.ts +0 -73
  1238. package/src/functions/getOwner.ts +0 -202
  1239. package/src/functions/getPrice.ts +0 -71
  1240. package/src/functions/getProfile.test.ts +0 -135
  1241. package/src/functions/getProfile.ts +0 -606
  1242. package/src/functions/getRecords.ts +0 -23
  1243. package/src/functions/getResolver.test.ts +0 -19
  1244. package/src/functions/getResolver.ts +0 -32
  1245. package/src/functions/getSpecificRecord.test.ts +0 -76
  1246. package/src/functions/getSpecificRecord.ts +0 -365
  1247. package/src/functions/getSubnames.test.ts +0 -31
  1248. package/src/functions/getSubnames.ts +0 -190
  1249. package/src/functions/initialGetters.ts +0 -11
  1250. package/src/functions/makeCommitment.test.ts +0 -23
  1251. package/src/functions/normalise.test.ts +0 -22
  1252. package/src/functions/setName.test.ts +0 -59
  1253. package/src/functions/setName.ts +0 -32
  1254. package/src/functions/setRecord.test.ts +0 -100
  1255. package/src/functions/setRecord.ts +0 -63
  1256. package/src/functions/setRecords.test.ts +0 -60
  1257. package/src/functions/setRecords.ts +0 -44
  1258. package/src/functions/setResolver.test.ts +0 -57
  1259. package/src/functions/setResolver.ts +0 -35
  1260. package/src/functions/transferName.test.ts +0 -79
  1261. package/src/functions/transferName.ts +0 -53
  1262. package/src/functions/transferSubname.test.ts +0 -74
  1263. package/src/functions/transferSubname.ts +0 -45
  1264. package/src/functions/unwrapName.test.ts +0 -68
  1265. package/src/functions/unwrapName.ts +0 -43
  1266. package/src/functions/wrapName.test.ts +0 -67
  1267. package/src/functions/wrapName.ts +0 -126
  1268. package/src/generated/BaseRegistrarImplementation.ts +0 -1122
  1269. package/src/generated/DNSRegistrar.ts +0 -445
  1270. package/src/generated/DNSSECImpl.ts +0 -770
  1271. package/src/generated/DefaultReverseResolver.ts +0 -137
  1272. package/src/generated/DoNotCallOnChainUniversalResolverProxy.ts +0 -285
  1273. package/src/generated/ENSRegistry.ts +0 -618
  1274. package/src/generated/ETHRegistrarController.ts +0 -743
  1275. package/src/generated/Multicall.ts +0 -582
  1276. package/src/generated/NameWrapper.ts +0 -1694
  1277. package/src/generated/P256SHA256Algorithm.ts +0 -139
  1278. package/src/generated/PublicResolver.ts +0 -1326
  1279. package/src/generated/RSASHA1Algorithm.ts +0 -109
  1280. package/src/generated/RSASHA256Algorithm.ts +0 -109
  1281. package/src/generated/ReverseRegistrar.ts +0 -556
  1282. package/src/generated/Root.ts +0 -377
  1283. package/src/generated/SHA1Digest.ts +0 -129
  1284. package/src/generated/SHA1NSEC3Digest.ts +0 -140
  1285. package/src/generated/SHA256Digest.ts +0 -129
  1286. package/src/generated/StaticMetadataService.ts +0 -85
  1287. package/src/generated/TLDPublicSuffixList.ts +0 -99
  1288. package/src/generated/UniversalResolver.ts +0 -260
  1289. package/src/generated/common.ts +0 -44
  1290. package/src/generated/factories/BaseRegistrarImplementation__factory.ts +0 -781
  1291. package/src/generated/factories/DNSRegistrar__factory.ts +0 -329
  1292. package/src/generated/factories/DNSSECImpl__factory.ts +0 -527
  1293. package/src/generated/factories/DefaultReverseResolver__factory.ts +0 -98
  1294. package/src/generated/factories/DoNotCallOnChainUniversalResolverProxy__factory.ts +0 -186
  1295. package/src/generated/factories/ENSRegistry__factory.ts +0 -443
  1296. package/src/generated/factories/ETHRegistrarController__factory.ts +0 -522
  1297. package/src/generated/factories/Multicall__factory.ts +0 -461
  1298. package/src/generated/factories/NameWrapper__factory.ts +0 -1204
  1299. package/src/generated/factories/P256SHA256Algorithm__factory.ts +0 -91
  1300. package/src/generated/factories/PublicResolver__factory.ts +0 -899
  1301. package/src/generated/factories/RSASHA1Algorithm__factory.ts +0 -91
  1302. package/src/generated/factories/RSASHA256Algorithm__factory.ts +0 -91
  1303. package/src/generated/factories/ReverseRegistrar__factory.ts +0 -347
  1304. package/src/generated/factories/Root__factory.ts +0 -244
  1305. package/src/generated/factories/SHA1Digest__factory.ts +0 -83
  1306. package/src/generated/factories/SHA1NSEC3Digest__factory.ts +0 -91
  1307. package/src/generated/factories/SHA256Digest__factory.ts +0 -83
  1308. package/src/generated/factories/StaticMetadataService__factory.ts +0 -60
  1309. package/src/generated/factories/TLDPublicSuffixList__factory.ts +0 -81
  1310. package/src/generated/factories/UniversalResolver__factory.ts +0 -211
  1311. package/src/generated/factories/index.ts +0 -9
  1312. package/src/generated/index.ts +0 -16
  1313. package/src/tests/populateTransaction.test.ts +0 -40
  1314. package/src/tests/setup.ts +0 -53
  1315. package/src/tests/signerInjection.test.ts +0 -46
  1316. package/src/tests/withProvider.test.ts +0 -28
  1317. package/src/utils/createReverseNode.ts +0 -2
  1318. package/src/utils/generateFuseInput.ts +0 -18
  1319. package/src/utils/makeHashIndexes.ts +0 -9
  1320. package/src/utils/recordHelpers.ts +0 -106
  1321. package/src/utils/singleCall.ts +0 -16
  1322. package/src/utils/writeTx.ts +0 -6
@@ -0,0 +1,226 @@
1
+ /* eslint-disable @typescript-eslint/naming-convention */
2
+ import { gql } from 'graphql-request';
3
+ import { FilterKeyRequiredError, InvalidFilterKeyError, InvalidOrderByError, } from '../../errors/subgraph.js';
4
+ import { EMPTY_ADDRESS, GRACE_PERIOD_SECONDS } from '../../utils/consts.js';
5
+ import { createSubgraphClient } from './client.js';
6
+ import { domainDetailsFragment, registrationDetailsFragment, wrappedDomainDetailsFragment, } from './fragments.js';
7
+ import { makeNameObject } from './utils.js';
8
+ const supportedOwnerFilters = [
9
+ 'owner',
10
+ 'registrant',
11
+ 'wrappedOwner',
12
+ 'resolvedAddress',
13
+ ];
14
+ const getOrderByFilter = ({ orderBy, orderDirection, previousPage, }) => {
15
+ const lastDomain = previousPage[previousPage.length - 1];
16
+ const operator = orderDirection === 'asc' ? 'gt' : 'lt';
17
+ switch (orderBy) {
18
+ case 'expiryDate': {
19
+ let lastExpiryDate = lastDomain.expiryDate?.value
20
+ ? lastDomain.expiryDate.value / 1000
21
+ : 0;
22
+ if (lastDomain.parentName === 'eth') {
23
+ lastExpiryDate += GRACE_PERIOD_SECONDS;
24
+ }
25
+ if (orderDirection === 'asc' && lastExpiryDate === 0) {
26
+ return {
27
+ and: [{ expiryDate: null }, { [`id_${operator}`]: lastDomain.id }],
28
+ };
29
+ }
30
+ if (orderDirection === 'desc' && lastExpiryDate !== 0) {
31
+ return {
32
+ [`expiryDate_${operator}`]: `${lastExpiryDate}`,
33
+ };
34
+ }
35
+ return {
36
+ or: [
37
+ {
38
+ [`expiryDate_${operator}`]: `${lastExpiryDate}`,
39
+ },
40
+ { expiryDate: null },
41
+ ],
42
+ };
43
+ }
44
+ case 'name': {
45
+ return {
46
+ [`name_${operator}`]: lastDomain.name ?? '',
47
+ };
48
+ }
49
+ case 'labelName': {
50
+ return {
51
+ [`labelName_${operator}`]: lastDomain.labelName ?? '',
52
+ };
53
+ }
54
+ case 'createdAt': {
55
+ return {
56
+ [`createdAt_${operator}`]: `${lastDomain.createdAt.value / 1000}`,
57
+ };
58
+ }
59
+ default:
60
+ throw new InvalidOrderByError({
61
+ orderBy: orderBy || '<no orderBy provided>',
62
+ supportedOrderBys: ['expiryDate', 'name', 'labelName', 'createdAt'],
63
+ });
64
+ }
65
+ };
66
+ /**
67
+ * Gets the names for an address from the subgraph.
68
+ * @param client - {@link ClientWithEns}
69
+ * @param parameters - {@link GetNamesForAddressParameters}
70
+ * @returns Name array. {@link GetNamesForAddressReturnType}
71
+ *
72
+ * @example
73
+ * import { createPublicClient, http } from 'viem'
74
+ * import { mainnet } from 'viem/chains'
75
+ * import { addEnsContracts, getNamesForAddress } from '@ensdomains/ensjs'
76
+ *
77
+ * const client = createPublicClient({
78
+ * chain: addEnsContracts(mainnet),
79
+ * transport: http(),
80
+ * })
81
+ * const result = await getNamesForAddress(client, { address: '0xFe89cc7aBB2C4183683ab71653C4cdc9B02D44b7' })
82
+ */
83
+ const getNamesForAddress = async (client, { address, filter = {
84
+ owner: true,
85
+ registrant: true,
86
+ resolvedAddress: true,
87
+ wrappedOwner: true,
88
+ allowExpired: false,
89
+ allowDeleted: false,
90
+ allowReverseRecord: false,
91
+ }, orderBy = 'name', orderDirection = 'asc', pageSize = 100, previousPage, }) => {
92
+ const subgraphClient = createSubgraphClient({ client });
93
+ const { allowExpired, allowDeleted, allowReverseRecord, ...filters } = filter;
94
+ const ownerWhereFilters = Object.entries(filters).reduce((prev, [key, value]) => {
95
+ if (value) {
96
+ if (!supportedOwnerFilters.includes(key))
97
+ throw new InvalidFilterKeyError({
98
+ filterKey: key,
99
+ supportedFilterKeys: supportedOwnerFilters,
100
+ });
101
+ return [
102
+ ...prev,
103
+ {
104
+ [key]: address.toLowerCase(),
105
+ },
106
+ ];
107
+ }
108
+ return prev;
109
+ }, []);
110
+ const hasFilterApplied = ownerWhereFilters.length > 0;
111
+ if (!hasFilterApplied)
112
+ throw new FilterKeyRequiredError({
113
+ supportedFilterKeys: supportedOwnerFilters,
114
+ details: 'At least one ownership filter must be enabled',
115
+ });
116
+ const ownerWhereFilter = ownerWhereFilters.length > 1
117
+ ? { or: ownerWhereFilters }
118
+ : ownerWhereFilters[0];
119
+ const whereFilters = [ownerWhereFilter];
120
+ if (previousPage?.length) {
121
+ whereFilters.push(getOrderByFilter({
122
+ orderBy,
123
+ orderDirection,
124
+ previousPage,
125
+ }));
126
+ }
127
+ if (!allowReverseRecord) {
128
+ // Exclude domains with parent addr.reverse
129
+ // namehash of addr.reverse = 0x91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2
130
+ whereFilters.push({
131
+ parent_not: '0x91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2',
132
+ });
133
+ }
134
+ if (!allowExpired) {
135
+ // Exclude domains that are expired
136
+ // if expiryDate is null, there is no expiry on the domain (registration or wrapped)
137
+ whereFilters.push({
138
+ or: [
139
+ { expiryDate_gt: `${Math.floor(Date.now() / 1000)}` },
140
+ { expiryDate: null },
141
+ ],
142
+ });
143
+ }
144
+ if (!allowDeleted) {
145
+ // exclude "deleted" domains
146
+ // when owner/resolver/registrant = null
147
+ whereFilters.push({
148
+ or: [
149
+ {
150
+ owner_not: EMPTY_ADDRESS,
151
+ },
152
+ {
153
+ resolver_not: null,
154
+ },
155
+ {
156
+ and: [
157
+ {
158
+ registrant_not: EMPTY_ADDRESS,
159
+ },
160
+ {
161
+ registrant_not: null,
162
+ },
163
+ ],
164
+ },
165
+ ],
166
+ });
167
+ }
168
+ const whereFilter = whereFilters.length > 1 ? { and: whereFilters } : whereFilters[0];
169
+ const query = gql `
170
+ query getNamesForAddress(
171
+ $orderBy: Domain_orderBy
172
+ $orderDirection: OrderDirection
173
+ $first: Int
174
+ $whereFilter: Domain_filter
175
+ ) {
176
+ domains(
177
+ orderBy: $orderBy
178
+ orderDirection: $orderDirection
179
+ first: $first
180
+ where: $whereFilter
181
+ ) {
182
+ ...DomainDetails
183
+ registration {
184
+ ...RegistrationDetails
185
+ }
186
+ wrappedDomain {
187
+ ...WrappedDomainDetails
188
+ }
189
+ }
190
+ }
191
+ ${domainDetailsFragment}
192
+ ${registrationDetailsFragment}
193
+ ${wrappedDomainDetailsFragment}
194
+ `;
195
+ const result = await subgraphClient.request(query, {
196
+ orderBy,
197
+ orderDirection,
198
+ first: pageSize,
199
+ whereFilter,
200
+ });
201
+ if (!result)
202
+ return [];
203
+ const names = result.domains.map((domain) => {
204
+ const relation = {};
205
+ if (domain.owner) {
206
+ relation.owner = domain.owner.id === address.toLowerCase();
207
+ }
208
+ if (domain.registrant) {
209
+ relation.registrant = domain.registrant.id === address.toLowerCase();
210
+ }
211
+ if (domain.wrappedOwner) {
212
+ relation.wrappedOwner = domain.wrappedOwner.id === address.toLowerCase();
213
+ }
214
+ if (domain.resolvedAddress) {
215
+ relation.resolvedAddress =
216
+ domain.resolvedAddress.id === address.toLowerCase();
217
+ }
218
+ return {
219
+ ...makeNameObject(domain),
220
+ relation,
221
+ };
222
+ });
223
+ return names;
224
+ };
225
+ export default getNamesForAddress;
226
+ //# sourceMappingURL=getNamesForAddress.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getNamesForAddress.js","sourceRoot":"","sources":["../../../../src/functions/subgraph/getNamesForAddress.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,94 @@
1
+ import { gql } from 'graphql-request';
2
+ import { namehash } from '../../utils/normalise.js';
3
+ import { createSubgraphClient } from './client.js';
4
+ const inheritedResolverQuery = gql `
5
+ query getSubgraphRecords($id: String!) {
6
+ domain(id: $id) {
7
+ name
8
+ isMigrated
9
+ createdAt
10
+ resolver {
11
+ texts
12
+ coinTypes
13
+ }
14
+ }
15
+ }
16
+ `;
17
+ const customResolverQuery = gql `
18
+ query getSubgraphRecords($id: String!, $resolverId: String!) {
19
+ domain(id: $id) {
20
+ name
21
+ isMigrated
22
+ createdAt
23
+ }
24
+ resolver(id: $resolverId) {
25
+ texts
26
+ coinTypes
27
+ }
28
+ }
29
+ `;
30
+ /**
31
+ * Gets the records for a name from the subgraph
32
+ * @param client - {@link ClientWithEns}
33
+ * @param parameters - {@link GetSubgraphRecordsParameters}
34
+ * @returns Record object, or null if name was not found. {@link GetSubgraphRecordsReturnType}
35
+ *
36
+ * @example
37
+ * import { createPublicClient, http } from 'viem'
38
+ * import { mainnet } from 'viem/chains'
39
+ * import { addEnsContracts, getSubgraphRecords } from '@ensdomains/ensjs'
40
+ *
41
+ * const client = createPublicClient({
42
+ * chain: addEnsContracts(mainnet),
43
+ * transport: http(),
44
+ * })
45
+ * const result = await getSubgraphRecords(client, { name: 'ens.eth' })
46
+ * // {
47
+ * // isMigrated: true,
48
+ * // createdAt: { date: 2019-08-26T05:09:01.000Z, value: 1566796141000 },
49
+ * // texts: [ 'snapshot', 'url', 'avatar', 'com.twitter', 'com.github' ],
50
+ * // coins: [ '60' ]
51
+ * // }
52
+ */
53
+ const getSubgraphRecords = async (client, { name, resolverAddress }) => {
54
+ const subgraphClient = createSubgraphClient({ client });
55
+ const id = namehash(name);
56
+ let domainResult;
57
+ let resolverResult;
58
+ if (resolverAddress) {
59
+ const resolverId = `${resolverAddress.toLowerCase()}-${id}`;
60
+ const response = await subgraphClient.request(customResolverQuery, {
61
+ id,
62
+ resolverId,
63
+ });
64
+ if (!response || !response.domain)
65
+ return null;
66
+ domainResult = response.domain;
67
+ resolverResult = response.resolver;
68
+ }
69
+ else {
70
+ const response = await subgraphClient.request(inheritedResolverQuery, {
71
+ id,
72
+ });
73
+ if (!response || !response.domain)
74
+ return null;
75
+ const { resolver, ...domain_ } = response.domain;
76
+ resolverResult = resolver;
77
+ domainResult = domain_;
78
+ }
79
+ const { isMigrated, createdAt: stringCreatedAt } = domainResult;
80
+ const intCreatedAt = parseInt(stringCreatedAt) * 1000;
81
+ const texts = resolverResult?.texts || [];
82
+ const coins = resolverResult?.coinTypes || [];
83
+ return {
84
+ isMigrated,
85
+ createdAt: {
86
+ date: new Date(intCreatedAt),
87
+ value: intCreatedAt,
88
+ },
89
+ texts,
90
+ coins,
91
+ };
92
+ };
93
+ export default getSubgraphRecords;
94
+ //# sourceMappingURL=getSubgraphRecords.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getSubgraphRecords.js","sourceRoot":"","sources":["../../../../src/functions/subgraph/getSubgraphRecords.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAA;AAIrC,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAoBlD,MAAM,sBAAsB,GAAG,GAAG,CAAA;;;;;;;;;;;;CAYjC,CAAA;AAED,MAAM,mBAAmB,GAAG,GAAG,CAAA;;;;;;;;;;;;CAY9B,CAAA;AAwBD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,kBAAkB,GAAG,KAAK,EAC9B,MAAqB,EACrB,EAAE,IAAI,EAAE,eAAe,EAAgC,EAChB,EAAE;IACzC,MAAM,cAAc,GAAG,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC,CAAA;IACvD,MAAM,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;IAEzB,IAAI,YAA0B,CAAA;IAC9B,IAAI,cAA0C,CAAA;IAE9C,IAAI,eAAe,EAAE;QACnB,MAAM,UAAU,GAAG,GAAG,eAAe,CAAC,WAAW,EAAE,IAAI,EAAE,EAAE,CAAA;QAC3D,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,OAAO,CAC3C,mBAAmB,EACnB;YACE,EAAE;YACF,UAAU;SACX,CACF,CAAA;QACD,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC,MAAM;YAAE,OAAO,IAAI,CAAA;QAC9C,YAAY,GAAG,QAAQ,CAAC,MAAM,CAAA;QAC9B,cAAc,GAAG,QAAQ,CAAC,QAAQ,CAAA;KACnC;SAAM;QACL,MAAM,QAAQ,GACZ,MAAM,cAAc,CAAC,OAAO,CAC1B,sBAAsB,EACtB;YACE,EAAE;SACH,CACF,CAAA;QACH,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC,MAAM;YAAE,OAAO,IAAI,CAAA;QAC9C,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,EAAE,GAAG,QAAQ,CAAC,MAAM,CAAA;QAChD,cAAc,GAAG,QAAQ,CAAA;QACzB,YAAY,GAAG,OAAO,CAAA;KACvB;IAED,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,eAAe,EAAE,GAAG,YAAY,CAAA;IAC/D,MAAM,YAAY,GAAG,QAAQ,CAAC,eAAe,CAAC,GAAG,IAAI,CAAA;IACrD,MAAM,KAAK,GAAG,cAAc,EAAE,KAAK,IAAI,EAAE,CAAA;IACzC,MAAM,KAAK,GAAG,cAAc,EAAE,SAAS,IAAI,EAAE,CAAA;IAE7C,OAAO;QACL,UAAU;QACV,SAAS,EAAE;YACT,IAAI,EAAE,IAAI,IAAI,CAAC,YAAY,CAAC;YAC5B,KAAK,EAAE,YAAY;SACpB;QACD,KAAK;QACL,KAAK;KACN,CAAA;AACH,CAAC,CAAA;AAED,eAAe,kBAAkB,CAAA"}
@@ -0,0 +1,51 @@
1
+ import { gql } from 'graphql-request';
2
+ import { getAddress, labelhash } from 'viem';
3
+ import { UnsupportedNameTypeError } from '../../errors/general.js';
4
+ import { getNameType } from '../../utils/getNameType.js';
5
+ import { createSubgraphClient } from './client.js';
6
+ const query = gql `
7
+ query getSubgraphRegistrant($id: String!) {
8
+ registration(id: $id) {
9
+ registrant {
10
+ id
11
+ }
12
+ }
13
+ }
14
+ `;
15
+ /**
16
+ * Gets the name registrant from the subgraph.
17
+ * @param client - {@link ClientWithEns}
18
+ * @param parameters - {@link GetSubgraphRegistrantParameters}
19
+ * @returns Registrant address, or null if name was not found. {@link GetSubgraphRegistrantReturnType}
20
+ *
21
+ * @example
22
+ * import { createPublicClient, http } from 'viem'
23
+ * import { mainnet } from 'viem/chains'
24
+ * import { addEnsContracts, getSubgraphRegistrant } from '@ensdomains/ensjs'
25
+ *
26
+ * const client = createPublicClient({
27
+ * chain: addEnsContracts(mainnet),
28
+ * transport: http(),
29
+ * })
30
+ * const result = await getSubgraphRegistrant(client, { name: 'ens.eth' })
31
+ * // 0xb6E040C9ECAaE172a89bD561c5F73e1C48d28cd9
32
+ */
33
+ const getSubgraphRegistrant = async (client, { name }) => {
34
+ const labels = name.split('.');
35
+ const nameType = getNameType(name);
36
+ if (nameType !== 'eth-2ld')
37
+ throw new UnsupportedNameTypeError({
38
+ nameType,
39
+ supportedNameTypes: ['eth-2ld'],
40
+ details: 'Registrant can only be fetched for eth-2ld names',
41
+ });
42
+ const subgraphClient = createSubgraphClient({ client });
43
+ const result = await subgraphClient.request(query, {
44
+ id: labelhash(labels[0]),
45
+ });
46
+ if (result?.registration?.registrant?.id)
47
+ return getAddress(result.registration.registrant.id);
48
+ return null;
49
+ };
50
+ export default getSubgraphRegistrant;
51
+ //# sourceMappingURL=getSubgraphRegistrant.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getSubgraphRegistrant.js","sourceRoot":"","sources":["../../../../src/functions/subgraph/getSubgraphRegistrant.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAA;AACrC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAgB,MAAM,MAAM,CAAA;AAE1D,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAA;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AASlD,MAAM,KAAK,GAAG,GAAG,CAAA;;;;;;;;CAQhB,CAAA;AAUD;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,qBAAqB,GAAG,KAAK,EACjC,MAAqB,EACrB,EAAE,IAAI,EAAmC,EACC,EAAE;IAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC9B,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,CAAA;IAClC,IAAI,QAAQ,KAAK,SAAS;QACxB,MAAM,IAAI,wBAAwB,CAAC;YACjC,QAAQ;YACR,kBAAkB,EAAE,CAAC,SAAS,CAAC;YAC/B,OAAO,EAAE,kDAAkD;SAC5D,CAAC,CAAA;IAEJ,MAAM,cAAc,GAAG,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC,CAAA;IAEvD,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,OAAO,CAAiB,KAAK,EAAE;QACjE,EAAE,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;KACzB,CAAC,CAAA;IAEF,IAAI,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,EAAE;QACtC,OAAO,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;IACtD,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAED,eAAe,qBAAqB,CAAA"}
@@ -0,0 +1,180 @@
1
+ /* eslint-disable @typescript-eslint/naming-convention */
2
+ import { gql } from 'graphql-request';
3
+ import { InvalidOrderByError } from '../../errors/subgraph.js';
4
+ import { EMPTY_ADDRESS, GRACE_PERIOD_SECONDS } from '../../utils/consts.js';
5
+ import { namehash } from '../../utils/normalise.js';
6
+ import { createSubgraphClient } from './client.js';
7
+ import { domainDetailsWithoutParentFragment, registrationDetailsFragment, wrappedDomainDetailsFragment, } from './fragments.js';
8
+ import { makeNameObject } from './utils.js';
9
+ const getOrderByFilter = ({ name, orderBy, orderDirection, previousPage, }) => {
10
+ const lastDomain = previousPage[previousPage.length - 1];
11
+ const operator = orderDirection === 'asc' ? 'gt' : 'lt';
12
+ switch (orderBy) {
13
+ case 'expiryDate': {
14
+ let lastExpiryDate = lastDomain.expiryDate?.value
15
+ ? lastDomain.expiryDate.value / 1000
16
+ : 0;
17
+ if (name === 'eth' && lastExpiryDate) {
18
+ lastExpiryDate += GRACE_PERIOD_SECONDS;
19
+ }
20
+ if (orderDirection === 'asc' && lastExpiryDate === 0) {
21
+ return {
22
+ and: [{ expiryDate: null }, { [`id_${operator}`]: lastDomain.id }],
23
+ };
24
+ }
25
+ if (orderDirection === 'desc' && lastExpiryDate !== 0) {
26
+ return {
27
+ [`expiryDate_${operator}`]: `${lastExpiryDate}`,
28
+ };
29
+ }
30
+ return {
31
+ or: [
32
+ {
33
+ [`expiryDate_${operator}`]: `${lastExpiryDate}`,
34
+ },
35
+ { expiryDate: null },
36
+ ],
37
+ };
38
+ }
39
+ case 'name': {
40
+ return {
41
+ [`name_${operator}`]: lastDomain.name ?? '',
42
+ };
43
+ }
44
+ case 'labelName': {
45
+ return {
46
+ [`labelName_${operator}`]: lastDomain.labelName ?? '',
47
+ };
48
+ }
49
+ case 'createdAt': {
50
+ return {
51
+ [`createdAt_${operator}`]: `${lastDomain.createdAt.value / 1000}`,
52
+ };
53
+ }
54
+ default:
55
+ throw new InvalidOrderByError({
56
+ orderBy: orderBy || '<no orderBy provided>',
57
+ supportedOrderBys: ['expiryDate', 'name', 'labelName', 'createdAt'],
58
+ });
59
+ }
60
+ };
61
+ /**
62
+ * Gets the subnames for a name from the subgraph.
63
+ * @param client - {@link ClientWithEns}
64
+ * @param parameters - {@link GetSubnamesParameters}
65
+ * @returns Subname array. {@link GetSubnamesReturnType}
66
+ *
67
+ * @example
68
+ * import { createPublicClient, http } from 'viem'
69
+ * import { mainnet } from 'viem/chains'
70
+ * import { addEnsContracts, getSubnames } from '@ensdomains/ensjs'
71
+ *
72
+ * const client = createPublicClient({
73
+ * chain: addEnsContracts(mainnet),
74
+ * transport: http(),
75
+ * })
76
+ * const result = await getSubnames(client, { name: 'ens.eth' })
77
+ */
78
+ const getSubnames = async (client, { name, searchString, allowExpired = false, allowDeleted = false, orderBy = 'name', orderDirection = 'asc', pageSize = 100, previousPage, }) => {
79
+ const subgraphClient = createSubgraphClient({ client });
80
+ const whereFilters = [];
81
+ if (previousPage?.length) {
82
+ whereFilters.push(getOrderByFilter({
83
+ name,
84
+ orderBy,
85
+ orderDirection,
86
+ previousPage,
87
+ }));
88
+ }
89
+ if (!allowExpired) {
90
+ // Exclude domains that are expired
91
+ // if expiryDate is null, there is no expiry on the domain (registration or wrapped)
92
+ whereFilters.push({
93
+ or: [
94
+ { expiryDate_gt: `${Math.floor(Date.now() / 1000)}` },
95
+ { expiryDate: null },
96
+ ],
97
+ });
98
+ }
99
+ if (!allowDeleted) {
100
+ // exclude "deleted" domains
101
+ // when owner/resolver/registrant = null
102
+ whereFilters.push({
103
+ or: [
104
+ {
105
+ owner_not: EMPTY_ADDRESS,
106
+ },
107
+ {
108
+ resolver_not: null,
109
+ },
110
+ ...(name.toLowerCase() === 'eth'
111
+ ? [
112
+ {
113
+ registrant_not: EMPTY_ADDRESS,
114
+ },
115
+ ]
116
+ : []),
117
+ ],
118
+ });
119
+ }
120
+ if (searchString) {
121
+ // using labelName_contains instead of name_contains because name_contains
122
+ // includes the parent name
123
+ whereFilters.push({
124
+ labelName_contains: searchString,
125
+ });
126
+ }
127
+ let whereFilter = {};
128
+ if (whereFilters.length > 1) {
129
+ whereFilter = {
130
+ and: whereFilters,
131
+ };
132
+ }
133
+ else if (whereFilters.length === 1) {
134
+ ;
135
+ [whereFilter] = whereFilters;
136
+ }
137
+ const query = gql `
138
+ query getSubnames(
139
+ $id: String!
140
+ $orderBy: Domain_orderBy
141
+ $orderDirection: OrderDirection
142
+ $whereFilter: Domain_filter
143
+ $first: Int
144
+ ) {
145
+ domain(id: $id) {
146
+ subdomains(
147
+ orderBy: $orderBy
148
+ orderDirection: $orderDirection
149
+ first: $first
150
+ where: $whereFilter
151
+ ) {
152
+ ...DomainDetailsWithoutParent
153
+ registration {
154
+ ...RegistrationDetails
155
+ }
156
+ wrappedDomain {
157
+ ...WrappedDomainDetails
158
+ }
159
+ }
160
+ }
161
+ }
162
+ ${domainDetailsWithoutParentFragment}
163
+ ${registrationDetailsFragment}
164
+ ${wrappedDomainDetailsFragment}
165
+ `;
166
+ const queryVars = {
167
+ id: namehash(name),
168
+ orderBy,
169
+ orderDirection,
170
+ first: pageSize,
171
+ whereFilter,
172
+ };
173
+ const result = await subgraphClient.request(query, queryVars);
174
+ if (!result.domain)
175
+ return [];
176
+ const names = result.domain.subdomains.map((domain) => makeNameObject({ ...domain, parent: { name } }));
177
+ return names;
178
+ };
179
+ export default getSubnames;
180
+ //# sourceMappingURL=getSubnames.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getSubnames.js","sourceRoot":"","sources":["../../../../src/functions/subgraph/getSubnames.ts"],"names":[],"mappings":"AAAA,yDAAyD;AACzD,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAA;AAErC,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAC9D,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AAC3E,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAElD,OAAO,EACL,kCAAkC,EAClC,2BAA2B,EAC3B,4BAA4B,GAE7B,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,cAAc,EAAa,MAAM,YAAY,CAAA;AA+BtD,MAAM,gBAAgB,GAAG,CAAC,EACxB,IAAI,EACJ,OAAO,EACP,cAAc,EACd,YAAY,GAMb,EAAgB,EAAE;IACjB,MAAM,UAAU,GAAG,YAAY,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IACxD,MAAM,QAAQ,GAAG,cAAc,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA;IAEvD,QAAQ,OAAO,EAAE;QACf,KAAK,YAAY,CAAC,CAAC;YACjB,IAAI,cAAc,GAAG,UAAU,CAAC,UAAU,EAAE,KAAK;gBAC/C,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,KAAK,GAAG,IAAI;gBACpC,CAAC,CAAC,CAAC,CAAA;YACL,IAAI,IAAI,KAAK,KAAK,IAAI,cAAc,EAAE;gBACpC,cAAc,IAAI,oBAAoB,CAAA;aACvC;YAED,IAAI,cAAc,KAAK,KAAK,IAAI,cAAc,KAAK,CAAC,EAAE;gBACpD,OAAO;oBACL,GAAG,EAAE,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,MAAM,QAAQ,EAAE,CAAC,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC;iBACnE,CAAA;aACF;YACD,IAAI,cAAc,KAAK,MAAM,IAAI,cAAc,KAAK,CAAC,EAAE;gBACrD,OAAO;oBACL,CAAC,cAAc,QAAQ,EAAE,CAAC,EAAE,GAAG,cAAc,EAAE;iBAChD,CAAA;aACF;YACD,OAAO;gBACL,EAAE,EAAE;oBACF;wBACE,CAAC,cAAc,QAAQ,EAAE,CAAC,EAAE,GAAG,cAAc,EAAE;qBAChD;oBACD,EAAE,UAAU,EAAE,IAAI,EAAE;iBACrB;aACF,CAAA;SACF;QACD,KAAK,MAAM,CAAC,CAAC;YACX,OAAO;gBACL,CAAC,QAAQ,QAAQ,EAAE,CAAC,EAAE,UAAU,CAAC,IAAI,IAAI,EAAE;aAC5C,CAAA;SACF;QACD,KAAK,WAAW,CAAC,CAAC;YAChB,OAAO;gBACL,CAAC,aAAa,QAAQ,EAAE,CAAC,EAAE,UAAU,CAAC,SAAS,IAAI,EAAE;aACtD,CAAA;SACF;QACD,KAAK,WAAW,CAAC,CAAC;YAChB,OAAO;gBACL,CAAC,aAAa,QAAQ,EAAE,CAAC,EAAE,GAAG,UAAU,CAAC,SAAS,CAAC,KAAK,GAAG,IAAI,EAAE;aAClE,CAAA;SACF;QACD;YACE,MAAM,IAAI,mBAAmB,CAAC;gBAC5B,OAAO,EAAE,OAAO,IAAI,uBAAuB;gBAC3C,iBAAiB,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,CAAC;aACpE,CAAC,CAAA;KACL;AACH,CAAC,CAAA;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,GAAG,KAAK,EACvB,MAAqB,EACrB,EACE,IAAI,EACJ,YAAY,EACZ,YAAY,GAAG,KAAK,EACpB,YAAY,GAAG,KAAK,EACpB,OAAO,GAAG,MAAM,EAChB,cAAc,GAAG,KAAK,EACtB,QAAQ,GAAG,GAAG,EACd,YAAY,GACU,EACQ,EAAE;IAClC,MAAM,cAAc,GAAG,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC,CAAA;IAEvD,MAAM,YAAY,GAAmB,EAAE,CAAA;IAEvC,IAAI,YAAY,EAAE,MAAM,EAAE;QACxB,YAAY,CAAC,IAAI,CACf,gBAAgB,CAAC;YACf,IAAI;YACJ,OAAO;YACP,cAAc;YACd,YAAY;SACb,CAAC,CACH,CAAA;KACF;IAED,IAAI,CAAC,YAAY,EAAE;QACjB,mCAAmC;QACnC,oFAAoF;QACpF,YAAY,CAAC,IAAI,CAAC;YAChB,EAAE,EAAE;gBACF,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE;gBACrD,EAAE,UAAU,EAAE,IAAI,EAAE;aACrB;SACF,CAAC,CAAA;KACH;IAED,IAAI,CAAC,YAAY,EAAE;QACjB,4BAA4B;QAC5B,wCAAwC;QACxC,YAAY,CAAC,IAAI,CAAC;YAChB,EAAE,EAAE;gBACF;oBACE,SAAS,EAAE,aAAa;iBACzB;gBACD;oBACE,YAAY,EAAE,IAAI;iBACnB;gBACD,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,KAAK;oBAC9B,CAAC,CAAC;wBACE;4BACE,cAAc,EAAE,aAAa;yBAC9B;qBACF;oBACH,CAAC,CAAC,EAAE,CAAC;aACR;SACF,CAAC,CAAA;KACH;IAED,IAAI,YAAY,EAAE;QAChB,0EAA0E;QAC1E,2BAA2B;QAC3B,YAAY,CAAC,IAAI,CAAC;YAChB,kBAAkB,EAAE,YAAY;SACjC,CAAC,CAAA;KACH;IAED,IAAI,WAAW,GAAiB,EAAE,CAAA;IAElC,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;QAC3B,WAAW,GAAG;YACZ,GAAG,EAAE,YAAY;SAClB,CAAA;KACF;SAAM,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE;QACpC,CAAC;QAAA,CAAC,WAAW,CAAC,GAAG,YAAY,CAAA;KAC9B;IAED,MAAM,KAAK,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;MAyBb,kCAAkC;MAClC,2BAA2B;MAC3B,4BAA4B;GAC/B,CAAA;IAED,MAAM,SAAS,GAAG;QAChB,EAAE,EAAE,QAAQ,CAAC,IAAI,CAAC;QAClB,OAAO;QACP,cAAc;QACd,KAAK,EAAE,QAAQ;QACf,WAAW;KACZ,CAAA;IAED,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,OAAO,CACzC,KAAK,EACL,SAAS,CACV,CAAA;IAED,IAAI,CAAC,MAAM,CAAC,MAAM;QAAE,OAAO,EAAE,CAAA;IAE7B,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CACpD,cAAc,CAAC,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,CAChD,CAAA;IAED,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAED,eAAe,WAAW,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/functions/subgraph/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,51 @@
1
+ import { getAddress } from 'viem';
2
+ import { truncateFormat } from '../../utils/format.js';
3
+ import { decodeFuses } from '../../utils/fuses.js';
4
+ import { decryptName } from '../../utils/labels.js';
5
+ export const getChecksumAddressOrNull = (address) => (address ? getAddress(address) : null);
6
+ export const makeNameObject = (domain) => {
7
+ const decrypted = domain.name ? decryptName(domain.name) : null;
8
+ const createdAt = parseInt(domain.createdAt) * 1000;
9
+ const registrationDate = domain.registration?.registrationDate
10
+ ? parseInt(domain.registration?.registrationDate) * 1000
11
+ : null;
12
+ const fuses = domain.wrappedDomain?.fuses
13
+ ? decodeFuses(parseInt(domain.wrappedDomain.fuses))
14
+ : null;
15
+ const expiryDateRef = domain.registration?.expiryDate ||
16
+ (fuses?.parent.PARENT_CANNOT_CONTROL && domain.wrappedDomain?.expiryDate);
17
+ const expiryDate = expiryDateRef ? parseInt(expiryDateRef) * 1000 : null;
18
+ return {
19
+ id: domain.id,
20
+ name: decrypted,
21
+ truncatedName: decrypted ? truncateFormat(decrypted) : null,
22
+ labelName: domain.labelName,
23
+ labelhash: domain.labelhash,
24
+ isMigrated: domain.isMigrated,
25
+ parentName: domain.parent?.name ?? null,
26
+ createdAt: {
27
+ date: new Date(createdAt),
28
+ value: createdAt,
29
+ },
30
+ registrationDate: registrationDate
31
+ ? {
32
+ date: new Date(registrationDate),
33
+ value: registrationDate,
34
+ }
35
+ : null,
36
+ expiryDate: expiryDate
37
+ ? {
38
+ date: new Date(expiryDate),
39
+ value: expiryDate,
40
+ }
41
+ : null,
42
+ fuses: domain.wrappedDomain?.fuses
43
+ ? decodeFuses(parseInt(domain.wrappedDomain.fuses))
44
+ : null,
45
+ owner: getAddress(domain.owner.id),
46
+ registrant: getChecksumAddressOrNull(domain.registrant?.id),
47
+ wrappedOwner: getChecksumAddressOrNull(domain.wrappedOwner?.id),
48
+ resolvedAddress: getChecksumAddressOrNull(domain.resolvedAddress?.id),
49
+ };
50
+ };
51
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/functions/subgraph/utils.ts"],"names":[],"mappings":"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"}