misskey/src/server/api/endpoints/games/reversi/invitations.ts
YuzuRyo61 a07d753da8
APIドキュメントの改善 (#6757)
* Update api document in admin/announcements

* Update api document in announcements

* Update api document in i/read-announcements

* Update api document in username/available

* Update api document & Fix typo in API 403 error

* Update api document

* Update api document

* Update api document

* Fix API permission definition

* Update api document

* Update api document

* Update api document

* Update api document

* Update api document

* Update api document

* Update api document

* Update api document

* Fix bug in users (api)

* Apply reviews #6757

* Apply reviews #6757

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2021-03-06 22:34:11 +09:00

59 lines
1.3 KiB
TypeScript

import define from '../../../define';
import { ReversiMatchings } from '../../../../../models';
export const meta = {
tags: ['games'],
requireCredential: true as const,
res: {
type: 'array' as const,
optional: false as const, nullable: false as const,
items: {
type: 'object' as const,
optional: false as const, nullable: false as const,
properties: {
id: {
type: 'string' as const,
optional: false as const, nullable: false as const,
format: 'id'
},
createdAt: {
type: 'string' as const,
optional: false as const, nullable: false as const,
format: 'date-time'
},
parentId: {
type: 'string' as const,
optional: false as const, nullable: false as const,
format: 'id'
},
parent: {
type: 'object' as const,
optional: false as const, nullable: false as const,
ref: 'User'
},
childId: {
type: 'string' as const,
optional: false as const, nullable: false as const,
format: 'id'
},
child: {
type: 'object' as const,
optional: false as const, nullable: false as const,
ref: 'User'
}
}
}
}
};
export default define(meta, async (ps, user) => {
// Find session
const invitations = await ReversiMatchings.find({
childId: user.id
});
return await Promise.all(invitations.map((i) => ReversiMatchings.pack(i, user)));
});