From 323c3531ba0e43f6c74a2ade184a4f6e1fa089db Mon Sep 17 00:00:00 2001 From: netkas Date: Sun, 29 Sep 2024 21:46:55 -0400 Subject: [PATCH] Refactor enums to use native PHP 8.1 syntax --- src/TgBotLib/Enums/BotCommandScopeType.php | 16 +++--- src/TgBotLib/Enums/ChatActionType.php | 22 ++++---- src/TgBotLib/Enums/ChatMemberStatus.php | 14 ++--- src/TgBotLib/Enums/ChatType.php | 10 ++-- src/TgBotLib/Enums/EventType.php | 54 ++++++-------------- src/TgBotLib/Enums/InlineQueryResultType.php | 41 +++++---------- src/TgBotLib/Enums/InputMediaType.php | 12 ++--- src/TgBotLib/Enums/MenuButtonType.php | 8 +-- src/TgBotLib/Enums/MessageEntityType.php | 36 ++++++------- src/TgBotLib/Enums/PassportElementType.php | 28 +++++----- src/TgBotLib/Enums/PollType.php | 6 +-- src/TgBotLib/Enums/StickerFormat.php | 8 +-- src/TgBotLib/Enums/StickerType.php | 8 +-- src/TgBotLib/Enums/ThumbnailMimeType.php | 8 +-- src/TgBotLib/Enums/UpdateEventType.php | 8 +-- 15 files changed, 122 insertions(+), 157 deletions(-) diff --git a/src/TgBotLib/Enums/BotCommandScopeType.php b/src/TgBotLib/Enums/BotCommandScopeType.php index 1019015..468ea2c 100644 --- a/src/TgBotLib/Enums/BotCommandScopeType.php +++ b/src/TgBotLib/Enums/BotCommandScopeType.php @@ -2,13 +2,13 @@ namespace TgBotLib\Enums; - final class BotCommandScopeType + enum BotCommandScopeType : string { - public const DEFAULT = 'default'; - public const ALL_PRIVATE_CHATS = 'all_private_chats'; - public const ALL_CHAT_GROUPS = 'all_group_chats'; - public const ALL_CHAT_ADMINISTRATORS = 'all_chat_administrators'; - public const CHAT = 'chat'; - public const CHAT_ADMINISTRATORS = 'chat_administrators'; - public const CHAT_MEMBER = 'chat_member'; + case DEFAULT = 'default'; + case ALL_PRIVATE_CHATS = 'all_private_chats'; + case ALL_CHAT_GROUPS = 'all_group_chats'; + case ALL_CHAT_ADMINISTRATORS = 'all_chat_administrators'; + case CHAT = 'chat'; + case CHAT_ADMINISTRATORS = 'chat_administrators'; + case CHAT_MEMBER = 'chat_member'; } \ No newline at end of file diff --git a/src/TgBotLib/Enums/ChatActionType.php b/src/TgBotLib/Enums/ChatActionType.php index 030f36c..982a1b3 100644 --- a/src/TgBotLib/Enums/ChatActionType.php +++ b/src/TgBotLib/Enums/ChatActionType.php @@ -2,16 +2,16 @@ namespace TgBotLib\Enums; - final class ChatActionType + enum ChatActionType : string { - public const TYPING = 'typing'; - public const UPLOAD_PHOTO = 'upload_photo'; - public const RECORD_VIDEO = 'record_video'; - public const UPLOAD_VIDEO = 'upload_video'; - public const RECORD_AUDIO = 'record_audio'; - public const UPLOAD_AUDIO = 'upload_audio'; - public const UPLOAD_DOCUMENT = 'upload_document'; - public const FIND_LOCATION = 'find_location'; - public const RECORD_VIDEO_NOTE = 'record_video_note'; - public const UPLOAD_VIDEO_NOTE = 'upload_video_note'; + case TYPING = 'typing'; + case UPLOAD_PHOTO = 'upload_photo'; + case RECORD_VIDEO = 'record_video'; + case UPLOAD_VIDEO = 'upload_video'; + case RECORD_AUDIO = 'record_audio'; + case UPLOAD_AUDIO = 'upload_audio'; + case UPLOAD_DOCUMENT = 'upload_document'; + case FIND_LOCATION = 'find_location'; + case RECORD_VIDEO_NOTE = 'record_video_note'; + case UPLOAD_VIDEO_NOTE = 'upload_video_note'; } \ No newline at end of file diff --git a/src/TgBotLib/Enums/ChatMemberStatus.php b/src/TgBotLib/Enums/ChatMemberStatus.php index 5e20997..ea4941f 100644 --- a/src/TgBotLib/Enums/ChatMemberStatus.php +++ b/src/TgBotLib/Enums/ChatMemberStatus.php @@ -2,12 +2,12 @@ namespace TgBotLib\Enums; - final class ChatMemberStatus + enum ChatMemberStatus : string { - public const CREATOR = 'creator'; - public const ADMINISTRATOR = 'administrator'; - public const MEMBER = 'member'; - public const RESTRICTED = 'restricted'; - public const LEFT = 'left'; - public const KICKED = 'kicked'; + case CREATOR = 'creator'; + case ADMINISTRATOR = 'administrator'; + case MEMBER = 'member'; + case RESTRICTED = 'restricted'; + case LEFT = 'left'; + case KICKED = 'kicked'; } \ No newline at end of file diff --git a/src/TgBotLib/Enums/ChatType.php b/src/TgBotLib/Enums/ChatType.php index 64bb929..ffcded7 100644 --- a/src/TgBotLib/Enums/ChatType.php +++ b/src/TgBotLib/Enums/ChatType.php @@ -2,10 +2,10 @@ namespace TgBotLib\Enums; - final class ChatType + enum ChatType : string { - public const PRIVATE = 'private'; - public const GROUP = 'group'; - public const SUPERGROUP = 'supergroup'; - public const CHANNEL = 'channel'; + case PRIVATE = 'private'; + case GROUP = 'group'; + case SUPERGROUP = 'supergroup'; + case CHANNEL = 'channel'; } \ No newline at end of file diff --git a/src/TgBotLib/Enums/EventType.php b/src/TgBotLib/Enums/EventType.php index 1880ae5..9684b3b 100644 --- a/src/TgBotLib/Enums/EventType.php +++ b/src/TgBotLib/Enums/EventType.php @@ -2,42 +2,22 @@ namespace TgBotLib\Enums; - final class EventType + enum EventType : string { - public const GENERIC_UPDATE = 'generic_update'; - public const MESSAGE = 'message'; - public const EDITED_MESSAGE = 'edited_message'; - public const GENERIC_COMMAND_MESSAGE = 'generic_command_message'; - public const CHAT_MEMBER_JOINED = 'chat_member_joined'; - public const CHAT_MEMBER_LEFT = 'chat_member_left'; - public const CHAT_MEMBER_KICKED = 'chat_member_kicked'; - public const CHAT_MEMBER_BANNED = 'chat_member_banned'; - public const CHAT_MEMBER_UNBANNED = 'chat_member_unbanned'; - public const CHAT_MEMBER_PROMOTED = 'chat_member_promoted'; - public const CHAT_MEMBER_DEMOTED = 'chat_member_demoted'; - public const CHAT_MEMBER_RESTRICTED = 'chat_member_restricted'; - public const CHAT_MEMBER_UNRESTRICTED = 'chat_member_unrestricted'; - public const CHAT_TITLE_CHANGED = 'chat_title_changed'; - public const CHAT_PHOTO_CHANGED = 'chat_photo_changed'; - public const CALLBACK_QUERY = 'callback_query'; - - public const All = [ - self::GENERIC_UPDATE, - self::MESSAGE, - self::EDITED_MESSAGE, - self::GENERIC_COMMAND_MESSAGE, - self::CHAT_MEMBER_JOINED, - self::CHAT_MEMBER_LEFT, - self::CHAT_MEMBER_KICKED, - self::CHAT_MEMBER_BANNED, - self::CHAT_MEMBER_UNBANNED, - self::CHAT_MEMBER_PROMOTED, - self::CHAT_MEMBER_DEMOTED, - self::CHAT_MEMBER_RESTRICTED, - self::CHAT_MEMBER_UNRESTRICTED, - self::CHAT_TITLE_CHANGED, - self::CHAT_PHOTO_CHANGED, - self::CALLBACK_QUERY, - ]; - + case GENERIC_UPDATE = 'generic_update'; + case MESSAGE = 'message'; + case EDITED_MESSAGE = 'edited_message'; + case GENERIC_COMMAND_MESSAGE = 'generic_command_message'; + case CHAT_MEMBER_JOINED = 'chat_member_joined'; + case CHAT_MEMBER_LEFT = 'chat_member_left'; + case CHAT_MEMBER_KICKED = 'chat_member_kicked'; + case CHAT_MEMBER_BANNED = 'chat_member_banned'; + case CHAT_MEMBER_UNBANNED = 'chat_member_unbanned'; + case CHAT_MEMBER_PROMOTED = 'chat_member_promoted'; + case CHAT_MEMBER_DEMOTED = 'chat_member_demoted'; + case CHAT_MEMBER_RESTRICTED = 'chat_member_restricted'; + case CHAT_MEMBER_UNRESTRICTED = 'chat_member_unrestricted'; + case CHAT_TITLE_CHANGED = 'chat_title_changed'; + case CHAT_PHOTO_CHANGED = 'chat_photo_changed'; + case CALLBACK_QUERY = 'callback_query'; } \ No newline at end of file diff --git a/src/TgBotLib/Enums/InlineQueryResultType.php b/src/TgBotLib/Enums/InlineQueryResultType.php index 55d62a7..05d93cc 100644 --- a/src/TgBotLib/Enums/InlineQueryResultType.php +++ b/src/TgBotLib/Enums/InlineQueryResultType.php @@ -2,80 +2,65 @@ namespace TgBotLib\Enums; - final class InlineQueryResultType + enum InlineQueryResultType : string { /** * @link https://core.telegram.org/bots/api#inlinequeryresultarticle */ - public const ARTICLE = 'article'; + case ARTICLE = 'article'; /** * @link https://core.telegram.org/bots/api#inlinequeryresultphoto */ - public const PHOTO = 'photo'; + case PHOTO = 'photo'; /** * @link https://core.telegram.org/bots/api#inlinequeryresultgif */ - public const GIF = 'gif'; + case GIF = 'gif'; /** * @link https://core.telegram.org/bots/api#inlinequeryresultmpeg4gif */ - public const MPEG_4_GIF = 'mpeg4_gif'; + case MPEG_4_GIF = 'mpeg4_gif'; /** * @link https://core.telegram.org/bots/api#inlinequeryresultvideompeg4 */ - public const VIDEO = 'video'; + case VIDEO = 'video'; /** * @link https://core.telegram.org/bots/api#inlinequeryresultaudio */ - public const AUDIO = 'audio'; + case AUDIO = 'audio'; /** * @link https://core.telegram.org/bots/api#inlinequeryresultvoice */ - public const VOICE = 'voice'; + case VOICE = 'voice'; /** * @link https://core.telegram.org/bots/api#inlinequeryresultdocument */ - public const DOCUMENT = 'document'; + case DOCUMENT = 'document'; /** * @link https://core.telegram.org/bots/api#inlinequeryresultlocation */ - public const LOCATION = 'location'; + case LOCATION = 'location'; /** * @link https://core.telegram.org/bots/api#inlinequeryresultvenue */ - public const VENUE = 'venue'; + case VENUE = 'venue'; /** * @link https://core.telegram.org/bots/api#inlinequeryresultcontact */ - public const CONTACT = 'contact'; + case CONTACT = 'contact'; /** * @link https://core.telegram.org/bots/api#inlinequeryresultgame */ - public const GAME = 'game'; - - public const ALL = [ - self::ARTICLE, - self::PHOTO, - self::GIF, - self::MPEG_4_GIF, - self::VIDEO, - self::AUDIO, - self::VOICE, - self::DOCUMENT, - self::LOCATION, - self::VENUE, - self::CONTACT, - self::GAME, - ]; + case GAME = 'game'; } \ No newline at end of file diff --git a/src/TgBotLib/Enums/InputMediaType.php b/src/TgBotLib/Enums/InputMediaType.php index d05151c..f69a8f7 100644 --- a/src/TgBotLib/Enums/InputMediaType.php +++ b/src/TgBotLib/Enums/InputMediaType.php @@ -2,11 +2,11 @@ namespace TgBotLib\Enums; - final class InputMediaType + enum InputMediaType : string { - public const PHOTO = 'photo'; - public const VIDEO = 'video'; - public const ANIMATION = 'animation'; - public const AUDIO = 'audio'; - public const DOCUMENT = 'document'; + case PHOTO = 'photo'; + case VIDEO = 'video'; + case ANIMATION = 'animation'; + case AUDIO = 'audio'; + case DOCUMENT = 'document'; } \ No newline at end of file diff --git a/src/TgBotLib/Enums/MenuButtonType.php b/src/TgBotLib/Enums/MenuButtonType.php index 14d175b..032d657 100644 --- a/src/TgBotLib/Enums/MenuButtonType.php +++ b/src/TgBotLib/Enums/MenuButtonType.php @@ -2,9 +2,9 @@ namespace TgBotLib\Enums; - final class MenuButtonType + enum MenuButtonType : string { - public const COMMANDS = 'commands'; - public const WEB_APP = 'web_app'; - public const DEFAULT = 'default'; + case COMMANDS = 'commands'; + case WEB_APP = 'web_app'; + case DEFAULT = 'default'; } \ No newline at end of file diff --git a/src/TgBotLib/Enums/MessageEntityType.php b/src/TgBotLib/Enums/MessageEntityType.php index 5d5b4ec..8ef0233 100644 --- a/src/TgBotLib/Enums/MessageEntityType.php +++ b/src/TgBotLib/Enums/MessageEntityType.php @@ -2,40 +2,40 @@ namespace TgBotLib\Enums; - final class MessageEntityType + enum MessageEntityType : string { - public const MENTION = 'mention'; + case MENTION = 'mention'; - public const HASHTAG = 'hashtag'; + case HASHTAG = 'hashtag'; - public const CASHTAG = 'cashtag'; + case CASHTAG = 'cashtag'; - public const BOT_COMMAND = 'bot_command'; + case BOT_COMMAND = 'bot_command'; - public const URL = 'url'; + case URL = 'url'; - public const EMAIL = 'email'; + case EMAIL = 'email'; - public const PHONE_NUMBER = 'phone_number'; + case PHONE_NUMBER = 'phone_number'; - public const BOLD = 'bold'; + case BOLD = 'bold'; - public const ITALIC = 'italic'; + case ITALIC = 'italic'; - public const UNDERLINE = 'underline'; + case UNDERLINE = 'underline'; - public const STRIKETHROUGH = 'strikethrough'; + case STRIKETHROUGH = 'strikethrough'; - public const SPOILER = 'spoiler'; + case SPOILER = 'spoiler'; - public const CODE = 'code'; + case CODE = 'code'; - public const PRE = 'pre'; + case PRE = 'pre'; - public const TEXT_LINK = 'text_link'; + case TEXT_LINK = 'text_link'; - public const TEXT_MENTION = 'text_mention'; + case TEXT_MENTION = 'text_mention'; - public const CUSTOM_EMOJI = 'custom_emoji'; + case CUSTOM_EMOJI = 'custom_emoji'; } \ No newline at end of file diff --git a/src/TgBotLib/Enums/PassportElementType.php b/src/TgBotLib/Enums/PassportElementType.php index 726d9a0..84d22e8 100644 --- a/src/TgBotLib/Enums/PassportElementType.php +++ b/src/TgBotLib/Enums/PassportElementType.php @@ -2,19 +2,19 @@ namespace TgBotLib\Enums; - final class PassportElementType + enum PassportElementType : string { - public const PERSONAL_DETAILS = 'personal_details'; - public const PASSPORT = 'passport'; - public const DRIVER_LICENSE = 'driver_license'; - public const IDENTITY_CARD = 'identity_card'; - public const INTERNAL_PASSPORT = 'internal_passport'; - public const ADDRESS = 'address'; - public const UTILITY_BILL = 'utility_bill'; - public const BANK_STATEMENT = 'bank_statement'; - public const RENTAL_AGREEMENT = 'rental_agreement'; - public const PASSPORT_REGISTRATION = 'passport_registration'; - public const TEMPORARY_REGISTRATION = 'temporary_registration'; - public const PHONE_NUMBER = 'phone_number'; - public const EMAIL = 'email'; + case PERSONAL_DETAILS = 'personal_details'; + case PASSPORT = 'passport'; + case DRIVER_LICENSE = 'driver_license'; + case IDENTITY_CARD = 'identity_card'; + case INTERNAL_PASSPORT = 'internal_passport'; + case ADDRESS = 'address'; + case UTILITY_BILL = 'utility_bill'; + case BANK_STATEMENT = 'bank_statement'; + case RENTAL_AGREEMENT = 'rental_agreement'; + case PASSPORT_REGISTRATION = 'passport_registration'; + case TEMPORARY_REGISTRATION = 'temporary_registration'; + case PHONE_NUMBER = 'phone_number'; + case EMAIL = 'email'; } \ No newline at end of file diff --git a/src/TgBotLib/Enums/PollType.php b/src/TgBotLib/Enums/PollType.php index 617ad12..ef8600a 100644 --- a/src/TgBotLib/Enums/PollType.php +++ b/src/TgBotLib/Enums/PollType.php @@ -2,9 +2,9 @@ namespace TgBotLib\Enums; - final class PollType + enum PollType : string { - public const REGULAR = 'regular'; + case REGULAR = 'regular'; - public const QUIZ = 'quiz'; + case QUIZ = 'quiz'; } \ No newline at end of file diff --git a/src/TgBotLib/Enums/StickerFormat.php b/src/TgBotLib/Enums/StickerFormat.php index d35726a..afc1d49 100644 --- a/src/TgBotLib/Enums/StickerFormat.php +++ b/src/TgBotLib/Enums/StickerFormat.php @@ -2,9 +2,9 @@ namespace TgBotLib\Enums; - final class StickerFormat + enum StickerFormat : string { - public const STATIC = 'static'; - public const ANIMATED = 'animated'; - public const VIDEO = 'video'; + case STATIC = 'static'; + case ANIMATED = 'animated'; + case VIDEO = 'video'; } \ No newline at end of file diff --git a/src/TgBotLib/Enums/StickerType.php b/src/TgBotLib/Enums/StickerType.php index b5d7358..e409a59 100644 --- a/src/TgBotLib/Enums/StickerType.php +++ b/src/TgBotLib/Enums/StickerType.php @@ -2,11 +2,11 @@ namespace TgBotLib\Enums; - final class StickerType + enum StickerType : string { - public const REGULAR = 'regular'; + case REGULAR = 'regular'; - public const MASK = 'mask'; + case MASK = 'mask'; - public const CUSTOM_EMOJI = 'custom_emoji'; + case CUSTOM_EMOJI = 'custom_emoji'; } \ No newline at end of file diff --git a/src/TgBotLib/Enums/ThumbnailMimeType.php b/src/TgBotLib/Enums/ThumbnailMimeType.php index 33da384..af600f8 100644 --- a/src/TgBotLib/Enums/ThumbnailMimeType.php +++ b/src/TgBotLib/Enums/ThumbnailMimeType.php @@ -2,9 +2,9 @@ namespace TgBotLib\Enums; - final class ThumbnailMimeType + enum ThumbnailMimeType : string { - public const IMAGE_JPEG = 'image/jpeg'; - public const IMAGE_GIF = 'image/gif'; - public const VIDEO_MP4 = 'video/mp4'; + case IMAGE_JPEG = 'image/jpeg'; + case IMAGE_GIF = 'image/gif'; + case VIDEO_MP4 = 'video/mp4'; } \ No newline at end of file diff --git a/src/TgBotLib/Enums/UpdateEventType.php b/src/TgBotLib/Enums/UpdateEventType.php index 4f9188e..09f15b6 100644 --- a/src/TgBotLib/Enums/UpdateEventType.php +++ b/src/TgBotLib/Enums/UpdateEventType.php @@ -2,11 +2,11 @@ namespace TgBotLib\Enums; - final class UpdateEventType + enum UpdateEventType : string { - public const GENERIC_UPDATE = 'generic_update'; + case GENERIC_UPDATE = 'generic_update'; - public const MESSAGE = 'message'; + case MESSAGE = 'message'; - public const EDITED_MESSAGE = 'edited_message'; + case EDITED_MESSAGE = 'edited_message'; } \ No newline at end of file