@towns-protocol/sdk 0.0.251 → 0.0.253
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.map +1 -1
- package/dist/client.js +4 -4
- package/dist/client.js.map +1 -1
- package/dist/index.d.ts +20 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +20 -6
- package/dist/index.js.map +1 -1
- package/dist/observable/combine.d.ts +4 -2
- package/dist/observable/combine.d.ts.map +1 -1
- package/dist/observable/combine.js +5 -2
- package/dist/observable/combine.js.map +1 -1
- package/dist/observable/observableRecord.d.ts +18 -0
- package/dist/observable/observableRecord.d.ts.map +1 -0
- package/dist/observable/observableRecord.js +71 -0
- package/dist/observable/observableRecord.js.map +1 -0
- package/dist/streamStateView.d.ts.map +1 -1
- package/dist/streamStateView.js +8 -8
- package/dist/streamStateView.js.map +1 -1
- package/dist/streamStateView_Channel.d.ts +1 -6
- package/dist/streamStateView_Channel.d.ts.map +1 -1
- package/dist/streamStateView_Channel.js +4 -10
- package/dist/streamStateView_Channel.js.map +1 -1
- package/dist/streamStateView_DMChannel.d.ts +8 -7
- package/dist/streamStateView_DMChannel.d.ts.map +1 -1
- package/dist/streamStateView_DMChannel.js +22 -15
- package/dist/streamStateView_DMChannel.js.map +1 -1
- package/dist/streamStateView_GDMChannel.d.ts +5 -4
- package/dist/streamStateView_GDMChannel.d.ts.map +1 -1
- package/dist/streamStateView_GDMChannel.js +13 -12
- package/dist/streamStateView_GDMChannel.js.map +1 -1
- package/dist/streamStateView_Space.d.ts +5 -8
- package/dist/streamStateView_Space.d.ts.map +1 -1
- package/dist/streamStateView_Space.js +26 -23
- package/dist/streamStateView_Space.js.map +1 -1
- package/dist/streamStateView_User.d.ts +11 -18
- package/dist/streamStateView_User.d.ts.map +1 -1
- package/dist/streamStateView_User.js +35 -20
- package/dist/streamStateView_User.js.map +1 -1
- package/dist/streamStateView_UserInbox.d.ts +4 -1
- package/dist/streamStateView_UserInbox.d.ts.map +1 -1
- package/dist/streamStateView_UserInbox.js +6 -1
- package/dist/streamStateView_UserInbox.js.map +1 -1
- package/dist/streamStateView_UserMetadata.d.ts +4 -1
- package/dist/streamStateView_UserMetadata.d.ts.map +1 -1
- package/dist/streamStateView_UserMetadata.js +6 -1
- package/dist/streamStateView_UserMetadata.js.map +1 -1
- package/dist/streamStateView_UserSettings.d.ts +4 -3
- package/dist/streamStateView_UserSettings.d.ts.map +1 -1
- package/dist/streamStateView_UserSettings.js +11 -12
- package/dist/streamStateView_UserSettings.js.map +1 -1
- package/dist/sync-agent/spaces/models/space.js +1 -1
- package/dist/sync-agent/spaces/models/space.js.map +1 -1
- package/dist/sync-agent/user/models/userMemberships.d.ts.map +1 -1
- package/dist/sync-agent/user/models/userMemberships.js +3 -1
- package/dist/sync-agent/user/models/userMemberships.js.map +1 -1
- package/dist/syncedStream.js +1 -1
- package/dist/syncedStream.js.map +1 -1
- package/dist/tests/multi/channelSpaceSettings.test.js +23 -23
- package/dist/tests/multi/channelSpaceSettings.test.js.map +1 -1
- package/dist/tests/multi_ne/space.test.js +5 -7
- package/dist/tests/multi_ne/space.test.js.map +1 -1
- package/dist/tests/multi_ne/streamStateView_User.test.js +3 -3
- package/dist/tests/multi_ne/streamStateView_User.test.js.map +1 -1
- package/dist/tests/unit/observable/combine.test.js +23 -23
- package/dist/tests/unit/observable/combine.test.js.map +1 -1
- package/dist/views/streams/channelStreams.d.ts +8 -0
- package/dist/views/streams/channelStreams.d.ts.map +1 -0
- package/dist/views/streams/channelStreams.js +9 -0
- package/dist/views/streams/channelStreams.js.map +1 -0
- package/dist/views/streams/dmStreams.d.ts +13 -0
- package/dist/views/streams/dmStreams.d.ts.map +1 -0
- package/dist/views/streams/dmStreams.js +33 -0
- package/dist/views/streams/dmStreams.js.map +1 -0
- package/dist/views/streams/gdmStreams.d.ts +10 -0
- package/dist/views/streams/gdmStreams.d.ts.map +1 -0
- package/dist/views/streams/gdmStreams.js +21 -0
- package/dist/views/streams/gdmStreams.js.map +1 -0
- package/dist/views/streams/spaceStreams.d.ts +17 -0
- package/dist/views/streams/spaceStreams.d.ts.map +1 -0
- package/dist/views/streams/spaceStreams.js +52 -0
- package/dist/views/streams/spaceStreams.js.map +1 -0
- package/dist/views/streams/streamStatus.d.ts +3 -2
- package/dist/views/streams/streamStatus.d.ts.map +1 -1
- package/dist/views/streams/streamStatus.js +11 -9
- package/dist/views/streams/streamStatus.js.map +1 -1
- package/dist/views/streams/unreadMarkersTransform.d.ts +1 -1
- package/dist/views/streams/unreadMarkersTransform.d.ts.map +1 -1
- package/dist/views/streams/unreadMarkersTransform.js +4 -0
- package/dist/views/streams/unreadMarkersTransform.js.map +1 -1
- package/dist/views/streams/userInboxStreams.d.ts +8 -0
- package/dist/views/streams/userInboxStreams.d.ts.map +1 -0
- package/dist/views/streams/userInboxStreams.js +11 -0
- package/dist/views/streams/userInboxStreams.js.map +1 -0
- package/dist/views/streams/userMetadataStreams.d.ts +8 -0
- package/dist/views/streams/userMetadataStreams.d.ts.map +1 -0
- package/dist/views/streams/userMetadataStreams.js +12 -0
- package/dist/views/streams/userMetadataStreams.js.map +1 -0
- package/dist/views/streams/userSettingsStreams.d.ts +6 -5
- package/dist/views/streams/userSettingsStreams.d.ts.map +1 -1
- package/dist/views/streams/userSettingsStreams.js +29 -17
- package/dist/views/streams/userSettingsStreams.js.map +1 -1
- package/dist/views/streams/userStreamsView.d.ts +26 -0
- package/dist/views/streams/userStreamsView.d.ts.map +1 -0
- package/dist/views/streams/userStreamsView.js +106 -0
- package/dist/views/streams/userStreamsView.js.map +1 -0
- package/dist/views/streamsView.d.ts +16 -2
- package/dist/views/streamsView.d.ts.map +1 -1
- package/dist/views/streamsView.js +28 -7
- package/dist/views/streamsView.js.map +1 -1
- package/package.json +9 -9
- package/dist/streamStateView_Common_ChannelMessages.d.ts +0 -15
- package/dist/streamStateView_Common_ChannelMessages.d.ts.map +0 -1
- package/dist/streamStateView_Common_ChannelMessages.js +0 -19
- package/dist/streamStateView_Common_ChannelMessages.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"userInboxStreams.js","sourceRoot":"","sources":["../../../src/views/streams/userInboxStreams.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAA;AAMpE,MAAM,OAAO,oBAAqB,SAAQ,gBAA8C;IACpF;QACI,KAAK,CAAC;YACF,WAAW,EAAE,CAAC,iBAAyB,EAAwB,EAAE,CAAC,CAAC;gBAC/D,QAAQ,EAAE,iBAAiB;aAC9B,CAAC;SACL,CAAC,CAAA;IACN,CAAC;CACJ"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ObservableRecord } from '../../observable/observableRecord';
|
|
2
|
+
export interface UserMetadataStreamModel {
|
|
3
|
+
streamId: string;
|
|
4
|
+
}
|
|
5
|
+
export declare class UserMetadataStreamsView extends ObservableRecord<string, UserMetadataStreamModel> {
|
|
6
|
+
constructor();
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=userMetadataStreams.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"userMetadataStreams.d.ts","sourceRoot":"","sources":["../../../src/views/streams/userMetadataStreams.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAA;AAEpE,MAAM,WAAW,uBAAuB;IACpC,QAAQ,EAAE,MAAM,CAAA;CACnB;AAGD,qBAAa,uBAAwB,SAAQ,gBAAgB,CAAC,MAAM,EAAE,uBAAuB,CAAC;;CAQ7F"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { ObservableRecord } from '../../observable/observableRecord';
|
|
2
|
+
/// stream metadata gets requested from the river.delivery server - at time of writing this is only for completeness
|
|
3
|
+
export class UserMetadataStreamsView extends ObservableRecord {
|
|
4
|
+
constructor() {
|
|
5
|
+
super({
|
|
6
|
+
makeDefault: (userMetadataStreamId) => ({
|
|
7
|
+
streamId: userMetadataStreamId,
|
|
8
|
+
}),
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=userMetadataStreams.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"userMetadataStreams.js","sourceRoot":"","sources":["../../../src/views/streams/userMetadataStreams.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAA;AAMpE,oHAAoH;AACpH,MAAM,OAAO,uBAAwB,SAAQ,gBAAiD;IAC1F;QACI,KAAK,CAAC;YACF,WAAW,EAAE,CAAC,oBAA4B,EAA2B,EAAE,CAAC,CAAC;gBACrE,QAAQ,EAAE,oBAAoB;aACjC,CAAC;SACL,CAAC,CAAA;IACN,CAAC;CACJ"}
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import { FullyReadMarker, UserSettingsPayload_Snapshot_UserBlocks, UserSettingsPayload_Snapshot_UserBlocks_Block } from '@towns-protocol/proto';
|
|
2
|
-
import {
|
|
2
|
+
import { ObservableRecord } from '../../observable/observableRecord';
|
|
3
3
|
export interface UserSettingsStreamModel {
|
|
4
|
+
streamId: string;
|
|
4
5
|
fullyReadMarkers: Record<string, Record<string, FullyReadMarker>>;
|
|
5
6
|
userBlocks: Record<string, UserSettingsPayload_Snapshot_UserBlocks>;
|
|
6
7
|
}
|
|
7
|
-
export declare class
|
|
8
|
+
export declare class UserSettingsStreamsView extends ObservableRecord<string, UserSettingsStreamModel> {
|
|
8
9
|
constructor();
|
|
9
|
-
setFullyReadMarkers(
|
|
10
|
-
setUserBlocks(
|
|
11
|
-
updateUserBlock(
|
|
10
|
+
setFullyReadMarkers(userSettingsStreamId: string, streamId: string, fullyReadMarkers: Record<string, FullyReadMarker>): void;
|
|
11
|
+
setUserBlocks(userSettingsStreamId: string, userId: string, userBlocks: UserSettingsPayload_Snapshot_UserBlocks): void;
|
|
12
|
+
updateUserBlock(userSettingsStreamId: string, userId: string, userBlock: UserSettingsPayload_Snapshot_UserBlocks_Block): void;
|
|
12
13
|
}
|
|
13
14
|
//# sourceMappingURL=userSettingsStreams.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"userSettingsStreams.d.ts","sourceRoot":"","sources":["../../../src/views/streams/userSettingsStreams.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,eAAe,EACf,uCAAuC,EACvC,6CAA6C,
|
|
1
|
+
{"version":3,"file":"userSettingsStreams.d.ts","sourceRoot":"","sources":["../../../src/views/streams/userSettingsStreams.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,eAAe,EACf,uCAAuC,EACvC,6CAA6C,EAEhD,MAAM,uBAAuB,CAAA;AAE9B,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAA;AAEpE,MAAM,WAAW,uBAAuB;IACpC,QAAQ,EAAE,MAAM,CAAA;IAChB,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CAAA;IACjE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,uCAAuC,CAAC,CAAA;CACtE;AAUD,qBAAa,uBAAwB,SAAQ,gBAAgB,CAAC,MAAM,EAAE,uBAAuB,CAAC;;IAW1F,mBAAmB,CACf,oBAAoB,EAAE,MAAM,EAC5B,QAAQ,EAAE,MAAM,EAChB,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GAClD,IAAI;IAaP,aAAa,CACT,oBAAoB,EAAE,MAAM,EAC5B,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,uCAAuC,GACpD,IAAI;IAaP,eAAe,CACX,oBAAoB,EAAE,MAAM,EAC5B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,6CAA6C,GACzD,IAAI;CAkBV"}
|
|
@@ -1,43 +1,55 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
1
|
+
import { UserSettingsPayload_Snapshot_UserBlocksSchema, } from '@towns-protocol/proto';
|
|
2
|
+
import { create } from '@bufbuild/protobuf';
|
|
3
|
+
import { ObservableRecord } from '../../observable/observableRecord';
|
|
4
|
+
const EMPTY_USER_BLOCKS = create(UserSettingsPayload_Snapshot_UserBlocksSchema, {
|
|
5
|
+
blocks: [],
|
|
6
|
+
userId: new Uint8Array(),
|
|
7
|
+
});
|
|
8
|
+
export class UserSettingsStreamsView extends ObservableRecord {
|
|
3
9
|
constructor() {
|
|
4
|
-
super({
|
|
10
|
+
super({
|
|
11
|
+
makeDefault: (userSettingsStreamId) => ({
|
|
12
|
+
streamId: userSettingsStreamId,
|
|
13
|
+
fullyReadMarkers: {},
|
|
14
|
+
userBlocks: {},
|
|
15
|
+
}),
|
|
16
|
+
});
|
|
5
17
|
}
|
|
6
|
-
setFullyReadMarkers(
|
|
18
|
+
setFullyReadMarkers(userSettingsStreamId, streamId, fullyReadMarkers) {
|
|
7
19
|
this.set((prev) => ({
|
|
8
20
|
...prev,
|
|
9
|
-
[
|
|
10
|
-
...prev[
|
|
21
|
+
[userSettingsStreamId]: {
|
|
22
|
+
...(prev[userSettingsStreamId] ?? this.makeDefault(userSettingsStreamId)),
|
|
11
23
|
fullyReadMarkers: {
|
|
12
|
-
...(prev[
|
|
24
|
+
...(prev[userSettingsStreamId]?.fullyReadMarkers ?? {}),
|
|
13
25
|
[streamId]: fullyReadMarkers,
|
|
14
26
|
},
|
|
15
27
|
},
|
|
16
28
|
}));
|
|
17
29
|
}
|
|
18
|
-
setUserBlocks(
|
|
30
|
+
setUserBlocks(userSettingsStreamId, userId, userBlocks) {
|
|
19
31
|
this.set((prev) => ({
|
|
20
32
|
...prev,
|
|
21
|
-
[
|
|
22
|
-
...prev[
|
|
33
|
+
[userSettingsStreamId]: {
|
|
34
|
+
...(prev[userSettingsStreamId] ?? this.makeDefault(userSettingsStreamId)),
|
|
23
35
|
userBlocks: {
|
|
24
|
-
...(prev[
|
|
36
|
+
...(prev[userSettingsStreamId]?.userBlocks ?? {}),
|
|
25
37
|
[userId]: userBlocks,
|
|
26
38
|
},
|
|
27
39
|
},
|
|
28
40
|
}));
|
|
29
41
|
}
|
|
30
|
-
updateUserBlock(
|
|
42
|
+
updateUserBlock(userSettingsStreamId, userId, userBlock) {
|
|
31
43
|
this.set((prev) => ({
|
|
32
44
|
...prev,
|
|
33
|
-
[
|
|
34
|
-
...prev[
|
|
45
|
+
[userSettingsStreamId]: {
|
|
46
|
+
...(prev[userSettingsStreamId] ?? this.makeDefault(userSettingsStreamId)),
|
|
35
47
|
userBlocks: {
|
|
36
|
-
...(prev[
|
|
48
|
+
...(prev[userSettingsStreamId]?.userBlocks ?? {}),
|
|
37
49
|
[userId]: {
|
|
38
|
-
...(prev[
|
|
50
|
+
...(prev[userSettingsStreamId]?.userBlocks[userId] ?? EMPTY_USER_BLOCKS),
|
|
39
51
|
blocks: [
|
|
40
|
-
...(prev[
|
|
52
|
+
...(prev[userSettingsStreamId]?.userBlocks[userId]?.blocks ?? []),
|
|
41
53
|
userBlock,
|
|
42
54
|
],
|
|
43
55
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"userSettingsStreams.js","sourceRoot":"","sources":["../../../src/views/streams/userSettingsStreams.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"userSettingsStreams.js","sourceRoot":"","sources":["../../../src/views/streams/userSettingsStreams.ts"],"names":[],"mappings":"AAAA,OAAO,EAIH,6CAA6C,GAChD,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAA;AAQpE,MAAM,iBAAiB,GAA4C,MAAM,CACrE,6CAA6C,EAC7C;IACI,MAAM,EAAE,EAAE;IACV,MAAM,EAAE,IAAI,UAAU,EAAE;CAC3B,CACJ,CAAA;AAED,MAAM,OAAO,uBAAwB,SAAQ,gBAAiD;IAC1F;QACI,KAAK,CAAC;YACF,WAAW,EAAE,CAAC,oBAA4B,EAA2B,EAAE,CAAC,CAAC;gBACrE,QAAQ,EAAE,oBAAoB;gBAC9B,gBAAgB,EAAE,EAAE;gBACpB,UAAU,EAAE,EAAE;aACjB,CAAC;SACL,CAAC,CAAA;IACN,CAAC;IAED,mBAAmB,CACf,oBAA4B,EAC5B,QAAgB,EAChB,gBAAiD;QAEjD,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAChB,GAAG,IAAI;YACP,CAAC,oBAAoB,CAAC,EAAE;gBACpB,GAAG,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC;gBACzE,gBAAgB,EAAE;oBACd,GAAG,CAAC,IAAI,CAAC,oBAAoB,CAAC,EAAE,gBAAgB,IAAI,EAAE,CAAC;oBACvD,CAAC,QAAQ,CAAC,EAAE,gBAAgB;iBAC/B;aACJ;SACJ,CAAC,CAAC,CAAA;IACP,CAAC;IAED,aAAa,CACT,oBAA4B,EAC5B,MAAc,EACd,UAAmD;QAEnD,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAChB,GAAG,IAAI;YACP,CAAC,oBAAoB,CAAC,EAAE;gBACpB,GAAG,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC;gBACzE,UAAU,EAAE;oBACR,GAAG,CAAC,IAAI,CAAC,oBAAoB,CAAC,EAAE,UAAU,IAAI,EAAE,CAAC;oBACjD,CAAC,MAAM,CAAC,EAAE,UAAU;iBACvB;aACJ;SACJ,CAAC,CAAC,CAAA;IACP,CAAC;IAED,eAAe,CACX,oBAA4B,EAC5B,MAAc,EACd,SAAwD;QAExD,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAChB,GAAG,IAAI;YACP,CAAC,oBAAoB,CAAC,EAAE;gBACpB,GAAG,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC;gBACzE,UAAU,EAAE;oBACR,GAAG,CAAC,IAAI,CAAC,oBAAoB,CAAC,EAAE,UAAU,IAAI,EAAE,CAAC;oBACjD,CAAC,MAAM,CAAC,EAAE;wBACN,GAAG,CAAC,IAAI,CAAC,oBAAoB,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI,iBAAiB,CAAC;wBACxE,MAAM,EAAE;4BACJ,GAAG,CAAC,IAAI,CAAC,oBAAoB,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,IAAI,EAAE,CAAC;4BACjE,SAAS;yBACZ;qBACJ;iBACJ;aACJ;SACJ,CAAC,CAAC,CAAA;IACP,CAAC;CACJ"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { BlockchainTransaction_TokenTransfer, UserPayload_UserMembership } from '@towns-protocol/proto';
|
|
2
|
+
import { ObservableRecord } from '../../observable/observableRecord';
|
|
3
|
+
export interface UserStreamModel {
|
|
4
|
+
streamId: string;
|
|
5
|
+
streamMemberships: Record<string, UserPayload_UserMembership | undefined>;
|
|
6
|
+
tipsSent: Record<string, bigint | undefined>;
|
|
7
|
+
tipsReceived: Record<string, bigint | undefined>;
|
|
8
|
+
tipsSentCount: Record<string, bigint | undefined>;
|
|
9
|
+
tipsReceivedCount: Record<string, bigint | undefined>;
|
|
10
|
+
tokenTransfers: BlockchainTransaction_TokenTransfer[];
|
|
11
|
+
}
|
|
12
|
+
export declare class UserStreamsView extends ObservableRecord<string, UserStreamModel> {
|
|
13
|
+
constructor();
|
|
14
|
+
setMembership(userStreamId: string, streamId: string, membership: UserPayload_UserMembership): void;
|
|
15
|
+
setTips(userStreamId: string, tips: {
|
|
16
|
+
tipsSent: Record<string, bigint>;
|
|
17
|
+
tipsReceived: Record<string, bigint>;
|
|
18
|
+
tipsSentCount: Record<string, bigint>;
|
|
19
|
+
tipsReceivedCount: Record<string, bigint>;
|
|
20
|
+
}): void;
|
|
21
|
+
prependTokenTransfer(userStreamId: string, tokenTransfer: BlockchainTransaction_TokenTransfer): void;
|
|
22
|
+
appendTokenTransfer(userStreamId: string, tokenTransfer: BlockchainTransaction_TokenTransfer): void;
|
|
23
|
+
appendTipSent(userStreamId: string, currency: string, amount: bigint): void;
|
|
24
|
+
appendTipReceived(userStreamId: string, currency: string, amount: bigint): void;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=userStreamsView.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"userStreamsView.d.ts","sourceRoot":"","sources":["../../../src/views/streams/userStreamsView.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,mCAAmC,EACnC,0BAA0B,EAC7B,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAA;AAEpE,MAAM,WAAW,eAAe;IAC5B,QAAQ,EAAE,MAAM,CAAA;IAChB,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,0BAA0B,GAAG,SAAS,CAAC,CAAA;IACzE,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAA;IAC5C,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAA;IAChD,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAA;IACjD,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAA;IACrD,cAAc,EAAE,mCAAmC,EAAE,CAAA;CACxD;AAED,qBAAa,eAAgB,SAAQ,gBAAgB,CAAC,MAAM,EAAE,eAAe,CAAC;;IAe1E,aAAa,CAAC,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,0BAA0B;IAgB5F,OAAO,CACH,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE;QACF,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QAChC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QACpC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QACrC,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAC5C;IAcL,oBAAoB,CAAC,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,mCAAmC;IAa7F,mBAAmB,CAAC,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,mCAAmC;IAa5F,aAAa,CAAC,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAoBpE,iBAAiB,CAAC,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;CAmB3E"}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
import { ObservableRecord } from '../../observable/observableRecord';
|
|
2
|
+
export class UserStreamsView extends ObservableRecord {
|
|
3
|
+
constructor() {
|
|
4
|
+
super({
|
|
5
|
+
makeDefault: (userStreamId) => ({
|
|
6
|
+
streamId: userStreamId,
|
|
7
|
+
streamMemberships: {},
|
|
8
|
+
tipsSent: {},
|
|
9
|
+
tipsReceived: {},
|
|
10
|
+
tipsSentCount: {},
|
|
11
|
+
tipsReceivedCount: {},
|
|
12
|
+
tokenTransfers: [],
|
|
13
|
+
}),
|
|
14
|
+
});
|
|
15
|
+
}
|
|
16
|
+
setMembership(userStreamId, streamId, membership) {
|
|
17
|
+
this.set((prev) => {
|
|
18
|
+
const prevStream = prev[userStreamId] ?? this.makeDefault(userStreamId);
|
|
19
|
+
return {
|
|
20
|
+
...prev,
|
|
21
|
+
[userStreamId]: {
|
|
22
|
+
...prevStream,
|
|
23
|
+
streamMemberships: {
|
|
24
|
+
...prevStream.streamMemberships,
|
|
25
|
+
[streamId]: membership,
|
|
26
|
+
},
|
|
27
|
+
},
|
|
28
|
+
};
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
setTips(userStreamId, tips) {
|
|
32
|
+
this.set((prev) => {
|
|
33
|
+
const prevStream = prev[userStreamId] ?? this.makeDefault(userStreamId);
|
|
34
|
+
return {
|
|
35
|
+
...prev,
|
|
36
|
+
[userStreamId]: {
|
|
37
|
+
...prevStream,
|
|
38
|
+
...tips,
|
|
39
|
+
},
|
|
40
|
+
};
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
prependTokenTransfer(userStreamId, tokenTransfer) {
|
|
44
|
+
this.set((prev) => {
|
|
45
|
+
const prevStream = prev[userStreamId] ?? this.makeDefault(userStreamId);
|
|
46
|
+
return {
|
|
47
|
+
...prev,
|
|
48
|
+
[userStreamId]: {
|
|
49
|
+
...prevStream,
|
|
50
|
+
tokenTransfers: [tokenTransfer, ...prevStream.tokenTransfers],
|
|
51
|
+
},
|
|
52
|
+
};
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
appendTokenTransfer(userStreamId, tokenTransfer) {
|
|
56
|
+
this.set((prev) => {
|
|
57
|
+
const prevStream = prev[userStreamId] ?? this.makeDefault(userStreamId);
|
|
58
|
+
return {
|
|
59
|
+
...prev,
|
|
60
|
+
[userStreamId]: {
|
|
61
|
+
...prevStream,
|
|
62
|
+
tokenTransfers: [...prevStream.tokenTransfers, tokenTransfer],
|
|
63
|
+
},
|
|
64
|
+
};
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
appendTipSent(userStreamId, currency, amount) {
|
|
68
|
+
this.set((prev) => {
|
|
69
|
+
const prevStream = prev[userStreamId] ?? this.makeDefault(userStreamId);
|
|
70
|
+
return {
|
|
71
|
+
...prev,
|
|
72
|
+
[userStreamId]: {
|
|
73
|
+
...prevStream,
|
|
74
|
+
tipsSent: {
|
|
75
|
+
...prevStream.tipsSent,
|
|
76
|
+
[currency]: (prevStream.tipsSent[currency] ?? 0n) + amount,
|
|
77
|
+
},
|
|
78
|
+
tipsSentCount: {
|
|
79
|
+
...prevStream.tipsSentCount,
|
|
80
|
+
[currency]: (prevStream.tipsSentCount[currency] ?? 0n) + 1n,
|
|
81
|
+
},
|
|
82
|
+
},
|
|
83
|
+
};
|
|
84
|
+
});
|
|
85
|
+
}
|
|
86
|
+
appendTipReceived(userStreamId, currency, amount) {
|
|
87
|
+
this.set((prev) => {
|
|
88
|
+
const prevStream = prev[userStreamId] ?? this.makeDefault(userStreamId);
|
|
89
|
+
return {
|
|
90
|
+
...prev,
|
|
91
|
+
[userStreamId]: {
|
|
92
|
+
...prevStream,
|
|
93
|
+
tipsReceived: {
|
|
94
|
+
...prevStream.tipsReceived,
|
|
95
|
+
[currency]: (prevStream.tipsReceived[currency] ?? 0n) + amount,
|
|
96
|
+
},
|
|
97
|
+
tipsReceivedCount: {
|
|
98
|
+
...prevStream.tipsReceivedCount,
|
|
99
|
+
[currency]: (prevStream.tipsReceivedCount[currency] ?? 0n) + 1n,
|
|
100
|
+
},
|
|
101
|
+
},
|
|
102
|
+
};
|
|
103
|
+
});
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
//# sourceMappingURL=userStreamsView.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"userStreamsView.js","sourceRoot":"","sources":["../../../src/views/streams/userStreamsView.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +1,28 @@
|
|
|
1
1
|
import { Observable } from '../observable/observable';
|
|
2
2
|
import { StreamStatus } from './streams/streamStatus';
|
|
3
3
|
import { TimelinesView, TimelinesViewDelegate } from './streams/timelines';
|
|
4
|
-
import {
|
|
4
|
+
import { UserSettingsStreamsView } from './streams/userSettingsStreams';
|
|
5
5
|
import { UnreadMarkersModel } from './streams/unreadMarkersTransform';
|
|
6
6
|
import { MentionsModel } from './streams/spaceMentionsTransform';
|
|
7
|
+
import { SpaceStreamsView } from './streams/spaceStreams';
|
|
8
|
+
import { UserStreamsView } from './streams/userStreamsView';
|
|
9
|
+
import { UserMetadataStreamsView } from './streams/userMetadataStreams';
|
|
10
|
+
import { UserInboxStreamsView } from './streams/userInboxStreams';
|
|
11
|
+
import { ChannelStreamsView } from './streams/channelStreams';
|
|
12
|
+
import { DmStreamsView } from './streams/dmStreams';
|
|
13
|
+
import { GdmStreamsView } from './streams/gdmStreams';
|
|
7
14
|
export type StreamsViewDelegate = TimelinesViewDelegate;
|
|
8
15
|
export declare class StreamsView {
|
|
9
16
|
readonly streamStatus: StreamStatus;
|
|
17
|
+
readonly spaceStreams: SpaceStreamsView;
|
|
18
|
+
readonly channelStreams: ChannelStreamsView;
|
|
19
|
+
readonly dmStreams: DmStreamsView;
|
|
20
|
+
readonly gdmStreams: GdmStreamsView;
|
|
21
|
+
readonly userStreams: UserStreamsView;
|
|
22
|
+
readonly userInboxStreams: UserInboxStreamsView;
|
|
23
|
+
readonly userMetadataStreams: UserMetadataStreamsView;
|
|
24
|
+
readonly userSettingsStreams: UserSettingsStreamsView;
|
|
10
25
|
readonly timelinesView: TimelinesView;
|
|
11
|
-
readonly userSettingsStreams: UserSettingsStreams;
|
|
12
26
|
readonly my: {
|
|
13
27
|
unreadMarkers: Observable<UnreadMarkersModel>;
|
|
14
28
|
spaceMentions: Observable<MentionsModel>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"streamsView.d.ts","sourceRoot":"","sources":["../../src/views/streamsView.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AACrD,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAE1E,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"streamsView.d.ts","sourceRoot":"","sources":["../../src/views/streamsView.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AACrD,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAE1E,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAA;AACvE,OAAO,EAAE,kBAAkB,EAA0B,MAAM,kCAAkC,CAAA;AAC7F,OAAO,EAAE,aAAa,EAA0B,MAAM,kCAAkC,CAAA;AACxF,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAC3D,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAA;AACvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAA;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAErD,MAAM,MAAM,mBAAmB,GAAG,qBAAqB,CAAA;AAGvD,qBAAa,WAAW;IACpB,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAA;IACnC,QAAQ,CAAC,YAAY,EAAE,gBAAgB,CAAA;IACvC,QAAQ,CAAC,cAAc,EAAE,kBAAkB,CAAA;IAC3C,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAA;IACjC,QAAQ,CAAC,UAAU,EAAE,cAAc,CAAA;IACnC,QAAQ,CAAC,WAAW,EAAE,eAAe,CAAA;IACrC,QAAQ,CAAC,gBAAgB,EAAE,oBAAoB,CAAA;IAC/C,QAAQ,CAAC,mBAAmB,EAAE,uBAAuB,CAAA;IACrD,QAAQ,CAAC,mBAAmB,EAAE,uBAAuB,CAAA;IACrD,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAA;IACrC,QAAQ,CAAC,EAAE,EAAE;QACT,aAAa,EAAE,UAAU,CAAC,kBAAkB,CAAC,CAAA;QAC7C,aAAa,EAAE,UAAU,CAAC,aAAa,CAAC,CAAA;KAC3C,CAAA;gBAEW,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,mBAAmB,GAAG,SAAS;CAyCxE"}
|
|
@@ -1,32 +1,53 @@
|
|
|
1
1
|
import { Observable } from '../observable/observable';
|
|
2
|
-
import {
|
|
2
|
+
import { combine } from '../observable/combine';
|
|
3
3
|
import { StreamStatus } from './streams/streamStatus';
|
|
4
4
|
import { TimelinesView } from './streams/timelines';
|
|
5
5
|
import { makeUserSettingsStreamId } from '../id';
|
|
6
|
-
import {
|
|
6
|
+
import { UserSettingsStreamsView } from './streams/userSettingsStreams';
|
|
7
7
|
import { unreadMarkersTransform } from './streams/unreadMarkersTransform';
|
|
8
8
|
import { spaceMentionsTransform } from './streams/spaceMentionsTransform';
|
|
9
|
+
import { SpaceStreamsView } from './streams/spaceStreams';
|
|
10
|
+
import { UserStreamsView } from './streams/userStreamsView';
|
|
11
|
+
import { UserMetadataStreamsView } from './streams/userMetadataStreams';
|
|
12
|
+
import { UserInboxStreamsView } from './streams/userInboxStreams';
|
|
13
|
+
import { ChannelStreamsView } from './streams/channelStreams';
|
|
14
|
+
import { DmStreamsView } from './streams/dmStreams';
|
|
15
|
+
import { GdmStreamsView } from './streams/gdmStreams';
|
|
9
16
|
// a view of all the streams
|
|
10
17
|
export class StreamsView {
|
|
11
18
|
streamStatus;
|
|
12
|
-
|
|
19
|
+
spaceStreams;
|
|
20
|
+
channelStreams;
|
|
21
|
+
dmStreams;
|
|
22
|
+
gdmStreams;
|
|
23
|
+
userStreams;
|
|
24
|
+
userInboxStreams;
|
|
25
|
+
userMetadataStreams;
|
|
13
26
|
userSettingsStreams;
|
|
27
|
+
timelinesView;
|
|
14
28
|
my;
|
|
15
29
|
constructor(userId, delegate) {
|
|
16
30
|
const userSettingsStreamId = userId !== '' ? makeUserSettingsStreamId(userId) : '';
|
|
17
|
-
this.
|
|
18
|
-
this.
|
|
31
|
+
this.userSettingsStreams = new UserSettingsStreamsView();
|
|
32
|
+
this.spaceStreams = new SpaceStreamsView();
|
|
33
|
+
this.channelStreams = new ChannelStreamsView();
|
|
34
|
+
this.dmStreams = new DmStreamsView();
|
|
35
|
+
this.gdmStreams = new GdmStreamsView();
|
|
19
36
|
this.streamStatus = new StreamStatus();
|
|
37
|
+
this.userStreams = new UserStreamsView();
|
|
38
|
+
this.userMetadataStreams = new UserMetadataStreamsView();
|
|
39
|
+
this.userInboxStreams = new UserInboxStreamsView();
|
|
40
|
+
this.timelinesView = new TimelinesView(userId, delegate);
|
|
20
41
|
const throttledTimelinesView = this.timelinesView.throttle(15);
|
|
21
42
|
const myRemoteFullyReadMarkers = this.userSettingsStreams.map((x) => x[userSettingsStreamId]?.fullyReadMarkers ?? {});
|
|
22
|
-
const unreadMarkers =
|
|
43
|
+
const unreadMarkers = combine({
|
|
23
44
|
userId: new Observable(userId),
|
|
24
45
|
myRemoteFullyReadMarkers: myRemoteFullyReadMarkers.throttle(10),
|
|
25
46
|
timelinesView: throttledTimelinesView,
|
|
26
47
|
})
|
|
27
48
|
.throttle(250)
|
|
28
49
|
.map(unreadMarkersTransform);
|
|
29
|
-
const spaceMentions =
|
|
50
|
+
const spaceMentions = combine({
|
|
30
51
|
timelinesView: throttledTimelinesView,
|
|
31
52
|
fullyReadMarkers: unreadMarkers,
|
|
32
53
|
})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"streamsView.js","sourceRoot":"","sources":["../../src/views/streamsView.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AACrD,OAAO,EAAE,aAAa,EAAyB,MAAM,qBAAqB,CAAA;AAC1E,OAAO,EAAE,wBAAwB,EAAE,MAAM,OAAO,CAAA;AAChD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"streamsView.js","sourceRoot":"","sources":["../../src/views/streamsView.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@towns-protocol/sdk",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.253",
|
|
4
4
|
"packageManager": "yarn@3.8.0",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -30,13 +30,13 @@
|
|
|
30
30
|
"@ethereumjs/util": "^10.0.0",
|
|
31
31
|
"@noble/curves": "^1.9.1",
|
|
32
32
|
"@noble/hashes": "^1.8.0",
|
|
33
|
-
"@towns-protocol/dlog": "^0.0.
|
|
34
|
-
"@towns-protocol/encryption": "^0.0.
|
|
35
|
-
"@towns-protocol/generated": "^0.0.
|
|
36
|
-
"@towns-protocol/proto": "^0.0.
|
|
37
|
-
"@towns-protocol/rpc-connector": "^0.0.
|
|
38
|
-
"@towns-protocol/sdk-crypto": "^0.0.
|
|
39
|
-
"@towns-protocol/web3": "^0.0.
|
|
33
|
+
"@towns-protocol/dlog": "^0.0.253",
|
|
34
|
+
"@towns-protocol/encryption": "^0.0.253",
|
|
35
|
+
"@towns-protocol/generated": "^0.0.253",
|
|
36
|
+
"@towns-protocol/proto": "^0.0.253",
|
|
37
|
+
"@towns-protocol/rpc-connector": "^0.0.253",
|
|
38
|
+
"@towns-protocol/sdk-crypto": "^0.0.253",
|
|
39
|
+
"@towns-protocol/web3": "^0.0.253",
|
|
40
40
|
"browser-or-node": "^3.0.0",
|
|
41
41
|
"debug": "^4.3.4",
|
|
42
42
|
"dexie": "^4.0.7",
|
|
@@ -72,5 +72,5 @@
|
|
|
72
72
|
"files": [
|
|
73
73
|
"/dist"
|
|
74
74
|
],
|
|
75
|
-
"gitHead": "
|
|
75
|
+
"gitHead": "5b687cbd26af3cdf380c3e909c49b0fb4352cd7c"
|
|
76
76
|
}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import TypedEmitter from 'typed-emitter';
|
|
2
|
-
import { StreamEncryptionEvents, StreamStateEvents } from './streamEvents';
|
|
3
|
-
import { StreamStateView_AbstractContent } from './streamStateView_AbstractContent';
|
|
4
|
-
import { RemoteTimelineEvent } from './types';
|
|
5
|
-
import { EncryptedData } from '@towns-protocol/proto';
|
|
6
|
-
import { DecryptedContent } from './encryptedContentTypes';
|
|
7
|
-
export declare class StreamStateView_ChannelMessages {
|
|
8
|
-
readonly streamId: string;
|
|
9
|
-
private readonly parent;
|
|
10
|
-
constructor(streamId: string, parent: StreamStateView_AbstractContent);
|
|
11
|
-
onDecryptedContent(_eventId: string, _content: DecryptedContent, _stateEmitter: TypedEmitter<StreamStateEvents> | undefined): void;
|
|
12
|
-
appendChannelMessage(event: RemoteTimelineEvent, cleartext: Uint8Array | string | undefined, encryptionEmitter: TypedEmitter<StreamEncryptionEvents> | undefined, stateEmitter: TypedEmitter<StreamStateEvents> | undefined, value: EncryptedData): void;
|
|
13
|
-
prependChannelMessage(event: RemoteTimelineEvent, cleartext: Uint8Array | string | undefined, encryptionEmitter: TypedEmitter<StreamEncryptionEvents> | undefined, stateEmitter: TypedEmitter<StreamStateEvents> | undefined, value: EncryptedData): void;
|
|
14
|
-
}
|
|
15
|
-
//# sourceMappingURL=streamStateView_Common_ChannelMessages.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"streamStateView_Common_ChannelMessages.d.ts","sourceRoot":"","sources":["../src/streamStateView_Common_ChannelMessages.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAC1E,OAAO,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAA;AACnF,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAG1D,qBAAa,+BAA+B;aAEpB,QAAQ,EAAE,MAAM;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM;gBADP,QAAQ,EAAE,MAAM,EACf,MAAM,EAAE,+BAA+B;IAG5D,kBAAkB,CACd,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,gBAAgB,EAC1B,aAAa,EAAE,YAAY,CAAC,iBAAiB,CAAC,GAAG,SAAS,GAC3D,IAAI;IAIP,oBAAoB,CAChB,KAAK,EAAE,mBAAmB,EAC1B,SAAS,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,EAC1C,iBAAiB,EAAE,YAAY,CAAC,sBAAsB,CAAC,GAAG,SAAS,EACnE,YAAY,EAAE,YAAY,CAAC,iBAAiB,CAAC,GAAG,SAAS,EACzD,KAAK,EAAE,aAAa,GACrB,IAAI;IAIP,qBAAqB,CACjB,KAAK,EAAE,mBAAmB,EAC1B,SAAS,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,EAC1C,iBAAiB,EAAE,YAAY,CAAC,sBAAsB,CAAC,GAAG,SAAS,EACnE,YAAY,EAAE,YAAY,CAAC,iBAAiB,CAAC,GAAG,SAAS,EACzD,KAAK,EAAE,aAAa,GACrB,IAAI;CAGV"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
/// place to hold common logic for decrypting "ChannelMessage" payloads
|
|
2
|
-
export class StreamStateView_ChannelMessages {
|
|
3
|
-
streamId;
|
|
4
|
-
parent;
|
|
5
|
-
constructor(streamId, parent) {
|
|
6
|
-
this.streamId = streamId;
|
|
7
|
-
this.parent = parent;
|
|
8
|
-
}
|
|
9
|
-
onDecryptedContent(_eventId, _content, _stateEmitter) {
|
|
10
|
-
// pass
|
|
11
|
-
}
|
|
12
|
-
appendChannelMessage(event, cleartext, encryptionEmitter, stateEmitter, value) {
|
|
13
|
-
this.parent.decryptEvent('channelMessage', event, value, cleartext, encryptionEmitter);
|
|
14
|
-
}
|
|
15
|
-
prependChannelMessage(event, cleartext, encryptionEmitter, stateEmitter, value) {
|
|
16
|
-
this.parent.decryptEvent('channelMessage', event, value, cleartext, encryptionEmitter);
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
//# sourceMappingURL=streamStateView_Common_ChannelMessages.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"streamStateView_Common_ChannelMessages.js","sourceRoot":"","sources":["../src/streamStateView_Common_ChannelMessages.ts"],"names":[],"mappings":"AAOA,uEAAuE;AACvE,MAAM,OAAO,+BAA+B;IAEpB;IACC;IAFrB,YACoB,QAAgB,EACf,MAAuC;QADxC,aAAQ,GAAR,QAAQ,CAAQ;QACf,WAAM,GAAN,MAAM,CAAiC;IACzD,CAAC;IAEJ,kBAAkB,CACd,QAAgB,EAChB,QAA0B,EAC1B,aAA0D;QAE1D,OAAO;IACX,CAAC;IAED,oBAAoB,CAChB,KAA0B,EAC1B,SAA0C,EAC1C,iBAAmE,EACnE,YAAyD,EACzD,KAAoB;QAEpB,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,gBAAgB,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,iBAAiB,CAAC,CAAA;IAC1F,CAAC;IAED,qBAAqB,CACjB,KAA0B,EAC1B,SAA0C,EAC1C,iBAAmE,EACnE,YAAyD,EACzD,KAAoB;QAEpB,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,gBAAgB,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,iBAAiB,CAAC,CAAA;IAC1F,CAAC;CACJ"}
|