@towns-labs/sdk 2.0.12 → 2.1.0

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 (436) hide show
  1. package/dist/client.d.ts +11 -31
  2. package/dist/client.d.ts.map +1 -1
  3. package/dist/client.js +68 -327
  4. package/dist/client.js.map +1 -1
  5. package/dist/clientDecryptionExtensions.d.ts.map +1 -1
  6. package/dist/clientDecryptionExtensions.js +10 -28
  7. package/dist/clientDecryptionExtensions.js.map +1 -1
  8. package/dist/createApp.d.ts +1 -1
  9. package/dist/createApp.d.ts.map +1 -1
  10. package/dist/createApp.js +6 -2
  11. package/dist/createApp.js.map +1 -1
  12. package/dist/id.d.ts +1 -17
  13. package/dist/id.d.ts.map +1 -1
  14. package/dist/id.js +1 -53
  15. package/dist/id.js.map +1 -1
  16. package/dist/index.d.ts +0 -20
  17. package/dist/index.d.ts.map +1 -1
  18. package/dist/index.js +0 -20
  19. package/dist/index.js.map +1 -1
  20. package/dist/migrations/snapshotMigration0001.d.ts.map +1 -1
  21. package/dist/migrations/snapshotMigration0001.js +0 -4
  22. package/dist/migrations/snapshotMigration0001.js.map +1 -1
  23. package/dist/migrations/snapshotMigration0002.d.ts.map +1 -1
  24. package/dist/migrations/snapshotMigration0002.js +1 -19
  25. package/dist/migrations/snapshotMigration0002.js.map +1 -1
  26. package/dist/migrations/snapshotMigration0004.d.ts.map +1 -1
  27. package/dist/migrations/snapshotMigration0004.js +1 -27
  28. package/dist/migrations/snapshotMigration0004.js.map +1 -1
  29. package/dist/migrations/snapshotMigration0005.d.ts.map +1 -1
  30. package/dist/migrations/snapshotMigration0005.js +1 -26
  31. package/dist/migrations/snapshotMigration0005.js.map +1 -1
  32. package/dist/notificationsClient.d.ts +1 -5
  33. package/dist/notificationsClient.d.ts.map +1 -1
  34. package/dist/notificationsClient.js +2 -103
  35. package/dist/notificationsClient.js.map +1 -1
  36. package/dist/persistenceStore.d.ts.map +1 -1
  37. package/dist/persistenceStore.js +6 -18
  38. package/dist/persistenceStore.js.map +1 -1
  39. package/dist/streamEvents.d.ts +0 -6
  40. package/dist/streamEvents.d.ts.map +1 -1
  41. package/dist/streamStateView.d.ts +0 -9
  42. package/dist/streamStateView.d.ts.map +1 -1
  43. package/dist/streamStateView.js +3 -64
  44. package/dist/streamStateView.js.map +1 -1
  45. package/dist/streamStateView_MemberMetadata.d.ts +3 -36
  46. package/dist/streamStateView_MemberMetadata.d.ts.map +1 -1
  47. package/dist/streamStateView_MemberMetadata.js +3 -83
  48. package/dist/streamStateView_MemberMetadata.js.map +1 -1
  49. package/dist/streamStateView_Members.d.ts +1 -5
  50. package/dist/streamStateView_Members.d.ts.map +1 -1
  51. package/dist/streamStateView_Members.js +4 -91
  52. package/dist/streamStateView_Members.js.map +1 -1
  53. package/dist/streamUtils.d.ts.map +1 -1
  54. package/dist/streamUtils.js +0 -8
  55. package/dist/streamUtils.js.map +1 -1
  56. package/dist/sync/SyncedStreamsControllerLite.d.ts.map +1 -1
  57. package/dist/sync/SyncedStreamsControllerLite.js +7 -11
  58. package/dist/sync/SyncedStreamsControllerLite.js.map +1 -1
  59. package/dist/sync-agent/db.d.ts +13 -0
  60. package/dist/sync-agent/db.d.ts.map +1 -0
  61. package/dist/sync-agent/db.js +24 -0
  62. package/dist/sync-agent/db.js.map +1 -0
  63. package/dist/sync-agent/gdms/models/gdm.d.ts +3 -3
  64. package/dist/sync-agent/gdms/models/gdm.d.ts.map +1 -1
  65. package/dist/sync-agent/river-connection/riverConnection.d.ts +1 -6
  66. package/dist/sync-agent/river-connection/riverConnection.d.ts.map +1 -1
  67. package/dist/sync-agent/river-connection/riverConnection.js +3 -8
  68. package/dist/sync-agent/river-connection/riverConnection.js.map +1 -1
  69. package/dist/sync-agent/syncAgent.d.ts +0 -6
  70. package/dist/sync-agent/syncAgent.d.ts.map +1 -1
  71. package/dist/sync-agent/syncAgent.js +0 -8
  72. package/dist/sync-agent/syncAgent.js.map +1 -1
  73. package/dist/syncedStreamsExtension.d.ts.map +1 -1
  74. package/dist/syncedStreamsExtension.js +10 -22
  75. package/dist/syncedStreamsExtension.js.map +1 -1
  76. package/dist/syncedStreamsLoop.d.ts.map +1 -1
  77. package/dist/syncedStreamsLoop.js +4 -18
  78. package/dist/syncedStreamsLoop.js.map +1 -1
  79. package/dist/tests/bob_testUtils.d.ts.map +1 -1
  80. package/dist/tests/bob_testUtils.js +35 -69
  81. package/dist/tests/bob_testUtils.js.map +1 -1
  82. package/dist/tests/multi_ne/aliceAndFriends10for10.test.js +1 -1
  83. package/dist/tests/multi_ne/aliceAndFriends10for10.test.js.map +1 -1
  84. package/dist/tests/multi_ne/aliceAndFriendslongAndRandom.test.js +1 -1
  85. package/dist/tests/multi_ne/aliceAndFriendslongAndRandom.test.js.map +1 -1
  86. package/dist/tests/multi_ne/bobFlushes.test.js.map +1 -1
  87. package/dist/tests/multi_ne/channels.test.js +6 -9
  88. package/dist/tests/multi_ne/channels.test.js.map +1 -1
  89. package/dist/tests/multi_ne/client.test.js +24 -98
  90. package/dist/tests/multi_ne/client.test.js.map +1 -1
  91. package/dist/tests/multi_ne/clientCrypto.test.js +3 -3
  92. package/dist/tests/multi_ne/clientCrypto.test.js.map +1 -1
  93. package/dist/tests/multi_ne/clientDecryptionExtensions.test.js +12 -47
  94. package/dist/tests/multi_ne/clientDecryptionExtensions.test.js.map +1 -1
  95. package/dist/tests/multi_ne/ephemeralEvents.test.js +1 -1
  96. package/dist/tests/multi_ne/ephemeralEvents.test.js.map +1 -1
  97. package/dist/tests/multi_ne/id.test.js +6 -20
  98. package/dist/tests/multi_ne/id.test.js.map +1 -1
  99. package/dist/tests/multi_ne/media.test.js +20 -61
  100. package/dist/tests/multi_ne/media.test.js.map +1 -1
  101. package/dist/tests/multi_ne/memberMetadata.test.d.ts +0 -3
  102. package/dist/tests/multi_ne/memberMetadata.test.d.ts.map +1 -1
  103. package/dist/tests/multi_ne/memberMetadata.test.js +14 -582
  104. package/dist/tests/multi_ne/memberMetadata.test.js.map +1 -1
  105. package/dist/tests/multi_ne/outboundGroupSession.test.js +15 -13
  106. package/dist/tests/multi_ne/outboundGroupSession.test.js.map +1 -1
  107. package/dist/tests/multi_ne/restart.test.js +11 -34
  108. package/dist/tests/multi_ne/restart.test.js.map +1 -1
  109. package/dist/tests/multi_ne/sign.test.js +2 -2
  110. package/dist/tests/multi_ne/sign.test.js.map +1 -1
  111. package/dist/tests/multi_ne/streamMembershipHardening.test.js +0 -3
  112. package/dist/tests/multi_ne/streamMembershipHardening.test.js.map +1 -1
  113. package/dist/tests/multi_ne/streamRpcClient.test.js +58 -349
  114. package/dist/tests/multi_ne/streamRpcClient.test.js.map +1 -1
  115. package/dist/tests/multi_ne/streamRpcClientSync.test.js +63 -124
  116. package/dist/tests/multi_ne/streamRpcClientSync.test.js.map +1 -1
  117. package/dist/tests/multi_ne/streamStateView_User.test.js +23 -20
  118. package/dist/tests/multi_ne/streamStateView_User.test.js.map +1 -1
  119. package/dist/tests/{multi/spaceDapp.test.d.ts → multi_ne/sync-agent/gdms.test.d.ts} +1 -1
  120. package/dist/tests/multi_ne/sync-agent/gdms.test.d.ts.map +1 -0
  121. package/dist/tests/multi_ne/sync-agent/gdms.test.js +34 -0
  122. package/dist/tests/multi_ne/sync-agent/gdms.test.js.map +1 -0
  123. package/dist/tests/multi_ne/sync-agent/member.test.d.ts +3 -0
  124. package/dist/tests/multi_ne/sync-agent/member.test.d.ts.map +1 -1
  125. package/dist/tests/multi_ne/sync-agent/member.test.js +19 -8
  126. package/dist/tests/multi_ne/sync-agent/member.test.js.map +1 -1
  127. package/dist/tests/multi_ne/sync-agent/members.test.d.ts +3 -0
  128. package/dist/tests/multi_ne/sync-agent/members.test.d.ts.map +1 -1
  129. package/dist/tests/multi_ne/sync-agent/members.test.js +24 -19
  130. package/dist/tests/multi_ne/sync-agent/members.test.js.map +1 -1
  131. package/dist/tests/multi_ne/sync-agent/streams.test.d.ts +3 -0
  132. package/dist/tests/multi_ne/sync-agent/streams.test.d.ts.map +1 -1
  133. package/dist/tests/multi_ne/sync-agent/streams.test.js +14 -14
  134. package/dist/tests/multi_ne/sync-agent/streams.test.js.map +1 -1
  135. package/dist/tests/multi_ne/sync-agent/syncAgent.test.d.ts +3 -0
  136. package/dist/tests/multi_ne/sync-agent/syncAgent.test.d.ts.map +1 -1
  137. package/dist/tests/multi_ne/sync-agent/syncAgent.test.js +23 -15
  138. package/dist/tests/multi_ne/sync-agent/syncAgent.test.js.map +1 -1
  139. package/dist/tests/multi_ne/sync-agent/syncAgents.test.d.ts +3 -0
  140. package/dist/tests/multi_ne/sync-agent/syncAgents.test.d.ts.map +1 -1
  141. package/dist/tests/multi_ne/sync-agent/syncAgents.test.js +34 -70
  142. package/dist/tests/multi_ne/sync-agent/syncAgents.test.js.map +1 -1
  143. package/dist/tests/multi_ne/sync-agent/timeline.test.js +68 -119
  144. package/dist/tests/multi_ne/sync-agent/timeline.test.js.map +1 -1
  145. package/dist/tests/multi_ne/sync-agent/user.test.js +10 -5
  146. package/dist/tests/multi_ne/sync-agent/user.test.js.map +1 -1
  147. package/dist/tests/multi_ne/syncWithBlocks.test.d.ts +3 -0
  148. package/dist/tests/multi_ne/syncWithBlocks.test.d.ts.map +1 -1
  149. package/dist/tests/multi_ne/syncWithBlocks.test.js +47 -77
  150. package/dist/tests/multi_ne/syncWithBlocks.test.js.map +1 -1
  151. package/dist/tests/multi_ne/syncedStream.test.js +1 -1
  152. package/dist/tests/multi_ne/syncedStream.test.js.map +1 -1
  153. package/dist/tests/multi_ne/syncedStreams.test.js +1 -1
  154. package/dist/tests/multi_ne/syncedStreams.test.js.map +1 -1
  155. package/dist/tests/multi_ne/userInboxMessage.test.js +4 -4
  156. package/dist/tests/multi_ne/userInboxMessage.test.js.map +1 -1
  157. package/dist/tests/multi_ne/userSettings.test.js +3 -16
  158. package/dist/tests/multi_ne/userSettings.test.js.map +1 -1
  159. package/dist/tests/multi_ne/workflows.test.js +22 -50
  160. package/dist/tests/multi_ne/workflows.test.js.map +1 -1
  161. package/dist/tests/testDriver_testUtils.d.ts.map +1 -1
  162. package/dist/tests/testDriver_testUtils.js +6 -22
  163. package/dist/tests/testDriver_testUtils.js.map +1 -1
  164. package/dist/tests/testUtils.d.ts +3 -104
  165. package/dist/tests/testUtils.d.ts.map +1 -1
  166. package/dist/tests/testUtils.js +6 -625
  167. package/dist/tests/testUtils.js.map +1 -1
  168. package/dist/tests/unit/snapshotMigration0001.test.js +4 -20
  169. package/dist/tests/unit/snapshotMigration0001.test.js.map +1 -1
  170. package/dist/tests/unit/snapshotMigration0004.test.js +5 -43
  171. package/dist/tests/unit/snapshotMigration0004.test.js.map +1 -1
  172. package/dist/tests/unit/snapshotMigration0005.test.js +5 -43
  173. package/dist/tests/unit/snapshotMigration0005.test.js.map +1 -1
  174. package/dist/tests/unit/streamUtils.test.js +21 -22
  175. package/dist/tests/unit/streamUtils.test.js.map +1 -1
  176. package/dist/tests/unit/tags.test.js +5 -7
  177. package/dist/tests/unit/tags.test.js.map +1 -1
  178. package/dist/types.d.ts +1 -21
  179. package/dist/types.d.ts.map +1 -1
  180. package/dist/types.js +2 -231
  181. package/dist/types.js.map +1 -1
  182. package/dist/views/models/timelineEvent.d.ts.map +1 -1
  183. package/dist/views/models/timelineEvent.js +1 -178
  184. package/dist/views/models/timelineEvent.js.map +1 -1
  185. package/dist/views/models/timelineTypes.d.ts +3 -29
  186. package/dist/views/models/timelineTypes.d.ts.map +1 -1
  187. package/dist/views/models/timelineTypes.js +0 -4
  188. package/dist/views/models/timelineTypes.js.map +1 -1
  189. package/dist/views/streams/timelines.d.ts +1 -1
  190. package/dist/views/streams/timelines.d.ts.map +1 -1
  191. package/dist/views/streams/timelines.js +3 -3
  192. package/dist/views/streams/timelines.js.map +1 -1
  193. package/dist/views/streamsView.d.ts +0 -6
  194. package/dist/views/streamsView.d.ts.map +1 -1
  195. package/dist/views/streamsView.js +0 -11
  196. package/dist/views/streamsView.js.map +1 -1
  197. package/dist/views/transforms/dmsAndGdmsTransform.d.ts +0 -2
  198. package/dist/views/transforms/dmsAndGdmsTransform.d.ts.map +1 -1
  199. package/dist/views/transforms/dmsAndGdmsTransform.js +1 -26
  200. package/dist/views/transforms/dmsAndGdmsTransform.js.map +1 -1
  201. package/dist/views/transforms/dmsAndGdmsUnreadIdsTransform.d.ts +1 -2
  202. package/dist/views/transforms/dmsAndGdmsUnreadIdsTransform.d.ts.map +1 -1
  203. package/dist/views/transforms/dmsAndGdmsUnreadIdsTransform.js +2 -5
  204. package/dist/views/transforms/dmsAndGdmsUnreadIdsTransform.js.map +1 -1
  205. package/dist/views/transforms/spaceIdsTransform.d.ts +1 -1
  206. package/dist/views/transforms/spaceIdsTransform.d.ts.map +1 -1
  207. package/dist/views/transforms/spaceIdsTransform.js +3 -10
  208. package/dist/views/transforms/spaceIdsTransform.js.map +1 -1
  209. package/dist/views/transforms/spaceMentionsTransform.d.ts.map +1 -1
  210. package/dist/views/transforms/spaceMentionsTransform.js +13 -14
  211. package/dist/views/transforms/spaceMentionsTransform.js.map +1 -1
  212. package/dist/views/transforms/spaceUnreadsTransform.d.ts.map +1 -1
  213. package/dist/views/transforms/spaceUnreadsTransform.js +21 -22
  214. package/dist/views/transforms/spaceUnreadsTransform.js.map +1 -1
  215. package/dist/views/transforms/unreadMarkersTransform.js +2 -4
  216. package/dist/views/transforms/unreadMarkersTransform.js.map +1 -1
  217. package/package.json +9 -9
  218. package/dist/memberMetadata_DisplayNames.d.ts +0 -26
  219. package/dist/memberMetadata_DisplayNames.d.ts.map +0 -1
  220. package/dist/memberMetadata_DisplayNames.js +0 -95
  221. package/dist/memberMetadata_DisplayNames.js.map +0 -1
  222. package/dist/memberMetadata_EnsAddresses.d.ts +0 -25
  223. package/dist/memberMetadata_EnsAddresses.d.ts.map +0 -1
  224. package/dist/memberMetadata_EnsAddresses.js +0 -86
  225. package/dist/memberMetadata_EnsAddresses.js.map +0 -1
  226. package/dist/memberMetadata_Nft.d.ts +0 -31
  227. package/dist/memberMetadata_Nft.d.ts.map +0 -1
  228. package/dist/memberMetadata_Nft.js +0 -95
  229. package/dist/memberMetadata_Nft.js.map +0 -1
  230. package/dist/memberMetadata_Usernames.d.ts +0 -35
  231. package/dist/memberMetadata_Usernames.d.ts.map +0 -1
  232. package/dist/memberMetadata_Usernames.js +0 -162
  233. package/dist/memberMetadata_Usernames.js.map +0 -1
  234. package/dist/streamStateView_Channel.d.ts +0 -16
  235. package/dist/streamStateView_Channel.d.ts.map +0 -1
  236. package/dist/streamStateView_Channel.js +0 -76
  237. package/dist/streamStateView_Channel.js.map +0 -1
  238. package/dist/streamStateView_DMChannel.d.ts +0 -25
  239. package/dist/streamStateView_DMChannel.d.ts.map +0 -1
  240. package/dist/streamStateView_DMChannel.js +0 -114
  241. package/dist/streamStateView_DMChannel.js.map +0 -1
  242. package/dist/streamStateView_Space.d.ts +0 -31
  243. package/dist/streamStateView_Space.d.ts.map +0 -1
  244. package/dist/streamStateView_Space.js +0 -193
  245. package/dist/streamStateView_Space.js.map +0 -1
  246. package/dist/sync-agent/dms/dms.d.ts +0 -24
  247. package/dist/sync-agent/dms/dms.d.ts.map +0 -1
  248. package/dist/sync-agent/dms/dms.js +0 -45
  249. package/dist/sync-agent/dms/dms.js.map +0 -1
  250. package/dist/sync-agent/dms/models/dm.d.ts +0 -73
  251. package/dist/sync-agent/dms/models/dm.d.ts.map +0 -1
  252. package/dist/sync-agent/dms/models/dm.js +0 -143
  253. package/dist/sync-agent/dms/models/dm.js.map +0 -1
  254. package/dist/sync-agent/spaces/models/channel.d.ts +0 -102
  255. package/dist/sync-agent/spaces/models/channel.d.ts.map +0 -1
  256. package/dist/sync-agent/spaces/models/channel.js +0 -169
  257. package/dist/sync-agent/spaces/models/channel.js.map +0 -1
  258. package/dist/sync-agent/spaces/models/space.d.ts +0 -56
  259. package/dist/sync-agent/spaces/models/space.d.ts.map +0 -1
  260. package/dist/sync-agent/spaces/models/space.js +0 -115
  261. package/dist/sync-agent/spaces/models/space.js.map +0 -1
  262. package/dist/sync-agent/spaces/spaces.d.ts +0 -25
  263. package/dist/sync-agent/spaces/spaces.d.ts.map +0 -1
  264. package/dist/sync-agent/spaces/spaces.js +0 -56
  265. package/dist/sync-agent/spaces/spaces.js.map +0 -1
  266. package/dist/tests/multi/channelSpaceSettings.test.d.ts +0 -5
  267. package/dist/tests/multi/channelSpaceSettings.test.d.ts.map +0 -1
  268. package/dist/tests/multi/channelSpaceSettings.test.js +0 -204
  269. package/dist/tests/multi/channelSpaceSettings.test.js.map +0 -1
  270. package/dist/tests/multi/disableChannel.test.d.ts +0 -5
  271. package/dist/tests/multi/disableChannel.test.d.ts.map +0 -1
  272. package/dist/tests/multi/disableChannel.test.js +0 -30
  273. package/dist/tests/multi/disableChannel.test.js.map +0 -1
  274. package/dist/tests/multi/disableSpace.test.d.ts +0 -5
  275. package/dist/tests/multi/disableSpace.test.d.ts.map +0 -1
  276. package/dist/tests/multi/disableSpace.test.js +0 -37
  277. package/dist/tests/multi/disableSpace.test.js.map +0 -1
  278. package/dist/tests/multi/entitlements/channelEntitlementPermissions.test.d.ts +0 -5
  279. package/dist/tests/multi/entitlements/channelEntitlementPermissions.test.d.ts.map +0 -1
  280. package/dist/tests/multi/entitlements/channelEntitlementPermissions.test.js +0 -129
  281. package/dist/tests/multi/entitlements/channelEntitlementPermissions.test.js.map +0 -1
  282. package/dist/tests/multi/entitlements/channelWithThreeNestedEntitlement.test.d.ts +0 -5
  283. package/dist/tests/multi/entitlements/channelWithThreeNestedEntitlement.test.d.ts.map +0 -1
  284. package/dist/tests/multi/entitlements/channelWithThreeNestedEntitlement.test.js +0 -44
  285. package/dist/tests/multi/entitlements/channelWithThreeNestedEntitlement.test.js.map +0 -1
  286. package/dist/tests/multi/entitlements/channelsWithComplexEntitlements.test.d.ts +0 -5
  287. package/dist/tests/multi/entitlements/channelsWithComplexEntitlements.test.d.ts.map +0 -1
  288. package/dist/tests/multi/entitlements/channelsWithComplexEntitlements.test.js +0 -125
  289. package/dist/tests/multi/entitlements/channelsWithComplexEntitlements.test.js.map +0 -1
  290. package/dist/tests/multi/entitlements/channelsWithEntitlementLoss.test.d.ts +0 -5
  291. package/dist/tests/multi/entitlements/channelsWithEntitlementLoss.test.d.ts.map +0 -1
  292. package/dist/tests/multi/entitlements/channelsWithEntitlementLoss.test.js +0 -72
  293. package/dist/tests/multi/entitlements/channelsWithEntitlementLoss.test.js.map +0 -1
  294. package/dist/tests/multi/entitlements/channelsWithEntitlements.test.d.ts +0 -5
  295. package/dist/tests/multi/entitlements/channelsWithEntitlements.test.d.ts.map +0 -1
  296. package/dist/tests/multi/entitlements/channelsWithEntitlements.test.js +0 -57
  297. package/dist/tests/multi/entitlements/channelsWithEntitlements.test.js.map +0 -1
  298. package/dist/tests/multi/entitlements/channelsWithErc20Entitlements.test.d.ts +0 -5
  299. package/dist/tests/multi/entitlements/channelsWithErc20Entitlements.test.d.ts.map +0 -1
  300. package/dist/tests/multi/entitlements/channelsWithErc20Entitlements.test.js +0 -86
  301. package/dist/tests/multi/entitlements/channelsWithErc20Entitlements.test.js.map +0 -1
  302. package/dist/tests/multi/entitlements/channelsWithErc721Entitlements.test.d.ts +0 -5
  303. package/dist/tests/multi/entitlements/channelsWithErc721Entitlements.test.d.ts.map +0 -1
  304. package/dist/tests/multi/entitlements/channelsWithErc721Entitlements.test.js +0 -69
  305. package/dist/tests/multi/entitlements/channelsWithErc721Entitlements.test.js.map +0 -1
  306. package/dist/tests/multi/entitlements/channelsWithEthBalanceEntitlements.test.d.ts +0 -5
  307. package/dist/tests/multi/entitlements/channelsWithEthBalanceEntitlements.test.d.ts.map +0 -1
  308. package/dist/tests/multi/entitlements/channelsWithEthBalanceEntitlements.test.js +0 -145
  309. package/dist/tests/multi/entitlements/channelsWithEthBalanceEntitlements.test.js.map +0 -1
  310. package/dist/tests/multi/entitlements/channelsWithUserEntitlements.test.d.ts +0 -5
  311. package/dist/tests/multi/entitlements/channelsWithUserEntitlements.test.d.ts.map +0 -1
  312. package/dist/tests/multi/entitlements/channelsWithUserEntitlements.test.js +0 -53
  313. package/dist/tests/multi/entitlements/channelsWithUserEntitlements.test.js.map +0 -1
  314. package/dist/tests/multi/entitlements/membershipRenewals.test.d.ts +0 -5
  315. package/dist/tests/multi/entitlements/membershipRenewals.test.d.ts.map +0 -1
  316. package/dist/tests/multi/entitlements/membershipRenewals.test.js +0 -150
  317. package/dist/tests/multi/entitlements/membershipRenewals.test.js.map +0 -1
  318. package/dist/tests/multi/entitlements/spaceWithComplexEntitlements.test.d.ts +0 -5
  319. package/dist/tests/multi/entitlements/spaceWithComplexEntitlements.test.d.ts.map +0 -1
  320. package/dist/tests/multi/entitlements/spaceWithComplexEntitlements.test.js +0 -131
  321. package/dist/tests/multi/entitlements/spaceWithComplexEntitlements.test.js.map +0 -1
  322. package/dist/tests/multi/entitlements/spaceWithEntitlements.test.d.ts +0 -5
  323. package/dist/tests/multi/entitlements/spaceWithEntitlements.test.d.ts.map +0 -1
  324. package/dist/tests/multi/entitlements/spaceWithEntitlements.test.js +0 -109
  325. package/dist/tests/multi/entitlements/spaceWithEntitlements.test.js.map +0 -1
  326. package/dist/tests/multi/entitlements/spaceWithErc20Entitlements.test.d.ts +0 -5
  327. package/dist/tests/multi/entitlements/spaceWithErc20Entitlements.test.d.ts.map +0 -1
  328. package/dist/tests/multi/entitlements/spaceWithErc20Entitlements.test.js +0 -103
  329. package/dist/tests/multi/entitlements/spaceWithErc20Entitlements.test.js.map +0 -1
  330. package/dist/tests/multi/entitlements/spaceWithErc721Entitlements.test.d.ts +0 -5
  331. package/dist/tests/multi/entitlements/spaceWithErc721Entitlements.test.d.ts.map +0 -1
  332. package/dist/tests/multi/entitlements/spaceWithErc721Entitlements.test.js +0 -84
  333. package/dist/tests/multi/entitlements/spaceWithErc721Entitlements.test.js.map +0 -1
  334. package/dist/tests/multi/entitlements/spaceWithEthBalanceEntitlements.test.d.ts +0 -5
  335. package/dist/tests/multi/entitlements/spaceWithEthBalanceEntitlements.test.d.ts.map +0 -1
  336. package/dist/tests/multi/entitlements/spaceWithEthBalanceEntitlements.test.js +0 -168
  337. package/dist/tests/multi/entitlements/spaceWithEthBalanceEntitlements.test.js.map +0 -1
  338. package/dist/tests/multi/entitlements/spaceWithThreeNestedEntitlement.test.d.ts +0 -5
  339. package/dist/tests/multi/entitlements/spaceWithThreeNestedEntitlement.test.d.ts.map +0 -1
  340. package/dist/tests/multi/entitlements/spaceWithThreeNestedEntitlement.test.js +0 -45
  341. package/dist/tests/multi/entitlements/spaceWithThreeNestedEntitlement.test.js.map +0 -1
  342. package/dist/tests/multi/entitlements/spaceWithUserEntitlements.test.d.ts +0 -5
  343. package/dist/tests/multi/entitlements/spaceWithUserEntitlements.test.d.ts.map +0 -1
  344. package/dist/tests/multi/entitlements/spaceWithUserEntitlements.test.js +0 -79
  345. package/dist/tests/multi/entitlements/spaceWithUserEntitlements.test.js.map +0 -1
  346. package/dist/tests/multi/legacySpace.test.d.ts +0 -5
  347. package/dist/tests/multi/legacySpace.test.d.ts.map +0 -1
  348. package/dist/tests/multi/legacySpace.test.js +0 -48
  349. package/dist/tests/multi/legacySpace.test.js.map +0 -1
  350. package/dist/tests/multi/mediaWithEntitlements.test.d.ts +0 -5
  351. package/dist/tests/multi/mediaWithEntitlements.test.d.ts.map +0 -1
  352. package/dist/tests/multi/mediaWithEntitlements.test.js +0 -152
  353. package/dist/tests/multi/mediaWithEntitlements.test.js.map +0 -1
  354. package/dist/tests/multi/membershipManagement.test.d.ts +0 -5
  355. package/dist/tests/multi/membershipManagement.test.d.ts.map +0 -1
  356. package/dist/tests/multi/membershipManagement.test.js +0 -76
  357. package/dist/tests/multi/membershipManagement.test.js.map +0 -1
  358. package/dist/tests/multi/riverAirdropDapp.test.d.ts +0 -5
  359. package/dist/tests/multi/riverAirdropDapp.test.d.ts.map +0 -1
  360. package/dist/tests/multi/riverAirdropDapp.test.js +0 -43
  361. package/dist/tests/multi/riverAirdropDapp.test.js.map +0 -1
  362. package/dist/tests/multi/spaceDapp.test.d.ts.map +0 -1
  363. package/dist/tests/multi/spaceDapp.test.js +0 -61
  364. package/dist/tests/multi/spaceDapp.test.js.map +0 -1
  365. package/dist/tests/multi/spaceWithVariousPriceConfigurations.test.d.ts +0 -2
  366. package/dist/tests/multi/spaceWithVariousPriceConfigurations.test.d.ts.map +0 -1
  367. package/dist/tests/multi/spaceWithVariousPriceConfigurations.test.js +0 -63
  368. package/dist/tests/multi/spaceWithVariousPriceConfigurations.test.js.map +0 -1
  369. package/dist/tests/multi/withEntitlements.test.d.ts +0 -5
  370. package/dist/tests/multi/withEntitlements.test.d.ts.map +0 -1
  371. package/dist/tests/multi/withEntitlements.test.js +0 -125
  372. package/dist/tests/multi/withEntitlements.test.js.map +0 -1
  373. package/dist/tests/multi_ne/dms.test.d.ts +0 -5
  374. package/dist/tests/multi_ne/dms.test.d.ts.map +0 -1
  375. package/dist/tests/multi_ne/dms.test.js +0 -131
  376. package/dist/tests/multi_ne/dms.test.js.map +0 -1
  377. package/dist/tests/multi_ne/memberMetadata_DisplayNames.test.d.ts +0 -5
  378. package/dist/tests/multi_ne/memberMetadata_DisplayNames.test.d.ts.map +0 -1
  379. package/dist/tests/multi_ne/memberMetadata_DisplayNames.test.js +0 -54
  380. package/dist/tests/multi_ne/memberMetadata_DisplayNames.test.js.map +0 -1
  381. package/dist/tests/multi_ne/memberMetadata_EnsAddresses.test.d.ts +0 -5
  382. package/dist/tests/multi_ne/memberMetadata_EnsAddresses.test.d.ts.map +0 -1
  383. package/dist/tests/multi_ne/memberMetadata_EnsAddresses.test.js +0 -37
  384. package/dist/tests/multi_ne/memberMetadata_EnsAddresses.test.js.map +0 -1
  385. package/dist/tests/multi_ne/memberMetadata_Nft.test.d.ts +0 -5
  386. package/dist/tests/multi_ne/memberMetadata_Nft.test.d.ts.map +0 -1
  387. package/dist/tests/multi_ne/memberMetadata_Nft.test.js +0 -49
  388. package/dist/tests/multi_ne/memberMetadata_Nft.test.js.map +0 -1
  389. package/dist/tests/multi_ne/memberMetadata_Usernames.test.d.ts +0 -5
  390. package/dist/tests/multi_ne/memberMetadata_Usernames.test.d.ts.map +0 -1
  391. package/dist/tests/multi_ne/memberMetadata_Usernames.test.js +0 -126
  392. package/dist/tests/multi_ne/memberMetadata_Usernames.test.js.map +0 -1
  393. package/dist/tests/multi_ne/space.test.d.ts +0 -5
  394. package/dist/tests/multi_ne/space.test.d.ts.map +0 -1
  395. package/dist/tests/multi_ne/space.test.js +0 -284
  396. package/dist/tests/multi_ne/space.test.js.map +0 -1
  397. package/dist/tests/multi_ne/sync-agent/spaces.test.d.ts +0 -2
  398. package/dist/tests/multi_ne/sync-agent/spaces.test.d.ts.map +0 -1
  399. package/dist/tests/multi_ne/sync-agent/spaces.test.js +0 -33
  400. package/dist/tests/multi_ne/sync-agent/spaces.test.js.map +0 -1
  401. package/dist/tests/multi_v2/entitlements/channelsWithCrossChainEntitlements.test.d.ts +0 -6
  402. package/dist/tests/multi_v2/entitlements/channelsWithCrossChainEntitlements.test.d.ts.map +0 -1
  403. package/dist/tests/multi_v2/entitlements/channelsWithCrossChainEntitlements.test.js +0 -78
  404. package/dist/tests/multi_v2/entitlements/channelsWithCrossChainEntitlements.test.js.map +0 -1
  405. package/dist/tests/multi_v2/entitlements/channelsWithErc1155Entitlement.test.d.ts +0 -6
  406. package/dist/tests/multi_v2/entitlements/channelsWithErc1155Entitlement.test.d.ts.map +0 -1
  407. package/dist/tests/multi_v2/entitlements/channelsWithErc1155Entitlement.test.js +0 -89
  408. package/dist/tests/multi_v2/entitlements/channelsWithErc1155Entitlement.test.js.map +0 -1
  409. package/dist/tests/multi_v2/entitlements/spaceWithCrossChainEntitlements.test.d.ts +0 -6
  410. package/dist/tests/multi_v2/entitlements/spaceWithCrossChainEntitlements.test.d.ts.map +0 -1
  411. package/dist/tests/multi_v2/entitlements/spaceWithCrossChainEntitlements.test.js +0 -88
  412. package/dist/tests/multi_v2/entitlements/spaceWithCrossChainEntitlements.test.js.map +0 -1
  413. package/dist/tests/multi_v2/entitlements/spaceWithErc1155Entitlements.test.d.ts +0 -6
  414. package/dist/tests/multi_v2/entitlements/spaceWithErc1155Entitlements.test.d.ts.map +0 -1
  415. package/dist/tests/multi_v2/entitlements/spaceWithErc1155Entitlements.test.js +0 -105
  416. package/dist/tests/multi_v2/entitlements/spaceWithErc1155Entitlements.test.js.map +0 -1
  417. package/dist/tests/multi_v2/updateRole.test.d.ts +0 -5
  418. package/dist/tests/multi_v2/updateRole.test.d.ts.map +0 -1
  419. package/dist/tests/multi_v2/updateRole.test.js +0 -25
  420. package/dist/tests/multi_v2/updateRole.test.js.map +0 -1
  421. package/dist/tests/unit/snapshotMigration0002.test.d.ts +0 -2
  422. package/dist/tests/unit/snapshotMigration0002.test.d.ts.map +0 -1
  423. package/dist/tests/unit/snapshotMigration0002.test.js +0 -31
  424. package/dist/tests/unit/snapshotMigration0002.test.js.map +0 -1
  425. package/dist/views/streams/channelStreams.d.ts +0 -8
  426. package/dist/views/streams/channelStreams.d.ts.map +0 -1
  427. package/dist/views/streams/channelStreams.js +0 -9
  428. package/dist/views/streams/channelStreams.js.map +0 -1
  429. package/dist/views/streams/dmStreams.d.ts +0 -13
  430. package/dist/views/streams/dmStreams.d.ts.map +0 -1
  431. package/dist/views/streams/dmStreams.js +0 -33
  432. package/dist/views/streams/dmStreams.js.map +0 -1
  433. package/dist/views/streams/spaceStreams.d.ts +0 -17
  434. package/dist/views/streams/spaceStreams.d.ts.map +0 -1
  435. package/dist/views/streams/spaceStreams.js +0 -52
  436. package/dist/views/streams/spaceStreams.js.map +0 -1
