CoolFace
Apppublic

AK-21/Graphite-Industrial-Intelligence

sourceHugging Faceupdated 3mo agoView on Hugging Face
0likes
index.js93 linesDownload Raw Back to common
1import { TypeHint } from "@aws-sdk/client-rds-data";2function getValueFromDataApi(field) {3  if (field.stringValue !== void 0) {4    return field.stringValue;5  } else if (field.booleanValue !== void 0) {6    return field.booleanValue;7  } else if (field.doubleValue !== void 0) {8    return field.doubleValue;9  } else if (field.isNull !== void 0) {10    return null;11  } else if (field.longValue !== void 0) {12    return field.longValue;13  } else if (field.blobValue !== void 0) {14    return field.blobValue;15  } else if (field.arrayValue !== void 0) {16    if (field.arrayValue.stringValues !== void 0) {17      return field.arrayValue.stringValues;18    }19    if (field.arrayValue.longValues !== void 0) {20      return field.arrayValue.longValues;21    }22    if (field.arrayValue.doubleValues !== void 0) {23      return field.arrayValue.doubleValues;24    }25    if (field.arrayValue.booleanValues !== void 0) {26      return field.arrayValue.booleanValues;27    }28    if (field.arrayValue.arrayValues !== void 0) {29      return field.arrayValue.arrayValues;30    }31    throw new Error("Unknown array type");32  } else {33    throw new Error("Unknown type");34  }35}36function typingsToAwsTypeHint(typings) {37  if (typings === "date") {38    return TypeHint.DATE;39  } else if (typings === "decimal") {40    return TypeHint.DECIMAL;41  } else if (typings === "json") {42    return TypeHint.JSON;43  } else if (typings === "time") {44    return TypeHint.TIME;45  } else if (typings === "timestamp") {46    return TypeHint.TIMESTAMP;47  } else if (typings === "uuid") {48    return TypeHint.UUID;49  } else {50    return void 0;51  }52}53function toValueParam(value, typings) {54  const response = {55    value: {},56    typeHint: typingsToAwsTypeHint(typings)57  };58  if (value === null) {59    response.value = { isNull: true };60  } else if (typeof value === "string") {61    switch (response.typeHint) {62      case TypeHint.DATE: {63        response.value = { stringValue: value.split("T")[0] };64        break;65      }66      case TypeHint.TIMESTAMP: {67        response.value = { stringValue: value.replace("T", " ").replace("Z", "") };68        break;69      }70      default: {71        response.value = { stringValue: value };72        break;73      }74    }75  } else if (typeof value === "number" && Number.isInteger(value)) {76    response.value = { longValue: value };77  } else if (typeof value === "number" && !Number.isInteger(value)) {78    response.value = { doubleValue: value };79  } else if (typeof value === "boolean") {80    response.value = { booleanValue: value };81  } else if (value instanceof Date) {82    response.value = { stringValue: value.toISOString().replace("T", " ").replace("Z", "") };83  } else {84    throw new Error(`Unknown type for ${value}`);85  }86  return response;87}88export {89  getValueFromDataApi,90  toValueParam,91  typingsToAwsTypeHint92};93//# sourceMappingURL=index.js.map