@towns-protocol/sdk 0.0.252 → 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.
Files changed (105) hide show
  1. package/dist/client.d.ts.map +1 -1
  2. package/dist/client.js +4 -4
  3. package/dist/client.js.map +1 -1
  4. package/dist/index.d.ts +20 -5
  5. package/dist/index.d.ts.map +1 -1
  6. package/dist/index.js +20 -5
  7. package/dist/index.js.map +1 -1
  8. package/dist/observable/combine.d.ts +4 -2
  9. package/dist/observable/combine.d.ts.map +1 -1
  10. package/dist/observable/combine.js +5 -2
  11. package/dist/observable/combine.js.map +1 -1
  12. package/dist/observable/observableRecord.d.ts +18 -0
  13. package/dist/observable/observableRecord.d.ts.map +1 -0
  14. package/dist/observable/observableRecord.js +71 -0
  15. package/dist/observable/observableRecord.js.map +1 -0
  16. package/dist/streamStateView.d.ts.map +1 -1
  17. package/dist/streamStateView.js +8 -8
  18. package/dist/streamStateView.js.map +1 -1
  19. package/dist/streamStateView_DMChannel.d.ts +7 -4
  20. package/dist/streamStateView_DMChannel.d.ts.map +1 -1
  21. package/dist/streamStateView_DMChannel.js +18 -8
  22. package/dist/streamStateView_DMChannel.js.map +1 -1
  23. package/dist/streamStateView_GDMChannel.d.ts +5 -2
  24. package/dist/streamStateView_GDMChannel.d.ts.map +1 -1
  25. package/dist/streamStateView_GDMChannel.js +11 -4
  26. package/dist/streamStateView_GDMChannel.js.map +1 -1
  27. package/dist/streamStateView_Space.d.ts +5 -8
  28. package/dist/streamStateView_Space.d.ts.map +1 -1
  29. package/dist/streamStateView_Space.js +26 -23
  30. package/dist/streamStateView_Space.js.map +1 -1
  31. package/dist/streamStateView_User.d.ts +11 -18
  32. package/dist/streamStateView_User.d.ts.map +1 -1
  33. package/dist/streamStateView_User.js +35 -20
  34. package/dist/streamStateView_User.js.map +1 -1
  35. package/dist/streamStateView_UserInbox.d.ts +4 -1
  36. package/dist/streamStateView_UserInbox.d.ts.map +1 -1
  37. package/dist/streamStateView_UserInbox.js +6 -1
  38. package/dist/streamStateView_UserInbox.js.map +1 -1
  39. package/dist/streamStateView_UserMetadata.d.ts +4 -1
  40. package/dist/streamStateView_UserMetadata.d.ts.map +1 -1
  41. package/dist/streamStateView_UserMetadata.js +6 -1
  42. package/dist/streamStateView_UserMetadata.js.map +1 -1
  43. package/dist/streamStateView_UserSettings.d.ts +4 -3
  44. package/dist/streamStateView_UserSettings.d.ts.map +1 -1
  45. package/dist/streamStateView_UserSettings.js +11 -12
  46. package/dist/streamStateView_UserSettings.js.map +1 -1
  47. package/dist/sync-agent/spaces/models/space.js +1 -1
  48. package/dist/sync-agent/spaces/models/space.js.map +1 -1
  49. package/dist/sync-agent/user/models/userMemberships.d.ts.map +1 -1
  50. package/dist/sync-agent/user/models/userMemberships.js +3 -1
  51. package/dist/sync-agent/user/models/userMemberships.js.map +1 -1
  52. package/dist/syncedStream.js +1 -1
  53. package/dist/syncedStream.js.map +1 -1
  54. package/dist/tests/multi/channelSpaceSettings.test.js +23 -23
  55. package/dist/tests/multi/channelSpaceSettings.test.js.map +1 -1
  56. package/dist/tests/multi_ne/space.test.js +5 -7
  57. package/dist/tests/multi_ne/space.test.js.map +1 -1
  58. package/dist/tests/multi_ne/streamStateView_User.test.js +3 -3
  59. package/dist/tests/multi_ne/streamStateView_User.test.js.map +1 -1
  60. package/dist/tests/unit/observable/combine.test.js +23 -23
  61. package/dist/tests/unit/observable/combine.test.js.map +1 -1
  62. package/dist/views/streams/channelStreams.d.ts +8 -0
  63. package/dist/views/streams/channelStreams.d.ts.map +1 -0
  64. package/dist/views/streams/channelStreams.js +9 -0
  65. package/dist/views/streams/channelStreams.js.map +1 -0
  66. package/dist/views/streams/dmStreams.d.ts +13 -0
  67. package/dist/views/streams/dmStreams.d.ts.map +1 -0
  68. package/dist/views/streams/dmStreams.js +33 -0
  69. package/dist/views/streams/dmStreams.js.map +1 -0
  70. package/dist/views/streams/gdmStreams.d.ts +10 -0
  71. package/dist/views/streams/gdmStreams.d.ts.map +1 -0
  72. package/dist/views/streams/gdmStreams.js +21 -0
  73. package/dist/views/streams/gdmStreams.js.map +1 -0
  74. package/dist/views/streams/spaceStreams.d.ts +17 -0
  75. package/dist/views/streams/spaceStreams.d.ts.map +1 -0
  76. package/dist/views/streams/spaceStreams.js +52 -0
  77. package/dist/views/streams/spaceStreams.js.map +1 -0
  78. package/dist/views/streams/streamStatus.d.ts +3 -2
  79. package/dist/views/streams/streamStatus.d.ts.map +1 -1
  80. package/dist/views/streams/streamStatus.js +11 -9
  81. package/dist/views/streams/streamStatus.js.map +1 -1
  82. package/dist/views/streams/unreadMarkersTransform.d.ts +1 -1
  83. package/dist/views/streams/unreadMarkersTransform.d.ts.map +1 -1
  84. package/dist/views/streams/unreadMarkersTransform.js.map +1 -1
  85. package/dist/views/streams/userInboxStreams.d.ts +8 -0
  86. package/dist/views/streams/userInboxStreams.d.ts.map +1 -0
  87. package/dist/views/streams/userInboxStreams.js +11 -0
  88. package/dist/views/streams/userInboxStreams.js.map +1 -0
  89. package/dist/views/streams/userMetadataStreams.d.ts +8 -0
  90. package/dist/views/streams/userMetadataStreams.d.ts.map +1 -0
  91. package/dist/views/streams/userMetadataStreams.js +12 -0
  92. package/dist/views/streams/userMetadataStreams.js.map +1 -0
  93. package/dist/views/streams/userSettingsStreams.d.ts +6 -5
  94. package/dist/views/streams/userSettingsStreams.d.ts.map +1 -1
  95. package/dist/views/streams/userSettingsStreams.js +29 -17
  96. package/dist/views/streams/userSettingsStreams.js.map +1 -1
  97. package/dist/views/streams/userStreamsView.d.ts +26 -0
  98. package/dist/views/streams/userStreamsView.d.ts.map +1 -0
  99. package/dist/views/streams/userStreamsView.js +106 -0
  100. package/dist/views/streams/userStreamsView.js.map +1 -0
  101. package/dist/views/streamsView.d.ts +16 -2
  102. package/dist/views/streamsView.d.ts.map +1 -1
  103. package/dist/views/streamsView.js +28 -7
  104. package/dist/views/streamsView.js.map +1 -1
  105. package/package.json +9 -9
