@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
@@ -11,7 +11,8 @@ import { createSubgraphClient } from './client.js';
11
11
  * @example
12
12
  * import { createPublicClient, http } from 'viem'
13
13
  * import { mainnet } from 'viem/chains'
14
- * import { addEnsContracts, getDecodedName } from '@ensdomains/ensjs'
14
+ * import { addEnsContracts } from '@ensdomains/ensjs'
15
+ * import { getDecodedName } from '@ensdomains/ensjs/subgraph'
15
16
  *
16
17
  * const client = createPublicClient({
17
18
  * chain: addEnsContracts(mainnet),
@@ -1 +1 @@
1
- {"version":3,"file":"getDecodedName.js","sourceRoot":"","sources":["../../../../src/functions/subgraph/getDecodedName.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getDecodedName.js","sourceRoot":"","sources":["../../../../src/functions/subgraph/getDecodedName.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
- import { formatsByCoinType } from '@ensdomains/address-encoder';
1
+ import { getCoderByCoinType } from '@ensdomains/address-encoder';
2
2
  import { gql } from 'graphql-request';
3
- import { decodeContenthash } from '../../utils/contentHash.js';
3
+ import { hexToBytes } from 'viem';
4
+ import { decodeContentHash } from '../../utils/contentHash.js';
4
5
  import { namehash } from '../../utils/normalise.js';
5
6
  import { createSubgraphClient } from './client.js';
6
7
  /**
@@ -12,7 +13,8 @@ import { createSubgraphClient } from './client.js';
12
13
  * @example
13
14
  * import { createPublicClient, http } from 'viem'
14
15
  * import { mainnet } from 'viem/chains'
15
- * import { addEnsContracts, getNameHistory } from '@ensdomains/ensjs'
16
+ * import { addEnsContracts } from '@ensdomains/ensjs'
17
+ * import { getNameHistory } from '@ensdomains/ensjs/subgraph'
16
18
  *
17
19
  * const client = createPublicClient({
18
20
  * chain: addEnsContracts(mainnet),
@@ -199,7 +201,7 @@ const getNameHistory = async (client, { name }) => {
199
201
  }
200
202
  case 'MulticoinAddrChanged': {
201
203
  const { multiaddr, ...event_ } = event;
202
- const format = formatsByCoinType[parseInt(event.coinType)];
204
+ const format = getCoderByCoinType(parseInt(event.coinType));
203
205
  if (!format) {
204
206
  return {
205
207
  ...event_,
@@ -220,11 +222,11 @@ const getNameHistory = async (client, { name }) => {
220
222
  ...event_,
221
223
  coinName: format.name,
222
224
  decoded: true,
223
- addr: format.encoder(Buffer.from(multiaddr.slice(2), 'hex')),
225
+ addr: format.encode(hexToBytes(multiaddr)),
224
226
  };
225
227
  }
226
228
  case 'ContenthashChanged': {
227
- const { decoded: contentHash, protocolType } = decodeContenthash(event.hash) || { protocolType: null, decoded: null };
229
+ const { decoded: contentHash, protocolType } = decodeContentHash(event.hash) || { protocolType: null, decoded: null };
228
230
  return {
229
231
  ...event,
230
232
  decoded: contentHash !== null,
@@ -1 +1 @@
1
- {"version":3,"file":"getNameHistory.js","sourceRoot":"","sources":["../../../../src/functions/subgraph/getNameHistory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getNameHistory.js","sourceRoot":"","sources":["../../../../src/functions/subgraph/getNameHistory.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,68 @@
1
+ /* eslint-disable @typescript-eslint/naming-convention */
1
2
  import { gql } from 'graphql-request';
2
3
  import { FilterKeyRequiredError, InvalidFilterKeyError, InvalidOrderByError, } from '../../errors/subgraph.js';
3
- import { GRACE_PERIOD_SECONDS } from '../../utils/consts.js';
4
+ import { EMPTY_ADDRESS, GRACE_PERIOD_SECONDS } from '../../utils/consts.js';
4
5
  import { createSubgraphClient } from './client.js';
5
6
  import { domainDetailsFragment, registrationDetailsFragment, wrappedDomainDetailsFragment, } from './fragments.js';
6
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
+ };
7
66
  /**
8
67
  * Gets the names for an address from the subgraph.
9
68
  * @param client - {@link ClientWithEns}
@@ -13,7 +72,8 @@ import { makeNameObject } from './utils.js';
13
72
  * @example
14
73
  * import { createPublicClient, http } from 'viem'
15
74
  * import { mainnet } from 'viem/chains'
16
- * import { addEnsContracts, getNamesForAddress } from '@ensdomains/ensjs'
75
+ * import { addEnsContracts } from '@ensdomains/ensjs'
76
+ * import { getNamesForAddress } from '@ensdomains/ensjs/subgraph'
17
77
  *
18
78
  * const client = createPublicClient({
19
79
  * chain: addEnsContracts(mainnet),
@@ -21,221 +81,132 @@ import { makeNameObject } from './utils.js';
21
81
  * })
22
82
  * const result = await getNamesForAddress(client, { address: '0xFe89cc7aBB2C4183683ab71653C4cdc9B02D44b7' })
23
83
  */
24
- const getNamesForAddress = async (client, { address, filter = {
25
- owner: true,
26
- registrant: true,
27
- resolvedAddress: true,
28
- wrappedOwner: true,
29
- allowExpired: false,
30
- allowReverseRecord: false,
31
- }, orderBy = 'name', orderDirection = 'asc', pageSize = 100, previousPage, }) => {
84
+ const getNamesForAddress = async (client, { address, filter: _filter, orderBy = 'name', orderDirection = 'asc', pageSize = 100, previousPage, }) => {
85
+ const filter = {
86
+ owner: true,
87
+ registrant: true,
88
+ resolvedAddress: true,
89
+ wrappedOwner: true,
90
+ allowExpired: false,
91
+ allowDeleted: false,
92
+ allowReverseRecord: false,
93
+ ..._filter,
94
+ };
32
95
  const subgraphClient = createSubgraphClient({ client });
33
- let ownerWhereFilter = `
34
- or: [
35
- `;
36
- let hasFilterApplied = false;
37
- const { allowExpired, allowReverseRecord, ...filters } = filter;
38
- for (const [key, value] of Object.entries(filters)) {
96
+ const { allowExpired, allowDeleted, allowReverseRecord, searchString, ...filters } = filter;
97
+ const ownerWhereFilters = Object.entries(filters).reduce((prev, [key, value]) => {
39
98
  if (value) {
40
- hasFilterApplied = true;
41
- switch (key) {
42
- case 'owner': {
43
- ownerWhereFilter += `
44
- { owner: $address }
45
- `;
46
- break;
47
- }
48
- case 'registrant': {
49
- ownerWhereFilter += `
50
- { registrant: $address }
51
- `;
52
- break;
53
- }
54
- case 'wrappedOwner': {
55
- ownerWhereFilter += `
56
- { wrappedOwner: $address }
57
- `;
58
- break;
59
- }
60
- case 'resolvedAddress': {
61
- ownerWhereFilter += `
62
- { resolvedAddress: $address }
63
- `;
64
- break;
65
- }
66
- default:
67
- throw new InvalidFilterKeyError({
68
- filterKey: key,
69
- supportedFilterKeys: [
70
- 'owner',
71
- 'registrant',
72
- 'wrappedOwner',
73
- 'resolvedAddress',
74
- ],
75
- });
76
- }
99
+ if (!supportedOwnerFilters.includes(key))
100
+ throw new InvalidFilterKeyError({
101
+ filterKey: key,
102
+ supportedFilterKeys: supportedOwnerFilters,
103
+ });
104
+ return [
105
+ ...prev,
106
+ {
107
+ [key]: address.toLowerCase(),
108
+ },
109
+ ];
77
110
  }
78
- }
111
+ return prev;
112
+ }, []);
113
+ const hasFilterApplied = ownerWhereFilters.length > 0;
79
114
  if (!hasFilterApplied)
80
115
  throw new FilterKeyRequiredError({
81
- supportedFilterKeys: [
82
- 'owner',
83
- 'registrant',
84
- 'wrappedOwner',
85
- 'resolvedAddress',
86
- ],
116
+ supportedFilterKeys: supportedOwnerFilters,
87
117
  details: 'At least one ownership filter must be enabled',
88
118
  });
89
- ownerWhereFilter += `
90
- ]
91
- `;
119
+ const ownerWhereFilter = ownerWhereFilters.length > 1
120
+ ? { or: ownerWhereFilters }
121
+ : ownerWhereFilters[0];
92
122
  const whereFilters = [ownerWhereFilter];
93
- let orderByFilter = '';
94
- let orderByStringVar = '';
95
- if (previousPage && previousPage.length > 0) {
96
- const lastDomain = previousPage[previousPage.length - 1];
97
- const operator = orderDirection === 'asc' ? 'gt' : 'lt';
98
- switch (orderBy) {
99
- case 'expiryDate': {
100
- let lastExpiryDate = lastDomain.expiryDate?.value
101
- ? lastDomain.expiryDate.value / 1000
102
- : 0;
103
- if (lastDomain.parentName === 'eth') {
104
- lastExpiryDate += GRACE_PERIOD_SECONDS;
105
- }
106
- if (orderDirection === 'asc' && lastExpiryDate === 0) {
107
- orderByFilter = `
108
- {
109
- and: [
110
- { expiryDate: null }
111
- { id_${operator}: "${lastDomain.id}" }
112
- ]
113
- }
114
- `;
115
- }
116
- else if (orderDirection === 'desc' && lastExpiryDate !== 0) {
117
- orderByFilter = `
118
- {
119
- expiryDate_${operator}: ${lastExpiryDate}
120
- }
121
- `;
122
- }
123
- else {
124
- orderByFilter = `
125
- {
126
- or: [
127
- {
128
- expiryDate_${operator}: ${lastExpiryDate}
129
- }
130
- { expiryDate: null }
131
- ]
132
- }
133
- `;
134
- }
135
- break;
136
- }
137
- case 'name': {
138
- orderByFilter = `
139
- {
140
- name_${operator}: $orderByStringVar
141
- }
142
- `;
143
- orderByStringVar = lastDomain.name ?? '';
144
- break;
145
- }
146
- case 'labelName': {
147
- orderByFilter = `
148
- {
149
- labelName_${operator}: $orderByStringVar
150
- }
151
- `;
152
- orderByStringVar = lastDomain.labelName ?? '';
153
- break;
154
- }
155
- case 'createdAt': {
156
- orderByFilter = `
157
- {
158
- createdAt_${operator}: ${lastDomain.createdAt.value / 1000}
159
- }
160
- `;
161
- break;
162
- }
163
- default:
164
- throw new InvalidOrderByError({
165
- orderBy,
166
- supportedOrderBys: ['expiryDate', 'name', 'labelName', 'createdAt'],
167
- });
168
- }
169
- whereFilters.push(orderByFilter);
123
+ if (previousPage?.length) {
124
+ whereFilters.push(getOrderByFilter({
125
+ orderBy,
126
+ orderDirection,
127
+ previousPage,
128
+ }));
170
129
  }
171
130
  if (!allowReverseRecord) {
172
131
  // Exclude domains with parent addr.reverse
173
132
  // namehash of addr.reverse = 0x91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2
174
- whereFilters.push(`
175
- {
176
- parent_not: "0x91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2"
177
- }
178
- `);
133
+ whereFilters.push({
134
+ parent_not: '0x91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2',
135
+ });
179
136
  }
180
137
  if (!allowExpired) {
181
138
  // Exclude domains that are expired
182
139
  // if expiryDate is null, there is no expiry on the domain (registration or wrapped)
183
- whereFilters.push(`
184
- {
185
- or: [
186
- { expiryDate_gt: $expiryDate }
187
- { expiryDate: null }
188
- ]
189
- }
190
- `);
140
+ whereFilters.push({
141
+ or: [
142
+ { expiryDate_gt: `${Math.floor(Date.now() / 1000)}` },
143
+ { expiryDate: null },
144
+ ],
145
+ });
191
146
  }
192
- const whereFilter = whereFilters.length > 1
193
- ? `
194
- and: [
195
- {
196
- ${whereFilters.shift()}
197
- }
198
- ${whereFilters.join('\n')}
199
- ]
200
- `
201
- : whereFilters[0];
147
+ if (!allowDeleted) {
148
+ // exclude "deleted" domains
149
+ // when owner/resolver/registrant = null
150
+ whereFilters.push({
151
+ or: [
152
+ {
153
+ owner_not: EMPTY_ADDRESS,
154
+ },
155
+ {
156
+ resolver_not: null,
157
+ },
158
+ {
159
+ and: [
160
+ {
161
+ registrant_not: EMPTY_ADDRESS,
162
+ },
163
+ {
164
+ registrant_not: null,
165
+ },
166
+ ],
167
+ },
168
+ ],
169
+ });
170
+ }
171
+ if (searchString) {
172
+ // using labelName_contains instead of name_contains because name_contains
173
+ // includes the parent name
174
+ whereFilters.push({
175
+ labelName_contains: searchString,
176
+ });
177
+ }
178
+ const whereFilter = whereFilters.length > 1 ? { and: whereFilters } : whereFilters[0];
202
179
  const query = gql `
203
- query getNamesForAddress(
204
- $address: String!
205
- $orderBy: Domain_orderBy
206
- $orderDirection: OrderDirection
207
- $first: Int
208
- $expiryDate: Int
209
- $orderByStringVar: String
180
+ query getNamesForAddress(
181
+ $orderBy: Domain_orderBy
182
+ $orderDirection: OrderDirection
183
+ $first: Int
184
+ $whereFilter: Domain_filter
185
+ ) {
186
+ domains(
187
+ orderBy: $orderBy
188
+ orderDirection: $orderDirection
189
+ first: $first
190
+ where: $whereFilter
210
191
  ) {
211
- domains(
212
- orderBy: $orderBy
213
- orderDirection: $orderDirection
214
- first: $first
215
- where: {
216
- ${whereFilter}
217
- }
218
- ) {
219
- ...DomainDetails
220
- registration {
221
- ...RegistrationDetails
222
- }
223
- wrappedDomain {
224
- ...WrappedDomainDetails
225
- }
192
+ ...DomainDetails
193
+ registration {
194
+ ...RegistrationDetails
195
+ }
196
+ wrappedDomain {
197
+ ...WrappedDomainDetails
226
198
  }
227
199
  }
228
- ${domainDetailsFragment}
229
- ${registrationDetailsFragment}
230
- ${wrappedDomainDetailsFragment}
231
- `;
200
+ }
201
+ ${domainDetailsFragment}
202
+ ${registrationDetailsFragment}
203
+ ${wrappedDomainDetailsFragment}
204
+ `;
232
205
  const result = await subgraphClient.request(query, {
233
- address: address.toLowerCase(),
234
206
  orderBy,
235
207
  orderDirection,
236
208
  first: pageSize,
237
- expiryDate: Math.floor(Date.now() / 1000),
238
- orderByStringVar,
209
+ whereFilter,
239
210
  });
240
211
  if (!result)
241
212
  return [];
@@ -1 +1 @@
1
- {"version":3,"file":"getNamesForAddress.js","sourceRoot":"","sources":["../../../../src/functions/subgraph/getNamesForAddress.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getNamesForAddress.js","sourceRoot":"","sources":["../../../../src/functions/subgraph/getNamesForAddress.ts"],"names":[],"mappings":"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"}
@@ -27,6 +27,31 @@ const customResolverQuery = gql `
27
27
  }
28
28
  }
29
29
  `;
30
+ const getCustomResolverResult = async (subgraphClient, { id, resolverAddress, }) => {
31
+ const resolverId = `${resolverAddress.toLowerCase()}-${id}`;
32
+ const response = await subgraphClient.request(customResolverQuery, {
33
+ id,
34
+ resolverId,
35
+ });
36
+ if (!response || !response.domain)
37
+ return null;
38
+ return {
39
+ domain: response.domain,
40
+ resolver: response.resolver,
41
+ };
42
+ };
43
+ const getInheritedResolverResult = async (subgraphClient, { id, }) => {
44
+ const response = await subgraphClient.request(inheritedResolverQuery, {
45
+ id,
46
+ });
47
+ if (!response || !response.domain)
48
+ return null;
49
+ const { resolver, ...domain } = response.domain;
50
+ return {
51
+ domain,
52
+ resolver,
53
+ };
54
+ };
30
55
  /**
31
56
  * Gets the records for a name from the subgraph
32
57
  * @param client - {@link ClientWithEns}
@@ -36,7 +61,8 @@ const customResolverQuery = gql `
36
61
  * @example
37
62
  * import { createPublicClient, http } from 'viem'
38
63
  * import { mainnet } from 'viem/chains'
39
- * import { addEnsContracts, getSubgraphRecords } from '@ensdomains/ensjs'
64
+ * import { addEnsContracts } from '@ensdomains/ensjs'
65
+ * import { getSubgraphRecords } from '@ensdomains/ensjs/subgraph'
40
66
  *
41
67
  * const client = createPublicClient({
42
68
  * chain: addEnsContracts(mainnet),
@@ -53,33 +79,16 @@ const customResolverQuery = gql `
53
79
  const getSubgraphRecords = async (client, { name, resolverAddress }) => {
54
80
  const subgraphClient = createSubgraphClient({ client });
55
81
  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;
82
+ const result = resolverAddress
83
+ ? await getCustomResolverResult(subgraphClient, { id, resolverAddress })
84
+ : await getInheritedResolverResult(subgraphClient, { id });
85
+ if (!result)
86
+ return null;
87
+ const { domain, resolver } = result;
88
+ const { isMigrated, createdAt: stringCreatedAt } = domain;
80
89
  const intCreatedAt = parseInt(stringCreatedAt) * 1000;
81
- const texts = resolverResult?.texts || [];
82
- const coins = resolverResult?.coinTypes || [];
90
+ const texts = resolver?.texts || [];
91
+ const coins = resolver?.coinTypes || [];
83
92
  return {
84
93
  isMigrated,
85
94
  createdAt: {
@@ -1 +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"}
1
+ {"version":3,"file":"getSubgraphRecords.js","sourceRoot":"","sources":["../../../../src/functions/subgraph/getSubgraphRecords.ts"],"names":[],"mappings":"AACA,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;AA6BD,MAAM,uBAAuB,GAAG,KAAK,EACnC,cAA6B,EAC7B,EACE,EAAE,EACF,eAAe,GAIhB,EACqC,EAAE;IACxC,MAAM,UAAU,GAAG,GAAG,eAAe,CAAC,WAAW,EAAE,IAAI,EAAE,EAAE,CAAA;IAC3D,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,OAAO,CAC3C,mBAAmB,EACnB;QACE,EAAE;QACF,UAAU;KACX,CACF,CAAA;IACD,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC,MAAM;QAAE,OAAO,IAAI,CAAA;IAC9C,OAAO;QACL,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;KAC5B,CAAA;AACH,CAAC,CAAA;AAED,MAAM,0BAA0B,GAAG,KAAK,EACtC,cAA6B,EAC7B,EACE,EAAE,GAGH,EACqC,EAAE;IACxC,MAAM,QAAQ,GACZ,MAAM,cAAc,CAAC,OAAO,CAC1B,sBAAsB,EACtB;QACE,EAAE;KACH,CACF,CAAA;IACH,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC,MAAM;QAAE,OAAO,IAAI,CAAA;IAC9C,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,EAAE,GAAG,QAAQ,CAAC,MAAM,CAAA;IAC/C,OAAO;QACL,MAAM;QACN,QAAQ;KACT,CAAA;AACH,CAAC,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;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,MAAM,MAAM,GAAG,eAAe;QAC5B,CAAC,CAAC,MAAM,uBAAuB,CAAC,cAAc,EAAE,EAAE,EAAE,EAAE,eAAe,EAAE,CAAC;QACxE,CAAC,CAAC,MAAM,0BAA0B,CAAC,cAAc,EAAE,EAAE,EAAE,EAAE,CAAC,CAAA;IAC5D,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAA;IACxB,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAA;IAEnC,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,eAAe,EAAE,GAAG,MAAM,CAAA;IACzD,MAAM,YAAY,GAAG,QAAQ,CAAC,eAAe,CAAC,GAAG,IAAI,CAAA;IACrD,MAAM,KAAK,GAAG,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAA;IACnC,MAAM,KAAK,GAAG,QAAQ,EAAE,SAAS,IAAI,EAAE,CAAA;IAEvC,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"}
@@ -21,7 +21,8 @@ const query = gql `
21
21
  * @example
22
22
  * import { createPublicClient, http } from 'viem'
23
23
  * import { mainnet } from 'viem/chains'
24
- * import { addEnsContracts, getSubgraphRegistrant } from '@ensdomains/ensjs'
24
+ * import { addEnsContracts } from '@ensdomains/ensjs'
25
+ * import { getSubgraphRegistrant } from '@ensdomains/ensjs/subgraph'
25
26
  *
26
27
  * const client = createPublicClient({
27
28
  * chain: addEnsContracts(mainnet),
@@ -1 +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"}
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;;;;;;;;;;;;;;;;;;GAkBG;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"}