thirdweb 5.37.0 → 5.37.1-nightly-26d825bc4f0475523ea761aa18ab979557295c28-20240722000339

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 (266) hide show
  1. package/dist/cjs/exports/extensions/lens.js +98 -0
  2. package/dist/cjs/exports/extensions/lens.js.map +1 -0
  3. package/dist/cjs/exports/extensions/permissions.js +7 -1
  4. package/dist/cjs/exports/extensions/permissions.js.map +1 -1
  5. package/dist/cjs/extensions/lens/__generated__/FollowNFT/read/getFollowData.js +133 -0
  6. package/dist/cjs/extensions/lens/__generated__/FollowNFT/read/getFollowData.js.map +1 -0
  7. package/dist/cjs/extensions/lens/__generated__/FollowNFT/read/getFollowTimestamp.js +115 -0
  8. package/dist/cjs/extensions/lens/__generated__/FollowNFT/read/getFollowTimestamp.js.map +1 -0
  9. package/dist/cjs/extensions/lens/__generated__/FollowNFT/read/getFollowTokenId.js +115 -0
  10. package/dist/cjs/extensions/lens/__generated__/FollowNFT/read/getFollowTokenId.js.map +1 -0
  11. package/dist/cjs/extensions/lens/__generated__/FollowNFT/read/getFollowerCount.js +71 -0
  12. package/dist/cjs/extensions/lens/__generated__/FollowNFT/read/getFollowerCount.js.map +1 -0
  13. package/dist/cjs/extensions/lens/__generated__/FollowNFT/read/getFollowerProfileId.js +115 -0
  14. package/dist/cjs/extensions/lens/__generated__/FollowNFT/read/getFollowerProfileId.js.map +1 -0
  15. package/dist/cjs/extensions/lens/__generated__/FollowNFT/read/getOriginalFollowTimestamp.js +115 -0
  16. package/dist/cjs/extensions/lens/__generated__/FollowNFT/read/getOriginalFollowTimestamp.js.map +1 -0
  17. package/dist/cjs/extensions/lens/__generated__/FollowNFT/read/getProfileIdAllowedToRecover.js +115 -0
  18. package/dist/cjs/extensions/lens/__generated__/FollowNFT/read/getProfileIdAllowedToRecover.js.map +1 -0
  19. package/dist/cjs/extensions/lens/__generated__/FollowNFT/read/isFollowing.js +115 -0
  20. package/dist/cjs/extensions/lens/__generated__/FollowNFT/read/isFollowing.js.map +1 -0
  21. package/dist/cjs/extensions/lens/__generated__/FollowNFT/read/mintTimestampOf.js +115 -0
  22. package/dist/cjs/extensions/lens/__generated__/FollowNFT/read/mintTimestampOf.js.map +1 -0
  23. package/dist/cjs/extensions/lens/__generated__/LensHandle/read/getHandle.js +115 -0
  24. package/dist/cjs/extensions/lens/__generated__/LensHandle/read/getHandle.js.map +1 -0
  25. package/dist/cjs/extensions/lens/__generated__/LensHandle/read/getHandleTokenURIContract.js +71 -0
  26. package/dist/cjs/extensions/lens/__generated__/LensHandle/read/getHandleTokenURIContract.js.map +1 -0
  27. package/dist/cjs/extensions/lens/__generated__/LensHandle/read/getLocalName.js +115 -0
  28. package/dist/cjs/extensions/lens/__generated__/LensHandle/read/getLocalName.js.map +1 -0
  29. package/dist/cjs/extensions/lens/__generated__/LensHandle/read/getTokenId.js +115 -0
  30. package/dist/cjs/extensions/lens/__generated__/LensHandle/read/getTokenId.js.map +1 -0
  31. package/dist/cjs/extensions/lens/__generated__/LensHub/read/exists.js +115 -0
  32. package/dist/cjs/extensions/lens/__generated__/LensHub/read/exists.js.map +1 -0
  33. package/dist/cjs/extensions/lens/__generated__/LensHub/read/getContentURI.js +122 -0
  34. package/dist/cjs/extensions/lens/__generated__/LensHub/read/getContentURI.js.map +1 -0
  35. package/dist/cjs/extensions/lens/__generated__/LensHub/read/getProfile.js +145 -0
  36. package/dist/cjs/extensions/lens/__generated__/LensHub/read/getProfile.js.map +1 -0
  37. package/dist/cjs/extensions/lens/__generated__/LensHub/read/getProfileIdByHandleHash.js +115 -0
  38. package/dist/cjs/extensions/lens/__generated__/LensHub/read/getProfileIdByHandleHash.js.map +1 -0
  39. package/dist/cjs/extensions/lens/__generated__/LensHub/read/getPublication.js +160 -0
  40. package/dist/cjs/extensions/lens/__generated__/LensHub/read/getPublication.js.map +1 -0
  41. package/dist/cjs/extensions/lens/__generated__/LensHub/read/mintTimestampOf.js +115 -0
  42. package/dist/cjs/extensions/lens/__generated__/LensHub/read/mintTimestampOf.js.map +1 -0
  43. package/dist/cjs/extensions/lens/__generated__/LensHub/read/nonces.js +115 -0
  44. package/dist/cjs/extensions/lens/__generated__/LensHub/read/nonces.js.map +1 -0
  45. package/dist/cjs/extensions/lens/__generated__/LensHub/read/tokenDataOf.js +125 -0
  46. package/dist/cjs/extensions/lens/__generated__/LensHub/read/tokenDataOf.js.map +1 -0
  47. package/dist/cjs/extensions/lens/__generated__/ModuleRegistry/read/getModuleTypes.js +115 -0
  48. package/dist/cjs/extensions/lens/__generated__/ModuleRegistry/read/getModuleTypes.js.map +1 -0
  49. package/dist/cjs/extensions/lens/__generated__/ModuleRegistry/read/isErc20CurrencyRegistered.js +115 -0
  50. package/dist/cjs/extensions/lens/__generated__/ModuleRegistry/read/isErc20CurrencyRegistered.js.map +1 -0
  51. package/dist/cjs/extensions/lens/__generated__/ModuleRegistry/read/isModuleRegistered.js +115 -0
  52. package/dist/cjs/extensions/lens/__generated__/ModuleRegistry/read/isModuleRegistered.js.map +1 -0
  53. package/dist/cjs/extensions/lens/__generated__/ModuleRegistry/read/isModuleRegisteredAs.js +125 -0
  54. package/dist/cjs/extensions/lens/__generated__/ModuleRegistry/read/isModuleRegisteredAs.js.map +1 -0
  55. package/dist/cjs/extensions/lens/__generated__/TokenHandleRegistry/read/getDefaultHandle.js +115 -0
  56. package/dist/cjs/extensions/lens/__generated__/TokenHandleRegistry/read/getDefaultHandle.js.map +1 -0
  57. package/dist/cjs/extensions/lens/__generated__/TokenHandleRegistry/read/nonces.js +116 -0
  58. package/dist/cjs/extensions/lens/__generated__/TokenHandleRegistry/read/nonces.js.map +1 -0
  59. package/dist/cjs/extensions/lens/__generated__/TokenHandleRegistry/read/resolve.js +115 -0
  60. package/dist/cjs/extensions/lens/__generated__/TokenHandleRegistry/read/resolve.js.map +1 -0
  61. package/dist/cjs/extensions/lens/consts.js +26 -0
  62. package/dist/cjs/extensions/lens/consts.js.map +1 -0
  63. package/dist/cjs/extensions/lens/read/getFullProfile.js +74 -0
  64. package/dist/cjs/extensions/lens/read/getFullProfile.js.map +1 -0
  65. package/dist/cjs/extensions/lens/read/getHandleFromProfileId.js +50 -0
  66. package/dist/cjs/extensions/lens/read/getHandleFromProfileId.js.map +1 -0
  67. package/dist/cjs/extensions/lens/read/getProfileMetadata.js +55 -0
  68. package/dist/cjs/extensions/lens/read/getProfileMetadata.js.map +1 -0
  69. package/dist/cjs/extensions/lens/read/type.js +3 -0
  70. package/dist/cjs/extensions/lens/read/type.js.map +1 -0
  71. package/dist/cjs/extensions/permissions/utils.js +19 -5
  72. package/dist/cjs/extensions/permissions/utils.js.map +1 -1
  73. package/dist/cjs/version.js +1 -1
  74. package/dist/cjs/version.js.map +1 -1
  75. package/dist/esm/exports/extensions/lens.js +56 -0
  76. package/dist/esm/exports/extensions/lens.js.map +1 -0
  77. package/dist/esm/exports/extensions/permissions.js +4 -0
  78. package/dist/esm/exports/extensions/permissions.js.map +1 -1
  79. package/dist/esm/extensions/lens/__generated__/FollowNFT/read/getFollowData.js +125 -0
  80. package/dist/esm/extensions/lens/__generated__/FollowNFT/read/getFollowData.js.map +1 -0
  81. package/dist/esm/extensions/lens/__generated__/FollowNFT/read/getFollowTimestamp.js +107 -0
  82. package/dist/esm/extensions/lens/__generated__/FollowNFT/read/getFollowTimestamp.js.map +1 -0
  83. package/dist/esm/extensions/lens/__generated__/FollowNFT/read/getFollowTokenId.js +107 -0
  84. package/dist/esm/extensions/lens/__generated__/FollowNFT/read/getFollowTokenId.js.map +1 -0
  85. package/dist/esm/extensions/lens/__generated__/FollowNFT/read/getFollowerCount.js +65 -0
  86. package/dist/esm/extensions/lens/__generated__/FollowNFT/read/getFollowerCount.js.map +1 -0
  87. package/dist/esm/extensions/lens/__generated__/FollowNFT/read/getFollowerProfileId.js +107 -0
  88. package/dist/esm/extensions/lens/__generated__/FollowNFT/read/getFollowerProfileId.js.map +1 -0
  89. package/dist/esm/extensions/lens/__generated__/FollowNFT/read/getOriginalFollowTimestamp.js +107 -0
  90. package/dist/esm/extensions/lens/__generated__/FollowNFT/read/getOriginalFollowTimestamp.js.map +1 -0
  91. package/dist/esm/extensions/lens/__generated__/FollowNFT/read/getProfileIdAllowedToRecover.js +107 -0
  92. package/dist/esm/extensions/lens/__generated__/FollowNFT/read/getProfileIdAllowedToRecover.js.map +1 -0
  93. package/dist/esm/extensions/lens/__generated__/FollowNFT/read/isFollowing.js +107 -0
  94. package/dist/esm/extensions/lens/__generated__/FollowNFT/read/isFollowing.js.map +1 -0
  95. package/dist/esm/extensions/lens/__generated__/FollowNFT/read/mintTimestampOf.js +107 -0
  96. package/dist/esm/extensions/lens/__generated__/FollowNFT/read/mintTimestampOf.js.map +1 -0
  97. package/dist/esm/extensions/lens/__generated__/LensHandle/read/getHandle.js +107 -0
  98. package/dist/esm/extensions/lens/__generated__/LensHandle/read/getHandle.js.map +1 -0
  99. package/dist/esm/extensions/lens/__generated__/LensHandle/read/getHandleTokenURIContract.js +65 -0
  100. package/dist/esm/extensions/lens/__generated__/LensHandle/read/getHandleTokenURIContract.js.map +1 -0
  101. package/dist/esm/extensions/lens/__generated__/LensHandle/read/getLocalName.js +107 -0
  102. package/dist/esm/extensions/lens/__generated__/LensHandle/read/getLocalName.js.map +1 -0
  103. package/dist/esm/extensions/lens/__generated__/LensHandle/read/getTokenId.js +107 -0
  104. package/dist/esm/extensions/lens/__generated__/LensHandle/read/getTokenId.js.map +1 -0
  105. package/dist/esm/extensions/lens/__generated__/LensHub/read/exists.js +107 -0
  106. package/dist/esm/extensions/lens/__generated__/LensHub/read/exists.js.map +1 -0
  107. package/dist/esm/extensions/lens/__generated__/LensHub/read/getContentURI.js +114 -0
  108. package/dist/esm/extensions/lens/__generated__/LensHub/read/getContentURI.js.map +1 -0
  109. package/dist/esm/extensions/lens/__generated__/LensHub/read/getProfile.js +137 -0
  110. package/dist/esm/extensions/lens/__generated__/LensHub/read/getProfile.js.map +1 -0
  111. package/dist/esm/extensions/lens/__generated__/LensHub/read/getProfileIdByHandleHash.js +107 -0
  112. package/dist/esm/extensions/lens/__generated__/LensHub/read/getProfileIdByHandleHash.js.map +1 -0
  113. package/dist/esm/extensions/lens/__generated__/LensHub/read/getPublication.js +152 -0
  114. package/dist/esm/extensions/lens/__generated__/LensHub/read/getPublication.js.map +1 -0
  115. package/dist/esm/extensions/lens/__generated__/LensHub/read/mintTimestampOf.js +107 -0
  116. package/dist/esm/extensions/lens/__generated__/LensHub/read/mintTimestampOf.js.map +1 -0
  117. package/dist/esm/extensions/lens/__generated__/LensHub/read/nonces.js +107 -0
  118. package/dist/esm/extensions/lens/__generated__/LensHub/read/nonces.js.map +1 -0
  119. package/dist/esm/extensions/lens/__generated__/LensHub/read/tokenDataOf.js +117 -0
  120. package/dist/esm/extensions/lens/__generated__/LensHub/read/tokenDataOf.js.map +1 -0
  121. package/dist/esm/extensions/lens/__generated__/ModuleRegistry/read/getModuleTypes.js +107 -0
  122. package/dist/esm/extensions/lens/__generated__/ModuleRegistry/read/getModuleTypes.js.map +1 -0
  123. package/dist/esm/extensions/lens/__generated__/ModuleRegistry/read/isErc20CurrencyRegistered.js +107 -0
  124. package/dist/esm/extensions/lens/__generated__/ModuleRegistry/read/isErc20CurrencyRegistered.js.map +1 -0
  125. package/dist/esm/extensions/lens/__generated__/ModuleRegistry/read/isModuleRegistered.js +107 -0
  126. package/dist/esm/extensions/lens/__generated__/ModuleRegistry/read/isModuleRegistered.js.map +1 -0
  127. package/dist/esm/extensions/lens/__generated__/ModuleRegistry/read/isModuleRegisteredAs.js +117 -0
  128. package/dist/esm/extensions/lens/__generated__/ModuleRegistry/read/isModuleRegisteredAs.js.map +1 -0
  129. package/dist/esm/extensions/lens/__generated__/TokenHandleRegistry/read/getDefaultHandle.js +107 -0
  130. package/dist/esm/extensions/lens/__generated__/TokenHandleRegistry/read/getDefaultHandle.js.map +1 -0
  131. package/dist/esm/extensions/lens/__generated__/TokenHandleRegistry/read/nonces.js +108 -0
  132. package/dist/esm/extensions/lens/__generated__/TokenHandleRegistry/read/nonces.js.map +1 -0
  133. package/dist/esm/extensions/lens/__generated__/TokenHandleRegistry/read/resolve.js +107 -0
  134. package/dist/esm/extensions/lens/__generated__/TokenHandleRegistry/read/resolve.js.map +1 -0
  135. package/dist/esm/extensions/lens/consts.js +23 -0
  136. package/dist/esm/extensions/lens/consts.js.map +1 -0
  137. package/dist/esm/extensions/lens/read/getFullProfile.js +71 -0
  138. package/dist/esm/extensions/lens/read/getFullProfile.js.map +1 -0
  139. package/dist/esm/extensions/lens/read/getHandleFromProfileId.js +47 -0
  140. package/dist/esm/extensions/lens/read/getHandleFromProfileId.js.map +1 -0
  141. package/dist/esm/extensions/lens/read/getProfileMetadata.js +52 -0
  142. package/dist/esm/extensions/lens/read/getProfileMetadata.js.map +1 -0
  143. package/dist/esm/extensions/lens/read/type.js +2 -0
  144. package/dist/esm/extensions/lens/read/type.js.map +1 -0
  145. package/dist/esm/extensions/permissions/utils.js +15 -1
  146. package/dist/esm/extensions/permissions/utils.js.map +1 -1
  147. package/dist/esm/version.js +1 -1
  148. package/dist/esm/version.js.map +1 -1
  149. package/dist/types/exports/extensions/lens.d.ts +53 -0
  150. package/dist/types/exports/extensions/lens.d.ts.map +1 -0
  151. package/dist/types/exports/extensions/permissions.d.ts +1 -0
  152. package/dist/types/exports/extensions/permissions.d.ts.map +1 -1
  153. package/dist/types/extensions/lens/__generated__/FollowNFT/read/getFollowData.d.ts +95 -0
  154. package/dist/types/extensions/lens/__generated__/FollowNFT/read/getFollowData.d.ts.map +1 -0
  155. package/dist/types/extensions/lens/__generated__/FollowNFT/read/getFollowTimestamp.d.ts +85 -0
  156. package/dist/types/extensions/lens/__generated__/FollowNFT/read/getFollowTimestamp.d.ts.map +1 -0
  157. package/dist/types/extensions/lens/__generated__/FollowNFT/read/getFollowTokenId.d.ts +85 -0
  158. package/dist/types/extensions/lens/__generated__/FollowNFT/read/getFollowTokenId.d.ts.map +1 -0
  159. package/dist/types/extensions/lens/__generated__/FollowNFT/read/getFollowerCount.d.ts +46 -0
  160. package/dist/types/extensions/lens/__generated__/FollowNFT/read/getFollowerCount.d.ts.map +1 -0
  161. package/dist/types/extensions/lens/__generated__/FollowNFT/read/getFollowerProfileId.d.ts +85 -0
  162. package/dist/types/extensions/lens/__generated__/FollowNFT/read/getFollowerProfileId.d.ts.map +1 -0
  163. package/dist/types/extensions/lens/__generated__/FollowNFT/read/getOriginalFollowTimestamp.d.ts +85 -0
  164. package/dist/types/extensions/lens/__generated__/FollowNFT/read/getOriginalFollowTimestamp.d.ts.map +1 -0
  165. package/dist/types/extensions/lens/__generated__/FollowNFT/read/getProfileIdAllowedToRecover.d.ts +85 -0
  166. package/dist/types/extensions/lens/__generated__/FollowNFT/read/getProfileIdAllowedToRecover.d.ts.map +1 -0
  167. package/dist/types/extensions/lens/__generated__/FollowNFT/read/isFollowing.d.ts +85 -0
  168. package/dist/types/extensions/lens/__generated__/FollowNFT/read/isFollowing.d.ts.map +1 -0
  169. package/dist/types/extensions/lens/__generated__/FollowNFT/read/mintTimestampOf.d.ts +85 -0
  170. package/dist/types/extensions/lens/__generated__/FollowNFT/read/mintTimestampOf.d.ts.map +1 -0
  171. package/dist/types/extensions/lens/__generated__/LensHandle/read/getHandle.d.ts +85 -0
  172. package/dist/types/extensions/lens/__generated__/LensHandle/read/getHandle.d.ts.map +1 -0
  173. package/dist/types/extensions/lens/__generated__/LensHandle/read/getHandleTokenURIContract.d.ts +46 -0
  174. package/dist/types/extensions/lens/__generated__/LensHandle/read/getHandleTokenURIContract.d.ts.map +1 -0
  175. package/dist/types/extensions/lens/__generated__/LensHandle/read/getLocalName.d.ts +85 -0
  176. package/dist/types/extensions/lens/__generated__/LensHandle/read/getLocalName.d.ts.map +1 -0
  177. package/dist/types/extensions/lens/__generated__/LensHandle/read/getTokenId.d.ts +85 -0
  178. package/dist/types/extensions/lens/__generated__/LensHandle/read/getTokenId.d.ts.map +1 -0
  179. package/dist/types/extensions/lens/__generated__/LensHub/read/exists.d.ts +85 -0
  180. package/dist/types/extensions/lens/__generated__/LensHub/read/exists.d.ts.map +1 -0
  181. package/dist/types/extensions/lens/__generated__/LensHub/read/getContentURI.d.ts +92 -0
  182. package/dist/types/extensions/lens/__generated__/LensHub/read/getContentURI.d.ts.map +1 -0
  183. package/dist/types/extensions/lens/__generated__/LensHub/read/getProfile.d.ts +101 -0
  184. package/dist/types/extensions/lens/__generated__/LensHub/read/getProfile.d.ts.map +1 -0
  185. package/dist/types/extensions/lens/__generated__/LensHub/read/getProfileIdByHandleHash.d.ts +85 -0
  186. package/dist/types/extensions/lens/__generated__/LensHub/read/getProfileIdByHandleHash.d.ts.map +1 -0
  187. package/dist/types/extensions/lens/__generated__/LensHub/read/getPublication.d.ts +112 -0
  188. package/dist/types/extensions/lens/__generated__/LensHub/read/getPublication.d.ts.map +1 -0
  189. package/dist/types/extensions/lens/__generated__/LensHub/read/mintTimestampOf.d.ts +85 -0
  190. package/dist/types/extensions/lens/__generated__/LensHub/read/mintTimestampOf.d.ts.map +1 -0
  191. package/dist/types/extensions/lens/__generated__/LensHub/read/nonces.d.ts +85 -0
  192. package/dist/types/extensions/lens/__generated__/LensHub/read/nonces.d.ts.map +1 -0
  193. package/dist/types/extensions/lens/__generated__/LensHub/read/tokenDataOf.d.ts +91 -0
  194. package/dist/types/extensions/lens/__generated__/LensHub/read/tokenDataOf.d.ts.map +1 -0
  195. package/dist/types/extensions/lens/__generated__/ModuleRegistry/read/getModuleTypes.d.ts +85 -0
  196. package/dist/types/extensions/lens/__generated__/ModuleRegistry/read/getModuleTypes.d.ts.map +1 -0
  197. package/dist/types/extensions/lens/__generated__/ModuleRegistry/read/isErc20CurrencyRegistered.d.ts +85 -0
  198. package/dist/types/extensions/lens/__generated__/ModuleRegistry/read/isErc20CurrencyRegistered.d.ts.map +1 -0
  199. package/dist/types/extensions/lens/__generated__/ModuleRegistry/read/isModuleRegistered.d.ts +85 -0
  200. package/dist/types/extensions/lens/__generated__/ModuleRegistry/read/isModuleRegistered.d.ts.map +1 -0
  201. package/dist/types/extensions/lens/__generated__/ModuleRegistry/read/isModuleRegisteredAs.d.ts +92 -0
  202. package/dist/types/extensions/lens/__generated__/ModuleRegistry/read/isModuleRegisteredAs.d.ts.map +1 -0
  203. package/dist/types/extensions/lens/__generated__/TokenHandleRegistry/read/getDefaultHandle.d.ts +85 -0
  204. package/dist/types/extensions/lens/__generated__/TokenHandleRegistry/read/getDefaultHandle.d.ts.map +1 -0
  205. package/dist/types/extensions/lens/__generated__/TokenHandleRegistry/read/nonces.d.ts +85 -0
  206. package/dist/types/extensions/lens/__generated__/TokenHandleRegistry/read/nonces.d.ts.map +1 -0
  207. package/dist/types/extensions/lens/__generated__/TokenHandleRegistry/read/resolve.d.ts +85 -0
  208. package/dist/types/extensions/lens/__generated__/TokenHandleRegistry/read/resolve.d.ts.map +1 -0
  209. package/dist/types/extensions/lens/consts.d.ts +20 -0
  210. package/dist/types/extensions/lens/consts.d.ts.map +1 -0
  211. package/dist/types/extensions/lens/read/getFullProfile.d.ts +37 -0
  212. package/dist/types/extensions/lens/read/getFullProfile.d.ts.map +1 -0
  213. package/dist/types/extensions/lens/read/getHandleFromProfileId.d.ts +28 -0
  214. package/dist/types/extensions/lens/read/getHandleFromProfileId.d.ts.map +1 -0
  215. package/dist/types/extensions/lens/read/getProfileMetadata.d.ts +36 -0
  216. package/dist/types/extensions/lens/read/getProfileMetadata.d.ts.map +1 -0
  217. package/dist/types/extensions/lens/read/type.d.ts +37 -0
  218. package/dist/types/extensions/lens/read/type.d.ts.map +1 -0
  219. package/dist/types/extensions/permissions/utils.d.ts +15 -2
  220. package/dist/types/extensions/permissions/utils.d.ts.map +1 -1
  221. package/dist/types/version.d.ts +1 -1
  222. package/dist/types/version.d.ts.map +1 -1
  223. package/package.json +1 -1
  224. package/src/exports/extensions/lens.ts +155 -0
  225. package/src/exports/extensions/permissions.ts +5 -0
  226. package/src/extensions/erc1155/drops/read/getActiveClaimCondition.test.ts +3 -4
  227. package/src/extensions/erc20/drops/read/getActiveClaimCondition.test.ts +2 -2
  228. package/src/extensions/erc721/drops/read/getActiveClaimCondition.test.ts +2 -2
  229. package/src/extensions/lens/__generated__/FollowNFT/read/getFollowData.ts +150 -0
  230. package/src/extensions/lens/__generated__/FollowNFT/read/getFollowTimestamp.ts +134 -0
  231. package/src/extensions/lens/__generated__/FollowNFT/read/getFollowTokenId.ts +132 -0
  232. package/src/extensions/lens/__generated__/FollowNFT/read/getFollowerCount.ts +74 -0
  233. package/src/extensions/lens/__generated__/FollowNFT/read/getFollowerProfileId.ts +136 -0
  234. package/src/extensions/lens/__generated__/FollowNFT/read/getOriginalFollowTimestamp.ts +136 -0
  235. package/src/extensions/lens/__generated__/FollowNFT/read/getProfileIdAllowedToRecover.ts +136 -0
  236. package/src/extensions/lens/__generated__/FollowNFT/read/isFollowing.ts +130 -0
  237. package/src/extensions/lens/__generated__/FollowNFT/read/mintTimestampOf.ts +129 -0
  238. package/src/extensions/lens/__generated__/LensHandle/read/getHandle.ts +127 -0
  239. package/src/extensions/lens/__generated__/LensHandle/read/getHandleTokenURIContract.ts +76 -0
  240. package/src/extensions/lens/__generated__/LensHandle/read/getLocalName.ts +127 -0
  241. package/src/extensions/lens/__generated__/LensHandle/read/getTokenId.ts +127 -0
  242. package/src/extensions/lens/__generated__/LensHub/read/exists.ts +123 -0
  243. package/src/extensions/lens/__generated__/LensHub/read/getContentURI.ts +140 -0
  244. package/src/extensions/lens/__generated__/LensHub/read/getProfile.ts +160 -0
  245. package/src/extensions/lens/__generated__/LensHub/read/getProfileIdByHandleHash.ts +136 -0
  246. package/src/extensions/lens/__generated__/LensHub/read/getPublication.ts +178 -0
  247. package/src/extensions/lens/__generated__/LensHub/read/mintTimestampOf.ts +129 -0
  248. package/src/extensions/lens/__generated__/LensHub/read/nonces.ts +123 -0
  249. package/src/extensions/lens/__generated__/LensHub/read/tokenDataOf.ts +137 -0
  250. package/src/extensions/lens/__generated__/ModuleRegistry/read/getModuleTypes.ts +132 -0
  251. package/src/extensions/lens/__generated__/ModuleRegistry/read/isErc20CurrencyRegistered.ts +136 -0
  252. package/src/extensions/lens/__generated__/ModuleRegistry/read/isModuleRegistered.ts +134 -0
  253. package/src/extensions/lens/__generated__/ModuleRegistry/read/isModuleRegisteredAs.ts +150 -0
  254. package/src/extensions/lens/__generated__/TokenHandleRegistry/read/getDefaultHandle.ts +132 -0
  255. package/src/extensions/lens/__generated__/TokenHandleRegistry/read/nonces.ts +124 -0
  256. package/src/extensions/lens/__generated__/TokenHandleRegistry/read/resolve.ts +123 -0
  257. package/src/extensions/lens/consts.ts +35 -0
  258. package/src/extensions/lens/read/getFullProfile.test.ts +40 -0
  259. package/src/extensions/lens/read/getFullProfile.ts +106 -0
  260. package/src/extensions/lens/read/getHandleFromProfileId.test.ts +45 -0
  261. package/src/extensions/lens/read/getHandleFromProfileId.ts +67 -0
  262. package/src/extensions/lens/read/getProfileMetadata.test.ts +43 -0
  263. package/src/extensions/lens/read/getProfileMetadata.ts +67 -0
  264. package/src/extensions/lens/read/type.ts +50 -0
  265. package/src/extensions/permissions/utils.ts +15 -1
  266. package/src/version.ts +1 -1
