@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,126 +0,0 @@
1
- /**
2
- * @group main
3
- */
4
- import { EncryptedDataSchema } from '@towns-labs/proto';
5
- import { MemberMetadata_Usernames } from '../../memberMetadata_Usernames';
6
- import { usernameChecksum } from '../../utils';
7
- import { create } from '@bufbuild/protobuf';
8
- describe('memberMetadata_UsernamesTests', () => {
9
- const streamId = 'streamid1';
10
- let usernames;
11
- beforeEach(() => {
12
- usernames = new MemberMetadata_Usernames(streamId, 'userid-1');
13
- });
14
- test('clientCanSetUsername', async () => {
15
- const username = 'bob-username1';
16
- const checksum = usernameChecksum(username, streamId);
17
- const encryptedData = create(EncryptedDataSchema, {
18
- ciphertext: username,
19
- checksum: checksum,
20
- });
21
- usernames.addEncryptedData('eventid-1', encryptedData, 'userid-1', true, undefined, undefined, undefined);
22
- usernames.onDecryptedContent('eventid-1', username);
23
- expect(usernames.plaintextUsernames).toEqual(new Map([['userid-1', username]]));
24
- });
25
- test('clientCannotSetDuplicateUsername', async () => {
26
- const username = 'bob-username1';
27
- const checksum = usernameChecksum(username, streamId);
28
- const encryptedData = create(EncryptedDataSchema, {
29
- ciphertext: username,
30
- checksum: checksum,
31
- });
32
- usernames.addEncryptedData('eventid-1', encryptedData, 'userid-1', true, undefined, undefined, undefined);
33
- usernames.onDecryptedContent('eventid-1', username);
34
- expect(usernames.plaintextUsernames).toEqual(new Map([['userid-1', username]]));
35
- usernames.addEncryptedData('eventid-1', encryptedData, 'userid-2', true, undefined, undefined, undefined);
36
- usernames.onDecryptedContent('eventid-1', username);
37
- expect(usernames.plaintextUsernames).toEqual(new Map([['userid-1', username]]));
38
- });
39
- test('duplicateUsernamesAreCaseInsensitive', async () => {
40
- const username = 'bob-username1';
41
- const checksum = usernameChecksum(username, streamId);
42
- const encryptedData = create(EncryptedDataSchema, {
43
- ciphertext: username,
44
- checksum: checksum,
45
- });
46
- const username2 = 'BOB-USERNAME1';
47
- const checksum2 = usernameChecksum(username2, streamId);
48
- const encryptedData2 = create(EncryptedDataSchema, {
49
- ciphertext: username2,
50
- checksum: checksum2,
51
- });
52
- usernames.addEncryptedData('eventid-1', encryptedData, 'userid-1', true, undefined, undefined, undefined);
53
- usernames.onDecryptedContent('eventid-1', username);
54
- expect(usernames.plaintextUsernames).toEqual(new Map([['userid-1', username]]));
55
- usernames.addEncryptedData('eventid-2', encryptedData2, 'userid-2', true, undefined, undefined, undefined);
56
- usernames.onDecryptedContent('eventid-2', username2);
57
- expect(usernames.plaintextUsernames).toEqual(new Map([['userid-1', username]]));
58
- });
59
- test('usernameIsAvailableAfterChange', async () => {
60
- const username = 'bob-username1';
61
- const checksum = usernameChecksum(username, streamId);
62
- const encryptedData = create(EncryptedDataSchema, {
63
- ciphertext: username,
64
- checksum: checksum,
65
- });
66
- usernames.addEncryptedData('eventid-1', encryptedData, 'userid-1', true, undefined, undefined, undefined);
67
- usernames.onDecryptedContent('eventid-1', username);
68
- expect(usernames.plaintextUsernames).toEqual(new Map([['userid-1', username]]));
69
- const username2 = 'bob-username2';
70
- const checksum2 = usernameChecksum(username2, streamId);
71
- const encryptedData2 = create(EncryptedDataSchema, {
72
- ciphertext: username2,
73
- checksum: checksum2,
74
- });
75
- // userid-1 changes their username
76
- usernames.addEncryptedData('eventid-2', encryptedData2, 'userid-1', true, undefined, undefined, undefined);
77
- usernames.onDecryptedContent('eventid-2', username2);
78
- expect(usernames.plaintextUsernames).toEqual(new Map([['userid-1', username2]]));
79
- // userid-2 can now use the old username
80
- usernames.addEncryptedData('eventid-1', encryptedData, 'userid-2', true, undefined, undefined, undefined);
81
- usernames.onDecryptedContent('eventid-1', username);
82
- expect(usernames.plaintextUsernames).toEqual(new Map([
83
- ['userid-1', username2],
84
- ['userid-2', username],
85
- ]));
86
- });
87
- test('clientCannotFakeChecksum', async () => {
88
- const username = 'bob-username1';
89
- const checksum = 'invalid-checksum';
90
- const encryptedData = create(EncryptedDataSchema, {
91
- ciphertext: username,
92
- checksum: checksum,
93
- });
94
- usernames.addEncryptedData('eventid-1', encryptedData, 'userid-1', true, undefined, undefined, undefined);
95
- usernames.onDecryptedContent('eventid-1', username);
96
- expect(usernames.plaintextUsernames).toEqual(new Map([]));
97
- });
98
- test('encryptedFlagsAreReturnedWhenEncrypted', async () => {
99
- const username = 'bob-username1';
100
- const checksum = usernameChecksum(username, streamId);
101
- const encryptedData = create(EncryptedDataSchema, {
102
- ciphertext: username,
103
- checksum: checksum,
104
- });
105
- usernames.addEncryptedData('eventid-1', encryptedData, 'userid-1', true, undefined, undefined, undefined);
106
- const info = usernames.info('userid-1');
107
- expect(info.usernameEncrypted).toEqual(true);
108
- usernames.onDecryptedContent('eventid-1', username);
109
- const infoAfterDecrypt = usernames.info('userid-1');
110
- expect(infoAfterDecrypt.usernameEncrypted).toEqual(false);
111
- });
112
- // in order to re-encrypt Olm-encrypted usernames using the new hybrid encryption,
113
- // we need to keep track of the existing user's username payload
114
- test('the current user`s username is accessible', async () => {
115
- const username = 'bob-username1';
116
- const checksum = usernameChecksum(username, streamId);
117
- const encryptedData = create(EncryptedDataSchema, {
118
- ciphertext: username,
119
- checksum: checksum,
120
- });
121
- usernames.addEncryptedData('eventid-1', encryptedData, 'userid-1', true, undefined, undefined, undefined);
122
- const current = usernames.currentUsernameEncryptedData;
123
- expect(current).toEqual(encryptedData);
124
- });
125
- });
126
- //# sourceMappingURL=memberMetadata_Usernames.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"memberMetadata_Usernames.test.js","sourceRoot":"","sources":["../../../src/tests/multi_ne/memberMetadata_Usernames.test.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- /**
2
- * @group main
3
- */
4
- export {};
5
- //# sourceMappingURL=space.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"space.test.d.ts","sourceRoot":"","sources":["../../../src/tests/multi_ne/space.test.ts"],"names":[],"mappings":"AAAA;;GAEG"}
@@ -1,284 +0,0 @@
1
- /**
2
- * @group main
3
- */
4
- import { isEncryptedData, makeTestClient, makeUniqueSpaceStreamId, waitFor } from '../testUtils';
5
- import { dlog } from '@towns-labs/utils';
6
- import { AES_GCM_DERIVED_ALGORITHM } from '@towns-labs/encryption';
7
- import { makeUniqueChannelStreamId, makeUniqueMediaStreamId, streamIdToBytes } from '../../id';
8
- import { MediaInfoSchema, MembershipOp, } from '@towns-labs/proto';
9
- import { deriveKeyAndIV } from '@towns-labs/sdk-crypto';
10
- import { nanoid } from 'nanoid';
11
- import { create } from '@bufbuild/protobuf';
12
- import { unpackStream } from '../../sign';
13
- const log = dlog('csb:test');
14
- describe('spaceTests', () => {
15
- let bobsClient;
16
- let alicesClient;
17
- beforeEach(async () => {
18
- bobsClient = await makeTestClient();
19
- await bobsClient.initializeUser();
20
- bobsClient.startSync();
21
- alicesClient = await makeTestClient();
22
- await alicesClient.initializeUser();
23
- alicesClient.startSync();
24
- });
25
- afterEach(async () => {
26
- await bobsClient.stop();
27
- await alicesClient.stop();
28
- });
29
- test('bobKicksAlice', async () => {
30
- log('bobKicksAlice');
31
- const spaceId = makeUniqueSpaceStreamId();
32
- await expect(bobsClient.createSpace(spaceId)).resolves.not.toThrow();
33
- const channelId = makeUniqueChannelStreamId(spaceId);
34
- await expect(bobsClient.createChannel(spaceId, 'name', 'topic', channelId)).resolves.not.toThrow();
35
- await expect(alicesClient.joinStream(spaceId)).resolves.not.toThrow();
36
- await expect(alicesClient.joinStream(channelId)).resolves.not.toThrow();
37
- const userStreamView = alicesClient.stream(alicesClient.userStreamId).view;
38
- await waitFor(() => {
39
- expect(userStreamView.userContent.getMembership(spaceId)?.op).toBe(MembershipOp.SO_JOIN);
40
- expect(userStreamView.userContent.getMembership(channelId)?.op).toBe(MembershipOp.SO_JOIN);
41
- });
42
- // Bob can kick Alice
43
- await expect(bobsClient.removeUser(spaceId, alicesClient.userId)).resolves.not.toThrow();
44
- // Alice is no longer a member of the space or channel
45
- await waitFor(() => {
46
- expect(userStreamView.userContent.getMembership(spaceId)?.op).toBe(MembershipOp.SO_LEAVE);
47
- expect(userStreamView.userContent.getMembership(channelId)?.op).toBe(MembershipOp.SO_LEAVE);
48
- });
49
- });
50
- // @miguel-nascimento 2025-10-28 - flaky test - was timing out on CI
51
- test.skip('channelMetadata', async () => {
52
- log('channelMetadata');
53
- const spaceId = makeUniqueSpaceStreamId();
54
- await expect(bobsClient.createSpace(spaceId)).resolves.not.toThrow();
55
- const spaceStream = await bobsClient.waitForStream(spaceId);
56
- // assert assumptions
57
- expect(spaceStream).toBeDefined();
58
- expect(spaceStream.view.miniblockInfo).toBeDefined();
59
- let spaceStreamMiniblockNum = spaceStream.view.miniblockInfo.max;
60
- // create a new channel
61
- const channelId = makeUniqueChannelStreamId(spaceId);
62
- await expect(bobsClient.createChannel(spaceId, 'name', 'topic', channelId)).resolves.not.toThrow();
63
- // our space channels metadata should reflect the new channel
64
- await waitFor(() => {
65
- expect(spaceStream.view.spaceContent.spaceChannelsMetadata[channelId]).toBeDefined();
66
- expect(spaceStream.view.spaceContent.spaceChannelsMetadata[channelId]?.updatedAtEventNum).toBeGreaterThan(0);
67
- });
68
- // wait for the miniblock to be updated
69
- await waitFor(() => {
70
- expect(spaceStream.view.miniblockInfo.max).toBeGreaterThan(spaceStreamMiniblockNum);
71
- });
72
- // save off existing updated at
73
- const prevUpdatedAt = spaceStream.view.spaceContent.spaceChannelsMetadata[channelId].updatedAtEventNum;
74
- // make a snapshot
75
- await waitFor(async () => {
76
- const response = await bobsClient.debugForceMakeMiniblock(spaceId, {
77
- forceSnapshot: true,
78
- lastKnownMiniblockNum: spaceStream.view.miniblockInfo.max,
79
- });
80
- expect(response).toBeDefined();
81
- });
82
- let response;
83
- // the new snapshot should have the new data
84
- await waitFor(async () => {
85
- // fetch the raw stream with new snapshot
86
- response = await bobsClient.rpcClient.getStream({
87
- streamId: streamIdToBytes(spaceId),
88
- });
89
- expect(response).toBeDefined();
90
- });
91
- if (response === undefined) {
92
- throw new Error('response is undefined');
93
- }
94
- const stream = await unpackStream(response.stream, {
95
- disableHashValidation: true,
96
- disableSignatureValidation: true,
97
- });
98
- const snapshot = stream.snapshot;
99
- if (snapshot?.content.case !== 'spaceContent') {
100
- throw new Error('snapshot is not a space content');
101
- }
102
- expect(snapshot.content.value.channels.length, `channelMetadata: ${spaceId} pre-update bobsClient snapshot.channels.length`).toBe(1);
103
- expect(snapshot.content.value.channels[0].updatedAtEventNum).toBe(prevUpdatedAt);
104
- spaceStreamMiniblockNum = spaceStream.view.miniblockInfo.max;
105
- // update the channel metadata
106
- await bobsClient.updateChannel(spaceId, channelId, '', '');
107
- // wait for the miniblock to be updated
108
- await waitFor(() => {
109
- expect(spaceStream.view.miniblockInfo.max).toBeGreaterThan(spaceStreamMiniblockNum);
110
- });
111
- // see the metadata update
112
- await waitFor(() => {
113
- expect(spaceStream.view.spaceContent.spaceChannelsMetadata[channelId]).toBeDefined();
114
- expect(spaceStream.view.spaceContent.spaceChannelsMetadata[channelId]?.updatedAtEventNum).toBeGreaterThan(prevUpdatedAt);
115
- });
116
- // make a snapshot
117
- await waitFor(async () => {
118
- const response = await bobsClient.debugForceMakeMiniblock(spaceId, {
119
- forceSnapshot: true,
120
- lastKnownMiniblockNum: spaceStream.view.miniblockInfo.max,
121
- });
122
- expect(response).toBeDefined();
123
- });
124
- // see new snapshot should have the new data
125
- await waitFor(async () => {
126
- // fetch the raw stream with new snapshot
127
- const response = await bobsClient.rpcClient.getStream({
128
- streamId: streamIdToBytes(spaceId),
129
- });
130
- const stream = await unpackStream(response.stream, {
131
- disableHashValidation: true,
132
- disableSignatureValidation: true,
133
- });
134
- const snapshot = stream.snapshot;
135
- if (snapshot?.content.case !== 'spaceContent') {
136
- throw new Error('snapshot is not a space content');
137
- }
138
- expect(snapshot.content.value.channels.length, 'channelMetadata: post-update bobsClient snapshot.channels.length').toBe(1);
139
- expect(snapshot.content.value.channels[0].updatedAtEventNum).toBeGreaterThan(prevUpdatedAt);
140
- });
141
- });
142
- test('spaceImage', async () => {
143
- const spaceImageUpdatedCounter = {
144
- count: 0,
145
- };
146
- function spaceImageUpdated(_spaceId) {
147
- spaceImageUpdatedCounter.count++;
148
- }
149
- const spaceId = makeUniqueSpaceStreamId();
150
- await expect(bobsClient.createSpace(spaceId)).resolves.not.toThrow();
151
- const spaceStream = await bobsClient.waitForStream(spaceId);
152
- let spaceStreamMiniblockNum = spaceStream.view.miniblockInfo.max;
153
- spaceStream.on('spaceImageUpdated', spaceImageUpdated);
154
- // make a space image event
155
- const mediaStreamId = makeUniqueMediaStreamId();
156
- const image = create(MediaInfoSchema, {
157
- mimetype: 'image/png',
158
- filename: 'bob-1.png',
159
- });
160
- const { key, iv } = await deriveKeyAndIV(nanoid(128)); // if in browser please use window.crypto.subtle.generateKey
161
- const chunkedMediaInfo = {
162
- info: image,
163
- streamId: mediaStreamId,
164
- encryption: {
165
- case: 'aesgcm',
166
- value: { secretKey: key, iv },
167
- },
168
- thumbnail: undefined,
169
- };
170
- await bobsClient.setSpaceImage(spaceId, chunkedMediaInfo);
171
- // wait for the miniblock to be updated
172
- await waitFor(() => {
173
- expect(spaceStream.view.miniblockInfo.max).toBeGreaterThan(spaceStreamMiniblockNum);
174
- });
175
- // make a snapshot
176
- await waitFor(async () => {
177
- const response = await bobsClient.debugForceMakeMiniblock(spaceId, {
178
- forceSnapshot: true,
179
- lastKnownMiniblockNum: spaceStream.view.miniblockInfo.max,
180
- });
181
- expect(response).toBeDefined();
182
- });
183
- // see the space image in the snapshot
184
- await waitFor(async () => {
185
- // fetch the raw stream with new snapshot
186
- const response = await bobsClient.rpcClient.getStream({
187
- streamId: streamIdToBytes(spaceId),
188
- });
189
- const stream = await unpackStream(response.stream, {
190
- disableHashValidation: true,
191
- disableSignatureValidation: true,
192
- });
193
- const snapshot = stream.snapshot;
194
- if (snapshot?.content.case !== 'spaceContent') {
195
- throw new Error('snapshot is not a space content');
196
- }
197
- expect(snapshot.content.value.spaceImage).toBeDefined();
198
- expect(snapshot.content.value.spaceImage?.data).toBeDefined();
199
- });
200
- await waitFor(() => {
201
- expect(spaceImageUpdatedCounter.count, 'spaceImage: spaceImageUpdatedCounter.count').toBe(1);
202
- });
203
- // decrypt the snapshot and assert the image values
204
- // fetch the raw stream with new snapshot
205
- const response = await bobsClient.rpcClient.getStream({
206
- streamId: streamIdToBytes(spaceId),
207
- });
208
- const stream = await unpackStream(response.stream, {
209
- disableHashValidation: true,
210
- disableSignatureValidation: true,
211
- });
212
- const snapshot = stream.snapshot;
213
- const encryptedData = snapshot?.content.case === 'spaceContent'
214
- ? snapshot.content.value.spaceImage?.data
215
- : undefined;
216
- expect(encryptedData !== undefined &&
217
- isEncryptedData(encryptedData) &&
218
- encryptedData.algorithm === AES_GCM_DERIVED_ALGORITHM).toBe(true);
219
- const decrypted = await spaceStream.view.spaceContent.getSpaceImage();
220
- expect(decrypted !== undefined &&
221
- decrypted.info?.mimetype === image.mimetype &&
222
- decrypted.info?.filename === image.filename &&
223
- decrypted.encryption.case === 'aesgcm' &&
224
- decrypted.encryption.value.secretKey !== undefined).toBe(true);
225
- // make another space image event
226
- const mediaStreamId2 = makeUniqueMediaStreamId();
227
- const image2 = create(MediaInfoSchema, {
228
- mimetype: 'image/jpg',
229
- filename: 'bob-2.jpg',
230
- });
231
- const chunkedMediaInfo2 = {
232
- info: image2,
233
- streamId: mediaStreamId2,
234
- encryption: {
235
- case: 'aesgcm',
236
- value: { secretKey: key, iv },
237
- },
238
- thumbnail: undefined,
239
- };
240
- spaceStreamMiniblockNum = spaceStream.view.miniblockInfo.max;
241
- await bobsClient.setSpaceImage(spaceId, chunkedMediaInfo2);
242
- // wait for the miniblock to be updated
243
- await waitFor(() => {
244
- expect(spaceStream.view.miniblockInfo.max).toBeGreaterThan(spaceStreamMiniblockNum);
245
- });
246
- // make a snapshot
247
- await waitFor(async () => {
248
- const response = await bobsClient.debugForceMakeMiniblock(spaceId, {
249
- forceSnapshot: true,
250
- lastKnownMiniblockNum: spaceStream.view.miniblockInfo.max,
251
- });
252
- expect(response).toBeDefined();
253
- });
254
- // see the space image in the snapshot
255
- await waitFor(async () => {
256
- // fetch the raw stream with new snapshot
257
- const response = await bobsClient.rpcClient.getStream({
258
- streamId: streamIdToBytes(spaceId),
259
- });
260
- const stream = await unpackStream(response.stream, {
261
- disableHashValidation: true,
262
- disableSignatureValidation: true,
263
- });
264
- const snapshot = stream.snapshot;
265
- if (snapshot?.content.case !== 'spaceContent') {
266
- throw new Error('snapshot is not a space content');
267
- }
268
- expect(snapshot.content.value.spaceImage).toBeDefined();
269
- expect(snapshot.content.value.spaceImage?.data).toBeDefined();
270
- });
271
- // decrypt the snapshot and assert the image values
272
- const spaceImage = await spaceStream.view.spaceContent.getSpaceImage();
273
- expect(spaceImage).toBeDefined();
274
- expect(spaceImage?.info?.mimetype).toBe(image2.mimetype);
275
- expect(spaceImage?.info?.filename).toBe(image2.filename);
276
- expect(spaceImage?.encryption.case).toBe('aesgcm');
277
- if (spaceImage?.encryption.case !== 'aesgcm') {
278
- throw new Error('space image encryption is not aesgcm'); // to compile
279
- }
280
- expect(spaceImage?.encryption.value.secretKey).toBeDefined();
281
- expect(spaceImageUpdatedCounter.count).toBe(2);
282
- });
283
- });
284
- //# sourceMappingURL=space.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"space.test.js","sourceRoot":"","sources":["../../../src/tests/multi_ne/space.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=spaces.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"spaces.test.d.ts","sourceRoot":"","sources":["../../../../src/tests/multi_ne/sync-agent/spaces.test.ts"],"names":[],"mappings":""}
@@ -1,33 +0,0 @@
1
- /**
2
- * @group with-entitlements
3
- */
4
- import { dlogger } from '@towns-labs/utils';
5
- import { Bot } from '../../../sync-agent/utils/bot';
6
- import { findMessageByText, waitFor } from '../../testUtils';
7
- const logger = dlogger('csb:test:spaces');
8
- describe('spaces.test.ts', () => {
9
- logger.log('start');
10
- const testUser = new Bot();
11
- test('create/leave/join space', async () => {
12
- await testUser.fundWallet();
13
- const syncAgent = await testUser.makeSyncAgent();
14
- await syncAgent.start();
15
- await waitFor(() => expect(syncAgent.spaces.value.initialized).toBe(true));
16
- const { spaceId, defaultChannelId } = await syncAgent.spaces.createSpace();
17
- expect(syncAgent.spaces.value.spaceIds.length).toBe(1);
18
- expect(syncAgent.spaces.value.spaceIds[0]).toBe(spaceId);
19
- expect(syncAgent.spaces.getSpace(spaceId)).toBeDefined();
20
- const space = syncAgent.spaces.getSpace(spaceId);
21
- await waitFor(() => expect(space.value.initialized).toBe(true));
22
- await waitFor(() => expect(space.value.channelIds.length).toBe(1));
23
- expect(space.value.channelIds[0]).toBe(defaultChannelId);
24
- expect(space.getChannel(defaultChannelId)).toBeDefined();
25
- const channel = space.getChannel(defaultChannelId);
26
- expect(channel.value.isJoined).toBe(true);
27
- await channel.sendMessage('hello world');
28
- expect(channel.timeline.events.value.length).toBeGreaterThan(1);
29
- expect(findMessageByText(channel.timeline.events.value, 'hello world')).toBeDefined();
30
- await syncAgent.stop();
31
- });
32
- });
33
- //# sourceMappingURL=spaces.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"spaces.test.js","sourceRoot":"","sources":["../../../../src/tests/multi_ne/sync-agent/spaces.test.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAC3C,OAAO,EAAE,GAAG,EAAE,MAAM,+BAA+B,CAAA;AACnD,OAAO,EAAE,iBAAiB,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAE5D,MAAM,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAA;AAEzC,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;IAC5B,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;IACnB,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAA;IAE1B,IAAI,CAAC,yBAAyB,EAAE,KAAK,IAAI,EAAE;QACvC,MAAM,QAAQ,CAAC,UAAU,EAAE,CAAA;QAC3B,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,aAAa,EAAE,CAAA;QAChD,MAAM,SAAS,CAAC,KAAK,EAAE,CAAA;QACvB,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QAC1E,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,GAAG,MAAM,SAAS,CAAC,MAAM,CAAC,WAAW,EAAE,CAAA;QAC1E,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACtD,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QACxD,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;QACxD,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;QAChD,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QAC/D,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;QAClE,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;QACxD,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;QACxD,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAA;QAClD,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACzC,MAAM,OAAO,CAAC,WAAW,CAAC,aAAa,CAAC,CAAA;QACxC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAA;QAC/D,MAAM,CAAC,iBAAiB,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;QACrF,MAAM,SAAS,CAAC,IAAI,EAAE,CAAA;IAC1B,CAAC,CAAC,CAAA;AACN,CAAC,CAAC,CAAA"}
@@ -1,6 +0,0 @@
1
- /**
2
- * @group with-v2-entitlements
3
- * @description channel entitlement tests to run on v2 spaces only
4
- */
5
- export {};
6
- //# sourceMappingURL=channelsWithCrossChainEntitlements.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"channelsWithCrossChainEntitlements.test.d.ts","sourceRoot":"","sources":["../../../../src/tests/multi_v2/entitlements/channelsWithCrossChainEntitlements.test.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
@@ -1,78 +0,0 @@
1
- /**
2
- * @group with-v2-entitlements
3
- * @description channel entitlement tests to run on v2 spaces only
4
- */
5
- import { setupChannelWithCustomRole, expectUserCanJoinChannel, expectUserCannotJoinChannel, linkWallets, mockCrossChainCheckOp, } from '../../testUtils';
6
- import { dlog } from '@towns-labs/utils';
7
- import { treeToRuleData, TestCrossChainEntitlement } from '@towns-labs/web3';
8
- const log = dlog('csb:test:channelsWithCrossChainEntitlements');
9
- describe('channelsWithCrossChainEntitlements', () => {
10
- test('cross chain entitlement gate pass', async () => {
11
- const idParam = 1n;
12
- const contractName = 'TestCrossChain';
13
- const ruleData = treeToRuleData(await mockCrossChainCheckOp(contractName, idParam));
14
- const { alice, bob, alicesWallet, aliceSpaceDapp, spaceId, channelId } = await setupChannelWithCustomRole([], ruleData);
15
- await TestCrossChainEntitlement.setIsEntitled(contractName, alicesWallet.address, idParam, true);
16
- log('expect that alice can join the channel');
17
- await expectUserCanJoinChannel(alice, aliceSpaceDapp, spaceId, channelId);
18
- // kill the clients
19
- const doneStart = Date.now();
20
- await bob.stopSync();
21
- await alice.stopSync();
22
- log('Done', Date.now() - doneStart);
23
- });
24
- test('cross chain entitlement gate fail', async () => {
25
- const idParam = 1n;
26
- const contractName = 'TestCrossChain';
27
- const ruleData = treeToRuleData(await mockCrossChainCheckOp(contractName, idParam));
28
- const { alice, bob, alicesWallet, aliceSpaceDapp, spaceId, channelId } = await setupChannelWithCustomRole([], ruleData);
29
- await TestCrossChainEntitlement.setIsEntitled(contractName, alicesWallet.address, idParam, false);
30
- log('expect that alice cannot join the channel');
31
- await expectUserCannotJoinChannel(alice, aliceSpaceDapp, spaceId, channelId);
32
- // kill the clients
33
- const doneStart = Date.now();
34
- await bob.stopSync();
35
- await alice.stopSync();
36
- log('Done', Date.now() - doneStart);
37
- });
38
- test('cross chain entitlement gate join pass - join as root, linked wallet entitled', async () => {
39
- const idParam = 1n;
40
- const contractName = 'TestCrossChain';
41
- const ruleData = treeToRuleData(await mockCrossChainCheckOp(contractName, idParam));
42
- const { alice, bob, aliceSpaceDapp, aliceProvider, carolsWallet, carolProvider, spaceId, channelId, } = await setupChannelWithCustomRole([], ruleData);
43
- // Link carol's wallet to alice's as root
44
- await linkWallets(aliceSpaceDapp, aliceProvider.wallet, carolProvider.wallet);
45
- log('expect that alice cannot join the channel');
46
- await expectUserCannotJoinChannel(alice, aliceSpaceDapp, spaceId, channelId);
47
- // Set entitlement for carol's wallet
48
- await TestCrossChainEntitlement.setIsEntitled(contractName, carolsWallet.address, idParam, true);
49
- // Wait 2 seconds for the negative auth cache to expire
50
- await new Promise((f) => setTimeout(f, 2000));
51
- // Validate alice can join the channel
52
- await expectUserCanJoinChannel(alice, aliceSpaceDapp, spaceId, channelId);
53
- const doneStart = Date.now();
54
- // kill the clients
55
- await bob.stopSync();
56
- await alice.stopSync();
57
- log('Done', Date.now() - doneStart);
58
- });
59
- test('cross chain entitlement gated join - join as linked wallet, assets in root wallet', async () => {
60
- const idParam = 1n;
61
- const contractName = 'TestCrossChain';
62
- const ruleData = treeToRuleData(await mockCrossChainCheckOp(contractName, idParam));
63
- const { alice, bob, aliceSpaceDapp, carolSpaceDapp, aliceProvider, carolsWallet, carolProvider, spaceId, channelId, } = await setupChannelWithCustomRole([], ruleData);
64
- log("Joining alice's wallet as a linked wallet to carol's root wallet");
65
- await linkWallets(carolSpaceDapp, carolProvider.wallet, aliceProvider.wallet);
66
- // Set carol's wallet as entitled
67
- await TestCrossChainEntitlement.setIsEntitled(contractName, carolsWallet.address, idParam, true);
68
- log('expect that alice can join the channel');
69
- // Validate alice can join the channel
70
- await expectUserCanJoinChannel(alice, aliceSpaceDapp, spaceId, channelId);
71
- const doneStart = Date.now();
72
- // kill the clients
73
- await bob.stopSync();
74
- await alice.stopSync();
75
- log('Done', Date.now() - doneStart);
76
- });
77
- });
78
- //# sourceMappingURL=channelsWithCrossChainEntitlements.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"channelsWithCrossChainEntitlements.test.js","sourceRoot":"","sources":["../../../../src/tests/multi_v2/entitlements/channelsWithCrossChainEntitlements.test.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACH,0BAA0B,EAC1B,wBAAwB,EACxB,2BAA2B,EAC3B,WAAW,EACX,qBAAqB,GACxB,MAAM,iBAAiB,CAAA;AACxB,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAA;AACxC,OAAO,EAAW,cAAc,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAA;AAErF,MAAM,GAAG,GAAG,IAAI,CAAC,6CAA6C,CAAC,CAAA;AAE/D,QAAQ,CAAC,oCAAoC,EAAE,GAAG,EAAE;IAChD,IAAI,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;QACjD,MAAM,OAAO,GAAG,EAAE,CAAA;QAClB,MAAM,YAAY,GAAG,gBAAgB,CAAA;QACrC,MAAM,QAAQ,GAAG,cAAc,CAAC,MAAM,qBAAqB,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAA;QAEnF,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,YAAY,EAAE,cAAc,EAAE,OAAO,EAAE,SAAS,EAAE,GAClE,MAAM,0BAA0B,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAA;QAElD,MAAM,yBAAyB,CAAC,aAAa,CACzC,YAAY,EACZ,YAAY,CAAC,OAAkB,EAC/B,OAAO,EACP,IAAI,CACP,CAAA;QAED,GAAG,CAAC,wCAAwC,CAAC,CAAA;QAC7C,MAAM,wBAAwB,CAAC,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,SAAU,CAAC,CAAA;QAE1E,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,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,CAAA;IACvC,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;QACjD,MAAM,OAAO,GAAG,EAAE,CAAA;QAClB,MAAM,YAAY,GAAG,gBAAgB,CAAA;QACrC,MAAM,QAAQ,GAAG,cAAc,CAAC,MAAM,qBAAqB,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAA;QAEnF,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,YAAY,EAAE,cAAc,EAAE,OAAO,EAAE,SAAS,EAAE,GAClE,MAAM,0BAA0B,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAA;QAElD,MAAM,yBAAyB,CAAC,aAAa,CACzC,YAAY,EACZ,YAAY,CAAC,OAAkB,EAC/B,OAAO,EACP,KAAK,CACR,CAAA;QAED,GAAG,CAAC,2CAA2C,CAAC,CAAA;QAChD,MAAM,2BAA2B,CAAC,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,SAAU,CAAC,CAAA;QAE7E,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,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,CAAA;IACvC,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,+EAA+E,EAAE,KAAK,IAAI,EAAE;QAC7F,MAAM,OAAO,GAAG,EAAE,CAAA;QAClB,MAAM,YAAY,GAAG,gBAAgB,CAAA;QACrC,MAAM,QAAQ,GAAG,cAAc,CAAC,MAAM,qBAAqB,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAA;QAEnF,MAAM,EACF,KAAK,EACL,GAAG,EACH,cAAc,EACd,aAAa,EACb,YAAY,EACZ,aAAa,EACb,OAAO,EACP,SAAS,GACZ,GAAG,MAAM,0BAA0B,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAA;QAElD,yCAAyC;QACzC,MAAM,WAAW,CAAC,cAAc,EAAE,aAAa,CAAC,MAAM,EAAE,aAAa,CAAC,MAAM,CAAC,CAAA;QAE7E,GAAG,CAAC,2CAA2C,CAAC,CAAA;QAChD,MAAM,2BAA2B,CAAC,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,SAAU,CAAC,CAAA;QAE7E,qCAAqC;QACrC,MAAM,yBAAyB,CAAC,aAAa,CACzC,YAAY,EACZ,YAAY,CAAC,OAAkB,EAC/B,OAAO,EACP,IAAI,CACP,CAAA;QAED,uDAAuD;QACvD,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAA;QAE7C,sCAAsC;QACtC,MAAM,wBAAwB,CAAC,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,SAAU,CAAC,CAAA;QAE1E,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QAC5B,mBAAmB;QACnB,MAAM,GAAG,CAAC,QAAQ,EAAE,CAAA;QACpB,MAAM,KAAK,CAAC,QAAQ,EAAE,CAAA;QACtB,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,CAAA;IACvC,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,mFAAmF,EAAE,KAAK,IAAI,EAAE;QACjG,MAAM,OAAO,GAAG,EAAE,CAAA;QAClB,MAAM,YAAY,GAAG,gBAAgB,CAAA;QACrC,MAAM,QAAQ,GAAG,cAAc,CAAC,MAAM,qBAAqB,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAA;QAEnF,MAAM,EACF,KAAK,EACL,GAAG,EACH,cAAc,EACd,cAAc,EACd,aAAa,EACb,YAAY,EACZ,aAAa,EACb,OAAO,EACP,SAAS,GACZ,GAAG,MAAM,0BAA0B,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAA;QAElD,GAAG,CAAC,kEAAkE,CAAC,CAAA;QACvE,MAAM,WAAW,CAAC,cAAc,EAAE,aAAa,CAAC,MAAM,EAAE,aAAa,CAAC,MAAM,CAAC,CAAA;QAE7E,iCAAiC;QACjC,MAAM,yBAAyB,CAAC,aAAa,CACzC,YAAY,EACZ,YAAY,CAAC,OAAkB,EAC/B,OAAO,EACP,IAAI,CACP,CAAA;QAED,GAAG,CAAC,wCAAwC,CAAC,CAAA;QAC7C,sCAAsC;QACtC,MAAM,wBAAwB,CAAC,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,SAAU,CAAC,CAAA;QAE1E,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QAC5B,mBAAmB;QACnB,MAAM,GAAG,CAAC,QAAQ,EAAE,CAAA;QACpB,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,6 +0,0 @@
1
- /**
2
- * @group with-v2-entitlements
3
- * @description channel entitlement tests to run on v2 spaces only
4
- */
5
- export {};
6
- //# sourceMappingURL=channelsWithErc1155Entitlement.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"channelsWithErc1155Entitlement.test.d.ts","sourceRoot":"","sources":["../../../../src/tests/multi_v2/entitlements/channelsWithErc1155Entitlement.test.ts"],"names":[],"mappings":"AAAA;;;GAGG"}