summaryrefslogtreecommitdiff
path: root/packages/backend/src/models/json-schema
diff options
context:
space:
mode:
authorおさむのひと <46447427+samunohito@users.noreply.github.com>2023-11-21 11:13:56 +0900
committerGitHub <noreply@github.com>2023-11-21 11:13:56 +0900
commit8bd9077f77eaebaa4dff403e072ba49e4cab1326 (patch)
tree91e217c04667b3d1d7a2abdb7f911c54cd1ae775 /packages/backend/src/models/json-schema
parentupdate api.md (#12379) (diff)
downloadsharkey-8bd9077f77eaebaa4dff403e072ba49e4cab1326.tar.gz
sharkey-8bd9077f77eaebaa4dff403e072ba49e4cab1326.tar.bz2
sharkey-8bd9077f77eaebaa4dff403e072ba49e4cab1326.zip
json-schema配下の最新化 (#12312)
* user.ts、page.ts、drive-folder.tsを各EntityServiceの戻り値をもとに最新化 * 再確認 * fix error * note以外の残りのファイルを対応 * fix CHANGELOG.md * fix CHANGELOG.md * fix user.ts * fix user.ts * コメント対応 * fix note.ts --------- Co-authored-by: osamu <46447427+sam-osamu@users.noreply.github.com>
Diffstat (limited to 'packages/backend/src/models/json-schema')
-rw-r--r--packages/backend/src/models/json-schema/announcement.ts8
-rw-r--r--packages/backend/src/models/json-schema/channel.ts57
-rw-r--r--packages/backend/src/models/json-schema/clip.ts8
-rw-r--r--packages/backend/src/models/json-schema/drive-file.ts2
-rw-r--r--packages/backend/src/models/json-schema/drive-folder.ts12
-rw-r--r--packages/backend/src/models/json-schema/federation-instance.ts9
-rw-r--r--packages/backend/src/models/json-schema/flash.ts18
-rw-r--r--packages/backend/src/models/json-schema/following.ts10
-rw-r--r--packages/backend/src/models/json-schema/gallery-post.ts24
-rw-r--r--packages/backend/src/models/json-schema/note.ts28
-rw-r--r--packages/backend/src/models/json-schema/notification.ts26
-rw-r--r--packages/backend/src/models/json-schema/page.ts66
-rw-r--r--packages/backend/src/models/json-schema/user.ts311
13 files changed, 442 insertions, 137 deletions
diff --git a/packages/backend/src/models/json-schema/announcement.ts b/packages/backend/src/models/json-schema/announcement.ts
index c7e24c7f29..78a98872b2 100644
--- a/packages/backend/src/models/json-schema/announcement.ts
+++ b/packages/backend/src/models/json-schema/announcement.ts
@@ -42,11 +42,15 @@ export const packedAnnouncementSchema = {
type: 'string',
optional: false, nullable: false,
},
- forYou: {
+ needConfirmationToRead: {
type: 'boolean',
optional: false, nullable: false,
},
- needConfirmationToRead: {
+ silence: {
+ type: 'boolean',
+ optional: false, nullable: false,
+ },
+ forYou: {
type: 'boolean',
optional: false, nullable: false,
},
diff --git a/packages/backend/src/models/json-schema/channel.ts b/packages/backend/src/models/json-schema/channel.ts
index 8f9770cdc5..5b0fa0f15d 100644
--- a/packages/backend/src/models/json-schema/channel.ts
+++ b/packages/backend/src/models/json-schema/channel.ts
@@ -19,7 +19,7 @@ export const packedChannelSchema = {
},
lastNotedAt: {
type: 'string',
- optional: false, nullable: true,
+ nullable: true, optional: false,
format: 'date-time',
},
name: {
@@ -28,25 +28,50 @@ export const packedChannelSchema = {
},
description: {
type: 'string',
+ optional: false, nullable: true,
+ },
+ userId: {
+ type: 'string',
nullable: true, optional: false,
+ format: 'id',
},
bannerUrl: {
type: 'string',
format: 'url',
nullable: true, optional: false,
},
+ pinnedNoteIds: {
+ type: 'array',
+ nullable: false, optional: false,
+ items: {
+ type: 'string',
+ format: 'id',
+ },
+ },
+ color: {
+ type: 'string',
+ optional: false, nullable: false,
+ },
isArchived: {
type: 'boolean',
optional: false, nullable: false,
},
- notesCount: {
+ usersCount: {
type: 'number',
nullable: false, optional: false,
},
- usersCount: {
+ notesCount: {
type: 'number',
nullable: false, optional: false,
},
+ isSensitive: {
+ type: 'boolean',
+ optional: false, nullable: false,
+ },
+ allowRenoteToExternal: {
+ type: 'boolean',
+ optional: false, nullable: false,
+ },
isFollowing: {
type: 'boolean',
optional: true, nullable: false,
@@ -55,30 +80,14 @@ export const packedChannelSchema = {
type: 'boolean',
optional: true, nullable: false,
},
- userId: {
- type: 'string',
- nullable: true, optional: false,
- format: 'id',
- },
- pinnedNoteIds: {
+ pinnedNotes: {
type: 'array',
- nullable: false, optional: false,
+ optional: true, nullable: false,
items: {
- type: 'string',
- format: 'id',
+ type: 'object',
+ optional: false, nullable: false,
+ ref: 'Note',
},
},
- color: {
- type: 'string',
- optional: false, nullable: false,
- },
- isSensitive: {
- type: 'boolean',
- optional: false, nullable: false,
- },
- allowRenoteToExternal: {
- type: 'boolean',
- optional: false, nullable: false,
- },
},
} as const;
diff --git a/packages/backend/src/models/json-schema/clip.ts b/packages/backend/src/models/json-schema/clip.ts
index 64f7a2ad9c..1ab96c2b3b 100644
--- a/packages/backend/src/models/json-schema/clip.ts
+++ b/packages/backend/src/models/json-schema/clip.ts
@@ -44,13 +44,13 @@ export const packedClipSchema = {
type: 'boolean',
optional: false, nullable: false,
},
- isFavorited: {
- type: 'boolean',
- optional: true, nullable: false,
- },
favoritedCount: {
type: 'number',
optional: false, nullable: false,
},
+ isFavorited: {
+ type: 'boolean',
+ optional: true, nullable: false,
+ },
},
} as const;
diff --git a/packages/backend/src/models/json-schema/drive-file.ts b/packages/backend/src/models/json-schema/drive-file.ts
index 87f1340812..79f242a711 100644
--- a/packages/backend/src/models/json-schema/drive-file.ts
+++ b/packages/backend/src/models/json-schema/drive-file.ts
@@ -74,7 +74,7 @@ export const packedDriveFileSchema = {
},
url: {
type: 'string',
- optional: false, nullable: true,
+ optional: false, nullable: false,
format: 'url',
},
thumbnailUrl: {
diff --git a/packages/backend/src/models/json-schema/drive-folder.ts b/packages/backend/src/models/json-schema/drive-folder.ts
index 51107d423f..aaad301303 100644
--- a/packages/backend/src/models/json-schema/drive-folder.ts
+++ b/packages/backend/src/models/json-schema/drive-folder.ts
@@ -21,6 +21,12 @@ export const packedDriveFolderSchema = {
type: 'string',
optional: false, nullable: false,
},
+ parentId: {
+ type: 'string',
+ optional: false, nullable: true,
+ format: 'id',
+ example: 'xxxxxxxxxx',
+ },
foldersCount: {
type: 'number',
optional: true, nullable: false,
@@ -29,12 +35,6 @@ export const packedDriveFolderSchema = {
type: 'number',
optional: true, nullable: false,
},
- parentId: {
- type: 'string',
- optional: false, nullable: true,
- format: 'id',
- example: 'xxxxxxxxxx',
- },
parent: {
type: 'object',
optional: true, nullable: true,
diff --git a/packages/backend/src/models/json-schema/federation-instance.ts b/packages/backend/src/models/json-schema/federation-instance.ts
index 442e1076f2..3417314272 100644
--- a/packages/backend/src/models/json-schema/federation-instance.ts
+++ b/packages/backend/src/models/json-schema/federation-instance.ts
@@ -79,6 +79,10 @@ export const packedFederationInstanceSchema = {
type: 'string',
optional: false, nullable: true,
},
+ isSilenced: {
+ type: 'boolean',
+ optional: false, nullable: false,
+ },
iconUrl: {
type: 'string',
optional: false, nullable: true,
@@ -93,11 +97,6 @@ export const packedFederationInstanceSchema = {
type: 'string',
optional: false, nullable: true,
},
- isSilenced: {
- type: "boolean",
- optional: false,
- nullable: false,
- },
infoUpdatedAt: {
type: 'string',
optional: false, nullable: true,
diff --git a/packages/backend/src/models/json-schema/flash.ts b/packages/backend/src/models/json-schema/flash.ts
index 9453ba1dce..f08fa7a279 100644
--- a/packages/backend/src/models/json-schema/flash.ts
+++ b/packages/backend/src/models/json-schema/flash.ts
@@ -22,26 +22,26 @@ export const packedFlashSchema = {
optional: false, nullable: false,
format: 'date-time',
},
- title: {
+ userId: {
type: 'string',
optional: false, nullable: false,
+ format: 'id',
},
- summary: {
- type: 'string',
+ user: {
+ type: 'object',
+ ref: 'UserLite',
optional: false, nullable: false,
},
- script: {
+ title: {
type: 'string',
optional: false, nullable: false,
},
- userId: {
+ summary: {
type: 'string',
optional: false, nullable: false,
- format: 'id',
},
- user: {
- type: 'object',
- ref: 'UserLite',
+ script: {
+ type: 'string',
optional: false, nullable: false,
},
likedCount: {
diff --git a/packages/backend/src/models/json-schema/following.ts b/packages/backend/src/models/json-schema/following.ts
index 3a24ebb619..e92cff20a1 100644
--- a/packages/backend/src/models/json-schema/following.ts
+++ b/packages/backend/src/models/json-schema/following.ts
@@ -22,16 +22,16 @@ export const packedFollowingSchema = {
optional: false, nullable: false,
format: 'id',
},
- followee: {
- type: 'object',
- optional: true, nullable: false,
- ref: 'UserDetailed',
- },
followerId: {
type: 'string',
optional: false, nullable: false,
format: 'id',
},
+ followee: {
+ type: 'object',
+ optional: true, nullable: false,
+ ref: 'UserDetailed',
+ },
follower: {
type: 'object',
optional: true, nullable: false,
diff --git a/packages/backend/src/models/json-schema/gallery-post.ts b/packages/backend/src/models/json-schema/gallery-post.ts
index cf260c0bf5..df7038950c 100644
--- a/packages/backend/src/models/json-schema/gallery-post.ts
+++ b/packages/backend/src/models/json-schema/gallery-post.ts
@@ -22,14 +22,6 @@ export const packedGalleryPostSchema = {
optional: false, nullable: false,
format: 'date-time',
},
- title: {
- type: 'string',
- optional: false, nullable: false,
- },
- description: {
- type: 'string',
- optional: false, nullable: true,
- },
userId: {
type: 'string',
optional: false, nullable: false,
@@ -40,6 +32,14 @@ export const packedGalleryPostSchema = {
ref: 'UserLite',
optional: false, nullable: false,
},
+ title: {
+ type: 'string',
+ optional: false, nullable: false,
+ },
+ description: {
+ type: 'string',
+ optional: false, nullable: true,
+ },
fileIds: {
type: 'array',
optional: true, nullable: false,
@@ -70,5 +70,13 @@ export const packedGalleryPostSchema = {
type: 'boolean',
optional: false, nullable: false,
},
+ likedCount: {
+ type: 'number',
+ optional: false, nullable: false,
+ },
+ isLiked: {
+ type: 'boolean',
+ optional: true, nullable: false,
+ },
},
} as const;
diff --git a/packages/backend/src/models/json-schema/note.ts b/packages/backend/src/models/json-schema/note.ts
index 38c0054b55..9d5d558f51 100644
--- a/packages/backend/src/models/json-schema/note.ts
+++ b/packages/backend/src/models/json-schema/note.ts
@@ -127,22 +127,18 @@ export const packedNoteSchema = {
channel: {
type: 'object',
optional: true, nullable: true,
- items: {
- type: 'object',
- optional: false, nullable: false,
- properties: {
- id: {
- type: 'string',
- optional: false, nullable: false,
- },
- name: {
- type: 'string',
- optional: false, nullable: true,
- },
- isSensitive: {
- type: 'boolean',
- optional: true, nullable: false,
- },
+ properties: {
+ id: {
+ type: 'string',
+ optional: false, nullable: false,
+ },
+ name: {
+ type: 'string',
+ optional: false, nullable: true,
+ },
+ isSensitive: {
+ type: 'boolean',
+ optional: true, nullable: false,
},
},
},
diff --git a/packages/backend/src/models/json-schema/notification.ts b/packages/backend/src/models/json-schema/notification.ts
index 27db3bb62c..c6d6e84317 100644
--- a/packages/backend/src/models/json-schema/notification.ts
+++ b/packages/backend/src/models/json-schema/notification.ts
@@ -42,13 +42,9 @@ export const packedNotificationSchema = {
type: 'string',
optional: true, nullable: true,
},
- choice: {
- type: 'number',
- optional: true, nullable: true,
- },
- invitation: {
- type: 'object',
- optional: true, nullable: true,
+ achievement: {
+ type: 'string',
+ optional: true, nullable: false,
},
body: {
type: 'string',
@@ -81,14 +77,14 @@ export const packedNotificationSchema = {
required: ['user', 'reaction'],
},
},
- },
- users: {
- type: 'array',
- optional: true, nullable: true,
- items: {
- type: 'object',
- ref: 'UserLite',
- optional: false, nullable: false,
+ users: {
+ type: 'array',
+ optional: true, nullable: true,
+ items: {
+ type: 'object',
+ ref: 'UserLite',
+ optional: false, nullable: false,
+ },
},
},
} as const;
diff --git a/packages/backend/src/models/json-schema/page.ts b/packages/backend/src/models/json-schema/page.ts
index 3f20a4b802..9baacd6884 100644
--- a/packages/backend/src/models/json-schema/page.ts
+++ b/packages/backend/src/models/json-schema/page.ts
@@ -22,6 +22,32 @@ export const packedPageSchema = {
optional: false, nullable: false,
format: 'date-time',
},
+ userId: {
+ type: 'string',
+ optional: false, nullable: false,
+ format: 'id',
+ },
+ user: {
+ type: 'object',
+ ref: 'UserLite',
+ optional: false, nullable: false,
+ },
+ content: {
+ type: 'array',
+ optional: false, nullable: false,
+ items: {
+ type: 'object',
+ optional: false, nullable: false,
+ },
+ },
+ variables: {
+ type: 'array',
+ optional: false, nullable: false,
+ items: {
+ type: 'object',
+ optional: false, nullable: false,
+ },
+ },
title: {
type: 'string',
optional: false, nullable: false,
@@ -34,23 +60,47 @@ export const packedPageSchema = {
type: 'string',
optional: false, nullable: true,
},
- content: {
- type: 'array',
+ hideTitleWhenPinned: {
+ type: 'boolean',
optional: false, nullable: false,
},
- variables: {
- type: 'array',
+ alignCenter: {
+ type: 'boolean',
optional: false, nullable: false,
},
- userId: {
+ font: {
type: 'string',
optional: false, nullable: false,
- format: 'id',
},
- user: {
+ script: {
+ type: 'string',
+ optional: false, nullable: false,
+ },
+ eyeCatchingImageId: {
+ type: 'string',
+ optional: false, nullable: true,
+ },
+ eyeCatchingImage: {
type: 'object',
- ref: 'UserLite',
+ optional: false, nullable: true,
+ ref: 'DriveFile',
+ },
+ attachedFiles: {
+ type: 'array',
+ optional: false, nullable: false,
+ items: {
+ type: 'object',
+ optional: false, nullable: false,
+ ref: 'DriveFile',
+ },
+ },
+ likedCount: {
+ type: 'number',
optional: false, nullable: false,
},
+ isLiked: {
+ type: 'boolean',
+ optional: true, nullable: false,
+ },
},
} as const;
diff --git a/packages/backend/src/models/json-schema/user.ts b/packages/backend/src/models/json-schema/user.ts
index 37bdcbe281..b0e18db01a 100644
--- a/packages/backend/src/models/json-schema/user.ts
+++ b/packages/backend/src/models/json-schema/user.ts
@@ -49,11 +49,6 @@ export const packedUserLiteSchema = {
nullable: false, optional: false,
format: 'id',
},
- url: {
- type: 'string',
- format: 'url',
- nullable: false, optional: false,
- },
angle: {
type: 'number',
nullable: false, optional: true,
@@ -62,33 +57,83 @@ export const packedUserLiteSchema = {
type: 'boolean',
nullable: false, optional: true,
},
+ url: {
+ type: 'string',
+ format: 'url',
+ nullable: false, optional: false,
+ },
},
},
},
- isAdmin: {
+ isBot: {
type: 'boolean',
nullable: false, optional: true,
- default: false,
},
- isModerator: {
+ isCat: {
type: 'boolean',
nullable: false, optional: true,
- default: false,
},
- isBot: {
- type: 'boolean',
+ instance: {
+ type: 'object',
nullable: false, optional: true,
+ properties: {
+ name: {
+ type: 'string',
+ nullable: true, optional: false,
+ },
+ softwareName: {
+ type: 'string',
+ nullable: true, optional: false,
+ },
+ softwareVersion: {
+ type: 'string',
+ nullable: true, optional: false,
+ },
+ iconUrl: {
+ type: 'string',
+ nullable: true, optional: false,
+ },
+ faviconUrl: {
+ type: 'string',
+ nullable: true, optional: false,
+ },
+ themeColor: {
+ type: 'string',
+ nullable: true, optional: false,
+ },
+ },
},
- isCat: {
- type: 'boolean',
- nullable: false, optional: true,
+ emojis: {
+ type: 'object',
+ nullable: false, optional: false,
},
onlineStatus: {
type: 'string',
- format: 'url',
- nullable: true, optional: false,
+ nullable: false, optional: false,
enum: ['unknown', 'online', 'active', 'offline'],
},
+ badgeRoles: {
+ type: 'array',
+ nullable: false, optional: true,
+ items: {
+ type: 'object',
+ nullable: false, optional: false,
+ properties: {
+ name: {
+ type: 'string',
+ nullable: false, optional: false,
+ },
+ iconUrl: {
+ type: 'string',
+ nullable: true, optional: false,
+ },
+ displayOrder: {
+ type: 'number',
+ nullable: false, optional: false,
+ },
+ },
+ },
+ },
},
} as const;
@@ -105,21 +150,18 @@ export const packedUserDetailedNotMeOnlySchema = {
format: 'uri',
nullable: true, optional: false,
},
- movedToUri: {
+ movedTo: {
type: 'string',
format: 'uri',
- nullable: true,
- optional: false,
+ nullable: true, optional: false,
},
alsoKnownAs: {
type: 'array',
- nullable: true,
- optional: false,
+ nullable: true, optional: false,
items: {
type: 'string',
format: 'id',
- nullable: false,
- optional: false,
+ nullable: false, optional: false,
},
},
createdAt: {
@@ -249,6 +291,11 @@ export const packedUserDetailedNotMeOnlySchema = {
type: 'boolean',
nullable: false, optional: false,
},
+ ffVisibility: {
+ type: 'string',
+ nullable: false, optional: false,
+ enum: ['public', 'followers', 'private'],
+ },
twoFactorEnabled: {
type: 'boolean',
nullable: false, optional: false,
@@ -264,6 +311,57 @@ export const packedUserDetailedNotMeOnlySchema = {
nullable: false, optional: false,
default: false,
},
+ roles: {
+ type: 'array',
+ nullable: false, optional: false,
+ items: {
+ type: 'object',
+ nullable: false, optional: false,
+ properties: {
+ id: {
+ type: 'string',
+ nullable: false, optional: false,
+ format: 'id',
+ },
+ name: {
+ type: 'string',
+ nullable: false, optional: false,
+ },
+ color: {
+ type: 'string',
+ nullable: true, optional: false,
+ },
+ iconUrl: {
+ type: 'string',
+ nullable: true, optional: false,
+ },
+ description: {
+ type: 'string',
+ nullable: false, optional: false,
+ },
+ isModerator: {
+ type: 'boolean',
+ nullable: false, optional: false,
+ },
+ isAdministrator: {
+ type: 'boolean',
+ nullable: false, optional: false,
+ },
+ displayOrder: {
+ type: 'number',
+ nullable: false, optional: false,
+ },
+ },
+ },
+ },
+ memo: {
+ type: 'string',
+ nullable: true, optional: false,
+ },
+ moderationNote: {
+ type: 'string',
+ nullable: false, optional: true,
+ },
//#region relations
isFollowing: {
type: 'boolean',
@@ -297,10 +395,6 @@ export const packedUserDetailedNotMeOnlySchema = {
type: 'boolean',
nullable: false, optional: true,
},
- memo: {
- type: 'string',
- nullable: false, optional: true,
- },
notify: {
type: 'string',
nullable: false, optional: true,
@@ -326,29 +420,37 @@ export const packedMeDetailedOnlySchema = {
nullable: true, optional: false,
format: 'id',
},
- injectFeaturedNote: {
+ isModerator: {
type: 'boolean',
nullable: true, optional: false,
},
- receiveAnnouncementEmail: {
+ isAdmin: {
type: 'boolean',
nullable: true, optional: false,
},
+ injectFeaturedNote: {
+ type: 'boolean',
+ nullable: false, optional: false,
+ },
+ receiveAnnouncementEmail: {
+ type: 'boolean',
+ nullable: false, optional: false,
+ },
alwaysMarkNsfw: {
type: 'boolean',
- nullable: true, optional: false,
+ nullable: false, optional: false,
},
autoSensitive: {
type: 'boolean',
- nullable: true, optional: false,
+ nullable: false, optional: false,
},
carefulBot: {
type: 'boolean',
- nullable: true, optional: false,
+ nullable: false, optional: false,
},
autoAcceptFollowed: {
type: 'boolean',
- nullable: true, optional: false,
+ nullable: false, optional: false,
},
noCrawle: {
type: 'boolean',
@@ -387,10 +489,23 @@ export const packedMeDetailedOnlySchema = {
type: 'boolean',
nullable: false, optional: false,
},
+ unreadAnnouncements: {
+ type: 'array',
+ nullable: false, optional: false,
+ items: {
+ type: 'object',
+ nullable: false, optional: false,
+ ref: 'Announcement',
+ },
+ },
hasUnreadAntenna: {
type: 'boolean',
nullable: false, optional: false,
},
+ hasUnreadChannel: {
+ type: 'boolean',
+ nullable: false, optional: false,
+ },
hasUnreadNotification: {
type: 'boolean',
nullable: false, optional: false,
@@ -429,12 +544,132 @@ export const packedMeDetailedOnlySchema = {
},
emailNotificationTypes: {
type: 'array',
- nullable: true, optional: false,
+ nullable: false, optional: false,
items: {
type: 'string',
nullable: false, optional: false,
},
},
+ achievements: {
+ type: 'array',
+ nullable: false, optional: false,
+ items: {
+ type: 'object',
+ nullable: false, optional: false,
+ properties: {
+ name: {
+ type: 'string',
+ nullable: false, optional: false,
+ },
+ unlockedAt: {
+ type: 'number',
+ nullable: false, optional: false,
+ },
+ },
+ },
+ },
+ loggedInDays: {
+ type: 'number',
+ nullable: false, optional: false,
+ },
+ policies: {
+ type: 'object',
+ nullable: false, optional: false,
+ properties: {
+ gtlAvailable: {
+ type: 'boolean',
+ nullable: false, optional: false,
+ },
+ ltlAvailable: {
+ type: 'boolean',
+ nullable: false, optional: false,
+ },
+ canPublicNote: {
+ type: 'boolean',
+ nullable: false, optional: false,
+ },
+ canInvite: {
+ type: 'boolean',
+ nullable: false, optional: false,
+ },
+ inviteLimit: {
+ type: 'number',
+ nullable: false, optional: false,
+ },
+ inviteLimitCycle: {
+ type: 'number',
+ nullable: false, optional: false,
+ },
+ inviteExpirationTime: {
+ type: 'number',
+ nullable: false, optional: false,
+ },
+ canManageCustomEmojis: {
+ type: 'boolean',
+ nullable: false, optional: false,
+ },
+ canManageAvatarDecorations: {
+ type: 'boolean',
+ nullable: false, optional: false,
+ },
+ canSearchNotes: {
+ type: 'boolean',
+ nullable: false, optional: false,
+ },
+ canUseTranslator: {
+ type: 'boolean',
+ nullable: false, optional: false,
+ },
+ canHideAds: {
+ type: 'boolean',
+ nullable: false, optional: false,
+ },
+ driveCapacityMb: {
+ type: 'number',
+ nullable: false, optional: false,
+ },
+ alwaysMarkNsfw: {
+ type: 'boolean',
+ nullable: false, optional: false,
+ },
+ pinLimit: {
+ type: 'number',
+ nullable: false, optional: false,
+ },
+ antennaLimit: {
+ type: 'number',
+ nullable: false, optional: false,
+ },
+ wordMuteLimit: {
+ type: 'number',
+ nullable: false, optional: false,
+ },
+ webhookLimit: {
+ type: 'number',
+ nullable: false, optional: false,
+ },
+ clipLimit: {
+ type: 'number',
+ nullable: false, optional: false,
+ },
+ noteEachClipsLimit: {
+ type: 'number',
+ nullable: false, optional: false,
+ },
+ userListLimit: {
+ type: 'number',
+ nullable: false, optional: false,
+ },
+ userEachUserListsLimit: {
+ type: 'number',
+ nullable: false, optional: false,
+ },
+ rateLimitFactor: {
+ type: 'number',
+ nullable: false, optional: false,
+ },
+ },
+ },
//#region secrets
email: {
type: 'string',
@@ -511,5 +746,13 @@ export const packedUserSchema = {
type: 'object',
ref: 'UserDetailed',
},
+ {
+ type: 'object',
+ ref: 'UserDetailedNotMe',
+ },
+ {
+ type: 'object',
+ ref: 'MeDetailed',
+ },
],
} as const;