@towns-protocol/web3 0.0.191

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 (327) hide show
  1. package/LICENSE.txt +21 -0
  2. package/README.md +3 -0
  3. package/dist/ContractHelpers.d.ts +18 -0
  4. package/dist/ContractHelpers.d.ts.map +1 -0
  5. package/dist/ContractHelpers.js +75 -0
  6. package/dist/ContractHelpers.js.map +1 -0
  7. package/dist/ContractTypes.d.ts +143 -0
  8. package/dist/ContractTypes.d.ts.map +1 -0
  9. package/dist/ContractTypes.js +65 -0
  10. package/dist/ContractTypes.js.map +1 -0
  11. package/dist/ConvertersEntitlements.d.ts +10 -0
  12. package/dist/ConvertersEntitlements.d.ts.map +1 -0
  13. package/dist/ConvertersEntitlements.js +120 -0
  14. package/dist/ConvertersEntitlements.js.map +1 -0
  15. package/dist/ConvertersRoles.d.ts +8 -0
  16. package/dist/ConvertersRoles.d.ts.map +1 -0
  17. package/dist/ConvertersRoles.js +94 -0
  18. package/dist/ConvertersRoles.js.map +1 -0
  19. package/dist/DelegateRegistry.d.ts +3 -0
  20. package/dist/DelegateRegistry.d.ts.map +1 -0
  21. package/dist/DelegateRegistry.js +72 -0
  22. package/dist/DelegateRegistry.js.map +1 -0
  23. package/dist/EntitlementCache.d.ts +20 -0
  24. package/dist/EntitlementCache.d.ts.map +1 -0
  25. package/dist/EntitlementCache.js +41 -0
  26. package/dist/EntitlementCache.js.map +1 -0
  27. package/dist/EntitlementCache.test.d.ts +5 -0
  28. package/dist/EntitlementCache.test.d.ts.map +1 -0
  29. package/dist/EntitlementCache.test.js +130 -0
  30. package/dist/EntitlementCache.test.js.map +1 -0
  31. package/dist/ISpaceDapp.d.ts +193 -0
  32. package/dist/ISpaceDapp.d.ts.map +1 -0
  33. package/dist/ISpaceDapp.js +2 -0
  34. package/dist/ISpaceDapp.js.map +1 -0
  35. package/dist/IStaticContractsInfo.d.ts +28 -0
  36. package/dist/IStaticContractsInfo.d.ts.map +1 -0
  37. package/dist/IStaticContractsInfo.js +13 -0
  38. package/dist/IStaticContractsInfo.js.map +1 -0
  39. package/dist/LocalhostWeb3Provider.d.ts +15 -0
  40. package/dist/LocalhostWeb3Provider.d.ts.map +1 -0
  41. package/dist/LocalhostWeb3Provider.js +60 -0
  42. package/dist/LocalhostWeb3Provider.js.map +1 -0
  43. package/dist/MockCrossChainEntitlement.d.ts +6 -0
  44. package/dist/MockCrossChainEntitlement.d.ts.map +1 -0
  45. package/dist/MockCrossChainEntitlement.js +104 -0
  46. package/dist/MockCrossChainEntitlement.js.map +1 -0
  47. package/dist/MockERC1155.d.ts +6 -0
  48. package/dist/MockERC1155.d.ts.map +1 -0
  49. package/dist/MockERC1155.js +518 -0
  50. package/dist/MockERC1155.js.map +1 -0
  51. package/dist/MockERC20.d.ts +6 -0
  52. package/dist/MockERC20.d.ts.map +1 -0
  53. package/dist/MockERC20.js +574 -0
  54. package/dist/MockERC20.js.map +1 -0
  55. package/dist/MockERC721A.d.ts +1563 -0
  56. package/dist/MockERC721A.d.ts.map +1 -0
  57. package/dist/MockERC721A.js +1913 -0
  58. package/dist/MockERC721A.js.map +1 -0
  59. package/dist/RiverRegistryFactory.d.ts +5 -0
  60. package/dist/RiverRegistryFactory.d.ts.map +1 -0
  61. package/dist/RiverRegistryFactory.js +5 -0
  62. package/dist/RiverRegistryFactory.js.map +1 -0
  63. package/dist/SpaceDappFactory.d.ts +5 -0
  64. package/dist/SpaceDappFactory.d.ts.map +1 -0
  65. package/dist/SpaceDappFactory.js +8 -0
  66. package/dist/SpaceDappFactory.js.map +1 -0
  67. package/dist/TestCrossChainEntitlement.d.ts +14 -0
  68. package/dist/TestCrossChainEntitlement.d.ts.map +1 -0
  69. package/dist/TestCrossChainEntitlement.js +100 -0
  70. package/dist/TestCrossChainEntitlement.js.map +1 -0
  71. package/dist/TestEthBalance.d.ts +60 -0
  72. package/dist/TestEthBalance.d.ts.map +1 -0
  73. package/dist/TestEthBalance.js +94 -0
  74. package/dist/TestEthBalance.js.map +1 -0
  75. package/dist/TestGatingERC1155.d.ts +17 -0
  76. package/dist/TestGatingERC1155.d.ts.map +1 -0
  77. package/dist/TestGatingERC1155.js +101 -0
  78. package/dist/TestGatingERC1155.js.map +1 -0
  79. package/dist/TestGatingERC20.d.ts +17 -0
  80. package/dist/TestGatingERC20.d.ts.map +1 -0
  81. package/dist/TestGatingERC20.js +149 -0
  82. package/dist/TestGatingERC20.js.map +1 -0
  83. package/dist/TestGatingNFT.d.ts +17 -0
  84. package/dist/TestGatingNFT.d.ts.map +1 -0
  85. package/dist/TestGatingNFT.js +140 -0
  86. package/dist/TestGatingNFT.js.map +1 -0
  87. package/dist/TestGatingUtils.d.ts +15 -0
  88. package/dist/TestGatingUtils.d.ts.map +1 -0
  89. package/dist/TestGatingUtils.js +112 -0
  90. package/dist/TestGatingUtils.js.map +1 -0
  91. package/dist/Utils.d.ts +59 -0
  92. package/dist/Utils.d.ts.map +1 -0
  93. package/dist/Utils.js +122 -0
  94. package/dist/Utils.js.map +1 -0
  95. package/dist/Web3Constants.d.ts +6 -0
  96. package/dist/Web3Constants.d.ts.map +1 -0
  97. package/dist/Web3Constants.js +7 -0
  98. package/dist/Web3Constants.js.map +1 -0
  99. package/dist/Web3Constants.test.d.ts +2 -0
  100. package/dist/Web3Constants.test.d.ts.map +1 -0
  101. package/dist/Web3Constants.test.js +15 -0
  102. package/dist/Web3Constants.test.js.map +1 -0
  103. package/dist/chain.d.ts +65 -0
  104. package/dist/chain.d.ts.map +1 -0
  105. package/dist/chain.js +48 -0
  106. package/dist/chain.js.map +1 -0
  107. package/dist/entitlement.d.ts +146 -0
  108. package/dist/entitlement.d.ts.map +1 -0
  109. package/dist/entitlement.js +931 -0
  110. package/dist/entitlement.js.map +1 -0
  111. package/dist/entitlement.test.d.ts +2 -0
  112. package/dist/entitlement.test.d.ts.map +1 -0
  113. package/dist/entitlement.test.js +1743 -0
  114. package/dist/entitlement.test.js.map +1 -0
  115. package/dist/error-types.d.ts +7 -0
  116. package/dist/error-types.d.ts.map +1 -0
  117. package/dist/error-types.js +13 -0
  118. package/dist/error-types.js.map +1 -0
  119. package/dist/index.d.ts +76 -0
  120. package/dist/index.d.ts.map +1 -0
  121. package/dist/index.js +76 -0
  122. package/dist/index.js.map +1 -0
  123. package/dist/types.d.ts +29 -0
  124. package/dist/types.d.ts.map +1 -0
  125. package/dist/types.js +2 -0
  126. package/dist/types.js.map +1 -0
  127. package/dist/utils.test.d.ts +2 -0
  128. package/dist/utils.test.d.ts.map +1 -0
  129. package/dist/utils.test.js +44 -0
  130. package/dist/utils.test.js.map +1 -0
  131. package/dist/v3/BaseContractShim.d.ts +28 -0
  132. package/dist/v3/BaseContractShim.d.ts.map +1 -0
  133. package/dist/v3/BaseContractShim.js +185 -0
  134. package/dist/v3/BaseContractShim.js.map +1 -0
  135. package/dist/v3/BaseRegistry.d.ts +30 -0
  136. package/dist/v3/BaseRegistry.d.ts.map +1 -0
  137. package/dist/v3/BaseRegistry.js +64 -0
  138. package/dist/v3/BaseRegistry.js.map +1 -0
  139. package/dist/v3/EIP-712.d.ts +35 -0
  140. package/dist/v3/EIP-712.d.ts.map +1 -0
  141. package/dist/v3/EIP-712.js +57 -0
  142. package/dist/v3/EIP-712.js.map +1 -0
  143. package/dist/v3/IBanningShim.d.ts +7 -0
  144. package/dist/v3/IBanningShim.d.ts.map +1 -0
  145. package/dist/v3/IBanningShim.js +8 -0
  146. package/dist/v3/IBanningShim.js.map +1 -0
  147. package/dist/v3/IChannelShim.d.ts +8 -0
  148. package/dist/v3/IChannelShim.d.ts.map +1 -0
  149. package/dist/v3/IChannelShim.js +8 -0
  150. package/dist/v3/IChannelShim.js.map +1 -0
  151. package/dist/v3/ICreateSpaceShim.d.ts +9 -0
  152. package/dist/v3/ICreateSpaceShim.d.ts.map +1 -0
  153. package/dist/v3/ICreateSpaceShim.js +8 -0
  154. package/dist/v3/ICreateSpaceShim.js.map +1 -0
  155. package/dist/v3/IDropFacetShim.d.ts +7 -0
  156. package/dist/v3/IDropFacetShim.d.ts.map +1 -0
  157. package/dist/v3/IDropFacetShim.js +8 -0
  158. package/dist/v3/IDropFacetShim.js.map +1 -0
  159. package/dist/v3/IERC721AQueryableShim.d.ts +7 -0
  160. package/dist/v3/IERC721AQueryableShim.d.ts.map +1 -0
  161. package/dist/v3/IERC721AQueryableShim.js +8 -0
  162. package/dist/v3/IERC721AQueryableShim.js.map +1 -0
  163. package/dist/v3/IERC721AShim.d.ts +7 -0
  164. package/dist/v3/IERC721AShim.d.ts.map +1 -0
  165. package/dist/v3/IERC721AShim.js +8 -0
  166. package/dist/v3/IERC721AShim.js.map +1 -0
  167. package/dist/v3/IEntitlementCheckerShim.d.ts +7 -0
  168. package/dist/v3/IEntitlementCheckerShim.d.ts.map +1 -0
  169. package/dist/v3/IEntitlementCheckerShim.js +8 -0
  170. package/dist/v3/IEntitlementCheckerShim.js.map +1 -0
  171. package/dist/v3/IEntitlementDataQueryableShim.d.ts +8 -0
  172. package/dist/v3/IEntitlementDataQueryableShim.d.ts.map +1 -0
  173. package/dist/v3/IEntitlementDataQueryableShim.js +8 -0
  174. package/dist/v3/IEntitlementDataQueryableShim.js.map +1 -0
  175. package/dist/v3/IEntitlementsShim.d.ts +8 -0
  176. package/dist/v3/IEntitlementsShim.d.ts.map +1 -0
  177. package/dist/v3/IEntitlementsShim.js +8 -0
  178. package/dist/v3/IEntitlementsShim.js.map +1 -0
  179. package/dist/v3/ILegacySpaceArchitectShim.d.ts +8 -0
  180. package/dist/v3/ILegacySpaceArchitectShim.d.ts.map +1 -0
  181. package/dist/v3/ILegacySpaceArchitectShim.js +8 -0
  182. package/dist/v3/ILegacySpaceArchitectShim.js.map +1 -0
  183. package/dist/v3/IMembershipMetadataShim.d.ts +7 -0
  184. package/dist/v3/IMembershipMetadataShim.d.ts.map +1 -0
  185. package/dist/v3/IMembershipMetadataShim.js +8 -0
  186. package/dist/v3/IMembershipMetadataShim.js.map +1 -0
  187. package/dist/v3/IMembershipShim.d.ts +18 -0
  188. package/dist/v3/IMembershipShim.d.ts.map +1 -0
  189. package/dist/v3/IMembershipShim.js +73 -0
  190. package/dist/v3/IMembershipShim.js.map +1 -0
  191. package/dist/v3/IMulticallShim.d.ts +7 -0
  192. package/dist/v3/IMulticallShim.d.ts.map +1 -0
  193. package/dist/v3/IMulticallShim.js +8 -0
  194. package/dist/v3/IMulticallShim.js.map +1 -0
  195. package/dist/v3/INodeOperatorShim.d.ts +7 -0
  196. package/dist/v3/INodeOperatorShim.d.ts.map +1 -0
  197. package/dist/v3/INodeOperatorShim.js +8 -0
  198. package/dist/v3/INodeOperatorShim.js.map +1 -0
  199. package/dist/v3/INodeRegistryShim.d.ts +7 -0
  200. package/dist/v3/INodeRegistryShim.d.ts.map +1 -0
  201. package/dist/v3/INodeRegistryShim.js +8 -0
  202. package/dist/v3/INodeRegistryShim.js.map +1 -0
  203. package/dist/v3/IOperatorRegistryShim.d.ts +7 -0
  204. package/dist/v3/IOperatorRegistryShim.d.ts.map +1 -0
  205. package/dist/v3/IOperatorRegistryShim.js +8 -0
  206. package/dist/v3/IOperatorRegistryShim.js.map +1 -0
  207. package/dist/v3/IPrepayShim.d.ts +7 -0
  208. package/dist/v3/IPrepayShim.d.ts.map +1 -0
  209. package/dist/v3/IPrepayShim.js +8 -0
  210. package/dist/v3/IPrepayShim.js.map +1 -0
  211. package/dist/v3/IPricingShim.d.ts +8 -0
  212. package/dist/v3/IPricingShim.d.ts.map +1 -0
  213. package/dist/v3/IPricingShim.js +8 -0
  214. package/dist/v3/IPricingShim.js.map +1 -0
  215. package/dist/v3/IReviewShim.d.ts +61 -0
  216. package/dist/v3/IReviewShim.d.ts.map +1 -0
  217. package/dist/v3/IReviewShim.js +101 -0
  218. package/dist/v3/IReviewShim.js.map +1 -0
  219. package/dist/v3/IRiverPointsShim.d.ts +7 -0
  220. package/dist/v3/IRiverPointsShim.d.ts.map +1 -0
  221. package/dist/v3/IRiverPointsShim.js +8 -0
  222. package/dist/v3/IRiverPointsShim.js.map +1 -0
  223. package/dist/v3/IRolesShim.d.ts +8 -0
  224. package/dist/v3/IRolesShim.d.ts.map +1 -0
  225. package/dist/v3/IRolesShim.js +8 -0
  226. package/dist/v3/IRolesShim.js.map +1 -0
  227. package/dist/v3/IRuleEntitlementShim.d.ts +6 -0
  228. package/dist/v3/IRuleEntitlementShim.d.ts.map +1 -0
  229. package/dist/v3/IRuleEntitlementShim.js +3 -0
  230. package/dist/v3/IRuleEntitlementShim.js.map +1 -0
  231. package/dist/v3/IRuleEntitlementV2Shim.d.ts +6 -0
  232. package/dist/v3/IRuleEntitlementV2Shim.d.ts.map +1 -0
  233. package/dist/v3/IRuleEntitlementV2Shim.js +3 -0
  234. package/dist/v3/IRuleEntitlementV2Shim.js.map +1 -0
  235. package/dist/v3/ISpaceArchitectShim.d.ts +8 -0
  236. package/dist/v3/ISpaceArchitectShim.d.ts.map +1 -0
  237. package/dist/v3/ISpaceArchitectShim.js +38 -0
  238. package/dist/v3/ISpaceArchitectShim.js.map +1 -0
  239. package/dist/v3/ISpaceDelegationShim.d.ts +7 -0
  240. package/dist/v3/ISpaceDelegationShim.d.ts.map +1 -0
  241. package/dist/v3/ISpaceDelegationShim.js +8 -0
  242. package/dist/v3/ISpaceDelegationShim.js.map +1 -0
  243. package/dist/v3/ISpaceOwnerShim.d.ts +8 -0
  244. package/dist/v3/ISpaceOwnerShim.d.ts.map +1 -0
  245. package/dist/v3/ISpaceOwnerShim.js +8 -0
  246. package/dist/v3/ISpaceOwnerShim.js.map +1 -0
  247. package/dist/v3/IStreamRegistryShim.d.ts +7 -0
  248. package/dist/v3/IStreamRegistryShim.d.ts.map +1 -0
  249. package/dist/v3/IStreamRegistryShim.js +8 -0
  250. package/dist/v3/IStreamRegistryShim.js.map +1 -0
  251. package/dist/v3/ITippingShim.d.ts +20 -0
  252. package/dist/v3/ITippingShim.d.ts.map +1 -0
  253. package/dist/v3/ITippingShim.js +46 -0
  254. package/dist/v3/ITippingShim.js.map +1 -0
  255. package/dist/v3/ITreasuryShim.d.ts +7 -0
  256. package/dist/v3/ITreasuryShim.d.ts.map +1 -0
  257. package/dist/v3/ITreasuryShim.js +8 -0
  258. package/dist/v3/ITreasuryShim.js.map +1 -0
  259. package/dist/v3/MockERC721AShim.d.ts +7 -0
  260. package/dist/v3/MockERC721AShim.d.ts.map +1 -0
  261. package/dist/v3/MockERC721AShim.js +8 -0
  262. package/dist/v3/MockERC721AShim.js.map +1 -0
  263. package/dist/v3/OwnableFacetShim.d.ts +7 -0
  264. package/dist/v3/OwnableFacetShim.d.ts.map +1 -0
  265. package/dist/v3/OwnableFacetShim.js +8 -0
  266. package/dist/v3/OwnableFacetShim.js.map +1 -0
  267. package/dist/v3/PlatformRequirements.d.ts +10 -0
  268. package/dist/v3/PlatformRequirements.d.ts.map +1 -0
  269. package/dist/v3/PlatformRequirements.js +17 -0
  270. package/dist/v3/PlatformRequirements.js.map +1 -0
  271. package/dist/v3/PricingModules.d.ts +13 -0
  272. package/dist/v3/PricingModules.d.ts.map +1 -0
  273. package/dist/v3/PricingModules.js +23 -0
  274. package/dist/v3/PricingModules.js.map +1 -0
  275. package/dist/v3/RiverAirdropDapp.d.ts +16 -0
  276. package/dist/v3/RiverAirdropDapp.d.ts.map +1 -0
  277. package/dist/v3/RiverAirdropDapp.js +30 -0
  278. package/dist/v3/RiverAirdropDapp.js.map +1 -0
  279. package/dist/v3/RiverRegistry.d.ts +32 -0
  280. package/dist/v3/RiverRegistry.d.ts.map +1 -0
  281. package/dist/v3/RiverRegistry.js +96 -0
  282. package/dist/v3/RiverRegistry.js.map +1 -0
  283. package/dist/v3/RuleEntitlementShim.d.ts +11 -0
  284. package/dist/v3/RuleEntitlementShim.d.ts.map +1 -0
  285. package/dist/v3/RuleEntitlementShim.js +38 -0
  286. package/dist/v3/RuleEntitlementShim.js.map +1 -0
  287. package/dist/v3/RuleEntitlementV2Shim.d.ts +11 -0
  288. package/dist/v3/RuleEntitlementV2Shim.d.ts.map +1 -0
  289. package/dist/v3/RuleEntitlementV2Shim.js +38 -0
  290. package/dist/v3/RuleEntitlementV2Shim.js.map +1 -0
  291. package/dist/v3/Space.d.ts +97 -0
  292. package/dist/v3/Space.d.ts.map +1 -0
  293. package/dist/v3/Space.js +440 -0
  294. package/dist/v3/Space.js.map +1 -0
  295. package/dist/v3/SpaceDapp.d.ts +212 -0
  296. package/dist/v3/SpaceDapp.d.ts.map +1 -0
  297. package/dist/v3/SpaceDapp.js +1164 -0
  298. package/dist/v3/SpaceDapp.js.map +1 -0
  299. package/dist/v3/SpaceOwner.d.ts +13 -0
  300. package/dist/v3/SpaceOwner.d.ts.map +1 -0
  301. package/dist/v3/SpaceOwner.js +18 -0
  302. package/dist/v3/SpaceOwner.js.map +1 -0
  303. package/dist/v3/SpaceRegistrar.d.ts +25 -0
  304. package/dist/v3/SpaceRegistrar.d.ts.map +1 -0
  305. package/dist/v3/SpaceRegistrar.js +56 -0
  306. package/dist/v3/SpaceRegistrar.js.map +1 -0
  307. package/dist/v3/TokenPausableFacetShim.d.ts +7 -0
  308. package/dist/v3/TokenPausableFacetShim.d.ts.map +1 -0
  309. package/dist/v3/TokenPausableFacetShim.js +8 -0
  310. package/dist/v3/TokenPausableFacetShim.js.map +1 -0
  311. package/dist/v3/UserEntitlementShim.d.ts +11 -0
  312. package/dist/v3/UserEntitlementShim.d.ts.map +1 -0
  313. package/dist/v3/UserEntitlementShim.js +44 -0
  314. package/dist/v3/UserEntitlementShim.js.map +1 -0
  315. package/dist/v3/WalletLink.d.ts +50 -0
  316. package/dist/v3/WalletLink.d.ts.map +1 -0
  317. package/dist/v3/WalletLink.js +215 -0
  318. package/dist/v3/WalletLink.js.map +1 -0
  319. package/dist/v3/WalletLinkShim.d.ts +7 -0
  320. package/dist/v3/WalletLinkShim.d.ts.map +1 -0
  321. package/dist/v3/WalletLinkShim.js +8 -0
  322. package/dist/v3/WalletLinkShim.js.map +1 -0
  323. package/dist/v3/index.d.ts +24 -0
  324. package/dist/v3/index.d.ts.map +1 -0
  325. package/dist/v3/index.js +24 -0
  326. package/dist/v3/index.js.map +1 -0
  327. package/package.json +54 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SpaceDapp.js","sourceRoot":"","sources":["../../src/v3/SpaceDapp.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import { ethers } from 'ethers';
