from apollo_utils.core.utils.ext_enum import ExtEnum APP_NAME = "apollo_playlists_messages" ENV_PROD = "prod" EVENT_DOMAIN = "playlist" class EventCode(ExtEnum): ENTRY = "playlists_entry" UPDATE = "playlists_tracklist_update" EXIT = "playlists_exit" MAJOR_MOVE = "playlists_major_move" USER_DATA_HEADER = {"X-App-Slug": "apollo"} class Service(ExtEnum): APOLLO = "APOLLO" USER_DATA = "USERDATA" GATE_API = "GATE" class FavoriteEntityType: TRACK = "track" PLAYLIST = "playlist" class MessageTypeEntitie(ExtEnum): TOP = "top" STARRED = "starred" class MessageType: STARRED_ENTRY = "starred_track_starred_playlist_entry" TOP_ENTRY = "starred_track_top_playlist_entry" UPDATE = "starred_playlist_tracklist_update" STARRED_EXIT = "starred_track_starred_playlist_exit" TOP_EXIT = "starred_track_top_playlist_exit" STARRED_MAJOR_MOVE = "starred_track_starred_playlist_major_move" TOP_MAJOR_MOVE = "starred_track_top_playlist_major_move" MESSAGE_TYPE_BY_EVENT_CODE_AND_ENTITY = { EventCode.ENTRY: { MessageTypeEntitie.TOP: MessageType.TOP_ENTRY, MessageTypeEntitie.STARRED: MessageType.STARRED_ENTRY }, EventCode.EXIT: { MessageTypeEntitie.TOP: MessageType.TOP_EXIT, MessageTypeEntitie.STARRED: MessageType.STARRED_EXIT }, EventCode.MAJOR_MOVE: { MessageTypeEntitie.TOP: MessageType.TOP_MAJOR_MOVE, MessageTypeEntitie.STARRED: MessageType.STARRED_MAJOR_MOVE } } STARRED_TRACK_IN_PLAYLIST = "starred_track_in_playlist" MESSAGE_TYPE_TO_SUBJECT = { MessageType.STARRED_ENTRY: STARRED_TRACK_IN_PLAYLIST, MessageType.TOP_ENTRY: STARRED_TRACK_IN_PLAYLIST, MessageType.UPDATE: "starred_playlist", MessageType.STARRED_EXIT: STARRED_TRACK_IN_PLAYLIST, MessageType.TOP_EXIT: STARRED_TRACK_IN_PLAYLIST, MessageType.STARRED_MAJOR_MOVE: STARRED_TRACK_IN_PLAYLIST, MessageType.TOP_MAJOR_MOVE: STARRED_TRACK_IN_PLAYLIST, } MESSAGE_DOMAIN = "message" MESSAGE_VIEWS = ["feed_message", "push_message"] PLAYLIST_IMAGE_RESOLUTION = "medium" APPLE_SYNONYM_CC = ("us", "global") EVENT_CODE_TO_SETTINGS_V2_FIELD = { EventCode.ENTRY: "starred_tracks", EventCode.EXIT: "starred_tracks", EventCode.MAJOR_MOVE: "starred_tracks", EventCode.UPDATE: "starred_playlists" }