@ensdomains/ensjs 3.0.0-beta.1 → 3.0.0-beta.10

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 (518) hide show
  1. package/dist/cjs/clients/decorators/subgraph.js.map +1 -1
  2. package/dist/cjs/clients/decorators/wallet.js +2 -0
  3. package/dist/cjs/clients/decorators/wallet.js.map +1 -1
  4. package/dist/cjs/clients/public.js.map +1 -1
  5. package/dist/cjs/clients/subgraph.js.map +1 -1
  6. package/dist/cjs/contracts/consts.js +53 -2
  7. package/dist/cjs/contracts/consts.js.map +1 -1
  8. package/dist/cjs/dns.js +3 -3
  9. package/dist/cjs/dns.js.map +1 -1
  10. package/dist/cjs/errors/subgraph.js.map +1 -1
  11. package/dist/cjs/errors/utils.js +27 -18
  12. package/dist/cjs/errors/utils.js.map +1 -1
  13. package/dist/cjs/errors/version.js +1 -1
  14. package/dist/cjs/errors/version.js.map +1 -1
  15. package/dist/cjs/functions/dns/{prepareDnsImport.js → getDnsImportData.js} +3 -3
  16. package/dist/cjs/functions/dns/{prepareDnsImport.js.map → getDnsImportData.js.map} +1 -1
  17. package/dist/cjs/functions/dns/importDnsName.js +7 -7
  18. package/dist/cjs/functions/dns/importDnsName.js.map +1 -1
  19. package/dist/cjs/functions/public/_getAbi.js +2 -2
  20. package/dist/cjs/functions/public/_getAbi.js.map +1 -1
  21. package/dist/cjs/functions/public/_getAddr.js +9 -19
  22. package/dist/cjs/functions/public/_getAddr.js.map +1 -1
  23. package/dist/cjs/functions/public/_getContentHash.js +1 -1
  24. package/dist/cjs/functions/public/batch.js.map +1 -1
  25. package/dist/cjs/functions/public/getAbiRecord.js.map +1 -1
  26. package/dist/cjs/functions/public/getAddressRecord.js.map +1 -1
  27. package/dist/cjs/functions/public/getAvailable.js.map +1 -1
  28. package/dist/cjs/functions/public/getContentHashRecord.js.map +1 -1
  29. package/dist/cjs/functions/public/getExpiry.js.map +1 -1
  30. package/dist/cjs/functions/public/getName.js.map +1 -1
  31. package/dist/cjs/functions/public/getOwner.js.map +1 -1
  32. package/dist/cjs/functions/public/getPrice.js.map +1 -1
  33. package/dist/cjs/functions/public/getRecords.js +51 -37
  34. package/dist/cjs/functions/public/getRecords.js.map +1 -1
  35. package/dist/cjs/functions/public/getResolver.js.map +1 -1
  36. package/dist/cjs/functions/public/getSupportedInterfaces.js +1 -1
  37. package/dist/cjs/functions/public/getSupportedInterfaces.js.map +1 -1
  38. package/dist/cjs/functions/public/getTextRecord.js.map +1 -1
  39. package/dist/cjs/functions/public/getWrapperData.js.map +1 -1
  40. package/dist/cjs/functions/public/getWrapperName.js.map +1 -1
  41. package/dist/cjs/functions/public/multicallWrapper.js.map +1 -1
  42. package/dist/cjs/functions/public/universalWrapper.js.map +1 -1
  43. package/dist/cjs/functions/subgraph/client.js.map +1 -1
  44. package/dist/cjs/functions/subgraph/filters.js +3 -0
  45. package/dist/cjs/functions/subgraph/filters.js.map +1 -0
  46. package/dist/cjs/functions/subgraph/getDecodedName.js.map +1 -1
  47. package/dist/cjs/functions/subgraph/getNameHistory.js +4 -3
  48. package/dist/cjs/functions/subgraph/getNameHistory.js.map +1 -1
  49. package/dist/cjs/functions/subgraph/getNamesForAddress.js +155 -190
  50. package/dist/cjs/functions/subgraph/getNamesForAddress.js.map +1 -1
  51. package/dist/cjs/functions/subgraph/getSubgraphRecords.js +34 -26
  52. package/dist/cjs/functions/subgraph/getSubgraphRecords.js.map +1 -1
  53. package/dist/cjs/functions/subgraph/getSubgraphRegistrant.js.map +1 -1
  54. package/dist/cjs/functions/subgraph/getSubnames.js +95 -108
  55. package/dist/cjs/functions/subgraph/getSubnames.js.map +1 -1
  56. package/dist/cjs/functions/subgraph/types.js +3 -0
  57. package/dist/cjs/functions/subgraph/types.js.map +1 -0
  58. package/dist/cjs/functions/subgraph/utils.js.map +1 -1
  59. package/dist/cjs/functions/wallet/clearRecords.js +26 -0
  60. package/dist/cjs/functions/wallet/clearRecords.js.map +1 -0
  61. package/dist/cjs/functions/wallet/commitName.js.map +1 -1
  62. package/dist/cjs/functions/wallet/createSubname.js +1 -1
  63. package/dist/cjs/functions/wallet/createSubname.js.map +1 -1
  64. package/dist/cjs/functions/wallet/deleteSubname.js.map +1 -1
  65. package/dist/cjs/functions/wallet/registerName.js.map +1 -1
  66. package/dist/cjs/functions/wallet/renewNames.js.map +1 -1
  67. package/dist/cjs/functions/wallet/setAbiRecord.js.map +1 -1
  68. package/dist/cjs/functions/wallet/setAddressRecord.js.map +1 -1
  69. package/dist/cjs/functions/wallet/setChildFuses.js +1 -1
  70. package/dist/cjs/functions/wallet/setChildFuses.js.map +1 -1
  71. package/dist/cjs/functions/wallet/setContentHashRecord.js.map +1 -1
  72. package/dist/cjs/functions/wallet/setFuses.js +1 -1
  73. package/dist/cjs/functions/wallet/setFuses.js.map +1 -1
  74. package/dist/cjs/functions/wallet/setPrimaryName.js.map +1 -1
  75. package/dist/cjs/functions/wallet/setRecords.js.map +1 -1
  76. package/dist/cjs/functions/wallet/setResolver.js.map +1 -1
  77. package/dist/cjs/functions/wallet/setTextRecord.js.map +1 -1
  78. package/dist/cjs/functions/wallet/transferName.js.map +1 -1
  79. package/dist/cjs/functions/wallet/unwrapName.js.map +1 -1
  80. package/dist/cjs/functions/wallet/wrapName.js +3 -1
  81. package/dist/cjs/functions/wallet/wrapName.js.map +1 -1
  82. package/dist/cjs/index.js +1 -2
  83. package/dist/cjs/index.js.map +1 -1
  84. package/dist/cjs/subgraph.js +4 -1
  85. package/dist/cjs/subgraph.js.map +1 -1
  86. package/dist/cjs/utils/contentHash.js +60 -131
  87. package/dist/cjs/utils/contentHash.js.map +1 -1
  88. package/dist/cjs/utils/encoders/encodeAbi.js +33 -3
  89. package/dist/cjs/utils/encoders/encodeAbi.js.map +1 -1
  90. package/dist/cjs/utils/encoders/encodeClearRecords.js +12 -0
  91. package/dist/cjs/utils/encoders/encodeClearRecords.js.map +1 -0
  92. package/dist/cjs/utils/encoders/encodeSetAddr.js +5 -16
  93. package/dist/cjs/utils/encoders/encodeSetAddr.js.map +1 -1
  94. package/dist/cjs/utils/encoders/encodeSetContentHash.js +1 -4
  95. package/dist/cjs/utils/encoders/encodeSetContentHash.js.map +1 -1
  96. package/dist/cjs/utils/format.js +1 -5
  97. package/dist/cjs/utils/format.js.map +1 -1
  98. package/dist/cjs/utils/fuses.js +184 -200
  99. package/dist/cjs/utils/fuses.js.map +1 -1
  100. package/dist/cjs/utils/generateRecordCallArray.js +2 -7
  101. package/dist/cjs/utils/generateRecordCallArray.js.map +1 -1
  102. package/dist/cjs/utils/index.js +31 -7
  103. package/dist/cjs/utils/index.js.map +1 -1
  104. package/dist/cjs/utils/normaliseCoinId.js +35 -0
  105. package/dist/cjs/utils/normaliseCoinId.js.map +1 -0
  106. package/dist/cjs/utils/registerHelpers.js +3 -1
  107. package/dist/cjs/utils/registerHelpers.js.map +1 -1
  108. package/dist/cjs/wallet.js +3 -1
  109. package/dist/cjs/wallet.js.map +1 -1
  110. package/dist/esm/clients/decorators/subgraph.js.map +1 -1
  111. package/dist/esm/clients/decorators/wallet.js +2 -0
  112. package/dist/esm/clients/decorators/wallet.js.map +1 -1
  113. package/dist/esm/clients/public.js.map +1 -1
  114. package/dist/esm/clients/subgraph.js.map +1 -1
  115. package/dist/esm/contracts/consts.js +53 -2
  116. package/dist/esm/contracts/consts.js.map +1 -1
  117. package/dist/esm/dns.js +1 -1
  118. package/dist/esm/dns.js.map +1 -1
  119. package/dist/esm/errors/subgraph.js.map +1 -1
  120. package/dist/esm/errors/utils.js +24 -16
  121. package/dist/esm/errors/utils.js.map +1 -1
  122. package/dist/esm/errors/version.js +1 -1
  123. package/dist/esm/errors/version.js.map +1 -1
  124. package/dist/esm/functions/dns/{prepareDnsImport.js → getDnsImportData.js} +10 -10
  125. package/dist/esm/functions/dns/{prepareDnsImport.js.map → getDnsImportData.js.map} +1 -1
  126. package/dist/esm/functions/dns/getDnsOwner.js +1 -1
  127. package/dist/esm/functions/dns/importDnsName.js +13 -12
  128. package/dist/esm/functions/dns/importDnsName.js.map +1 -1
  129. package/dist/esm/functions/public/_getAbi.js +2 -2
  130. package/dist/esm/functions/public/_getAbi.js.map +1 -1
  131. package/dist/esm/functions/public/_getAddr.js +10 -20
  132. package/dist/esm/functions/public/_getAddr.js.map +1 -1
  133. package/dist/esm/functions/public/_getContentHash.js +2 -2
  134. package/dist/esm/functions/public/batch.js +2 -1
  135. package/dist/esm/functions/public/batch.js.map +1 -1
  136. package/dist/esm/functions/public/getAbiRecord.js +2 -1
  137. package/dist/esm/functions/public/getAbiRecord.js.map +1 -1
  138. package/dist/esm/functions/public/getAddressRecord.js +2 -1
  139. package/dist/esm/functions/public/getAddressRecord.js.map +1 -1
  140. package/dist/esm/functions/public/getAvailable.js +2 -1
  141. package/dist/esm/functions/public/getAvailable.js.map +1 -1
  142. package/dist/esm/functions/public/getContentHashRecord.js +2 -1
  143. package/dist/esm/functions/public/getContentHashRecord.js.map +1 -1
  144. package/dist/esm/functions/public/getExpiry.js +2 -1
  145. package/dist/esm/functions/public/getExpiry.js.map +1 -1
  146. package/dist/esm/functions/public/getName.js +2 -1
  147. package/dist/esm/functions/public/getName.js.map +1 -1
  148. package/dist/esm/functions/public/getOwner.js +3 -2
  149. package/dist/esm/functions/public/getOwner.js.map +1 -1
  150. package/dist/esm/functions/public/getPrice.js +3 -2
  151. package/dist/esm/functions/public/getPrice.js.map +1 -1
  152. package/dist/esm/functions/public/getRecords.js +54 -39
  153. package/dist/esm/functions/public/getRecords.js.map +1 -1
  154. package/dist/esm/functions/public/getResolver.js +2 -1
  155. package/dist/esm/functions/public/getResolver.js.map +1 -1
  156. package/dist/esm/functions/public/getSupportedInterfaces.js +24 -2
  157. package/dist/esm/functions/public/getSupportedInterfaces.js.map +1 -1
  158. package/dist/esm/functions/public/getTextRecord.js +2 -1
  159. package/dist/esm/functions/public/getTextRecord.js.map +1 -1
  160. package/dist/esm/functions/public/getWrapperData.js +2 -1
  161. package/dist/esm/functions/public/getWrapperData.js.map +1 -1
  162. package/dist/esm/functions/public/getWrapperName.js +2 -1
  163. package/dist/esm/functions/public/getWrapperName.js.map +1 -1
  164. package/dist/esm/functions/public/multicallWrapper.js.map +1 -1
  165. package/dist/esm/functions/public/universalWrapper.js.map +1 -1
  166. package/dist/esm/functions/subgraph/client.js.map +1 -1
  167. package/dist/esm/functions/subgraph/filters.js +2 -0
  168. package/dist/esm/functions/subgraph/filters.js.map +1 -0
  169. package/dist/esm/functions/subgraph/getDecodedName.js +2 -1
  170. package/dist/esm/functions/subgraph/getDecodedName.js.map +1 -1
  171. package/dist/esm/functions/subgraph/getNameHistory.js +8 -6
  172. package/dist/esm/functions/subgraph/getNameHistory.js.map +1 -1
  173. package/dist/esm/functions/subgraph/getNamesForAddress.js +163 -192
  174. package/dist/esm/functions/subgraph/getNamesForAddress.js.map +1 -1
  175. package/dist/esm/functions/subgraph/getSubgraphRecords.js +36 -27
  176. package/dist/esm/functions/subgraph/getSubgraphRecords.js.map +1 -1
  177. package/dist/esm/functions/subgraph/getSubgraphRegistrant.js +2 -1
  178. package/dist/esm/functions/subgraph/getSubgraphRegistrant.js.map +1 -1
  179. package/dist/esm/functions/subgraph/getSubnames.js +103 -112
  180. package/dist/esm/functions/subgraph/getSubnames.js.map +1 -1
  181. package/dist/esm/functions/subgraph/types.js +2 -0
  182. package/dist/esm/functions/subgraph/types.js.map +1 -0
  183. package/dist/esm/functions/subgraph/utils.js.map +1 -1
  184. package/dist/esm/functions/wallet/clearRecords.js +44 -0
  185. package/dist/esm/functions/wallet/clearRecords.js.map +1 -0
  186. package/dist/esm/functions/wallet/commitName.js +3 -1
  187. package/dist/esm/functions/wallet/commitName.js.map +1 -1
  188. package/dist/esm/functions/wallet/createSubname.js +3 -2
  189. package/dist/esm/functions/wallet/createSubname.js.map +1 -1
  190. package/dist/esm/functions/wallet/deleteSubname.js +2 -1
  191. package/dist/esm/functions/wallet/deleteSubname.js.map +1 -1
  192. package/dist/esm/functions/wallet/registerName.js +4 -1
  193. package/dist/esm/functions/wallet/registerName.js.map +1 -1
  194. package/dist/esm/functions/wallet/renewNames.js +3 -1
  195. package/dist/esm/functions/wallet/renewNames.js.map +1 -1
  196. package/dist/esm/functions/wallet/setAbiRecord.js +3 -1
  197. package/dist/esm/functions/wallet/setAbiRecord.js.map +1 -1
  198. package/dist/esm/functions/wallet/setAddressRecord.js +2 -1
  199. package/dist/esm/functions/wallet/setAddressRecord.js.map +1 -1
  200. package/dist/esm/functions/wallet/setChildFuses.js +3 -2
  201. package/dist/esm/functions/wallet/setChildFuses.js.map +1 -1
  202. package/dist/esm/functions/wallet/setContentHashRecord.js +2 -1
  203. package/dist/esm/functions/wallet/setContentHashRecord.js.map +1 -1
  204. package/dist/esm/functions/wallet/setFuses.js +4 -3
  205. package/dist/esm/functions/wallet/setFuses.js.map +1 -1
  206. package/dist/esm/functions/wallet/setPrimaryName.js +2 -1
  207. package/dist/esm/functions/wallet/setPrimaryName.js.map +1 -1
  208. package/dist/esm/functions/wallet/setRecords.js +2 -1
  209. package/dist/esm/functions/wallet/setRecords.js.map +1 -1
  210. package/dist/esm/functions/wallet/setResolver.js +2 -1
  211. package/dist/esm/functions/wallet/setResolver.js.map +1 -1
  212. package/dist/esm/functions/wallet/setTextRecord.js +2 -1
  213. package/dist/esm/functions/wallet/setTextRecord.js.map +1 -1
  214. package/dist/esm/functions/wallet/transferName.js +2 -1
  215. package/dist/esm/functions/wallet/transferName.js.map +1 -1
  216. package/dist/esm/functions/wallet/unwrapName.js +2 -1
  217. package/dist/esm/functions/wallet/unwrapName.js.map +1 -1
  218. package/dist/esm/functions/wallet/wrapName.js +6 -3
  219. package/dist/esm/functions/wallet/wrapName.js.map +1 -1
  220. package/dist/esm/index.js +1 -1
  221. package/dist/esm/index.js.map +1 -1
  222. package/dist/esm/subgraph.js +1 -0
  223. package/dist/esm/subgraph.js.map +1 -1
  224. package/dist/esm/utils/contentHash.js +56 -128
  225. package/dist/esm/utils/contentHash.js.map +1 -1
  226. package/dist/esm/utils/encoders/encodeAbi.js +30 -2
  227. package/dist/esm/utils/encoders/encodeAbi.js.map +1 -1
  228. package/dist/esm/utils/encoders/encodeClearRecords.js +8 -0
  229. package/dist/esm/utils/encoders/encodeClearRecords.js.map +1 -0
  230. package/dist/esm/utils/encoders/encodeSetAddr.js +5 -16
  231. package/dist/esm/utils/encoders/encodeSetAddr.js.map +1 -1
  232. package/dist/esm/utils/encoders/encodeSetContentHash.js +2 -5
  233. package/dist/esm/utils/encoders/encodeSetContentHash.js.map +1 -1
  234. package/dist/esm/utils/format.js +0 -2
  235. package/dist/esm/utils/format.js.map +1 -1
  236. package/dist/esm/utils/fuses.js +183 -201
  237. package/dist/esm/utils/fuses.js.map +1 -1
  238. package/dist/esm/utils/generateRecordCallArray.js +3 -7
  239. package/dist/esm/utils/generateRecordCallArray.js.map +1 -1
  240. package/dist/esm/utils/index.js +5 -3
  241. package/dist/esm/utils/index.js.map +1 -1
  242. package/dist/esm/utils/normaliseCoinId.js +30 -0
  243. package/dist/esm/utils/normaliseCoinId.js.map +1 -0
  244. package/dist/esm/utils/registerHelpers.js +4 -2
  245. package/dist/esm/utils/registerHelpers.js.map +1 -1
  246. package/dist/esm/wallet.js +1 -0
  247. package/dist/esm/wallet.js.map +1 -1
  248. package/dist/types/clients/decorators/public.d.ts +1 -519
  249. package/dist/types/clients/decorators/public.d.ts.map +1 -1
  250. package/dist/types/clients/decorators/subgraph.d.ts +2 -520
  251. package/dist/types/clients/decorators/subgraph.d.ts.map +1 -1
  252. package/dist/types/clients/decorators/wallet.d.ts +66 -47
  253. package/dist/types/clients/decorators/wallet.d.ts.map +1 -1
  254. package/dist/types/clients/public.d.ts +24 -265
  255. package/dist/types/clients/public.d.ts.map +1 -1
  256. package/dist/types/clients/subgraph.d.ts +19 -260
  257. package/dist/types/clients/subgraph.d.ts.map +1 -1
  258. package/dist/types/clients/wallet.d.ts +54 -86
  259. package/dist/types/clients/wallet.d.ts.map +1 -1
  260. package/dist/types/contracts/consts.d.ts +52 -3
  261. package/dist/types/contracts/consts.d.ts.map +1 -1
  262. package/dist/types/dns.d.ts +2 -2
  263. package/dist/types/dns.d.ts.map +1 -1
  264. package/dist/types/errors/subgraph.d.ts +4 -4
  265. package/dist/types/errors/subgraph.d.ts.map +1 -1
  266. package/dist/types/errors/utils.d.ts +16 -13
  267. package/dist/types/errors/utils.d.ts.map +1 -1
  268. package/dist/types/errors/version.d.ts +1 -1
  269. package/dist/types/errors/version.d.ts.map +1 -1
  270. package/dist/types/functions/dns/getDnsImportData.d.ts +39 -0
  271. package/dist/types/functions/dns/{prepareDnsImport.d.ts.map → getDnsImportData.d.ts.map} +1 -1
  272. package/dist/types/functions/dns/getDnsOwner.d.ts +1 -1
  273. package/dist/types/functions/dns/importDnsName.d.ts +88 -102
  274. package/dist/types/functions/dns/importDnsName.d.ts.map +1 -1
  275. package/dist/types/functions/public/_getAddr.d.ts.map +1 -1
  276. package/dist/types/functions/public/batch.d.ts +2 -1
  277. package/dist/types/functions/public/batch.d.ts.map +1 -1
  278. package/dist/types/functions/public/getAbiRecord.d.ts +2 -1
  279. package/dist/types/functions/public/getAbiRecord.d.ts.map +1 -1
  280. package/dist/types/functions/public/getAddressRecord.d.ts +2 -1
  281. package/dist/types/functions/public/getAddressRecord.d.ts.map +1 -1
  282. package/dist/types/functions/public/getAvailable.d.ts +2 -1
  283. package/dist/types/functions/public/getAvailable.d.ts.map +1 -1
  284. package/dist/types/functions/public/getContentHashRecord.d.ts +2 -1
  285. package/dist/types/functions/public/getContentHashRecord.d.ts.map +1 -1
  286. package/dist/types/functions/public/getExpiry.d.ts +2 -1
  287. package/dist/types/functions/public/getExpiry.d.ts.map +1 -1
  288. package/dist/types/functions/public/getName.d.ts +2 -1
  289. package/dist/types/functions/public/getName.d.ts.map +1 -1
  290. package/dist/types/functions/public/getOwner.d.ts +19 -9
  291. package/dist/types/functions/public/getOwner.d.ts.map +1 -1
  292. package/dist/types/functions/public/getPrice.d.ts +3 -2
  293. package/dist/types/functions/public/getPrice.d.ts.map +1 -1
  294. package/dist/types/functions/public/getRecords.d.ts +3 -2
  295. package/dist/types/functions/public/getRecords.d.ts.map +1 -1
  296. package/dist/types/functions/public/getResolver.d.ts +2 -1
  297. package/dist/types/functions/public/getResolver.d.ts.map +1 -1
  298. package/dist/types/functions/public/getSupportedInterfaces.d.ts +41 -4
  299. package/dist/types/functions/public/getSupportedInterfaces.d.ts.map +1 -1
  300. package/dist/types/functions/public/getTextRecord.d.ts +2 -1
  301. package/dist/types/functions/public/getTextRecord.d.ts.map +1 -1
  302. package/dist/types/functions/public/getWrapperData.d.ts +4 -3
  303. package/dist/types/functions/public/getWrapperData.d.ts.map +1 -1
  304. package/dist/types/functions/public/getWrapperName.d.ts +2 -1
  305. package/dist/types/functions/public/getWrapperName.d.ts.map +1 -1
  306. package/dist/types/functions/subgraph/client.d.ts +2 -2
  307. package/dist/types/functions/subgraph/client.d.ts.map +1 -1
  308. package/dist/types/functions/subgraph/filters.d.ts +693 -0
  309. package/dist/types/functions/subgraph/filters.d.ts.map +1 -0
  310. package/dist/types/functions/subgraph/getDecodedName.d.ts +2 -1
  311. package/dist/types/functions/subgraph/getDecodedName.d.ts.map +1 -1
  312. package/dist/types/functions/subgraph/getNameHistory.d.ts +2 -1
  313. package/dist/types/functions/subgraph/getNameHistory.d.ts.map +1 -1
  314. package/dist/types/functions/subgraph/getNamesForAddress.d.ts +7 -2
  315. package/dist/types/functions/subgraph/getNamesForAddress.d.ts.map +1 -1
  316. package/dist/types/functions/subgraph/getSubgraphRecords.d.ts +2 -1
  317. package/dist/types/functions/subgraph/getSubgraphRecords.d.ts.map +1 -1
  318. package/dist/types/functions/subgraph/getSubgraphRegistrant.d.ts +2 -1
  319. package/dist/types/functions/subgraph/getSubgraphRegistrant.d.ts.map +1 -1
  320. package/dist/types/functions/subgraph/getSubnames.d.ts +5 -2
  321. package/dist/types/functions/subgraph/getSubnames.d.ts.map +1 -1
  322. package/dist/types/functions/subgraph/types.d.ts +13 -0
  323. package/dist/types/functions/subgraph/types.d.ts.map +1 -0
  324. package/dist/types/functions/subgraph/utils.d.ts +2 -2
  325. package/dist/types/functions/subgraph/utils.d.ts.map +1 -1
  326. package/dist/types/functions/wallet/clearRecords.d.ts +555 -0
  327. package/dist/types/functions/wallet/clearRecords.d.ts.map +1 -0
  328. package/dist/types/functions/wallet/commitName.d.ts +80 -93
  329. package/dist/types/functions/wallet/commitName.d.ts.map +1 -1
  330. package/dist/types/functions/wallet/createSubname.d.ts +82 -96
  331. package/dist/types/functions/wallet/createSubname.d.ts.map +1 -1
  332. package/dist/types/functions/wallet/deleteSubname.d.ts +79 -93
  333. package/dist/types/functions/wallet/deleteSubname.d.ts.map +1 -1
  334. package/dist/types/functions/wallet/registerName.d.ts +80 -89
  335. package/dist/types/functions/wallet/registerName.d.ts.map +1 -1
  336. package/dist/types/functions/wallet/renewNames.d.ts +79 -89
  337. package/dist/types/functions/wallet/renewNames.d.ts.map +1 -1
  338. package/dist/types/functions/wallet/setAbiRecord.d.ts +80 -93
  339. package/dist/types/functions/wallet/setAbiRecord.d.ts.map +1 -1
  340. package/dist/types/functions/wallet/setAddressRecord.d.ts +79 -93
  341. package/dist/types/functions/wallet/setAddressRecord.d.ts.map +1 -1
  342. package/dist/types/functions/wallet/setChildFuses.d.ts +81 -95
  343. package/dist/types/functions/wallet/setChildFuses.d.ts.map +1 -1
  344. package/dist/types/functions/wallet/setContentHashRecord.d.ts +79 -93
  345. package/dist/types/functions/wallet/setContentHashRecord.d.ts.map +1 -1
  346. package/dist/types/functions/wallet/setFuses.d.ts +81 -95
  347. package/dist/types/functions/wallet/setFuses.d.ts.map +1 -1
  348. package/dist/types/functions/wallet/setPrimaryName.d.ts +79 -93
  349. package/dist/types/functions/wallet/setPrimaryName.d.ts.map +1 -1
  350. package/dist/types/functions/wallet/setRecords.d.ts +79 -93
  351. package/dist/types/functions/wallet/setRecords.d.ts.map +1 -1
  352. package/dist/types/functions/wallet/setResolver.d.ts +79 -93
  353. package/dist/types/functions/wallet/setResolver.d.ts.map +1 -1
  354. package/dist/types/functions/wallet/setTextRecord.d.ts +79 -93
  355. package/dist/types/functions/wallet/setTextRecord.d.ts.map +1 -1
  356. package/dist/types/functions/wallet/transferName.d.ts +80 -94
  357. package/dist/types/functions/wallet/transferName.d.ts.map +1 -1
  358. package/dist/types/functions/wallet/unwrapName.d.ts +79 -93
  359. package/dist/types/functions/wallet/unwrapName.d.ts.map +1 -1
  360. package/dist/types/functions/wallet/wrapName.d.ts +81 -95
  361. package/dist/types/functions/wallet/wrapName.d.ts.map +1 -1
  362. package/dist/types/index.d.ts +1 -1
  363. package/dist/types/index.d.ts.map +1 -1
  364. package/dist/types/subgraph.d.ts +1 -0
  365. package/dist/types/subgraph.d.ts.map +1 -1
  366. package/dist/types/types.d.ts +3 -1
  367. package/dist/types/types.d.ts.map +1 -1
  368. package/dist/types/utils/contentHash.d.ts +10 -11
  369. package/dist/types/utils/contentHash.d.ts.map +1 -1
  370. package/dist/types/utils/encoders/encodeAbi.d.ts +8 -5
  371. package/dist/types/utils/encoders/encodeAbi.d.ts.map +1 -1
  372. package/dist/types/utils/encoders/encodeClearRecords.d.ts +3 -0
  373. package/dist/types/utils/encoders/encodeClearRecords.d.ts.map +1 -0
  374. package/dist/types/utils/encoders/encodeSetAddr.d.ts.map +1 -1
  375. package/dist/types/utils/encoders/encodeSetContentHash.d.ts.map +1 -1
  376. package/dist/types/utils/format.d.ts +0 -2
  377. package/dist/types/utils/format.d.ts.map +1 -1
  378. package/dist/types/utils/fuses.d.ts +164 -125
  379. package/dist/types/utils/fuses.d.ts.map +1 -1
  380. package/dist/types/utils/generateRecordCallArray.d.ts.map +1 -1
  381. package/dist/types/utils/index.d.ts +5 -3
  382. package/dist/types/utils/index.d.ts.map +1 -1
  383. package/dist/types/utils/normaliseCoinId.d.ts +10 -0
  384. package/dist/types/utils/normaliseCoinId.d.ts.map +1 -0
  385. package/dist/types/utils/registerHelpers.d.ts +2 -2
  386. package/dist/types/utils/registerHelpers.d.ts.map +1 -1
  387. package/dist/types/wallet.d.ts +18 -17
  388. package/dist/types/wallet.d.ts.map +1 -1
  389. package/package.json +8 -8
  390. package/src/clients/decorators/subgraph.ts +1 -0
  391. package/src/clients/decorators/wallet.ts +41 -3
  392. package/src/clients/public.ts +3 -2
  393. package/src/clients/subgraph.ts +3 -2
  394. package/src/clients/wallet.ts +1 -1
  395. package/src/contracts/consts.ts +58 -13
  396. package/src/dns.ts +7 -5
  397. package/src/errors/subgraph.ts +4 -4
  398. package/src/errors/utils.ts +29 -18
  399. package/src/errors/version.ts +1 -1
  400. package/src/functions/dns/{prepareDnsImport.ts → getDnsImportData.ts} +13 -13
  401. package/src/functions/dns/getDnsOwner.ts +1 -1
  402. package/src/functions/dns/importDnsName.ts +21 -15
  403. package/src/functions/public/_getAbi.ts +2 -2
  404. package/src/functions/public/_getAddr.ts +16 -23
  405. package/src/functions/public/_getContentHash.ts +2 -2
  406. package/src/functions/public/batch.ts +2 -1
  407. package/src/functions/public/getAbiRecord.ts +2 -1
  408. package/src/functions/public/getAddressRecord.ts +2 -1
  409. package/src/functions/public/getAvailable.ts +2 -1
  410. package/src/functions/public/getContentHashRecord.ts +2 -1
  411. package/src/functions/public/getExpiry.ts +2 -1
  412. package/src/functions/public/getName.ts +3 -2
  413. package/src/functions/public/getOwner.ts +54 -33
  414. package/src/functions/public/getPrice.ts +3 -2
  415. package/src/functions/public/getRecords.ts +125 -105
  416. package/src/functions/public/getResolver.ts +3 -2
  417. package/src/functions/public/getSupportedInterfaces.ts +70 -10
  418. package/src/functions/public/getTextRecord.ts +2 -1
  419. package/src/functions/public/getWrapperData.ts +5 -4
  420. package/src/functions/public/getWrapperName.ts +3 -2
  421. package/src/functions/public/multicallWrapper.ts +1 -1
  422. package/src/functions/public/universalWrapper.ts +1 -1
  423. package/src/functions/subgraph/client.ts +2 -2
  424. package/src/functions/subgraph/filters.ts +702 -0
  425. package/src/functions/subgraph/getDecodedName.ts +2 -1
  426. package/src/functions/subgraph/getNameHistory.ts +8 -6
  427. package/src/functions/subgraph/getNamesForAddress.ts +199 -195
  428. package/src/functions/subgraph/getSubgraphRecords.ts +65 -33
  429. package/src/functions/subgraph/getSubgraphRegistrant.ts +2 -1
  430. package/src/functions/subgraph/getSubnames.ts +123 -114
  431. package/src/functions/subgraph/types.ts +13 -0
  432. package/src/functions/subgraph/utils.ts +2 -2
  433. package/src/functions/wallet/clearRecords.ts +97 -0
  434. package/src/functions/wallet/commitName.ts +3 -1
  435. package/src/functions/wallet/createSubname.ts +6 -5
  436. package/src/functions/wallet/deleteSubname.ts +2 -1
  437. package/src/functions/wallet/registerName.ts +4 -1
  438. package/src/functions/wallet/renewNames.ts +3 -1
  439. package/src/functions/wallet/setAbiRecord.ts +3 -1
  440. package/src/functions/wallet/setAddressRecord.ts +2 -1
  441. package/src/functions/wallet/setChildFuses.ts +5 -4
  442. package/src/functions/wallet/setContentHashRecord.ts +2 -1
  443. package/src/functions/wallet/setFuses.ts +8 -4
  444. package/src/functions/wallet/setPrimaryName.ts +2 -1
  445. package/src/functions/wallet/setRecords.ts +2 -1
  446. package/src/functions/wallet/setResolver.ts +2 -1
  447. package/src/functions/wallet/setTextRecord.ts +2 -1
  448. package/src/functions/wallet/transferName.ts +3 -2
  449. package/src/functions/wallet/unwrapName.ts +2 -1
  450. package/src/functions/wallet/wrapName.ts +10 -4
  451. package/src/index.ts +0 -1
  452. package/src/subgraph.ts +5 -0
  453. package/src/types.ts +6 -3
  454. package/src/utils/contentHash.ts +65 -113
  455. package/src/utils/encoders/encodeAbi.ts +37 -8
  456. package/src/utils/encoders/encodeClearRecords.ts +9 -0
  457. package/src/utils/encoders/encodeSetAddr.ts +5 -16
  458. package/src/utils/encoders/encodeSetContentHash.ts +2 -4
  459. package/src/utils/format.ts +0 -6
  460. package/src/utils/fuses.ts +312 -308
  461. package/src/utils/generateRecordCallArray.ts +3 -9
  462. package/src/utils/index.ts +37 -5
  463. package/src/utils/normaliseCoinId.ts +36 -0
  464. package/src/utils/registerHelpers.ts +5 -3
  465. package/src/wallet.ts +41 -0
  466. package/dist/types/functions/dns/prepareDnsImport.d.ts +0 -39
  467. package/src/@types/@ensdomains/content-hash.d.ts +0 -1
  468. package/src/functions/dns/getDnsOwner.test.ts +0 -195
  469. package/src/functions/dns/importDnsName.test.ts +0 -117
  470. package/src/functions/dns/prepareDnsImport.test.ts +0 -115
  471. package/src/functions/public/batch.test.ts +0 -67
  472. package/src/functions/public/ccip.test.ts +0 -78
  473. package/src/functions/public/getAbiRecord.test.ts +0 -174
  474. package/src/functions/public/getAddressRecord.test.ts +0 -83
  475. package/src/functions/public/getAvailable.test.ts +0 -17
  476. package/src/functions/public/getContentHashRecord.test.ts +0 -28
  477. package/src/functions/public/getExpiry.test.ts +0 -48
  478. package/src/functions/public/getName.test.ts +0 -66
  479. package/src/functions/public/getOwner.test.ts +0 -87
  480. package/src/functions/public/getPrice.test.ts +0 -45
  481. package/src/functions/public/getRecords.test.ts +0 -49
  482. package/src/functions/public/getResolver.test.ts +0 -12
  483. package/src/functions/public/getTextRecord.test.ts +0 -20
  484. package/src/functions/public/getWrapperData.test.ts +0 -79
  485. package/src/functions/public/getWrapperName.test.ts +0 -19
  486. package/src/functions/subgraph/client.test.ts +0 -170
  487. package/src/functions/subgraph/getDecodedName.test.ts +0 -31
  488. package/src/functions/subgraph/getNameHistory.test.ts +0 -39
  489. package/src/functions/subgraph/getNamesForAddress.test.ts +0 -244
  490. package/src/functions/subgraph/getSubgraphRecords.test.ts +0 -74
  491. package/src/functions/subgraph/getSubgraphRegistrant.test.ts +0 -34
  492. package/src/functions/subgraph/getSubnames.test.ts +0 -202
  493. package/src/functions/wallet/commitName.test.ts +0 -58
  494. package/src/functions/wallet/createSubname.test.ts +0 -73
  495. package/src/functions/wallet/deleteSubname.test.ts +0 -150
  496. package/src/functions/wallet/registerName.test.ts +0 -81
  497. package/src/functions/wallet/renewNames.test.ts +0 -92
  498. package/src/functions/wallet/setAbiRecord.test.ts +0 -156
  499. package/src/functions/wallet/setAddressRecord.test.ts +0 -121
  500. package/src/functions/wallet/setChildFuses.test.ts +0 -97
  501. package/src/functions/wallet/setContentHashRecord.test.ts +0 -69
  502. package/src/functions/wallet/setFuses.test.ts +0 -287
  503. package/src/functions/wallet/setPrimaryName.test.ts +0 -71
  504. package/src/functions/wallet/setRecords.test.ts +0 -127
  505. package/src/functions/wallet/setResolver.test.ts +0 -114
  506. package/src/functions/wallet/setTextRecord.test.ts +0 -67
  507. package/src/functions/wallet/transferName.test.ts +0 -201
  508. package/src/functions/wallet/unwrapName.test.ts +0 -93
  509. package/src/functions/wallet/wrapName.test.ts +0 -195
  510. package/src/utils/generateRecordCallArray.test.ts +0 -84
  511. package/src/utils/labels.test.ts +0 -163
  512. package/src/utils/makeLabelNodeAndParent.test.ts +0 -11
  513. package/src/utils/makeSafeSecondsDate.test.ts +0 -14
  514. package/src/utils/normalise.test.ts +0 -35
  515. package/src/utils/ownerFromContract.test.ts +0 -52
  516. package/src/utils/registerHelpers.test.ts +0 -159
  517. package/src/utils/validation.test.ts +0 -170
  518. package/src/utils/wrapper.test.ts +0 -46