@@ -1,19 +1,26 @@
1
1
  import { ChannelOp, Err, ChunkedMediaSchema, } from '@towns-protocol/proto';
2
2
  import { StreamStateView_AbstractContent } from './streamStateView_AbstractContent';
3
3
  import { check, throwWithCode } from '@towns-protocol/dlog';
4
- import { logNever } from './check';
4
+ import { isDefined, logNever } from './check';
5
5
  import { contractAddressFromSpaceId, isDefaultChannelId, streamIdAsString } from './id';
6
6
  import { fromBinary } from '@bufbuild/protobuf';
7
7
  import { decryptDerivedAESGCM } from '@towns-protocol/sdk-crypto';
8
8
  import { bytesToHex } from 'ethereum-cryptography/utils';
9
9
  export class StreamStateView_Space extends StreamStateView_AbstractContent {
10
+ spacesView;
10
11
  streamId;
11
- spaceChannelsMetadata = new Map();
12
+ get spaceChannelsMetadata() {
13
+ return this.spaceStreamModel.channelsMetadata;
14
+ }
12
15
  spaceImage;
13
16
  encryptedSpaceImage;
14
17
  decryptionInProgress;
15
- constructor(streamId) {
18
+ get spaceStreamModel() {
19
+ return this.spacesView.get(this.streamId);
20
+ }
21
+ constructor(streamId, spacesView) {
16
22
  super();
23
+ this.spacesView = spacesView;
17
24
  this.streamId = streamId;
18
25
  }
19
26
  applySnapshot(_snapshot, content, _cleartexts, _encryptionEmitter) {
@@ -119,25 +126,13 @@ export class StreamStateView_Space extends StreamStateView_AbstractContent {
119
126
  addSpacePayload_UpdateChannelAutojoin(payload, stateEmitter) {
120
127
  const { channelId: channelIdBytes, autojoin } = payload;
121
128
  const channelId = streamIdAsString(channelIdBytes);
122
- const channel = this.spaceChannelsMetadata.get(channelId);
123
- if (!channel) {
124
- throwWithCode(`Channel not found: ${channelId}`, Err.STREAM_BAD_EVENT);
125
- }
126
- this.spaceChannelsMetadata.set(channelId, {
127
- ...channel,
128
- isAutojoin: autojoin,
129
- });
129
+ this.spacesView.updateChannelMetadata(this.streamId, channelId, { isAutojoin: autojoin });
130
130
  stateEmitter?.emit('spaceChannelAutojoinUpdated', this.streamId, channelId, autojoin);
131
131
  }
132
132
  addSpacePayload_UpdateChannelHideUserJoinLeaveEvents(payload, stateEmitter) {
133
133
  const { channelId: channelIdBytes, hideUserJoinLeaveEvents } = payload;
134
134
  const channelId = streamIdAsString(channelIdBytes);
135
- const channel = this.spaceChannelsMetadata.get(channelId);
136
- if (!channel) {
137
- throwWithCode(`Channel not found: ${channelId}`, Err.STREAM_BAD_EVENT);
138
- }
139
- this.spaceChannelsMetadata.set(channelId, {
140
- ...channel,
135
+ this.spacesView.updateChannelMetadata(this.streamId, channelId, {
141
136
  hideUserJoinLeaveEvents,
142
137
  });
143
138
  stateEmitter?.emit('spaceChannelHideUserJoinLeaveEventsUpdated', this.streamId, channelId, hideUserJoinLeaveEvents);
@@ -150,7 +145,7 @@ export class StreamStateView_Space extends StreamStateView_AbstractContent {
150
145
  const isDefault = isDefaultChannelId(channelId);
151
146
  const isAutojoin = payload.settings?.autojoin ?? isDefault;
152
147
  const hideUserJoinLeaveEvents = payload.settings?.hideUserJoinLeaveEvents ?? false;
153
- this.spaceChannelsMetadata.set(channelId, {
148
+ this.spacesView.updateChannelMetadata(this.streamId, channelId, {
154
149
  isDefault,
155
150
  updatedAtEventNum,
156
151
  isAutojoin,
@@ -160,17 +155,25 @@ export class StreamStateView_Space extends StreamStateView_AbstractContent {
160
155
  break;
161
156
  }
162
157
  case ChannelOp.CO_DELETED:
163
- if (this.spaceChannelsMetadata.delete(channelId)) {
158
+ if (this.spacesView.delete(this.streamId, channelId)) {
164
159
  stateEmitter?.emit('spaceChannelDeleted', this.streamId, channelId);
165
160
  }
166
161
  break;
167
162
  case ChannelOp.CO_UPDATED: {
168
163
  // first take settings from payload, then from local channel, then defaults
169
- const channel = this.spaceChannelsMetadata.get(channelId);
164
+ const channel = this.spaceChannelsMetadata[channelId];
170
165
  const isDefault = isDefaultChannelId(channelId);
171
- const isAutojoin = payload.settings?.autojoin ?? channel?.isAutojoin ?? isDefault;
172
- const hideUserJoinLeaveEvents = payload.settings?.hideUserJoinLeaveEvents ?? channel?.isAutojoin ?? false;
173
- this.spaceChannelsMetadata.set(channelId, {
166
+ const isAutojoin = isDefined(payload.settings?.autojoin)
167
+ ? payload.settings.autojoin
168
+ : isDefined(channel?.isAutojoin)
169
+ ? channel.isAutojoin
170
+ : isDefault;
171
+ const hideUserJoinLeaveEvents = isDefined(payload.settings?.hideUserJoinLeaveEvents)
172
+ ? payload.settings.hideUserJoinLeaveEvents
173
+ : isDefined(channel?.hideUserJoinLeaveEvents)
174
+ ? channel.hideUserJoinLeaveEvents
175
+ : false;
176
+ this.spacesView.updateChannelMetadata(this.streamId, channelId, {
174
177
  isDefault,
175
178
  updatedAtEventNum,
176
179
  isAutojoin,
@@ -1 +1 @@
1
- {"version":3,"file":"streamStateView_Space.js","sourceRoot":"","sources":["../src/streamStateView_Space.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"streamStateView_Space.js","sourceRoot":"","sources":["../src/streamStateView_Space.ts"],"names":[],"mappings":"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"}
@@ -1,27 +1,20 @@
1
1
  import TypedEmitter from 'typed-emitter';
2
2
  import { RemoteTimelineEvent } from './types';
3
- import { BlockchainTransaction_TokenTransfer, MembershipOp, Snapshot, UserPayload_Snapshot, UserPayload_UserMembership } from '@towns-protocol/proto';
3
+ import { MembershipOp, Snapshot, UserPayload_Snapshot, UserPayload_UserMembership } from '@towns-protocol/proto';
4
4
  import { StreamEncryptionEvents, StreamStateEvents } from './streamEvents';
5
5
  import { StreamStateView_AbstractContent } from './streamStateView_AbstractContent';
6
+ import { UserStreamModel, UserStreamsView } from './views/streams/userStreamsView';
6
7
  export declare class StreamStateView_User extends StreamStateView_AbstractContent {
8
+ private readonly userStreamsView;
7
9
  readonly streamId: string;
8
- readonly streamMemberships: {
9
- [key: string]: UserPayload_UserMembership;
10
- };
11
- tipsSent: {
12
- [key: string]: bigint;
13
- };
14
- tipsReceived: {
15
- [key: string]: bigint;
16
- };
17
- tipsSentCount: {
18
- [key: string]: bigint;
19
- };
20
- tipsReceivedCount: {
21
- [key: string]: bigint;
22
- };
23
- tokenTransfers: BlockchainTransaction_TokenTransfer[];
24
- constructor(streamId: string);
10
+ get streamMemberships(): Record<string, UserPayload_UserMembership | undefined>;
11
+ get tipsSent(): Record<string, bigint | undefined>;
12
+ get tipsReceived(): Record<string, bigint | undefined>;
13
+ get tipsSentCount(): Record<string, bigint | undefined>;
14
+ get tipsReceivedCount(): Record<string, bigint | undefined>;
15
+ get tokenTransfers(): import("@towns-protocol/proto").BlockchainTransaction_TokenTransfer[];
16
+ get userStreamModel(): UserStreamModel;
17
+ constructor(streamId: string, userStreamsView: UserStreamsView);
25
18
  applySnapshot(snapshot: Snapshot, content: UserPayload_Snapshot, encryptionEmitter: TypedEmitter<StreamEncryptionEvents> | undefined): void;
26
19
  prependEvent(event: RemoteTimelineEvent, _cleartext: Uint8Array | string | undefined, _encryptionEmitter: TypedEmitter<StreamEncryptionEvents> | undefined, _stateEmitter: TypedEmitter<StreamStateEvents> | undefined): void;
27
20
  appendEvent(event: RemoteTimelineEvent, cleartext: Uint8Array | string | undefined, _encryptionEmitter: TypedEmitter<StreamEncryptionEvents> | undefined, stateEmitter: TypedEmitter<StreamStateEvents> | undefined): void;
@@ -1 +1 @@
1
- {"version":3,"file":"streamStateView_User.d.ts","sourceRoot":"","sources":["../src/streamStateView_User.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAC7C,OAAO,EACH,mCAAmC,EACnC,YAAY,EACZ,QAAQ,EAER,oBAAoB,EACpB,0BAA0B,EAC7B,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,sBAAsB,EAAgB,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AACxF,OAAO,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAA;AAMnF,qBAAa,oBAAqB,SAAQ,+BAA+B;IACrE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,iBAAiB,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,0BAA0B,CAAA;KAAE,CAAK;IAC9E,QAAQ,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAK;IACxC,YAAY,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAK;IAC5C,aAAa,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAK;IAC7C,iBAAiB,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAK;IACjD,cAAc,EAAE,mCAAmC,EAAE,CAAK;gBAE9C,QAAQ,EAAE,MAAM;IAK5B,aAAa,CACT,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,oBAAoB,EAC7B,iBAAiB,EAAE,YAAY,CAAC,sBAAsB,CAAC,GAAG,SAAS,GACpE,IAAI;IAWP,YAAY,CACR,KAAK,EAAE,mBAAmB,EAC1B,UAAU,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,EAC3C,kBAAkB,EAAE,YAAY,CAAC,sBAAsB,CAAC,GAAG,SAAS,EACpE,aAAa,EAAE,YAAY,CAAC,iBAAiB,CAAC,GAAG,SAAS,GAC3D,IAAI;IAgCP,WAAW,CACP,KAAK,EAAE,mBAAmB,EAC1B,SAAS,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,EAC1C,kBAAkB,EAAE,YAAY,CAAC,sBAAsB,CAAC,GAAG,SAAS,EACpE,YAAY,EAAE,YAAY,CAAC,iBAAiB,CAAC,GAAG,SAAS,GAC1D,IAAI;IA6EP,OAAO,CAAC,6BAA6B;IA+BrC,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,0BAA0B,GAAG,SAAS;IAIvE,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,GAAG,OAAO;IAI7D,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;CAGtC"}
1
+ {"version":3,"file":"streamStateView_User.d.ts","sourceRoot":"","sources":["../src/streamStateView_User.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAC7C,OAAO,EACH,YAAY,EACZ,QAAQ,EAER,oBAAoB,EACpB,0BAA0B,EAC7B,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,sBAAsB,EAAgB,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AACxF,OAAO,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAA;AAKnF,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAA;AAElF,qBAAa,oBAAqB,SAAQ,+BAA+B;IA2BjE,OAAO,CAAC,QAAQ,CAAC,eAAe;IA1BpC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,IAAI,iBAAiB,2DAEpB;IACD,IAAI,QAAQ,uCAEX;IACD,IAAI,YAAY,uCAEf;IACD,IAAI,aAAa,uCAEhB;IACD,IAAI,iBAAiB,uCAEpB;IACD,IAAI,cAAc,0EAEjB;IAED,IAAI,eAAe,IAAI,eAAe,CAErC;gBAGG,QAAQ,EAAE,MAAM,EACC,eAAe,EAAE,eAAe;IAMrD,aAAa,CACT,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,oBAAoB,EAC7B,iBAAiB,EAAE,YAAY,CAAC,sBAAsB,CAAC,GAAG,SAAS,GACpE,IAAI;IAaP,YAAY,CACR,KAAK,EAAE,mBAAmB,EAC1B,UAAU,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,EAC3C,kBAAkB,EAAE,YAAY,CAAC,sBAAsB,CAAC,GAAG,SAAS,EACpE,aAAa,EAAE,YAAY,CAAC,iBAAiB,CAAC,GAAG,SAAS,GAC3D,IAAI;IAmCP,WAAW,CACP,KAAK,EAAE,mBAAmB,EAC1B,SAAS,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,EAC1C,kBAAkB,EAAE,YAAY,CAAC,sBAAsB,CAAC,GAAG,SAAS,EACpE,YAAY,EAAE,YAAY,CAAC,iBAAiB,CAAC,GAAG,SAAS,GAC1D,IAAI;IAgFP,OAAO,CAAC,6BAA6B;IA+BrC,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,0BAA0B,GAAG,SAAS;IAIvE,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,GAAG,OAAO;IAI7D,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;CAGtC"}
@@ -5,15 +5,32 @@ import { logNever } from './check';
5
5
  import { streamIdFromBytes } from './id';
6
6
  import { utils } from 'ethers';
7
7
  export class StreamStateView_User extends StreamStateView_AbstractContent {
8
+ userStreamsView;
8
9
  streamId;
9
- streamMemberships = {};
10
- tipsSent = {};
11
- tipsReceived = {};
12
- tipsSentCount = {};
13
- tipsReceivedCount = {};
14
- tokenTransfers = [];
15
- constructor(streamId) {
10
+ get streamMemberships() {
11
+ return this.userStreamModel.streamMemberships;
12
+ }
13
+ get tipsSent() {
14
+ return this.userStreamModel.tipsSent;
15
+ }
16
+ get tipsReceived() {
17
+ return this.userStreamModel.tipsReceived;
18
+ }
19
+ get tipsSentCount() {
20
+ return this.userStreamModel.tipsSentCount;
21
+ }
22
+ get tipsReceivedCount() {
23
+ return this.userStreamModel.tipsReceivedCount;
24
+ }
25
+ get tokenTransfers() {
26
+ return this.userStreamModel.tokenTransfers;
27
+ }
28
+ get userStreamModel() {
29
+ return this.userStreamsView.get(this.streamId);
30
+ }
31
+ constructor(streamId, userStreamsView) {
16
32
  super();
33
+ this.userStreamsView = userStreamsView;
17
34
  this.streamId = streamId;
18
35
  }
19
36
  applySnapshot(snapshot, content, encryptionEmitter) {
@@ -21,10 +38,12 @@ export class StreamStateView_User extends StreamStateView_AbstractContent {
21
38
  for (const payload of content.memberships) {
22
39
  this.addUserPayload_userMembership(payload, encryptionEmitter);
23
40
  }
24
- this.tipsSent = { ...content.tipsSent };
25
- this.tipsReceived = { ...content.tipsReceived };
26
- this.tipsSentCount = { ...content.tipsSentCount };
27
- this.tipsReceivedCount = { ...content.tipsReceivedCount };
41
+ this.userStreamsView.setTips(this.streamId, {
42
+ tipsSent: { ...content.tipsSent },
43
+ tipsReceived: { ...content.tipsReceived },
44
+ tipsSentCount: { ...content.tipsSentCount },
45
+ tipsReceivedCount: { ...content.tipsReceivedCount },
46
+ });
28
47
  }
29
48
  prependEvent(event, _cleartext, _encryptionEmitter, _stateEmitter) {
30
49
  check(event.remoteEvent.event.payload.case === 'userPayload');
@@ -42,7 +61,7 @@ export class StreamStateView_User extends StreamStateView_AbstractContent {
42
61
  const transactionContent = payload.content.value.content;
43
62
  switch (transactionContent?.case) {
44
63
  case 'tokenTransfer':
45
- this.tokenTransfers.unshift(transactionContent.value);
64
+ this.userStreamsView.prependTokenTransfer(this.streamId, transactionContent.value);
46
65
  break;
47
66
  default:
48
67
  break;
@@ -79,13 +98,12 @@ export class StreamStateView_User extends StreamStateView_AbstractContent {
79
98
  return;
80
99
  }
81
100
  const currency = utils.getAddress(bin_toHexString(event.currency));
82
- this.tipsSent[currency] = (this.tipsSent[currency] ?? 0n) + event.amount;
83
- this.tipsSentCount[currency] = (this.tipsSentCount[currency] ?? 0n) + 1n;
101
+ this.userStreamsView.appendTipSent(this.streamId, currency, event.amount);
84
102
  stateEmitter?.emit('userTipSent', this.streamId, currency, event.amount);
85
103
  break;
86
104
  }
87
105
  case 'tokenTransfer':
88
- this.tokenTransfers.push(transactionContent.value);
106
+ this.userStreamsView.appendTokenTransfer(this.streamId, transactionContent.value);
89
107
  break;
90
108
  case 'spaceReview': {
91
109
  // user left a review on a space
@@ -108,10 +126,7 @@ export class StreamStateView_User extends StreamStateView_AbstractContent {
108
126
  return;
109
127
  }
110
128
  const currency = utils.getAddress(bin_toHexString(event.currency));
111
- this.tipsReceived[currency] =
112
- (this.tipsReceived[currency] ?? 0n) + event.amount;
113
- this.tipsReceivedCount[currency] =
114
- (this.tipsReceivedCount[currency] ?? 0n) + 1n;
129
+ this.userStreamsView.appendTipReceived(this.streamId, currency, event.amount);
115
130
  stateEmitter?.emit('userTipReceived', this.streamId, currency, event.amount);
116
131
  break;
117
132
  }
@@ -138,7 +153,7 @@ export class StreamStateView_User extends StreamStateView_AbstractContent {
138
153
  const streamId = streamIdFromBytes(inStreamId);
139
154
  const wasInvited = this.streamMemberships[streamId]?.op === MembershipOp.SO_INVITE;
140
155
  const wasJoined = this.streamMemberships[streamId]?.op === MembershipOp.SO_JOIN;
141
- this.streamMemberships[streamId] = payload;
156
+ this.userStreamsView.setMembership(this.streamId, streamId, payload);
142
157
  switch (op) {
143
158
  case MembershipOp.SO_INVITE:
144
159
  emitter?.emit('userInvitedToStream', streamId);
@@ -1 +1 @@
1
- {"version":3,"file":"streamStateView_User.js","sourceRoot":"","sources":["../src/streamStateView_User.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"streamStateView_User.js","sourceRoot":"","sources":["../src/streamStateView_User.ts"],"names":[],"mappings":"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"}
@@ -3,10 +3,13 @@ import { ConfirmedTimelineEvent, RemoteTimelineEvent } from './types';
3
3
  import { Snapshot, UserInboxPayload_Snapshot, UserInboxPayload_Snapshot_DeviceSummary } from '@towns-protocol/proto';
4
4
  import { StreamStateView_AbstractContent } from './streamStateView_AbstractContent';
5
5
  import { StreamEncryptionEvents, StreamStateEvents } from './streamEvents';
6
+ import { UserInboxStreamModel, UserInboxStreamsView } from './views/streams/userInboxStreams';
6
7
  export declare class StreamStateView_UserInbox extends StreamStateView_AbstractContent {
8
+ private userInboxStreamsView;
7
9
  readonly streamId: string;
8
10
  deviceSummary: Record<string, UserInboxPayload_Snapshot_DeviceSummary>;
9
- constructor(streamId: string);
11
+ get userInboxStreamModel(): UserInboxStreamModel;
12
+ constructor(streamId: string, userInboxStreamsView: UserInboxStreamsView);
10
13
  applySnapshot(snapshot: Snapshot, content: UserInboxPayload_Snapshot, _emitter: TypedEmitter<StreamEncryptionEvents> | undefined): void;
11
14
  onConfirmedEvent(event: ConfirmedTimelineEvent, emitter: TypedEmitter<StreamStateEvents> | undefined, encryptionEmitter: TypedEmitter<StreamEncryptionEvents> | undefined): void;
12
15
  prependEvent(event: RemoteTimelineEvent, _cleartext: Uint8Array | string | undefined, encryptionEmitter: TypedEmitter<StreamEncryptionEvents> | undefined, _stateEmitter: TypedEmitter<StreamStateEvents> | undefined): void;
@@ -1 +1 @@
1
- {"version":3,"file":"streamStateView_UserInbox.d.ts","sourceRoot":"","sources":["../src/streamStateView_UserInbox.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,sBAAsB,EAAe,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAClF,OAAO,EACH,QAAQ,EAER,yBAAyB,EACzB,uCAAuC,EAG1C,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAA;AAGnF,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAE1E,qBAAa,yBAA0B,SAAQ,+BAA+B;IAC1E,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,uCAAuC,CAAC,CAAK;gBAE/D,QAAQ,EAAE,MAAM;IAK5B,aAAa,CACT,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,yBAAyB,EAClC,QAAQ,EAAE,YAAY,CAAC,sBAAsB,CAAC,GAAG,SAAS,GAC3D,IAAI;IAMP,gBAAgB,CACZ,KAAK,EAAE,sBAAsB,EAC7B,OAAO,EAAE,YAAY,CAAC,iBAAiB,CAAC,GAAG,SAAS,EACpD,iBAAiB,EAAE,YAAY,CAAC,sBAAsB,CAAC,GAAG,SAAS,GACpE,IAAI;IAIP,YAAY,CACR,KAAK,EAAE,mBAAmB,EAC1B,UAAU,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,EAC3C,iBAAiB,EAAE,YAAY,CAAC,sBAAsB,CAAC,GAAG,SAAS,EACnE,aAAa,EAAE,YAAY,CAAC,iBAAiB,CAAC,GAAG,SAAS,GAC3D,IAAI;IAkBP,WAAW,CACP,KAAK,EAAE,mBAAmB,EAC1B,UAAU,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,EAC3C,iBAAiB,EAAE,YAAY,CAAC,sBAAsB,CAAC,GAAG,SAAS,EACnE,YAAY,EAAE,YAAY,CAAC,iBAAiB,CAAC,GAAG,SAAS,GAC1D,IAAI;IAmBP,OAAO,CAAC,gBAAgB;IAQxB,OAAO,CAAC,mBAAmB;CAoB9B"}
1
+ {"version":3,"file":"streamStateView_UserInbox.d.ts","sourceRoot":"","sources":["../src/streamStateView_UserInbox.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,sBAAsB,EAAe,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAClF,OAAO,EACH,QAAQ,EAER,yBAAyB,EACzB,uCAAuC,EAG1C,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAA;AAGnF,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAC1E,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAA;AAE7F,qBAAa,yBAA0B,SAAQ,+BAA+B;IAUtE,OAAO,CAAC,oBAAoB;IAThC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,uCAAuC,CAAC,CAAK;IAE3E,IAAI,oBAAoB,IAAI,oBAAoB,CAE/C;gBAGG,QAAQ,EAAE,MAAM,EACR,oBAAoB,EAAE,oBAAoB;IAMtD,aAAa,CACT,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,yBAAyB,EAClC,QAAQ,EAAE,YAAY,CAAC,sBAAsB,CAAC,GAAG,SAAS,GAC3D,IAAI;IAMP,gBAAgB,CACZ,KAAK,EAAE,sBAAsB,EAC7B,OAAO,EAAE,YAAY,CAAC,iBAAiB,CAAC,GAAG,SAAS,EACpD,iBAAiB,EAAE,YAAY,CAAC,sBAAsB,CAAC,GAAG,SAAS,GACpE,IAAI;IAIP,YAAY,CACR,KAAK,EAAE,mBAAmB,EAC1B,UAAU,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,EAC3C,iBAAiB,EAAE,YAAY,CAAC,sBAAsB,CAAC,GAAG,SAAS,EACnE,aAAa,EAAE,YAAY,CAAC,iBAAiB,CAAC,GAAG,SAAS,GAC3D,IAAI;IAkBP,WAAW,CACP,KAAK,EAAE,mBAAmB,EAC1B,UAAU,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,EAC3C,iBAAiB,EAAE,YAAY,CAAC,sBAAsB,CAAC,GAAG,SAAS,EACnE,YAAY,EAAE,YAAY,CAAC,iBAAiB,CAAC,GAAG,SAAS,GAC1D,IAAI;IAmBP,OAAO,CAAC,gBAAgB;IAQxB,OAAO,CAAC,mBAAmB;CAoB9B"}
@@ -2,10 +2,15 @@ import { StreamStateView_AbstractContent } from './streamStateView_AbstractConte
2
2
  import { check } from '@towns-protocol/dlog';
3
3
  import { logNever } from './check';
4
4
  export class StreamStateView_UserInbox extends StreamStateView_AbstractContent {
5
+ userInboxStreamsView;
5
6
  streamId;
6
7
  deviceSummary = {};
7
- constructor(streamId) {
8
+ get userInboxStreamModel() {
9
+ return this.userInboxStreamsView.get(this.streamId);
10
+ }
11
+ constructor(streamId, userInboxStreamsView) {
8
12
  super();
13
+ this.userInboxStreamsView = userInboxStreamsView;
9
14
  this.streamId = streamId;
10
15
  }
11
16
  applySnapshot(snapshot, content, _emitter) {
@@ -1 +1 @@
1
- {"version":3,"file":"streamStateView_UserInbox.js","sourceRoot":"","sources":["../src/streamStateView_UserInbox.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"streamStateView_UserInbox.js","sourceRoot":"","sources":["../src/streamStateView_UserInbox.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,9 @@ import { Snapshot, UserMetadataPayload_Snapshot, ChunkedMedia, type EncryptedDat
4
4
  import { StreamStateView_AbstractContent } from './streamStateView_AbstractContent';
5
5
  import { UserDevice } from '@towns-protocol/encryption';
6
6
  import { StreamEncryptionEvents, StreamStateEvents } from './streamEvents';
7
+ import { UserMetadataStreamModel, UserMetadataStreamsView } from './views/streams/userMetadataStreams';
7
8
  export declare class StreamStateView_UserMetadata extends StreamStateView_AbstractContent {
9
+ private userMetadataStreamsView;
8
10
  readonly streamId: string;
9
11
  readonly streamCreatorId: string;
10
12
  private profileImage;
@@ -13,7 +15,8 @@ export declare class StreamStateView_UserMetadata extends StreamStateView_Abstra
13
15
  encryptedBio: EncryptedData | undefined;
14
16
  private decryptionInProgress;
15
17
  readonly deviceKeys: UserDevice[];
16
- constructor(streamId: string);
18
+ get streamMetadataModel(): UserMetadataStreamModel;
19
+ constructor(streamId: string, userMetadataStreamsView: UserMetadataStreamsView);
17
20
  applySnapshot(snapshot: Snapshot, content: UserMetadataPayload_Snapshot, encryptionEmitter: TypedEmitter<StreamEncryptionEvents> | undefined): void;
18
21
  prependEvent(_event: RemoteTimelineEvent, _cleartext: Uint8Array | string | undefined, _encryptionEmitter: TypedEmitter<StreamEncryptionEvents> | undefined, _stateEmitter: TypedEmitter<StreamStateEvents> | undefined): void;
19
22
  appendEvent(event: RemoteTimelineEvent, _cleartext: Uint8Array | string | undefined, encryptionEmitter: TypedEmitter<StreamEncryptionEvents> | undefined, stateEmitter: TypedEmitter<StreamStateEvents> | undefined): void;
@@ -1 +1 @@
1
- {"version":3,"file":"streamStateView_UserMetadata.d.ts","sourceRoot":"","sources":["../src/streamStateView_UserMetadata.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAC7C,OAAO,EACH,QAAQ,EAGR,4BAA4B,EAC5B,YAAY,EACZ,KAAK,aAAa,EAClB,OAAO,EAGV,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAA;AAGnF,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAA;AACvD,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAK1E,qBAAa,4BAA6B,SAAQ,+BAA+B;IAC7E,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAA;IAChC,OAAO,CAAC,YAAY,CAA0B;IAC9C,qBAAqB,EAAE,aAAa,GAAG,SAAS,CAAA;IAChD,OAAO,CAAC,GAAG,CAAqB;IAChC,YAAY,EAAE,aAAa,GAAG,SAAS,CAAA;IACvC,OAAO,CAAC,oBAAoB,CAGY;IAGxC,QAAQ,CAAC,UAAU,EAAE,UAAU,EAAE,CAAK;gBAE1B,QAAQ,EAAE,MAAM;IAM5B,aAAa,CACT,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,4BAA4B,EACrC,iBAAiB,EAAE,YAAY,CAAC,sBAAsB,CAAC,GAAG,SAAS,GACpE,IAAI;IAaP,YAAY,CACR,MAAM,EAAE,mBAAmB,EAC3B,UAAU,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,EAC3C,kBAAkB,EAAE,YAAY,CAAC,sBAAsB,CAAC,GAAG,SAAS,EACpE,aAAa,EAAE,YAAY,CAAC,iBAAiB,CAAC,GAAG,SAAS,GAC3D,IAAI;IAIP,WAAW,CACP,KAAK,EAAE,mBAAmB,EAC1B,UAAU,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,EAC3C,iBAAiB,EAAE,YAAY,CAAC,sBAAsB,CAAC,GAAG,SAAS,EACnE,YAAY,EAAE,YAAY,CAAC,iBAAiB,CAAC,GAAG,SAAS,GAC1D,IAAI;IAsBP,OAAO,CAAC,gBAAgB;IAkBxB,OAAO,CAAC,eAAe;IAKvB,OAAO,CAAC,MAAM;IAKD,eAAe;IAkCf,MAAM;YAkCL,OAAO;CAcxB"}
1
+ {"version":3,"file":"streamStateView_UserMetadata.d.ts","sourceRoot":"","sources":["../src/streamStateView_UserMetadata.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAC7C,OAAO,EACH,QAAQ,EAGR,4BAA4B,EAC5B,YAAY,EACZ,KAAK,aAAa,EAClB,OAAO,EAGV,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAA;AAGnF,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAA;AACvD,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAI1E,OAAO,EACH,uBAAuB,EACvB,uBAAuB,EAC1B,MAAM,qCAAqC,CAAA;AAE5C,qBAAa,4BAA6B,SAAQ,+BAA+B;IAqBzE,OAAO,CAAC,uBAAuB;IApBnC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAA;IAChC,OAAO,CAAC,YAAY,CAA0B;IAC9C,qBAAqB,EAAE,aAAa,GAAG,SAAS,CAAA;IAChD,OAAO,CAAC,GAAG,CAAqB;IAChC,YAAY,EAAE,aAAa,GAAG,SAAS,CAAA;IACvC,OAAO,CAAC,oBAAoB,CAGY;IAGxC,QAAQ,CAAC,UAAU,EAAE,UAAU,EAAE,CAAK;IAEtC,IAAI,mBAAmB,IAAI,uBAAuB,CAEjD;gBAGG,QAAQ,EAAE,MAAM,EACR,uBAAuB,EAAE,uBAAuB;IAO5D,aAAa,CACT,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,4BAA4B,EACrC,iBAAiB,EAAE,YAAY,CAAC,sBAAsB,CAAC,GAAG,SAAS,GACpE,IAAI;IAaP,YAAY,CACR,MAAM,EAAE,mBAAmB,EAC3B,UAAU,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,EAC3C,kBAAkB,EAAE,YAAY,CAAC,sBAAsB,CAAC,GAAG,SAAS,EACpE,aAAa,EAAE,YAAY,CAAC,iBAAiB,CAAC,GAAG,SAAS,GAC3D,IAAI;IAIP,WAAW,CACP,KAAK,EAAE,mBAAmB,EAC1B,UAAU,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,EAC3C,iBAAiB,EAAE,YAAY,CAAC,sBAAsB,CAAC,GAAG,SAAS,EACnE,YAAY,EAAE,YAAY,CAAC,iBAAiB,CAAC,GAAG,SAAS,GAC1D,IAAI;IAsBP,OAAO,CAAC,gBAAgB;IAkBxB,OAAO,CAAC,eAAe;IAKvB,OAAO,CAAC,MAAM;IAKD,eAAe;IAkCf,MAAM;YAkCL,OAAO;CAcxB"}
@@ -6,6 +6,7 @@ import { getUserIdFromStreamId } from './id';
6
6
  import { decryptDerivedAESGCM } from '@towns-protocol/sdk-crypto';
7
7
  import { fromBinary } from '@bufbuild/protobuf';
8
8
  export class StreamStateView_UserMetadata extends StreamStateView_AbstractContent {
9
+ userMetadataStreamsView;
9
10
  streamId;
10
11
  streamCreatorId;
11
12
  profileImage;
@@ -15,8 +16,12 @@ export class StreamStateView_UserMetadata extends StreamStateView_AbstractConten
15
16
  decryptionInProgress = { bio: undefined, image: undefined };
16
17
  // user_id -> device_keys, fallback_keys
17
18
  deviceKeys = [];
18
- constructor(streamId) {
19
+ get streamMetadataModel() {
20
+ return this.userMetadataStreamsView.get(this.streamId);
21
+ }
22
+ constructor(streamId, userMetadataStreamsView) {
19
23
  super();
24
+ this.userMetadataStreamsView = userMetadataStreamsView;
20
25
  this.streamId = streamId;
21
26
  this.streamCreatorId = getUserIdFromStreamId(streamId);
22
27
  }
@@ -1 +1 @@
1
- {"version":3,"file":"streamStateView_UserMetadata.js","sourceRoot":"","sources":["../src/streamStateView_UserMetadata.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"streamStateView_UserMetadata.js","sourceRoot":"","sources":["../src/streamStateView_UserMetadata.ts"],"names":[],"mappings":"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"}
@@ -3,13 +3,14 @@ import TypedEmitter from 'typed-emitter';
3
3
  import { RemoteTimelineEvent } from './types';
4
4
  import { StreamEncryptionEvents, StreamStateEvents } from './streamEvents';
5
5
  import { StreamStateView_AbstractContent } from './streamStateView_AbstractContent';
6
- import { StreamsView } from './views/streamsView';
6
+ import { UserSettingsStreamModel, UserSettingsStreamsView } from './views/streams/userSettingsStreams';
7
7
  export declare class StreamStateView_UserSettings extends StreamStateView_AbstractContent {
8
- private readonly streamsView;
8
+ private readonly userSettingsStreamsView;
9
9
  readonly streamId: string;
10
10
  get fullyReadMarkers(): Record<string, Record<string, FullyReadMarker>>;
11
11
  get userBlocks(): Record<string, UserSettingsPayload_Snapshot_UserBlocks>;
12
- constructor(streamId: string, streamsView: StreamsView);
12
+ get userSettingsStreamModel(): UserSettingsStreamModel;
13
+ constructor(streamId: string, userSettingsStreamsView: UserSettingsStreamsView);
13
14
  applySnapshot(snapshot: Snapshot, content: UserSettingsPayload_Snapshot): void;
14
15
  prependEvent(event: RemoteTimelineEvent, _cleartext: Uint8Array | string | undefined, _encryptionEmitter: TypedEmitter<StreamEncryptionEvents> | undefined, _stateEmitter: TypedEmitter<StreamStateEvents> | undefined): void;
15
16
  appendEvent(event: RemoteTimelineEvent, _cleartext: Uint8Array | string | undefined, _encryptionEmitter: TypedEmitter<StreamEncryptionEvents> | undefined, stateEmitter: TypedEmitter<StreamStateEvents> | undefined): void;
@@ -1 +1 @@
1
- {"version":3,"file":"streamStateView_UserSettings.d.ts","sourceRoot":"","sources":["../src/streamStateView_UserSettings.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,eAAe,EAGf,QAAQ,EAGR,4BAA4B,EAC5B,uCAAuC,EACvC,6CAA6C,EAGhD,MAAM,uBAAuB,CAAA;AAC9B,OAAO,YAAY,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAC7C,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAG1E,OAAO,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAA;AAGnF,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAMjD,qBAAa,4BAA6B,SAAQ,+BAA+B;IAiBzE,OAAO,CAAC,QAAQ,CAAC,WAAW;IAhBhC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,IAAI,gBAAgB,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CAKtE;IACD,IAAI,UAAU,IAAI,MAAM,CAAC,MAAM,EAAE,uCAAuC,CAAC,CAKxE;gBAGG,QAAQ,EAAE,MAAM,EACC,WAAW,EAAE,WAAW;IAM7C,aAAa,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,4BAA4B,GAAG,IAAI;IAY9E,YAAY,CACR,KAAK,EAAE,mBAAmB,EAC1B,UAAU,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,EAC3C,kBAAkB,EAAE,YAAY,CAAC,sBAAsB,CAAC,GAAG,SAAS,EACpE,aAAa,EAAE,YAAY,CAAC,iBAAiB,CAAC,GAAG,SAAS,GAC3D,IAAI;IAmBP,WAAW,CACP,KAAK,EAAE,mBAAmB,EAC1B,UAAU,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,EAC3C,kBAAkB,EAAE,YAAY,CAAC,sBAAsB,CAAC,GAAG,SAAS,EACpE,YAAY,EAAE,YAAY,CAAC,iBAAiB,CAAC,GAAG,SAAS,GAC1D,IAAI;IAmBP,OAAO,CAAC,qBAAqB;IAqB7B,OAAO,CAAC,eAAe;IAavB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAQtC,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO;IAU1D,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,6CAA6C,GAAG,SAAS;CAO1F"}
1
+ {"version":3,"file":"streamStateView_UserSettings.d.ts","sourceRoot":"","sources":["../src/streamStateView_UserSettings.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,eAAe,EAGf,QAAQ,EAGR,4BAA4B,EAC5B,uCAAuC,EACvC,6CAA6C,EAGhD,MAAM,uBAAuB,CAAA;AAC9B,OAAO,YAAY,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAC7C,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAG1E,OAAO,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAA;AAGnF,OAAO,EACH,uBAAuB,EACvB,uBAAuB,EAC1B,MAAM,qCAAqC,CAAA;AAI5C,qBAAa,4BAA6B,SAAQ,+BAA+B;IAgBzE,OAAO,CAAC,QAAQ,CAAC,uBAAuB;IAf5C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IAEzB,IAAI,gBAAgB,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CAEtE;IACD,IAAI,UAAU,IAAI,MAAM,CAAC,MAAM,EAAE,uCAAuC,CAAC,CAExE;IAED,IAAI,uBAAuB,IAAI,uBAAuB,CAErD;gBAGG,QAAQ,EAAE,MAAM,EACC,uBAAuB,EAAE,uBAAuB;IAMrE,aAAa,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,4BAA4B,GAAG,IAAI;IAY9E,YAAY,CACR,KAAK,EAAE,mBAAmB,EAC1B,UAAU,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,EAC3C,kBAAkB,EAAE,YAAY,CAAC,sBAAsB,CAAC,GAAG,SAAS,EACpE,aAAa,EAAE,YAAY,CAAC,iBAAiB,CAAC,GAAG,SAAS,GAC3D,IAAI;IAmBP,WAAW,CACP,KAAK,EAAE,mBAAmB,EAC1B,UAAU,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,EAC3C,kBAAkB,EAAE,YAAY,CAAC,sBAAsB,CAAC,GAAG,SAAS,EACpE,YAAY,EAAE,YAAY,CAAC,iBAAiB,CAAC,GAAG,SAAS,GAC1D,IAAI;IAmBP,OAAO,CAAC,qBAAqB;IAqB7B,OAAO,CAAC,eAAe;IAavB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAQtC,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO;IAU1D,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,6CAA6C,GAAG,SAAS;CAO1F"}
@@ -5,22 +5,21 @@ import { StreamStateView_AbstractContent } from './streamStateView_AbstractConte
5
5
  import { create, fromJsonString } from '@bufbuild/protobuf';
6
6
  import { streamIdFromBytes, userIdFromAddress } from './id';
7
7
  const log = dlog('csb:stream');
8
- const EMPTY_USER_BLOCKS = {};
9
- const EMPTY_FULLY_READ_MARKERS = {};
10
8
  export class StreamStateView_UserSettings extends StreamStateView_AbstractContent {
11
- streamsView;
9
+ userSettingsStreamsView;
12
10
  streamId;
13
11
  get fullyReadMarkers() {
14
- return (this.streamsView.userSettingsStreams.value[this.streamId]?.fullyReadMarkers ??
15
- EMPTY_FULLY_READ_MARKERS);
12
+ return this.userSettingsStreamModel.fullyReadMarkers;
16
13
  }
17
14
  get userBlocks() {
18
- return (this.streamsView.userSettingsStreams.value[this.streamId]?.userBlocks ??
19
- EMPTY_USER_BLOCKS);
15
+ return this.userSettingsStreamModel.userBlocks;
20
16
  }
21
- constructor(streamId, streamsView) {
17
+ get userSettingsStreamModel() {
18
+ return this.userSettingsStreamsView.get(this.streamId);
19
+ }
20
+ constructor(streamId, userSettingsStreamsView) {
22
21
  super();
23
- this.streamsView = streamsView;
22
+ this.userSettingsStreamsView = userSettingsStreamsView;
24
23
  this.streamId = streamId;
25
24
  }
26
25
  applySnapshot(snapshot, content) {
@@ -30,7 +29,7 @@ export class StreamStateView_UserSettings extends StreamStateView_AbstractConten
30
29
  }
31
30
  for (const userBlocks of content.userBlocksList) {
32
31
  const userId = userIdFromAddress(userBlocks.userId);
33
- this.streamsView.userSettingsStreams.setUserBlocks(this.streamId, userId, userBlocks);
32
+ this.userSettingsStreamsView.setUserBlocks(this.streamId, userId, userBlocks);
34
33
  }
35
34
  }
36
35
  prependEvent(event, _cleartext, _encryptionEmitter, _stateEmitter) {
@@ -78,7 +77,7 @@ export class StreamStateView_UserSettings extends StreamStateView_AbstractConten
78
77
  }
79
78
  const streamId = streamIdFromBytes(payload.streamId);
80
79
  const fullyReadMarkersContent = fromJsonString(FullyReadMarkersSchema, content.data);
81
- this.streamsView.userSettingsStreams.setFullyReadMarkers(this.streamId, streamId, fullyReadMarkersContent.markers);
80
+ this.userSettingsStreamsView.setFullyReadMarkers(this.streamId, streamId, fullyReadMarkersContent.markers);
82
81
  emitter?.emit('fullyReadMarkersUpdated', streamId, fullyReadMarkersContent.markers);
83
82
  }
84
83
  userBlockUpdate(payload, emitter) {
@@ -87,7 +86,7 @@ export class StreamStateView_UserSettings extends StreamStateView_AbstractConten
87
86
  eventNum: payload.eventNum,
88
87
  isBlocked: payload.isBlocked,
89
88
  });
90
- this.streamsView.userSettingsStreams.updateUserBlock(this.streamId, userId, userBlock);
89
+ this.userSettingsStreamsView.updateUserBlock(this.streamId, userId, userBlock);
91
90
  emitter?.emit('userBlockUpdated', payload);
92
91
  }
93
92
  isUserBlocked(userId) {
@@ -1 +1 @@
1
- {"version":3,"file":"streamStateView_UserSettings.js","sourceRoot":"","sources":["../src/streamStateView_UserSettings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"streamStateView_UserSettings.js","sourceRoot":"","sources":["../src/streamStateView_UserSettings.ts"],"names":[],"mappings":"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"}
@@ -109,7 +109,7 @@ let Space = class Space extends PersistedObservable {
109
109
  if (this.data.id === streamId) {
110
110
  const stream = this.riverConnection.client?.stream(streamId);
111
111
  check(isDefined(stream), 'stream is not defined');
112
- const channelIds = [...stream.view.spaceContent.spaceChannelsMetadata.keys()];
112
+ const channelIds = Object.keys(stream.view.spaceContent.spaceChannelsMetadata ?? {});
113
113
  for (const channelId of channelIds) {
114
114
  if (!this.channels[channelId]) {
115
115
  this.channels[channelId] = new Channel(channelId, this.data.id, this.riverConnection, this.spaceDapp, this.store);