index.cjs 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. "use strict";
  2. var __defProp = Object.defineProperty;
  3. var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
  4. var __getOwnPropNames = Object.getOwnPropertyNames;
  5. var __hasOwnProp = Object.prototype.hasOwnProperty;
  6. var __export = (target, all) => {
  7. for (var name in all)
  8. __defProp(target, name, { get: all[name], enumerable: true });
  9. };
  10. var __copyProps = (to, from, except, desc) => {
  11. if (from && typeof from === "object" || typeof from === "function") {
  12. for (let key of __getOwnPropNames(from))
  13. if (!__hasOwnProp.call(to, key) && key !== except)
  14. __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
  15. }
  16. return to;
  17. };
  18. var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
  19. var common_exports = {};
  20. __export(common_exports, {
  21. getValueFromDataApi: () => getValueFromDataApi,
  22. toValueParam: () => toValueParam,
  23. typingsToAwsTypeHint: () => typingsToAwsTypeHint
  24. });
  25. module.exports = __toCommonJS(common_exports);
  26. var import_client_rds_data = require("@aws-sdk/client-rds-data");
  27. function getValueFromDataApi(field) {
  28. if (field.stringValue !== void 0) {
  29. return field.stringValue;
  30. } else if (field.booleanValue !== void 0) {
  31. return field.booleanValue;
  32. } else if (field.doubleValue !== void 0) {
  33. return field.doubleValue;
  34. } else if (field.isNull !== void 0) {
  35. return null;
  36. } else if (field.longValue !== void 0) {
  37. return field.longValue;
  38. } else if (field.blobValue !== void 0) {
  39. return field.blobValue;
  40. } else if (field.arrayValue !== void 0) {
  41. if (field.arrayValue.stringValues !== void 0) {
  42. return field.arrayValue.stringValues;
  43. }
  44. if (field.arrayValue.longValues !== void 0) {
  45. return field.arrayValue.longValues;
  46. }
  47. if (field.arrayValue.doubleValues !== void 0) {
  48. return field.arrayValue.doubleValues;
  49. }
  50. if (field.arrayValue.booleanValues !== void 0) {
  51. return field.arrayValue.booleanValues;
  52. }
  53. if (field.arrayValue.arrayValues !== void 0) {
  54. return field.arrayValue.arrayValues;
  55. }
  56. throw new Error("Unknown array type");
  57. } else {
  58. throw new Error("Unknown type");
  59. }
  60. }
  61. function typingsToAwsTypeHint(typings) {
  62. if (typings === "date") {
  63. return import_client_rds_data.TypeHint.DATE;
  64. } else if (typings === "decimal") {
  65. return import_client_rds_data.TypeHint.DECIMAL;
  66. } else if (typings === "json") {
  67. return import_client_rds_data.TypeHint.JSON;
  68. } else if (typings === "time") {
  69. return import_client_rds_data.TypeHint.TIME;
  70. } else if (typings === "timestamp") {
  71. return import_client_rds_data.TypeHint.TIMESTAMP;
  72. } else if (typings === "uuid") {
  73. return import_client_rds_data.TypeHint.UUID;
  74. } else {
  75. return void 0;
  76. }
  77. }
  78. function toValueParam(value, typings) {
  79. const response = {
  80. value: {},
  81. typeHint: typingsToAwsTypeHint(typings)
  82. };
  83. if (value === null) {
  84. response.value = { isNull: true };
  85. } else if (typeof value === "string") {
  86. switch (response.typeHint) {
  87. case import_client_rds_data.TypeHint.DATE: {
  88. response.value = { stringValue: value.split("T")[0] };
  89. break;
  90. }
  91. case import_client_rds_data.TypeHint.TIMESTAMP: {
  92. response.value = { stringValue: value.replace("T", " ").replace("Z", "") };
  93. break;
  94. }
  95. default: {
  96. response.value = { stringValue: value };
  97. break;
  98. }
  99. }
  100. } else if (typeof value === "number" && Number.isInteger(value)) {
  101. response.value = { longValue: value };
  102. } else if (typeof value === "number" && !Number.isInteger(value)) {
  103. response.value = { doubleValue: value };
  104. } else if (typeof value === "boolean") {
  105. response.value = { booleanValue: value };
  106. } else if (value instanceof Date) {
  107. response.value = { stringValue: value.toISOString().replace("T", " ").replace("Z", "") };
  108. } else {
  109. throw new Error(`Unknown type for ${value}`);
  110. }
  111. return response;
  112. }
  113. // Annotate the CommonJS export names for ESM import in node:
  114. 0 && (module.exports = {
  115. getValueFromDataApi,
  116. toValueParam,
  117. typingsToAwsTypeHint
  118. });
  119. //# sourceMappingURL=index.cjs.map