summaryrefslogtreecommitdiff
path: root/src/server/api/endpoints/room
diff options
context:
space:
mode:
authorsyuilo <Syuilotan@yahoo.co.jp>2021-11-12 02:02:25 +0900
committersyuilo <Syuilotan@yahoo.co.jp>2021-11-12 02:02:25 +0900
commit0e4a111f81cceed275d9bec2695f6e401fb654d8 (patch)
tree40874799472fa07416f17b50a398ac33b7771905 /src/server/api/endpoints/room
parentupdate deps (diff)
downloadsharkey-0e4a111f81cceed275d9bec2695f6e401fb654d8.tar.gz
sharkey-0e4a111f81cceed275d9bec2695f6e401fb654d8.tar.bz2
sharkey-0e4a111f81cceed275d9bec2695f6e401fb654d8.zip
refactoring
Resolve #7779
Diffstat (limited to 'src/server/api/endpoints/room')
-rw-r--r--src/server/api/endpoints/room/show.ts159
-rw-r--r--src/server/api/endpoints/room/update.ts51
2 files changed, 0 insertions, 210 deletions
diff --git a/src/server/api/endpoints/room/show.ts b/src/server/api/endpoints/room/show.ts
deleted file mode 100644
index a6461d4a6e..0000000000
--- a/src/server/api/endpoints/room/show.ts
+++ /dev/null
@@ -1,159 +0,0 @@
-import $ from 'cafy';
-import define from '../../define';
-import { ApiError } from '../../error';
-import { Users, UserProfiles } from '@/models/index';
-import { ID } from '@/misc/cafy-id';
-import { toPunyNullable } from '@/misc/convert-host';
-
-export const meta = {
- tags: ['room'],
-
- requireCredential: false as const,
-
- params: {
- userId: {
- validator: $.optional.type(ID),
- },
-
- username: {
- validator: $.optional.str
- },
-
- host: {
- validator: $.optional.nullable.str
- },
- },
-
- errors: {
- noSuchUser: {
- message: 'No such user.',
- code: 'NO_SUCH_USER',
- id: '7ad3fa3e-5e12-42f0-b23a-f3d13f10ee4b'
- }
- },
-
- res: {
- type: 'object' as const,
- optional: false as const, nullable: false as const,
- properties: {
- roomType: {
- type: 'string' as const,
- optional: false as const, nullable: false as const,
- enum: ['default', 'washitsu']
- },
- furnitures: {
- 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
- },
- type: {
- type: 'string' as const,
- optional: false as const, nullable: false as const
- },
- props: {
- type: 'object' as const,
- optional: true as const, nullable: false as const,
- },
- position: {
- type: 'object' as const,
- optional: false as const, nullable: false as const,
- properties: {
- x: {
- type: 'number' as const,
- optional: false as const, nullable: false as const
- },
- y: {
- type: 'number' as const,
- optional: false as const, nullable: false as const
- },
- z: {
- type: 'number' as const,
- optional: false as const, nullable: false as const
- }
- }
- },
- rotation: {
- type: 'object' as const,
- optional: false as const, nullable: false as const,
- properties: {
- x: {
- type: 'number' as const,
- optional: false as const, nullable: false as const
- },
- y: {
- type: 'number' as const,
- optional: false as const, nullable: false as const
- },
- z: {
- type: 'number' as const,
- optional: false as const, nullable: false as const
- }
- }
- }
- }
- }
- },
- carpetColor: {
- type: 'string' as const,
- optional: false as const, nullable: false as const,
- format: 'hex',
- example: '#85CAF0'
- }
- }
- }
-};
-
-export default define(meta, async (ps, me) => {
- const user = await Users.findOne(ps.userId != null
- ? { id: ps.userId }
- : { usernameLower: ps.username!.toLowerCase(), host: toPunyNullable(ps.host) });
-
- if (user == null) {
- throw new ApiError(meta.errors.noSuchUser);
- }
-
- const profile = await UserProfiles.findOneOrFail(user.id);
-
- if (profile.room.furnitures == null) {
- await UserProfiles.update(user.id, {
- room: {
- furnitures: [],
- ...profile.room
- }
- });
-
- profile.room.furnitures = [];
- }
-
- if (profile.room.roomType == null) {
- const initialType = 'default';
- await UserProfiles.update(user.id, {
- room: {
- roomType: initialType as any,
- ...profile.room
- }
- });
-
- profile.room.roomType = initialType;
- }
-
- if (profile.room.carpetColor == null) {
- const initialColor = '#85CAF0';
- await UserProfiles.update(user.id, {
- room: {
- carpetColor: initialColor as any,
- ...profile.room
- }
- });
-
- profile.room.carpetColor = initialColor;
- }
-
- return profile.room;
-});
diff --git a/src/server/api/endpoints/room/update.ts b/src/server/api/endpoints/room/update.ts
deleted file mode 100644
index 8c4cfbdea6..0000000000
--- a/src/server/api/endpoints/room/update.ts
+++ /dev/null
@@ -1,51 +0,0 @@
-import $ from 'cafy';
-import { publishMainStream } from '@/services/stream';
-import define from '../../define';
-import { Users, UserProfiles } from '@/models/index';
-
-export const meta = {
- tags: ['room'],
-
- requireCredential: true as const,
-
- params: {
- room: {
- validator: $.obj({
- furnitures: $.arr($.obj({
- id: $.str,
- type: $.str,
- position: $.obj({
- x: $.num,
- y: $.num,
- z: $.num,
- }),
- rotation: $.obj({
- x: $.num,
- y: $.num,
- z: $.num,
- }),
- props: $.optional.nullable.obj(),
- })),
- roomType: $.str,
- carpetColor: $.str
- })
- },
- },
-};
-
-export default define(meta, async (ps, user) => {
- await UserProfiles.update(user.id, {
- room: ps.room as any
- });
-
- const iObj = await Users.pack(user.id, user, {
- detail: true,
- includeSecrets: true
- });
-
- // Publish meUpdated event
- publishMainStream(user.id, 'meUpdated', iObj);
-
- // TODO: レスポンスがおかしいと思う by YuzuRyo61
- return iObj;
-});