import os from delphi_api.const import ENVIRONMENT # noinspection PyUnresolvedReferences from delphi_api.core.constants import ISO_3166_COUNTRIES_ALPHA2, UTF8 #: Separator for BigTable keys SEP = '~' #: Default column family COLUMN_FAMILY_ID = 'cf1' COLUMN_WORLDWIDE = 'worldwide' COLUMN_UNKNOWN_REGION = 'unknown' #: API request parameter ``group_by`` allowed values ALLOWED_GROUP_BY_VALUES = frozenset({'date'}) #: Database table prefix DB_TABLE_PREFIX = os.getenv('DB_TABLE_PREFIX', f'{ENVIRONMENT}-delphi') AMAZON_EARLIEST_DATE = '2017-05-01' #: Set of slugs for query permutations AMAZON_DSP_SLUGS = frozenset({ 'amazonprime', 'amazonmusicunlimited', 'amazonadsupported', }) #: Amazon Prime Supported Countries - amazonprime AMAZON_PRIME_COUNTRY_CODES = frozenset( {COLUMN_WORLDWIDE, COLUMN_UNKNOWN_REGION}.union(ISO_3166_COUNTRIES_ALPHA2) ) #: Amazon Music Supported Countries - amazonmusicunlimited AMAZON_MUSIC_COUNTRY_CODES = frozenset( {COLUMN_WORLDWIDE, COLUMN_UNKNOWN_REGION}.union(ISO_3166_COUNTRIES_ALPHA2) ) #: Amazon Ads Supported Countries - amazonadsupported AMAZON_ADS_COUNTRY_CODES = frozenset({ COLUMN_WORLDWIDE, COLUMN_UNKNOWN_REGION, 'us', }) #: Union of the other Amazon DSP country codes AMAZON_UNION_COUNTRY_CODES = frozenset( list(set() .union(AMAZON_ADS_COUNTRY_CODES, AMAZON_MUSIC_COUNTRY_CODES, AMAZON_PRIME_COUNTRY_CODES)) ) #: Apple Music Supported Countries APPLE_COUNTRY_CODES = frozenset({ COLUMN_WORLDWIDE, COLUMN_UNKNOWN_REGION, 'us', }) #: Spotify Music Supported Countries SPOTIFY_COUNTRY_CODES = frozenset({ COLUMN_WORLDWIDE, COLUMN_UNKNOWN_REGION, 'ad', 'ae', 'ar', 'at', 'au', 'be', 'bg', 'bh', 'bo', 'br', 'ca', 'ch', 'cl', 'co', 'cr', 'cy', 'cz', 'de', 'dk', 'do', 'dz', 'ec', 'ee', 'eg', 'es', 'fi', 'fr', 'gb', 'gr', 'gt', 'hk', 'hn', 'hu', 'id', 'ie', 'il', 'in', 'is', 'it', 'jo', 'jp', 'kw', 'lb', 'li', 'lt', 'lu', 'lv', 'ma', 'mc', 'mt', 'mx', 'my', 'ni', 'nl', 'no', 'nz', 'om', 'pa', 'pe', 'ph', 'pl', 'ps', 'pt', 'py', 'qa', 'ro', 'sa', 'se', 'sg', 'sk', 'sv', 'th', 'tn', 'tr', 'tw', 'us', 'uy', 'vn', 'za', }) #: YouTube Music Supported Countries – ToDo: Update these from spec, they are not based on anything YOUTUBE_COUNTRY_CODES = frozenset({ COLUMN_WORLDWIDE, COLUMN_UNKNOWN_REGION, 'us', })