def get_datatype_mapping()

in mrs_plugin/lib/sdk.py [0:0]


def get_datatype_mapping(db_datatype, sdk_language):
    if db_datatype is None:
        db_datatype = "text"

    db_datatype = db_datatype.lower()
    if sdk_language == "TypeScript":
        if db_datatype.startswith(("tinyint(1)", "bit(1)")):
            return "boolean"
        if db_datatype.startswith(("tinyint", "smallint", "mediumint", "int", "bigint", "decimal", "numeric",
                                     "float", "double")):
            return "number"
        if db_datatype.startswith("json"):
            return "JsonValue"
        if db_datatype.startswith("geometrycollection"):
            return "GeometryCollection"
        if db_datatype.startswith("geometry"):
            return "Geometry"
        if db_datatype.startswith("point"):
            return "Point"
        if db_datatype.startswith("multipoint"):
            return "MultiPoint"
        if db_datatype.startswith("linestring"):
            return "LineString"
        if db_datatype.startswith("multilinestring"):
            return "MultiLineString"
        if db_datatype.startswith("polygon"):
            return "Polygon"
        if db_datatype.startswith("multipolygon"):
            return "MultiPolygon"
        return "string"
    if sdk_language == "Python":
        if db_datatype.startswith(("tinyint(1)", "bit(1)")):
            return "bool"
        if db_datatype.startswith(("tinyint", "smallint", "mediumint", "int", "bigint")):
            return "int"
        if db_datatype.startswith(("decimal", "numeric", "float", "double")):
            return "float"
        if db_datatype.startswith("json"):
            return "JsonValue"
        if db_datatype.startswith("geometry"):
            return "Geometry"
        if db_datatype.startswith("point"):
            return "Point"
        if db_datatype.startswith("linestring"):
            return "LineString"
        if db_datatype.startswith("polygon"):
            return "Polygon"
        if db_datatype.startswith("multipoint"):
            return "MultiPoint"
        if db_datatype.startswith("multilinestring"):
            return "MultiLineString"
        if db_datatype.startswith("multipolygon"):
            return "MultiPolygon"
        if db_datatype.startswith("geomcollection"):
            return "GeometryCollection"
        if db_datatype.startswith(("datetime", "timestamp")):
            return "DateTime"
        if db_datatype.startswith("date"):
            return "Date"
        if db_datatype.startswith("time"):
            return "Time"
        if db_datatype.startswith("year"):
            return "Year"
        if db_datatype.startswith("vector"):
            return "Vector"
        return "str"

    return "unknown"