Fixed 267U.pre2

This commit is contained in:
2026-07-26 18:25:37 +09:00
parent 50bfaeafdf
commit 317d00a284
1286 changed files with 80222 additions and 1 deletions
@@ -0,0 +1,38 @@
import { publishMainStream } from "../../../../services/stream.js";
import define from "../../define.js";
import { MessagingMessages, UserGroupJoinings } from "../../../../models/index.js";
export const meta = {
tags: [
"account",
"messaging"
],
requireCredential: true,
kind: "write:account"
};
export const paramDef = {
type: "object",
properties: {},
required: []
};
export default define(meta, paramDef, async (ps, user)=>{
// Update documents
await MessagingMessages.update({
recipientId: user.id,
isRead: false
}, {
isRead: true
});
const joinings = await UserGroupJoinings.findBy({
userId: user.id
});
await Promise.all(joinings.map((j)=>MessagingMessages.createQueryBuilder().update().set({
reads: ()=>`array_append("reads", '${user.id}')`
}).where("groupId = :groupId", {
groupId: j.userGroupId
}).andWhere("userId != :userId", {
userId: user.id
}).andWhere("NOT (:userId = ANY(reads))", {
userId: user.id
}).execute()));
publishMainStream(user.id, "readAllMessagingMessages");
});