@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.
- package/dist/client.d.ts +13 -31
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +113 -328
- package/dist/client.js.map +1 -1
- package/dist/clientDecryptionExtensions.d.ts.map +1 -1
- package/dist/clientDecryptionExtensions.js +10 -28
- package/dist/clientDecryptionExtensions.js.map +1 -1
- package/dist/createApp.d.ts +1 -1
- package/dist/createApp.d.ts.map +1 -1
- package/dist/createApp.js +6 -2
- package/dist/createApp.js.map +1 -1
- package/dist/id.d.ts +1 -17
- package/dist/id.d.ts.map +1 -1
- package/dist/id.js +1 -53
- package/dist/id.js.map +1 -1
- package/dist/index.d.ts +0 -22
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +0 -22
- package/dist/index.js.map +1 -1
- package/dist/migrations/snapshotMigration0001.d.ts.map +1 -1
- package/dist/migrations/snapshotMigration0001.js +0 -4
- package/dist/migrations/snapshotMigration0001.js.map +1 -1
- package/dist/migrations/snapshotMigration0002.d.ts.map +1 -1
- package/dist/migrations/snapshotMigration0002.js +1 -19
- package/dist/migrations/snapshotMigration0002.js.map +1 -1
- package/dist/migrations/snapshotMigration0004.d.ts.map +1 -1
- package/dist/migrations/snapshotMigration0004.js +1 -27
- package/dist/migrations/snapshotMigration0004.js.map +1 -1
- package/dist/migrations/snapshotMigration0005.d.ts.map +1 -1
- package/dist/migrations/snapshotMigration0005.js +1 -26
- package/dist/migrations/snapshotMigration0005.js.map +1 -1
- package/dist/notificationsClient.d.ts +1 -5
- package/dist/notificationsClient.d.ts.map +1 -1
- package/dist/notificationsClient.js +2 -103
- package/dist/notificationsClient.js.map +1 -1
- package/dist/persistenceStore.d.ts.map +1 -1
- package/dist/persistenceStore.js +6 -18
- package/dist/persistenceStore.js.map +1 -1
- package/dist/streamEvents.d.ts +0 -6
- package/dist/streamEvents.d.ts.map +1 -1
- package/dist/streamStateView.d.ts +0 -9
- package/dist/streamStateView.d.ts.map +1 -1
- package/dist/streamStateView.js +3 -64
- package/dist/streamStateView.js.map +1 -1
- package/dist/streamStateView_MemberMetadata.d.ts +3 -36
- package/dist/streamStateView_MemberMetadata.d.ts.map +1 -1
- package/dist/streamStateView_MemberMetadata.js +3 -83
- package/dist/streamStateView_MemberMetadata.js.map +1 -1
- package/dist/streamStateView_Members.d.ts +1 -5
- package/dist/streamStateView_Members.d.ts.map +1 -1
- package/dist/streamStateView_Members.js +4 -91
- package/dist/streamStateView_Members.js.map +1 -1
- package/dist/streamStateView_User.d.ts.map +1 -1
- package/dist/streamStateView_User.js +1 -0
- package/dist/streamStateView_User.js.map +1 -1
- package/dist/streamStateView_UserInbox.d.ts.map +1 -1
- package/dist/streamStateView_UserInbox.js +1 -0
- package/dist/streamStateView_UserInbox.js.map +1 -1
- package/dist/streamStateView_UserMetadata.d.ts.map +1 -1
- package/dist/streamStateView_UserMetadata.js +1 -0
- package/dist/streamStateView_UserMetadata.js.map +1 -1
- package/dist/streamStateView_UserSettings.d.ts.map +1 -1
- package/dist/streamStateView_UserSettings.js +9 -1
- package/dist/streamStateView_UserSettings.js.map +1 -1
- package/dist/streamUtils.d.ts.map +1 -1
- package/dist/streamUtils.js +0 -8
- package/dist/streamUtils.js.map +1 -1
- package/dist/sync/SyncedStreamsControllerLite.d.ts.map +1 -1
- package/dist/sync/SyncedStreamsControllerLite.js +7 -11
- package/dist/sync/SyncedStreamsControllerLite.js.map +1 -1
- package/dist/sync-agent/db.d.ts +1 -6
- package/dist/sync-agent/db.d.ts.map +1 -1
- package/dist/sync-agent/db.js +0 -10
- package/dist/sync-agent/db.js.map +1 -1
- package/dist/sync-agent/gdms/gdms.d.ts +5 -6
- package/dist/sync-agent/gdms/gdms.d.ts.map +1 -1
- package/dist/sync-agent/gdms/gdms.js +12 -27
- package/dist/sync-agent/gdms/gdms.js.map +1 -1
- package/dist/sync-agent/gdms/models/gdm.d.ts +10 -8
- package/dist/sync-agent/gdms/models/gdm.d.ts.map +1 -1
- package/dist/sync-agent/gdms/models/gdm.js +29 -34
- package/dist/sync-agent/gdms/models/gdm.js.map +1 -1
- package/dist/sync-agent/members/members.d.ts +6 -18
- package/dist/sync-agent/members/members.d.ts.map +1 -1
- package/dist/sync-agent/members/members.js +25 -124
- package/dist/sync-agent/members/members.js.map +1 -1
- package/dist/sync-agent/members/models/member.d.ts +3 -45
- package/dist/sync-agent/members/models/member.d.ts.map +1 -1
- package/dist/sync-agent/members/models/member.js +15 -114
- package/dist/sync-agent/members/models/member.js.map +1 -1
- package/dist/sync-agent/members/models/myself.d.ts +1 -11
- package/dist/sync-agent/members/models/myself.d.ts.map +1 -1
- package/dist/sync-agent/members/models/myself.js +1 -84
- package/dist/sync-agent/members/models/myself.js.map +1 -1
- package/dist/sync-agent/river-connection/riverConnection.d.ts +6 -17
- package/dist/sync-agent/river-connection/riverConnection.d.ts.map +1 -1
- package/dist/sync-agent/river-connection/riverConnection.js +30 -37
- package/dist/sync-agent/river-connection/riverConnection.js.map +1 -1
- package/dist/sync-agent/syncAgent.d.ts +11 -22
- package/dist/sync-agent/syncAgent.d.ts.map +1 -1
- package/dist/sync-agent/syncAgent.js +3 -20
- package/dist/sync-agent/syncAgent.js.map +1 -1
- package/dist/sync-agent/user/models/userInbox.d.ts +4 -17
- package/dist/sync-agent/user/models/userInbox.d.ts.map +1 -1
- package/dist/sync-agent/user/models/userInbox.js +14 -61
- package/dist/sync-agent/user/models/userInbox.js.map +1 -1
- package/dist/sync-agent/user/models/userMemberships.d.ts +6 -22
- package/dist/sync-agent/user/models/userMemberships.d.ts.map +1 -1
- package/dist/sync-agent/user/models/userMemberships.js +16 -68
- package/dist/sync-agent/user/models/userMemberships.js.map +1 -1
- package/dist/sync-agent/user/models/userMetadata.d.ts +4 -17
- package/dist/sync-agent/user/models/userMetadata.d.ts.map +1 -1
- package/dist/sync-agent/user/models/userMetadata.js +14 -61
- package/dist/sync-agent/user/models/userMetadata.js.map +1 -1
- package/dist/sync-agent/user/models/userSettings.d.ts +5 -8
- package/dist/sync-agent/user/models/userSettings.d.ts.map +1 -1
- package/dist/sync-agent/user/models/userSettings.js +15 -42
- package/dist/sync-agent/user/models/userSettings.js.map +1 -1
- package/dist/sync-agent/user/user.d.ts +2 -6
- package/dist/sync-agent/user/user.d.ts.map +1 -1
- package/dist/sync-agent/user/user.js +9 -20
- package/dist/sync-agent/user/user.js.map +1 -1
- package/dist/syncedStreamsExtension.d.ts.map +1 -1
- package/dist/syncedStreamsExtension.js +10 -22
- package/dist/syncedStreamsExtension.js.map +1 -1
- package/dist/syncedStreamsLoop.d.ts.map +1 -1
- package/dist/syncedStreamsLoop.js +4 -18
- package/dist/syncedStreamsLoop.js.map +1 -1
- package/dist/tests/bob_testUtils.d.ts.map +1 -1
- package/dist/tests/bob_testUtils.js +35 -69
- package/dist/tests/bob_testUtils.js.map +1 -1
- package/dist/tests/multi_ne/aliceAndFriends10for10.test.js +1 -1
- package/dist/tests/multi_ne/aliceAndFriends10for10.test.js.map +1 -1
- package/dist/tests/multi_ne/aliceAndFriendslongAndRandom.test.js +1 -1
- package/dist/tests/multi_ne/aliceAndFriendslongAndRandom.test.js.map +1 -1
- package/dist/tests/multi_ne/bobFlushes.test.js.map +1 -1
- package/dist/tests/multi_ne/channels.test.js +6 -9
- package/dist/tests/multi_ne/channels.test.js.map +1 -1
- package/dist/tests/multi_ne/client.test.js +24 -98
- package/dist/tests/multi_ne/client.test.js.map +1 -1
- package/dist/tests/multi_ne/clientCrypto.test.js +3 -3
- package/dist/tests/multi_ne/clientCrypto.test.js.map +1 -1
- package/dist/tests/multi_ne/clientDecryptionExtensions.test.js +12 -47
- package/dist/tests/multi_ne/clientDecryptionExtensions.test.js.map +1 -1
- package/dist/tests/multi_ne/ephemeralEvents.test.js +1 -1
- package/dist/tests/multi_ne/ephemeralEvents.test.js.map +1 -1
- package/dist/tests/multi_ne/id.test.js +6 -20
- package/dist/tests/multi_ne/id.test.js.map +1 -1
- package/dist/tests/multi_ne/media.test.js +20 -61
- package/dist/tests/multi_ne/media.test.js.map +1 -1
- package/dist/tests/multi_ne/memberMetadata.test.d.ts +0 -3
- package/dist/tests/multi_ne/memberMetadata.test.d.ts.map +1 -1
- package/dist/tests/multi_ne/memberMetadata.test.js +14 -582
- package/dist/tests/multi_ne/memberMetadata.test.js.map +1 -1
- package/dist/tests/multi_ne/outboundGroupSession.test.js +15 -13
- package/dist/tests/multi_ne/outboundGroupSession.test.js.map +1 -1
- package/dist/tests/multi_ne/restart.test.js +11 -34
- package/dist/tests/multi_ne/restart.test.js.map +1 -1
- package/dist/tests/multi_ne/sign.test.js +2 -2
- package/dist/tests/multi_ne/sign.test.js.map +1 -1
- package/dist/tests/multi_ne/streamMembershipHardening.test.js +0 -3
- package/dist/tests/multi_ne/streamMembershipHardening.test.js.map +1 -1
- package/dist/tests/multi_ne/streamRpcClient.test.js +58 -349
- package/dist/tests/multi_ne/streamRpcClient.test.js.map +1 -1
- package/dist/tests/multi_ne/streamRpcClientSync.test.js +63 -124
- package/dist/tests/multi_ne/streamRpcClientSync.test.js.map +1 -1
- package/dist/tests/multi_ne/streamStateView_User.test.js +23 -20
- package/dist/tests/multi_ne/streamStateView_User.test.js.map +1 -1
- package/dist/tests/{multi/spaceDapp.test.d.ts → multi_ne/sync-agent/gdms.test.d.ts} +1 -1
- package/dist/tests/multi_ne/sync-agent/gdms.test.d.ts.map +1 -0
- package/dist/tests/multi_ne/sync-agent/gdms.test.js +34 -0
- package/dist/tests/multi_ne/sync-agent/gdms.test.js.map +1 -0
- package/dist/tests/{multi/legacySpace.test.d.ts → multi_ne/sync-agent/member.test.d.ts} +1 -1
- package/dist/tests/multi_ne/sync-agent/member.test.d.ts.map +1 -0
- package/dist/tests/multi_ne/sync-agent/member.test.js +31 -0
- package/dist/tests/multi_ne/sync-agent/member.test.js.map +1 -0
- package/dist/tests/{multi/disableSpace.test.d.ts → multi_ne/sync-agent/members.test.d.ts} +1 -1
- package/dist/tests/multi_ne/sync-agent/members.test.d.ts.map +1 -0
- package/dist/tests/multi_ne/sync-agent/members.test.js +40 -0
- package/dist/tests/multi_ne/sync-agent/members.test.js.map +1 -0
- package/dist/tests/multi_ne/sync-agent/riverConnection.test.d.ts +5 -0
- package/dist/tests/multi_ne/sync-agent/riverConnection.test.d.ts.map +1 -0
- package/dist/tests/multi_ne/sync-agent/riverConnection.test.js +39 -0
- package/dist/tests/multi_ne/sync-agent/riverConnection.test.js.map +1 -0
- package/dist/tests/multi_ne/sync-agent/streams.test.d.ts +5 -0
- package/dist/tests/multi_ne/sync-agent/streams.test.d.ts.map +1 -0
- package/dist/tests/multi_ne/sync-agent/streams.test.js +27 -0
- package/dist/tests/multi_ne/sync-agent/streams.test.js.map +1 -0
- package/dist/tests/multi_ne/sync-agent/syncAgent.test.d.ts +5 -0
- package/dist/tests/multi_ne/sync-agent/syncAgent.test.d.ts.map +1 -0
- package/dist/tests/multi_ne/sync-agent/syncAgent.test.js +66 -0
- package/dist/tests/multi_ne/sync-agent/syncAgent.test.js.map +1 -0
- package/dist/tests/multi_ne/sync-agent/syncAgents.test.d.ts +5 -0
- package/dist/tests/multi_ne/sync-agent/syncAgents.test.d.ts.map +1 -0
- package/dist/tests/multi_ne/sync-agent/syncAgents.test.js +117 -0
- package/dist/tests/multi_ne/sync-agent/syncAgents.test.js.map +1 -0
- package/dist/tests/multi_ne/sync-agent/timeline.test.d.ts +2 -0
- package/dist/tests/multi_ne/sync-agent/timeline.test.d.ts.map +1 -0
- package/dist/tests/multi_ne/sync-agent/timeline.test.js +155 -0
- package/dist/tests/multi_ne/sync-agent/timeline.test.js.map +1 -0
- package/dist/tests/multi_ne/sync-agent/user.test.d.ts +5 -0
- package/dist/tests/multi_ne/sync-agent/user.test.d.ts.map +1 -0
- package/dist/tests/multi_ne/sync-agent/user.test.js +53 -0
- package/dist/tests/multi_ne/sync-agent/user.test.js.map +1 -0
- package/dist/tests/multi_ne/syncWithBlocks.test.d.ts +3 -0
- package/dist/tests/multi_ne/syncWithBlocks.test.d.ts.map +1 -1
- package/dist/tests/multi_ne/syncWithBlocks.test.js +47 -77
- package/dist/tests/multi_ne/syncWithBlocks.test.js.map +1 -1
- package/dist/tests/multi_ne/syncedStream.test.js +1 -1
- package/dist/tests/multi_ne/syncedStream.test.js.map +1 -1
- package/dist/tests/multi_ne/syncedStreams.test.js +1 -1
- package/dist/tests/multi_ne/syncedStreams.test.js.map +1 -1
- package/dist/tests/multi_ne/userInboxMessage.test.js +4 -4
- package/dist/tests/multi_ne/userInboxMessage.test.js.map +1 -1
- package/dist/tests/multi_ne/userSettings.test.js +3 -16
- package/dist/tests/multi_ne/userSettings.test.js.map +1 -1
- package/dist/tests/multi_ne/workflows.test.js +22 -50
- package/dist/tests/multi_ne/workflows.test.js.map +1 -1
- package/dist/tests/testDriver_testUtils.d.ts.map +1 -1
- package/dist/tests/testDriver_testUtils.js +6 -22
- package/dist/tests/testDriver_testUtils.js.map +1 -1
- package/dist/tests/testUtils.d.ts +3 -104
- package/dist/tests/testUtils.d.ts.map +1 -1
- package/dist/tests/testUtils.js +6 -625
- package/dist/tests/testUtils.js.map +1 -1
- package/dist/tests/unit/snapshotMigration0001.test.js +4 -20
- package/dist/tests/unit/snapshotMigration0001.test.js.map +1 -1
- package/dist/tests/unit/snapshotMigration0004.test.js +5 -43
- package/dist/tests/unit/snapshotMigration0004.test.js.map +1 -1
- package/dist/tests/unit/snapshotMigration0005.test.js +5 -43
- package/dist/tests/unit/snapshotMigration0005.test.js.map +1 -1
- package/dist/tests/unit/streamUtils.test.js +21 -22
- package/dist/tests/unit/streamUtils.test.js.map +1 -1
- package/dist/tests/unit/tags.test.js +5 -7
- package/dist/tests/unit/tags.test.js.map +1 -1
- package/dist/types.d.ts +1 -21
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +2 -231
- package/dist/types.js.map +1 -1
- package/dist/views/models/timelineEvent.d.ts.map +1 -1
- package/dist/views/models/timelineEvent.js +132 -157
- package/dist/views/models/timelineEvent.js.map +1 -1
- package/dist/views/models/timelineTypes.d.ts +51 -30
- package/dist/views/models/timelineTypes.d.ts.map +1 -1
- package/dist/views/models/timelineTypes.js +3 -4
- package/dist/views/models/timelineTypes.js.map +1 -1
- package/dist/views/streams/timelines.d.ts +1 -1
- package/dist/views/streams/timelines.d.ts.map +1 -1
- package/dist/views/streams/timelines.js +3 -3
- package/dist/views/streams/timelines.js.map +1 -1
- package/dist/views/streams/userInboxStreams.d.ts +3 -0
- package/dist/views/streams/userInboxStreams.d.ts.map +1 -1
- package/dist/views/streams/userInboxStreams.js +15 -4
- package/dist/views/streams/userInboxStreams.js.map +1 -1
- package/dist/views/streams/userMetadataStreams.d.ts +3 -0
- package/dist/views/streams/userMetadataStreams.d.ts.map +1 -1
- package/dist/views/streams/userMetadataStreams.js +15 -4
- package/dist/views/streams/userMetadataStreams.js.map +1 -1
- package/dist/views/streams/userSettingsStreams.d.ts +3 -0
- package/dist/views/streams/userSettingsStreams.d.ts.map +1 -1
- package/dist/views/streams/userSettingsStreams.js +17 -6
- package/dist/views/streams/userSettingsStreams.js.map +1 -1
- package/dist/views/streams/userStreamsView.d.ts +3 -0
- package/dist/views/streams/userStreamsView.d.ts.map +1 -1
- package/dist/views/streams/userStreamsView.js +21 -10
- package/dist/views/streams/userStreamsView.js.map +1 -1
- package/dist/views/streamsView.d.ts +0 -6
- package/dist/views/streamsView.d.ts.map +1 -1
- package/dist/views/streamsView.js +0 -11
- package/dist/views/streamsView.js.map +1 -1
- package/dist/views/transforms/dmsAndGdmsTransform.d.ts +0 -2
- package/dist/views/transforms/dmsAndGdmsTransform.d.ts.map +1 -1
- package/dist/views/transforms/dmsAndGdmsTransform.js +1 -26
- package/dist/views/transforms/dmsAndGdmsTransform.js.map +1 -1
- package/dist/views/transforms/dmsAndGdmsUnreadIdsTransform.d.ts +1 -2
- package/dist/views/transforms/dmsAndGdmsUnreadIdsTransform.d.ts.map +1 -1
- package/dist/views/transforms/dmsAndGdmsUnreadIdsTransform.js +2 -5
- package/dist/views/transforms/dmsAndGdmsUnreadIdsTransform.js.map +1 -1
- package/dist/views/transforms/spaceIdsTransform.d.ts +1 -1
- package/dist/views/transforms/spaceIdsTransform.d.ts.map +1 -1
- package/dist/views/transforms/spaceIdsTransform.js +3 -10
- package/dist/views/transforms/spaceIdsTransform.js.map +1 -1
- package/dist/views/transforms/spaceMentionsTransform.d.ts.map +1 -1
- package/dist/views/transforms/spaceMentionsTransform.js +13 -14
- package/dist/views/transforms/spaceMentionsTransform.js.map +1 -1
- package/dist/views/transforms/spaceUnreadsTransform.d.ts.map +1 -1
- package/dist/views/transforms/spaceUnreadsTransform.js +21 -22
- package/dist/views/transforms/spaceUnreadsTransform.js.map +1 -1
- package/dist/views/transforms/unreadMarkersTransform.js +2 -4
- package/dist/views/transforms/unreadMarkersTransform.js.map +1 -1
- package/package.json +10 -9
- package/dist/memberMetadata_DisplayNames.d.ts +0 -26
- package/dist/memberMetadata_DisplayNames.d.ts.map +0 -1
- package/dist/memberMetadata_DisplayNames.js +0 -95
- package/dist/memberMetadata_DisplayNames.js.map +0 -1
- package/dist/memberMetadata_EnsAddresses.d.ts +0 -25
- package/dist/memberMetadata_EnsAddresses.d.ts.map +0 -1
- package/dist/memberMetadata_EnsAddresses.js +0 -86
- package/dist/memberMetadata_EnsAddresses.js.map +0 -1
- package/dist/memberMetadata_Nft.d.ts +0 -31
- package/dist/memberMetadata_Nft.d.ts.map +0 -1
- package/dist/memberMetadata_Nft.js +0 -95
- package/dist/memberMetadata_Nft.js.map +0 -1
- package/dist/memberMetadata_Usernames.d.ts +0 -35
- package/dist/memberMetadata_Usernames.d.ts.map +0 -1
- package/dist/memberMetadata_Usernames.js +0 -162
- package/dist/memberMetadata_Usernames.js.map +0 -1
- package/dist/streamStateView_Channel.d.ts +0 -16
- package/dist/streamStateView_Channel.d.ts.map +0 -1
- package/dist/streamStateView_Channel.js +0 -76
- package/dist/streamStateView_Channel.js.map +0 -1
- package/dist/streamStateView_DMChannel.d.ts +0 -25
- package/dist/streamStateView_DMChannel.d.ts.map +0 -1
- package/dist/streamStateView_DMChannel.js +0 -114
- package/dist/streamStateView_DMChannel.js.map +0 -1
- package/dist/streamStateView_Space.d.ts +0 -31
- package/dist/streamStateView_Space.d.ts.map +0 -1
- package/dist/streamStateView_Space.js +0 -193
- package/dist/streamStateView_Space.js.map +0 -1
- package/dist/sync-agent/dms/dms.d.ts +0 -24
- package/dist/sync-agent/dms/dms.d.ts.map +0 -1
- package/dist/sync-agent/dms/dms.js +0 -60
- package/dist/sync-agent/dms/dms.js.map +0 -1
- package/dist/sync-agent/dms/models/dm.d.ts +0 -74
- package/dist/sync-agent/dms/models/dm.d.ts.map +0 -1
- package/dist/sync-agent/dms/models/dm.js +0 -149
- package/dist/sync-agent/dms/models/dm.js.map +0 -1
- package/dist/sync-agent/river-connection/models/transactionalClient.d.ts +0 -11
- package/dist/sync-agent/river-connection/models/transactionalClient.d.ts.map +0 -1
- package/dist/sync-agent/river-connection/models/transactionalClient.js +0 -14
- package/dist/sync-agent/river-connection/models/transactionalClient.js.map +0 -1
- package/dist/sync-agent/spaces/models/channel.d.ts +0 -121
- package/dist/sync-agent/spaces/models/channel.d.ts.map +0 -1
- package/dist/sync-agent/spaces/models/channel.js +0 -182
- package/dist/sync-agent/spaces/models/channel.js.map +0 -1
- package/dist/sync-agent/spaces/models/space.d.ts +0 -57
- package/dist/sync-agent/spaces/models/space.d.ts.map +0 -1
- package/dist/sync-agent/spaces/models/space.js +0 -125
- package/dist/sync-agent/spaces/models/space.js.map +0 -1
- package/dist/sync-agent/spaces/spaces.d.ts +0 -28
- package/dist/sync-agent/spaces/spaces.d.ts.map +0 -1
- package/dist/sync-agent/spaces/spaces.js +0 -71
- package/dist/sync-agent/spaces/spaces.js.map +0 -1
- package/dist/tests/multi/channelSpaceSettings.test.d.ts +0 -5
- package/dist/tests/multi/channelSpaceSettings.test.d.ts.map +0 -1
- package/dist/tests/multi/channelSpaceSettings.test.js +0 -204
- package/dist/tests/multi/channelSpaceSettings.test.js.map +0 -1
- package/dist/tests/multi/disableChannel.test.d.ts +0 -5
- package/dist/tests/multi/disableChannel.test.d.ts.map +0 -1
- package/dist/tests/multi/disableChannel.test.js +0 -30
- package/dist/tests/multi/disableChannel.test.js.map +0 -1
- package/dist/tests/multi/disableSpace.test.d.ts.map +0 -1
- package/dist/tests/multi/disableSpace.test.js +0 -37
- package/dist/tests/multi/disableSpace.test.js.map +0 -1
- package/dist/tests/multi/entitlements/channelEntitlementPermissions.test.d.ts +0 -5
- package/dist/tests/multi/entitlements/channelEntitlementPermissions.test.d.ts.map +0 -1
- package/dist/tests/multi/entitlements/channelEntitlementPermissions.test.js +0 -129
- package/dist/tests/multi/entitlements/channelEntitlementPermissions.test.js.map +0 -1
- package/dist/tests/multi/entitlements/channelWithThreeNestedEntitlement.test.d.ts +0 -5
- package/dist/tests/multi/entitlements/channelWithThreeNestedEntitlement.test.d.ts.map +0 -1
- package/dist/tests/multi/entitlements/channelWithThreeNestedEntitlement.test.js +0 -44
- package/dist/tests/multi/entitlements/channelWithThreeNestedEntitlement.test.js.map +0 -1
- package/dist/tests/multi/entitlements/channelsWithComplexEntitlements.test.d.ts +0 -5
- package/dist/tests/multi/entitlements/channelsWithComplexEntitlements.test.d.ts.map +0 -1
- package/dist/tests/multi/entitlements/channelsWithComplexEntitlements.test.js +0 -125
- package/dist/tests/multi/entitlements/channelsWithComplexEntitlements.test.js.map +0 -1
- package/dist/tests/multi/entitlements/channelsWithEntitlementLoss.test.d.ts +0 -5
- package/dist/tests/multi/entitlements/channelsWithEntitlementLoss.test.d.ts.map +0 -1
- package/dist/tests/multi/entitlements/channelsWithEntitlementLoss.test.js +0 -72
- package/dist/tests/multi/entitlements/channelsWithEntitlementLoss.test.js.map +0 -1
- package/dist/tests/multi/entitlements/channelsWithEntitlements.test.d.ts +0 -5
- package/dist/tests/multi/entitlements/channelsWithEntitlements.test.d.ts.map +0 -1
- package/dist/tests/multi/entitlements/channelsWithEntitlements.test.js +0 -57
- package/dist/tests/multi/entitlements/channelsWithEntitlements.test.js.map +0 -1
- package/dist/tests/multi/entitlements/channelsWithErc20Entitlements.test.d.ts +0 -5
- package/dist/tests/multi/entitlements/channelsWithErc20Entitlements.test.d.ts.map +0 -1
- package/dist/tests/multi/entitlements/channelsWithErc20Entitlements.test.js +0 -86
- package/dist/tests/multi/entitlements/channelsWithErc20Entitlements.test.js.map +0 -1
- package/dist/tests/multi/entitlements/channelsWithErc721Entitlements.test.d.ts +0 -5
- package/dist/tests/multi/entitlements/channelsWithErc721Entitlements.test.d.ts.map +0 -1
- package/dist/tests/multi/entitlements/channelsWithErc721Entitlements.test.js +0 -69
- package/dist/tests/multi/entitlements/channelsWithErc721Entitlements.test.js.map +0 -1
- package/dist/tests/multi/entitlements/channelsWithEthBalanceEntitlements.test.d.ts +0 -5
- package/dist/tests/multi/entitlements/channelsWithEthBalanceEntitlements.test.d.ts.map +0 -1
- package/dist/tests/multi/entitlements/channelsWithEthBalanceEntitlements.test.js +0 -145
- package/dist/tests/multi/entitlements/channelsWithEthBalanceEntitlements.test.js.map +0 -1
- package/dist/tests/multi/entitlements/channelsWithUserEntitlements.test.d.ts +0 -5
- package/dist/tests/multi/entitlements/channelsWithUserEntitlements.test.d.ts.map +0 -1
- package/dist/tests/multi/entitlements/channelsWithUserEntitlements.test.js +0 -53
- package/dist/tests/multi/entitlements/channelsWithUserEntitlements.test.js.map +0 -1
- package/dist/tests/multi/entitlements/membershipRenewals.test.d.ts +0 -5
- package/dist/tests/multi/entitlements/membershipRenewals.test.d.ts.map +0 -1
- package/dist/tests/multi/entitlements/membershipRenewals.test.js +0 -150
- package/dist/tests/multi/entitlements/membershipRenewals.test.js.map +0 -1
- package/dist/tests/multi/entitlements/spaceWithComplexEntitlements.test.d.ts +0 -5
- package/dist/tests/multi/entitlements/spaceWithComplexEntitlements.test.d.ts.map +0 -1
- package/dist/tests/multi/entitlements/spaceWithComplexEntitlements.test.js +0 -131
- package/dist/tests/multi/entitlements/spaceWithComplexEntitlements.test.js.map +0 -1
- package/dist/tests/multi/entitlements/spaceWithEntitlements.test.d.ts +0 -5
- package/dist/tests/multi/entitlements/spaceWithEntitlements.test.d.ts.map +0 -1
- package/dist/tests/multi/entitlements/spaceWithEntitlements.test.js +0 -109
- package/dist/tests/multi/entitlements/spaceWithEntitlements.test.js.map +0 -1
- package/dist/tests/multi/entitlements/spaceWithErc20Entitlements.test.d.ts +0 -5
- package/dist/tests/multi/entitlements/spaceWithErc20Entitlements.test.d.ts.map +0 -1
- package/dist/tests/multi/entitlements/spaceWithErc20Entitlements.test.js +0 -103
- package/dist/tests/multi/entitlements/spaceWithErc20Entitlements.test.js.map +0 -1
- package/dist/tests/multi/entitlements/spaceWithErc721Entitlements.test.d.ts +0 -5
- package/dist/tests/multi/entitlements/spaceWithErc721Entitlements.test.d.ts.map +0 -1
- package/dist/tests/multi/entitlements/spaceWithErc721Entitlements.test.js +0 -84
- package/dist/tests/multi/entitlements/spaceWithErc721Entitlements.test.js.map +0 -1
- package/dist/tests/multi/entitlements/spaceWithEthBalanceEntitlements.test.d.ts +0 -5
- package/dist/tests/multi/entitlements/spaceWithEthBalanceEntitlements.test.d.ts.map +0 -1
- package/dist/tests/multi/entitlements/spaceWithEthBalanceEntitlements.test.js +0 -168
- package/dist/tests/multi/entitlements/spaceWithEthBalanceEntitlements.test.js.map +0 -1
- package/dist/tests/multi/entitlements/spaceWithThreeNestedEntitlement.test.d.ts +0 -5
- package/dist/tests/multi/entitlements/spaceWithThreeNestedEntitlement.test.d.ts.map +0 -1
- package/dist/tests/multi/entitlements/spaceWithThreeNestedEntitlement.test.js +0 -45
- package/dist/tests/multi/entitlements/spaceWithThreeNestedEntitlement.test.js.map +0 -1
- package/dist/tests/multi/entitlements/spaceWithUserEntitlements.test.d.ts +0 -5
- package/dist/tests/multi/entitlements/spaceWithUserEntitlements.test.d.ts.map +0 -1
- package/dist/tests/multi/entitlements/spaceWithUserEntitlements.test.js +0 -79
- package/dist/tests/multi/entitlements/spaceWithUserEntitlements.test.js.map +0 -1
- package/dist/tests/multi/legacySpace.test.d.ts.map +0 -1
- package/dist/tests/multi/legacySpace.test.js +0 -48
- package/dist/tests/multi/legacySpace.test.js.map +0 -1
- package/dist/tests/multi/mediaWithEntitlements.test.d.ts +0 -5
- package/dist/tests/multi/mediaWithEntitlements.test.d.ts.map +0 -1
- package/dist/tests/multi/mediaWithEntitlements.test.js +0 -152
- package/dist/tests/multi/mediaWithEntitlements.test.js.map +0 -1
- package/dist/tests/multi/membershipManagement.test.d.ts +0 -5
- package/dist/tests/multi/membershipManagement.test.d.ts.map +0 -1
- package/dist/tests/multi/membershipManagement.test.js +0 -76
- package/dist/tests/multi/membershipManagement.test.js.map +0 -1
- package/dist/tests/multi/riverAirdropDapp.test.d.ts +0 -5
- package/dist/tests/multi/riverAirdropDapp.test.d.ts.map +0 -1
- package/dist/tests/multi/riverAirdropDapp.test.js +0 -43
- package/dist/tests/multi/riverAirdropDapp.test.js.map +0 -1
- package/dist/tests/multi/spaceDapp.test.d.ts.map +0 -1
- package/dist/tests/multi/spaceDapp.test.js +0 -61
- package/dist/tests/multi/spaceDapp.test.js.map +0 -1
- package/dist/tests/multi/spaceWithVariousPriceConfigurations.test.d.ts +0 -2
- package/dist/tests/multi/spaceWithVariousPriceConfigurations.test.d.ts.map +0 -1
- package/dist/tests/multi/spaceWithVariousPriceConfigurations.test.js +0 -63
- package/dist/tests/multi/spaceWithVariousPriceConfigurations.test.js.map +0 -1
- package/dist/tests/multi/withEntitlements.test.d.ts +0 -5
- package/dist/tests/multi/withEntitlements.test.d.ts.map +0 -1
- package/dist/tests/multi/withEntitlements.test.js +0 -125
- package/dist/tests/multi/withEntitlements.test.js.map +0 -1
- package/dist/tests/multi_ne/dms.test.d.ts +0 -5
- package/dist/tests/multi_ne/dms.test.d.ts.map +0 -1
- package/dist/tests/multi_ne/dms.test.js +0 -131
- package/dist/tests/multi_ne/dms.test.js.map +0 -1
- package/dist/tests/multi_ne/memberMetadata_DisplayNames.test.d.ts +0 -5
- package/dist/tests/multi_ne/memberMetadata_DisplayNames.test.d.ts.map +0 -1
- package/dist/tests/multi_ne/memberMetadata_DisplayNames.test.js +0 -54
- package/dist/tests/multi_ne/memberMetadata_DisplayNames.test.js.map +0 -1
- package/dist/tests/multi_ne/memberMetadata_EnsAddresses.test.d.ts +0 -5
- package/dist/tests/multi_ne/memberMetadata_EnsAddresses.test.d.ts.map +0 -1
- package/dist/tests/multi_ne/memberMetadata_EnsAddresses.test.js +0 -37
- package/dist/tests/multi_ne/memberMetadata_EnsAddresses.test.js.map +0 -1
- package/dist/tests/multi_ne/memberMetadata_Nft.test.d.ts +0 -5
- package/dist/tests/multi_ne/memberMetadata_Nft.test.d.ts.map +0 -1
- package/dist/tests/multi_ne/memberMetadata_Nft.test.js +0 -49
- package/dist/tests/multi_ne/memberMetadata_Nft.test.js.map +0 -1
- package/dist/tests/multi_ne/memberMetadata_Usernames.test.d.ts +0 -5
- package/dist/tests/multi_ne/memberMetadata_Usernames.test.d.ts.map +0 -1
- package/dist/tests/multi_ne/memberMetadata_Usernames.test.js +0 -126
- package/dist/tests/multi_ne/memberMetadata_Usernames.test.js.map +0 -1
- package/dist/tests/multi_ne/space.test.d.ts +0 -5
- package/dist/tests/multi_ne/space.test.d.ts.map +0 -1
- package/dist/tests/multi_ne/space.test.js +0 -284
- package/dist/tests/multi_ne/space.test.js.map +0 -1
- package/dist/tests/multi_v2/entitlements/channelsWithCrossChainEntitlements.test.d.ts +0 -6
- package/dist/tests/multi_v2/entitlements/channelsWithCrossChainEntitlements.test.d.ts.map +0 -1
- package/dist/tests/multi_v2/entitlements/channelsWithCrossChainEntitlements.test.js +0 -78
- package/dist/tests/multi_v2/entitlements/channelsWithCrossChainEntitlements.test.js.map +0 -1
- package/dist/tests/multi_v2/entitlements/channelsWithErc1155Entitlement.test.d.ts +0 -6
- package/dist/tests/multi_v2/entitlements/channelsWithErc1155Entitlement.test.d.ts.map +0 -1
- package/dist/tests/multi_v2/entitlements/channelsWithErc1155Entitlement.test.js +0 -89
- package/dist/tests/multi_v2/entitlements/channelsWithErc1155Entitlement.test.js.map +0 -1
- package/dist/tests/multi_v2/entitlements/spaceWithCrossChainEntitlements.test.d.ts +0 -6
- package/dist/tests/multi_v2/entitlements/spaceWithCrossChainEntitlements.test.d.ts.map +0 -1
- package/dist/tests/multi_v2/entitlements/spaceWithCrossChainEntitlements.test.js +0 -88
- package/dist/tests/multi_v2/entitlements/spaceWithCrossChainEntitlements.test.js.map +0 -1
- package/dist/tests/multi_v2/entitlements/spaceWithErc1155Entitlements.test.d.ts +0 -6
- package/dist/tests/multi_v2/entitlements/spaceWithErc1155Entitlements.test.d.ts.map +0 -1
- package/dist/tests/multi_v2/entitlements/spaceWithErc1155Entitlements.test.js +0 -105
- package/dist/tests/multi_v2/entitlements/spaceWithErc1155Entitlements.test.js.map +0 -1
- package/dist/tests/multi_v2/updateRole.test.d.ts +0 -5
- package/dist/tests/multi_v2/updateRole.test.d.ts.map +0 -1
- package/dist/tests/multi_v2/updateRole.test.js +0 -25
- package/dist/tests/multi_v2/updateRole.test.js.map +0 -1
- package/dist/tests/unit/snapshotMigration0002.test.d.ts +0 -2
- package/dist/tests/unit/snapshotMigration0002.test.d.ts.map +0 -1
- package/dist/tests/unit/snapshotMigration0002.test.js +0 -31
- package/dist/tests/unit/snapshotMigration0002.test.js.map +0 -1
- package/dist/views/streams/channelStreams.d.ts +0 -8
- package/dist/views/streams/channelStreams.d.ts.map +0 -1
- package/dist/views/streams/channelStreams.js +0 -9
- package/dist/views/streams/channelStreams.js.map +0 -1
- package/dist/views/streams/dmStreams.d.ts +0 -13
- package/dist/views/streams/dmStreams.d.ts.map +0 -1
- package/dist/views/streams/dmStreams.js +0 -33
- package/dist/views/streams/dmStreams.js.map +0 -1
- package/dist/views/streams/spaceStreams.d.ts +0 -17
- package/dist/views/streams/spaceStreams.d.ts.map +0 -1
- package/dist/views/streams/spaceStreams.js +0 -52
- package/dist/views/streams/spaceStreams.js.map +0 -1
|
@@ -1,125 +0,0 @@
|
|
|
1
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
-
};
|
|
7
|
-
import { check } from '@towns-labs/utils';
|
|
8
|
-
import { isDefined } from '../../../check';
|
|
9
|
-
import { isChannelStreamId, makeDefaultChannelStreamId, makeUniqueChannelStreamId, } from '../../../id';
|
|
10
|
-
import { PersistedObservable, persistedObservable } from '../../../observable/persistedObservable';
|
|
11
|
-
import { LoadPriority } from '../../../store/store';
|
|
12
|
-
import { Channel } from './channel';
|
|
13
|
-
import { Members } from '../../members/members';
|
|
14
|
-
let Space = class Space extends PersistedObservable {
|
|
15
|
-
riverConnection;
|
|
16
|
-
channels;
|
|
17
|
-
members;
|
|
18
|
-
constructor(id, riverConnection, store) {
|
|
19
|
-
super({ id, channelIds: [], initialized: false }, store, LoadPriority.high);
|
|
20
|
-
this.riverConnection = riverConnection;
|
|
21
|
-
this.channels = {
|
|
22
|
-
[makeDefaultChannelStreamId(id)]: new Channel(makeDefaultChannelStreamId(id), id, riverConnection, store),
|
|
23
|
-
};
|
|
24
|
-
this.members = new Members(id, riverConnection, store);
|
|
25
|
-
}
|
|
26
|
-
onLoaded() {
|
|
27
|
-
this.riverConnection.registerView((client) => {
|
|
28
|
-
if (client.streams.has(this.data.id) &&
|
|
29
|
-
client.streams.get(this.data.id)?.view.isInitialized) {
|
|
30
|
-
this.onStreamInitialized(this.data.id);
|
|
31
|
-
}
|
|
32
|
-
client.on('streamInitialized', this.onStreamInitialized);
|
|
33
|
-
client.on('spaceChannelCreated', this.onSpaceChannelCreated);
|
|
34
|
-
client.on('spaceChannelDeleted', this.onSpaceChannelDeleted);
|
|
35
|
-
client.on('spaceChannelUpdated', this.onSpaceChannelUpdated);
|
|
36
|
-
return () => {
|
|
37
|
-
client.off('streamInitialized', this.onStreamInitialized);
|
|
38
|
-
client.off('spaceChannelCreated', this.onSpaceChannelCreated);
|
|
39
|
-
client.off('spaceChannelDeleted', this.onSpaceChannelDeleted);
|
|
40
|
-
client.off('spaceChannelUpdated', this.onSpaceChannelUpdated);
|
|
41
|
-
};
|
|
42
|
-
});
|
|
43
|
-
}
|
|
44
|
-
/** Joins the space.
|
|
45
|
-
* @param signer - The signer to use to join the space.
|
|
46
|
-
* @param opts - Additional options for the join.
|
|
47
|
-
*/
|
|
48
|
-
async join(_signer, _opts) {
|
|
49
|
-
const spaceId = this.data.id;
|
|
50
|
-
await this.riverConnection.login({ spaceId });
|
|
51
|
-
await this.riverConnection.call(async (client) => {
|
|
52
|
-
await client.joinStream(spaceId);
|
|
53
|
-
await client.joinStream(makeDefaultChannelStreamId(spaceId));
|
|
54
|
-
});
|
|
55
|
-
}
|
|
56
|
-
/** Creates a channel in the space.
|
|
57
|
-
* @param channelName - The name of the channel.
|
|
58
|
-
* @param signer - The signer to use to create the channel.
|
|
59
|
-
* @param opts - Additional options for the channel creation.
|
|
60
|
-
* @returns The `channelId` of the created channel.
|
|
61
|
-
*/
|
|
62
|
-
async createChannel(channelName, _signer, opts) {
|
|
63
|
-
const spaceId = this.data.id;
|
|
64
|
-
const channelId = makeUniqueChannelStreamId(spaceId);
|
|
65
|
-
await this.riverConnection.call((client) => client.createChannel(spaceId, channelName, opts?.topic ?? '', channelId));
|
|
66
|
-
return channelId;
|
|
67
|
-
}
|
|
68
|
-
/** Gets a channel by its id.
|
|
69
|
-
* @param channelId - The `channelId` of the channel.
|
|
70
|
-
* @returns The {@link Channel} model.
|
|
71
|
-
*/
|
|
72
|
-
getChannel(channelId) {
|
|
73
|
-
check(isChannelStreamId(channelId), 'channelId is not a channel stream id');
|
|
74
|
-
if (!this.channels[channelId]) {
|
|
75
|
-
this.channels[channelId] = new Channel(channelId, this.data.id, this.riverConnection, this.store);
|
|
76
|
-
}
|
|
77
|
-
return this.channels[channelId];
|
|
78
|
-
}
|
|
79
|
-
/** Gets the default channel in the space.
|
|
80
|
-
* Every space has a default channel.
|
|
81
|
-
* @returns The {@link Channel} model.
|
|
82
|
-
*/
|
|
83
|
-
getDefaultChannel() {
|
|
84
|
-
return this.channels[makeDefaultChannelStreamId(this.data.id)];
|
|
85
|
-
}
|
|
86
|
-
onStreamInitialized = (streamId) => {
|
|
87
|
-
if (this.data.id === streamId) {
|
|
88
|
-
const stream = this.riverConnection.client?.stream(streamId);
|
|
89
|
-
check(isDefined(stream), 'stream is not defined');
|
|
90
|
-
const channelIds = Object.keys(stream.view.spaceContent.spaceChannelsMetadata ?? {});
|
|
91
|
-
for (const channelId of channelIds) {
|
|
92
|
-
if (!this.channels[channelId]) {
|
|
93
|
-
this.channels[channelId] = new Channel(channelId, this.data.id, this.riverConnection, this.store);
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
this.setData({ initialized: true, channelIds: channelIds });
|
|
97
|
-
}
|
|
98
|
-
};
|
|
99
|
-
onSpaceChannelCreated = (streamId, channelId) => {
|
|
100
|
-
if (streamId === this.data.id) {
|
|
101
|
-
if (!this.channels[channelId]) {
|
|
102
|
-
this.channels[channelId] = new Channel(channelId, this.data.id, this.riverConnection, this.store);
|
|
103
|
-
}
|
|
104
|
-
if (!this.data.channelIds.includes(channelId)) {
|
|
105
|
-
this.setData({ channelIds: [...this.data.channelIds, channelId] });
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
};
|
|
109
|
-
onSpaceChannelDeleted = (streamId, channelId) => {
|
|
110
|
-
if (streamId === this.data.id) {
|
|
111
|
-
delete this.channels[channelId];
|
|
112
|
-
this.setData({ channelIds: this.data.channelIds.filter((id) => id !== channelId) });
|
|
113
|
-
}
|
|
114
|
-
};
|
|
115
|
-
onSpaceChannelUpdated = (streamId, _channelId, _updatedAtEventNum) => {
|
|
116
|
-
if (streamId === this.data.id) {
|
|
117
|
-
// refetch the channel data from on chain
|
|
118
|
-
}
|
|
119
|
-
};
|
|
120
|
-
};
|
|
121
|
-
Space = __decorate([
|
|
122
|
-
persistedObservable({ tableName: 'space' })
|
|
123
|
-
], Space);
|
|
124
|
-
export { Space };
|
|
125
|
-
//# sourceMappingURL=space.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"space.js","sourceRoot":"","sources":["../../../../src/sync-agent/spaces/models/space.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { Identifiable, Store } from '../../store/store';
|
|
2
|
-
import { PersistedObservable } from '../../observable/persistedObservable';
|
|
3
|
-
import { Space } from './models/space';
|
|
4
|
-
import { UserMemberships } from '../user/models/userMemberships';
|
|
5
|
-
import { RiverConnection } from '../river-connection/riverConnection';
|
|
6
|
-
import { CreateSpaceParams } from '@towns-labs/web3';
|
|
7
|
-
import { ethers } from 'ethers';
|
|
8
|
-
export interface SpacesModel extends Identifiable {
|
|
9
|
-
id: '0';
|
|
10
|
-
spaceIds: string[];
|
|
11
|
-
}
|
|
12
|
-
export declare class Spaces extends PersistedObservable<SpacesModel> {
|
|
13
|
-
private riverConnection;
|
|
14
|
-
private userMemberships;
|
|
15
|
-
private spaces;
|
|
16
|
-
constructor(store: Store, riverConnection: RiverConnection, userMemberships: UserMemberships);
|
|
17
|
-
protected onLoaded(): void;
|
|
18
|
-
getSpace(spaceId: string): Space;
|
|
19
|
-
private onUserMembershipsChanged;
|
|
20
|
-
createSpace(params: Partial<Omit<CreateSpaceParams, 'spaceName'>> & {
|
|
21
|
-
spaceName: string;
|
|
22
|
-
}, _signer: ethers.Signer): Promise<{
|
|
23
|
-
spaceId: string;
|
|
24
|
-
defaultChannelId: string;
|
|
25
|
-
}>;
|
|
26
|
-
joinSpace(spaceId: string, ...args: Parameters<Space['join']>): Promise<void>;
|
|
27
|
-
}
|
|
28
|
-
//# sourceMappingURL=spaces.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"spaces.d.ts","sourceRoot":"","sources":["../../../src/sync-agent/spaces/spaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAgB,KAAK,EAAE,MAAM,mBAAmB,CAAA;AACrE,OAAO,EAEH,mBAAmB,EAEtB,MAAM,sCAAsC,CAAA;AAC7C,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AACtC,OAAO,EAAE,eAAe,EAAwB,MAAM,gCAAgC,CAAA;AAQtF,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAA;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAK/B,MAAM,WAAW,WAAY,SAAQ,YAAY;IAC7C,EAAE,EAAE,GAAG,CAAA;IACP,QAAQ,EAAE,MAAM,EAAE,CAAA;CACrB;AAED,qBACa,MAAO,SAAQ,mBAAmB,CAAC,WAAW,CAAC;IAKpD,OAAO,CAAC,eAAe;IACvB,OAAO,CAAC,eAAe;IAL3B,OAAO,CAAC,MAAM,CAA4B;gBAGtC,KAAK,EAAE,KAAK,EACJ,eAAe,EAAE,eAAe,EAChC,eAAe,EAAE,eAAe;cAKzB,QAAQ;IAS3B,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK;IAQhC,OAAO,CAAC,wBAAwB;IAkB1B,WAAW,CACb,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,iBAAiB,EAAE,WAAW,CAAC,CAAC,GAAG;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,EAC7E,OAAO,EAAE,MAAM,CAAC,MAAM;;;;IAepB,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;CAItE"}
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
-
};
|
|
7
|
-
import { LoadPriority } from '../../store/store';
|
|
8
|
-
import { PersistedObservable, persistedObservable, } from '../../observable/persistedObservable';
|
|
9
|
-
import { Space } from './models/space';
|
|
10
|
-
import { MembershipOp } from '@towns-labs/proto';
|
|
11
|
-
import { isSpaceStreamId, makeDefaultChannelStreamId, makeSpaceStreamId, makeUniqueSpaceAddress, } from '../../id';
|
|
12
|
-
import { check, dlogger } from '@towns-labs/utils';
|
|
13
|
-
const logger = dlogger('csb:spaces');
|
|
14
|
-
let Spaces = class Spaces extends PersistedObservable {
|
|
15
|
-
riverConnection;
|
|
16
|
-
userMemberships;
|
|
17
|
-
spaces = {};
|
|
18
|
-
constructor(store, riverConnection, userMemberships) {
|
|
19
|
-
super({ id: '0', spaceIds: [] }, store, LoadPriority.high);
|
|
20
|
-
this.riverConnection = riverConnection;
|
|
21
|
-
this.userMemberships = userMemberships;
|
|
22
|
-
}
|
|
23
|
-
onLoaded() {
|
|
24
|
-
this.userMemberships.subscribe((value) => {
|
|
25
|
-
this.onUserMembershipsChanged(value);
|
|
26
|
-
}, { fireImediately: true });
|
|
27
|
-
}
|
|
28
|
-
getSpace(spaceId) {
|
|
29
|
-
check(isSpaceStreamId(spaceId), 'Invalid spaceId');
|
|
30
|
-
if (!this.spaces[spaceId]) {
|
|
31
|
-
this.spaces[spaceId] = new Space(spaceId, this.riverConnection, this.store);
|
|
32
|
-
}
|
|
33
|
-
return this.spaces[spaceId];
|
|
34
|
-
}
|
|
35
|
-
onUserMembershipsChanged(value) {
|
|
36
|
-
if (value.status === 'loading') {
|
|
37
|
-
return;
|
|
38
|
-
}
|
|
39
|
-
const spaceIds = Object.values(value.data.memberships)
|
|
40
|
-
.filter((m) => isSpaceStreamId(m.streamId) && m.op === MembershipOp.SO_JOIN)
|
|
41
|
-
.map((m) => m.streamId);
|
|
42
|
-
this.setData({ spaceIds });
|
|
43
|
-
for (const spaceId of spaceIds) {
|
|
44
|
-
if (!this.spaces[spaceId]) {
|
|
45
|
-
this.spaces[spaceId] = new Space(spaceId, this.riverConnection, this.store);
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
async createSpace(params, _signer) {
|
|
50
|
-
const channelName = params.channelName ?? 'general';
|
|
51
|
-
const spaceAddress = makeUniqueSpaceAddress();
|
|
52
|
-
const spaceId = makeSpaceStreamId(spaceAddress);
|
|
53
|
-
const defaultChannelId = makeDefaultChannelStreamId(spaceAddress);
|
|
54
|
-
logger.log('spaceId, defaultChannelId', { spaceId, defaultChannelId });
|
|
55
|
-
await this.riverConnection.login({ spaceId });
|
|
56
|
-
await this.riverConnection.call(async (client) => {
|
|
57
|
-
await client.createSpace(spaceId);
|
|
58
|
-
await client.createChannel(spaceId, channelName, '', defaultChannelId);
|
|
59
|
-
});
|
|
60
|
-
return { spaceId, defaultChannelId };
|
|
61
|
-
}
|
|
62
|
-
async joinSpace(spaceId, ...args) {
|
|
63
|
-
const space = this.getSpace(spaceId);
|
|
64
|
-
return space.join(...args);
|
|
65
|
-
}
|
|
66
|
-
};
|
|
67
|
-
Spaces = __decorate([
|
|
68
|
-
persistedObservable({ tableName: 'spaces' })
|
|
69
|
-
], Spaces);
|
|
70
|
-
export { Spaces };
|
|
71
|
-
//# sourceMappingURL=spaces.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"spaces.js","sourceRoot":"","sources":["../../../src/sync-agent/spaces/spaces.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAgB,YAAY,EAAS,MAAM,mBAAmB,CAAA;AACrE,OAAO,EAEH,mBAAmB,EACnB,mBAAmB,GACtB,MAAM,sCAAsC,CAAA;AAC7C,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AAEtC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EACH,eAAe,EACf,0BAA0B,EAC1B,iBAAiB,EACjB,sBAAsB,GACzB,MAAM,UAAU,CAAA;AAIjB,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAElD,MAAM,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAAA;AAQ7B,IAAM,MAAM,GAAZ,MAAM,MAAO,SAAQ,mBAAgC;IAK5C;IACA;IALJ,MAAM,GAA0B,EAAE,CAAA;IAE1C,YACI,KAAY,EACJ,eAAgC,EAChC,eAAgC;QAExC,KAAK,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,YAAY,CAAC,IAAI,CAAC,CAAA;QAHlD,oBAAe,GAAf,eAAe,CAAiB;QAChC,oBAAe,GAAf,eAAe,CAAiB;IAG5C,CAAC;IAEkB,QAAQ;QACvB,IAAI,CAAC,eAAe,CAAC,SAAS,CAC1B,CAAC,KAAK,EAAE,EAAE;YACN,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAA;QACxC,CAAC,EACD,EAAE,cAAc,EAAE,IAAI,EAAE,CAC3B,CAAA;IACL,CAAC;IAED,QAAQ,CAAC,OAAe;QACpB,KAAK,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,iBAAiB,CAAC,CAAA;QAClD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;YACxB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,IAAI,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;QAC/E,CAAC;QACD,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IAC/B,CAAC;IAEO,wBAAwB,CAAC,KAA2C;QACxE,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC7B,OAAM;QACV,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC;aACjD,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,YAAY,CAAC,OAAO,CAAC;aAC3E,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;QAE3B,IAAI,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAA;QAE1B,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC7B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;gBACxB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,IAAI,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;YAC/E,CAAC;QACL,CAAC;IACL,CAAC;IAED,KAAK,CAAC,WAAW,CACb,MAA6E,EAC7E,OAAsB;QAEtB,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,IAAI,SAAS,CAAA;QACnD,MAAM,YAAY,GAAG,sBAAsB,EAAE,CAAA;QAC7C,MAAM,OAAO,GAAG,iBAAiB,CAAC,YAAY,CAAC,CAAA;QAC/C,MAAM,gBAAgB,GAAG,0BAA0B,CAAC,YAAY,CAAC,CAAA;QACjE,MAAM,CAAC,GAAG,CAAC,2BAA2B,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC,CAAA;QACtE,MAAM,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,CAAA;QAC7C,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YAC7C,MAAM,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;YACjC,MAAM,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE,WAAW,EAAE,EAAE,EAAE,gBAAgB,CAAC,CAAA;QAC1E,CAAC,CAAC,CAAA;QACF,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAA;IACxC,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,OAAe,EAAE,GAAG,IAA+B;QAC/D,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;QACpC,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAA;IAC9B,CAAC;CACJ,CAAA;AAnEY,MAAM;IADlB,mBAAmB,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;GAChC,MAAM,CAmElB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"channelSpaceSettings.test.d.ts","sourceRoot":"","sources":["../../../src/tests/multi/channelSpaceSettings.test.ts"],"names":[],"mappings":"AAAA;;GAEG"}
|
|
@@ -1,204 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @group with-entitlements
|
|
3
|
-
*/
|
|
4
|
-
import { setupWalletsAndContexts, createSpaceAndDefaultChannel, everyoneMembershipStruct, createChannel, waitFor, expectUserCanJoin, createRole, } from '../testUtils';
|
|
5
|
-
import { check } from '@towns-labs/utils';
|
|
6
|
-
import { Permission, NoopRuleData } from '@towns-labs/web3';
|
|
7
|
-
describe('channelSpaceSettingsTests', () => {
|
|
8
|
-
test('channel creation with default settings', async () => {
|
|
9
|
-
const { bob, bobProvider, bobSpaceDapp } = await setupWalletsAndContexts();
|
|
10
|
-
const everyoneMembership = await everyoneMembershipStruct(bobSpaceDapp, bob);
|
|
11
|
-
// Track autojoin state of channels via emitted client events
|
|
12
|
-
const updatedChannelAutojoinState = new Map();
|
|
13
|
-
bob.on('spaceChannelAutojoinUpdated', (_spaceId, channelId, autojoin) => {
|
|
14
|
-
updatedChannelAutojoinState.set(channelId, autojoin);
|
|
15
|
-
});
|
|
16
|
-
// The default channel is created without channel settings here. It should
|
|
17
|
-
// be autojoin=true and hideUserJoinLeaveEvents=false.
|
|
18
|
-
const { spaceId, defaultChannelId } = await createSpaceAndDefaultChannel(bob, bobSpaceDapp, bobProvider.wallet, "bob's town", everyoneMembership);
|
|
19
|
-
// Create another channel. This channel should be autojoin=false, hideUserJoinLeaveEvents=false.
|
|
20
|
-
// Create channel on contract.
|
|
21
|
-
const { channelId: channel1Id, error } = await createChannel(bobSpaceDapp, bobProvider, spaceId, 'channel1', [1], // member role created on town creation
|
|
22
|
-
bobProvider.wallet);
|
|
23
|
-
expect(error).toBeUndefined();
|
|
24
|
-
// Create channel stream
|
|
25
|
-
const { streamId: channelStream1Id } = await bob.createChannel(spaceId, 'channel1', 'channel1 topic', channel1Id);
|
|
26
|
-
expect(channelStream1Id).toEqual(channel1Id);
|
|
27
|
-
const spaceStream = bob.streams.get(spaceId);
|
|
28
|
-
expect(spaceStream).toBeDefined();
|
|
29
|
-
const spaceStreamView = spaceStream.view.spaceContent;
|
|
30
|
-
expect(spaceStreamView).toBeDefined();
|
|
31
|
-
await waitFor(() => {
|
|
32
|
-
const channelMetadata = spaceStreamView.spaceChannelsMetadata;
|
|
33
|
-
check(Object.keys(channelMetadata).length === 2);
|
|
34
|
-
check(channelMetadata[defaultChannelId]?.isAutojoin === true);
|
|
35
|
-
check(channelMetadata[defaultChannelId]?.hideUserJoinLeaveEvents === false);
|
|
36
|
-
check(channelMetadata[channel1Id]?.isAutojoin === false);
|
|
37
|
-
check(channelMetadata[channel1Id]?.hideUserJoinLeaveEvents === false);
|
|
38
|
-
});
|
|
39
|
-
});
|
|
40
|
-
test('create announcement channel (autojoin, hide user join/leave events)', async () => {
|
|
41
|
-
const { bob, bobProvider, bobSpaceDapp } = await setupWalletsAndContexts();
|
|
42
|
-
const everyoneMembership = await everyoneMembershipStruct(bobSpaceDapp, bob);
|
|
43
|
-
const { spaceId } = await createSpaceAndDefaultChannel(bob, bobSpaceDapp, bobProvider.wallet, "bob's town", everyoneMembership);
|
|
44
|
-
const { channelId: announcementChannelId, error } = await createChannel(bobSpaceDapp, bobProvider, spaceId, 'channel2', [1], // member role created on town creation
|
|
45
|
-
bobProvider.wallet);
|
|
46
|
-
expect(error).toBeUndefined();
|
|
47
|
-
expect(announcementChannelId).toBeDefined();
|
|
48
|
-
const { streamId: announcementStreamId } = await bob.createChannel(spaceId, 'channel2', 'channel2 topic', announcementChannelId, undefined, {
|
|
49
|
-
autojoin: true,
|
|
50
|
-
hideUserJoinLeaveEvents: true,
|
|
51
|
-
});
|
|
52
|
-
const spaceStream = bob.streams.get(spaceId);
|
|
53
|
-
expect(spaceStream).toBeDefined();
|
|
54
|
-
const spaceStreamView = spaceStream.view.spaceContent;
|
|
55
|
-
expect(spaceStreamView).toBeDefined();
|
|
56
|
-
await waitFor(() => {
|
|
57
|
-
const channelMetadata = spaceStreamView.spaceChannelsMetadata;
|
|
58
|
-
check(Object.keys(channelMetadata).length === 2);
|
|
59
|
-
check(channelMetadata[announcementStreamId]?.isAutojoin === true);
|
|
60
|
-
check(channelMetadata[announcementStreamId]?.hideUserJoinLeaveEvents === true);
|
|
61
|
-
});
|
|
62
|
-
});
|
|
63
|
-
test('set autojoin for channel', async () => {
|
|
64
|
-
const { bob, bobProvider, bobSpaceDapp } = await setupWalletsAndContexts();
|
|
65
|
-
const everyoneMembership = await everyoneMembershipStruct(bobSpaceDapp, bob);
|
|
66
|
-
// Track autojoin state of channels via emitted client events
|
|
67
|
-
const updatedChannelAutojoinState = new Map();
|
|
68
|
-
bob.on('spaceChannelAutojoinUpdated', (_spaceId, channelId, autojoin) => {
|
|
69
|
-
updatedChannelAutojoinState.set(channelId, autojoin);
|
|
70
|
-
});
|
|
71
|
-
const { spaceId, defaultChannelId } = await createSpaceAndDefaultChannel(bob, bobSpaceDapp, bobProvider.wallet, "bob's town", everyoneMembership);
|
|
72
|
-
// Create channel on contract
|
|
73
|
-
const { channelId: channel1Id, error } = await createChannel(bobSpaceDapp, bobProvider, spaceId, 'channel1', [1], // member role created on town creation
|
|
74
|
-
bobProvider.wallet);
|
|
75
|
-
expect(error).toBeUndefined();
|
|
76
|
-
// Create channel stream
|
|
77
|
-
const { streamId: channelStream1Id } = await bob.createChannel(spaceId, 'channel1', 'channel1 topic', channel1Id);
|
|
78
|
-
expect(channelStream1Id).toEqual(channel1Id);
|
|
79
|
-
const spaceStream = bob.streams.get(spaceId);
|
|
80
|
-
expect(spaceStream).toBeDefined();
|
|
81
|
-
const spaceStreamView = spaceStream.view.spaceContent;
|
|
82
|
-
expect(spaceStreamView).toBeDefined();
|
|
83
|
-
// Default channel only should be autojoin by default
|
|
84
|
-
await waitFor(() => {
|
|
85
|
-
const channelMetadata = spaceStreamView.spaceChannelsMetadata;
|
|
86
|
-
check(Object.keys(channelMetadata).length === 2);
|
|
87
|
-
check(channelMetadata[defaultChannelId]?.isAutojoin === true);
|
|
88
|
-
check(channelMetadata[channel1Id]?.isAutojoin === false);
|
|
89
|
-
});
|
|
90
|
-
// Set channel1 to autojoin=true
|
|
91
|
-
const { eventId } = await bob.updateChannelAutojoin(spaceId, channel1Id, true);
|
|
92
|
-
expect(eventId).toBeDefined();
|
|
93
|
-
// Validate autojoin event was emitted for channel1
|
|
94
|
-
await waitFor(() => {
|
|
95
|
-
expect(updatedChannelAutojoinState.size).toBe(1);
|
|
96
|
-
expect(updatedChannelAutojoinState.get(channel1Id)).toBe(true);
|
|
97
|
-
});
|
|
98
|
-
// Expect autojoin change to sync to space stream view
|
|
99
|
-
await waitFor(() => {
|
|
100
|
-
const channelMetadata = spaceStreamView.spaceChannelsMetadata;
|
|
101
|
-
check(channelMetadata[channel1Id]?.isAutojoin === true);
|
|
102
|
-
});
|
|
103
|
-
});
|
|
104
|
-
test('unpermitted user cannot update channel autojoin', async () => {
|
|
105
|
-
const { bob, bobProvider, bobSpaceDapp, alice, aliceSpaceDapp, aliceProvider, carol, carolsWallet, carolProvider, carolSpaceDapp, } = await setupWalletsAndContexts();
|
|
106
|
-
const everyoneMembership = await everyoneMembershipStruct(bobSpaceDapp, bob);
|
|
107
|
-
const { spaceId, defaultChannelId } = await createSpaceAndDefaultChannel(bob, bobSpaceDapp, bobProvider.wallet, "bob's town", everyoneMembership);
|
|
108
|
-
// Validate current autojoin state for default channel is true
|
|
109
|
-
const spaceStream = bob.streams.get(spaceId);
|
|
110
|
-
expect(spaceStream).toBeDefined();
|
|
111
|
-
const spaceStreamView = spaceStream.view.spaceContent;
|
|
112
|
-
expect(spaceStreamView).toBeDefined();
|
|
113
|
-
await waitFor(() => {
|
|
114
|
-
const channelMetadata = spaceStreamView.spaceChannelsMetadata;
|
|
115
|
-
check(Object.keys(channelMetadata).length === 1);
|
|
116
|
-
check(channelMetadata[defaultChannelId]?.isAutojoin === true);
|
|
117
|
-
});
|
|
118
|
-
// Unpermitted user alice should not be able to update autojoin.
|
|
119
|
-
// First, add alice to the space and channel.
|
|
120
|
-
await expectUserCanJoin(spaceId, defaultChannelId, 'alice', alice, aliceSpaceDapp, aliceProvider.wallet.address, aliceProvider.wallet);
|
|
121
|
-
// Alice's update should fail
|
|
122
|
-
await expect(alice.updateChannelAutojoin(spaceId, defaultChannelId, false)).rejects.toThrow(/7:PERMISSION_DENIED/);
|
|
123
|
-
// Add Carol to a role that gives her AddRemoveChannels permission so she can update autojoin
|
|
124
|
-
const { error: roleError } = await createRole(bobSpaceDapp, bobProvider, spaceId, 'gated role', [Permission.AddRemoveChannels], [carolsWallet.address], NoopRuleData, bobProvider.wallet);
|
|
125
|
-
expect(roleError).toBeUndefined();
|
|
126
|
-
// Add Carol to the space and the channel
|
|
127
|
-
await expectUserCanJoin(spaceId, defaultChannelId, 'carol', carol, carolSpaceDapp, carolProvider.wallet.address, carolProvider.wallet);
|
|
128
|
-
// Carol's update should succeed
|
|
129
|
-
await expect(carol.updateChannelAutojoin(spaceId, defaultChannelId, false)).resolves.not.toThrow();
|
|
130
|
-
// Validate autojoin event was applied on client
|
|
131
|
-
await waitFor(() => {
|
|
132
|
-
const channelMetadata = spaceStreamView.spaceChannelsMetadata;
|
|
133
|
-
check(Object.keys(channelMetadata).length === 1);
|
|
134
|
-
check(channelMetadata[defaultChannelId]?.isAutojoin === false);
|
|
135
|
-
});
|
|
136
|
-
});
|
|
137
|
-
test('set hideUserJoinLeaveEvents on channels', async () => {
|
|
138
|
-
const { bob, bobProvider, bobSpaceDapp } = await setupWalletsAndContexts();
|
|
139
|
-
const everyoneMembership = await everyoneMembershipStruct(bobSpaceDapp, bob);
|
|
140
|
-
// Track hideJoinLeaveEvent state of channels via emitted client events
|
|
141
|
-
const updatedChannelHideJoinLeaveEventsState = new Map();
|
|
142
|
-
bob.on('spaceChannelHideUserJoinLeaveEventsUpdated', (_spaceId, channelId, hideJoinLeaveEvents) => {
|
|
143
|
-
updatedChannelHideJoinLeaveEventsState.set(channelId, hideJoinLeaveEvents);
|
|
144
|
-
});
|
|
145
|
-
const { spaceId, defaultChannelId } = await createSpaceAndDefaultChannel(bob, bobSpaceDapp, bobProvider.wallet, "bob's town", everyoneMembership);
|
|
146
|
-
const spaceStream = bob.streams.get(spaceId);
|
|
147
|
-
expect(spaceStream).toBeDefined();
|
|
148
|
-
const spaceStreamView = spaceStream.view.spaceContent;
|
|
149
|
-
expect(spaceStreamView).toBeDefined();
|
|
150
|
-
// All channels show join/leave events by default
|
|
151
|
-
await waitFor(() => {
|
|
152
|
-
const channelMetadata = spaceStreamView.spaceChannelsMetadata;
|
|
153
|
-
check(Object.keys(channelMetadata).length === 1);
|
|
154
|
-
check(channelMetadata[defaultChannelId]?.hideUserJoinLeaveEvents === false);
|
|
155
|
-
});
|
|
156
|
-
// Set channel1 to hideUserJoinLeaveEvents=true
|
|
157
|
-
const { eventId } = await bob.updateChannelHideUserJoinLeaveEvents(spaceId, defaultChannelId, true);
|
|
158
|
-
expect(eventId).toBeDefined();
|
|
159
|
-
// Validate updateHideUserJoinLeaveEvent event was emitted for channel1
|
|
160
|
-
await waitFor(() => {
|
|
161
|
-
expect(updatedChannelHideJoinLeaveEventsState.size).toBe(1);
|
|
162
|
-
expect(updatedChannelHideJoinLeaveEventsState.get(defaultChannelId)).toBe(true);
|
|
163
|
-
});
|
|
164
|
-
// Expect hideUserJoinLeaveEvents change to sync to space stream view
|
|
165
|
-
await waitFor(() => {
|
|
166
|
-
const channelMetadata = spaceStreamView.spaceChannelsMetadata;
|
|
167
|
-
check(channelMetadata[defaultChannelId]?.hideUserJoinLeaveEvents === true);
|
|
168
|
-
});
|
|
169
|
-
});
|
|
170
|
-
test('unpermitted user cannot update channel hideUserJoinLeaveEvents', async () => {
|
|
171
|
-
const { bob, bobProvider, bobSpaceDapp, alice, aliceSpaceDapp, aliceProvider, carol, carolsWallet, carolSpaceDapp, carolProvider, } = await setupWalletsAndContexts();
|
|
172
|
-
const everyoneMembership = await everyoneMembershipStruct(bobSpaceDapp, bob);
|
|
173
|
-
const { spaceId, defaultChannelId } = await createSpaceAndDefaultChannel(bob, bobSpaceDapp, bobProvider.wallet, "bob's town", everyoneMembership);
|
|
174
|
-
// Validate local synced client state for channel setting is false
|
|
175
|
-
const spaceStream = bob.streams.get(spaceId);
|
|
176
|
-
expect(spaceStream).toBeDefined();
|
|
177
|
-
const spaceStreamView = spaceStream.view.spaceContent;
|
|
178
|
-
expect(spaceStreamView).toBeDefined();
|
|
179
|
-
await waitFor(() => {
|
|
180
|
-
const channelMetadata = spaceStreamView.spaceChannelsMetadata;
|
|
181
|
-
check(Object.keys(channelMetadata).length === 1);
|
|
182
|
-
check(channelMetadata[defaultChannelId]?.hideUserJoinLeaveEvents === false);
|
|
183
|
-
});
|
|
184
|
-
// Unpermitted user alice should not be able to update hideUserJoinLeaveEvents.
|
|
185
|
-
// First, add alice to the space and channel.
|
|
186
|
-
await expectUserCanJoin(spaceId, defaultChannelId, 'alice', alice, aliceSpaceDapp, aliceProvider.wallet.address, aliceProvider.wallet);
|
|
187
|
-
await expect(alice.updateChannelHideUserJoinLeaveEvents(spaceId, defaultChannelId, true)).rejects.toThrow(/7:PERMISSION_DENIED/);
|
|
188
|
-
// Add Carol to a role that gives her AddRemoveChannels permission so she can update
|
|
189
|
-
// hideUserJoinLeaveEvents
|
|
190
|
-
const { error: roleError } = await createRole(bobSpaceDapp, bobProvider, spaceId, 'gated role', [Permission.AddRemoveChannels], [carolsWallet.address], NoopRuleData, bobProvider.wallet);
|
|
191
|
-
expect(roleError).toBeUndefined();
|
|
192
|
-
// Add Carol to the space and channel.
|
|
193
|
-
await expectUserCanJoin(spaceId, defaultChannelId, 'carol', carol, carolSpaceDapp, carolProvider.wallet.address, carolProvider.wallet);
|
|
194
|
-
// Carol's update should succeed
|
|
195
|
-
await expect(carol.updateChannelHideUserJoinLeaveEvents(spaceId, defaultChannelId, true)).resolves.not.toThrow();
|
|
196
|
-
// Validate updateHideUserJoinLeaveEvents event was applied on client
|
|
197
|
-
await waitFor(() => {
|
|
198
|
-
const channelMetadata = spaceStreamView.spaceChannelsMetadata;
|
|
199
|
-
check(Object.keys(channelMetadata).length === 1);
|
|
200
|
-
check(channelMetadata[defaultChannelId]?.hideUserJoinLeaveEvents === true);
|
|
201
|
-
});
|
|
202
|
-
});
|
|
203
|
-
});
|
|
204
|
-
//# sourceMappingURL=channelSpaceSettings.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"channelSpaceSettings.test.js","sourceRoot":"","sources":["../../../src/tests/multi/channelSpaceSettings.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"disableChannel.test.d.ts","sourceRoot":"","sources":["../../../src/tests/multi/disableChannel.test.ts"],"names":[],"mappings":"AAAA;;GAEG"}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @group with-entitlements
|
|
3
|
-
*/
|
|
4
|
-
import { NoopRuleData } from '@towns-labs/web3';
|
|
5
|
-
import { expectUserCanJoinChannel, setupChannelWithCustomRole } from '../testUtils';
|
|
6
|
-
describe('disableChannel', () => {
|
|
7
|
-
test('User cannot post events to a channel after it is disabled', async () => {
|
|
8
|
-
const { alice, carol, bobProvider, aliceSpaceDapp, bobSpaceDapp, spaceId, channelId } = await setupChannelWithCustomRole(['alice', 'carol'], NoopRuleData);
|
|
9
|
-
await expectUserCanJoinChannel(alice, aliceSpaceDapp, spaceId, channelId);
|
|
10
|
-
// Disable the channel
|
|
11
|
-
const txn = await bobSpaceDapp.setChannelAccess(spaceId, channelId, true, bobProvider.wallet);
|
|
12
|
-
await bobProvider.waitForTransaction(txn.hash);
|
|
13
|
-
const channelDetails = await bobSpaceDapp.getChannelDetails(spaceId, channelId);
|
|
14
|
-
expect(channelDetails).toBeDefined();
|
|
15
|
-
expect(channelDetails.disabled).toBeTruthy();
|
|
16
|
-
// Wait 5 seconds for the positive channel enabled cache entry to expire
|
|
17
|
-
await new Promise((f) => setTimeout(f, 5000));
|
|
18
|
-
// Stream node should not allow the join
|
|
19
|
-
// TODO: SpaceDapp also should not allow the join, but it currently does not
|
|
20
|
-
// check for channel enabled. Fix and replace below logic with
|
|
21
|
-
// await expectUserCanJoinChannel(
|
|
22
|
-
// carol,
|
|
23
|
-
// carolSpaceDapp,
|
|
24
|
-
// spaceId,
|
|
25
|
-
// channelId!,
|
|
26
|
-
// )
|
|
27
|
-
await expect(carol.joinStream(channelId)).rejects.toThrow(/7:PERMISSION_DENIED/);
|
|
28
|
-
});
|
|
29
|
-
});
|
|
30
|
-
//# sourceMappingURL=disableChannel.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"disableChannel.test.js","sourceRoot":"","sources":["../../../src/tests/multi/disableChannel.test.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC/C,OAAO,EAAE,wBAAwB,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAA;AAEnF,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;IAC5B,IAAI,CAAC,2DAA2D,EAAE,KAAK,IAAI,EAAE;QACzE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,YAAY,EAAE,OAAO,EAAE,SAAS,EAAE,GACjF,MAAM,0BAA0B,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,YAAY,CAAC,CAAA;QAEtE,MAAM,wBAAwB,CAAC,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,SAAU,CAAC,CAAA;QAE1E,sBAAsB;QACtB,MAAM,GAAG,GAAG,MAAM,YAAY,CAAC,gBAAgB,CAC3C,OAAO,EACP,SAAU,EACV,IAAI,EACJ,WAAW,CAAC,MAAM,CACrB,CAAA;QACD,MAAM,WAAW,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QAC9C,MAAM,cAAc,GAAG,MAAM,YAAY,CAAC,iBAAiB,CAAC,OAAO,EAAE,SAAU,CAAC,CAAA;QAChF,MAAM,CAAC,cAAc,CAAC,CAAC,WAAW,EAAE,CAAA;QACpC,MAAM,CAAC,cAAe,CAAC,QAAQ,CAAC,CAAC,UAAU,EAAE,CAAA;QAE7C,wEAAwE;QACxE,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAA;QAE7C,wCAAwC;QACxC,4EAA4E;QAC5E,8DAA8D;QAC9D,kCAAkC;QAClC,aAAa;QACb,sBAAsB;QACtB,eAAe;QACf,kBAAkB;QAClB,IAAI;QACJ,MAAM,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,SAAU,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAA;IACrF,CAAC,CAAC,CAAA;AACN,CAAC,CAAC,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"disableSpace.test.d.ts","sourceRoot":"","sources":["../../../src/tests/multi/disableSpace.test.ts"],"names":[],"mappings":"AAAA;;GAEG"}
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @group with-entitlements
|
|
3
|
-
*/
|
|
4
|
-
import { NoopRuleData } from '@towns-labs/web3';
|
|
5
|
-
import { expectUserCanJoin, createTownWithRequirements, createUserStreamAndSyncClient, everyoneMembershipStruct, } from '../testUtils';
|
|
6
|
-
describe('disableSpace', () => {
|
|
7
|
-
test('User cannot join a space after it is disabled', async () => {
|
|
8
|
-
const { alice, carol, alicesWallet, aliceProvider, bobProvider, carolProvider, aliceSpaceDapp, bobSpaceDapp, carolSpaceDapp, spaceId, channelId, } = await createTownWithRequirements({
|
|
9
|
-
everyone: true,
|
|
10
|
-
users: [],
|
|
11
|
-
ruleData: NoopRuleData,
|
|
12
|
-
});
|
|
13
|
-
await expectUserCanJoin(spaceId, channelId, 'alice', alice, aliceSpaceDapp, alicesWallet.address, aliceProvider.wallet);
|
|
14
|
-
// Disable the channel
|
|
15
|
-
const txn = await bobSpaceDapp.setSpaceAccess(spaceId, true, bobProvider.wallet);
|
|
16
|
-
await bobProvider.waitForTransaction(txn.hash);
|
|
17
|
-
const spaceInfo = await bobSpaceDapp.getSpaceInfo(spaceId);
|
|
18
|
-
expect(spaceInfo).toBeDefined();
|
|
19
|
-
expect(spaceInfo?.disabled).toBeTruthy();
|
|
20
|
-
// Wait 5 seconds for the positive space enabled cache entry to expire
|
|
21
|
-
await new Promise((f) => setTimeout(f, 5000));
|
|
22
|
-
// Have carol create a user stream attached to her own space.
|
|
23
|
-
// Then she will attempt to join the space from the client, which should fail.
|
|
24
|
-
await createUserStreamAndSyncClient(carol, carolSpaceDapp, 'carol', await everyoneMembershipStruct(carolSpaceDapp, carol), carolProvider.wallet);
|
|
25
|
-
// Expect user cannot join the space.
|
|
26
|
-
// TODO: the spaceDapp does not check for space enabled when evaluating if user
|
|
27
|
-
// is eligible to join the space. Fix and replace the below logic with
|
|
28
|
-
// await expectUserCannotJoinSpace(
|
|
29
|
-
// spaceId,
|
|
30
|
-
// carol,
|
|
31
|
-
// carolSpaceDapp,
|
|
32
|
-
// carolsWallet.address
|
|
33
|
-
// )
|
|
34
|
-
await expect(carol.joinStream(spaceId)).rejects.toThrow(/PERMISSION_DENIED/);
|
|
35
|
-
});
|
|
36
|
-
});
|
|
37
|
-
//# sourceMappingURL=disableSpace.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"disableSpace.test.js","sourceRoot":"","sources":["../../../src/tests/multi/disableSpace.test.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC/C,OAAO,EACH,iBAAiB,EACjB,0BAA0B,EAC1B,6BAA6B,EAC7B,wBAAwB,GAC3B,MAAM,cAAc,CAAA;AAErB,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC1B,IAAI,CAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;QAC7D,MAAM,EACF,KAAK,EACL,KAAK,EACL,YAAY,EACZ,aAAa,EACb,WAAW,EACX,aAAa,EACb,cAAc,EACd,YAAY,EACZ,cAAc,EACd,OAAO,EACP,SAAS,GACZ,GAAG,MAAM,0BAA0B,CAAC;YACjC,QAAQ,EAAE,IAAI;YACd,KAAK,EAAE,EAAE;YACT,QAAQ,EAAE,YAAY;SACzB,CAAC,CAAA;QAEF,MAAM,iBAAiB,CACnB,OAAO,EACP,SAAS,EACT,OAAO,EACP,KAAK,EACL,cAAc,EACd,YAAY,CAAC,OAAO,EACpB,aAAa,CAAC,MAAM,CACvB,CAAA;QAED,sBAAsB;QACtB,MAAM,GAAG,GAAG,MAAM,YAAY,CAAC,cAAc,CAAC,OAAO,EAAE,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;QAChF,MAAM,WAAW,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QAC9C,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;QAC1D,MAAM,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAA;QAC/B,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,UAAU,EAAE,CAAA;QAExC,sEAAsE;QACtE,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAA;QAE7C,6DAA6D;QAC7D,8EAA8E;QAC9E,MAAM,6BAA6B,CAC/B,KAAK,EACL,cAAc,EACd,OAAO,EACP,MAAM,wBAAwB,CAAC,cAAc,EAAE,KAAK,CAAC,EACrD,aAAa,CAAC,MAAM,CACvB,CAAA;QAED,qCAAqC;QACrC,+EAA+E;QAC/E,sEAAsE;QACtE,mCAAmC;QACnC,eAAe;QACf,aAAa;QACb,sBAAsB;QACtB,2BAA2B;QAC3B,IAAI;QACJ,MAAM,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAA;IAChF,CAAC,CAAC,CAAA;AACN,CAAC,CAAC,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"channelEntitlementPermissions.test.d.ts","sourceRoot":"","sources":["../../../../src/tests/multi/entitlements/channelEntitlementPermissions.test.ts"],"names":[],"mappings":"AAAA;;GAEG"}
|