@@ -1,79 +0,0 @@
1
- /**
2
- * @group with-entitlements
3
- */
4
- import { createTownWithRequirements, createUserStreamAndSyncClient, everyoneMembershipStruct, expectUserCannotJoinSpace, expectUserCanJoin, linkWallets, } from '../../testUtils';
5
- import { dlog } from '@towns-labs/utils';
6
- import { NoopRuleData } from '@towns-labs/web3';
7
- const log = dlog('csb:test:spaceWithUserEntitlements');
8
- describe('spaceWithUserEntitlements', () => {
9
- test('user entitlement pass', async () => {
10
- const { alice, bob, aliceSpaceDapp, aliceProvider, alicesWallet, spaceId, channelId } = await createTownWithRequirements({
11
- everyone: false,
12
- users: ['alice'],
13
- ruleData: NoopRuleData,
14
- });
15
- await expectUserCanJoin(spaceId, channelId, 'alice', alice, aliceSpaceDapp, alicesWallet.address, aliceProvider.wallet);
16
- const doneStart = Date.now();
17
- // kill the clients
18
- await bob.stopSync();
19
- await alice.stopSync();
20
- log('Done', Date.now() - doneStart);
21
- });
22
- test('user entitlement fail', async () => {
23
- const { alice, bob, aliceSpaceDapp, alicesWallet, aliceProvider, spaceId } = await createTownWithRequirements({
24
- everyone: false,
25
- users: ['carol'], // not alice!
26
- ruleData: NoopRuleData,
27
- });
28
- // Alice cannot join the space in the contract.
29
- const { issued } = await aliceSpaceDapp.joinSpace(spaceId, alicesWallet.address, aliceProvider.wallet);
30
- expect(issued).toBe(false);
31
- // Have alice create a user stream attached to her own space.
32
- // Then she will attempt to join the space from the client, which should also fail.
33
- await createUserStreamAndSyncClient(alice, aliceSpaceDapp, 'alice', await everyoneMembershipStruct(aliceSpaceDapp, alice), aliceProvider.wallet);
34
- // Alice cannot join the space on the stream node.
35
- await expectUserCannotJoinSpace(spaceId, alice, aliceSpaceDapp, alicesWallet.address);
36
- // Kill the clients
37
- const doneStart = Date.now();
38
- await bob.stopSync();
39
- await alice.stopSync();
40
- log('Done', Date.now() - doneStart);
41
- });
42
- // This test is commented out as the membership joinSpace does not check linked wallets
43
- // against the user entitlement.
44
- test('user entitlement pass - join as root, linked wallet whitelisted', async () => {
45
- const { alice, bob, aliceSpaceDapp, alicesWallet, aliceProvider, carolProvider, spaceId, channelId, } = await createTownWithRequirements({
46
- everyone: false,
47
- users: ['carol'], // not alice!
48
- ruleData: NoopRuleData,
49
- });
50
- await linkWallets(aliceSpaceDapp, aliceProvider.wallet, carolProvider.wallet);
51
- // Alice should be able to join the space on the stream node.
52
- log('Alice should be able to join space', spaceId);
53
- await expectUserCanJoin(spaceId, channelId, 'alice', alice, aliceSpaceDapp, alicesWallet.address, aliceProvider.wallet);
54
- // Kill the clients
55
- const doneStart = Date.now();
56
- await bob.stopSync();
57
- await alice.stopSync();
58
- log('Done', Date.now() - doneStart);
59
- });
60
- // This test is commented out as the membership joinSpace does not check linked wallets
61
- // against the user entitlement.
62
- test('user entitlement pass - join as linked wallet, root wallet whitelisted', async () => {
63
- const { alice, bob, aliceSpaceDapp, carolSpaceDapp, aliceProvider, alicesWallet, carolProvider, spaceId, channelId, } = await createTownWithRequirements({
64
- everyone: false,
65
- users: ['carol'], // not alice!
66
- ruleData: NoopRuleData,
67
- });
68
- await linkWallets(carolSpaceDapp, carolProvider.wallet, aliceProvider.wallet);
69
- // Alice should be able to join the space on the stream node.
70
- log('Alice should be able to join space', spaceId);
71
- await expectUserCanJoin(spaceId, channelId, 'alice', alice, aliceSpaceDapp, alicesWallet.address, aliceProvider.wallet);
72
- // Kill the clients
73
- const doneStart = Date.now();
74
- await bob.stopSync();
75
- await alice.stopSync();
76
- log('Done', Date.now() - doneStart);
77
- });
78
- });
79
- //# sourceMappingURL=spaceWithUserEntitlements.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"spaceWithUserEntitlements.test.js","sourceRoot":"","sources":["../../../../src/tests/multi/entitlements/spaceWithUserEntitlements.test.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- /**
2
- * @group with-entitlements
3
- */
4
- export {};
5
- //# sourceMappingURL=legacySpace.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"legacySpace.test.d.ts","sourceRoot":"","sources":["../../../src/tests/multi/legacySpace.test.ts"],"names":[],"mappings":"AAAA;;GAEG"}
@@ -1,48 +0,0 @@
1
- /**
2
- * @group with-entitlements
3
- */
4
- import { convertRuleDataV1ToV2, encodeRuleDataV2 } from '@towns-labs/web3';
5
- import { setupWalletsAndContexts, everyoneMembershipStruct } from '../testUtils';
6
- describe('Legacy Space Detection', () => {
7
- test('Detect Legacy Space', async () => {
8
- const { alice, aliceSpaceDapp, aliceProvider } = await setupWalletsAndContexts();
9
- const membership = await everyoneMembershipStruct(aliceSpaceDapp, alice);
10
- const transaction = await aliceSpaceDapp.createLegacySpace({
11
- spaceName: 'legacy town',
12
- channelName: 'general',
13
- uri: 'https://legacy.town',
14
- membership,
15
- }, aliceProvider.wallet);
16
- const receipt = await transaction.wait();
17
- expect(receipt.status).toEqual(1);
18
- const spaceAddress = aliceSpaceDapp.getSpaceAddress(receipt, aliceProvider.wallet.address);
19
- expect(spaceAddress).toBeDefined();
20
- await expect(aliceSpaceDapp.isLegacySpace(spaceAddress)).resolves.toBeTruthy();
21
- });
22
- test('Detect V2 space', async () => {
23
- const { alice, aliceSpaceDapp, aliceProvider } = await setupWalletsAndContexts();
24
- const legacyMembership = await everyoneMembershipStruct(aliceSpaceDapp, alice);
25
- const membership = {
26
- settings: legacyMembership.settings,
27
- permissions: legacyMembership.permissions,
28
- requirements: {
29
- everyone: true,
30
- syncEntitlements: false,
31
- users: [],
32
- ruleData: encodeRuleDataV2(convertRuleDataV1ToV2(legacyMembership.requirements.ruleData)),
33
- },
34
- };
35
- const transaction = await aliceSpaceDapp.createSpace({
36
- spaceName: 'legacy town',
37
- channelName: 'general',
38
- uri: 'https://legacy.town',
39
- membership,
40
- }, aliceProvider.wallet);
41
- const receipt = await transaction.wait();
42
- expect(receipt.status).toEqual(1);
43
- const spaceAddress = aliceSpaceDapp.getSpaceAddress(receipt, aliceProvider.wallet.address);
44
- expect(spaceAddress).toBeDefined();
45
- await expect(aliceSpaceDapp.isLegacySpace(spaceAddress)).resolves.toBeFalsy();
46
- });
47
- });
48
- //# sourceMappingURL=legacySpace.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"legacySpace.test.js","sourceRoot":"","sources":["../../../src/tests/multi/legacySpace.test.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAoB,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AAC5F,OAAO,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,cAAc,CAAA;AAEhF,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;IACpC,IAAI,CAAC,qBAAqB,EAAE,KAAK,IAAI,EAAE;QACnC,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,GAAG,MAAM,uBAAuB,EAAE,CAAA;QAChF,MAAM,UAAU,GAAG,MAAM,wBAAwB,CAAC,cAAc,EAAE,KAAK,CAAC,CAAA;QAExE,MAAM,WAAW,GAAG,MAAM,cAAc,CAAC,iBAAiB,CACtD;YACI,SAAS,EAAE,aAAa;YACxB,WAAW,EAAE,SAAS;YACtB,GAAG,EAAE,qBAAqB;YAC1B,UAAU;SACb,EACD,aAAa,CAAC,MAAM,CACvB,CAAA;QACD,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,IAAI,EAAE,CAAA;QACxC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;QACjC,MAAM,YAAY,GAAG,cAAc,CAAC,eAAe,CAAC,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;QAC1F,MAAM,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,CAAA;QAElC,MAAM,MAAM,CAAC,cAAc,CAAC,aAAa,CAAC,YAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAA;IACnF,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,iBAAiB,EAAE,KAAK,IAAI,EAAE;QAC/B,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,GAAG,MAAM,uBAAuB,EAAE,CAAA;QAChF,MAAM,gBAAgB,GAAG,MAAM,wBAAwB,CAAC,cAAc,EAAE,KAAK,CAAC,CAAA;QAC9E,MAAM,UAAU,GAAqB;YACjC,QAAQ,EAAE,gBAAgB,CAAC,QAAQ;YACnC,WAAW,EAAE,gBAAgB,CAAC,WAAW;YACzC,YAAY,EAAE;gBACV,QAAQ,EAAE,IAAI;gBACd,gBAAgB,EAAE,KAAK;gBACvB,KAAK,EAAE,EAAE;gBACT,QAAQ,EAAE,gBAAgB,CACtB,qBAAqB,CAAC,gBAAgB,CAAC,YAAY,CAAC,QAAQ,CAAC,CAChE;aACJ;SACJ,CAAA;QACD,MAAM,WAAW,GAAG,MAAM,cAAc,CAAC,WAAW,CAChD;YACI,SAAS,EAAE,aAAa;YACxB,WAAW,EAAE,SAAS;YACtB,GAAG,EAAE,qBAAqB;YAC1B,UAAU;SACb,EACD,aAAa,CAAC,MAAM,CACvB,CAAA;QACD,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,IAAI,EAAE,CAAA;QACxC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;QACjC,MAAM,YAAY,GAAG,cAAc,CAAC,eAAe,CAAC,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;QAC1F,MAAM,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,CAAA;QAElC,MAAM,MAAM,CAAC,cAAc,CAAC,aAAa,CAAC,YAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAA;IAClF,CAAC,CAAC,CAAA;AACN,CAAC,CAAC,CAAA"}
@@ -1,5 +0,0 @@
1
- /**
2
- * @group with-entitlements
3
- */
4
- export {};
5
- //# sourceMappingURL=mediaWithEntitlements.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mediaWithEntitlements.test.d.ts","sourceRoot":"","sources":["../../../src/tests/multi/mediaWithEntitlements.test.ts"],"names":[],"mappings":"AAAA;;GAEG"}
@@ -1,152 +0,0 @@
1
- /**
2
- * @group with-entitlements
3
- */
4
- import { makeTestClient, createVersionedSpace, getFreeSpacePricingSetup, } from '../testUtils';
5
- import { makeDefaultChannelStreamId, makeSpaceStreamId } from '../../id';
6
- import { ETH_ADDRESS, LocalhostWeb3Provider, NoopRuleData, Permission, createSpaceDapp, } from '@towns-labs/web3';
7
- import { townsEnv } from '../../townsEnv';
8
- import { dlog } from '@towns-labs/utils';
9
- const log = dlog('csb:test:mediaWithEntitlements');
10
- describe('mediaWithEntitlements', () => {
11
- let bobClient;
12
- let bobWallet;
13
- let aliceClient;
14
- const baseConfig = townsEnv().makeBaseChainConfig();
15
- beforeEach(async () => {
16
- bobClient = await makeTestClient();
17
- bobWallet = bobClient.wallet;
18
- aliceClient = await makeTestClient();
19
- });
20
- afterEach(async () => {
21
- await bobClient.stop();
22
- await aliceClient.stop();
23
- });
24
- test('clientCanOnlyCreateMediaStreamIfMemberOfSpaceAndChannel', async () => {
25
- log('start clientCanOnlyCreateMediaStreamIfMemberOfSpaceAndChannel');
26
- /**
27
- * Setup
28
- * Bob creates a space and a channel, both on chain and in River
29
- */
30
- const provider = new LocalhostWeb3Provider(baseConfig.rpcUrl, bobWallet);
31
- await provider.fundWallet();
32
- const spaceDapp = createSpaceDapp(provider, baseConfig.chainConfig);
33
- const { fixedPricingModuleAddress, freeAllocation, price } = await getFreeSpacePricingSetup(spaceDapp);
34
- // create a space stream,
35
- const membershipInfo = {
36
- settings: {
37
- name: 'Everyone',
38
- symbol: 'MEMBER',
39
- price,
40
- maxSupply: 1000,
41
- duration: 0,
42
- currency: ETH_ADDRESS,
43
- feeRecipient: bobClient.userId,
44
- freeAllocation,
45
- pricingModule: fixedPricingModuleAddress,
46
- },
47
- permissions: [Permission.Read, Permission.Write],
48
- requirements: {
49
- everyone: true,
50
- users: [],
51
- ruleData: NoopRuleData,
52
- syncEntitlements: false,
53
- },
54
- };
55
- log('transaction start bob creating space');
56
- const transaction = await createVersionedSpace(spaceDapp, {
57
- spaceName: 'space-name',
58
- uri: 'http://bobs-space-metadata.com',
59
- channelName: 'general', // default channel name
60
- membership: membershipInfo,
61
- }, provider.wallet);
62
- const receipt = await transaction.wait();
63
- log('transaction receipt', receipt);
64
- const spaceAddress = spaceDapp.getSpaceAddress(receipt, provider.wallet.address);
65
- expect(spaceAddress).toBeDefined();
66
- const spaceStreamId = makeSpaceStreamId(spaceAddress);
67
- const channelId = makeDefaultChannelStreamId(spaceAddress);
68
- // join alice to the space so she can start up a client
69
- await bobClient.initializeUser({ spaceId: spaceStreamId });
70
- bobClient.startSync();
71
- await bobClient.createSpace(spaceStreamId);
72
- await bobClient.createChannel(spaceStreamId, 'Channel', 'Topic', channelId);
73
- // create a second space and join alice so she can start up a client
74
- const transaction2 = await createVersionedSpace(spaceDapp, {
75
- spaceName: 'space2',
76
- uri: 'bobs-space2-metadata',
77
- channelName: 'general2', // default channel name
78
- membership: membershipInfo,
79
- }, provider.wallet);
80
- const receipt2 = await transaction2.wait();
81
- log('transaction2 receipt', receipt2);
82
- const space2Address = spaceDapp.getSpaceAddress(receipt, provider.wallet.address);
83
- expect(space2Address).toBeDefined();
84
- const space2Id = makeSpaceStreamId(space2Address);
85
- await spaceDapp.joinSpace(space2Id, aliceClient.userId, provider.wallet);
86
- /**
87
- * Real test starts here
88
- * Bob is a member of the channel and can therefore create a media stream
89
- */
90
- await expect(bobClient.createMediaStream(channelId, spaceStreamId, undefined, 5)).resolves.not.toThrow();
91
- await bobClient.stop();
92
- await aliceClient.initializeUser({ spaceId: space2Id });
93
- aliceClient.startSync();
94
- // Alice is NOT a member of the channel is prevented from creating a media stream
95
- await expect(aliceClient.createMediaStream(channelId, spaceStreamId, undefined, 5)).rejects.toThrow();
96
- await aliceClient.stop();
97
- });
98
- test('can create user media stream with user id only', async () => {
99
- log('start clientCanCreateUserMediaStream');
100
- /**
101
- * Setup
102
- * Bob creates a space, both on chain and in River, in order to initialize the user
103
- */
104
- const provider = new LocalhostWeb3Provider(baseConfig.rpcUrl, bobWallet);
105
- await provider.fundWallet();
106
- const spaceDapp = createSpaceDapp(provider, baseConfig.chainConfig);
107
- const { fixedPricingModuleAddress, freeAllocation, price } = await getFreeSpacePricingSetup(spaceDapp);
108
- // create a space stream,
109
- const membershipInfo = {
110
- settings: {
111
- name: 'Everyone',
112
- symbol: 'MEMBER',
113
- price,
114
- maxSupply: 1000,
115
- duration: 0,
116
- currency: ETH_ADDRESS,
117
- feeRecipient: bobClient.userId,
118
- freeAllocation,
119
- pricingModule: fixedPricingModuleAddress,
120
- },
121
- permissions: [Permission.Read, Permission.Write],
122
- requirements: {
123
- everyone: true,
124
- users: [],
125
- ruleData: NoopRuleData,
126
- syncEntitlements: false,
127
- },
128
- };
129
- log('transaction start bob creating space');
130
- const transaction = await createVersionedSpace(spaceDapp, {
131
- spaceName: 'space-name',
132
- uri: 'http://bobs-space-metadata.com',
133
- channelName: 'general', // default channel name
134
- membership: membershipInfo,
135
- }, provider.wallet);
136
- const receipt = await transaction.wait();
137
- log('transaction receipt', receipt);
138
- const spaceAddress = spaceDapp.getSpaceAddress(receipt, provider.wallet.address);
139
- expect(spaceAddress).toBeDefined();
140
- const spaceStreamId = makeSpaceStreamId(spaceAddress);
141
- await bobClient.initializeUser({ spaceId: spaceStreamId });
142
- bobClient.startSync();
143
- await bobClient.createSpace(spaceStreamId);
144
- /**
145
- * Real test starts here
146
- * Bob creates a user media stream
147
- */
148
- await expect(bobClient.createMediaStream(undefined, undefined, bobClient.userId, 5)).resolves.not.toThrow();
149
- await bobClient.stop();
150
- });
151
- });
152
- //# sourceMappingURL=mediaWithEntitlements.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mediaWithEntitlements.test.js","sourceRoot":"","sources":["../../../src/tests/multi/mediaWithEntitlements.test.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- /**
2
- * @group with-entitlements
3
- */
4
- export {};
5
- //# sourceMappingURL=membershipManagement.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"membershipManagement.test.d.ts","sourceRoot":"","sources":["../../../src/tests/multi/membershipManagement.test.ts"],"names":[],"mappings":"AAAA;;GAEG"}
@@ -1,76 +0,0 @@
1
- /**
2
- * @group with-entitlements
3
- */
4
- import { dlog } from '@towns-labs/utils';
5
- import { makeUserContextFromWallet, createVersionedSpace, getFreeSpacePricingSetup, } from '../testUtils';
6
- import { isValidStreamId, makeDefaultChannelStreamId, makeSpaceStreamId, userIdFromAddress, } from '../../id';
7
- import { ethers } from 'ethers';
8
- import { LocalhostWeb3Provider, createSpaceDapp, Permission, NoopRuleData, ETH_ADDRESS, } from '@towns-labs/web3';
9
- import { townsEnv } from '../../townsEnv';
10
- const log = dlog('csb:test:membershipManagement');
11
- describe('membershipManagement', () => {
12
- test('anoint memberships', async () => {
13
- // make a space and mint some memberships for friends
14
- log('start');
15
- const baseConfig = townsEnv().makeBaseChainConfig();
16
- const bobsWallet = ethers.Wallet.createRandom();
17
- const bobsContext = await makeUserContextFromWallet(bobsWallet);
18
- const bobProvider = new LocalhostWeb3Provider(baseConfig.rpcUrl, bobsWallet);
19
- await bobProvider.fundWallet();
20
- const spaceDapp = createSpaceDapp(bobProvider, baseConfig.chainConfig);
21
- // create a user stream
22
- const { fixedPricingModuleAddress, freeAllocation, price } = await getFreeSpacePricingSetup(spaceDapp);
23
- // create a space stream,
24
- log('Bob created user, about to create space');
25
- // first on the blockchain
26
- const membershipInfo = {
27
- settings: {
28
- name: 'Everyone',
29
- symbol: 'MEMBER',
30
- price,
31
- maxSupply: 1000,
32
- duration: 0,
33
- currency: ETH_ADDRESS,
34
- feeRecipient: userIdFromAddress(bobsContext.creatorAddress),
35
- freeAllocation,
36
- pricingModule: fixedPricingModuleAddress,
37
- },
38
- permissions: [Permission.Read, Permission.Write],
39
- requirements: {
40
- everyone: true,
41
- users: [],
42
- ruleData: NoopRuleData,
43
- syncEntitlements: false,
44
- },
45
- };
46
- log('transaction start bob creating space');
47
- const transaction = await createVersionedSpace(spaceDapp, {
48
- spaceName: 'bobs-space-metadata',
49
- uri: 'http://bobs-space-metadata.com',
50
- channelName: 'general', // default channel name
51
- membership: membershipInfo,
52
- }, bobProvider.wallet);
53
- const receipt = await transaction.wait();
54
- log('transaction receipt');
55
- expect(receipt.status).toEqual(1);
56
- const spaceAddress = spaceDapp.getSpaceAddress(receipt, bobProvider.wallet.address);
57
- expect(spaceAddress).toBeDefined();
58
- const spaceId = makeSpaceStreamId(spaceAddress);
59
- expect(isValidStreamId(spaceId)).toBe(true);
60
- const channelId = makeDefaultChannelStreamId(spaceAddress);
61
- expect(isValidStreamId(channelId)).toBe(true);
62
- log('created space', spaceId, channelId, spaceAddress);
63
- const bobsFriends = [
64
- ethers.Wallet.createRandom(),
65
- ethers.Wallet.createRandom(),
66
- ethers.Wallet.createRandom(),
67
- ];
68
- for (let i = 0; i < bobsFriends.length; i++) {
69
- const wallet = bobsFriends[i];
70
- log('minting membership for', i, wallet.address);
71
- const result = await spaceDapp.joinSpace(spaceId, wallet.address, bobProvider.wallet);
72
- log('minted membership', result);
73
- }
74
- });
75
- });
76
- //# sourceMappingURL=membershipManagement.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"membershipManagement.test.js","sourceRoot":"","sources":["../../../src/tests/multi/membershipManagement.test.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- /**
2
- * @group with-entitlements
3
- */
4
- export {};
5
- //# sourceMappingURL=riverAirdropDapp.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"riverAirdropDapp.test.d.ts","sourceRoot":"","sources":["../../../src/tests/multi/riverAirdropDapp.test.ts"],"names":[],"mappings":"AAAA;;GAEG"}
@@ -1,43 +0,0 @@
1
- /**
2
- * @group with-entitlements
3
- */
4
- import { dlog } from '@towns-labs/utils';
5
- import { townsEnv } from '../../townsEnv';
6
- import { LocalhostWeb3Provider, RiverAirdropDapp } from '@towns-labs/web3';
7
- import { ethers } from 'ethers';
8
- const log = dlog('test:riverAirdropDapp');
9
- describe('riverAirdropDappTests', () => {
10
- test('riverAirdropDapp', async () => {
11
- log('riverAirdropDapp:start1');
12
- const wallet = ethers.Wallet.createRandom();
13
- const config = townsEnv().makeTownsConfig();
14
- const baseProvider = new LocalhostWeb3Provider(config.base.rpcUrl, wallet);
15
- await baseProvider.fundWallet();
16
- const riverAirdropDapp = new RiverAirdropDapp(config.base.chainConfig, baseProvider);
17
- const currentStreak = await riverAirdropDapp.getCurrentStreak(wallet.address);
18
- log('currentStreak', currentStreak.toString());
19
- expect(currentStreak.eq(0)).toBe(true);
20
- const lastCheckIn = await riverAirdropDapp.getLastCheckIn(wallet.address);
21
- log('lastCheckIn', lastCheckIn.toString());
22
- expect(lastCheckIn.eq(0)).toBe(true);
23
- const balance = await riverAirdropDapp.balanceOf(wallet.address);
24
- log('balance', balance.toString());
25
- expect(balance.eq(0)).toBe(true);
26
- const tx = await riverAirdropDapp.checkIn(baseProvider.signer);
27
- if (!tx) {
28
- throw new Error('Check in transaction failed');
29
- }
30
- const receipt = await tx.wait();
31
- log('receipt', receipt);
32
- const newCurrentStreak = await riverAirdropDapp.getCurrentStreak(wallet.address);
33
- log('newCurrentStreak', newCurrentStreak.toString());
34
- expect(newCurrentStreak.eq(1)).toBe(true);
35
- const newLastCheckIn = await riverAirdropDapp.getLastCheckIn(wallet.address);
36
- log('newLastCheckIn', newLastCheckIn.toString());
37
- expect(newLastCheckIn.gt(0)).toBe(true);
38
- const newBalance = await riverAirdropDapp.balanceOf(wallet.address);
39
- log('balance', newBalance.toString());
40
- expect(newBalance.gt(0)).toBe(true);
41
- });
42
- });
43
- //# sourceMappingURL=riverAirdropDapp.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"riverAirdropDapp.test.js","sourceRoot":"","sources":["../../../src/tests/multi/riverAirdropDapp.test.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"spaceDapp.test.d.ts","sourceRoot":"","sources":["../../../src/tests/multi/spaceDapp.test.ts"],"names":[],"mappings":"AAAA;;GAEG"}
@@ -1,61 +0,0 @@
1
- /**
2
- * @group with-entitlements
3
- */
4
- import { dlog } from '@towns-labs/utils';
5
- import { makeSpaceStreamId } from '../../id';
6
- import { townsEnv } from '../../townsEnv';
7
- import { createSpaceDapp, LocalhostWeb3Provider, SpaceDapp } from '@towns-labs/web3';
8
- import { ethers } from 'ethers';
9
- import { makeDefaultMembershipInfo } from '../../sync-agent/utils/spaceUtils';
10
- import { linkWallets, unlinkCaller } from '../testUtils';
11
- const log = dlog('test:spaceDapp');
12
- describe('spaceDappTests', () => {
13
- test('spaceDapp URI', async () => {
14
- log('spaceDapp URI');
15
- const wallet = ethers.Wallet.createRandom();
16
- const wallet2 = ethers.Wallet.createRandom();
17
- const config = townsEnv().makeTownsConfig();
18
- const baseProvider = new LocalhostWeb3Provider(config.base.rpcUrl, wallet);
19
- await baseProvider.fundWallet();
20
- const spaceDapp = new SpaceDapp(config.base.chainConfig, baseProvider);
21
- const tx = await spaceDapp.createSpace({
22
- spaceName: 'test',
23
- uri: '',
24
- channelName: 'test',
25
- membership: await makeDefaultMembershipInfo(spaceDapp, wallet.address),
26
- shortDescription: 'test',
27
- longDescription: 'test',
28
- }, baseProvider.signer);
29
- const receipt = await tx.wait();
30
- const spaceAddress = spaceDapp.getSpaceAddress(receipt, baseProvider.wallet.address);
31
- if (!spaceAddress) {
32
- throw new Error('Space address not found');
33
- }
34
- const spaceId = makeSpaceStreamId(spaceAddress);
35
- const membership2 = await spaceDapp.joinSpace(spaceId, wallet2.address, baseProvider.signer);
36
- if (!membership2.tokenId) {
37
- throw new Error('tokenId not found');
38
- }
39
- const spaceInfo = await spaceDapp.spaceOwner.getSpaceInfo(spaceAddress);
40
- const uri = await spaceDapp.spaceOwner.read.tokenURI(spaceInfo.tokenId);
41
- expect(uri).toBe(`http://localhost:3002/${spaceAddress}`); // hardcoded in InteractSetDefaultUriLocalhost.s.sol
42
- const space = spaceDapp.getSpace(spaceId);
43
- const memberURI = await space?.ERC721A.read.tokenURI(membership2.tokenId);
44
- expect(memberURI).toBe(`http://localhost:3002/${spaceAddress}/token/${membership2.tokenId}`); // hardcoded in InteractSetDefaultUriLocalhost.s.sol
45
- });
46
- test('remove caller link', async () => {
47
- const baseConfig = townsEnv().makeBaseChainConfig();
48
- const rootProvider = new LocalhostWeb3Provider(baseConfig.rpcUrl, ethers.Wallet.createRandom());
49
- const linkedProvider = new LocalhostWeb3Provider(baseConfig.rpcUrl, ethers.Wallet.createRandom());
50
- await Promise.all([rootProvider.fundWallet(), linkedProvider.fundWallet()]);
51
- const spaceDapp = createSpaceDapp(rootProvider, baseConfig.chainConfig);
52
- await linkWallets(spaceDapp, rootProvider.wallet, linkedProvider.wallet);
53
- const linkedWallets = await spaceDapp.walletLink.getLinkedWallets(rootProvider.wallet.address);
54
- expect(linkedWallets.length).toBe(1);
55
- expect(linkedWallets[0]).toBe(linkedProvider.wallet.address);
56
- await unlinkCaller(spaceDapp, rootProvider.wallet, linkedProvider.wallet);
57
- const linkedWalletsAfter = await spaceDapp.walletLink.getLinkedWallets(rootProvider.wallet.address);
58
- expect(linkedWalletsAfter.length).toBe(0);
59
- });
60
- });
61
- //# sourceMappingURL=spaceDapp.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"spaceDapp.test.js","sourceRoot":"","sources":["../../../src/tests/multi/spaceDapp.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=spaceWithVariousPriceConfigurations.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"spaceWithVariousPriceConfigurations.test.d.ts","sourceRoot":"","sources":["../../../src/tests/multi/spaceWithVariousPriceConfigurations.test.ts"],"names":[],"mappings":""}
@@ -1,63 +0,0 @@
1
- import { dlog } from '@towns-labs/utils';
2
- import { createSpaceAndDefaultChannel, dynamicMembershipStruct, expectUserCanJoin, fixedPriceMembershipStruct, setupWalletsAndContexts, zeroPriceWithLimitedAllocationMembershipStruct, } from '../testUtils';
3
- import { ethers } from 'ethers';
4
- const log = dlog('csb:test:spaceWithVariousPriceConfigurations');
5
- describe('spaceWithVariousPriceConfigurations', () => {
6
- test.skip('a space that has a price of 0 and no further free allocations should start charging', async () => {
7
- log('start a space that has a price of 0 and no further free allocations should start charging');
8
- const { bob, bobProvider, bobSpaceDapp, alice, aliceSpaceDapp, aliceProvider, alicesWallet, carol, carolsWallet, carolProvider, carolSpaceDapp, } = await setupWalletsAndContexts();
9
- // create a membership that has a price of 0 and 1 free allocation
10
- const membershipRequirements = await zeroPriceWithLimitedAllocationMembershipStruct(bobSpaceDapp, bob,
11
- // set to # of users that should be able to join for free + 1
12
- // 2 b/c - the owner takes 1
13
- // the first user takes 1
14
- // the 3rd user should be charged
15
- { freeAllocation: 2 });
16
- const { spaceId, defaultChannelId: channelId } = await createSpaceAndDefaultChannel(bob, bobSpaceDapp, bobProvider.wallet, "bob's town", membershipRequirements);
17
- const space = bobSpaceDapp.getSpace(spaceId);
18
- const { price: joinPrice } = await bobSpaceDapp.getJoinSpacePriceDetails(spaceId);
19
- expect(joinPrice.toBigInt()).toBe(0n);
20
- log('Alice should be able to join space');
21
- await expectUserCanJoin(spaceId, channelId, 'alice', alice, aliceSpaceDapp, alicesWallet.address, aliceProvider.wallet);
22
- expect((await space?.ERC721A.read.totalSupply())?.toNumber()).toBe(2);
23
- const { price: joinPrice2 } = await bobSpaceDapp.getJoinSpacePriceDetails(spaceId);
24
- expect(joinPrice2.toBigInt()).toBeGreaterThan(0n);
25
- await expectUserCanJoin(spaceId, channelId, 'carol', carol, carolSpaceDapp, carolsWallet.address, carolProvider.wallet);
26
- // kill the clients
27
- await bob.stopSync();
28
- await alice.stopSync();
29
- await carol.stopSync();
30
- log('Done');
31
- });
32
- test('a space that uses dynamic pricing should charge', async () => {
33
- log('start a space that uses dynamic pricing should charge');
34
- const { bob, bobProvider, bobSpaceDapp, alice, aliceSpaceDapp, aliceProvider, alicesWallet, } = await setupWalletsAndContexts();
35
- // create a membership that has a price of 0 and 1 free allocation
36
- const membershipRequirements = await dynamicMembershipStruct(bobSpaceDapp, bob);
37
- const { spaceId, defaultChannelId: channelId } = await createSpaceAndDefaultChannel(bob, bobSpaceDapp, bobProvider.wallet, "bob's town", membershipRequirements);
38
- const { price: joinPrice } = await bobSpaceDapp.getJoinSpacePriceDetails(spaceId);
39
- expect(joinPrice.toBigInt()).toBeGreaterThan(0n);
40
- log('Alice should be able to join space');
41
- await expectUserCanJoin(spaceId, channelId, 'alice', alice, aliceSpaceDapp, alicesWallet.address, aliceProvider.wallet);
42
- // kill the clients
43
- await bob.stopSync();
44
- await alice.stopSync();
45
- log('Done');
46
- });
47
- test('a space that uses fixed pricing w/o free allocations should charge', async () => {
48
- log('start a space that uses fixed pricing w/o free allocations should charge');
49
- const { bob, bobProvider, bobSpaceDapp, alice, aliceSpaceDapp, aliceProvider, alicesWallet, } = await setupWalletsAndContexts();
50
- // create a membership that has a price of 0 and 1 free allocation
51
- const membershipRequirements = await fixedPriceMembershipStruct(bobSpaceDapp, bob);
52
- const { spaceId, defaultChannelId: channelId } = await createSpaceAndDefaultChannel(bob, bobSpaceDapp, bobProvider.wallet, "bob's town", membershipRequirements);
53
- const { price: joinPrice, protocolFee } = await bobSpaceDapp.getJoinSpacePriceDetails(spaceId);
54
- expect(joinPrice.toBigInt()).toBe(ethers.utils.parseEther('1').toBigInt() + protocolFee.toBigInt());
55
- log('Alice should be able to join space');
56
- await expectUserCanJoin(spaceId, channelId, 'alice', alice, aliceSpaceDapp, alicesWallet.address, aliceProvider.wallet);
57
- // kill the clients
58
- await bob.stopSync();
59
- await alice.stopSync();
60
- log('Done');
61
- });
62
- });
63
- //# sourceMappingURL=spaceWithVariousPriceConfigurations.test.js.map