@towns-protocol/sdk 0.0.242 → 0.0.244
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 +5 -1
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +64 -18
- package/dist/client.js.map +1 -1
- package/dist/id.d.ts +3 -1
- package/dist/id.d.ts.map +1 -1
- package/dist/id.js +3 -0
- package/dist/id.js.map +1 -1
- package/dist/index.d.ts +4 -8
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -8
- package/dist/index.js.map +1 -1
- package/dist/makeAuthenticationRpcClient.d.ts +1 -1
- package/dist/makeAuthenticationRpcClient.d.ts.map +1 -1
- package/dist/makeAuthenticationRpcClient.js +2 -2
- package/dist/makeAuthenticationRpcClient.js.map +1 -1
- package/dist/makeNotificationRpcClient.d.ts +1 -1
- package/dist/makeNotificationRpcClient.d.ts.map +1 -1
- package/dist/makeNotificationRpcClient.js +2 -2
- package/dist/makeNotificationRpcClient.js.map +1 -1
- package/dist/makeStreamRpcClient.d.ts +1 -1
- package/dist/makeStreamRpcClient.d.ts.map +1 -1
- package/dist/makeStreamRpcClient.js +2 -2
- package/dist/makeStreamRpcClient.js.map +1 -1
- package/dist/notificationService.d.ts.map +1 -1
- package/dist/notificationService.js +2 -1
- package/dist/notificationService.js.map +1 -1
- package/dist/riverConfig.js +1 -1
- package/dist/riverConfig.js.map +1 -1
- package/dist/rpcCommon.d.ts +1 -3
- package/dist/rpcCommon.d.ts.map +1 -1
- package/dist/rpcCommon.js +1 -13
- package/dist/rpcCommon.js.map +1 -1
- package/dist/sign.d.ts +1 -1
- package/dist/sign.d.ts.map +1 -1
- package/dist/sign.js +13 -7
- package/dist/sign.js.map +1 -1
- package/dist/stream.d.ts +4 -2
- package/dist/stream.d.ts.map +1 -1
- package/dist/stream.js +9 -6
- package/dist/stream.js.map +1 -1
- package/dist/streamEvents.d.ts +3 -3
- package/dist/streamEvents.d.ts.map +1 -1
- package/dist/streamStateView.d.ts +9 -6
- package/dist/streamStateView.d.ts.map +1 -1
- package/dist/streamStateView.js +58 -62
- package/dist/streamStateView.js.map +1 -1
- package/dist/streamStateView_Space.js +1 -1
- package/dist/streamStateView_Space.js.map +1 -1
- package/dist/streamStateView_UserMetadata.js +1 -1
- package/dist/streamStateView_UserMetadata.js.map +1 -1
- package/dist/streamUtils.d.ts.map +1 -1
- package/dist/streamUtils.js +2 -0
- package/dist/streamUtils.js.map +1 -1
- package/dist/streams-view/streamsView.d.ts +18 -0
- package/dist/streams-view/streamsView.d.ts.map +1 -0
- package/dist/streams-view/streamsView.js +25 -0
- package/dist/streams-view/streamsView.js.map +1 -0
- package/dist/streams-view/timelineEvents.d.ts +11 -0
- package/dist/streams-view/timelineEvents.d.ts.map +1 -0
- package/dist/{sync-agent/timeline/models/timelineEvent.js → streams-view/timelineEvents.js} +240 -303
- package/dist/streams-view/timelineEvents.js.map +1 -0
- package/dist/streams-view/timelinesView.d.ts +27 -0
- package/dist/streams-view/timelinesView.d.ts.map +1 -0
- package/dist/streams-view/timelinesView.js +109 -0
- package/dist/streams-view/timelinesView.js.map +1 -0
- package/dist/streams-view/timelinesViewModel.d.ts +38 -0
- package/dist/streams-view/timelinesViewModel.d.ts.map +1 -0
- package/dist/streams-view/timelinesViewModel.js +681 -0
- package/dist/streams-view/timelinesViewModel.js.map +1 -0
- package/dist/sync-agent/dms/models/dm.js +2 -2
- package/dist/sync-agent/dms/models/dm.js.map +1 -1
- package/dist/sync-agent/gdms/models/gdm.js +2 -2
- package/dist/sync-agent/gdms/models/gdm.js.map +1 -1
- package/dist/sync-agent/spaces/models/channel.js +3 -3
- package/dist/sync-agent/spaces/models/channel.js.map +1 -1
- package/dist/sync-agent/syncAgent.d.ts.map +1 -1
- package/dist/sync-agent/syncAgent.js +4 -0
- package/dist/sync-agent/syncAgent.js.map +1 -1
- package/dist/sync-agent/timeline/models/timeline-types.d.ts +2 -1
- package/dist/sync-agent/timeline/models/timeline-types.d.ts.map +1 -1
- package/dist/sync-agent/timeline/models/timeline-types.js +109 -0
- package/dist/sync-agent/timeline/models/timeline-types.js.map +1 -1
- package/dist/sync-agent/timeline/timeline.d.ts +9 -26
- package/dist/sync-agent/timeline/timeline.d.ts.map +1 -1
- package/dist/sync-agent/timeline/timeline.js +21 -226
- package/dist/sync-agent/timeline/timeline.js.map +1 -1
- package/dist/syncedStream.d.ts +2 -1
- package/dist/syncedStream.d.ts.map +1 -1
- package/dist/syncedStream.js +11 -12
- package/dist/syncedStream.js.map +1 -1
- package/dist/syncedStreams.d.ts +1 -0
- package/dist/syncedStreams.d.ts.map +1 -1
- package/dist/syncedStreams.js.map +1 -1
- package/dist/syncedStreamsLoop.d.ts +1 -0
- package/dist/syncedStreamsLoop.d.ts.map +1 -1
- package/dist/syncedStreamsLoop.js +6 -1
- package/dist/syncedStreamsLoop.js.map +1 -1
- package/dist/tags.d.ts.map +1 -1
- package/dist/tags.js +15 -16
- package/dist/tags.js.map +1 -1
- package/dist/tests/bob_testUtils.d.ts.map +1 -1
- package/dist/tests/bob_testUtils.js +4 -1
- package/dist/tests/bob_testUtils.js.map +1 -1
- package/dist/tests/multi/entitlements/channelsWithEntitlements.test.js +3 -3
- package/dist/tests/multi/entitlements/channelsWithEntitlements.test.js.map +1 -1
- package/dist/tests/multi/sync-agent/timeline.test.js +12 -7
- package/dist/tests/multi/sync-agent/timeline.test.js.map +1 -1
- package/dist/tests/multi/transactions_SpaceReview.test.js +11 -17
- package/dist/tests/multi/transactions_SpaceReview.test.js.map +1 -1
- package/dist/tests/multi/transactions_Tip.test.js +16 -20
- package/dist/tests/multi/transactions_Tip.test.js.map +1 -1
- package/dist/tests/multi_ne/channels.test.js +6 -8
- package/dist/tests/multi_ne/channels.test.js.map +1 -1
- package/dist/tests/multi_ne/client.test.js +45 -62
- package/dist/tests/multi_ne/client.test.js.map +1 -1
- package/dist/tests/multi_ne/clientDecryptionExtensions.test.js +6 -11
- package/dist/tests/multi_ne/clientDecryptionExtensions.test.js.map +1 -1
- package/dist/tests/multi_ne/deviceKeyMessage.test.js +6 -4
- package/dist/tests/multi_ne/deviceKeyMessage.test.js.map +1 -1
- package/dist/tests/multi_ne/gdms.test.js +6 -1
- package/dist/tests/multi_ne/gdms.test.js.map +1 -1
- package/dist/tests/multi_ne/media.test.js +1 -1
- package/dist/tests/multi_ne/media.test.js.map +1 -1
- package/dist/tests/multi_ne/space.test.js +1 -1
- package/dist/tests/multi_ne/space.test.js.map +1 -1
- package/dist/tests/multi_ne/streamRpcClient.test.js +4 -1
- package/dist/tests/multi_ne/streamRpcClient.test.js.map +1 -1
- package/dist/tests/multi_ne/streamRpcClientSync.test.js +8 -2
- package/dist/tests/multi_ne/streamRpcClientSync.test.js.map +1 -1
- package/dist/tests/multi_ne/syncWithBlocks.test.js +4 -1
- package/dist/tests/multi_ne/syncWithBlocks.test.js.map +1 -1
- package/dist/tests/multi_ne/syncedStream.test.js +39 -7
- package/dist/tests/multi_ne/syncedStream.test.js.map +1 -1
- package/dist/tests/multi_ne/syncedStreams.test.js +9 -365
- package/dist/tests/multi_ne/syncedStreams.test.js.map +1 -1
- package/dist/tests/multi_ne/tags.test.js +114 -85
- package/dist/tests/multi_ne/tags.test.js.map +1 -1
- package/dist/tests/multi_ne/userSettings.test.js +15 -15
- package/dist/tests/multi_ne/userSettings.test.js.map +1 -1
- package/dist/tests/syncAgent_testUtils.d.ts.map +1 -1
- package/dist/tests/syncAgent_testUtils.js +4 -0
- package/dist/tests/syncAgent_testUtils.js.map +1 -1
- package/dist/tests/testDriver_testUtils.d.ts.map +1 -1
- package/dist/tests/testDriver_testUtils.js +4 -7
- package/dist/tests/testDriver_testUtils.js.map +1 -1
- package/dist/tests/testUtils.d.ts +1 -0
- package/dist/tests/testUtils.d.ts.map +1 -1
- package/dist/tests/testUtils.js +13 -4
- package/dist/tests/testUtils.js.map +1 -1
- package/dist/tests/unit/crypto.test.js +6 -0
- package/dist/tests/unit/crypto.test.js.map +1 -1
- package/dist/tests/unit/crypto_utils.test.js +1 -1
- package/dist/tests/unit/crypto_utils.test.js.map +1 -1
- package/dist/tests/unit/helpers/ConversationBuilder.d.ts +39 -0
- package/dist/tests/unit/helpers/ConversationBuilder.d.ts.map +1 -0
- package/dist/tests/unit/helpers/ConversationBuilder.js +171 -0
- package/dist/tests/unit/helpers/ConversationBuilder.js.map +1 -0
- package/dist/tests/unit/timelineStoreInterface.test.d.ts +5 -0
- package/dist/tests/unit/timelineStoreInterface.test.d.ts.map +1 -0
- package/dist/tests/unit/timelineStoreInterface.test.js +343 -0
- package/dist/tests/unit/timelineStoreInterface.test.js.map +1 -0
- package/dist/unauthenticatedClient.d.ts +2 -1
- package/dist/unauthenticatedClient.d.ts.map +1 -1
- package/dist/unauthenticatedClient.js +2 -2
- package/dist/unauthenticatedClient.js.map +1 -1
- package/package.json +11 -10
- package/dist/crypto_utils.d.ts +0 -15
- package/dist/crypto_utils.d.ts.map +0 -1
- package/dist/crypto_utils.js +0 -99
- package/dist/crypto_utils.js.map +0 -1
- package/dist/sync-agent/timeline/models/pendingReplacedEvents.d.ts +0 -12
- package/dist/sync-agent/timeline/models/pendingReplacedEvents.d.ts.map +0 -1
- package/dist/sync-agent/timeline/models/pendingReplacedEvents.js +0 -20
- package/dist/sync-agent/timeline/models/pendingReplacedEvents.js.map +0 -1
- package/dist/sync-agent/timeline/models/reactions.d.ts +0 -13
- package/dist/sync-agent/timeline/models/reactions.d.ts.map +0 -1
- package/dist/sync-agent/timeline/models/reactions.js +0 -67
- package/dist/sync-agent/timeline/models/reactions.js.map +0 -1
- package/dist/sync-agent/timeline/models/replacedEvents.d.ts +0 -18
- package/dist/sync-agent/timeline/models/replacedEvents.d.ts.map +0 -1
- package/dist/sync-agent/timeline/models/replacedEvents.js +0 -19
- package/dist/sync-agent/timeline/models/replacedEvents.js.map +0 -1
- package/dist/sync-agent/timeline/models/threadStats.d.ts +0 -14
- package/dist/sync-agent/timeline/models/threadStats.d.ts.map +0 -1
- package/dist/sync-agent/timeline/models/threadStats.js +0 -99
- package/dist/sync-agent/timeline/models/threadStats.js.map +0 -1
- package/dist/sync-agent/timeline/models/threads.d.ts +0 -14
- package/dist/sync-agent/timeline/models/threads.d.ts.map +0 -1
- package/dist/sync-agent/timeline/models/threads.js +0 -57
- package/dist/sync-agent/timeline/models/threads.js.map +0 -1
- package/dist/sync-agent/timeline/models/timelineEvent.d.ts +0 -12
- package/dist/sync-agent/timeline/models/timelineEvent.d.ts.map +0 -1
- package/dist/sync-agent/timeline/models/timelineEvent.js.map +0 -1
- package/dist/sync-agent/timeline/models/timelineEvents.d.ts +0 -13
- package/dist/sync-agent/timeline/models/timelineEvents.d.ts.map +0 -1
- package/dist/sync-agent/timeline/models/timelineEvents.js +0 -37
- package/dist/sync-agent/timeline/models/timelineEvents.js.map +0 -1
|
@@ -1,21 +1,14 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { TimelineEvents } from './models/timelineEvents';
|
|
3
|
-
import { Reactions } from './models/reactions';
|
|
4
|
-
import { RiverTimelineEvent, } from './models/timeline-types';
|
|
5
|
-
import { PendingReplacedEvents } from './models/pendingReplacedEvents';
|
|
6
|
-
import { ReplacedEvents } from './models/replacedEvents';
|
|
7
|
-
import { ThreadStats } from './models/threadStats';
|
|
8
|
-
import { Threads } from './models/threads';
|
|
1
|
+
import { Observable } from '../../observable/observable';
|
|
9
2
|
export class MessageTimeline {
|
|
10
3
|
streamId;
|
|
11
4
|
userId;
|
|
12
5
|
riverConnection;
|
|
13
|
-
events = new
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
6
|
+
events = new Observable([]);
|
|
7
|
+
threads = new Observable({});
|
|
8
|
+
threadsStats = new Observable({});
|
|
9
|
+
reactions = new Observable({});
|
|
10
|
+
tips = new Observable({});
|
|
11
|
+
unsubFn;
|
|
19
12
|
// TODO: figure out a better way to do online check
|
|
20
13
|
// lastestEventByUser = new TimelineEvents()
|
|
21
14
|
// TODO: we probably wont need this for a while
|
|
@@ -30,14 +23,13 @@ export class MessageTimeline {
|
|
|
30
23
|
}
|
|
31
24
|
initialize(stream) {
|
|
32
25
|
this.reset();
|
|
33
|
-
stream.
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
.
|
|
39
|
-
|
|
40
|
-
this.appendEvents(events, this.userId);
|
|
26
|
+
this.unsubFn = stream.view.streamsView.timelinesView.subscribe((state) => {
|
|
27
|
+
this.events.setValue(state.timelines[this.streamId]);
|
|
28
|
+
this.threads.setValue(state.threads[this.streamId]);
|
|
29
|
+
this.threadsStats.setValue(state.threadsStats[this.streamId]);
|
|
30
|
+
this.reactions.setValue(state.reactions[this.streamId]);
|
|
31
|
+
this.tips.setValue(state.tips[this.streamId]);
|
|
32
|
+
}, { fireImediately: true });
|
|
41
33
|
}
|
|
42
34
|
async scrollback() {
|
|
43
35
|
return this.riverConnection.callWithStream(this.streamId, async (client) => {
|
|
@@ -50,210 +42,13 @@ export class MessageTimeline {
|
|
|
50
42
|
});
|
|
51
43
|
}
|
|
52
44
|
reset() {
|
|
53
|
-
this.
|
|
54
|
-
this.
|
|
55
|
-
this.
|
|
56
|
-
this.
|
|
57
|
-
this.
|
|
58
|
-
this.
|
|
45
|
+
this.unsubFn?.();
|
|
46
|
+
this.unsubFn = undefined;
|
|
47
|
+
this.events.setValue([]);
|
|
48
|
+
this.threads.setValue({});
|
|
49
|
+
this.threadsStats.setValue({});
|
|
50
|
+
this.reactions.setValue({});
|
|
51
|
+
this.tips.setValue({});
|
|
59
52
|
}
|
|
60
|
-
onStreamUpdated = (_streamId, kind, change) => {
|
|
61
|
-
const { prepended, appended, updated, confirmed } = change;
|
|
62
|
-
if (prepended) {
|
|
63
|
-
const events = prepended
|
|
64
|
-
.map((event) => toEventSA(event, this.userId))
|
|
65
|
-
.filter((event) => this.filterFn(event, kind));
|
|
66
|
-
this.prependEvents(events, this.userId);
|
|
67
|
-
}
|
|
68
|
-
if (appended) {
|
|
69
|
-
const events = appended
|
|
70
|
-
.map((event) => toEventSA(event, this.userId))
|
|
71
|
-
.filter((event) => this.filterFn(event, kind));
|
|
72
|
-
this.appendEvents(events, this.userId);
|
|
73
|
-
}
|
|
74
|
-
if (updated) {
|
|
75
|
-
const events = updated
|
|
76
|
-
.map((event) => toEventSA(event, this.userId))
|
|
77
|
-
.filter((event) => this.filterFn(event, kind));
|
|
78
|
-
this.updateEvents(events, this.userId);
|
|
79
|
-
}
|
|
80
|
-
if (confirmed) {
|
|
81
|
-
const confirmations = confirmed.map((event) => ({
|
|
82
|
-
eventId: event.hashStr,
|
|
83
|
-
confirmedInBlockNum: event.miniblockNum,
|
|
84
|
-
confirmedEventNum: event.confirmedEventNum,
|
|
85
|
-
}));
|
|
86
|
-
this.confirmEvents(confirmations);
|
|
87
|
-
}
|
|
88
|
-
};
|
|
89
|
-
onStreamLocalEventUpdated = (_streamId, kind, localEventId, localEvent) => {
|
|
90
|
-
const event = toEventSA(localEvent, this.userId);
|
|
91
|
-
if (this.filterFn(event, kind)) {
|
|
92
|
-
this.updateEvent(event, localEventId);
|
|
93
|
-
}
|
|
94
|
-
};
|
|
95
|
-
prependEvents(events, userId) {
|
|
96
|
-
for (const event of events.reverse()) {
|
|
97
|
-
const editsEventId = getEditsId(event.content);
|
|
98
|
-
const redactsEventId = getRedactsId(event.content);
|
|
99
|
-
if (redactsEventId) {
|
|
100
|
-
const redactedEvent = makeRedactionEvent(event);
|
|
101
|
-
this.prependEvent(userId, event);
|
|
102
|
-
this.replaceEvent(userId, redactsEventId, redactedEvent);
|
|
103
|
-
}
|
|
104
|
-
else if (editsEventId) {
|
|
105
|
-
this.replaceEvent(userId, editsEventId, event);
|
|
106
|
-
}
|
|
107
|
-
else {
|
|
108
|
-
this.prependEvent(userId, event);
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
prependEvent = (_userId, inTimelineEvent) => {
|
|
113
|
-
const pendingReplace = this.pendingReplacedEvents.get(inTimelineEvent.eventId);
|
|
114
|
-
const timelineEvent = pendingReplace
|
|
115
|
-
? toReplacedMessageEvent(inTimelineEvent, pendingReplace)
|
|
116
|
-
: inTimelineEvent;
|
|
117
|
-
this.events.prepend(timelineEvent);
|
|
118
|
-
this.reactions.addEvent(timelineEvent);
|
|
119
|
-
this.threads.add(timelineEvent);
|
|
120
|
-
this.threadsStats.add(this.userId, timelineEvent, this.events.value);
|
|
121
|
-
};
|
|
122
|
-
appendEvent(_userId, event) {
|
|
123
|
-
this.events.append(event);
|
|
124
|
-
this.threads.add(event);
|
|
125
|
-
this.threadsStats.add(this.userId, event, this.events.value);
|
|
126
|
-
this.reactions.addEvent(event);
|
|
127
|
-
}
|
|
128
|
-
replaceEvent(_userId, replacedEventId, event) {
|
|
129
|
-
const eventIndex = this.events.value.findIndex((e) => e.eventId === replacedEventId ||
|
|
130
|
-
(e.localEventId && e.localEventId === event.localEventId));
|
|
131
|
-
if (eventIndex === -1) {
|
|
132
|
-
// if we didn't find an event to replace..
|
|
133
|
-
const pendingReplace = this.pendingReplacedEvents.get(replacedEventId);
|
|
134
|
-
if (pendingReplace?.latestEventNum &&
|
|
135
|
-
event?.latestEventNum &&
|
|
136
|
-
pendingReplace.latestEventNum > event.latestEventNum) {
|
|
137
|
-
// if we already have a replacement here, leave it, because we sync backwards, we assume the first one is the correct one
|
|
138
|
-
return;
|
|
139
|
-
}
|
|
140
|
-
else {
|
|
141
|
-
// otherwise add it to the pending list
|
|
142
|
-
this.pendingReplacedEvents.add(replacedEventId, event);
|
|
143
|
-
return;
|
|
144
|
-
}
|
|
145
|
-
}
|
|
146
|
-
const oldEvent = this.events.value[eventIndex];
|
|
147
|
-
if (event?.latestEventNum &&
|
|
148
|
-
oldEvent?.latestEventNum &&
|
|
149
|
-
event.latestEventNum < oldEvent.latestEventNum) {
|
|
150
|
-
return;
|
|
151
|
-
}
|
|
152
|
-
const newEvent = toReplacedMessageEvent(oldEvent, event);
|
|
153
|
-
this.events.replace(newEvent, eventIndex, this.events.value);
|
|
154
|
-
this.replacedEvents.add(event.eventId, oldEvent, newEvent);
|
|
155
|
-
this.reactions.removeEvent(oldEvent);
|
|
156
|
-
this.reactions.addEvent(newEvent);
|
|
157
|
-
this.threadsStats.remove(oldEvent);
|
|
158
|
-
this.threadsStats.add(this.userId, newEvent, this.events.value);
|
|
159
|
-
const threadTimeline = newEvent.threadParentId
|
|
160
|
-
? this.threads.get(newEvent.threadParentId)
|
|
161
|
-
: undefined;
|
|
162
|
-
const threadEventIndex = threadTimeline?.findIndex((e) => e.eventId === replacedEventId ||
|
|
163
|
-
(e.localEventId && e.localEventId === newEvent.localEventId)) ?? -1;
|
|
164
|
-
if (threadEventIndex !== -1) {
|
|
165
|
-
this.threads.replace(newEvent, threadEventIndex);
|
|
166
|
-
}
|
|
167
|
-
else {
|
|
168
|
-
this.threads.add(newEvent);
|
|
169
|
-
}
|
|
170
|
-
}
|
|
171
|
-
appendEvents(events, _userId) {
|
|
172
|
-
for (const event of events) {
|
|
173
|
-
this.processEvent(event);
|
|
174
|
-
}
|
|
175
|
-
}
|
|
176
|
-
updateEvents(events, _userId) {
|
|
177
|
-
for (const event of events) {
|
|
178
|
-
this.processEvent(event, event.eventId);
|
|
179
|
-
}
|
|
180
|
-
}
|
|
181
|
-
updateEvent(event, updatingEventId) {
|
|
182
|
-
this.processEvent(event, updatingEventId);
|
|
183
|
-
}
|
|
184
|
-
confirmEvents(confirmations) {
|
|
185
|
-
for (const confirmation of confirmations) {
|
|
186
|
-
this.confirmEvent(confirmation);
|
|
187
|
-
}
|
|
188
|
-
}
|
|
189
|
-
// Similar to replaceEvent, but we dont only swap out the confirmedInBlockNum and confirmedEventNum
|
|
190
|
-
confirmEvent(confirmation) {
|
|
191
|
-
const eventIndex = this.events.value.findIndex((e) => e.eventId === confirmation.eventId);
|
|
192
|
-
if (eventIndex === -1) {
|
|
193
|
-
return;
|
|
194
|
-
}
|
|
195
|
-
const oldEvent = this.events.value[eventIndex];
|
|
196
|
-
const newEvent = {
|
|
197
|
-
...oldEvent,
|
|
198
|
-
confirmedEventNum: confirmation.confirmedEventNum,
|
|
199
|
-
confirmedInBlockNum: confirmation.confirmedInBlockNum,
|
|
200
|
-
};
|
|
201
|
-
this.events.replace(newEvent, eventIndex, this.events.value);
|
|
202
|
-
this.replacedEvents.add(newEvent.eventId, oldEvent, newEvent);
|
|
203
|
-
// TODO: why we dont change reactions here?
|
|
204
|
-
}
|
|
205
|
-
// handle local pending events, redact and edits
|
|
206
|
-
processEvent(event, updatingEventId) {
|
|
207
|
-
const editsEventId = getEditsId(event.content);
|
|
208
|
-
const redactsEventId = getRedactsId(event.content);
|
|
209
|
-
if (redactsEventId) {
|
|
210
|
-
const redactedEvent = makeRedactionEvent(event);
|
|
211
|
-
this.replaceEvent(this.userId, redactsEventId, redactedEvent);
|
|
212
|
-
if (updatingEventId) {
|
|
213
|
-
// replace the formerly encrypted event
|
|
214
|
-
this.replaceEvent(this.userId, updatingEventId, event);
|
|
215
|
-
}
|
|
216
|
-
else {
|
|
217
|
-
this.appendEvent(this.userId, event);
|
|
218
|
-
}
|
|
219
|
-
}
|
|
220
|
-
else if (editsEventId) {
|
|
221
|
-
if (updatingEventId) {
|
|
222
|
-
// remove the formerly encrypted event
|
|
223
|
-
this.removeEvent(updatingEventId);
|
|
224
|
-
}
|
|
225
|
-
this.replaceEvent(this.userId, editsEventId, event);
|
|
226
|
-
}
|
|
227
|
-
else {
|
|
228
|
-
if (updatingEventId) {
|
|
229
|
-
// replace the formerly encrypted event
|
|
230
|
-
this.replaceEvent(this.userId, updatingEventId, event);
|
|
231
|
-
}
|
|
232
|
-
else {
|
|
233
|
-
this.appendEvent(this.userId, event);
|
|
234
|
-
}
|
|
235
|
-
}
|
|
236
|
-
}
|
|
237
|
-
removeEvent(eventId) {
|
|
238
|
-
const eventIndex = this.events.value.findIndex((e) => e.eventId == eventId);
|
|
239
|
-
if ((eventIndex ?? -1) < 0) {
|
|
240
|
-
return;
|
|
241
|
-
}
|
|
242
|
-
const event = this.events.value[eventIndex];
|
|
243
|
-
this.events.removeByIndex(eventIndex);
|
|
244
|
-
this.reactions.removeEvent(event);
|
|
245
|
-
this.threadsStats.remove(event);
|
|
246
|
-
this.threads.remove(event);
|
|
247
|
-
}
|
|
248
|
-
}
|
|
249
|
-
// todo this is duplicated
|
|
250
|
-
function getEditsId(content) {
|
|
251
|
-
return content?.kind === RiverTimelineEvent.ChannelMessage ? content.editsEventId : undefined;
|
|
252
|
-
}
|
|
253
|
-
// todo this is duplicated
|
|
254
|
-
function getRedactsId(content) {
|
|
255
|
-
return content?.kind === RiverTimelineEvent.RedactionActionEvent
|
|
256
|
-
? content.refEventId
|
|
257
|
-
: undefined;
|
|
258
53
|
}
|
|
259
54
|
//# sourceMappingURL=timeline.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timeline.js","sourceRoot":"","sources":["../../../src/sync-agent/timeline/timeline.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"timeline.js","sourceRoot":"","sources":["../../../src/sync-agent/timeline/timeline.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AAGxD,MAAM,OAAO,eAAe;IAgBZ;IACA;IACA;IAjBZ,MAAM,GAAG,IAAI,UAAU,CAAkB,EAAE,CAAC,CAAA;IAC5C,OAAO,GAAG,IAAI,UAAU,CAAe,EAAE,CAAC,CAAA;IAC1C,YAAY,GAAG,IAAI,UAAU,CAAkC,EAAE,CAAC,CAAA;IAClE,SAAS,GAAG,IAAI,UAAU,CAAmC,EAAE,CAAC,CAAA;IAChE,IAAI,GAAG,IAAI,UAAU,CAA8B,EAAE,CAAC,CAAA;IACtD,OAAO,CAA0B;IAEjC,mDAAmD;IACnD,4CAA4C;IAE5C,+CAA+C;IAC/C,QAAQ,GAA8D,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;QACpF,OAAO,IAAI,CAAA;IACf,CAAC,CAAA;IACD,YACY,QAAgB,EAChB,MAAc,EACd,eAAgC;QAFhC,aAAQ,GAAR,QAAQ,CAAQ;QAChB,WAAM,GAAN,MAAM,CAAQ;QACd,oBAAe,GAAf,eAAe,CAAiB;QAExC,EAAE;IACN,CAAC;IAED,UAAU,CAAC,MAAc;QACrB,IAAI,CAAC,KAAK,EAAE,CAAA;QACZ,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,SAAS,CAC1D,CAAC,KAAyB,EAAE,EAAE;YAC1B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAA;YACpD,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAA;YACnD,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAA;YAC7D,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAA;YACvD,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAA;QACjD,CAAC,EACD,EAAE,cAAc,EAAE,IAAI,EAAE,CAC3B,CAAA;IACL,CAAC;IAED,KAAK,CAAC,UAAU;QACZ,OAAO,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;YACvE,OAAO,MAAM;iBACR,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC;iBACzB,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,yBAAyB,EAAE,EAAE,EAAE,CAAC,CAAC;gBAChD,QAAQ;gBACR,yBAAyB;aAC5B,CAAC,CAAC,CAAA;QACX,CAAC,CAAC,CAAA;IACN,CAAC;IAEO,KAAK;QACT,IAAI,CAAC,OAAO,EAAE,EAAE,CAAA;QAChB,IAAI,CAAC,OAAO,GAAG,SAAS,CAAA;QACxB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;QACxB,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;QACzB,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;QAC9B,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;QAC3B,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;IAC1B,CAAC;CACJ"}
|
package/dist/syncedStream.d.ts
CHANGED
|
@@ -6,11 +6,12 @@ import { DLogger } from '@towns-protocol/dlog';
|
|
|
6
6
|
import { IPersistenceStore, LoadedStream } from './persistenceStore';
|
|
7
7
|
import { StreamEvents } from './streamEvents';
|
|
8
8
|
import { ISyncedStream } from './syncedStreamsLoop';
|
|
9
|
+
import { StreamsView } from './streams-view/streamsView';
|
|
9
10
|
export declare class SyncedStream extends Stream implements ISyncedStream {
|
|
10
11
|
log: DLogger;
|
|
11
12
|
isUpToDate: boolean;
|
|
12
13
|
readonly persistenceStore: IPersistenceStore;
|
|
13
|
-
constructor(userId: string, streamId: string, clientEmitter: TypedEmitter<StreamEvents>, logEmitFromStream: DLogger, persistenceStore: IPersistenceStore);
|
|
14
|
+
constructor(userId: string, streamId: string, streamsView: StreamsView, clientEmitter: TypedEmitter<StreamEvents>, logEmitFromStream: DLogger, persistenceStore: IPersistenceStore);
|
|
14
15
|
initializeFromPersistence(persistedData?: LoadedStream): Promise<boolean>;
|
|
15
16
|
initialize(nextSyncCookie: SyncCookie, events: ParsedEvent[], snapshot: Snapshot, miniblocks: ParsedMiniblock[], prependedMiniblocks: ParsedMiniblock[], prevSnapshotMiniblockNum: bigint, cleartexts: Record<string, Uint8Array | string> | undefined): Promise<void>;
|
|
16
17
|
initializeFromResponse(response: ParsedStreamResponse): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"syncedStream.d.ts","sourceRoot":"","sources":["../src/syncedStream.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,eAAe,CAAA;AACxC,OAAO,EAEH,QAAQ,EACR,UAAU,EAEb,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAC5F,OAAO,EAAE,OAAO,EAAoC,MAAM,sBAAsB,CAAA;AAEhF,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"syncedStream.d.ts","sourceRoot":"","sources":["../src/syncedStream.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,eAAe,CAAA;AACxC,OAAO,EAEH,QAAQ,EACR,UAAU,EAEb,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAC5F,OAAO,EAAE,OAAO,EAAoC,MAAM,sBAAsB,CAAA;AAEhF,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAEnD,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AAExD,qBAAa,YAAa,SAAQ,MAAO,YAAW,aAAa;IAC7D,GAAG,EAAE,OAAO,CAAA;IACZ,UAAU,UAAQ;IAClB,QAAQ,CAAC,gBAAgB,EAAE,iBAAiB,CAAA;gBAExC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,WAAW,EACxB,aAAa,EAAE,YAAY,CAAC,YAAY,CAAC,EACzC,iBAAiB,EAAE,OAAO,EAC1B,gBAAgB,EAAE,iBAAiB;IAOjC,yBAAyB,CAAC,aAAa,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC;IA0BzE,UAAU,CACZ,cAAc,EAAE,UAAU,EAC1B,MAAM,EAAE,WAAW,EAAE,EACrB,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,eAAe,EAAE,EAC7B,mBAAmB,EAAE,eAAe,EAAE,EACtC,wBAAwB,EAAE,MAAM,EAChC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CAAC,GAAG,SAAS,GAC5D,OAAO,CAAC,IAAI,CAAC;IA2BV,sBAAsB,CAAC,QAAQ,EAAE,oBAAoB;IAerD,YAAY,CACd,MAAM,EAAE,WAAW,EAAE,EACrB,cAAc,EAAE,UAAU,EAC1B,QAAQ,EAAE,cAAc,GAAG,SAAS,EACpC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CAAC,GAAG,SAAS,GAC5D,OAAO,CAAC,IAAI,CAAC;YA4BF,iBAAiB;IAiE/B,OAAO,CAAC,YAAY;IAQpB,aAAa,IAAI,IAAI;CAGxB"}
|
package/dist/syncedStream.js
CHANGED
|
@@ -7,8 +7,8 @@ export class SyncedStream extends Stream {
|
|
|
7
7
|
log;
|
|
8
8
|
isUpToDate = false;
|
|
9
9
|
persistenceStore;
|
|
10
|
-
constructor(userId, streamId, clientEmitter, logEmitFromStream, persistenceStore) {
|
|
11
|
-
super(userId, streamId, clientEmitter, logEmitFromStream);
|
|
10
|
+
constructor(userId, streamId, streamsView, clientEmitter, logEmitFromStream, persistenceStore) {
|
|
11
|
+
super(userId, streamId, streamsView, clientEmitter, logEmitFromStream);
|
|
12
12
|
this.log = dlog('csb:syncedStream', { defaultEnabled: false }).extend(userId);
|
|
13
13
|
this.persistenceStore = persistenceStore;
|
|
14
14
|
}
|
|
@@ -49,28 +49,30 @@ export class SyncedStream extends Stream {
|
|
|
49
49
|
this.markUpToDate();
|
|
50
50
|
}
|
|
51
51
|
async appendEvents(events, nextSyncCookie, snapshot, cleartexts) {
|
|
52
|
+
const minipoolEvents = new Map(Array.from(this.view.minipoolEvents.entries())
|
|
53
|
+
.filter(([_, event]) => isDefined(event.remoteEvent))
|
|
54
|
+
.map(([hash, event]) => [hash, event.remoteEvent]));
|
|
52
55
|
await super.appendEvents(events, nextSyncCookie, snapshot, cleartexts);
|
|
53
56
|
for (const event of events) {
|
|
54
57
|
const payload = event.event.payload;
|
|
55
58
|
switch (payload.case) {
|
|
56
59
|
case 'miniblockHeader': {
|
|
57
|
-
await this.onMiniblockHeader(payload.value, event, event.hash, snapshot);
|
|
60
|
+
await this.onMiniblockHeader(payload.value, event, event.hash, snapshot, minipoolEvents);
|
|
58
61
|
break;
|
|
59
62
|
}
|
|
60
63
|
default:
|
|
64
|
+
minipoolEvents.set(event.hashStr, event);
|
|
61
65
|
break;
|
|
62
66
|
}
|
|
63
67
|
}
|
|
64
68
|
this.markUpToDate();
|
|
65
69
|
}
|
|
66
|
-
async onMiniblockHeader(miniblockHeader, miniblockEvent, hash, snapshot) {
|
|
70
|
+
async onMiniblockHeader(miniblockHeader, miniblockEvent, hash, snapshot, viewMinipoolEvents) {
|
|
67
71
|
this.log('Received miniblock header', miniblockHeader.miniblockNum.toString(), this.streamId);
|
|
68
72
|
const eventHashes = miniblockHeader.eventHashes.map(bin_toHexString);
|
|
69
|
-
const events = eventHashes
|
|
70
|
-
.map((hash) => this.view.events.get(hash)?.remoteEvent)
|
|
71
|
-
.filter(isDefined);
|
|
73
|
+
const events = eventHashes.map((hash) => viewMinipoolEvents.get(hash)).filter(isDefined);
|
|
72
74
|
if (events.length !== eventHashes.length) {
|
|
73
|
-
throw new Error(
|
|
75
|
+
throw new Error(`Couldn't find event for hash in miniblock ${miniblockHeader.miniblockNum.toString()} ${eventHashes.join(', ')} ${Array.from(viewMinipoolEvents.keys()).join(', ')}`);
|
|
74
76
|
}
|
|
75
77
|
const miniblock = {
|
|
76
78
|
hash: hash,
|
|
@@ -88,10 +90,7 @@ export class SyncedStream extends Stream {
|
|
|
88
90
|
if (!syncCookie) {
|
|
89
91
|
return;
|
|
90
92
|
}
|
|
91
|
-
const minipoolEvents = this.view.
|
|
92
|
-
.filter((e) => e.confirmedEventNum === undefined)
|
|
93
|
-
.map((e) => e.remoteEvent)
|
|
94
|
-
.filter(isDefined);
|
|
93
|
+
const minipoolEvents = Array.from(this.view.minipoolEvents.values());
|
|
95
94
|
const lastSnapshotMiniblockNum = miniblock.header.snapshot !== undefined || miniblock.header.snapshotHash !== undefined
|
|
96
95
|
? miniblock.header.miniblockNum
|
|
97
96
|
: miniblock.header.prevSnapshotMiniblockNum;
|
package/dist/syncedStream.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"syncedStream.js","sourceRoot":"","sources":["../src/syncedStream.ts"],"names":[],"mappings":"AACA,OAAO,EAIH,2BAA2B,GAC9B,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAEjC,OAAO,EAAW,SAAS,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAA;AAChF,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAInC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"syncedStream.js","sourceRoot":"","sources":["../src/syncedStream.ts"],"names":[],"mappings":"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"}
|
package/dist/syncedStreams.d.ts
CHANGED
|
@@ -19,6 +19,7 @@ export declare class SyncedStreams {
|
|
|
19
19
|
private rpcClient;
|
|
20
20
|
constructor(userId: string, rpcClient: StreamRpcClient, clientEmitter: TypedEmitter<SyncedStreamEvents>, unpackEnvelopeOpts: UnpackEnvelopeOpts | undefined, logId: string, streamOpts?: {
|
|
21
21
|
useModifySync?: boolean;
|
|
22
|
+
useSharedSyncer?: boolean;
|
|
22
23
|
} | undefined);
|
|
23
24
|
get syncState(): SyncState;
|
|
24
25
|
get pingInfo(): PingInfo | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"syncedStreams.d.ts","sourceRoot":"","sources":["../src/syncedStreams.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAElD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AACnD,OAAO,YAAY,MAAM,eAAe,CAAA;AAGxC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAqB,MAAM,qBAAqB,CAAA;AAC5E,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAA;AAE3C,qBAAa,aAAa;IAmBlB,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IACnC,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;IApBhC,OAAO,CAAC,iBAAiB,CAA+B;IACxD,OAAO,CAAC,eAAe,CAAyB;IAEhD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAQ;IAE/B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAuC;IAE/D,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAElC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAkC;IAEhE,OAAO,CAAC,SAAS,CAAiB;gBAG9B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,eAAe,EAC1B,aAAa,EAAE,YAAY,CAAC,kBAAkB,CAAC,EAC9B,kBAAkB,EAAE,kBAAkB,GAAG,SAAS,EAClD,KAAK,EAAE,MAAM,EACb,UAAU,CAAC,
|
|
1
|
+
{"version":3,"file":"syncedStreams.d.ts","sourceRoot":"","sources":["../src/syncedStreams.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAElD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AACnD,OAAO,YAAY,MAAM,eAAe,CAAA;AAGxC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAqB,MAAM,qBAAqB,CAAA;AAC5E,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAA;AAE3C,qBAAa,aAAa;IAmBlB,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IACnC,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;IApBhC,OAAO,CAAC,iBAAiB,CAA+B;IACxD,OAAO,CAAC,eAAe,CAAyB;IAEhD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAQ;IAE/B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAuC;IAE/D,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAElC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAkC;IAEhE,OAAO,CAAC,SAAS,CAAiB;gBAG9B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,eAAe,EAC1B,aAAa,EAAE,YAAY,CAAC,kBAAkB,CAAC,EAC9B,kBAAkB,EAAE,kBAAkB,GAAG,SAAS,EAClD,KAAK,EAAE,MAAM,EACb,UAAU,CAAC,EACtB;QAAE,aAAa,CAAC,EAAE,OAAO,CAAC;QAAC,eAAe,CAAC,EAAE,OAAO,CAAA;KAAE,GACtD,SAAS;IASnB,IAAW,SAAS,IAAI,SAAS,CAEhC;IAED,IAAW,QAAQ,IAAI,QAAQ,GAAG,SAAS,CAE1C;IAEM,KAAK;;;;;;IAIL,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU,GAAG,OAAO;IAI3C,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU,GAAG,YAAY,GAAG,SAAS;IAI5D,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU,EAAE,MAAM,EAAE,YAAY,GAAG,IAAI;IAO9D,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE;IAK1C,MAAM,CAAC,UAAU,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI;IAM7C,IAAI,IAAI,MAAM;IAId,SAAS,IAAI,MAAM,GAAG,SAAS;IAI/B,UAAU,IAAI,YAAY,EAAE;IAI5B,YAAY,IAAI,MAAM,EAAE;IAIxB,sBAAsB,CAAC,QAAQ,EAAE,OAAO;IAKxC,gBAAgB;IAiBV,QAAQ;IAMd,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,GAAG,IAAI;IAezD,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;CAWpF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"syncedStreams.js","sourceRoot":"","sources":["../src/syncedStreams.ts"],"names":[],"mappings":"AACA,OAAO,EAAW,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAItE,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AACnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,MAAM,CAAA;AACvC,OAAO,EAAY,SAAS,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAI5E,MAAM,OAAO,aAAa;IAmBD;IACA;IACA;IApBb,iBAAiB,CAA+B;IAChD,eAAe,GAAgB,IAAI,GAAG,EAAE,CAAA;IAChD,gCAAgC;IACf,MAAM,CAAQ;IAC/B,iCAAiC;IAChB,OAAO,GAA8B,IAAI,GAAG,EAAE,CAAA;IAC/D,UAAU;IACO,GAAG,CAAS;IACZ,QAAQ,CAAS;IAClC,2EAA2E;IAC1D,aAAa,CAAkC;IAChE,4DAA4D;IACpD,SAAS,CAAiB;IAElC,YACI,MAAc,EACd,SAA0B,EAC1B,aAA+C,EAC9B,kBAAkD,EAClD,KAAa,EACb,
|
|
1
|
+
{"version":3,"file":"syncedStreams.js","sourceRoot":"","sources":["../src/syncedStreams.ts"],"names":[],"mappings":"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"}
|
|
@@ -84,6 +84,7 @@ export declare class SyncedStreamsLoop {
|
|
|
84
84
|
stream: ISyncedStream;
|
|
85
85
|
}[], logNamespace: string, unpackEnvelopeOpts: UnpackEnvelopeOpts | undefined, highPriorityIds: Set<string>, streamOpts: {
|
|
86
86
|
useModifySync?: boolean;
|
|
87
|
+
useSharedSyncer?: boolean;
|
|
87
88
|
} | undefined);
|
|
88
89
|
get syncState(): SyncState;
|
|
89
90
|
stats(): {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"syncedStreamsLoop.d.ts","sourceRoot":"","sources":["../src/syncedStreamsLoop.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"syncedStreamsLoop.d.ts","sourceRoot":"","sources":["../src/syncedStreamsLoop.ts"],"names":[],"mappings":"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"}
|
|
@@ -277,7 +277,12 @@ export class SyncedStreamsLoop {
|
|
|
277
277
|
this.syncId = undefined;
|
|
278
278
|
const streams = this.rpcClient.syncStreams({
|
|
279
279
|
syncPos: syncCookies,
|
|
280
|
-
}, {
|
|
280
|
+
}, {
|
|
281
|
+
timeoutMs: -1,
|
|
282
|
+
headers: this.streamOpts?.useSharedSyncer
|
|
283
|
+
? { 'X-Use-Shared-Sync': 'true' }
|
|
284
|
+
: undefined,
|
|
285
|
+
});
|
|
281
286
|
const iterator = streams[Symbol.asyncIterator]();
|
|
282
287
|
while (this.syncState === SyncState.Syncing ||
|
|
283
288
|
this.syncState === SyncState.Starting) {
|