@@ -1,244 +0,0 @@
1
- /* eslint-disable no-await-in-loop */
2
-
3
- import type { Address } from 'viem'
4
- import { publicClient, walletClient } from '../../tests/addTestContracts.js'
5
- import getNamesForAddress, {
6
- type NameWithRelation,
7
- } from './getNamesForAddress.js'
8
-
9
- let accounts: Address[]
10
-
11
- beforeAll(async () => {
12
- accounts = await walletClient.getAddresses()
13
- })
14
-
15
- it('returns with default values', async () => {
16
- const result = await getNamesForAddress(publicClient, {
17
- address: accounts[1],
18
- })
19
-
20
- expect(result).toBeTruthy()
21
- // arbitrary number, just to make sure we get some results
22
- expect(result.length).toBeGreaterThan(10)
23
- })
24
-
25
- it('has registration date on .eth names', async () => {
26
- const result = await getNamesForAddress(publicClient, {
27
- address: accounts[1],
28
- })
29
- if (!result.length) throw new Error('No names found')
30
- for (const name of result) {
31
- if (name.parentName === 'eth') {
32
- expect(name.registrationDate).toBeTruthy()
33
- }
34
- }
35
- })
36
- describe('filter', () => {
37
- it('filters by owner', async () => {
38
- const result = await getNamesForAddress(publicClient, {
39
- address: accounts[1],
40
- filter: {
41
- owner: true,
42
- registrant: false,
43
- resolvedAddress: false,
44
- wrappedOwner: false,
45
- },
46
- })
47
- if (!result.length) throw new Error('No names found')
48
- for (const name of result) {
49
- expect(name.owner).toBe(accounts[1])
50
- expect(name.relation.owner).toBe(true)
51
- }
52
- })
53
- it('filters by registrant', async () => {
54
- const result = await getNamesForAddress(publicClient, {
55
- address: accounts[1],
56
- filter: {
57
- owner: false,
58
- registrant: true,
59
- resolvedAddress: false,
60
- wrappedOwner: false,
61
- },
62
- })
63
- if (!result.length) throw new Error('No names found')
64
- for (const name of result) {
65
- expect(name.registrant).toBe(accounts[1])
66
- expect(name.relation.registrant).toBe(true)
67
- }
68
- })
69
- it('filters by resolved address', async () => {
70
- const result = await getNamesForAddress(publicClient, {
71
- address: accounts[1],
72
- filter: {
73
- owner: false,
74
- registrant: false,
75
- resolvedAddress: true,
76
- wrappedOwner: false,
77
- },
78
- })
79
- if (!result.length) throw new Error('No names found')
80
- for (const name of result) {
81
- expect(name.resolvedAddress).toBe(accounts[1])
82
- expect(name.relation.resolvedAddress).toBe(true)
83
- }
84
- })
85
- it('filters by wrapped owner', async () => {
86
- const result = await getNamesForAddress(publicClient, {
87
- address: accounts[1],
88
- filter: {
89
- owner: false,
90
- registrant: false,
91
- resolvedAddress: false,
92
- wrappedOwner: true,
93
- },
94
- })
95
- if (!result.length) throw new Error('No names found')
96
- for (const name of result) {
97
- expect(name.wrappedOwner).toBe(accounts[1])
98
- expect(name.relation.wrappedOwner).toBe(true)
99
- }
100
- })
101
- it('allows including expired names', async () => {
102
- const result = await getNamesForAddress(publicClient, {
103
- address: accounts[1],
104
- filter: {
105
- owner: true,
106
- registrant: true,
107
- resolvedAddress: true,
108
- wrappedOwner: true,
109
- allowExpired: true,
110
- },
111
- })
112
- if (!result.length) throw new Error('No names found')
113
- const expiredNames = result.filter(
114
- (x) => x.expiryDate?.date && x.expiryDate.date < new Date(),
115
- )
116
- expect(expiredNames.length).toBeGreaterThan(0)
117
- })
118
- it('allows including reverse record', async () => {
119
- const result = await getNamesForAddress(publicClient, {
120
- address: accounts[2],
121
- filter: {
122
- owner: true,
123
- registrant: true,
124
- resolvedAddress: true,
125
- wrappedOwner: true,
126
- allowReverseRecord: true,
127
- },
128
- })
129
- if (!result.length) throw new Error('No names found')
130
- const reverseRecordNames = result.filter(
131
- (x) => x.parentName === 'addr.reverse',
132
- )
133
- expect(reverseRecordNames.length).toBeGreaterThan(0)
134
- })
135
- })
136
-
137
- describe.each([
138
- {
139
- orderBy: 'name',
140
- orderDirection: 'asc',
141
- compareFn: (a: NameWithRelation, b: NameWithRelation) =>
142
- (a.name || '').localeCompare(b.name || ''),
143
- },
144
- {
145
- orderBy: 'name',
146
- orderDirection: 'desc',
147
- compareFn: (a: NameWithRelation, b: NameWithRelation) =>
148
- (b.name || '').localeCompare(a.name || ''),
149
- },
150
- {
151
- orderBy: 'labelName',
152
- orderDirection: 'asc',
153
- compareFn: (a: NameWithRelation, b: NameWithRelation) => {
154
- const aLabelName = a.labelName || ''
155
- const bLabelName = b.labelName || ''
156
- return aLabelName.localeCompare(bLabelName)
157
- },
158
- },
159
- {
160
- orderBy: 'labelName',
161
- orderDirection: 'desc',
162
- compareFn: (a: NameWithRelation, b: NameWithRelation) => {
163
- const aLabelName = a.labelName || ''
164
- const bLabelName = b.labelName || ''
165
- return bLabelName.localeCompare(aLabelName)
166
- },
167
- },
168
- {
169
- orderBy: 'expiryDate',
170
- orderDirection: 'asc',
171
- compareFn: (a: NameWithRelation, b: NameWithRelation) => {
172
- const aExpiryDate = a.expiryDate?.value || Infinity
173
- const bExpiryDate = b.expiryDate?.value || Infinity
174
- return aExpiryDate - bExpiryDate
175
- },
176
- },
177
- {
178
- orderBy: 'expiryDate',
179
- orderDirection: 'desc',
180
- compareFn: (a: NameWithRelation, b: NameWithRelation) => {
181
- const aExpiryDate = a.expiryDate?.value || Infinity
182
- const bExpiryDate = b.expiryDate?.value || Infinity
183
- return bExpiryDate - aExpiryDate
184
- },
185
- },
186
- {
187
- orderBy: 'createdAt',
188
- orderDirection: 'asc',
189
- compareFn: (a: NameWithRelation, b: NameWithRelation) => {
190
- const aCreatedAt = a.createdAt.value
191
- const bCreatedAt = b.createdAt.value
192
- return aCreatedAt - bCreatedAt
193
- },
194
- },
195
- {
196
- orderBy: 'createdAt',
197
- orderDirection: 'desc',
198
- compareFn: (a: NameWithRelation, b: NameWithRelation) => {
199
- const aCreatedAt = a.createdAt.value
200
- const bCreatedAt = b.createdAt.value
201
- return bCreatedAt - aCreatedAt
202
- },
203
- },
204
- ])(
205
- 'filters by $orderBy $orderDirection',
206
- ({ orderBy, orderDirection, compareFn }) => {
207
- it('is consistent between full result and paginated results', async () => {
208
- const fullResult = await getNamesForAddress(publicClient, {
209
- address: accounts[1],
210
- orderBy: orderBy as any,
211
- orderDirection: orderDirection as any,
212
- pageSize: 1000,
213
- })
214
- if (!fullResult.length) throw new Error('No names found')
215
- const paginatedResults = []
216
- let lastResult: NameWithRelation[] = []
217
- do {
218
- const result = await getNamesForAddress(publicClient, {
219
- address: accounts[1],
220
- orderBy: orderBy as any,
221
- orderDirection: orderDirection as any,
222
- previousPage: lastResult,
223
- pageSize: 5,
224
- })
225
- paginatedResults.push(...result)
226
- lastResult = result
227
- } while (lastResult.length)
228
-
229
- expect(paginatedResults.length).toBe(fullResult.length)
230
- expect(paginatedResults).toStrictEqual(fullResult)
231
- })
232
- it('is sorted correctly', async () => {
233
- const fullResult = await getNamesForAddress(publicClient, {
234
- address: accounts[1],
235
- orderBy: orderBy as any,
236
- orderDirection: orderDirection as any,
237
- pageSize: 1000,
238
- })
239
- if (!fullResult.length) throw new Error('No names found')
240
- const sortedResult = [...fullResult].sort(compareFn)
241
- expect(fullResult).toEqual(sortedResult)
242
- })
243
- },
244
- )
@@ -1,74 +0,0 @@
1
- import {
2
- deploymentAddresses,
3
- publicClient,
4
- } from '../../tests/addTestContracts.js'
5
- import getSubgraphRecords from './getSubgraphRecords.js'
6
-
7
- it('gets basic records', async () => {
8
- const result = await getSubgraphRecords(publicClient, {
9
- name: 'with-profile.eth',
10
- })
11
- expect(result).toBeTruthy()
12
- const { createdAt, ...snapshot } = result!
13
- expect(createdAt.date).toBeInstanceOf(Date)
14
- expect(createdAt.value).toBe(createdAt.date.getTime())
15
- expect(snapshot).toMatchInlineSnapshot(`
16
- {
17
- "coins": [
18
- "60",
19
- "61",
20
- "0",
21
- "2",
22
- ],
23
- "isMigrated": true,
24
- "texts": [
25
- "description",
26
- "url",
27
- "blankrecord",
28
- "email",
29
- ],
30
- }
31
- `)
32
- })
33
- it('gets records for custom resolver address', async () => {
34
- const result = await getSubgraphRecords(publicClient, {
35
- name: 'with-legacy-resolver.eth',
36
- resolverAddress: deploymentAddresses.LegacyPublicResolver,
37
- })
38
- expect(result).toBeTruthy()
39
- const { createdAt, ...snapshot } = result!
40
- expect(createdAt.date).toBeInstanceOf(Date)
41
- expect(createdAt.value).toBe(createdAt.date.getTime())
42
- expect(snapshot).toMatchInlineSnapshot(`
43
- {
44
- "coins": [
45
- "60",
46
- ],
47
- "isMigrated": true,
48
- "texts": [],
49
- }
50
- `)
51
- })
52
- it('returns null for nonexistent name', async () => {
53
- const result = await getSubgraphRecords(publicClient, {
54
- name: 'nonexistent.eth',
55
- })
56
- expect(result).toBeNull()
57
- })
58
- it('returns empty texts/coins for nonexistent resolver', async () => {
59
- const result = await getSubgraphRecords(publicClient, {
60
- name: 'with-profile.eth',
61
- resolverAddress: '0xb794F5eA0ba39494cE839613fffBA74279579268',
62
- })
63
- expect(result).toBeTruthy()
64
- const { createdAt, ...snapshot } = result!
65
- expect(createdAt.date).toBeInstanceOf(Date)
66
- expect(createdAt.value).toBe(createdAt.date.getTime())
67
- expect(snapshot).toMatchInlineSnapshot(`
68
- {
69
- "coins": [],
70
- "isMigrated": true,
71
- "texts": [],
72
- }
73
- `)
74
- })
@@ -1,34 +0,0 @@
1
- import { getVersion } from '../../errors/error-utils.js'
2
- import {
3
- deploymentAddresses,
4
- publicClient,
5
- } from '../../tests/addTestContracts.js'
6
- import getSubgraphRegistrant from './getSubgraphRegistrant.js'
7
-
8
- it('gets the registrant for a 2ld .eth name', async () => {
9
- const result = await getSubgraphRegistrant(publicClient, {
10
- name: 'wrapped.eth',
11
- })
12
- expect(result).toBe(deploymentAddresses.NameWrapper)
13
- })
14
- it('returns null for nonexistent name', async () => {
15
- const result = await getSubgraphRegistrant(publicClient, {
16
- name: 'unregistered.eth',
17
- })
18
- expect(result).toBeNull()
19
- })
20
- it('throws an error for other name', async () => {
21
- await expect(
22
- getSubgraphRegistrant(publicClient, {
23
- name: 'test123.com',
24
- }),
25
- ).rejects.toThrowErrorMatchingInlineSnapshot(`
26
- "Unsupported name type: other-2ld
27
-
28
- - Supported name types: eth-2ld
29
-
30
- Details: Registrant can only be fetched for eth-2ld names
31
-
32
- Version: ${getVersion()}"
33
- `)
34
- })
@@ -1,202 +0,0 @@
1
- /* eslint-disable no-await-in-loop */
2
-
3
- import { publicClient } from '../../tests/addTestContracts.js'
4
- import getSubnames from './getSubnames.js'
5
- import type { Name } from './utils.js'
6
-
7
- it('returns with default values', async () => {
8
- const result = await getSubnames(publicClient, {
9
- name: 'with-subnames.eth',
10
- })
11
-
12
- expect(result).toBeTruthy()
13
- // arbitrary number, just to make sure we get some results
14
- expect(result.length).toBeGreaterThan(2)
15
- })
16
-
17
- it('has registration date on .eth names', async () => {
18
- const result = await getSubnames(publicClient, {
19
- name: 'eth',
20
- })
21
-
22
- if (!result.length) throw new Error('No names found')
23
- for (const name of result) {
24
- expect(name.registrationDate).toBeTruthy()
25
- }
26
- })
27
-
28
- it('filters by search string', async () => {
29
- const result = await getSubnames(publicClient, {
30
- name: 'eth',
31
- searchString: 'test',
32
- })
33
-
34
- if (!result.length) throw new Error('No names found')
35
- for (const name of result) {
36
- expect(name.labelName).toContain('test')
37
- }
38
- })
39
- it('does not include expired names by default - .eth 2ld', async () => {
40
- const result = await getSubnames(publicClient, {
41
- name: 'eth',
42
- pageSize: 1000,
43
- })
44
- if (!result.length) throw new Error('No names found')
45
- for (const name of result) {
46
- expect(name.expiryDate!.value).toBeGreaterThan(Date.now())
47
- }
48
- })
49
- it('allows including expired names - .eth 2ld', async () => {
50
- const result = await getSubnames(publicClient, {
51
- name: 'eth',
52
- allowExpired: true,
53
- pageSize: 1000,
54
- })
55
- if (!result.length) throw new Error('No names found')
56
- const expiredNames = result.filter(
57
- (name) => name.expiryDate!.value < Date.now(),
58
- )
59
- expect(expiredNames.length).toBeGreaterThan(0)
60
- })
61
- it('includes names with no expiry', async () => {
62
- const result = await getSubnames(publicClient, {
63
- name: 'wrapped-with-expiring-subnames.eth',
64
- pageSize: 1000,
65
- })
66
- if (!result.length) throw new Error('No names found')
67
- const noExpiryNames = result.filter((name) => !name.expiryDate)
68
- expect(noExpiryNames.length).toBeGreaterThan(0)
69
- })
70
- it('does not include expired names by default - other', async () => {
71
- const result = await getSubnames(publicClient, {
72
- name: 'wrapped-with-expiring-subnames.eth',
73
- pageSize: 1000,
74
- })
75
- if (!result.length) throw new Error('No names found')
76
- const namesWithExpiry = result.filter((name) => name.expiryDate)
77
- expect(namesWithExpiry.length).toBeGreaterThan(0)
78
- for (const name of namesWithExpiry) {
79
- expect(name.expiryDate!.value).toBeGreaterThan(Date.now())
80
- }
81
- })
82
- it('allows including expired names - other', async () => {
83
- const result = await getSubnames(publicClient, {
84
- name: 'wrapped-with-expiring-subnames.eth',
85
- allowExpired: true,
86
- pageSize: 1000,
87
- })
88
- if (!result.length) throw new Error('No names found')
89
- const expiredNames = result.filter(
90
- (name) => name.expiryDate && name.expiryDate.value < Date.now(),
91
- )
92
- expect(expiredNames.length).toBeGreaterThan(0)
93
- })
94
-
95
- describe.each([
96
- {
97
- orderBy: 'name',
98
- orderDirection: 'asc',
99
- compareFn: (a: Name, b: Name) => (a.name || '').localeCompare(b.name || ''),
100
- },
101
- {
102
- orderBy: 'name',
103
- orderDirection: 'desc',
104
- compareFn: (a: Name, b: Name) => (b.name || '').localeCompare(a.name || ''),
105
- },
106
- {
107
- orderBy: 'labelName',
108
- orderDirection: 'asc',
109
- compareFn: (a: Name, b: Name) => {
110
- const aLabelName = a.labelName || ''
111
- const bLabelName = b.labelName || ''
112
- return aLabelName.localeCompare(bLabelName)
113
- },
114
- },
115
- {
116
- orderBy: 'labelName',
117
- orderDirection: 'desc',
118
- compareFn: (a: Name, b: Name) => {
119
- const aLabelName = a.labelName || ''
120
- const bLabelName = b.labelName || ''
121
- return bLabelName.localeCompare(aLabelName)
122
- },
123
- },
124
- {
125
- orderBy: 'expiryDate',
126
- orderDirection: 'asc',
127
- compareFn: (a: Name, b: Name) => {
128
- const aExpiryDate = a.expiryDate?.value || Infinity
129
- const bExpiryDate = b.expiryDate?.value || Infinity
130
- return aExpiryDate - bExpiryDate
131
- },
132
- },
133
- {
134
- orderBy: 'expiryDate',
135
- orderDirection: 'desc',
136
- compareFn: (a: Name, b: Name) => {
137
- const aExpiryDate = a.expiryDate?.value || Infinity
138
- const bExpiryDate = b.expiryDate?.value || Infinity
139
- return bExpiryDate - aExpiryDate
140
- },
141
- },
142
- {
143
- orderBy: 'createdAt',
144
- orderDirection: 'asc',
145
- compareFn: (a: Name, b: Name) => {
146
- const aCreatedAt = a.createdAt.value
147
- const bCreatedAt = b.createdAt.value
148
- return aCreatedAt - bCreatedAt
149
- },
150
- },
151
- {
152
- orderBy: 'createdAt',
153
- orderDirection: 'desc',
154
- compareFn: (a: Name, b: Name) => {
155
- const aCreatedAt = a.createdAt.value
156
- const bCreatedAt = b.createdAt.value
157
- return bCreatedAt - aCreatedAt
158
- },
159
- },
160
- ])(
161
- 'filters by $orderBy $orderDirection',
162
- ({ orderBy, orderDirection, compareFn }) => {
163
- it('is consistent between full result and paginated results', async () => {
164
- const fullResult = await getSubnames(publicClient, {
165
- name: 'eth',
166
- orderBy: orderBy as any,
167
- orderDirection: orderDirection as any,
168
- pageSize: 1000,
169
- })
170
- if (!fullResult.length) throw new Error('No names found')
171
- const paginatedResults = []
172
- let lastResult: Name[] = []
173
- do {
174
- const result = await getSubnames(publicClient, {
175
- name: 'eth',
176
- orderBy: orderBy as any,
177
- orderDirection: orderDirection as any,
178
- previousPage: lastResult,
179
- pageSize: 5,
180
- })
181
- paginatedResults.push(...result)
182
- lastResult = result
183
- } while (lastResult.length)
184
-
185
- expect(paginatedResults.length).toBe(fullResult.length)
186
- expect(JSON.stringify(paginatedResults)).toEqual(
187
- JSON.stringify(fullResult),
188
- )
189
- })
190
- it('is sorted correctly', async () => {
191
- const fullResult = await getSubnames(publicClient, {
192
- name: 'eth',
193
- orderBy: orderBy as any,
194
- orderDirection: orderDirection as any,
195
- pageSize: 1000,
196
- })
197
- if (!fullResult.length) throw new Error('No names found')
198
- const sortedResult = [...fullResult].sort(compareFn)
199
- expect(fullResult).toStrictEqual(sortedResult)
200
- })
201
- },
202
- )
@@ -1,58 +0,0 @@
1
- import type { Address, Hex } from 'viem'
2
- import { ethRegistrarControllerCommitmentsSnippet } from '../../contracts/ethRegistrarController.js'
3
- import { getChainContractAddress } from '../../contracts/getChainContractAddress.js'
4
- import {
5
- publicClient,
6
- testClient,
7
- waitForTransaction,
8
- walletClient,
9
- } from '../../tests/addTestContracts.js'
10
- import {
11
- makeCommitment,
12
- type RegistrationParameters,
13
- } from '../../utils/registerHelpers.js'
14
- import commitName from './commitName.js'
15
-
16
- let snapshot: Hex
17
- let accounts: Address[]
18
-
19
- beforeAll(async () => {
20
- accounts = await walletClient.getAddresses()
21
- })
22
-
23
- beforeEach(async () => {
24
- snapshot = await testClient.snapshot()
25
- })
26
-
27
- afterEach(async () => {
28
- await testClient.revert({ id: snapshot })
29
- })
30
-
31
- const secret = `0x${'a'.repeat(64)}` as Hex
32
-
33
- it('should return a commit transaction and succeed', async () => {
34
- const params: RegistrationParameters = {
35
- name: 'wrapped-with-subnames.eth',
36
- duration: 31536000,
37
- owner: accounts[1],
38
- secret,
39
- }
40
- const tx = await commitName(walletClient, {
41
- ...params,
42
- account: accounts[1],
43
- })
44
- expect(tx).toBeTruthy()
45
- const receipt = await waitForTransaction(tx)
46
- expect(receipt.status).toBe('success')
47
-
48
- const commitment = await publicClient.readContract({
49
- abi: ethRegistrarControllerCommitmentsSnippet,
50
- functionName: 'commitments',
51
- address: getChainContractAddress({
52
- client: publicClient,
53
- contract: 'ensEthRegistrarController',
54
- }),
55
- args: [makeCommitment(params)],
56
- })
57
- expect(commitment).toBeTruthy()
58
- })
@@ -1,73 +0,0 @@
1
- import type { Address, Hex } from 'viem'
2
- import { getChainContractAddress } from '../../contracts/getChainContractAddress.js'
3
- import { nameWrapperOwnerOfSnippet } from '../../contracts/nameWrapper.js'
4
- import { registryOwnerSnippet } from '../../contracts/registry.js'
5
- import {
6
- publicClient,
7
- testClient,
8
- waitForTransaction,
9
- walletClient,
10
- } from '../../tests/addTestContracts.js'
11
- import { namehash } from '../../utils/normalise.js'
12
- import createSubname from './createSubname.js'
13
-
14
- let snapshot: Hex
15
- let accounts: Address[]
16
-
17
- beforeAll(async () => {
18
- accounts = await walletClient.getAddresses()
19
- })
20
-
21
- beforeEach(async () => {
22
- snapshot = await testClient.snapshot()
23
- })
24
-
25
- afterEach(async () => {
26
- await testClient.revert({ id: snapshot })
27
- })
28
-
29
- it('should allow creating a subname on the registry', async () => {
30
- const tx = await createSubname(walletClient, {
31
- name: 'test.test123.eth',
32
- contract: 'registry',
33
- owner: accounts[0],
34
- account: accounts[1],
35
- })
36
- expect(tx).toBeTruthy()
37
- const receipt = await waitForTransaction(tx)
38
- expect(receipt.status).toBe('success')
39
-
40
- const owner = await publicClient.readContract({
41
- abi: registryOwnerSnippet,
42
- functionName: 'owner',
43
- address: getChainContractAddress({
44
- client: publicClient,
45
- contract: 'ensRegistry',
46
- }),
47
- args: [namehash('test.test123.eth')],
48
- })
49
- expect(owner).toBe(accounts[0])
50
- })
51
-
52
- it('should allow creating a subname on the namewrapper', async () => {
53
- const tx = await createSubname(walletClient, {
54
- name: 'test.wrapped.eth',
55
- contract: 'nameWrapper',
56
- owner: accounts[0],
57
- account: accounts[1],
58
- })
59
- expect(tx).toBeTruthy()
60
- const receipt = await waitForTransaction(tx)
61
- expect(receipt.status).toBe('success')
62
-
63
- const owner = await publicClient.readContract({
64
- abi: nameWrapperOwnerOfSnippet,
65
- functionName: 'ownerOf',
66
- address: getChainContractAddress({
67
- client: publicClient,
68
- contract: 'ensNameWrapper',
69
- }),
70
- args: [BigInt(namehash('test.wrapped.eth'))],
71
- })
72
- expect(owner).toBe(accounts[0])
73
- })