Merge branch 'develop' into schedule-note
This commit is contained in:
commit
8d28c2f9d7
38 changed files with 806 additions and 339 deletions
|
|
@ -60,11 +60,21 @@ export class AntennaService implements OnApplicationShutdown {
|
|||
lastUsedAt: new Date(body.lastUsedAt),
|
||||
});
|
||||
break;
|
||||
case 'antennaUpdated':
|
||||
this.antennas[this.antennas.findIndex(a => a.id === body.id)] = {
|
||||
...body,
|
||||
lastUsedAt: new Date(body.lastUsedAt),
|
||||
};
|
||||
case 'antennaUpdated': {
|
||||
const idx = this.antennas.findIndex(a => a.id === body.id);
|
||||
if (idx >= 0) {
|
||||
this.antennas[idx] = {
|
||||
...body,
|
||||
lastUsedAt: new Date(body.lastUsedAt),
|
||||
};
|
||||
} else {
|
||||
// サーバ起動時にactiveじゃなかった場合、リストに持っていないので追加する必要あり
|
||||
this.antennas.push({
|
||||
...body,
|
||||
lastUsedAt: new Date(body.lastUsedAt),
|
||||
});
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 'antennaDeleted':
|
||||
this.antennas = this.antennas.filter(a => a.id !== body.id);
|
||||
|
|
|
|||
|
|
@ -89,6 +89,9 @@ export class RoleService implements OnApplicationShutdown {
|
|||
@Inject(DI.redis)
|
||||
private redisClient: Redis.Redis,
|
||||
|
||||
@Inject(DI.redisForTimelines)
|
||||
private redisForTimelines: Redis.Redis,
|
||||
|
||||
@Inject(DI.redisForSub)
|
||||
private redisForSub: Redis.Redis,
|
||||
|
||||
|
|
@ -479,7 +482,7 @@ export class RoleService implements OnApplicationShutdown {
|
|||
public async addNoteToRoleTimeline(note: Packed<'Note'>): Promise<void> {
|
||||
const roles = await this.getUserRoles(note.userId);
|
||||
|
||||
const redisPipeline = this.redisClient.pipeline();
|
||||
const redisPipeline = this.redisForTimelines.pipeline();
|
||||
|
||||
for (const role of roles) {
|
||||
this.funoutTimelineService.push(`roleTimeline:${role.id}`, note.id, 1000, redisPipeline);
|
||||
|
|
|
|||
|
|
@ -198,12 +198,14 @@ export class NotificationEntityService implements OnModuleInit {
|
|||
});
|
||||
} else if (notification.type === 'renote:grouped') {
|
||||
const users = await Promise.all(notification.userIds.map(userId => {
|
||||
const user = hint?.packedUsers != null
|
||||
? hint.packedUsers.get(userId)
|
||||
: this.userEntityService.pack(userId!, { id: meId }, {
|
||||
detail: false,
|
||||
});
|
||||
return user;
|
||||
const packedUser = hint?.packedUsers != null ? hint.packedUsers.get(userId) : null;
|
||||
if (packedUser) {
|
||||
return packedUser;
|
||||
}
|
||||
|
||||
return this.userEntityService.pack(userId, { id: meId }, {
|
||||
detail: false,
|
||||
});
|
||||
}));
|
||||
return await awaitAll({
|
||||
id: notification.id,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue