def getFloatFromStr(number: str) -> float:
    """ Return float representation of a given number string.
    HEX number strings must start with ``0x``.

    Args:
        numberStr: int/float/string representation of a given number.
    """
    numberStr = number.strip()
    isNegative = False
    if "-" in numberStr:
        numberStr = numberStr.replace("-", "")
        isNegative = True

    if numberStr.lower().startswith("0x"):
        num = float(int(numberStr, 16))
    else:
        num = float(numberStr)

    if isNegative:
        num = 0 - num

    return num