@@ -0,0 +1,136 @@
1
+ import type { AbiParameterToPrimitiveType } from "abitype";
2
+ import { readContract } from "../../../../../transaction/read-contract.js";
3
+ import type { BaseTransactionOptions } from "../../../../../transaction/types.js";
4
+ import { encodeAbiParameters } from "../../../../../utils/abi/encodeAbiParameters.js";
5
+ import { decodeAbiParameters } from "viem";
6
+ import type { Hex } from "../../../../../utils/encoding/hex.js";
7
+ import type { ThirdwebContract } from "../../../../../contract/contract.js";
8
+ import { detectMethod } from "../../../../../utils/bytecode/detectExtension.js";
9
+
10
+ /**
11
+ * Represents the parameters for the "isErc20CurrencyRegistered" function.
12
+ */
13
+ export type IsErc20CurrencyRegisteredParams = {
14
+ currencyAddress: AbiParameterToPrimitiveType<{
15
+ type: "address";
16
+ name: "currencyAddress";
17
+ }>;
18
+ };
19
+
20
+ export const FN_SELECTOR = "0xf21b24d7" as const;
21
+ const FN_INPUTS = [
22
+ {
23
+ type: "address",
24
+ name: "currencyAddress",
25
+ },
26
+ ] as const;
27
+ const FN_OUTPUTS = [
28
+ {
29
+ type: "bool",
30
+ },
31
+ ] as const;
32
+
33
+ /**
34
+ * Checks if the `isErc20CurrencyRegistered` method is supported by the given contract.
35
+ * @param contract The ThirdwebContract.
36
+ * @returns A promise that resolves to a boolean indicating if the `isErc20CurrencyRegistered` method is supported.
37
+ * @extension LENS
38
+ * @example
39
+ * ```ts
40
+ * import { isIsErc20CurrencyRegisteredSupported } from "thirdweb/extensions/lens";
41
+ *
42
+ * const supported = await isIsErc20CurrencyRegisteredSupported(contract);
43
+ * ```
44
+ */
45
+ export async function isIsErc20CurrencyRegisteredSupported(
46
+ contract: ThirdwebContract<any>,
47
+ ) {
48
+ return detectMethod({
49
+ contract,
50
+ method: [FN_SELECTOR, FN_INPUTS, FN_OUTPUTS] as const,
51
+ });
52
+ }
53
+
54
+ /**
55
+ * Encodes the parameters for the "isErc20CurrencyRegistered" function.
56
+ * @param options - The options for the isErc20CurrencyRegistered function.
57
+ * @returns The encoded ABI parameters.
58
+ * @extension LENS
59
+ * @example
60
+ * ```ts
61
+ * import { encodeIsErc20CurrencyRegisteredParams } "thirdweb/extensions/lens";
62
+ * const result = encodeIsErc20CurrencyRegisteredParams({
63
+ * currencyAddress: ...,
64
+ * });
65
+ * ```
66
+ */
67
+ export function encodeIsErc20CurrencyRegisteredParams(
68
+ options: IsErc20CurrencyRegisteredParams,
69
+ ) {
70
+ return encodeAbiParameters(FN_INPUTS, [options.currencyAddress]);
71
+ }
72
+
73
+ /**
74
+ * Encodes the "isErc20CurrencyRegistered" function into a Hex string with its parameters.
75
+ * @param options - The options for the isErc20CurrencyRegistered function.
76
+ * @returns The encoded hexadecimal string.
77
+ * @extension LENS
78
+ * @example
79
+ * ```ts
80
+ * import { encodeIsErc20CurrencyRegistered } "thirdweb/extensions/lens";
81
+ * const result = encodeIsErc20CurrencyRegistered({
82
+ * currencyAddress: ...,
83
+ * });
84
+ * ```
85
+ */
86
+ export function encodeIsErc20CurrencyRegistered(
87
+ options: IsErc20CurrencyRegisteredParams,
88
+ ) {
89
+ // we do a "manual" concat here to avoid the overhead of the "concatHex" function
90
+ // we can do this because we know the specific formats of the values
91
+ return (FN_SELECTOR +
92
+ encodeIsErc20CurrencyRegisteredParams(options).slice(
93
+ 2,
94
+ )) as `${typeof FN_SELECTOR}${string}`;
95
+ }
96
+
97
+ /**
98
+ * Decodes the result of the isErc20CurrencyRegistered function call.
99
+ * @param result - The hexadecimal result to decode.
100
+ * @returns The decoded result as per the FN_OUTPUTS definition.
101
+ * @extension LENS
102
+ * @example
103
+ * ```ts
104
+ * import { decodeIsErc20CurrencyRegisteredResult } from "thirdweb/extensions/lens";
105
+ * const result = decodeIsErc20CurrencyRegisteredResult("...");
106
+ * ```
107
+ */
108
+ export function decodeIsErc20CurrencyRegisteredResult(result: Hex) {
109
+ return decodeAbiParameters(FN_OUTPUTS, result)[0];
110
+ }
111
+
112
+ /**
113
+ * Calls the "isErc20CurrencyRegistered" function on the contract.
114
+ * @param options - The options for the isErc20CurrencyRegistered function.
115
+ * @returns The parsed result of the function call.
116
+ * @extension LENS
117
+ * @example
118
+ * ```ts
119
+ * import { isErc20CurrencyRegistered } from "thirdweb/extensions/lens";
120
+ *
121
+ * const result = await isErc20CurrencyRegistered({
122
+ * contract,
123
+ * currencyAddress: ...,
124
+ * });
125
+ *
126
+ * ```
127
+ */
128
+ export async function isErc20CurrencyRegistered(
129
+ options: BaseTransactionOptions<IsErc20CurrencyRegisteredParams>,
130
+ ) {
131
+ return readContract({
132
+ contract: options.contract,
133
+ method: [FN_SELECTOR, FN_INPUTS, FN_OUTPUTS] as const,
134
+ params: [options.currencyAddress],
135
+ });
136
+ }
@@ -0,0 +1,134 @@
1
+ import type { AbiParameterToPrimitiveType } from "abitype";
2
+ import { readContract } from "../../../../../transaction/read-contract.js";
3
+ import type { BaseTransactionOptions } from "../../../../../transaction/types.js";
4
+ import { encodeAbiParameters } from "../../../../../utils/abi/encodeAbiParameters.js";
5
+ import { decodeAbiParameters } from "viem";
6
+ import type { Hex } from "../../../../../utils/encoding/hex.js";
7
+ import type { ThirdwebContract } from "../../../../../contract/contract.js";
8
+ import { detectMethod } from "../../../../../utils/bytecode/detectExtension.js";
9
+
10
+ /**
11
+ * Represents the parameters for the "isModuleRegistered" function.
12
+ */
13
+ export type IsModuleRegisteredParams = {
14
+ moduleAddress: AbiParameterToPrimitiveType<{
15
+ type: "address";
16
+ name: "moduleAddress";
17
+ }>;
18
+ };
19
+
20
+ export const FN_SELECTOR = "0x1c5ebe2f" as const;
21
+ const FN_INPUTS = [
22
+ {
23
+ type: "address",
24
+ name: "moduleAddress",
25
+ },
26
+ ] as const;
27
+ const FN_OUTPUTS = [
28
+ {
29
+ type: "bool",
30
+ },
31
+ ] as const;
32
+
33
+ /**
34
+ * Checks if the `isModuleRegistered` method is supported by the given contract.
35
+ * @param contract The ThirdwebContract.
36
+ * @returns A promise that resolves to a boolean indicating if the `isModuleRegistered` method is supported.
37
+ * @extension LENS
38
+ * @example
39
+ * ```ts
40
+ * import { isIsModuleRegisteredSupported } from "thirdweb/extensions/lens";
41
+ *
42
+ * const supported = await isIsModuleRegisteredSupported(contract);
43
+ * ```
44
+ */
45
+ export async function isIsModuleRegisteredSupported(
46
+ contract: ThirdwebContract<any>,
47
+ ) {
48
+ return detectMethod({
49
+ contract,
50
+ method: [FN_SELECTOR, FN_INPUTS, FN_OUTPUTS] as const,
51
+ });
52
+ }
53
+
54
+ /**
55
+ * Encodes the parameters for the "isModuleRegistered" function.
56
+ * @param options - The options for the isModuleRegistered function.
57
+ * @returns The encoded ABI parameters.
58
+ * @extension LENS
59
+ * @example
60
+ * ```ts
61
+ * import { encodeIsModuleRegisteredParams } "thirdweb/extensions/lens";
62
+ * const result = encodeIsModuleRegisteredParams({
63
+ * moduleAddress: ...,
64
+ * });
65
+ * ```
66
+ */
67
+ export function encodeIsModuleRegisteredParams(
68
+ options: IsModuleRegisteredParams,
69
+ ) {
70
+ return encodeAbiParameters(FN_INPUTS, [options.moduleAddress]);
71
+ }
72
+
73
+ /**
74
+ * Encodes the "isModuleRegistered" function into a Hex string with its parameters.
75
+ * @param options - The options for the isModuleRegistered function.
76
+ * @returns The encoded hexadecimal string.
77
+ * @extension LENS
78
+ * @example
79
+ * ```ts
80
+ * import { encodeIsModuleRegistered } "thirdweb/extensions/lens";
81
+ * const result = encodeIsModuleRegistered({
82
+ * moduleAddress: ...,
83
+ * });
84
+ * ```
85
+ */
86
+ export function encodeIsModuleRegistered(options: IsModuleRegisteredParams) {
87
+ // we do a "manual" concat here to avoid the overhead of the "concatHex" function
88
+ // we can do this because we know the specific formats of the values
89
+ return (FN_SELECTOR +
90
+ encodeIsModuleRegisteredParams(options).slice(
91
+ 2,
92
+ )) as `${typeof FN_SELECTOR}${string}`;
93
+ }
94
+
95
+ /**
96
+ * Decodes the result of the isModuleRegistered function call.
97
+ * @param result - The hexadecimal result to decode.
98
+ * @returns The decoded result as per the FN_OUTPUTS definition.
99
+ * @extension LENS
100
+ * @example
101
+ * ```ts
102
+ * import { decodeIsModuleRegisteredResult } from "thirdweb/extensions/lens";
103
+ * const result = decodeIsModuleRegisteredResult("...");
104
+ * ```
105
+ */
106
+ export function decodeIsModuleRegisteredResult(result: Hex) {
107
+ return decodeAbiParameters(FN_OUTPUTS, result)[0];
108
+ }
109
+
110
+ /**
111
+ * Calls the "isModuleRegistered" function on the contract.
112
+ * @param options - The options for the isModuleRegistered function.
113
+ * @returns The parsed result of the function call.
114
+ * @extension LENS
115
+ * @example
116
+ * ```ts
117
+ * import { isModuleRegistered } from "thirdweb/extensions/lens";
118
+ *
119
+ * const result = await isModuleRegistered({
120
+ * contract,
121
+ * moduleAddress: ...,
122
+ * });
123
+ *
124
+ * ```
125
+ */
126
+ export async function isModuleRegistered(
127
+ options: BaseTransactionOptions<IsModuleRegisteredParams>,
128
+ ) {
129
+ return readContract({
130
+ contract: options.contract,
131
+ method: [FN_SELECTOR, FN_INPUTS, FN_OUTPUTS] as const,
132
+ params: [options.moduleAddress],
133
+ });
134
+ }
@@ -0,0 +1,150 @@
1
+ import type { AbiParameterToPrimitiveType } from "abitype";
2
+ import { readContract } from "../../../../../transaction/read-contract.js";
3
+ import type { BaseTransactionOptions } from "../../../../../transaction/types.js";
4
+ import { encodeAbiParameters } from "../../../../../utils/abi/encodeAbiParameters.js";
5
+ import { decodeAbiParameters } from "viem";
6
+ import type { Hex } from "../../../../../utils/encoding/hex.js";
7
+ import type { ThirdwebContract } from "../../../../../contract/contract.js";
8
+ import { detectMethod } from "../../../../../utils/bytecode/detectExtension.js";
9
+
10
+ /**
11
+ * Represents the parameters for the "isModuleRegisteredAs" function.
12
+ */
13
+ export type IsModuleRegisteredAsParams = {
14
+ moduleAddress: AbiParameterToPrimitiveType<{
15
+ type: "address";
16
+ name: "moduleAddress";
17
+ }>;
18
+ moduleType: AbiParameterToPrimitiveType<{
19
+ type: "uint256";
20
+ name: "moduleType";
21
+ }>;
22
+ };
23
+
24
+ export const FN_SELECTOR = "0xc2b62fdd" as const;
25
+ const FN_INPUTS = [
26
+ {
27
+ type: "address",
28
+ name: "moduleAddress",
29
+ },
30
+ {
31
+ type: "uint256",
32
+ name: "moduleType",
33
+ },
34
+ ] as const;
35
+ const FN_OUTPUTS = [
36
+ {
37
+ type: "bool",
38
+ },
39
+ ] as const;
40
+
41
+ /**
42
+ * Checks if the `isModuleRegisteredAs` method is supported by the given contract.
43
+ * @param contract The ThirdwebContract.
44
+ * @returns A promise that resolves to a boolean indicating if the `isModuleRegisteredAs` method is supported.
45
+ * @extension LENS
46
+ * @example
47
+ * ```ts
48
+ * import { isIsModuleRegisteredAsSupported } from "thirdweb/extensions/lens";
49
+ *
50
+ * const supported = await isIsModuleRegisteredAsSupported(contract);
51
+ * ```
52
+ */
53
+ export async function isIsModuleRegisteredAsSupported(
54
+ contract: ThirdwebContract<any>,
55
+ ) {
56
+ return detectMethod({
57
+ contract,
58
+ method: [FN_SELECTOR, FN_INPUTS, FN_OUTPUTS] as const,
59
+ });
60
+ }
61
+
62
+ /**
63
+ * Encodes the parameters for the "isModuleRegisteredAs" function.
64
+ * @param options - The options for the isModuleRegisteredAs function.
65
+ * @returns The encoded ABI parameters.
66
+ * @extension LENS
67
+ * @example
68
+ * ```ts
69
+ * import { encodeIsModuleRegisteredAsParams } "thirdweb/extensions/lens";
70
+ * const result = encodeIsModuleRegisteredAsParams({
71
+ * moduleAddress: ...,
72
+ * moduleType: ...,
73
+ * });
74
+ * ```
75
+ */
76
+ export function encodeIsModuleRegisteredAsParams(
77
+ options: IsModuleRegisteredAsParams,
78
+ ) {
79
+ return encodeAbiParameters(FN_INPUTS, [
80
+ options.moduleAddress,
81
+ options.moduleType,
82
+ ]);
83
+ }
84
+
85
+ /**
86
+ * Encodes the "isModuleRegisteredAs" function into a Hex string with its parameters.
87
+ * @param options - The options for the isModuleRegisteredAs function.
88
+ * @returns The encoded hexadecimal string.
89
+ * @extension LENS
90
+ * @example
91
+ * ```ts
92
+ * import { encodeIsModuleRegisteredAs } "thirdweb/extensions/lens";
93
+ * const result = encodeIsModuleRegisteredAs({
94
+ * moduleAddress: ...,
95
+ * moduleType: ...,
96
+ * });
97
+ * ```
98
+ */
99
+ export function encodeIsModuleRegisteredAs(
100
+ options: IsModuleRegisteredAsParams,
101
+ ) {
102
+ // we do a "manual" concat here to avoid the overhead of the "concatHex" function
103
+ // we can do this because we know the specific formats of the values
104
+ return (FN_SELECTOR +
105
+ encodeIsModuleRegisteredAsParams(options).slice(
106
+ 2,
107
+ )) as `${typeof FN_SELECTOR}${string}`;
108
+ }
109
+
110
+ /**
111
+ * Decodes the result of the isModuleRegisteredAs function call.
112
+ * @param result - The hexadecimal result to decode.
113
+ * @returns The decoded result as per the FN_OUTPUTS definition.
114
+ * @extension LENS
115
+ * @example
116
+ * ```ts
117
+ * import { decodeIsModuleRegisteredAsResult } from "thirdweb/extensions/lens";
118
+ * const result = decodeIsModuleRegisteredAsResult("...");
119
+ * ```
120
+ */
121
+ export function decodeIsModuleRegisteredAsResult(result: Hex) {
122
+ return decodeAbiParameters(FN_OUTPUTS, result)[0];
123
+ }
124
+
125
+ /**
126
+ * Calls the "isModuleRegisteredAs" function on the contract.
127
+ * @param options - The options for the isModuleRegisteredAs function.
128
+ * @returns The parsed result of the function call.
129
+ * @extension LENS
130
+ * @example
131
+ * ```ts
132
+ * import { isModuleRegisteredAs } from "thirdweb/extensions/lens";
133
+ *
134
+ * const result = await isModuleRegisteredAs({
135
+ * contract,
136
+ * moduleAddress: ...,
137
+ * moduleType: ...,
138
+ * });
139
+ *
140
+ * ```
141
+ */
142
+ export async function isModuleRegisteredAs(
143
+ options: BaseTransactionOptions<IsModuleRegisteredAsParams>,
144
+ ) {
145
+ return readContract({
146
+ contract: options.contract,
147
+ method: [FN_SELECTOR, FN_INPUTS, FN_OUTPUTS] as const,
148
+ params: [options.moduleAddress, options.moduleType],
149
+ });
150
+ }
@@ -0,0 +1,132 @@
1
+ import type { AbiParameterToPrimitiveType } from "abitype";
2
+ import { readContract } from "../../../../../transaction/read-contract.js";
3
+ import type { BaseTransactionOptions } from "../../../../../transaction/types.js";
4
+ import { encodeAbiParameters } from "../../../../../utils/abi/encodeAbiParameters.js";
5
+ import { decodeAbiParameters } from "viem";
6
+ import type { Hex } from "../../../../../utils/encoding/hex.js";
7
+ import type { ThirdwebContract } from "../../../../../contract/contract.js";
8
+ import { detectMethod } from "../../../../../utils/bytecode/detectExtension.js";
9
+
10
+ /**
11
+ * Represents the parameters for the "getDefaultHandle" function.
12
+ */
13
+ export type GetDefaultHandleParams = {
14
+ profileId: AbiParameterToPrimitiveType<{
15
+ type: "uint256";
16
+ name: "profileId";
17
+ }>;
18
+ };
19
+
20
+ export const FN_SELECTOR = "0xe524488d" as const;
21
+ const FN_INPUTS = [
22
+ {
23
+ type: "uint256",
24
+ name: "profileId",
25
+ },
26
+ ] as const;
27
+ const FN_OUTPUTS = [
28
+ {
29
+ type: "uint256",
30
+ },
31
+ ] as const;
32
+
33
+ /**
34
+ * Checks if the `getDefaultHandle` method is supported by the given contract.
35
+ * @param contract The ThirdwebContract.
36
+ * @returns A promise that resolves to a boolean indicating if the `getDefaultHandle` method is supported.
37
+ * @extension LENS
38
+ * @example
39
+ * ```ts
40
+ * import { isGetDefaultHandleSupported } from "thirdweb/extensions/lens";
41
+ *
42
+ * const supported = await isGetDefaultHandleSupported(contract);
43
+ * ```
44
+ */
45
+ export async function isGetDefaultHandleSupported(
46
+ contract: ThirdwebContract<any>,
47
+ ) {
48
+ return detectMethod({
49
+ contract,
50
+ method: [FN_SELECTOR, FN_INPUTS, FN_OUTPUTS] as const,
51
+ });
52
+ }
53
+
54
+ /**
55
+ * Encodes the parameters for the "getDefaultHandle" function.
56
+ * @param options - The options for the getDefaultHandle function.
57
+ * @returns The encoded ABI parameters.
58
+ * @extension LENS
59
+ * @example
60
+ * ```ts
61
+ * import { encodeGetDefaultHandleParams } "thirdweb/extensions/lens";
62
+ * const result = encodeGetDefaultHandleParams({
63
+ * profileId: ...,
64
+ * });
65
+ * ```
66
+ */
67
+ export function encodeGetDefaultHandleParams(options: GetDefaultHandleParams) {
68
+ return encodeAbiParameters(FN_INPUTS, [options.profileId]);
69
+ }
70
+
71
+ /**
72
+ * Encodes the "getDefaultHandle" function into a Hex string with its parameters.
73
+ * @param options - The options for the getDefaultHandle function.
74
+ * @returns The encoded hexadecimal string.
75
+ * @extension LENS
76
+ * @example
77
+ * ```ts
78
+ * import { encodeGetDefaultHandle } "thirdweb/extensions/lens";
79
+ * const result = encodeGetDefaultHandle({
80
+ * profileId: ...,
81
+ * });
82
+ * ```
83
+ */
84
+ export function encodeGetDefaultHandle(options: GetDefaultHandleParams) {
85
+ // we do a "manual" concat here to avoid the overhead of the "concatHex" function
86
+ // we can do this because we know the specific formats of the values
87
+ return (FN_SELECTOR +
88
+ encodeGetDefaultHandleParams(options).slice(
89
+ 2,
90
+ )) as `${typeof FN_SELECTOR}${string}`;
91
+ }
92
+
93
+ /**
94
+ * Decodes the result of the getDefaultHandle function call.
95
+ * @param result - The hexadecimal result to decode.
96
+ * @returns The decoded result as per the FN_OUTPUTS definition.
97
+ * @extension LENS
98
+ * @example
99
+ * ```ts
100
+ * import { decodeGetDefaultHandleResult } from "thirdweb/extensions/lens";
101
+ * const result = decodeGetDefaultHandleResult("...");
102
+ * ```
103
+ */
104
+ export function decodeGetDefaultHandleResult(result: Hex) {
105
+ return decodeAbiParameters(FN_OUTPUTS, result)[0];
106
+ }
107
+
108
+ /**
109
+ * Calls the "getDefaultHandle" function on the contract.
110
+ * @param options - The options for the getDefaultHandle function.
111
+ * @returns The parsed result of the function call.
112
+ * @extension LENS
113
+ * @example
114
+ * ```ts
115
+ * import { getDefaultHandle } from "thirdweb/extensions/lens";
116
+ *
117
+ * const result = await getDefaultHandle({
118
+ * contract,
119
+ * profileId: ...,
120
+ * });
121
+ *
122
+ * ```
123
+ */
124
+ export async function getDefaultHandle(
125
+ options: BaseTransactionOptions<GetDefaultHandleParams>,
126
+ ) {
127
+ return readContract({
128
+ contract: options.contract,
129
+ method: [FN_SELECTOR, FN_INPUTS, FN_OUTPUTS] as const,
130
+ params: [options.profileId],
131
+ });
132
+ }
@@ -0,0 +1,124 @@
1
+ import type { AbiParameterToPrimitiveType } from "abitype";
2
+ import { readContract } from "../../../../../transaction/read-contract.js";
3
+ import type { BaseTransactionOptions } from "../../../../../transaction/types.js";
4
+ import { encodeAbiParameters } from "../../../../../utils/abi/encodeAbiParameters.js";
5
+ import { decodeAbiParameters } from "viem";
6
+ import type { Hex } from "../../../../../utils/encoding/hex.js";
7
+ import type { ThirdwebContract } from "../../../../../contract/contract.js";
8
+ import { detectMethod } from "../../../../../utils/bytecode/detectExtension.js";
9
+
10
+ /**
11
+ * Represents the parameters for the "nonces" function.
12
+ */
13
+ export type NoncesParams = {
14
+ signer: AbiParameterToPrimitiveType<{ type: "address"; name: "signer" }>;
15
+ };
16
+
17
+ export const FN_SELECTOR = "0x7ecebe00" as const;
18
+ const FN_INPUTS = [
19
+ {
20
+ type: "address",
21
+ name: "signer",
22
+ },
23
+ ] as const;
24
+ const FN_OUTPUTS = [
25
+ {
26
+ type: "uint256",
27
+ name: "nonce",
28
+ },
29
+ ] as const;
30
+
31
+ /**
32
+ * Checks if the `nonces` method is supported by the given contract.
33
+ * @param contract The ThirdwebContract.
34
+ * @returns A promise that resolves to a boolean indicating if the `nonces` method is supported.
35
+ * @extension LENS
36
+ * @example
37
+ * ```ts
38
+ * import { isNoncesSupported } from "thirdweb/extensions/lens";
39
+ *
40
+ * const supported = await isNoncesSupported(contract);
41
+ * ```
42
+ */
43
+ export async function isNoncesSupported(contract: ThirdwebContract<any>) {
44
+ return detectMethod({
45
+ contract,
46
+ method: [FN_SELECTOR, FN_INPUTS, FN_OUTPUTS] as const,
47
+ });
48
+ }
49
+
50
+ /**
51
+ * Encodes the parameters for the "nonces" function.
52
+ * @param options - The options for the nonces function.
53
+ * @returns The encoded ABI parameters.
54
+ * @extension LENS
55
+ * @example
56
+ * ```ts
57
+ * import { encodeNoncesParams } "thirdweb/extensions/lens";
58
+ * const result = encodeNoncesParams({
59
+ * signer: ...,
60
+ * });
61
+ * ```
62
+ */
63
+ export function encodeNoncesParams(options: NoncesParams) {
64
+ return encodeAbiParameters(FN_INPUTS, [options.signer]);
65
+ }
66
+
67
+ /**
68
+ * Encodes the "nonces" function into a Hex string with its parameters.
69
+ * @param options - The options for the nonces function.
70
+ * @returns The encoded hexadecimal string.
71
+ * @extension LENS
72
+ * @example
73
+ * ```ts
74
+ * import { encodeNonces } "thirdweb/extensions/lens";
75
+ * const result = encodeNonces({
76
+ * signer: ...,
77
+ * });
78
+ * ```
79
+ */
80
+ export function encodeNonces(options: NoncesParams) {
81
+ // we do a "manual" concat here to avoid the overhead of the "concatHex" function
82
+ // we can do this because we know the specific formats of the values
83
+ return (FN_SELECTOR +
84
+ encodeNoncesParams(options).slice(2)) as `${typeof FN_SELECTOR}${string}`;
85
+ }
86
+
87
+ /**
88
+ * Decodes the result of the nonces function call.
89
+ * @param result - The hexadecimal result to decode.
90
+ * @returns The decoded result as per the FN_OUTPUTS definition.
91
+ * @extension LENS
92
+ * @example
93
+ * ```ts
94
+ * import { decodeNoncesResult } from "thirdweb/extensions/lens";
95
+ * const result = decodeNoncesResult("...");
96
+ * ```
97
+ */
98
+ export function decodeNoncesResult(result: Hex) {
99
+ return decodeAbiParameters(FN_OUTPUTS, result)[0];
100
+ }
101
+
102
+ /**
103
+ * Calls the "nonces" function on the contract.
104
+ * @param options - The options for the nonces function.
105
+ * @returns The parsed result of the function call.
106
+ * @extension LENS
107
+ * @example
108
+ * ```ts
109
+ * import { nonces } from "thirdweb/extensions/lens";
110
+ *
111
+ * const result = await nonces({
112
+ * contract,
113
+ * signer: ...,
114
+ * });
115
+ *
116
+ * ```
117
+ */
118
+ export async function nonces(options: BaseTransactionOptions<NoncesParams>) {
119
+ return readContract({
120
+ contract: options.contract,
121
+ method: [FN_SELECTOR, FN_INPUTS, FN_OUTPUTS] as const,
122
+ params: [options.signer],
123
+ });
124
+ }