2
+ import { BaseChainConfig } from '../IStaticContractsInfo';
3
+ import { IERC721AShim } from './IERC721AShim';
4
+ import { ISpaceOwnerShim } from './ISpaceOwnerShim';
5
+ export declare class SpaceOwner {
6
+ readonly config: BaseChainConfig;
7
+ readonly provider: ethers.providers.Provider;
8
+ readonly spaceOwner: ISpaceOwnerShim;
9
+ readonly erc721A: IERC721AShim;
10
+ constructor(config: BaseChainConfig, provider: ethers.providers.Provider);
11
+ getNumTotalSpaces(): Promise<ethers.BigNumber>;
12
+ }
13
+ //# sourceMappingURL=SpaceOwner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SpaceOwner.d.ts","sourceRoot":"","sources":["../../src/v3/SpaceOwner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC/B,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAEnD,qBAAa,UAAU;IACnB,SAAgB,MAAM,EAAE,eAAe,CAAA;IACvC,SAAgB,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAA;IACnD,SAAgB,UAAU,EAAE,eAAe,CAAA;IAC3C,SAAgB,OAAO,EAAE,YAAY,CAAA;gBAEzB,MAAM,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ;IAO3D,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC;CAG9D"}
@@ -0,0 +1,18 @@
1
+ import { IERC721AShim } from './IERC721AShim';
2
+ import { ISpaceOwnerShim } from './ISpaceOwnerShim';
3
+ export class SpaceOwner {
4
+ config;
5
+ provider;
6
+ spaceOwner;
7
+ erc721A;
8
+ constructor(config, provider) {
9
+ this.config = config;
10
+ this.provider = provider;
11
+ this.spaceOwner = new ISpaceOwnerShim(this.config.addresses.spaceOwner, provider);
12
+ this.erc721A = new IERC721AShim(this.config.addresses.spaceOwner, provider);
13
+ }
14
+ async getNumTotalSpaces() {
15
+ return this.erc721A.read.totalSupply();
16
+ }
17
+ }
18
+ //# sourceMappingURL=SpaceOwner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SpaceOwner.js","sourceRoot":"","sources":["../../src/v3/SpaceOwner.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAEnD,MAAM,OAAO,UAAU;IACH,MAAM,CAAiB;IACvB,QAAQ,CAA2B;IACnC,UAAU,CAAiB;IAC3B,OAAO,CAAc;IAErC,YAAY,MAAuB,EAAE,QAAmC;QACpE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;QACxB,IAAI,CAAC,UAAU,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;QACjF,IAAI,CAAC,OAAO,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;IAC/E,CAAC;IAEM,KAAK,CAAC,iBAAiB;QAC1B,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,CAAA;IAC1C,CAAC;CACJ"}
@@ -0,0 +1,25 @@
1
+ import { BaseChainConfig } from '../IStaticContractsInfo';
2
+ import { ISpaceArchitectShim } from './ISpaceArchitectShim';
3
+ import { ILegacySpaceArchitectShim } from './ILegacySpaceArchitectShim';
4
+ import { ICreateSpaceShim } from './ICreateSpaceShim';
5
+ import { Space } from './Space';
6
+ import { ethers } from 'ethers';
7
+ /**
8
+ * A class to manage the creation of space stubs
9
+ * converts a space network id to space address and
10
+ * creates a space object with relevant addresses and data
11
+ */
12
+ export declare class SpaceRegistrar {
13
+ readonly config: BaseChainConfig;
14
+ private readonly provider;
15
+ private readonly spaceArchitect;
16
+ private readonly legacySpaceArchitect;
17
+ private readonly createSpace;
18
+ private readonly spaces;
19
+ constructor(config: BaseChainConfig, provider: ethers.providers.Provider);
20
+ get CreateSpace(): ICreateSpaceShim;
21
+ get SpaceArchitect(): ISpaceArchitectShim;
22
+ get LegacySpaceArchitect(): ILegacySpaceArchitectShim;
23
+ getSpace(spaceId: string): Space | undefined;
24
+ }
25
+ //# sourceMappingURL=SpaceRegistrar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SpaceRegistrar.d.ts","sourceRoot":"","sources":["../../src/v3/SpaceRegistrar.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAC3D,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAA;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAErD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAG/B;;;;GAIG;AACH,qBAAa,cAAc;IACvB,SAAgB,MAAM,EAAE,eAAe,CAAA;IACvC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA2B;IACpD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAqB;IACpD,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAA2B;IAChE,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAkB;IAC9C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAyB;gBAEpC,MAAM,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ;IAcxE,IAAW,WAAW,IAAI,gBAAgB,CAEzC;IAED,IAAW,cAAc,IAAI,mBAAmB,CAE/C;IAED,IAAW,oBAAoB,IAAI,yBAAyB,CAE3D;IAEM,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS;CAgBtD"}
@@ -0,0 +1,56 @@
1
+ import { SpaceAddressFromSpaceId } from '../Utils';
2
+ import { ISpaceArchitectShim } from './ISpaceArchitectShim';
3
+ import { ILegacySpaceArchitectShim } from './ILegacySpaceArchitectShim';
4
+ import { ICreateSpaceShim } from './ICreateSpaceShim';
5
+ import { Space } from './Space';
6
+ import { ethers } from 'ethers';
7
+ import { LRUCache } from 'lru-cache';
8
+ /**
9
+ * A class to manage the creation of space stubs
10
+ * converts a space network id to space address and
11
+ * creates a space object with relevant addresses and data
12
+ */
13
+ export class SpaceRegistrar {
14
+ config;
15
+ provider;
16
+ spaceArchitect;
17
+ legacySpaceArchitect;
18
+ createSpace;
19
+ spaces;
20
+ constructor(config, provider) {
21
+ this.spaces = new LRUCache({
22
+ max: 100,
23
+ });
24
+ this.config = config;
25
+ this.provider = provider;
26
+ this.spaceArchitect = new ISpaceArchitectShim(config.addresses.spaceFactory, provider);
27
+ this.legacySpaceArchitect = new ILegacySpaceArchitectShim(config.addresses.spaceFactory, provider);
28
+ this.createSpace = new ICreateSpaceShim(config.addresses.spaceFactory, provider);
29
+ }
30
+ get CreateSpace() {
31
+ return this.createSpace;
32
+ }
33
+ get SpaceArchitect() {
34
+ return this.spaceArchitect;
35
+ }
36
+ get LegacySpaceArchitect() {
37
+ return this.legacySpaceArchitect;
38
+ }
39
+ getSpace(spaceId) {
40
+ // aellis 10/2024 we don't really need to cache spaces, but they instantiate a lot of objects
41
+ // for the contracts and it's worth not wasting memory if we need to access the same space multiple times
42
+ // this code is also used on the server so we don't want to cache spaces for too long
43
+ const space = this.spaces.get(spaceId);
44
+ if (!space) {
45
+ const spaceAddress = SpaceAddressFromSpaceId(spaceId);
46
+ if (!spaceAddress || spaceAddress === ethers.constants.AddressZero) {
47
+ return undefined;
48
+ }
49
+ const space = new Space(spaceAddress, spaceId, this.config, this.provider);
50
+ this.spaces.set(spaceId, space);
51
+ return space;
52
+ }
53
+ return space;
54
+ }
55
+ }
56
+ //# sourceMappingURL=SpaceRegistrar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SpaceRegistrar.js","sourceRoot":"","sources":["../../src/v3/SpaceRegistrar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAA;AAElD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAC3D,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAA;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAErD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC/B,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAEpC;;;;GAIG;AACH,MAAM,OAAO,cAAc;IACP,MAAM,CAAiB;IACtB,QAAQ,CAA2B;IACnC,cAAc,CAAqB;IACnC,oBAAoB,CAA2B;IAC/C,WAAW,CAAkB;IAC7B,MAAM,CAAyB;IAEhD,YAAY,MAAuB,EAAE,QAAmC;QACpE,IAAI,CAAC,MAAM,GAAG,IAAI,QAAQ,CAAgB;YACtC,GAAG,EAAE,GAAG;SACX,CAAC,CAAA;QACF,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;QACxB,IAAI,CAAC,cAAc,GAAG,IAAI,mBAAmB,CAAC,MAAM,CAAC,SAAS,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAA;QACtF,IAAI,CAAC,oBAAoB,GAAG,IAAI,yBAAyB,CACrD,MAAM,CAAC,SAAS,CAAC,YAAY,EAC7B,QAAQ,CACX,CAAA;QACD,IAAI,CAAC,WAAW,GAAG,IAAI,gBAAgB,CAAC,MAAM,CAAC,SAAS,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAA;IACpF,CAAC;IAED,IAAW,WAAW;QAClB,OAAO,IAAI,CAAC,WAAW,CAAA;IAC3B,CAAC;IAED,IAAW,cAAc;QACrB,OAAO,IAAI,CAAC,cAAc,CAAA;IAC9B,CAAC;IAED,IAAW,oBAAoB;QAC3B,OAAO,IAAI,CAAC,oBAAoB,CAAA;IACpC,CAAC;IAEM,QAAQ,CAAC,OAAe;QAC3B,6FAA6F;QAC7F,yGAAyG;QACzG,qFAAqF;QACrF,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QACtC,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,MAAM,YAAY,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAA;YACrD,IAAI,CAAC,YAAY,IAAI,YAAY,KAAK,MAAM,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;gBACjE,OAAO,SAAS,CAAA;YACpB,CAAC;YACD,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,YAAY,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;YAC1E,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;YAC/B,OAAO,KAAK,CAAA;QAChB,CAAC;QACD,OAAO,KAAK,CAAA;IAChB,CAAC;CACJ"}
@@ -0,0 +1,7 @@
1
+ import { TokenPausableFacet as LocalhostContract, TokenPausableFacetInterface as LocalhostInterface } from '@towns-protocol/generated/dev/typings/TokenPausableFacet';
2
+ import { ethers } from 'ethers';
3
+ import { BaseContractShim } from './BaseContractShim';
4
+ export declare class TokenPausableFacetShim extends BaseContractShim<LocalhostContract, LocalhostInterface> {
5
+ constructor(address: string, provider: ethers.providers.Provider | undefined);
6
+ }
7
+ //# sourceMappingURL=TokenPausableFacetShim.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TokenPausableFacetShim.d.ts","sourceRoot":"","sources":["../../src/v3/TokenPausableFacetShim.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,kBAAkB,IAAI,iBAAiB,EACvC,2BAA2B,IAAI,kBAAkB,EACpD,MAAM,0DAA0D,CAAA;AAIjE,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAErD,qBAAa,sBAAuB,SAAQ,gBAAgB,CACxD,iBAAiB,EACjB,kBAAkB,CACrB;gBACe,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,GAAG,SAAS;CAG/E"}
@@ -0,0 +1,8 @@
1
+ import LocalhostAbi from '@towns-protocol/generated/dev/abis/TokenPausableFacet.abi.json' assert { type: 'json' };
2
+ import { BaseContractShim } from './BaseContractShim';
3
+ export class TokenPausableFacetShim extends BaseContractShim {
4
+ constructor(address, provider) {
5
+ super(address, provider, LocalhostAbi);
6
+ }
7
+ }
8
+ //# sourceMappingURL=TokenPausableFacetShim.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TokenPausableFacetShim.js","sourceRoot":"","sources":["../../src/v3/TokenPausableFacetShim.ts"],"names":[],"mappings":"AAKA,OAAO,YAAY,MAAM,gEAAgE,CAAC,SAAS,IAAI,EAAE,MAAM,EAAE,CAAA;AAGjH,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAErD,MAAM,OAAO,sBAAuB,SAAQ,gBAG3C;IACG,YAAY,OAAe,EAAE,QAA+C;QACxE,KAAK,CAAC,OAAO,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAA;IAC1C,CAAC;CACJ"}
@@ -0,0 +1,11 @@
1
+ import { UserEntitlement as LocalhostContract, UserEntitlementInterface as LocalhostInterface } from '@towns-protocol/generated/dev/typings/UserEntitlement';
2
+ import { BaseContractShim } from './BaseContractShim';
3
+ import { BigNumberish, ethers } from 'ethers';
4
+ import { EntitlementModuleType, EntitlementModule } from '../ContractTypes';
5
+ export declare class UserEntitlementShim extends BaseContractShim<LocalhostContract, LocalhostInterface> implements EntitlementModule {
6
+ constructor(address: string, provider: ethers.providers.Provider | undefined);
7
+ get moduleType(): EntitlementModuleType;
8
+ getRoleEntitlement(roleId: BigNumberish): Promise<string[]>;
9
+ decodeGetAddresses(entitlementData: string): string[] | undefined;
10
+ }
11
+ //# sourceMappingURL=UserEntitlementShim.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UserEntitlementShim.d.ts","sourceRoot":"","sources":["../../src/v3/UserEntitlementShim.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,eAAe,IAAI,iBAAiB,EACpC,wBAAwB,IAAI,kBAAkB,EACjD,MAAM,uDAAuD,CAAA;AAI9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE7C,OAAO,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAK3E,qBAAa,mBACT,SAAQ,gBAAgB,CAAC,iBAAiB,EAAE,kBAAkB,CAC9D,YAAW,iBAAiB;gBAEhB,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,GAAG,SAAS;IAI5E,IAAW,UAAU,IAAI,qBAAqB,CAE7C;IAEY,kBAAkB,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAcjE,kBAAkB,CAAC,eAAe,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS;CAe3E"}
@@ -0,0 +1,44 @@
1
+ import LocalhostAbi from '@towns-protocol/generated/dev/abis/UserEntitlement.abi.json' assert { type: 'json' };
2
+ import { BaseContractShim } from './BaseContractShim';
3
+ import { ethers } from 'ethers';
4
+ import { decodeUsers } from '../ConvertersEntitlements';
5
+ import { EntitlementModuleType } from '../ContractTypes';
6
+ import { dlogger } from '@towns-protocol/dlog';
7
+ const logger = dlogger('csb:UserEntitlementShim:debug');
8
+ export class UserEntitlementShim extends BaseContractShim {
9
+ constructor(address, provider) {
10
+ super(address, provider, LocalhostAbi);
11
+ }
12
+ get moduleType() {
13
+ return EntitlementModuleType.UserEntitlement;
14
+ }
15
+ async getRoleEntitlement(roleId) {
16
+ try {
17
+ const users = await this.read.getEntitlementDataByRoleId(roleId);
18
+ if (typeof users === 'string') {
19
+ return decodeUsers(users);
20
+ }
21
+ else {
22
+ return [];
23
+ }
24
+ }
25
+ catch (e) {
26
+ logger.error('Error getting role entitlement:', e);
27
+ throw e;
28
+ }
29
+ }
30
+ decodeGetAddresses(entitlementData) {
31
+ // where does this come from?
32
+ const abiDef = `[{"name":"getAddresses","outputs":[{"type":"address[]","name":"out"}],"constant":true,"payable":false,"type":"function"}]`;
33
+ const abi = new ethers.utils.Interface(abiDef);
34
+ try {
35
+ const decoded = abi.decodeFunctionResult('getAddresses', entitlementData);
36
+ return decoded.out;
37
+ }
38
+ catch (error) {
39
+ logger.error('RuleEntitlementShim Error decoding RuleDataStruct', error);
40
+ }
41
+ return;
42
+ }
43
+ }
44
+ //# sourceMappingURL=UserEntitlementShim.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UserEntitlementShim.js","sourceRoot":"","sources":["../../src/v3/UserEntitlementShim.ts"],"names":[],"mappings":"AAKA,OAAO,YAAY,MAAM,6DAA6D,CAAC,SAAS,IAAI,EAAE,MAAM,EAAE,CAAA;AAE9G,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,EAAgB,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AACvD,OAAO,EAAE,qBAAqB,EAAqB,MAAM,kBAAkB,CAAA;AAC3E,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AAE9C,MAAM,MAAM,GAAG,OAAO,CAAC,+BAA+B,CAAC,CAAA;AAEvD,MAAM,OAAO,mBACT,SAAQ,gBAAuD;IAG/D,YAAY,OAAe,EAAE,QAA+C;QACxE,KAAK,CAAC,OAAO,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAA;IAC1C,CAAC;IAED,IAAW,UAAU;QACjB,OAAO,qBAAqB,CAAC,eAAe,CAAA;IAChD,CAAC;IAEM,KAAK,CAAC,kBAAkB,CAAC,MAAoB;QAChD,IAAI,CAAC;YACD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAA;YAChE,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC5B,OAAO,WAAW,CAAC,KAAK,CAAC,CAAA;YAC7B,CAAC;iBAAM,CAAC;gBACJ,OAAO,EAAE,CAAA;YACb,CAAC;QACL,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,MAAM,CAAC,KAAK,CAAC,iCAAiC,EAAE,CAAC,CAAC,CAAA;YAClD,MAAM,CAAC,CAAA;QACX,CAAC;IACL,CAAC;IAEM,kBAAkB,CAAC,eAAuB;QAC7C,6BAA6B;QAC7B,MAAM,MAAM,GAAG,2HAA2H,CAAA;QAC1I,MAAM,GAAG,GAAG,IAAI,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;QAC9C,IAAI,CAAC;YACD,MAAM,OAAO,GAAG,GAAG,CAAC,oBAAoB,CACpC,cAAc,EACd,eAAe,CACc,CAAA;YACjC,OAAO,OAAO,CAAC,GAAG,CAAA;QACtB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,CAAC,KAAK,CAAC,mDAAmD,EAAE,KAAK,CAAC,CAAA;QAC5E,CAAC;QACD,OAAM;IACV,CAAC;CACJ"}
@@ -0,0 +1,50 @@
1
+ import { ContractTransaction, ethers } from 'ethers';
2
+ import { Address } from '../ContractTypes';
3
+ import { BaseChainConfig } from '../IStaticContractsInfo';
4
+ export declare const INVALID_ADDRESS = "0x0000000000000000000000000000000000000000";
5
+ export declare class WalletLink {
6
+ private readonly LINKED_WALLET_MESSAGE;
7
+ private readonly walletLinkShim;
8
+ private readonly eip712Domain;
9
+ address: Address;
10
+ constructor(config: BaseChainConfig, provider: ethers.providers.Provider | undefined);
11
+ isLinked(walletAddress: string): Promise<boolean>;
12
+ private assertNotLinked;
13
+ private assertLinked;
14
+ private generateRootKeySignatureForWallet;
15
+ private generateWalletSignatureForRootKey;
16
+ private generateRootKeySignatureForCallerData;
17
+ private generateLinkCallerData;
18
+ private generateLinkWalletData;
19
+ /**
20
+ * Link a wallet to the root key with the wallet as the caller
21
+ * @param rootKey
22
+ * @param wallet
23
+ */
24
+ linkCallerToRootKey(rootKey: ethers.Signer, wallet: ethers.Signer): Promise<ContractTransaction>;
25
+ /**
26
+ * Link a wallet to the root key with the root key as the caller
27
+ *
28
+ * @param wallet
29
+ * @param rootKey
30
+ * @returns
31
+ */
32
+ linkWalletToRootKey(rootKey: ethers.Signer, wallet: ethers.Signer): Promise<ContractTransaction>;
33
+ encodeLinkCallerToRootKey(rootKey: ethers.Signer, wallet: Address): Promise<string>;
34
+ encodeLinkWalletToRootKey(rootKey: ethers.Signer, wallet: ethers.Signer): Promise<string>;
35
+ parseError(error: any): Error;
36
+ getLinkedWallets(rootKey: string): Promise<string[]>;
37
+ getLinkedWalletsWithDelegations(rootKey: string): Promise<string[]>;
38
+ getRootKeyForWallet(wallet: string): Promise<string>;
39
+ checkIfLinked(rootKey: ethers.Signer, wallet: string): Promise<boolean>;
40
+ private generateRemoveLinkData;
41
+ removeLink(rootKey: ethers.Signer, walletAddress: string): Promise<ContractTransaction>;
42
+ /**
43
+ * Remove link from this caller to a root key
44
+ */
45
+ removeCallerLink(caller: ethers.Signer): Promise<ContractTransaction>;
46
+ encodeRemoveLink(rootKey: ethers.Signer, walletAddress: string): Promise<string>;
47
+ private signTypedData;
48
+ getInterface(): import("@towns-protocol/generated/dev/typings/IWalletLink").IWalletLinkInterface;
49
+ }
50
+ //# sourceMappingURL=WalletLink.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WalletLink.d.ts","sourceRoot":"","sources":["../../src/v3/WalletLink.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,mBAAmB,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAG/D,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAIzD,eAAO,MAAM,eAAe,+CAA+C,CAAA;AAE3E,qBAAa,UAAU;IACnB,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAA8B;IACpE,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAiB;IAChD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAwB;IAC9C,OAAO,EAAE,OAAO,CAAA;gBAEX,MAAM,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,GAAG,SAAS;IAWvE,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;YAMhD,eAAe;YAUf,YAAY;IAO1B,OAAO,CAAC,iCAAiC;IAkBzC,OAAO,CAAC,iCAAiC;IAkBzC,OAAO,CAAC,qCAAqC;YAkB/B,sBAAsB;YAwBtB,sBAAsB;IAuCpC;;;;OAIG;IACU,mBAAmB,CAC5B,OAAO,EAAE,MAAM,CAAC,MAAM,EACtB,MAAM,EAAE,MAAM,CAAC,MAAM,GACtB,OAAO,CAAC,mBAAmB,CAAC;IAW/B;;;;;;OAMG;IACU,mBAAmB,CAC5B,OAAO,EAAE,MAAM,CAAC,MAAM,EACtB,MAAM,EAAE,MAAM,CAAC,MAAM,GACtB,OAAO,CAAC,mBAAmB,CAAC;IAYlB,yBAAyB,CAClC,OAAO,EAAE,MAAM,CAAC,MAAM,EACtB,MAAM,EAAE,OAAO,GAChB,OAAO,CAAC,MAAM,CAAC;IAaL,yBAAyB,CAClC,OAAO,EAAE,MAAM,CAAC,MAAM,EACtB,MAAM,EAAE,MAAM,CAAC,MAAM,GACtB,OAAO,CAAC,MAAM,CAAC;IAcX,UAAU,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK;IAIvB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAIpD,+BAA+B,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAIzE,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAI9C,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;YAKtE,sBAAsB;IAcvB,UAAU,CACnB,OAAO,EAAE,MAAM,CAAC,MAAM,EACtB,aAAa,EAAE,MAAM,GACtB,OAAO,CAAC,mBAAmB,CAAC;IAiB/B;;OAEG;IACU,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM;IAItC,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,EAAE,MAAM;YAiB7D,aAAa;IAcpB,YAAY;CAGtB"}
@@ -0,0 +1,215 @@
1
+ import { WalletAlreadyLinkedError, WalletNotLinkedError } from '../error-types';
2
+ import { IWalletLinkShim } from './WalletLinkShim';
3
+ import { createEip712LinkedWalletdData } from './EIP-712';
4
+ export const INVALID_ADDRESS = '0x0000000000000000000000000000000000000000';
5
+ export class WalletLink {
6
+ LINKED_WALLET_MESSAGE = 'Link your external wallet';
7
+ walletLinkShim;
8
+ eip712Domain;
9
+ address;
10
+ constructor(config, provider) {
11
+ this.walletLinkShim = new IWalletLinkShim(config.addresses.spaceFactory, provider);
12
+ this.address = config.addresses.spaceFactory;
13
+ this.eip712Domain = {
14
+ name: 'SpaceFactory',
15
+ version: '1',
16
+ chainId: config.chainId,
17
+ verifyingContract: config.addresses.spaceFactory,
18
+ };
19
+ }
20
+ async isLinked(walletAddress) {
21
+ const rootKeyAddress = await this.walletLinkShim.read.getRootKeyForWallet(walletAddress);
22
+ return rootKeyAddress !== INVALID_ADDRESS;
23
+ }
24
+ async assertNotLinked(wallet) {
25
+ const walletAddress = typeof wallet === 'string' ? wallet : await wallet.getAddress();
26
+ if (await this.isLinked(walletAddress)) {
27
+ throw new WalletAlreadyLinkedError();
28
+ }
29
+ return { walletAddress };
30
+ }
31
+ async assertLinked(walletAddress) {
32
+ if (!(await this.isLinked(walletAddress))) {
33
+ throw new WalletNotLinkedError();
34
+ }
35
+ return { walletAddress };
36
+ }
37
+ generateRootKeySignatureForWallet({ rootKey, walletAddress, rootKeyNonce, }) {
38
+ const { domain, types, value } = createEip712LinkedWalletdData({
39
+ domain: this.eip712Domain,
40
+ message: this.LINKED_WALLET_MESSAGE,
41
+ nonce: rootKeyNonce,
42
+ userID: walletAddress,
43
+ });
44
+ return this.signTypedData(rootKey, domain, types, value);
45
+ }
46
+ generateWalletSignatureForRootKey({ wallet, rootKeyAddress, nonce: rootKeyNonce, }) {
47
+ const { domain, types, value } = createEip712LinkedWalletdData({
48
+ domain: this.eip712Domain,
49
+ message: this.LINKED_WALLET_MESSAGE,
50
+ nonce: rootKeyNonce,
51
+ userID: rootKeyAddress,
52
+ });
53
+ return this.signTypedData(wallet, domain, types, value);
54
+ }
55
+ generateRootKeySignatureForCallerData({ rootKey, walletAddress, rootKeyNonce, }) {
56
+ const { domain, types, value } = createEip712LinkedWalletdData({
57
+ domain: this.eip712Domain,
58
+ message: this.LINKED_WALLET_MESSAGE,
59
+ nonce: rootKeyNonce,
60
+ userID: walletAddress,
61
+ });
62
+ return this.signTypedData(rootKey, domain, types, value);
63
+ }
64
+ async generateLinkCallerData(message, rootKey, wallet) {
65
+ const { walletAddress } = await this.assertNotLinked(wallet);
66
+ const rootKeyAddress = await rootKey.getAddress();
67
+ const nonce = await this.walletLinkShim.read.getLatestNonceForRootKey(rootKeyAddress);
68
+ const rootKeySignature = await this.generateRootKeySignatureForCallerData({
69
+ rootKey,
70
+ walletAddress: walletAddress,
71
+ rootKeyNonce: nonce,
72
+ });
73
+ const rootKeyData = {
74
+ addr: rootKeyAddress,
75
+ signature: rootKeySignature,
76
+ message,
77
+ };
78
+ return { rootKeyData, nonce };
79
+ }
80
+ async generateLinkWalletData(message, rootKey, wallet) {
81
+ const { walletAddress } = await this.assertNotLinked(wallet);
82
+ const rootKeyAddress = await rootKey.getAddress();
83
+ const nonce = await this.walletLinkShim.read.getLatestNonceForRootKey(rootKeyAddress);
84
+ // sign root key with new wallet address
85
+ const rootKeySignature = await this.generateRootKeySignatureForWallet({
86
+ rootKey,
87
+ walletAddress: walletAddress,
88
+ rootKeyNonce: nonce,
89
+ });
90
+ // sign new wallet with root key address
91
+ const walletSignature = await this.generateWalletSignatureForRootKey({
92
+ wallet,
93
+ rootKeyAddress: rootKeyAddress,
94
+ nonce,
95
+ });
96
+ const rootKeyData = {
97
+ addr: rootKeyAddress,
98
+ signature: rootKeySignature,
99
+ message,
100
+ };
101
+ const walletData = {
102
+ addr: walletAddress,
103
+ signature: walletSignature,
104
+ message,
105
+ };
106
+ return { rootKeyData, walletData, nonce };
107
+ }
108
+ /**
109
+ * Link a wallet to the root key with the wallet as the caller
110
+ * @param rootKey
111
+ * @param wallet
112
+ */
113
+ async linkCallerToRootKey(rootKey, wallet) {
114
+ const { rootKeyData, nonce } = await this.generateLinkCallerData(this.LINKED_WALLET_MESSAGE, rootKey, wallet);
115
+ // msg.sender = new wallet
116
+ return this.walletLinkShim.write(wallet).linkCallerToRootKey(rootKeyData, nonce);
117
+ }
118
+ /**
119
+ * Link a wallet to the root key with the root key as the caller
120
+ *
121
+ * @param wallet
122
+ * @param rootKey
123
+ * @returns
124
+ */
125
+ async linkWalletToRootKey(rootKey, wallet) {
126
+ const { walletData, rootKeyData, nonce } = await this.generateLinkWalletData(this.LINKED_WALLET_MESSAGE, rootKey, wallet);
127
+ // msg.sender = root key
128
+ return this.walletLinkShim
129
+ .write(rootKey)
130
+ .linkWalletToRootKey(walletData, rootKeyData, nonce);
131
+ }
132
+ async encodeLinkCallerToRootKey(rootKey, wallet) {
133
+ const { rootKeyData, nonce } = await this.generateLinkCallerData(this.LINKED_WALLET_MESSAGE, rootKey, wallet);
134
+ return this.walletLinkShim.interface.encodeFunctionData('linkCallerToRootKey', [
135
+ rootKeyData,
136
+ nonce,
137
+ ]);
138
+ }
139
+ async encodeLinkWalletToRootKey(rootKey, wallet) {
140
+ const { walletData, rootKeyData, nonce } = await this.generateLinkWalletData(this.LINKED_WALLET_MESSAGE, rootKey, wallet);
141
+ return this.walletLinkShim.interface.encodeFunctionData('linkWalletToRootKey', [
142
+ walletData,
143
+ rootKeyData,
144
+ nonce,
145
+ ]);
146
+ }
147
+ parseError(error) {
148
+ return this.walletLinkShim.parseError(error);
149
+ }
150
+ async getLinkedWallets(rootKey) {
151
+ return this.walletLinkShim.read.getWalletsByRootKey(rootKey);
152
+ }
153
+ async getLinkedWalletsWithDelegations(rootKey) {
154
+ return this.walletLinkShim.read.getWalletsByRootKeyWithDelegations(rootKey);
155
+ }
156
+ getRootKeyForWallet(wallet) {
157
+ return this.walletLinkShim.read.getRootKeyForWallet(wallet);
158
+ }
159
+ async checkIfLinked(rootKey, wallet) {
160
+ const rootKeyAddress = await rootKey.getAddress();
161
+ return this.walletLinkShim.read.checkIfLinked(rootKeyAddress, wallet);
162
+ }
163
+ async generateRemoveLinkData(rootKey, walletAddress) {
164
+ await this.assertLinked(walletAddress);
165
+ const rootKeyAddress = await rootKey.getAddress();
166
+ const nonce = await this.walletLinkShim.read.getLatestNonceForRootKey(rootKeyAddress);
167
+ const { domain, types, value } = createEip712LinkedWalletdData({
168
+ domain: this.eip712Domain,
169
+ message: this.LINKED_WALLET_MESSAGE,
170
+ nonce,
171
+ userID: walletAddress,
172
+ });
173
+ const rootKeySignature = await this.signTypedData(rootKey, domain, types, value);
174
+ return { rootKeyAddress, rootKeySignature, nonce };
175
+ }
176
+ async removeLink(rootKey, walletAddress) {
177
+ const { rootKeyAddress, rootKeySignature, nonce } = await this.generateRemoveLinkData(rootKey, walletAddress);
178
+ return await this.walletLinkShim.write(rootKey).removeLink(walletAddress, {
179
+ addr: rootKeyAddress,
180
+ signature: rootKeySignature,
181
+ message: this.LINKED_WALLET_MESSAGE,
182
+ }, nonce);
183
+ }
184
+ /**
185
+ * Remove link from this caller to a root key
186
+ */
187
+ async removeCallerLink(caller) {
188
+ return this.walletLinkShim.write(caller).removeCallerLink();
189
+ }
190
+ async encodeRemoveLink(rootKey, walletAddress) {
191
+ const { rootKeyAddress, rootKeySignature, nonce } = await this.generateRemoveLinkData(rootKey, walletAddress);
192
+ return this.walletLinkShim.interface.encodeFunctionData('removeLink', [
193
+ walletAddress,
194
+ {
195
+ addr: rootKeyAddress,
196
+ signature: rootKeySignature,
197
+ message: this.LINKED_WALLET_MESSAGE,
198
+ },
199
+ nonce,
200
+ ]);
201
+ }
202
+ async signTypedData(signer, domain, types, value) {
203
+ if ('_signTypedData' in signer && typeof signer._signTypedData === 'function') {
204
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-call
205
+ return (await signer._signTypedData(domain, types, value));
206
+ }
207
+ else {
208
+ throw new Error('wallet does not have the function to sign typed data');
209
+ }
210
+ }
211
+ getInterface() {
212
+ return this.walletLinkShim.interface;
213
+ }
214
+ }
215
+ //# sourceMappingURL=WalletLink.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WalletLink.js","sourceRoot":"","sources":["../../src/v3/WalletLink.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { IWalletLink as LocalhostContract, IWalletLinkInterface as LocalhostInterface } from '@towns-protocol/generated/dev/typings/IWalletLink';
2
+ import { ethers } from 'ethers';
3
+ import { BaseContractShim } from './BaseContractShim';
4
+ export declare class IWalletLinkShim extends BaseContractShim<LocalhostContract, LocalhostInterface> {
5
+ constructor(address: string, provider: ethers.providers.Provider | undefined);
6
+ }
7
+ //# sourceMappingURL=WalletLinkShim.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WalletLinkShim.d.ts","sourceRoot":"","sources":["../../src/v3/WalletLinkShim.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,WAAW,IAAI,iBAAiB,EAChC,oBAAoB,IAAI,kBAAkB,EAC7C,MAAM,mDAAmD,CAAA;AAI1D,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAErD,qBAAa,eAAgB,SAAQ,gBAAgB,CAAC,iBAAiB,EAAE,kBAAkB,CAAC;gBAC5E,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,GAAG,SAAS;CAG/E"}