bson.js 4.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", { value: true });
  3. exports.resolveBSONOptions = exports.pluckBSONSerializeOptions = exports.Timestamp = exports.serialize = exports.ObjectId = exports.MinKey = exports.MaxKey = exports.Long = exports.Int32 = exports.Double = exports.deserialize = exports.Decimal128 = exports.DBRef = exports.Code = exports.calculateObjectSize = exports.BSONType = exports.BSONSymbol = exports.BSONRegExp = exports.BSON = exports.Binary = void 0;
  4. var bson_1 = require("bson");
  5. Object.defineProperty(exports, "Binary", { enumerable: true, get: function () { return bson_1.Binary; } });
  6. Object.defineProperty(exports, "BSON", { enumerable: true, get: function () { return bson_1.BSON; } });
  7. Object.defineProperty(exports, "BSONRegExp", { enumerable: true, get: function () { return bson_1.BSONRegExp; } });
  8. Object.defineProperty(exports, "BSONSymbol", { enumerable: true, get: function () { return bson_1.BSONSymbol; } });
  9. Object.defineProperty(exports, "BSONType", { enumerable: true, get: function () { return bson_1.BSONType; } });
  10. Object.defineProperty(exports, "calculateObjectSize", { enumerable: true, get: function () { return bson_1.calculateObjectSize; } });
  11. Object.defineProperty(exports, "Code", { enumerable: true, get: function () { return bson_1.Code; } });
  12. Object.defineProperty(exports, "DBRef", { enumerable: true, get: function () { return bson_1.DBRef; } });
  13. Object.defineProperty(exports, "Decimal128", { enumerable: true, get: function () { return bson_1.Decimal128; } });
  14. Object.defineProperty(exports, "deserialize", { enumerable: true, get: function () { return bson_1.deserialize; } });
  15. Object.defineProperty(exports, "Double", { enumerable: true, get: function () { return bson_1.Double; } });
  16. Object.defineProperty(exports, "Int32", { enumerable: true, get: function () { return bson_1.Int32; } });
  17. Object.defineProperty(exports, "Long", { enumerable: true, get: function () { return bson_1.Long; } });
  18. Object.defineProperty(exports, "MaxKey", { enumerable: true, get: function () { return bson_1.MaxKey; } });
  19. Object.defineProperty(exports, "MinKey", { enumerable: true, get: function () { return bson_1.MinKey; } });
  20. Object.defineProperty(exports, "ObjectId", { enumerable: true, get: function () { return bson_1.ObjectId; } });
  21. Object.defineProperty(exports, "serialize", { enumerable: true, get: function () { return bson_1.serialize; } });
  22. Object.defineProperty(exports, "Timestamp", { enumerable: true, get: function () { return bson_1.Timestamp; } });
  23. function pluckBSONSerializeOptions(options) {
  24. const { fieldsAsRaw, useBigInt64, promoteValues, promoteBuffers, promoteLongs, serializeFunctions, ignoreUndefined, bsonRegExp, raw, enableUtf8Validation } = options;
  25. return {
  26. fieldsAsRaw,
  27. useBigInt64,
  28. promoteValues,
  29. promoteBuffers,
  30. promoteLongs,
  31. serializeFunctions,
  32. ignoreUndefined,
  33. bsonRegExp,
  34. raw,
  35. enableUtf8Validation
  36. };
  37. }
  38. exports.pluckBSONSerializeOptions = pluckBSONSerializeOptions;
  39. /**
  40. * Merge the given BSONSerializeOptions, preferring options over the parent's options, and
  41. * substituting defaults for values not set.
  42. *
  43. * @internal
  44. */
  45. function resolveBSONOptions(options, parent) {
  46. const parentOptions = parent?.bsonOptions;
  47. return {
  48. raw: options?.raw ?? parentOptions?.raw ?? false,
  49. useBigInt64: options?.useBigInt64 ?? parentOptions?.useBigInt64 ?? false,
  50. promoteLongs: options?.promoteLongs ?? parentOptions?.promoteLongs ?? true,
  51. promoteValues: options?.promoteValues ?? parentOptions?.promoteValues ?? true,
  52. promoteBuffers: options?.promoteBuffers ?? parentOptions?.promoteBuffers ?? false,
  53. ignoreUndefined: options?.ignoreUndefined ?? parentOptions?.ignoreUndefined ?? false,
  54. bsonRegExp: options?.bsonRegExp ?? parentOptions?.bsonRegExp ?? false,
  55. serializeFunctions: options?.serializeFunctions ?? parentOptions?.serializeFunctions ?? false,
  56. fieldsAsRaw: options?.fieldsAsRaw ?? parentOptions?.fieldsAsRaw ?? {},
  57. enableUtf8Validation: options?.enableUtf8Validation ?? parentOptions?.enableUtf8Validation ?? true
  58. };
  59. }
  60. exports.resolveBSONOptions = resolveBSONOptions;
  61. //# sourceMappingURL=bson.js.map