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,52 @@
import { UserGroupJoinings, UserGroupInvitations } from "../../../../../../models/index.js";
import { genId } from "../../../../../../misc/gen-id.js";
import { ApiError } from "../../../../error.js";
import define from "../../../../define.js";
export const meta = {
tags: [
"groups",
"users"
],
requireCredential: true,
kind: "write:user-groups",
description: "Join a group the authenticated user has been invited to.",
errors: {
noSuchInvitation: {
message: "No such invitation.",
code: "NO_SUCH_INVITATION",
id: "98c11eca-c890-4f42-9806-c8c8303ebb5e"
}
}
};
export const paramDef = {
type: "object",
properties: {
invitationId: {
type: "string",
format: "misskey:id"
}
},
required: [
"invitationId"
]
};
export default define(meta, paramDef, async (ps, user)=>{
// Fetch the invitation
const invitation = await UserGroupInvitations.findOneBy({
id: ps.invitationId
});
if (invitation == null) {
throw new ApiError(meta.errors.noSuchInvitation);
}
if (invitation.userId !== user.id) {
throw new ApiError(meta.errors.noSuchInvitation);
}
// Push the user
await UserGroupJoinings.insert({
id: genId(),
createdAt: new Date(),
userId: user.id,
userGroupId: invitation.userGroupId
});
UserGroupInvitations.delete(invitation.id);
});
@@ -0,0 +1,44 @@
import { UserGroupInvitations } from "../../../../../../models/index.js";
import define from "../../../../define.js";
import { ApiError } from "../../../../error.js";
export const meta = {
tags: [
"groups",
"users"
],
requireCredential: true,
kind: "write:user-groups",
description: "Delete an existing group invitation for the authenticated user without joining the group.",
errors: {
noSuchInvitation: {
message: "No such invitation.",
code: "NO_SUCH_INVITATION",
id: "ad7471d4-2cd9-44b4-ac68-e7136b4ce656"
}
}
};
export const paramDef = {
type: "object",
properties: {
invitationId: {
type: "string",
format: "misskey:id"
}
},
required: [
"invitationId"
]
};
export default define(meta, paramDef, async (ps, user)=>{
// Fetch the invitation
const invitation = await UserGroupInvitations.findOneBy({
id: ps.invitationId
});
if (invitation == null) {
throw new ApiError(meta.errors.noSuchInvitation);
}
if (invitation.userId !== user.id) {
throw new ApiError(meta.errors.noSuchInvitation);
}
await UserGroupInvitations.delete(invitation.id);
});