@towns-labs/sdk 2.0.11 → 2.0.13

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 (508) hide show
  1. package/dist/client.d.ts +13 -31
  2. package/dist/client.d.ts.map +1 -1
  3. package/dist/client.js +113 -328
  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 -22
  17. package/dist/index.d.ts.map +1 -1
  18. package/dist/index.js +0 -22
  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/streamStateView_User.d.ts.map +1 -1
  54. package/dist/streamStateView_User.js +1 -0
  55. package/dist/streamStateView_User.js.map +1 -1
  56. package/dist/streamStateView_UserInbox.d.ts.map +1 -1
  57. package/dist/streamStateView_UserInbox.js +1 -0
  58. package/dist/streamStateView_UserInbox.js.map +1 -1
  59. package/dist/streamStateView_UserMetadata.d.ts.map +1 -1
  60. package/dist/streamStateView_UserMetadata.js +1 -0
  61. package/dist/streamStateView_UserMetadata.js.map +1 -1
  62. package/dist/streamStateView_UserSettings.d.ts.map +1 -1
  63. package/dist/streamStateView_UserSettings.js +9 -1
  64. package/dist/streamStateView_UserSettings.js.map +1 -1
  65. package/dist/streamUtils.d.ts.map +1 -1
  66. package/dist/streamUtils.js +0 -8
  67. package/dist/streamUtils.js.map +1 -1
  68. package/dist/sync/SyncedStreamsControllerLite.d.ts.map +1 -1
  69. package/dist/sync/SyncedStreamsControllerLite.js +7 -11
  70. package/dist/sync/SyncedStreamsControllerLite.js.map +1 -1
  71. package/dist/sync-agent/db.d.ts +1 -6
  72. package/dist/sync-agent/db.d.ts.map +1 -1
  73. package/dist/sync-agent/db.js +0 -10
  74. package/dist/sync-agent/db.js.map +1 -1
  75. package/dist/sync-agent/gdms/gdms.d.ts +5 -6
  76. package/dist/sync-agent/gdms/gdms.d.ts.map +1 -1
  77. package/dist/sync-agent/gdms/gdms.js +12 -27
  78. package/dist/sync-agent/gdms/gdms.js.map +1 -1
  79. package/dist/sync-agent/gdms/models/gdm.d.ts +10 -8
  80. package/dist/sync-agent/gdms/models/gdm.d.ts.map +1 -1
  81. package/dist/sync-agent/gdms/models/gdm.js +29 -34
  82. package/dist/sync-agent/gdms/models/gdm.js.map +1 -1
  83. package/dist/sync-agent/members/members.d.ts +6 -18
  84. package/dist/sync-agent/members/members.d.ts.map +1 -1
  85. package/dist/sync-agent/members/members.js +25 -124
  86. package/dist/sync-agent/members/members.js.map +1 -1
  87. package/dist/sync-agent/members/models/member.d.ts +3 -45
  88. package/dist/sync-agent/members/models/member.d.ts.map +1 -1
  89. package/dist/sync-agent/members/models/member.js +15 -114
  90. package/dist/sync-agent/members/models/member.js.map +1 -1
  91. package/dist/sync-agent/members/models/myself.d.ts +1 -11
  92. package/dist/sync-agent/members/models/myself.d.ts.map +1 -1
  93. package/dist/sync-agent/members/models/myself.js +1 -84
  94. package/dist/sync-agent/members/models/myself.js.map +1 -1
  95. package/dist/sync-agent/river-connection/riverConnection.d.ts +6 -17
  96. package/dist/sync-agent/river-connection/riverConnection.d.ts.map +1 -1
  97. package/dist/sync-agent/river-connection/riverConnection.js +30 -37
  98. package/dist/sync-agent/river-connection/riverConnection.js.map +1 -1
  99. package/dist/sync-agent/syncAgent.d.ts +11 -22
  100. package/dist/sync-agent/syncAgent.d.ts.map +1 -1
  101. package/dist/sync-agent/syncAgent.js +3 -20
  102. package/dist/sync-agent/syncAgent.js.map +1 -1
  103. package/dist/sync-agent/user/models/userInbox.d.ts +4 -17
  104. package/dist/sync-agent/user/models/userInbox.d.ts.map +1 -1
  105. package/dist/sync-agent/user/models/userInbox.js +14 -61
  106. package/dist/sync-agent/user/models/userInbox.js.map +1 -1
  107. package/dist/sync-agent/user/models/userMemberships.d.ts +6 -22
  108. package/dist/sync-agent/user/models/userMemberships.d.ts.map +1 -1
  109. package/dist/sync-agent/user/models/userMemberships.js +16 -68
  110. package/dist/sync-agent/user/models/userMemberships.js.map +1 -1
  111. package/dist/sync-agent/user/models/userMetadata.d.ts +4 -17
  112. package/dist/sync-agent/user/models/userMetadata.d.ts.map +1 -1
  113. package/dist/sync-agent/user/models/userMetadata.js +14 -61
  114. package/dist/sync-agent/user/models/userMetadata.js.map +1 -1
  115. package/dist/sync-agent/user/models/userSettings.d.ts +5 -8
  116. package/dist/sync-agent/user/models/userSettings.d.ts.map +1 -1
  117. package/dist/sync-agent/user/models/userSettings.js +15 -42
  118. package/dist/sync-agent/user/models/userSettings.js.map +1 -1
  119. package/dist/sync-agent/user/user.d.ts +2 -6
  120. package/dist/sync-agent/user/user.d.ts.map +1 -1
  121. package/dist/sync-agent/user/user.js +9 -20
  122. package/dist/sync-agent/user/user.js.map +1 -1
  123. package/dist/syncedStreamsExtension.d.ts.map +1 -1
  124. package/dist/syncedStreamsExtension.js +10 -22
  125. package/dist/syncedStreamsExtension.js.map +1 -1
  126. package/dist/syncedStreamsLoop.d.ts.map +1 -1
  127. package/dist/syncedStreamsLoop.js +4 -18
  128. package/dist/syncedStreamsLoop.js.map +1 -1
  129. package/dist/tests/bob_testUtils.d.ts.map +1 -1
  130. package/dist/tests/bob_testUtils.js +35 -69
  131. package/dist/tests/bob_testUtils.js.map +1 -1
  132. package/dist/tests/multi_ne/aliceAndFriends10for10.test.js +1 -1
  133. package/dist/tests/multi_ne/aliceAndFriends10for10.test.js.map +1 -1
  134. package/dist/tests/multi_ne/aliceAndFriendslongAndRandom.test.js +1 -1
  135. package/dist/tests/multi_ne/aliceAndFriendslongAndRandom.test.js.map +1 -1
  136. package/dist/tests/multi_ne/bobFlushes.test.js.map +1 -1
  137. package/dist/tests/multi_ne/channels.test.js +6 -9
  138. package/dist/tests/multi_ne/channels.test.js.map +1 -1
  139. package/dist/tests/multi_ne/client.test.js +24 -98
  140. package/dist/tests/multi_ne/client.test.js.map +1 -1
  141. package/dist/tests/multi_ne/clientCrypto.test.js +3 -3
  142. package/dist/tests/multi_ne/clientCrypto.test.js.map +1 -1
  143. package/dist/tests/multi_ne/clientDecryptionExtensions.test.js +12 -47
  144. package/dist/tests/multi_ne/clientDecryptionExtensions.test.js.map +1 -1
  145. package/dist/tests/multi_ne/ephemeralEvents.test.js +1 -1
  146. package/dist/tests/multi_ne/ephemeralEvents.test.js.map +1 -1
  147. package/dist/tests/multi_ne/id.test.js +6 -20
  148. package/dist/tests/multi_ne/id.test.js.map +1 -1
  149. package/dist/tests/multi_ne/media.test.js +20 -61
  150. package/dist/tests/multi_ne/media.test.js.map +1 -1
  151. package/dist/tests/multi_ne/memberMetadata.test.d.ts +0 -3
  152. package/dist/tests/multi_ne/memberMetadata.test.d.ts.map +1 -1
  153. package/dist/tests/multi_ne/memberMetadata.test.js +14 -582
  154. package/dist/tests/multi_ne/memberMetadata.test.js.map +1 -1
  155. package/dist/tests/multi_ne/outboundGroupSession.test.js +15 -13
  156. package/dist/tests/multi_ne/outboundGroupSession.test.js.map +1 -1
  157. package/dist/tests/multi_ne/restart.test.js +11 -34
  158. package/dist/tests/multi_ne/restart.test.js.map +1 -1
  159. package/dist/tests/multi_ne/sign.test.js +2 -2
  160. package/dist/tests/multi_ne/sign.test.js.map +1 -1
  161. package/dist/tests/multi_ne/streamMembershipHardening.test.js +0 -3
  162. package/dist/tests/multi_ne/streamMembershipHardening.test.js.map +1 -1
  163. package/dist/tests/multi_ne/streamRpcClient.test.js +58 -349
  164. package/dist/tests/multi_ne/streamRpcClient.test.js.map +1 -1
  165. package/dist/tests/multi_ne/streamRpcClientSync.test.js +63 -124
  166. package/dist/tests/multi_ne/streamRpcClientSync.test.js.map +1 -1
  167. package/dist/tests/multi_ne/streamStateView_User.test.js +23 -20
  168. package/dist/tests/multi_ne/streamStateView_User.test.js.map +1 -1
  169. package/dist/tests/{multi/spaceDapp.test.d.ts → multi_ne/sync-agent/gdms.test.d.ts} +1 -1
  170. package/dist/tests/multi_ne/sync-agent/gdms.test.d.ts.map +1 -0
  171. package/dist/tests/multi_ne/sync-agent/gdms.test.js +34 -0
  172. package/dist/tests/multi_ne/sync-agent/gdms.test.js.map +1 -0
  173. package/dist/tests/{multi/legacySpace.test.d.ts → multi_ne/sync-agent/member.test.d.ts} +1 -1
  174. package/dist/tests/multi_ne/sync-agent/member.test.d.ts.map +1 -0
  175. package/dist/tests/multi_ne/sync-agent/member.test.js +31 -0
  176. package/dist/tests/multi_ne/sync-agent/member.test.js.map +1 -0
  177. package/dist/tests/{multi/disableSpace.test.d.ts → multi_ne/sync-agent/members.test.d.ts} +1 -1
  178. package/dist/tests/multi_ne/sync-agent/members.test.d.ts.map +1 -0
  179. package/dist/tests/multi_ne/sync-agent/members.test.js +40 -0
  180. package/dist/tests/multi_ne/sync-agent/members.test.js.map +1 -0
  181. package/dist/tests/multi_ne/sync-agent/riverConnection.test.d.ts +5 -0
  182. package/dist/tests/multi_ne/sync-agent/riverConnection.test.d.ts.map +1 -0
  183. package/dist/tests/multi_ne/sync-agent/riverConnection.test.js +39 -0
  184. package/dist/tests/multi_ne/sync-agent/riverConnection.test.js.map +1 -0
  185. package/dist/tests/multi_ne/sync-agent/streams.test.d.ts +5 -0
  186. package/dist/tests/multi_ne/sync-agent/streams.test.d.ts.map +1 -0
  187. package/dist/tests/multi_ne/sync-agent/streams.test.js +27 -0
  188. package/dist/tests/multi_ne/sync-agent/streams.test.js.map +1 -0
  189. package/dist/tests/multi_ne/sync-agent/syncAgent.test.d.ts +5 -0
  190. package/dist/tests/multi_ne/sync-agent/syncAgent.test.d.ts.map +1 -0
  191. package/dist/tests/multi_ne/sync-agent/syncAgent.test.js +66 -0
  192. package/dist/tests/multi_ne/sync-agent/syncAgent.test.js.map +1 -0
  193. package/dist/tests/multi_ne/sync-agent/syncAgents.test.d.ts +5 -0
  194. package/dist/tests/multi_ne/sync-agent/syncAgents.test.d.ts.map +1 -0
  195. package/dist/tests/multi_ne/sync-agent/syncAgents.test.js +117 -0
  196. package/dist/tests/multi_ne/sync-agent/syncAgents.test.js.map +1 -0
  197. package/dist/tests/multi_ne/sync-agent/timeline.test.d.ts +2 -0
  198. package/dist/tests/multi_ne/sync-agent/timeline.test.d.ts.map +1 -0
  199. package/dist/tests/multi_ne/sync-agent/timeline.test.js +155 -0
  200. package/dist/tests/multi_ne/sync-agent/timeline.test.js.map +1 -0
  201. package/dist/tests/multi_ne/sync-agent/user.test.d.ts +5 -0
  202. package/dist/tests/multi_ne/sync-agent/user.test.d.ts.map +1 -0
  203. package/dist/tests/multi_ne/sync-agent/user.test.js +53 -0
  204. package/dist/tests/multi_ne/sync-agent/user.test.js.map +1 -0
  205. package/dist/tests/multi_ne/syncWithBlocks.test.d.ts +3 -0
  206. package/dist/tests/multi_ne/syncWithBlocks.test.d.ts.map +1 -1
  207. package/dist/tests/multi_ne/syncWithBlocks.test.js +47 -77
  208. package/dist/tests/multi_ne/syncWithBlocks.test.js.map +1 -1
  209. package/dist/tests/multi_ne/syncedStream.test.js +1 -1
  210. package/dist/tests/multi_ne/syncedStream.test.js.map +1 -1
  211. package/dist/tests/multi_ne/syncedStreams.test.js +1 -1
  212. package/dist/tests/multi_ne/syncedStreams.test.js.map +1 -1
  213. package/dist/tests/multi_ne/userInboxMessage.test.js +4 -4
  214. package/dist/tests/multi_ne/userInboxMessage.test.js.map +1 -1
  215. package/dist/tests/multi_ne/userSettings.test.js +3 -16
  216. package/dist/tests/multi_ne/userSettings.test.js.map +1 -1
  217. package/dist/tests/multi_ne/workflows.test.js +22 -50
  218. package/dist/tests/multi_ne/workflows.test.js.map +1 -1
  219. package/dist/tests/testDriver_testUtils.d.ts.map +1 -1
  220. package/dist/tests/testDriver_testUtils.js +6 -22
  221. package/dist/tests/testDriver_testUtils.js.map +1 -1
  222. package/dist/tests/testUtils.d.ts +3 -104
  223. package/dist/tests/testUtils.d.ts.map +1 -1
  224. package/dist/tests/testUtils.js +6 -625
  225. package/dist/tests/testUtils.js.map +1 -1
  226. package/dist/tests/unit/snapshotMigration0001.test.js +4 -20
  227. package/dist/tests/unit/snapshotMigration0001.test.js.map +1 -1
  228. package/dist/tests/unit/snapshotMigration0004.test.js +5 -43
  229. package/dist/tests/unit/snapshotMigration0004.test.js.map +1 -1
  230. package/dist/tests/unit/snapshotMigration0005.test.js +5 -43
  231. package/dist/tests/unit/snapshotMigration0005.test.js.map +1 -1
  232. package/dist/tests/unit/streamUtils.test.js +21 -22
  233. package/dist/tests/unit/streamUtils.test.js.map +1 -1
  234. package/dist/tests/unit/tags.test.js +5 -7
  235. package/dist/tests/unit/tags.test.js.map +1 -1
  236. package/dist/types.d.ts +1 -21
  237. package/dist/types.d.ts.map +1 -1
  238. package/dist/types.js +2 -231
  239. package/dist/types.js.map +1 -1
  240. package/dist/views/models/timelineEvent.d.ts.map +1 -1
  241. package/dist/views/models/timelineEvent.js +132 -157
  242. package/dist/views/models/timelineEvent.js.map +1 -1
  243. package/dist/views/models/timelineTypes.d.ts +51 -30
  244. package/dist/views/models/timelineTypes.d.ts.map +1 -1
  245. package/dist/views/models/timelineTypes.js +3 -4
  246. package/dist/views/models/timelineTypes.js.map +1 -1
  247. package/dist/views/streams/timelines.d.ts +1 -1
  248. package/dist/views/streams/timelines.d.ts.map +1 -1
  249. package/dist/views/streams/timelines.js +3 -3
  250. package/dist/views/streams/timelines.js.map +1 -1
  251. package/dist/views/streams/userInboxStreams.d.ts +3 -0
  252. package/dist/views/streams/userInboxStreams.d.ts.map +1 -1
  253. package/dist/views/streams/userInboxStreams.js +15 -4
  254. package/dist/views/streams/userInboxStreams.js.map +1 -1
  255. package/dist/views/streams/userMetadataStreams.d.ts +3 -0
  256. package/dist/views/streams/userMetadataStreams.d.ts.map +1 -1
  257. package/dist/views/streams/userMetadataStreams.js +15 -4
  258. package/dist/views/streams/userMetadataStreams.js.map +1 -1
  259. package/dist/views/streams/userSettingsStreams.d.ts +3 -0
  260. package/dist/views/streams/userSettingsStreams.d.ts.map +1 -1
  261. package/dist/views/streams/userSettingsStreams.js +17 -6
  262. package/dist/views/streams/userSettingsStreams.js.map +1 -1
  263. package/dist/views/streams/userStreamsView.d.ts +3 -0
  264. package/dist/views/streams/userStreamsView.d.ts.map +1 -1
  265. package/dist/views/streams/userStreamsView.js +21 -10
  266. package/dist/views/streams/userStreamsView.js.map +1 -1
  267. package/dist/views/streamsView.d.ts +0 -6
  268. package/dist/views/streamsView.d.ts.map +1 -1
  269. package/dist/views/streamsView.js +0 -11
  270. package/dist/views/streamsView.js.map +1 -1
  271. package/dist/views/transforms/dmsAndGdmsTransform.d.ts +0 -2
  272. package/dist/views/transforms/dmsAndGdmsTransform.d.ts.map +1 -1
  273. package/dist/views/transforms/dmsAndGdmsTransform.js +1 -26
  274. package/dist/views/transforms/dmsAndGdmsTransform.js.map +1 -1
  275. package/dist/views/transforms/dmsAndGdmsUnreadIdsTransform.d.ts +1 -2
  276. package/dist/views/transforms/dmsAndGdmsUnreadIdsTransform.d.ts.map +1 -1
  277. package/dist/views/transforms/dmsAndGdmsUnreadIdsTransform.js +2 -5
  278. package/dist/views/transforms/dmsAndGdmsUnreadIdsTransform.js.map +1 -1
  279. package/dist/views/transforms/spaceIdsTransform.d.ts +1 -1
  280. package/dist/views/transforms/spaceIdsTransform.d.ts.map +1 -1
  281. package/dist/views/transforms/spaceIdsTransform.js +3 -10
  282. package/dist/views/transforms/spaceIdsTransform.js.map +1 -1
  283. package/dist/views/transforms/spaceMentionsTransform.d.ts.map +1 -1
  284. package/dist/views/transforms/spaceMentionsTransform.js +13 -14
  285. package/dist/views/transforms/spaceMentionsTransform.js.map +1 -1
  286. package/dist/views/transforms/spaceUnreadsTransform.d.ts.map +1 -1
  287. package/dist/views/transforms/spaceUnreadsTransform.js +21 -22
  288. package/dist/views/transforms/spaceUnreadsTransform.js.map +1 -1
  289. package/dist/views/transforms/unreadMarkersTransform.js +2 -4
  290. package/dist/views/transforms/unreadMarkersTransform.js.map +1 -1
  291. package/package.json +10 -9
  292. package/dist/memberMetadata_DisplayNames.d.ts +0 -26
  293. package/dist/memberMetadata_DisplayNames.d.ts.map +0 -1
  294. package/dist/memberMetadata_DisplayNames.js +0 -95
  295. package/dist/memberMetadata_DisplayNames.js.map +0 -1
  296. package/dist/memberMetadata_EnsAddresses.d.ts +0 -25
  297. package/dist/memberMetadata_EnsAddresses.d.ts.map +0 -1
  298. package/dist/memberMetadata_EnsAddresses.js +0 -86
  299. package/dist/memberMetadata_EnsAddresses.js.map +0 -1
  300. package/dist/memberMetadata_Nft.d.ts +0 -31
  301. package/dist/memberMetadata_Nft.d.ts.map +0 -1
  302. package/dist/memberMetadata_Nft.js +0 -95
  303. package/dist/memberMetadata_Nft.js.map +0 -1
  304. package/dist/memberMetadata_Usernames.d.ts +0 -35
  305. package/dist/memberMetadata_Usernames.d.ts.map +0 -1
  306. package/dist/memberMetadata_Usernames.js +0 -162
  307. package/dist/memberMetadata_Usernames.js.map +0 -1
  308. package/dist/streamStateView_Channel.d.ts +0 -16
  309. package/dist/streamStateView_Channel.d.ts.map +0 -1
  310. package/dist/streamStateView_Channel.js +0 -76
  311. package/dist/streamStateView_Channel.js.map +0 -1
  312. package/dist/streamStateView_DMChannel.d.ts +0 -25
  313. package/dist/streamStateView_DMChannel.d.ts.map +0 -1
  314. package/dist/streamStateView_DMChannel.js +0 -114
  315. package/dist/streamStateView_DMChannel.js.map +0 -1
  316. package/dist/streamStateView_Space.d.ts +0 -31
  317. package/dist/streamStateView_Space.d.ts.map +0 -1
  318. package/dist/streamStateView_Space.js +0 -193
  319. package/dist/streamStateView_Space.js.map +0 -1
  320. package/dist/sync-agent/dms/dms.d.ts +0 -24
  321. package/dist/sync-agent/dms/dms.d.ts.map +0 -1
  322. package/dist/sync-agent/dms/dms.js +0 -60
  323. package/dist/sync-agent/dms/dms.js.map +0 -1
  324. package/dist/sync-agent/dms/models/dm.d.ts +0 -74
  325. package/dist/sync-agent/dms/models/dm.d.ts.map +0 -1
  326. package/dist/sync-agent/dms/models/dm.js +0 -149
  327. package/dist/sync-agent/dms/models/dm.js.map +0 -1
  328. package/dist/sync-agent/river-connection/models/transactionalClient.d.ts +0 -11
  329. package/dist/sync-agent/river-connection/models/transactionalClient.d.ts.map +0 -1
  330. package/dist/sync-agent/river-connection/models/transactionalClient.js +0 -14
  331. package/dist/sync-agent/river-connection/models/transactionalClient.js.map +0 -1
  332. package/dist/sync-agent/spaces/models/channel.d.ts +0 -121
  333. package/dist/sync-agent/spaces/models/channel.d.ts.map +0 -1
  334. package/dist/sync-agent/spaces/models/channel.js +0 -182
  335. package/dist/sync-agent/spaces/models/channel.js.map +0 -1
  336. package/dist/sync-agent/spaces/models/space.d.ts +0 -57
  337. package/dist/sync-agent/spaces/models/space.d.ts.map +0 -1
  338. package/dist/sync-agent/spaces/models/space.js +0 -125
  339. package/dist/sync-agent/spaces/models/space.js.map +0 -1
  340. package/dist/sync-agent/spaces/spaces.d.ts +0 -28
  341. package/dist/sync-agent/spaces/spaces.d.ts.map +0 -1
  342. package/dist/sync-agent/spaces/spaces.js +0 -71
  343. package/dist/sync-agent/spaces/spaces.js.map +0 -1
  344. package/dist/tests/multi/channelSpaceSettings.test.d.ts +0 -5
  345. package/dist/tests/multi/channelSpaceSettings.test.d.ts.map +0 -1
  346. package/dist/tests/multi/channelSpaceSettings.test.js +0 -204
  347. package/dist/tests/multi/channelSpaceSettings.test.js.map +0 -1
  348. package/dist/tests/multi/disableChannel.test.d.ts +0 -5
  349. package/dist/tests/multi/disableChannel.test.d.ts.map +0 -1
  350. package/dist/tests/multi/disableChannel.test.js +0 -30
  351. package/dist/tests/multi/disableChannel.test.js.map +0 -1
  352. package/dist/tests/multi/disableSpace.test.d.ts.map +0 -1
  353. package/dist/tests/multi/disableSpace.test.js +0 -37
  354. package/dist/tests/multi/disableSpace.test.js.map +0 -1
  355. package/dist/tests/multi/entitlements/channelEntitlementPermissions.test.d.ts +0 -5
  356. package/dist/tests/multi/entitlements/channelEntitlementPermissions.test.d.ts.map +0 -1
  357. package/dist/tests/multi/entitlements/channelEntitlementPermissions.test.js +0 -129
  358. package/dist/tests/multi/entitlements/channelEntitlementPermissions.test.js.map +0 -1
  359. package/dist/tests/multi/entitlements/channelWithThreeNestedEntitlement.test.d.ts +0 -5
  360. package/dist/tests/multi/entitlements/channelWithThreeNestedEntitlement.test.d.ts.map +0 -1
  361. package/dist/tests/multi/entitlements/channelWithThreeNestedEntitlement.test.js +0 -44
  362. package/dist/tests/multi/entitlements/channelWithThreeNestedEntitlement.test.js.map +0 -1
  363. package/dist/tests/multi/entitlements/channelsWithComplexEntitlements.test.d.ts +0 -5
  364. package/dist/tests/multi/entitlements/channelsWithComplexEntitlements.test.d.ts.map +0 -1
  365. package/dist/tests/multi/entitlements/channelsWithComplexEntitlements.test.js +0 -125
  366. package/dist/tests/multi/entitlements/channelsWithComplexEntitlements.test.js.map +0 -1
  367. package/dist/tests/multi/entitlements/channelsWithEntitlementLoss.test.d.ts +0 -5
  368. package/dist/tests/multi/entitlements/channelsWithEntitlementLoss.test.d.ts.map +0 -1
  369. package/dist/tests/multi/entitlements/channelsWithEntitlementLoss.test.js +0 -72
  370. package/dist/tests/multi/entitlements/channelsWithEntitlementLoss.test.js.map +0 -1
  371. package/dist/tests/multi/entitlements/channelsWithEntitlements.test.d.ts +0 -5
  372. package/dist/tests/multi/entitlements/channelsWithEntitlements.test.d.ts.map +0 -1
  373. package/dist/tests/multi/entitlements/channelsWithEntitlements.test.js +0 -57
  374. package/dist/tests/multi/entitlements/channelsWithEntitlements.test.js.map +0 -1
  375. package/dist/tests/multi/entitlements/channelsWithErc20Entitlements.test.d.ts +0 -5
  376. package/dist/tests/multi/entitlements/channelsWithErc20Entitlements.test.d.ts.map +0 -1
  377. package/dist/tests/multi/entitlements/channelsWithErc20Entitlements.test.js +0 -86
  378. package/dist/tests/multi/entitlements/channelsWithErc20Entitlements.test.js.map +0 -1
  379. package/dist/tests/multi/entitlements/channelsWithErc721Entitlements.test.d.ts +0 -5
  380. package/dist/tests/multi/entitlements/channelsWithErc721Entitlements.test.d.ts.map +0 -1
  381. package/dist/tests/multi/entitlements/channelsWithErc721Entitlements.test.js +0 -69
  382. package/dist/tests/multi/entitlements/channelsWithErc721Entitlements.test.js.map +0 -1
  383. package/dist/tests/multi/entitlements/channelsWithEthBalanceEntitlements.test.d.ts +0 -5
  384. package/dist/tests/multi/entitlements/channelsWithEthBalanceEntitlements.test.d.ts.map +0 -1
  385. package/dist/tests/multi/entitlements/channelsWithEthBalanceEntitlements.test.js +0 -145
  386. package/dist/tests/multi/entitlements/channelsWithEthBalanceEntitlements.test.js.map +0 -1
  387. package/dist/tests/multi/entitlements/channelsWithUserEntitlements.test.d.ts +0 -5
  388. package/dist/tests/multi/entitlements/channelsWithUserEntitlements.test.d.ts.map +0 -1
  389. package/dist/tests/multi/entitlements/channelsWithUserEntitlements.test.js +0 -53
  390. package/dist/tests/multi/entitlements/channelsWithUserEntitlements.test.js.map +0 -1
  391. package/dist/tests/multi/entitlements/membershipRenewals.test.d.ts +0 -5
  392. package/dist/tests/multi/entitlements/membershipRenewals.test.d.ts.map +0 -1
  393. package/dist/tests/multi/entitlements/membershipRenewals.test.js +0 -150
  394. package/dist/tests/multi/entitlements/membershipRenewals.test.js.map +0 -1
  395. package/dist/tests/multi/entitlements/spaceWithComplexEntitlements.test.d.ts +0 -5
  396. package/dist/tests/multi/entitlements/spaceWithComplexEntitlements.test.d.ts.map +0 -1
  397. package/dist/tests/multi/entitlements/spaceWithComplexEntitlements.test.js +0 -131
  398. package/dist/tests/multi/entitlements/spaceWithComplexEntitlements.test.js.map +0 -1
  399. package/dist/tests/multi/entitlements/spaceWithEntitlements.test.d.ts +0 -5
  400. package/dist/tests/multi/entitlements/spaceWithEntitlements.test.d.ts.map +0 -1
  401. package/dist/tests/multi/entitlements/spaceWithEntitlements.test.js +0 -109
  402. package/dist/tests/multi/entitlements/spaceWithEntitlements.test.js.map +0 -1
  403. package/dist/tests/multi/entitlements/spaceWithErc20Entitlements.test.d.ts +0 -5
  404. package/dist/tests/multi/entitlements/spaceWithErc20Entitlements.test.d.ts.map +0 -1
  405. package/dist/tests/multi/entitlements/spaceWithErc20Entitlements.test.js +0 -103
  406. package/dist/tests/multi/entitlements/spaceWithErc20Entitlements.test.js.map +0 -1
  407. package/dist/tests/multi/entitlements/spaceWithErc721Entitlements.test.d.ts +0 -5
  408. package/dist/tests/multi/entitlements/spaceWithErc721Entitlements.test.d.ts.map +0 -1
  409. package/dist/tests/multi/entitlements/spaceWithErc721Entitlements.test.js +0 -84
  410. package/dist/tests/multi/entitlements/spaceWithErc721Entitlements.test.js.map +0 -1
  411. package/dist/tests/multi/entitlements/spaceWithEthBalanceEntitlements.test.d.ts +0 -5
  412. package/dist/tests/multi/entitlements/spaceWithEthBalanceEntitlements.test.d.ts.map +0 -1
  413. package/dist/tests/multi/entitlements/spaceWithEthBalanceEntitlements.test.js +0 -168
  414. package/dist/tests/multi/entitlements/spaceWithEthBalanceEntitlements.test.js.map +0 -1
  415. package/dist/tests/multi/entitlements/spaceWithThreeNestedEntitlement.test.d.ts +0 -5
  416. package/dist/tests/multi/entitlements/spaceWithThreeNestedEntitlement.test.d.ts.map +0 -1
  417. package/dist/tests/multi/entitlements/spaceWithThreeNestedEntitlement.test.js +0 -45
  418. package/dist/tests/multi/entitlements/spaceWithThreeNestedEntitlement.test.js.map +0 -1
  419. package/dist/tests/multi/entitlements/spaceWithUserEntitlements.test.d.ts +0 -5
  420. package/dist/tests/multi/entitlements/spaceWithUserEntitlements.test.d.ts.map +0 -1
  421. package/dist/tests/multi/entitlements/spaceWithUserEntitlements.test.js +0 -79
  422. package/dist/tests/multi/entitlements/spaceWithUserEntitlements.test.js.map +0 -1
  423. package/dist/tests/multi/legacySpace.test.d.ts.map +0 -1
  424. package/dist/tests/multi/legacySpace.test.js +0 -48
  425. package/dist/tests/multi/legacySpace.test.js.map +0 -1
  426. package/dist/tests/multi/mediaWithEntitlements.test.d.ts +0 -5
  427. package/dist/tests/multi/mediaWithEntitlements.test.d.ts.map +0 -1
  428. package/dist/tests/multi/mediaWithEntitlements.test.js +0 -152
  429. package/dist/tests/multi/mediaWithEntitlements.test.js.map +0 -1
  430. package/dist/tests/multi/membershipManagement.test.d.ts +0 -5
  431. package/dist/tests/multi/membershipManagement.test.d.ts.map +0 -1
  432. package/dist/tests/multi/membershipManagement.test.js +0 -76
  433. package/dist/tests/multi/membershipManagement.test.js.map +0 -1
  434. package/dist/tests/multi/riverAirdropDapp.test.d.ts +0 -5
  435. package/dist/tests/multi/riverAirdropDapp.test.d.ts.map +0 -1
  436. package/dist/tests/multi/riverAirdropDapp.test.js +0 -43
  437. package/dist/tests/multi/riverAirdropDapp.test.js.map +0 -1
  438. package/dist/tests/multi/spaceDapp.test.d.ts.map +0 -1
  439. package/dist/tests/multi/spaceDapp.test.js +0 -61
  440. package/dist/tests/multi/spaceDapp.test.js.map +0 -1
  441. package/dist/tests/multi/spaceWithVariousPriceConfigurations.test.d.ts +0 -2
  442. package/dist/tests/multi/spaceWithVariousPriceConfigurations.test.d.ts.map +0 -1
  443. package/dist/tests/multi/spaceWithVariousPriceConfigurations.test.js +0 -63
  444. package/dist/tests/multi/spaceWithVariousPriceConfigurations.test.js.map +0 -1
  445. package/dist/tests/multi/withEntitlements.test.d.ts +0 -5
  446. package/dist/tests/multi/withEntitlements.test.d.ts.map +0 -1
  447. package/dist/tests/multi/withEntitlements.test.js +0 -125
  448. package/dist/tests/multi/withEntitlements.test.js.map +0 -1
  449. package/dist/tests/multi_ne/dms.test.d.ts +0 -5
  450. package/dist/tests/multi_ne/dms.test.d.ts.map +0 -1
  451. package/dist/tests/multi_ne/dms.test.js +0 -131
  452. package/dist/tests/multi_ne/dms.test.js.map +0 -1
  453. package/dist/tests/multi_ne/memberMetadata_DisplayNames.test.d.ts +0 -5
  454. package/dist/tests/multi_ne/memberMetadata_DisplayNames.test.d.ts.map +0 -1
  455. package/dist/tests/multi_ne/memberMetadata_DisplayNames.test.js +0 -54
  456. package/dist/tests/multi_ne/memberMetadata_DisplayNames.test.js.map +0 -1
  457. package/dist/tests/multi_ne/memberMetadata_EnsAddresses.test.d.ts +0 -5
  458. package/dist/tests/multi_ne/memberMetadata_EnsAddresses.test.d.ts.map +0 -1
  459. package/dist/tests/multi_ne/memberMetadata_EnsAddresses.test.js +0 -37
  460. package/dist/tests/multi_ne/memberMetadata_EnsAddresses.test.js.map +0 -1
  461. package/dist/tests/multi_ne/memberMetadata_Nft.test.d.ts +0 -5
  462. package/dist/tests/multi_ne/memberMetadata_Nft.test.d.ts.map +0 -1
  463. package/dist/tests/multi_ne/memberMetadata_Nft.test.js +0 -49
  464. package/dist/tests/multi_ne/memberMetadata_Nft.test.js.map +0 -1
  465. package/dist/tests/multi_ne/memberMetadata_Usernames.test.d.ts +0 -5
  466. package/dist/tests/multi_ne/memberMetadata_Usernames.test.d.ts.map +0 -1
  467. package/dist/tests/multi_ne/memberMetadata_Usernames.test.js +0 -126
  468. package/dist/tests/multi_ne/memberMetadata_Usernames.test.js.map +0 -1
  469. package/dist/tests/multi_ne/space.test.d.ts +0 -5
  470. package/dist/tests/multi_ne/space.test.d.ts.map +0 -1
  471. package/dist/tests/multi_ne/space.test.js +0 -284
  472. package/dist/tests/multi_ne/space.test.js.map +0 -1
  473. package/dist/tests/multi_v2/entitlements/channelsWithCrossChainEntitlements.test.d.ts +0 -6
  474. package/dist/tests/multi_v2/entitlements/channelsWithCrossChainEntitlements.test.d.ts.map +0 -1
  475. package/dist/tests/multi_v2/entitlements/channelsWithCrossChainEntitlements.test.js +0 -78
  476. package/dist/tests/multi_v2/entitlements/channelsWithCrossChainEntitlements.test.js.map +0 -1
  477. package/dist/tests/multi_v2/entitlements/channelsWithErc1155Entitlement.test.d.ts +0 -6
  478. package/dist/tests/multi_v2/entitlements/channelsWithErc1155Entitlement.test.d.ts.map +0 -1
  479. package/dist/tests/multi_v2/entitlements/channelsWithErc1155Entitlement.test.js +0 -89
  480. package/dist/tests/multi_v2/entitlements/channelsWithErc1155Entitlement.test.js.map +0 -1
  481. package/dist/tests/multi_v2/entitlements/spaceWithCrossChainEntitlements.test.d.ts +0 -6
  482. package/dist/tests/multi_v2/entitlements/spaceWithCrossChainEntitlements.test.d.ts.map +0 -1
  483. package/dist/tests/multi_v2/entitlements/spaceWithCrossChainEntitlements.test.js +0 -88
  484. package/dist/tests/multi_v2/entitlements/spaceWithCrossChainEntitlements.test.js.map +0 -1
  485. package/dist/tests/multi_v2/entitlements/spaceWithErc1155Entitlements.test.d.ts +0 -6
  486. package/dist/tests/multi_v2/entitlements/spaceWithErc1155Entitlements.test.d.ts.map +0 -1
  487. package/dist/tests/multi_v2/entitlements/spaceWithErc1155Entitlements.test.js +0 -105
  488. package/dist/tests/multi_v2/entitlements/spaceWithErc1155Entitlements.test.js.map +0 -1
  489. package/dist/tests/multi_v2/updateRole.test.d.ts +0 -5
  490. package/dist/tests/multi_v2/updateRole.test.d.ts.map +0 -1
  491. package/dist/tests/multi_v2/updateRole.test.js +0 -25
  492. package/dist/tests/multi_v2/updateRole.test.js.map +0 -1
  493. package/dist/tests/unit/snapshotMigration0002.test.d.ts +0 -2
  494. package/dist/tests/unit/snapshotMigration0002.test.d.ts.map +0 -1
  495. package/dist/tests/unit/snapshotMigration0002.test.js +0 -31
  496. package/dist/tests/unit/snapshotMigration0002.test.js.map +0 -1
  497. package/dist/views/streams/channelStreams.d.ts +0 -8
  498. package/dist/views/streams/channelStreams.d.ts.map +0 -1
  499. package/dist/views/streams/channelStreams.js +0 -9
  500. package/dist/views/streams/channelStreams.js.map +0 -1
  501. package/dist/views/streams/dmStreams.d.ts +0 -13
  502. package/dist/views/streams/dmStreams.d.ts.map +0 -1
  503. package/dist/views/streams/dmStreams.js +0 -33
  504. package/dist/views/streams/dmStreams.js.map +0 -1
  505. package/dist/views/streams/spaceStreams.d.ts +0 -17
  506. package/dist/views/streams/spaceStreams.d.ts.map +0 -1
  507. package/dist/views/streams/spaceStreams.js +0 -52
  508. package/dist/views/streams/spaceStreams.js.map +0 -1
