Spaces:
Runtime error
Runtime error
File size: 974 Bytes
91525e6 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
import json
import locale
import random
import sys
from typing import Union
from .constants import DELIMITER
from .locale import LocationHint
def append_identifier(msg: dict) -> str:
# Convert dict to json string
return json.dumps(msg, ensure_ascii=False) + DELIMITER
def get_ran_hex(length: int = 32) -> str:
return "".join(random.choice("0123456789abcdef") for _ in range(length))
def get_location_hint_from_locale(locale: str) -> Union[dict, None]:
locale = locale.lower()
if locale == "en-gb":
hint = LocationHint.UK.value
elif locale == "en-ie":
hint = LocationHint.EU.value
elif locale == "zh-cn":
hint = LocationHint.CHINA.value
else:
hint = LocationHint.USA.value
return hint.get("LocationHint")
def guess_locale() -> str:
if sys.platform.startswith("win"):
return "en-us"
loc, _ = locale.getlocale()
if not loc:
return "en-us"
return loc.replace("_", "-")
|