diff options
author | crupest <crupest@outlook.com> | 2020-08-08 21:50:10 +0800 |
---|---|---|
committer | crupest <crupest@outlook.com> | 2020-08-08 21:50:10 +0800 |
commit | 5d9107714565e92cbf23f2933a3e7e07a6086b46 (patch) | |
tree | 78f102d5295324f2255dce5148a5ad62d5614b47 /Timeline/ClientApp/src | |
parent | 2ea82a4325a7d80718dfb11dd225cb2c9e7357bd (diff) | |
download | timeline-5d9107714565e92cbf23f2933a3e7e07a6086b46.tar.gz timeline-5d9107714565e92cbf23f2933a3e7e07a6086b46.tar.bz2 timeline-5d9107714565e92cbf23f2933a3e7e07a6086b46.zip |
...
Diffstat (limited to 'Timeline/ClientApp/src')
-rw-r--r-- | Timeline/ClientApp/src/app/data/timeline.ts | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/Timeline/ClientApp/src/app/data/timeline.ts b/Timeline/ClientApp/src/app/data/timeline.ts index 31f6657f..d2cfcf9b 100644 --- a/Timeline/ClientApp/src/app/data/timeline.ts +++ b/Timeline/ClientApp/src/app/data/timeline.ts @@ -2,6 +2,7 @@ import React from 'react'; import XRegExp from 'xregexp';
import { Observable, from, combineLatest, of } from 'rxjs';
import { map, switchMap, filter } from 'rxjs/operators';
+import { uniqBy } from 'lodash';
import { convertError } from '../utilities/rxjs';
@@ -132,6 +133,11 @@ export class TimelineService { const httpTimeline = await getHttpTimelineClient().getTimeline(
timelineName
);
+
+ [httpTimeline.owner, ...httpTimeline.members].forEach(
+ (user) => void userInfoService.saveUser(user)
+ );
+
const timeline = this.convertHttpTimelineToData(httpTimeline);
await dataStorage.setItem<TimelineData>(
`timeline.${timelineName}`,
@@ -309,6 +315,12 @@ export class TimelineService { timelineName,
userService.currentUser?.token
);
+
+ uniqBy(
+ httpPosts.map((post) => post.author),
+ 'username'
+ ).forEach((user) => void userInfoService.saveUser(user));
+
const posts = this.convertHttpPostToDataList(httpPosts);
await dataStorage.setItem<TimelinePostData[]>(dataKey, posts);
|