From 55ed733df8947549d0e164dac05a42f760d6f8f1 Mon Sep 17 00:00:00 2001 From: naskya <m@naskya.net> Date: Thu, 23 May 2024 20:49:49 +0900 Subject: [PATCH] chore (backend): remove '_enum' suffix from enum types --- docs/downgrade.sql | 14 ++++ packages/backend-rs/index.d.ts | 44 +++++------ packages/backend-rs/index.js | 24 +++--- .../backend-rs/src/model/entity/antenna.rs | 4 +- .../backend-rs/src/model/entity/drive_file.rs | 4 +- .../backend-rs/src/model/entity/muted_note.rs | 4 +- packages/backend-rs/src/model/entity/note.rs | 4 +- .../src/model/entity/notification.rs | 4 +- packages/backend-rs/src/model/entity/page.rs | 4 +- packages/backend-rs/src/model/entity/poll.rs | 4 +- packages/backend-rs/src/model/entity/relay.rs | 4 +- .../src/model/entity/sea_orm_active_enums.rs | 60 ++++++--------- packages/backend-rs/src/model/entity/user.rs | 4 +- .../src/model/entity/user_profile.rs | 8 +- .../src/service/antenna/check_hit.rs | 8 +- ...16462794927-remove-enum-typename-suffix.ts | 76 +++++++++++++++++++ 16 files changed, 172 insertions(+), 98 deletions(-) create mode 100644 packages/backend/src/migration/1716462794927-remove-enum-typename-suffix.ts diff --git a/docs/downgrade.sql b/docs/downgrade.sql index 94e2660a15..e7de398a22 100644 --- a/docs/downgrade.sql +++ b/docs/downgrade.sql @@ -1,6 +1,7 @@ BEGIN; DELETE FROM "migrations" WHERE name IN ( + 'RemoveEnumTypenameSuffix1716462794927', 'CreateScheduledNote1714728200194', 'AddBackTimezone1715351290096', 'UserprofileJsonbToArray1714270605574', @@ -32,6 +33,19 @@ DELETE FROM "migrations" WHERE name IN ( 'RemoveNativeUtilsMigration1705877093218' ); +-- remove-enum-typename-suffix +ALTER TYPE "antenna_src" RENAME TO "antenna_src_enum"; +ALTER TYPE "drive_file_usage_hint" RENAME TO "drive_file_usage_hint_enum"; +ALTER TYPE "muted_note_reason" RENAME TO "muted_note_reason_enum"; +ALTER TYPE "note_visibility" RENAME TO "note_visibility_enum"; +ALTER TYPE "notification_type" RENAME TO "notification_type_enum"; +ALTER TYPE "page_visibility" RENAME TO "page_visibility_enum"; +ALTER TYPE "poll_note_visibility" RENAME TO "poll_notevisibility_enum"; +ALTER TYPE "relay_status" RENAME TO "relay_status_enum"; +ALTER TYPE "user_emoji_mod_perm" RENAME TO "user_emojimodperm_enum"; +ALTER TYPE "user_profile_ffvisibility" RENAME TO "user_profile_ffvisibility_enum"; +ALTER TYPE "user_profile_muting_notification_types" RENAME TO "user_profile_mutingnotificationtypes_enum"; + -- create-scheduled-note DROP TABLE "scheduled_note"; diff --git a/packages/backend-rs/index.d.ts b/packages/backend-rs/index.d.ts index 87d2a3d49f..e32025b151 100644 --- a/packages/backend-rs/index.d.ts +++ b/packages/backend-rs/index.d.ts @@ -369,7 +369,7 @@ export interface Antenna { createdAt: DateTimeWithTimeZone userId: string name: string - src: AntennaSrcEnum + src: AntennaSrc userListId: string | null withFile: boolean expression: string | null @@ -475,7 +475,7 @@ export interface DriveFile { webpublicType: string | null requestHeaders: Json | null requestIp: string | null - usageHint: DriveFileUsageHintEnum | null + usageHint: DriveFileUsageHint | null } export interface DriveFolder { id: string @@ -699,7 +699,7 @@ export interface MutedNote { id: string noteId: string userId: string - reason: MutedNoteReasonEnum + reason: MutedNoteReason } export interface Muting { id: string @@ -721,7 +721,7 @@ export interface Note { renoteCount: number repliesCount: number reactions: Json - visibility: NoteVisibilityEnum + visibility: NoteVisibility uri: string | null score: number fileIds: Array<string> @@ -802,7 +802,7 @@ export interface Notification { reaction: string | null choice: number | null followRequestId: string | null - type: NotificationTypeEnum + type: NotificationType userGroupInvitationId: string | null customBody: string | null customHeader: string | null @@ -822,7 +822,7 @@ export interface Page { eyeCatchingImageId: string | null content: Json variables: Json - visibility: PageVisibilityEnum + visibility: PageVisibility visibleUserIds: Array<string> likedCount: number hideTitleWhenPinned: boolean @@ -847,7 +847,7 @@ export interface Poll { multiple: boolean choices: Array<string> votes: Array<number> - noteVisibility: PollNotevisibilityEnum + noteVisibility: PollNoteVisibility userId: string userHost: string | null } @@ -887,7 +887,7 @@ export interface RegistryItem { export interface Relay { id: string inbox: string - status: RelayStatusEnum + status: RelayStatus } export interface RenoteMuting { id: string @@ -907,7 +907,7 @@ export interface ScheduledNote { userId: string scheduledAt: DateTimeWithTimeZone } -export enum AntennaSrcEnum { +export enum AntennaSrc { All = 'all', Group = 'group', Home = 'home', @@ -915,24 +915,24 @@ export enum AntennaSrcEnum { List = 'list', Users = 'users' } -export enum DriveFileUsageHintEnum { +export enum DriveFileUsageHint { UserAvatar = 'userAvatar', UserBanner = 'userBanner' } -export enum MutedNoteReasonEnum { +export enum MutedNoteReason { Manual = 'manual', Other = 'other', Spam = 'spam', Word = 'word' } -export enum NoteVisibilityEnum { +export enum NoteVisibility { Followers = 'followers', Hidden = 'hidden', Home = 'home', Public = 'public', Specified = 'specified' } -export enum NotificationTypeEnum { +export enum NotificationType { App = 'app', Follow = 'follow', FollowRequestAccepted = 'followRequestAccepted', @@ -946,34 +946,34 @@ export enum NotificationTypeEnum { Renote = 'renote', Reply = 'reply' } -export enum PageVisibilityEnum { +export enum PageVisibility { Followers = 'followers', Public = 'public', Specified = 'specified' } -export enum PollNotevisibilityEnum { +export enum PollNoteVisibility { Followers = 'followers', Home = 'home', Public = 'public', Specified = 'specified' } -export enum RelayStatusEnum { +export enum RelayStatus { Accepted = 'accepted', Rejected = 'rejected', Requesting = 'requesting' } -export enum UserEmojimodpermEnum { +export enum UserEmojiModPerm { Add = 'add', Full = 'full', Mod = 'mod', Unauthorized = 'unauthorized' } -export enum UserProfileFfvisibilityEnum { +export enum UserProfileFfvisibility { Followers = 'followers', Private = 'private', Public = 'public' } -export enum UserProfileMutingnotificationtypesEnum { +export enum UserProfileMutingNotificationTypes { App = 'app', Follow = 'follow', FollowRequestAccepted = 'followRequestAccepted', @@ -1044,7 +1044,7 @@ export interface User { driveCapacityOverrideMb: number | null movedToUri: string | null speakAsCat: boolean - emojiModPerm: UserEmojimodpermEnum + emojiModPerm: UserEmojiModPerm isIndexable: boolean alsoKnownAs: Array<string> | null } @@ -1133,12 +1133,12 @@ export interface UserProfile { pinnedPageId: string | null injectFeaturedNote: boolean enableWordMute: boolean - mutingNotificationTypes: Array<UserProfileMutingnotificationtypesEnum> + mutingNotificationTypes: Array<UserProfileMutingNotificationTypes> noCrawle: boolean receiveAnnouncementEmail: boolean emailNotificationTypes: Json publicReactions: boolean - ffVisibility: UserProfileFfvisibilityEnum + ffVisibility: UserProfileFfvisibility moderationNote: string preventAiLearning: boolean isIndexable: boolean diff --git a/packages/backend-rs/index.js b/packages/backend-rs/index.js index 0dc930ed2c..3fd0fc95eb 100644 --- a/packages/backend-rs/index.js +++ b/packages/backend-rs/index.js @@ -310,7 +310,7 @@ if (!nativeBinding) { throw new Error(`Failed to load native binding`) } -const { SECOND, MINUTE, HOUR, DAY, USER_ONLINE_THRESHOLD, USER_ACTIVE_THRESHOLD, FILE_TYPE_BROWSERSAFE, loadEnv, loadConfig, stringToAcct, acctToString, greet, initializeRustLogger, showServerInfo, isBlockedServer, isSilencedServer, isAllowedServer, checkWordMute, getFullApAccount, isSelfHost, isSameOrigin, extractHost, toPuny, isUnicodeEmoji, sqlLikeEscape, safeForSql, formatMilliseconds, getImageSizeFromUrl, getNoteSummary, isQuote, isSafeUrl, latestVersion, toMastodonId, fromMastodonId, fetchMeta, metaToPugArgs, nyaify, hashPassword, verifyPassword, isOldPasswordAlgorithm, decodeReaction, countReactions, toDbReaction, removeOldAttestationChallenges, cpuInfo, cpuUsage, memoryUsage, storageUsage, AntennaSrcEnum, DriveFileUsageHintEnum, MutedNoteReasonEnum, NoteVisibilityEnum, NotificationTypeEnum, PageVisibilityEnum, PollNotevisibilityEnum, RelayStatusEnum, UserEmojimodpermEnum, UserProfileFfvisibilityEnum, UserProfileMutingnotificationtypesEnum, updateAntennasOnNewNote, fetchNodeinfo, nodeinfo_2_1, nodeinfo_2_0, Protocol, Inbound, Outbound, watchNote, unwatchNote, PushNotificationKind, sendPushNotification, publishToChannelStream, ChatEvent, publishToChatStream, ChatIndexEvent, publishToChatIndexStream, publishToBroadcastStream, publishToGroupChatStream, publishToModerationStream, getTimestamp, genId, genIdAt, generateSecureRandomString, generateUserToken } = nativeBinding +const { SECOND, MINUTE, HOUR, DAY, USER_ONLINE_THRESHOLD, USER_ACTIVE_THRESHOLD, FILE_TYPE_BROWSERSAFE, loadEnv, loadConfig, stringToAcct, acctToString, greet, initializeRustLogger, showServerInfo, isBlockedServer, isSilencedServer, isAllowedServer, checkWordMute, getFullApAccount, isSelfHost, isSameOrigin, extractHost, toPuny, isUnicodeEmoji, sqlLikeEscape, safeForSql, formatMilliseconds, getImageSizeFromUrl, getNoteSummary, isQuote, isSafeUrl, latestVersion, toMastodonId, fromMastodonId, fetchMeta, metaToPugArgs, nyaify, hashPassword, verifyPassword, isOldPasswordAlgorithm, decodeReaction, countReactions, toDbReaction, removeOldAttestationChallenges, cpuInfo, cpuUsage, memoryUsage, storageUsage, AntennaSrc, DriveFileUsageHint, MutedNoteReason, NoteVisibility, NotificationType, PageVisibility, PollNoteVisibility, RelayStatus, UserEmojiModPerm, UserProfileFfvisibility, UserProfileMutingNotificationTypes, updateAntennasOnNewNote, fetchNodeinfo, nodeinfo_2_1, nodeinfo_2_0, Protocol, Inbound, Outbound, watchNote, unwatchNote, PushNotificationKind, sendPushNotification, publishToChannelStream, ChatEvent, publishToChatStream, ChatIndexEvent, publishToChatIndexStream, publishToBroadcastStream, publishToGroupChatStream, publishToModerationStream, getTimestamp, genId, genIdAt, generateSecureRandomString, generateUserToken } = nativeBinding module.exports.SECOND = SECOND module.exports.MINUTE = MINUTE @@ -360,17 +360,17 @@ module.exports.cpuInfo = cpuInfo module.exports.cpuUsage = cpuUsage module.exports.memoryUsage = memoryUsage module.exports.storageUsage = storageUsage -module.exports.AntennaSrcEnum = AntennaSrcEnum -module.exports.DriveFileUsageHintEnum = DriveFileUsageHintEnum -module.exports.MutedNoteReasonEnum = MutedNoteReasonEnum -module.exports.NoteVisibilityEnum = NoteVisibilityEnum -module.exports.NotificationTypeEnum = NotificationTypeEnum -module.exports.PageVisibilityEnum = PageVisibilityEnum -module.exports.PollNotevisibilityEnum = PollNotevisibilityEnum -module.exports.RelayStatusEnum = RelayStatusEnum -module.exports.UserEmojimodpermEnum = UserEmojimodpermEnum -module.exports.UserProfileFfvisibilityEnum = UserProfileFfvisibilityEnum -module.exports.UserProfileMutingnotificationtypesEnum = UserProfileMutingnotificationtypesEnum +module.exports.AntennaSrc = AntennaSrc +module.exports.DriveFileUsageHint = DriveFileUsageHint +module.exports.MutedNoteReason = MutedNoteReason +module.exports.NoteVisibility = NoteVisibility +module.exports.NotificationType = NotificationType +module.exports.PageVisibility = PageVisibility +module.exports.PollNoteVisibility = PollNoteVisibility +module.exports.RelayStatus = RelayStatus +module.exports.UserEmojiModPerm = UserEmojiModPerm +module.exports.UserProfileFfvisibility = UserProfileFfvisibility +module.exports.UserProfileMutingNotificationTypes = UserProfileMutingNotificationTypes module.exports.updateAntennasOnNewNote = updateAntennasOnNewNote module.exports.fetchNodeinfo = fetchNodeinfo module.exports.nodeinfo_2_1 = nodeinfo_2_1 diff --git a/packages/backend-rs/src/model/entity/antenna.rs b/packages/backend-rs/src/model/entity/antenna.rs index 9d746dbf5f..0e851a262b 100644 --- a/packages/backend-rs/src/model/entity/antenna.rs +++ b/packages/backend-rs/src/model/entity/antenna.rs @@ -1,6 +1,6 @@ //! `SeaORM` Entity. Generated by sea-orm-codegen 0.12.15 -use super::sea_orm_active_enums::AntennaSrcEnum; +use super::sea_orm_active_enums::AntennaSrc; use sea_orm::entity::prelude::*; #[derive(Clone, Debug, PartialEq, DeriveEntityModel, Eq, serde::Serialize, serde::Deserialize)] @@ -18,7 +18,7 @@ pub struct Model { #[sea_orm(column_name = "userId")] pub user_id: String, pub name: String, - pub src: AntennaSrcEnum, + pub src: AntennaSrc, #[sea_orm(column_name = "userListId")] pub user_list_id: Option<String>, #[sea_orm(column_name = "withFile")] diff --git a/packages/backend-rs/src/model/entity/drive_file.rs b/packages/backend-rs/src/model/entity/drive_file.rs index e44938dfc8..55f771843f 100644 --- a/packages/backend-rs/src/model/entity/drive_file.rs +++ b/packages/backend-rs/src/model/entity/drive_file.rs @@ -1,6 +1,6 @@ //! `SeaORM` Entity. Generated by sea-orm-codegen 0.12.15 -use super::sea_orm_active_enums::DriveFileUsageHintEnum; +use super::sea_orm_active_enums::DriveFileUsageHint; use sea_orm::entity::prelude::*; #[derive(Clone, Debug, PartialEq, DeriveEntityModel, Eq, serde::Serialize, serde::Deserialize)] @@ -55,7 +55,7 @@ pub struct Model { #[sea_orm(column_name = "requestIp")] pub request_ip: Option<String>, #[sea_orm(column_name = "usageHint")] - pub usage_hint: Option<DriveFileUsageHintEnum>, + pub usage_hint: Option<DriveFileUsageHint>, } #[derive(Copy, Clone, Debug, EnumIter, DeriveRelation)] diff --git a/packages/backend-rs/src/model/entity/muted_note.rs b/packages/backend-rs/src/model/entity/muted_note.rs index b1345565b7..e536030863 100644 --- a/packages/backend-rs/src/model/entity/muted_note.rs +++ b/packages/backend-rs/src/model/entity/muted_note.rs @@ -1,6 +1,6 @@ //! `SeaORM` Entity. Generated by sea-orm-codegen 0.12.15 -use super::sea_orm_active_enums::MutedNoteReasonEnum; +use super::sea_orm_active_enums::MutedNoteReason; use sea_orm::entity::prelude::*; #[derive(Clone, Debug, PartialEq, DeriveEntityModel, Eq, serde::Serialize, serde::Deserialize)] @@ -17,7 +17,7 @@ pub struct Model { pub note_id: String, #[sea_orm(column_name = "userId")] pub user_id: String, - pub reason: MutedNoteReasonEnum, + pub reason: MutedNoteReason, } #[derive(Copy, Clone, Debug, EnumIter, DeriveRelation)] diff --git a/packages/backend-rs/src/model/entity/note.rs b/packages/backend-rs/src/model/entity/note.rs index 12d53c6c6b..37cbd54862 100644 --- a/packages/backend-rs/src/model/entity/note.rs +++ b/packages/backend-rs/src/model/entity/note.rs @@ -1,6 +1,6 @@ //! `SeaORM` Entity. Generated by sea-orm-codegen 0.12.15 -use super::sea_orm_active_enums::NoteVisibilityEnum; +use super::sea_orm_active_enums::NoteVisibility; use sea_orm::entity::prelude::*; #[derive(Clone, Debug, PartialEq, DeriveEntityModel, Eq, serde::Serialize, serde::Deserialize)] @@ -34,7 +34,7 @@ pub struct Model { pub replies_count: i16, #[sea_orm(column_type = "JsonBinary")] pub reactions: Json, - pub visibility: NoteVisibilityEnum, + pub visibility: NoteVisibility, pub uri: Option<String>, pub score: i32, #[sea_orm(column_name = "fileIds")] diff --git a/packages/backend-rs/src/model/entity/notification.rs b/packages/backend-rs/src/model/entity/notification.rs index 4877ca6f66..e9375a82c0 100644 --- a/packages/backend-rs/src/model/entity/notification.rs +++ b/packages/backend-rs/src/model/entity/notification.rs @@ -1,6 +1,6 @@ //! `SeaORM` Entity. Generated by sea-orm-codegen 0.12.15 -use super::sea_orm_active_enums::NotificationTypeEnum; +use super::sea_orm_active_enums::NotificationType; use sea_orm::entity::prelude::*; #[derive(Clone, Debug, PartialEq, DeriveEntityModel, Eq, serde::Serialize, serde::Deserialize)] @@ -27,7 +27,7 @@ pub struct Model { pub choice: Option<i32>, #[sea_orm(column_name = "followRequestId")] pub follow_request_id: Option<String>, - pub r#type: NotificationTypeEnum, + pub r#type: NotificationType, #[sea_orm(column_name = "userGroupInvitationId")] pub user_group_invitation_id: Option<String>, #[sea_orm(column_name = "customBody")] diff --git a/packages/backend-rs/src/model/entity/page.rs b/packages/backend-rs/src/model/entity/page.rs index fef5d5c54b..eb4ce80c31 100644 --- a/packages/backend-rs/src/model/entity/page.rs +++ b/packages/backend-rs/src/model/entity/page.rs @@ -1,6 +1,6 @@ //! `SeaORM` Entity. Generated by sea-orm-codegen 0.12.15 -use super::sea_orm_active_enums::PageVisibilityEnum; +use super::sea_orm_active_enums::PageVisibility; use sea_orm::entity::prelude::*; #[derive(Clone, Debug, PartialEq, DeriveEntityModel, Eq, serde::Serialize, serde::Deserialize)] @@ -31,7 +31,7 @@ pub struct Model { pub content: Json, #[sea_orm(column_type = "JsonBinary")] pub variables: Json, - pub visibility: PageVisibilityEnum, + pub visibility: PageVisibility, #[sea_orm(column_name = "visibleUserIds")] pub visible_user_ids: Vec<String>, #[sea_orm(column_name = "likedCount")] diff --git a/packages/backend-rs/src/model/entity/poll.rs b/packages/backend-rs/src/model/entity/poll.rs index 4cabf4cbaa..29c322d711 100644 --- a/packages/backend-rs/src/model/entity/poll.rs +++ b/packages/backend-rs/src/model/entity/poll.rs @@ -1,6 +1,6 @@ //! `SeaORM` Entity. Generated by sea-orm-codegen 0.12.15 -use super::sea_orm_active_enums::PollNotevisibilityEnum; +use super::sea_orm_active_enums::PollNoteVisibility; use sea_orm::entity::prelude::*; #[derive(Clone, Debug, PartialEq, DeriveEntityModel, Eq, serde::Serialize, serde::Deserialize)] @@ -19,7 +19,7 @@ pub struct Model { pub choices: Vec<String>, pub votes: Vec<i32>, #[sea_orm(column_name = "noteVisibility")] - pub note_visibility: PollNotevisibilityEnum, + pub note_visibility: PollNoteVisibility, #[sea_orm(column_name = "userId")] pub user_id: String, #[sea_orm(column_name = "userHost")] diff --git a/packages/backend-rs/src/model/entity/relay.rs b/packages/backend-rs/src/model/entity/relay.rs index f2eeb571f4..567abb597c 100644 --- a/packages/backend-rs/src/model/entity/relay.rs +++ b/packages/backend-rs/src/model/entity/relay.rs @@ -1,6 +1,6 @@ //! `SeaORM` Entity. Generated by sea-orm-codegen 0.12.15 -use super::sea_orm_active_enums::RelayStatusEnum; +use super::sea_orm_active_enums::RelayStatus; use sea_orm::entity::prelude::*; #[derive(Clone, Debug, PartialEq, DeriveEntityModel, Eq, serde::Serialize, serde::Deserialize)] @@ -14,7 +14,7 @@ pub struct Model { #[sea_orm(primary_key, auto_increment = false)] pub id: String, pub inbox: String, - pub status: RelayStatusEnum, + pub status: RelayStatus, } #[derive(Copy, Clone, Debug, EnumIter, DeriveRelation)] diff --git a/packages/backend-rs/src/model/entity/sea_orm_active_enums.rs b/packages/backend-rs/src/model/entity/sea_orm_active_enums.rs index a9c974b9c4..c25618ef3a 100644 --- a/packages/backend-rs/src/model/entity/sea_orm_active_enums.rs +++ b/packages/backend-rs/src/model/entity/sea_orm_active_enums.rs @@ -8,8 +8,8 @@ use sea_orm::entity::prelude::*; #[serde(rename_all = "camelCase")] #[cfg_attr(not(feature = "napi"), derive(Clone))] #[cfg_attr(feature = "napi", napi_derive::napi(string_enum = "camelCase"))] -#[sea_orm(rs_type = "String", db_type = "Enum", enum_name = "antenna_src_enum")] -pub enum AntennaSrcEnum { +#[sea_orm(rs_type = "String", db_type = "Enum", enum_name = "antenna_src")] +pub enum AntennaSrc { #[sea_orm(string_value = "all")] All, #[sea_orm(string_value = "group")] @@ -32,9 +32,9 @@ pub enum AntennaSrcEnum { #[sea_orm( rs_type = "String", db_type = "Enum", - enum_name = "drive_file_usage_hint_enum" + enum_name = "drive_file_usage_hint" )] -pub enum DriveFileUsageHintEnum { +pub enum DriveFileUsageHint { #[sea_orm(string_value = "userAvatar")] UserAvatar, #[sea_orm(string_value = "userBanner")] @@ -46,12 +46,8 @@ pub enum DriveFileUsageHintEnum { #[serde(rename_all = "camelCase")] #[cfg_attr(not(feature = "napi"), derive(Clone))] #[cfg_attr(feature = "napi", napi_derive::napi(string_enum = "camelCase"))] -#[sea_orm( - rs_type = "String", - db_type = "Enum", - enum_name = "muted_note_reason_enum" -)] -pub enum MutedNoteReasonEnum { +#[sea_orm(rs_type = "String", db_type = "Enum", enum_name = "muted_note_reason")] +pub enum MutedNoteReason { #[sea_orm(string_value = "manual")] Manual, #[sea_orm(string_value = "other")] @@ -67,12 +63,8 @@ pub enum MutedNoteReasonEnum { #[serde(rename_all = "camelCase")] #[cfg_attr(not(feature = "napi"), derive(Clone))] #[cfg_attr(feature = "napi", napi_derive::napi(string_enum = "camelCase"))] -#[sea_orm( - rs_type = "String", - db_type = "Enum", - enum_name = "note_visibility_enum" -)] -pub enum NoteVisibilityEnum { +#[sea_orm(rs_type = "String", db_type = "Enum", enum_name = "note_visibility")] +pub enum NoteVisibility { #[sea_orm(string_value = "followers")] Followers, #[sea_orm(string_value = "hidden")] @@ -90,12 +82,8 @@ pub enum NoteVisibilityEnum { #[serde(rename_all = "camelCase")] #[cfg_attr(not(feature = "napi"), derive(Clone))] #[cfg_attr(feature = "napi", napi_derive::napi(string_enum = "camelCase"))] -#[sea_orm( - rs_type = "String", - db_type = "Enum", - enum_name = "notification_type_enum" -)] -pub enum NotificationTypeEnum { +#[sea_orm(rs_type = "String", db_type = "Enum", enum_name = "notification_type")] +pub enum NotificationType { #[sea_orm(string_value = "app")] App, #[sea_orm(string_value = "follow")] @@ -127,12 +115,8 @@ pub enum NotificationTypeEnum { #[serde(rename_all = "camelCase")] #[cfg_attr(not(feature = "napi"), derive(Clone))] #[cfg_attr(feature = "napi", napi_derive::napi(string_enum = "camelCase"))] -#[sea_orm( - rs_type = "String", - db_type = "Enum", - enum_name = "page_visibility_enum" -)] -pub enum PageVisibilityEnum { +#[sea_orm(rs_type = "String", db_type = "Enum", enum_name = "page_visibility")] +pub enum PageVisibility { #[sea_orm(string_value = "followers")] Followers, #[sea_orm(string_value = "public")] @@ -149,9 +133,9 @@ pub enum PageVisibilityEnum { #[sea_orm( rs_type = "String", db_type = "Enum", - enum_name = "poll_notevisibility_enum" + enum_name = "poll_note_visibility" )] -pub enum PollNotevisibilityEnum { +pub enum PollNoteVisibility { #[sea_orm(string_value = "followers")] Followers, #[sea_orm(string_value = "home")] @@ -167,8 +151,8 @@ pub enum PollNotevisibilityEnum { #[serde(rename_all = "camelCase")] #[cfg_attr(not(feature = "napi"), derive(Clone))] #[cfg_attr(feature = "napi", napi_derive::napi(string_enum = "camelCase"))] -#[sea_orm(rs_type = "String", db_type = "Enum", enum_name = "relay_status_enum")] -pub enum RelayStatusEnum { +#[sea_orm(rs_type = "String", db_type = "Enum", enum_name = "relay_status")] +pub enum RelayStatus { #[sea_orm(string_value = "accepted")] Accepted, #[sea_orm(string_value = "rejected")] @@ -185,9 +169,9 @@ pub enum RelayStatusEnum { #[sea_orm( rs_type = "String", db_type = "Enum", - enum_name = "user_emojimodperm_enum" + enum_name = "user_emoji_mod_perm" )] -pub enum UserEmojimodpermEnum { +pub enum UserEmojiModPerm { #[sea_orm(string_value = "add")] Add, #[sea_orm(string_value = "full")] @@ -206,9 +190,9 @@ pub enum UserEmojimodpermEnum { #[sea_orm( rs_type = "String", db_type = "Enum", - enum_name = "user_profile_ffvisibility_enum" + enum_name = "user_profile_ffvisibility" )] -pub enum UserProfileFfvisibilityEnum { +pub enum UserProfileFfvisibility { #[sea_orm(string_value = "followers")] Followers, #[sea_orm(string_value = "private")] @@ -225,9 +209,9 @@ pub enum UserProfileFfvisibilityEnum { #[sea_orm( rs_type = "String", db_type = "Enum", - enum_name = "user_profile_mutingnotificationtypes_enum" + enum_name = "user_profile_muting_notification_types" )] -pub enum UserProfileMutingnotificationtypesEnum { +pub enum UserProfileMutingNotificationTypes { #[sea_orm(string_value = "app")] App, #[sea_orm(string_value = "follow")] diff --git a/packages/backend-rs/src/model/entity/user.rs b/packages/backend-rs/src/model/entity/user.rs index aed3d12a65..974ba2890c 100644 --- a/packages/backend-rs/src/model/entity/user.rs +++ b/packages/backend-rs/src/model/entity/user.rs @@ -1,6 +1,6 @@ //! `SeaORM` Entity. Generated by sea-orm-codegen 0.12.15 -use super::sea_orm_active_enums::UserEmojimodpermEnum; +use super::sea_orm_active_enums::UserEmojiModPerm; use sea_orm::entity::prelude::*; #[derive(Clone, Debug, PartialEq, DeriveEntityModel, Eq, serde::Serialize, serde::Deserialize)] @@ -74,7 +74,7 @@ pub struct Model { #[sea_orm(column_name = "speakAsCat")] pub speak_as_cat: bool, #[sea_orm(column_name = "emojiModPerm")] - pub emoji_mod_perm: UserEmojimodpermEnum, + pub emoji_mod_perm: UserEmojiModPerm, #[sea_orm(column_name = "isIndexable")] pub is_indexable: bool, #[sea_orm(column_name = "alsoKnownAs")] diff --git a/packages/backend-rs/src/model/entity/user_profile.rs b/packages/backend-rs/src/model/entity/user_profile.rs index 73dc97a446..f9ea7e0b68 100644 --- a/packages/backend-rs/src/model/entity/user_profile.rs +++ b/packages/backend-rs/src/model/entity/user_profile.rs @@ -1,7 +1,7 @@ //! `SeaORM` Entity. Generated by sea-orm-codegen 0.12.15 -use super::sea_orm_active_enums::UserProfileFfvisibilityEnum; -use super::sea_orm_active_enums::UserProfileMutingnotificationtypesEnum; +use super::sea_orm_active_enums::UserProfileFfvisibility; +use super::sea_orm_active_enums::UserProfileMutingNotificationTypes; use sea_orm::entity::prelude::*; #[derive(Clone, Debug, PartialEq, DeriveEntityModel, Eq, serde::Serialize, serde::Deserialize)] @@ -51,7 +51,7 @@ pub struct Model { #[sea_orm(column_name = "enableWordMute")] pub enable_word_mute: bool, #[sea_orm(column_name = "mutingNotificationTypes")] - pub muting_notification_types: Vec<UserProfileMutingnotificationtypesEnum>, + pub muting_notification_types: Vec<UserProfileMutingNotificationTypes>, #[sea_orm(column_name = "noCrawle")] pub no_crawle: bool, #[sea_orm(column_name = "receiveAnnouncementEmail")] @@ -61,7 +61,7 @@ pub struct Model { #[sea_orm(column_name = "publicReactions")] pub public_reactions: bool, #[sea_orm(column_name = "ffVisibility")] - pub ff_visibility: UserProfileFfvisibilityEnum, + pub ff_visibility: UserProfileFfvisibility, #[sea_orm(column_name = "moderationNote")] pub moderation_note: String, #[sea_orm(column_name = "preventAiLearning")] diff --git a/packages/backend-rs/src/service/antenna/check_hit.rs b/packages/backend-rs/src/service/antenna/check_hit.rs index e43eae2aee..9dfbd65e8b 100644 --- a/packages/backend-rs/src/service/antenna/check_hit.rs +++ b/packages/backend-rs/src/service/antenna/check_hit.rs @@ -33,7 +33,7 @@ pub async fn check_hit_antenna( note_all_texts: &[String], note_author: &Acct, ) -> Result<bool, AntennaCheckError> { - if note.visibility == NoteVisibilityEnum::Specified { + if note.visibility == NoteVisibility::Specified { return Ok(false); } @@ -45,7 +45,7 @@ pub async fn check_hit_antenna( return Ok(false); } - if antenna.src == AntennaSrcEnum::Users { + if antenna.src == AntennaSrc::Users { let is_from_one_of_specified_authors = antenna .users .iter() @@ -55,7 +55,7 @@ pub async fn check_hit_antenna( if !is_from_one_of_specified_authors { return Ok(false); } - } else if antenna.src == AntennaSrcEnum::Instances { + } else if antenna.src == AntennaSrc::Instances { let is_from_one_of_specified_servers = antenna.instances.iter().any(|host| { host.to_ascii_lowercase() == note_author @@ -115,7 +115,7 @@ pub async fn check_hit_antenna( return Ok(false); } - if [NoteVisibilityEnum::Home, NoteVisibilityEnum::Followers].contains(¬e.visibility) { + if [NoteVisibility::Home, NoteVisibility::Followers].contains(¬e.visibility) { let following_user_ids: Vec<String> = if let Some(ids) = cache::get_one(cache::Category::Follow, &antenna.user_id).await? { ids diff --git a/packages/backend/src/migration/1716462794927-remove-enum-typename-suffix.ts b/packages/backend/src/migration/1716462794927-remove-enum-typename-suffix.ts new file mode 100644 index 0000000000..5b8b36a1f6 --- /dev/null +++ b/packages/backend/src/migration/1716462794927-remove-enum-typename-suffix.ts @@ -0,0 +1,76 @@ +import type { MigrationInterface, QueryRunner } from "typeorm"; + +export class RemoveEnumTypenameSuffix1716462794927 + implements MigrationInterface +{ + public async up(queryRunner: QueryRunner): Promise<void> { + await queryRunner.query( + `ALTER TYPE "antenna_src_enum" RENAME TO "antenna_src"`, + ); + await queryRunner.query( + `ALTER TYPE "drive_file_usage_hint_enum" RENAME TO "drive_file_usage_hint"`, + ); + await queryRunner.query( + `ALTER TYPE "muted_note_reason_enum" RENAME TO "muted_note_reason"`, + ); + await queryRunner.query( + `ALTER TYPE "note_visibility_enum" RENAME TO "note_visibility"`, + ); + await queryRunner.query( + `ALTER TYPE "notification_type_enum" RENAME TO "notification_type"`, + ); + await queryRunner.query( + `ALTER TYPE "page_visibility_enum" RENAME TO "page_visibility"`, + ); + await queryRunner.query( + `ALTER TYPE "poll_notevisibility_enum" RENAME TO "poll_note_visibility"`, + ); + await queryRunner.query( + `ALTER TYPE "relay_status_enum" RENAME TO "relay_status"`, + ); + await queryRunner.query( + `ALTER TYPE "user_emojimodperm_enum" RENAME TO "user_emoji_mod_perm"`, + ); + await queryRunner.query( + `ALTER TYPE "user_profile_ffvisibility_enum" RENAME TO "user_profile_ffvisibility"`, + ); + await queryRunner.query( + `ALTER TYPE "user_profile_mutingnotificationtypes_enum" RENAME TO "user_profile_muting_notification_types"`, + ); + } + public async down(queryRunner: QueryRunner): Promise<void> { + await queryRunner.query( + `ALTER TYPE "antenna_src" RENAME TO "antenna_src_enum"`, + ); + await queryRunner.query( + `ALTER TYPE "drive_file_usage_hint" RENAME TO "drive_file_usage_hint_enum"`, + ); + await queryRunner.query( + `ALTER TYPE "muted_note_reason" RENAME TO "muted_note_reason_enum"`, + ); + await queryRunner.query( + `ALTER TYPE "note_visibility" RENAME TO "note_visibility_enum"`, + ); + await queryRunner.query( + `ALTER TYPE "notification_type" RENAME TO "notification_type_enum"`, + ); + await queryRunner.query( + `ALTER TYPE "page_visibility" RENAME TO "page_visibility_enum"`, + ); + await queryRunner.query( + `ALTER TYPE "poll_note_visibility" RENAME TO "poll_notevisibility_enum"`, + ); + await queryRunner.query( + `ALTER TYPE "relay_status" RENAME TO "relay_status_enum"`, + ); + await queryRunner.query( + `ALTER TYPE "user_emoji_mod_perm" RENAME TO "user_emojimodperm_enum"`, + ); + await queryRunner.query( + `ALTER TYPE "user_profile_ffvisibility" RENAME TO "user_profile_ffvisibility_enum"`, + ); + await queryRunner.query( + `ALTER TYPE "user_profile_muting_notification_types" RENAME TO "user_profile_mutingnotificationtypes_enum"`, + ); + } +}