from apollo_utils.core.utils.ext_enum import ExtEnum, extend_enum APOLLO_SLUG = "apollo" BASE_API_PREFIX = "/api" LEGACY_API_PREFIX = "/api/v1" ACTIVITY_KEY = "is_active" DEFAULT_PAGE_LIMIT = 50 MAX_PAGE_LIMIT = 500 MAX_FULL_SETTINGS_PAGE_LIMIT = 3000 class ApolloEntityType(str, ExtEnum): TRACK = "track" PLAYLIST = "playlist" @extend_enum(ApolloEntityType) class EntityType(str, ExtEnum): COUNTRY = "country" GENRE = "genre" class DSP(str, ExtEnum): SPOTIFY = "spotify" APPLE = "apple" IOS = "ios" ANDROID = "android" ALL_OS = (IOS, ANDROID) class OS(str, ExtEnum): IOS = IOS ANDROID = ANDROID class CheckUniqueMode(str, ExtEnum): INACTIVE = "inactive" RAISE = "raise" EXCLUDE = "exclude" def __bool__(self): return self is not CheckUniqueMode.INACTIVE