@@ -1,168 +0,0 @@
1
- /**
2
- * @group with-entitlements
3
- */
4
- import { createTownWithRequirements, createUserStreamAndSyncClient, everyoneMembershipStruct, expectUserCannotJoinSpace, expectUserCanJoin, linkWallets, ethBalanceCheckOp, oneEth, oneHalfEth, threeEth, twoEth, } from '../../testUtils';
5
- import { dlog } from '@towns-labs/utils';
6
- import { TestEthBalance, treeToRuleData } from '@towns-labs/web3';
7
- const log = dlog('csb:test:spaceWithEthBalanceEntitlements');
8
- describe('spaceWithEthBalanceEntitlements', () => {
9
- test('eth balance gated join pass', async () => {
10
- const ruleData = treeToRuleData(ethBalanceCheckOp(oneEth));
11
- const { alice, bob, aliceSpaceDapp, aliceProvider, alicesWallet, spaceId, channelId } = await createTownWithRequirements({
12
- everyone: false,
13
- users: [],
14
- ruleData,
15
- });
16
- await TestEthBalance.setBaseBalance(alicesWallet.address, twoEth);
17
- await expectUserCanJoin(spaceId, channelId, 'alice', alice, aliceSpaceDapp, alicesWallet.address, aliceProvider.wallet);
18
- const doneStart = Date.now();
19
- // kill the clients
20
- await bob.stopSync();
21
- await alice.stopSync();
22
- log('Done', Date.now() - doneStart);
23
- });
24
- test('eth balance gated join pass - across networks', async () => {
25
- const ruleData = treeToRuleData(ethBalanceCheckOp(twoEth));
26
- const { alice, bob, aliceSpaceDapp, aliceProvider, alicesWallet, spaceId, channelId } = await createTownWithRequirements({
27
- everyone: false,
28
- users: [],
29
- ruleData,
30
- });
31
- await Promise.all([
32
- // Overprovision alice's wallet to pay for membership, gas fees for joining town
33
- TestEthBalance.setBaseBalance(alicesWallet.address, oneEth + oneHalfEth),
34
- TestEthBalance.setRiverBalance(alicesWallet.address, oneEth),
35
- ]);
36
- await expectUserCanJoin(spaceId, channelId, 'alice', alice, aliceSpaceDapp, alicesWallet.address, aliceProvider.wallet);
37
- const doneStart = Date.now();
38
- // kill the clients
39
- await bob.stopSync();
40
- await alice.stopSync();
41
- log('Done', Date.now() - doneStart);
42
- });
43
- test('eth balance gated join fail', async () => {
44
- const ruleData = treeToRuleData(ethBalanceCheckOp(oneEth));
45
- const { alice, bob, aliceSpaceDapp, aliceProvider, alicesWallet, spaceId } = await createTownWithRequirements({
46
- everyone: false,
47
- users: [],
48
- ruleData,
49
- });
50
- // Explicitly set alice's balance to not enough, but not zero, since she has to pay to join
51
- // the town.
52
- await TestEthBalance.setBaseBalance(alicesWallet.address, oneHalfEth);
53
- // Have alice create her own space so she can initialize her user stream.
54
- // Then she will attempt to join the space from the client, which should fail
55
- // for permissions reasons.
56
- await createUserStreamAndSyncClient(alice, aliceSpaceDapp, 'alice', await everyoneMembershipStruct(aliceSpaceDapp, alice), aliceProvider.wallet);
57
- await expectUserCannotJoinSpace(spaceId, alice, aliceSpaceDapp, alicesWallet.address);
58
- const doneStart = Date.now();
59
- // kill the clients
60
- await bob.stopSync();
61
- await alice.stopSync();
62
- log('Done', Date.now() - doneStart);
63
- });
64
- test('eth balance gated join pass - join as root, linked wallet entitled', async () => {
65
- const ruleData = treeToRuleData(ethBalanceCheckOp(threeEth));
66
- const { alice, bob, aliceSpaceDapp, aliceProvider, carolsWallet, alicesWallet, carolProvider, spaceId, channelId, } = await createTownWithRequirements({
67
- everyone: false,
68
- users: [],
69
- ruleData,
70
- });
71
- // Link carol's wallet to alice's as root
72
- await linkWallets(aliceSpaceDapp, aliceProvider.wallet, carolProvider.wallet);
73
- // Setting Carol's cumulative balance to 3ETH
74
- await Promise.all([
75
- // Overprovision alice's wallet to pay for membership, gas fees for joining town
76
- TestEthBalance.setBaseBalance(alicesWallet.address, oneHalfEth),
77
- TestEthBalance.setRiverBalance(carolsWallet.address, oneEth),
78
- TestEthBalance.setBaseBalance(carolsWallet.address, twoEth),
79
- ]);
80
- // Validate alice can join the space
81
- await expectUserCanJoin(spaceId, channelId, 'alice', alice, aliceSpaceDapp, alicesWallet.address, aliceProvider.wallet);
82
- const doneStart = Date.now();
83
- // kill the clients
84
- await bob.stopSync();
85
- await alice.stopSync();
86
- log('Done', Date.now() - doneStart);
87
- });
88
- test('eth balance gated join pass - join as linked wallet, assets in root wallet', async () => {
89
- const ruleData = treeToRuleData(ethBalanceCheckOp(twoEth));
90
- const { alice, bob, aliceSpaceDapp, carolSpaceDapp, aliceProvider, alicesWallet, carolsWallet, carolProvider, spaceId, channelId, } = await createTownWithRequirements({
91
- everyone: false,
92
- users: [],
93
- ruleData,
94
- });
95
- log("Joining alice's wallet as a linked wallet to carol's root wallet");
96
- await linkWallets(carolSpaceDapp, carolProvider.wallet, aliceProvider.wallet);
97
- log('Setting carol cumulative balance to 2ETH');
98
- await Promise.all([
99
- TestEthBalance.setBaseBalance(carolsWallet.address, oneEth),
100
- TestEthBalance.setRiverBalance(carolsWallet.address, oneEth),
101
- // Overprovision alice's wallet to pay for membership, gas fees for joining town
102
- TestEthBalance.setBaseBalance(alicesWallet.address, oneHalfEth),
103
- ]);
104
- log('expect that alice can join the space');
105
- // Validate alice can join the space
106
- await expectUserCanJoin(spaceId, channelId, 'alice', alice, aliceSpaceDapp, alicesWallet.address, aliceProvider.wallet);
107
- const doneStart = Date.now();
108
- // kill the clients
109
- await bob.stopSync();
110
- await alice.stopSync();
111
- log('Done', Date.now() - doneStart);
112
- });
113
- test('eth balance gated join pass - assets must accumulate across wallets', async () => {
114
- const ruleData = treeToRuleData(ethBalanceCheckOp(twoEth));
115
- const { alice, bob, aliceSpaceDapp, carolSpaceDapp, aliceProvider, alicesWallet, carolsWallet, carolProvider, spaceId, channelId, } = await createTownWithRequirements({
116
- everyone: false,
117
- users: [],
118
- ruleData,
119
- });
120
- log("Joining alice's wallet as a linked wallet to carol's root wallet");
121
- await linkWallets(carolSpaceDapp, carolProvider.wallet, aliceProvider.wallet);
122
- log('Setting carol cumulative balance to 2ETH');
123
- await Promise.all([
124
- TestEthBalance.setBaseBalance(carolsWallet.address, oneHalfEth),
125
- TestEthBalance.setRiverBalance(carolsWallet.address, oneHalfEth),
126
- TestEthBalance.setBaseBalance(alicesWallet.address, oneHalfEth),
127
- // Overprovision alice's wallet to pay for membership, gas fees for joining town
128
- TestEthBalance.setRiverBalance(alicesWallet.address, oneEth),
129
- ]);
130
- log('expect that alice can join the space');
131
- // Validate alice can join the space
132
- await expectUserCanJoin(spaceId, channelId, 'alice', alice, aliceSpaceDapp, alicesWallet.address, aliceProvider.wallet);
133
- const doneStart = Date.now();
134
- // kill the clients
135
- await bob.stopSync();
136
- await alice.stopSync();
137
- log('Done', Date.now() - doneStart);
138
- });
139
- test('eth balance gate join fail - insufficient assets across wallets', async () => {
140
- const ruleData = treeToRuleData(ethBalanceCheckOp(threeEth));
141
- const { alice, bob, carol, aliceSpaceDapp, carolSpaceDapp, aliceProvider, carolsWallet, alicesWallet, carolProvider, spaceId, } = await createTownWithRequirements({
142
- everyone: false,
143
- users: [],
144
- ruleData,
145
- });
146
- // Link carol's wallet to alice's as root
147
- await linkWallets(aliceSpaceDapp, aliceProvider.wallet, carolProvider.wallet);
148
- // Set wallet balances to sum to < 3ETH but also be nonzero, as they have to pay to join the town.
149
- await Promise.all([
150
- TestEthBalance.setBaseBalance(carolsWallet.address, oneHalfEth),
151
- TestEthBalance.setBaseBalance(alicesWallet.address, oneHalfEth),
152
- ]);
153
- // Have alice and carol create their own space so they can initialize their user streams.
154
- // Then they will attempt to join the space from the client, which should fail
155
- // for permissions reasons.
156
- await createUserStreamAndSyncClient(alice, aliceSpaceDapp, 'alice', await everyoneMembershipStruct(aliceSpaceDapp, alice), aliceProvider.wallet);
157
- await createUserStreamAndSyncClient(carol, carolSpaceDapp, 'carol', await everyoneMembershipStruct(carolSpaceDapp, carol), carolProvider.wallet);
158
- log('expect neither alice nor carol can join the space');
159
- await expectUserCannotJoinSpace(spaceId, alice, aliceSpaceDapp, alicesWallet.address);
160
- await expectUserCannotJoinSpace(spaceId, carol, carolSpaceDapp, carolsWallet.address);
161
- const doneStart = Date.now();
162
- // kill the clients
163
- await bob.stopSync();
164
- await alice.stopSync();
165
- log('Done', Date.now() - doneStart);
166
- });
167
- });
168
- //# sourceMappingURL=spaceWithEthBalanceEntitlements.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"spaceWithEthBalanceEntitlements.test.js","sourceRoot":"","sources":["../../../../src/tests/multi/entitlements/spaceWithEthBalanceEntitlements.test.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- /**
2
- * @group with-entitlements
3
- */
4
- export {};
5
- //# sourceMappingURL=spaceWithThreeNestedEntitlement.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"spaceWithThreeNestedEntitlement.test.d.ts","sourceRoot":"","sources":["../../../../src/tests/multi/entitlements/spaceWithThreeNestedEntitlement.test.ts"],"names":[],"mappings":"AAAA;;GAEG"}
@@ -1,45 +0,0 @@
1
- /**
2
- * @group with-entitlements
3
- */
4
- import { createTownWithRequirements, createUserStreamAndSyncClient, everyoneMembershipStruct, expectUserCannotJoinSpace, expectUserCanJoin, setupWalletsAndContexts, } from '../../testUtils';
5
- import { dlog } from '@towns-labs/utils';
6
- import { TestERC721, createExternalNFTStruct } from '@towns-labs/web3';
7
- const log = dlog('csb:test:spaceWithThreeNestedEntitlement');
8
- describe('spaceWithThreeNestedEntitlement', () => {
9
- // This test takes almost one minute to run in CI and therefore gets its own file.
10
- test('user with only one entitlement from 3-nested NFT rule data can join space', async () => {
11
- const testNft1 = 'TestNft1';
12
- const testNft2 = 'TestNft2';
13
- const testNft3 = 'TestNft3';
14
- const testNftAddress = await TestERC721.getContractAddress(testNft1);
15
- const testNftAddress2 = await TestERC721.getContractAddress(testNft2);
16
- const testNftAddress3 = await TestERC721.getContractAddress(testNft3);
17
- const ruleData = createExternalNFTStruct([testNftAddress, testNftAddress2, testNftAddress3]);
18
- const { alice, bob, carol, aliceSpaceDapp, aliceProvider, carolProvider, carolSpaceDapp, alicesWallet, carolsWallet, spaceId, channelId, } = await createTownWithRequirements({
19
- everyone: false,
20
- users: [],
21
- ruleData,
22
- });
23
- // Set up additional users to test single ownership of all three nfts.
24
- const { alice: dave, alicesWallet: davesWallet, aliceSpaceDapp: daveSpaceDapp, aliceProvider: daveProvider, carol: emily, carolProvider: emilyProvider, carolSpaceDapp: emilySpaceDapp, carolsWallet: emilyWallet, } = await setupWalletsAndContexts();
25
- // Have alice create her own space so she can initialize her user stream.
26
- // Then she will attempt to join the space from herclient, which should fail.
27
- await createUserStreamAndSyncClient(alice, aliceSpaceDapp, 'alice', await everyoneMembershipStruct(aliceSpaceDapp, alice), aliceProvider.wallet);
28
- await expectUserCannotJoinSpace(spaceId, alice, aliceSpaceDapp, alicesWallet.address);
29
- await TestERC721.publicMint(testNft1, carolsWallet.address);
30
- await expectUserCanJoin(spaceId, channelId, 'carol', carol, carolSpaceDapp, carolsWallet.address, carolProvider.wallet);
31
- await TestERC721.publicMint(testNft2, davesWallet.address);
32
- await expectUserCanJoin(spaceId, channelId, 'dave', dave, daveSpaceDapp, davesWallet.address, daveProvider.wallet);
33
- await TestERC721.publicMint(testNft3, emilyWallet.address);
34
- await expectUserCanJoin(spaceId, channelId, 'emily', emily, emilySpaceDapp, emilyWallet.address, emilyProvider.wallet);
35
- // kill the clients
36
- const doneStart = Date.now();
37
- await bob.stopSync();
38
- await alice.stopSync();
39
- await carol.stopSync();
40
- await dave.stopSync();
41
- await emily.stopSync();
42
- log('Done', Date.now() - doneStart);
43
- });
44
- });
45
- //# sourceMappingURL=spaceWithThreeNestedEntitlement.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"spaceWithThreeNestedEntitlement.test.js","sourceRoot":"","sources":["../../../../src/tests/multi/entitlements/spaceWithThreeNestedEntitlement.test.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACH,0BAA0B,EAC1B,6BAA6B,EAC7B,wBAAwB,EACxB,yBAAyB,EACzB,iBAAiB,EACjB,uBAAuB,GAC1B,MAAM,iBAAiB,CAAA;AACxB,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAA;AACxC,OAAO,EAAW,UAAU,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAA;AAE/E,MAAM,GAAG,GAAG,IAAI,CAAC,0CAA0C,CAAC,CAAA;AAE5D,QAAQ,CAAC,iCAAiC,EAAE,GAAG,EAAE;IAC7C,kFAAkF;IAClF,IAAI,CAAC,2EAA2E,EAAE,KAAK,IAAI,EAAE;QACzF,MAAM,QAAQ,GAAG,UAAU,CAAA;QAC3B,MAAM,QAAQ,GAAG,UAAU,CAAA;QAC3B,MAAM,QAAQ,GAAG,UAAU,CAAA;QAC3B,MAAM,cAAc,GAAG,MAAM,UAAU,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAA;QACpE,MAAM,eAAe,GAAG,MAAM,UAAU,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAA;QACrE,MAAM,eAAe,GAAG,MAAM,UAAU,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAA;QAErE,MAAM,QAAQ,GAAG,uBAAuB,CAAC,CAAC,cAAc,EAAE,eAAe,EAAE,eAAe,CAAC,CAAC,CAAA;QAE5F,MAAM,EACF,KAAK,EACL,GAAG,EACH,KAAK,EACL,cAAc,EACd,aAAa,EACb,aAAa,EACb,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,OAAO,EACP,SAAS,GACZ,GAAG,MAAM,0BAA0B,CAAC;YACjC,QAAQ,EAAE,KAAK;YACf,KAAK,EAAE,EAAE;YACT,QAAQ;SACX,CAAC,CAAA;QACF,sEAAsE;QACtE,MAAM,EACF,KAAK,EAAE,IAAI,EACX,YAAY,EAAE,WAAW,EACzB,cAAc,EAAE,aAAa,EAC7B,aAAa,EAAE,YAAY,EAC3B,KAAK,EAAE,KAAK,EACZ,aAAa,EAAE,aAAa,EAC5B,cAAc,EAAE,cAAc,EAC9B,YAAY,EAAE,WAAW,GAC5B,GAAG,MAAM,uBAAuB,EAAE,CAAA;QAEnC,yEAAyE;QACzE,6EAA6E;QAC7E,MAAM,6BAA6B,CAC/B,KAAK,EACL,cAAc,EACd,OAAO,EACP,MAAM,wBAAwB,CAAC,cAAc,EAAE,KAAK,CAAC,EACrD,aAAa,CAAC,MAAM,CACvB,CAAA;QACD,MAAM,yBAAyB,CAAC,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,YAAY,CAAC,OAAO,CAAC,CAAA;QAErF,MAAM,UAAU,CAAC,UAAU,CAAC,QAAQ,EAAE,YAAY,CAAC,OAAkB,CAAC,CAAA;QACtE,MAAM,iBAAiB,CACnB,OAAO,EACP,SAAS,EACT,OAAO,EACP,KAAK,EACL,cAAc,EACd,YAAY,CAAC,OAAO,EACpB,aAAa,CAAC,MAAM,CACvB,CAAA;QAED,MAAM,UAAU,CAAC,UAAU,CAAC,QAAQ,EAAE,WAAW,CAAC,OAAkB,CAAC,CAAA;QACrE,MAAM,iBAAiB,CACnB,OAAO,EACP,SAAS,EACT,MAAM,EACN,IAAI,EACJ,aAAa,EACb,WAAW,CAAC,OAAO,EACnB,YAAY,CAAC,MAAM,CACtB,CAAA;QAED,MAAM,UAAU,CAAC,UAAU,CAAC,QAAQ,EAAE,WAAW,CAAC,OAAkB,CAAC,CAAA;QACrE,MAAM,iBAAiB,CACnB,OAAO,EACP,SAAS,EACT,OAAO,EACP,KAAK,EACL,cAAc,EACd,WAAW,CAAC,OAAO,EACnB,aAAa,CAAC,MAAM,CACvB,CAAA;QAED,mBAAmB;QACnB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QAC5B,MAAM,GAAG,CAAC,QAAQ,EAAE,CAAA;QACpB,MAAM,KAAK,CAAC,QAAQ,EAAE,CAAA;QACtB,MAAM,KAAK,CAAC,QAAQ,EAAE,CAAA;QACtB,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAA;QACrB,MAAM,KAAK,CAAC,QAAQ,EAAE,CAAA;QACtB,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,CAAA;IACvC,CAAC,CAAC,CAAA;AACN,CAAC,CAAC,CAAA"}
@@ -1,5 +0,0 @@
1
- /**
2
- * @group with-entitlements
3
- */
4
- export {};
5
- //# sourceMappingURL=spaceWithUserEntitlements.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"spaceWithUserEntitlements.test.d.ts","sourceRoot":"","sources":["../../../../src/tests/multi/entitlements/spaceWithUserEntitlements.test.ts"],"names":[],"mappings":"AAAA;;GAEG"}
@@ -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 +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"}