forked from mystiq/hydrogen-web
fix lint
This commit is contained in:
parent
826de7e9cb
commit
a61f052fe8
2 changed files with 31 additions and 57 deletions
|
@ -191,32 +191,6 @@ export function tests() {
|
|||
};
|
||||
}
|
||||
|
||||
function createRoomResponse(stateEvents, timelineEvents) {
|
||||
if (!Array.isArray(timelineEvents)) {
|
||||
timelineEvents = [timelineEvents];
|
||||
}
|
||||
if (!Array.isArray(stateEvents)) {
|
||||
stateEvents = [stateEvents];
|
||||
}
|
||||
return {
|
||||
timeline: {
|
||||
limited: false,
|
||||
events: timelineEvents,
|
||||
},
|
||||
state: {
|
||||
events: stateEvents
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
function createTimelineResponse(timelineEvents) {
|
||||
return createRoomResponse([], timelineEvents)
|
||||
}
|
||||
|
||||
function createStateReponse(stateEvents) {
|
||||
return createRoomResponse(stateEvents, []);
|
||||
}
|
||||
|
||||
function createStorage(initialMembers = []) {
|
||||
const members = new Map();
|
||||
for (const m of initialMembers) {
|
||||
|
|
|
@ -149,35 +149,37 @@ export class SyncWriter {
|
|||
const entries = [];
|
||||
const updatedEntries = [];
|
||||
// only create a fragment when we will really write an event
|
||||
currentKey = await this._ensureLiveFragment(currentKey, entries, timeline, txn, log);
|
||||
log.set("timelineEvents", timelineEvents.length);
|
||||
let timelineStateEventCount = 0;
|
||||
for(const event of timelineEvents) {
|
||||
// store event in timeline
|
||||
currentKey = currentKey.nextKey();
|
||||
const storageEntry = createEventEntry(currentKey, this._roomId, event);
|
||||
let member = await memberSync.lookupMemberAtEvent(event.sender, event, txn);
|
||||
if (member) {
|
||||
storageEntry.displayName = member.displayName;
|
||||
storageEntry.avatarUrl = member.avatarUrl;
|
||||
}
|
||||
txn.timelineEvents.insert(storageEntry);
|
||||
const entry = new EventEntry(storageEntry, this._fragmentIdComparer);
|
||||
entries.push(entry);
|
||||
const updatedRelationTargetEntries = await this._relationWriter.writeRelation(entry, txn, log);
|
||||
if (updatedRelationTargetEntries) {
|
||||
updatedEntries.push(...updatedRelationTargetEntries);
|
||||
}
|
||||
// update state events after writing event, so for a member event,
|
||||
// we only update the member info after having written the member event
|
||||
// to the timeline, as we want that event to have the old profile info.
|
||||
// member events are written prior by MemberWriter.
|
||||
if (typeof event.state_key === "string" && event.type !== MEMBER_EVENT_TYPE) {
|
||||
timelineStateEventCount += 1;
|
||||
txn.roomState.set(this._roomId, event);
|
||||
if (timelineEvents?.length) {
|
||||
currentKey = await this._ensureLiveFragment(currentKey, entries, timeline, txn, log);
|
||||
log.set("timelineEvents", timelineEvents.length);
|
||||
let timelineStateEventCount = 0;
|
||||
for(const event of timelineEvents) {
|
||||
// store event in timeline
|
||||
currentKey = currentKey.nextKey();
|
||||
const storageEntry = createEventEntry(currentKey, this._roomId, event);
|
||||
let member = await memberSync.lookupMemberAtEvent(event.sender, event, txn);
|
||||
if (member) {
|
||||
storageEntry.displayName = member.displayName;
|
||||
storageEntry.avatarUrl = member.avatarUrl;
|
||||
}
|
||||
txn.timelineEvents.insert(storageEntry);
|
||||
const entry = new EventEntry(storageEntry, this._fragmentIdComparer);
|
||||
entries.push(entry);
|
||||
const updatedRelationTargetEntries = await this._relationWriter.writeRelation(entry, txn, log);
|
||||
if (updatedRelationTargetEntries) {
|
||||
updatedEntries.push(...updatedRelationTargetEntries);
|
||||
}
|
||||
// update state events after writing event, so for a member event,
|
||||
// we only update the member info after having written the member event
|
||||
// to the timeline, as we want that event to have the old profile info.
|
||||
// member events are written prior by MemberWriter.
|
||||
if (typeof event.state_key === "string" && event.type !== MEMBER_EVENT_TYPE) {
|
||||
timelineStateEventCount += 1;
|
||||
txn.roomState.set(this._roomId, event);
|
||||
}
|
||||
}
|
||||
log.set("timelineStateEventCount", timelineStateEventCount);
|
||||
}
|
||||
log.set("timelineStateEventCount", timelineStateEventCount);
|
||||
return {currentKey, entries, updatedEntries};
|
||||
}
|
||||
|
||||
|
@ -236,10 +238,8 @@ export class SyncWriter {
|
|||
if (stateEvents) {
|
||||
await this._writeStateEvents(roomResponse, txn, log);
|
||||
}
|
||||
if (timelineEvents?.length) {
|
||||
const {currentKey, entries, updatedEntries} =
|
||||
await this._writeTimeline(timelineEvents, timeline, memberSync, this._lastLiveKey, txn, log);
|
||||
}
|
||||
const {currentKey, entries, updatedEntries} =
|
||||
await this._writeTimeline(timelineEvents, timeline, memberSync, this._lastLiveKey, txn, log);
|
||||
const memberChanges = await memberSync.write(txn);
|
||||
return {entries, updatedEntries, newLiveKey: currentKey, memberChanges};
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue