summaryrefslogtreecommitdiff
path: root/packages/backend/src/server/api
diff options
context:
space:
mode:
authortamaina <tamaina@hotmail.co.jp>2022-02-19 23:21:28 +0900
committerGitHub <noreply@github.com>2022-02-19 23:21:28 +0900
commitfd8f8162e186981ca2acf9d3b1caef523c748691 (patch)
tree676edf6a146b5835b8a591f4f00051999e356571 /packages/backend/src/server/api
parentrefacator: fix typw (diff)
downloadsharkey-fd8f8162e186981ca2acf9d3b1caef523c748691.tar.gz
sharkey-fd8f8162e186981ca2acf9d3b1caef523c748691.tar.bz2
sharkey-fd8f8162e186981ca2acf9d3b1caef523c748691.zip
SchemaTypeの型計算量を削減 (#8332)
* schema typeの型計算量を削減 * reduce some type error * wip * fix * clean up * more shrink
Diffstat (limited to 'packages/backend/src/server/api')
-rw-r--r--packages/backend/src/server/api/endpoints/admin/announcements/create.ts2
-rw-r--r--packages/backend/src/server/api/endpoints/i/gallery/likes.ts28
-rw-r--r--packages/backend/src/server/api/endpoints/i/page-likes.ts29
-rw-r--r--packages/backend/src/server/api/endpoints/my/apps.ts41
-rw-r--r--packages/backend/src/server/api/endpoints/sw/register.ts8
-rw-r--r--packages/backend/src/server/api/stream/types.ts1
6 files changed, 39 insertions, 70 deletions
diff --git a/packages/backend/src/server/api/endpoints/admin/announcements/create.ts b/packages/backend/src/server/api/endpoints/admin/announcements/create.ts
index 8d2bda9781..295d99513d 100644
--- a/packages/backend/src/server/api/endpoints/admin/announcements/create.ts
+++ b/packages/backend/src/server/api/endpoints/admin/announcements/create.ts
@@ -65,5 +65,5 @@ export default define(meta, paramDef, async (ps) => {
imageUrl: ps.imageUrl,
}).then(x => Announcements.findOneOrFail(x.identifiers[0]));
- return announcement;
+ return Object.assign({}, announcement, { createdAt: announcement.createdAt.toISOString(), updatedAt: null });
});
diff --git a/packages/backend/src/server/api/endpoints/i/gallery/likes.ts b/packages/backend/src/server/api/endpoints/i/gallery/likes.ts
index dc862a6b05..7578ed3216 100644
--- a/packages/backend/src/server/api/endpoints/i/gallery/likes.ts
+++ b/packages/backend/src/server/api/endpoints/i/gallery/likes.ts
@@ -10,20 +10,24 @@ export const meta = {
kind: 'read:gallery-likes',
res: {
- type: 'object',
+ type: 'array',
optional: false, nullable: false,
- properties: {
- id: {
- type: 'string',
- optional: false, nullable: false,
- format: 'id',
+ items: {
+ type: 'object',
+ optional: false, nullable: false,
+ properties: {
+ id: {
+ type: 'string',
+ optional: false, nullable: false,
+ format: 'id',
+ },
+ post: {
+ type: 'object',
+ optional: false, nullable: false,
+ ref: 'GalleryPost',
+ },
},
- page: {
- type: 'object',
- optional: false, nullable: false,
- ref: 'GalleryPost',
- },
- },
+ }
},
} as const;
diff --git a/packages/backend/src/server/api/endpoints/i/page-likes.ts b/packages/backend/src/server/api/endpoints/i/page-likes.ts
index e66bc616c2..60ac3ccde1 100644
--- a/packages/backend/src/server/api/endpoints/i/page-likes.ts
+++ b/packages/backend/src/server/api/endpoints/i/page-likes.ts
@@ -10,20 +10,23 @@ export const meta = {
kind: 'read:page-likes',
res: {
- type: 'object',
+ type: 'array',
optional: false, nullable: false,
- properties: {
- id: {
- type: 'string',
- optional: false, nullable: false,
- format: 'id',
+ items: {
+ type: 'object',
+ properties: {
+ id: {
+ type: 'string',
+ optional: false, nullable: false,
+ format: 'id',
+ },
+ page: {
+ type: 'object',
+ optional: false, nullable: false,
+ ref: 'Page',
+ },
},
- page: {
- type: 'object',
- optional: false, nullable: false,
- ref: 'Page',
- },
- },
+ }
},
} as const;
@@ -47,5 +50,5 @@ export default define(meta, paramDef, async (ps, user) => {
.take(ps.limit)
.getMany();
- return await PageLikes.packMany(likes, user);
+ return PageLikes.packMany(likes, user);
});
diff --git a/packages/backend/src/server/api/endpoints/my/apps.ts b/packages/backend/src/server/api/endpoints/my/apps.ts
index 60e5014110..8dee11fb93 100644
--- a/packages/backend/src/server/api/endpoints/my/apps.ts
+++ b/packages/backend/src/server/api/endpoints/my/apps.ts
@@ -12,46 +12,7 @@ export const meta = {
items: {
type: 'object',
optional: false, nullable: false,
- properties: {
- id: {
- type: 'string',
- optional: false, nullable: false,
- },
- name: {
- type: 'string',
- optional: false, nullable: false,
- },
- callbackUrl: {
- type: 'string',
- optional: false, nullable: false,
- },
- permission: {
- type: 'array',
- optional: false, nullable: false,
- items: {
- type: 'string',
- optional: false, nullable: false,
- },
- },
- secret: {
- type: 'string',
- optional: true, nullable: false,
- },
- isAuthorized: {
- type: 'object',
- optional: true, nullable: false,
- properties: {
- appId: {
- type: 'string',
- optional: false, nullable: false,
- },
- userId: {
- type: 'string',
- optional: false, nullable: false,
- },
- },
- },
- },
+ ref: 'App',
},
},
} as const;
diff --git a/packages/backend/src/server/api/endpoints/sw/register.ts b/packages/backend/src/server/api/endpoints/sw/register.ts
index 9091c9481a..459b0dd969 100644
--- a/packages/backend/src/server/api/endpoints/sw/register.ts
+++ b/packages/backend/src/server/api/endpoints/sw/register.ts
@@ -14,12 +14,12 @@ export const meta = {
properties: {
state: {
type: 'string',
- optional: false, nullable: false,
+ optional: true, nullable: false,
enum: ['already-subscribed', 'subscribed'],
},
key: {
type: 'string',
- optional: false, nullable: false,
+ optional: false, nullable: true,
},
},
},
@@ -49,7 +49,7 @@ export default define(meta, paramDef, async (ps, user) => {
if (exist != null) {
return {
- state: 'already-subscribed',
+ state: 'already-subscribed' as const,
key: instance.swPublicKey,
};
}
@@ -64,7 +64,7 @@ export default define(meta, paramDef, async (ps, user) => {
});
return {
- state: 'subscribed',
+ state: 'subscribed' as const,
key: instance.swPublicKey,
};
});
diff --git a/packages/backend/src/server/api/stream/types.ts b/packages/backend/src/server/api/stream/types.ts
index e2f1c6fc9c..921856b38d 100644
--- a/packages/backend/src/server/api/stream/types.ts
+++ b/packages/backend/src/server/api/stream/types.ts
@@ -84,6 +84,7 @@ export interface MainStreamTypes {
};
driveFileCreated: Packed<'DriveFile'>;
readAntenna: Antenna;
+ receiveFollowRequest: Packed<'User'>;
}
export interface DriveStreamTypes {