effect-mongodb 0.1.2 → 0.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. package/README.md +25 -19
  2. package/dist/cjs/AggregationCursor.js +18 -8
  3. package/dist/cjs/AggregationCursor.js.map +1 -1
  4. package/dist/cjs/Collection.js +40 -29
  5. package/dist/cjs/Collection.js.map +1 -1
  6. package/dist/cjs/Db.js +9 -3
  7. package/dist/cjs/Db.js.map +1 -1
  8. package/dist/cjs/DocumentAggregationCursor.js +18 -8
  9. package/dist/cjs/DocumentAggregationCursor.js.map +1 -1
  10. package/dist/cjs/DocumentCollection.js +36 -24
  11. package/dist/cjs/DocumentCollection.js.map +1 -1
  12. package/dist/cjs/DocumentFindCursor.js +24 -14
  13. package/dist/cjs/DocumentFindCursor.js.map +1 -1
  14. package/dist/cjs/FindCursor.js +25 -18
  15. package/dist/cjs/FindCursor.js.map +1 -1
  16. package/dist/cjs/ListCollectionsCursor.js +18 -8
  17. package/dist/cjs/ListCollectionsCursor.js.map +1 -1
  18. package/dist/cjs/MongoClient.js +8 -2
  19. package/dist/cjs/MongoClient.js.map +1 -1
  20. package/dist/cjs/MongoError.js +7 -18
  21. package/dist/cjs/MongoError.js.map +1 -1
  22. package/dist/cjs/internal/mongo-error.js +27 -0
  23. package/dist/cjs/internal/mongo-error.js.map +1 -0
  24. package/dist/cjs/internal/schema.js +2 -2
  25. package/dist/cjs/internal/schema.js.map +1 -1
  26. package/dist/cjs/internal/version.js +1 -1
  27. package/dist/dts/AggregationCursor.d.ts +5 -5
  28. package/dist/dts/AggregationCursor.d.ts.map +1 -1
  29. package/dist/dts/Collection.d.ts +17 -18
  30. package/dist/dts/Collection.d.ts.map +1 -1
  31. package/dist/dts/Db.d.ts.map +1 -1
  32. package/dist/dts/DocumentAggregationCursor.d.ts +5 -5
  33. package/dist/dts/DocumentAggregationCursor.d.ts.map +1 -1
  34. package/dist/dts/DocumentCollection.d.ts +7 -7
  35. package/dist/dts/DocumentCollection.d.ts.map +1 -1
  36. package/dist/dts/DocumentFindCursor.d.ts +5 -5
  37. package/dist/dts/DocumentFindCursor.d.ts.map +1 -1
  38. package/dist/dts/FindCursor.d.ts +5 -5
  39. package/dist/dts/FindCursor.d.ts.map +1 -1
  40. package/dist/dts/ListCollectionsCursor.d.ts +5 -5
  41. package/dist/dts/ListCollectionsCursor.d.ts.map +1 -1
  42. package/dist/dts/MongoClient.d.ts.map +1 -1
  43. package/dist/dts/MongoError.d.ts +32 -12
  44. package/dist/dts/MongoError.d.ts.map +1 -1
  45. package/dist/dts/internal/mongo-error.d.ts +5 -0
  46. package/dist/dts/internal/mongo-error.d.ts.map +1 -0
  47. package/dist/esm/AggregationCursor.js +16 -6
  48. package/dist/esm/AggregationCursor.js.map +1 -1
  49. package/dist/esm/Collection.js +38 -27
  50. package/dist/esm/Collection.js.map +1 -1
  51. package/dist/esm/Db.js +9 -3
  52. package/dist/esm/Db.js.map +1 -1
  53. package/dist/esm/DocumentAggregationCursor.js +16 -6
  54. package/dist/esm/DocumentAggregationCursor.js.map +1 -1
  55. package/dist/esm/DocumentCollection.js +34 -22
  56. package/dist/esm/DocumentCollection.js.map +1 -1
  57. package/dist/esm/DocumentFindCursor.js +22 -12
  58. package/dist/esm/DocumentFindCursor.js.map +1 -1
  59. package/dist/esm/FindCursor.js +23 -16
  60. package/dist/esm/FindCursor.js.map +1 -1
  61. package/dist/esm/ListCollectionsCursor.js +16 -6
  62. package/dist/esm/ListCollectionsCursor.js.map +1 -1
  63. package/dist/esm/MongoClient.js +8 -2
  64. package/dist/esm/MongoClient.js.map +1 -1
  65. package/dist/esm/MongoError.js +3 -17
  66. package/dist/esm/MongoError.js.map +1 -1
  67. package/dist/esm/internal/mongo-error.js +18 -0
  68. package/dist/esm/internal/mongo-error.js.map +1 -0
  69. package/dist/esm/internal/schema.js +2 -2
  70. package/dist/esm/internal/schema.js.map +1 -1
  71. package/dist/esm/internal/version.js +1 -1
  72. package/package.json +1 -1
  73. package/src/AggregationCursor.ts +31 -6
  74. package/src/Collection.ts +80 -50
  75. package/src/Db.ts +7 -3
  76. package/src/DocumentAggregationCursor.ts +27 -5
  77. package/src/DocumentCollection.ts +52 -27
  78. package/src/DocumentFindCursor.ts +34 -11
  79. package/src/FindCursor.ts +36 -13
  80. package/src/ListCollectionsCursor.ts +31 -7
  81. package/src/MongoClient.ts +6 -2
  82. package/src/MongoError.ts +24 -32
  83. package/src/internal/mongo-error.ts +34 -0
  84. package/src/internal/schema.ts +2 -2
  85. package/src/internal/version.ts +1 -1
@@ -5,55 +5,66 @@ import * as Array from "effect/Array";
5
5
  import * as Data from "effect/Data";
6
6
  import * as Effect from "effect/Effect";
7
7
  import * as F from "effect/Function";
8
+ import { pipeArguments } from "effect/Pipeable";
8
9
  import * as Schema from "effect/Schema";
9
10
  import * as AggregationCursor from "./AggregationCursor.js";
10
11
  import * as FindCursor from "./FindCursor.js";
12
+ import { mongoErrorOrDie } from "./internal/mongo-error.js";
11
13
  import * as SchemaExt from "./internal/schema.js";
12
14
  import * as MongoError from "./MongoError.js";
13
- export class Collection extends /*#__PURE__*/Data.TaggedClass("Collection") {
15
+ /** @internal */
16
+ export class CollectionImpl extends /*#__PURE__*/Data.TaggedClass("Collection") {
14
17
  encode = /*#__PURE__*/Schema.encode(this.schema);
18
+ pipe() {
19
+ return pipeArguments(this, arguments);
20
+ }
15
21
  }
16
- export const find = /*#__PURE__*/F.dual(args => isCollection(args[0]), (collection, filter, options) => new FindCursor.FindCursor({
22
+ export const find = /*#__PURE__*/F.dual(args => isCollection(args[0]), (collection, filter, options) => new FindCursor.FindCursorImpl({
17
23
  cursor: collection.collection.find(filter ?? {}, options),
18
24
  schema: collection.schema
19
25
  }));
20
- export const findOne = /*#__PURE__*/F.dual(args => isCollection(args[0]), (collection, filter, options) => Effect.gen(function* (_) {
21
- const value = yield* _(Effect.promise(() => collection.collection.findOne(filter, options)));
22
- return yield* _(SchemaExt.decodeNullableDocument(collection.schema, value));
23
- }).pipe(Effect.catchAllDefect(MongoError.mongoErrorDie("findOne error"))));
24
- export const insertOne = /*#__PURE__*/F.dual(args => isCollection(args[0]), (collection, doc, options) => F.pipe(collection.encode(doc), Effect.flatMap(doc => Effect.promise(() => collection.collection.insertOne(doc, options))), Effect.catchAllDefect(MongoError.mongoErrorDie("insertOne error"))));
26
+ export const findOne = /*#__PURE__*/F.dual(args => isCollection(args[0]), (collection, filter, options) => Effect.gen(function* () {
27
+ const value = yield* Effect.promise(() => collection.collection.findOne(filter, options));
28
+ return yield* SchemaExt.decodeNullableDocument(collection.schema, value);
29
+ }).pipe(Effect.catchAllDefect(mongoErrorOrDie(errorSource(collection, "findOne")))));
30
+ export const insertOne = /*#__PURE__*/F.dual(args => isCollection(args[0]), (collection, doc, options) => F.pipe(collection.encode(doc), Effect.flatMap(doc => Effect.promise(() => collection.collection.insertOne(doc, options))), Effect.catchAllDefect(mongoErrorOrDie(errorSource(collection, "insertOne")))));
25
31
  export const insertMany = /*#__PURE__*/F.dual(args => isCollection(args[0]), (collection, docs, options) => {
26
- return F.pipe(docs, Effect.forEach(doc => collection.encode(doc)), Effect.flatMap(docs => Effect.promise(() => collection.collection.insertMany(docs, options))), Effect.catchAllDefect(MongoError.mongoErrorDie("insertMany error")));
32
+ return F.pipe(docs, Effect.forEach(doc => collection.encode(doc)), Effect.flatMap(docs => Effect.promise(() => collection.collection.insertMany(docs, options))), Effect.catchAllDefect(mongoErrorOrDie(errorSource(collection, "insertMany"))));
27
33
  });
28
- export const deleteOne = /*#__PURE__*/F.dual(args => isCollection(args[0]), (collection, filter, options) => Effect.promise(() => collection.collection.deleteOne(filter, options)).pipe(Effect.catchAllDefect(MongoError.mongoErrorDie("deleteOne error"))));
29
- export const deleteMany = /*#__PURE__*/F.dual(args => isCollection(args[0]), (collection, filter, options) => Effect.promise(() => collection.collection.deleteMany(filter, options)).pipe(Effect.catchAllDefect(MongoError.mongoErrorDie("deleteMany error"))));
30
- export const updateMany = /*#__PURE__*/F.dual(args => isCollection(args[0]), (collection, filter, update, options) => Effect.promise(() => collection.collection.updateMany(filter, Array.isArray(update) ? [...update] : update, options)).pipe(Effect.catchAllDefect(MongoError.mongoErrorDie("updateMany error"))));
31
- export const replaceOne = /*#__PURE__*/F.dual(args => isCollection(args[0]), (collection, filter, replacement, options) => F.pipe(collection.encode(replacement), Effect.flatMap(replacement => Effect.promise(() => collection.collection.replaceOne(filter, replacement, options))), Effect.catchAllDefect(MongoError.mongoErrorDie("replaceOne error"))));
32
- export const findOneAndReplace = /*#__PURE__*/F.dual(args => isCollection(args[0]), (collection, filter, replacement, options) => F.pipe(collection.encode(replacement), Effect.flatMap(replacement => Effect.promise(() => collection.collection.findOneAndReplace(filter, replacement, options ?? {}))), Effect.flatMap(value => Effect.gen(function* (_) {
34
+ export const deleteOne = /*#__PURE__*/F.dual(args => isCollection(args[0]), (collection, filter, options) => Effect.promise(() => collection.collection.deleteOne(filter, options)).pipe(Effect.catchAllDefect(mongoErrorOrDie(errorSource(collection, "deleteOne")))));
35
+ export const deleteMany = /*#__PURE__*/F.dual(args => isCollection(args[0]), (collection, filter, options) => Effect.promise(() => collection.collection.deleteMany(filter, options)).pipe(Effect.catchAllDefect(mongoErrorOrDie(errorSource(collection, "deleteMany")))));
36
+ export const updateMany = /*#__PURE__*/F.dual(args => isCollection(args[0]), (collection, filter, update, options) => Effect.promise(() => collection.collection.updateMany(filter, Array.isArray(update) ? [...update] : update, options)).pipe(Effect.catchAllDefect(mongoErrorOrDie(errorSource(collection, "updateMany")))));
37
+ export const replaceOne = /*#__PURE__*/F.dual(args => isCollection(args[0]), (collection, filter, replacement, options) => F.pipe(collection.encode(replacement), Effect.flatMap(replacement => Effect.promise(() => collection.collection.replaceOne(filter, replacement, options))), Effect.catchAllDefect(mongoErrorOrDie(errorSource(collection, "replaceOne")))));
38
+ export const findOneAndReplace = /*#__PURE__*/F.dual(args => isCollection(args[0]), (collection, filter, replacement, options) => F.pipe(collection.encode(replacement), Effect.flatMap(replacement => Effect.promise(() => collection.collection.findOneAndReplace(filter, replacement, options ?? {}))), Effect.flatMap(value => Effect.gen(function* () {
33
39
  if (options?.includeResultMetadata && !!value) {
34
40
  const result = value;
35
- const maybeValue = yield* _(SchemaExt.decodeNullableDocument(collection.schema, result.value));
41
+ const maybeValue = yield* SchemaExt.decodeNullableDocument(collection.schema, result.value);
36
42
  return {
37
43
  ...result,
38
44
  value: maybeValue
39
45
  };
40
46
  }
41
- return yield* _(SchemaExt.decodeNullableDocument(collection.schema, value));
42
- })), Effect.catchAllDefect(MongoError.mongoErrorDie("findOneAndReplace error"))));
43
- export const rename = /*#__PURE__*/F.dual(args => isCollection(args[0]), (collection, newName, options) => F.pipe(Effect.promise(() => collection.collection.rename(newName, options)), Effect.map(newCollection => new Collection({
47
+ return yield* SchemaExt.decodeNullableDocument(collection.schema, value);
48
+ })), Effect.catchAllDefect(mongoErrorOrDie(errorSource(collection, "findOneAndReplace")))));
49
+ export const rename = /*#__PURE__*/F.dual(args => isCollection(args[0]), (collection, newName, options) => F.pipe(Effect.promise(() => collection.collection.rename(newName, options)), Effect.map(newCollection => new CollectionImpl({
44
50
  collection: newCollection,
45
51
  schema: collection.schema
46
- })), Effect.catchAllDefect(MongoError.mongoErrorDie("rename error"))));
47
- export const drop = /*#__PURE__*/F.dual(args => isCollection(args[0]), (collection, options) => F.pipe(Effect.promise(() => collection.collection.drop(options)), Effect.catchAllDefect(MongoError.mongoErrorDie("drop error"))));
48
- export const createIndexes = /*#__PURE__*/F.dual(args => isCollection(args[0]), (collection, indexSpecs, options) => F.pipe(Effect.promise(() => collection.collection.createIndexes([...indexSpecs], options)), Effect.catchAllDefect(MongoError.mongoErrorDie("createIndexes error"))));
49
- export const createIndex = /*#__PURE__*/F.dual(args => isCollection(args[0]), (collection, indexSpec, options) => F.pipe(Effect.promise(() => collection.collection.createIndex(indexSpec, options)), Effect.catchAllDefect(MongoError.mongoErrorDie("createIndex error"))));
50
- // TODO: review return type. Should we return Document like mongodb driver?
51
- export const dropIndex = /*#__PURE__*/F.dual(args => isCollection(args[0]), (collection, indexName, options) => F.pipe(Effect.promise(() => collection.collection.dropIndex(indexName, options)), Effect.asVoid, Effect.catchAllDefect(MongoError.mongoErrorDie("dropIndex error"))));
52
- export const aggregate = /*#__PURE__*/F.dual(args => isCollection(args[0]), (collection, pipeline, schema, options) => new AggregationCursor.AggregationCursor({
52
+ })), Effect.catchAllDefect(mongoErrorOrDie(errorSource(collection, "rename")))));
53
+ export const drop = /*#__PURE__*/F.dual(args => isCollection(args[0]), (collection, options) => F.pipe(Effect.promise(() => collection.collection.drop(options)), Effect.catchAllDefect(mongoErrorOrDie(errorSource(collection, "drop")))));
54
+ export const createIndexes = /*#__PURE__*/F.dual(args => isCollection(args[0]), (collection, indexSpecs, options) => F.pipe(Effect.promise(() => collection.collection.createIndexes([...indexSpecs], options)), Effect.catchAllDefect(mongoErrorOrDie(errorSource(collection, "createIndexes")))));
55
+ export const createIndex = /*#__PURE__*/F.dual(args => isCollection(args[0]), (collection, indexSpec, options) => F.pipe(Effect.promise(() => collection.collection.createIndex(indexSpec, options)), Effect.catchAllDefect(mongoErrorOrDie(errorSource(collection, "createIndex")))));
56
+ export const dropIndex = /*#__PURE__*/F.dual(args => isCollection(args[0]), (collection, indexName, options) => F.pipe(Effect.promise(() => collection.collection.dropIndex(indexName, options)), Effect.catchAllDefect(mongoErrorOrDie(errorSource(collection, "dropIndex")))));
57
+ export const aggregate = /*#__PURE__*/F.dual(args => isCollection(args[0]), (collection, schema, pipeline, options) => new AggregationCursor.AggregationCursorImpl({
53
58
  cursor: collection.collection.aggregate([...pipeline], options),
54
59
  schema
55
60
  }));
56
- export const estimatedDocumentCount = /*#__PURE__*/F.dual(args => isCollection(args[0]), (collection, options) => F.pipe(Effect.promise(() => collection.collection.estimatedDocumentCount(options)), Effect.catchAllDefect(MongoError.mongoErrorDie("estimatedDocumentCount error"))));
57
- export const countDocuments = /*#__PURE__*/F.dual(args => isCollection(args[0]), (collection, filter, options) => F.pipe(Effect.promise(() => collection.collection.countDocuments(filter, options)), Effect.catchAllDefect(MongoError.mongoErrorDie("countDocuments error"))));
58
- const isCollection = x => x instanceof Collection;
61
+ export const estimatedDocumentCount = /*#__PURE__*/F.dual(args => isCollection(args[0]), (collection, options) => F.pipe(Effect.promise(() => collection.collection.estimatedDocumentCount(options)), Effect.catchAllDefect(mongoErrorOrDie(errorSource(collection, "estimatedDocumentCount")))));
62
+ export const countDocuments = /*#__PURE__*/F.dual(args => isCollection(args[0]), (collection, filter, options) => F.pipe(Effect.promise(() => collection.collection.countDocuments(filter, options)), Effect.catchAllDefect(mongoErrorOrDie(errorSource(collection, "countDocuments")))));
63
+ const isCollection = x => x instanceof CollectionImpl;
64
+ const errorSource = (collection, functionName) => new MongoError.CollectionErrorSource({
65
+ module: CollectionImpl.name,
66
+ functionName,
67
+ db: collection.collection.dbName,
68
+ collection: collection.collection.collectionName
69
+ });
59
70
  //# sourceMappingURL=Collection.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Collection.js","names":["Array","Data","Effect","F","Schema","AggregationCursor","FindCursor","SchemaExt","MongoError","Collection","TaggedClass","encode","schema","find","dual","args","isCollection","collection","filter","options","cursor","findOne","gen","_","value","promise","decodeNullableDocument","pipe","catchAllDefect","mongoErrorDie","insertOne","doc","flatMap","insertMany","docs","forEach","deleteOne","deleteMany","updateMany","update","isArray","replaceOne","replacement","findOneAndReplace","includeResultMetadata","result","maybeValue","rename","newName","map","newCollection","drop","createIndexes","indexSpecs","createIndex","indexSpec","dropIndex","indexName","asVoid","aggregate","pipeline","estimatedDocumentCount","countDocuments","x"],"sources":["../../src/Collection.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAGA,OAAO,KAAKA,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,IAAI,MAAM,aAAa;AACnC,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,CAAC,MAAM,iBAAiB;AAGpC,OAAO,KAAKC,MAAM,MAAM,eAAe;AA2BvC,OAAO,KAAKC,iBAAiB,MAAM,wBAAwB;AAC3D,OAAO,KAAKC,UAAU,MAAM,iBAAiB;AAG7C,OAAO,KAAKC,SAAS,MAAM,sBAAsB;AACjD,OAAO,KAAKC,UAAU,MAAM,iBAAiB;AAE7C,OAAM,MAAOC,UAAkE,sBAAQR,IAAI,CAACS,WAAW,CAAC,YAAY,CAGlH;EACSC,MAAM,gBAAGP,MAAM,CAACO,MAAM,CAAC,IAAI,CAACC,MAAM,CAAC;;AAK9C,OAAO,MAAMC,IAAI,gBAUbV,CAAC,CAACW,IAAI,CACPC,IAAI,IAAKC,YAAY,CAACD,IAAI,CAAC,CAAC,CAAC,CAAC,EAC/B,CACEE,UAA+B,EAC/BC,MAAkB,EAClBC,OAAqB,KAErB,IAAIb,UAAU,CAACA,UAAU,CAAU;EACjCc,MAAM,EAAEH,UAAU,CAACA,UAAU,CAACJ,IAAI,CAACK,MAAM,IAAI,EAAE,EAAEC,OAAO,CAAC;EACzDP,MAAM,EAAEK,UAAU,CAACL;CACpB,CAAC,CACL;AAED,OAAO,MAAMS,OAAO,gBAShBlB,CAAC,CAACW,IAAI,CACPC,IAAI,IAAKC,YAAY,CAACD,IAAI,CAAC,CAAC,CAAC,CAAC,EAC/B,CACEE,UAA+B,EAC/BC,MAAiB,EACjBC,OAAqB,KAErBjB,MAAM,CAACoB,GAAG,CAAC,WAAUC,CAAC;EACpB,MAAMC,KAAK,GAAG,OAAOD,CAAC,CAACrB,MAAM,CAACuB,OAAO,CAAC,MAAMR,UAAU,CAACA,UAAU,CAACI,OAAO,CAACH,MAAM,EAAEC,OAAO,CAAC,CAAC,CAAC;EAC5F,OAAO,OAAOI,CAAC,CAAChB,SAAS,CAACmB,sBAAsB,CAACT,UAAU,CAACL,MAAM,EAAEY,KAAK,CAAC,CAAC;AAC7E,CAAC,CAAC,CAACG,IAAI,CACLzB,MAAM,CAAC0B,cAAc,CAACpB,UAAU,CAACqB,aAAa,CAAc,eAAe,CAAC,CAAC,CAC9E,CACJ;AAED,OAAO,MAAMC,SAAS,gBASlB3B,CAAC,CAACW,IAAI,CAAEC,IAAI,IAAKC,YAAY,CAACD,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAC1CE,UAA+B,EAC/Bc,GAAM,EACNZ,OAA0B,KAE1BhB,CAAC,CAACwB,IAAI,CACJV,UAAU,CAACN,MAAM,CAACoB,GAAG,CAAC,EACtB7B,MAAM,CAAC8B,OAAO,CAAED,GAAG,IAAK7B,MAAM,CAACuB,OAAO,CAAC,MAAMR,UAAU,CAACA,UAAU,CAACa,SAAS,CAACC,GAAG,EAAEZ,OAAO,CAAC,CAAC,CAAC,EAC5FjB,MAAM,CAAC0B,cAAc,CAACpB,UAAU,CAACqB,aAAa,CAAkB,iBAAiB,CAAC,CAAC,CACpF,CAAC;AAEJ,OAAO,MAAMI,UAAU,gBASnB9B,CAAC,CAACW,IAAI,CAAEC,IAAI,IAAKC,YAAY,CAACD,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAC1CE,UAA+B,EAC/BiB,IAAsB,EACtBf,OAA0B,KAC4D;EACtF,OAAOhB,CAAC,CAACwB,IAAI,CACXO,IAAI,EACJhC,MAAM,CAACiC,OAAO,CAAEJ,GAAG,IAAKd,UAAU,CAACN,MAAM,CAACoB,GAAG,CAAC,CAAC,EAC/C7B,MAAM,CAAC8B,OAAO,CAAEE,IAAI,IAAKhC,MAAM,CAACuB,OAAO,CAAC,MAAMR,UAAU,CAACA,UAAU,CAACgB,UAAU,CAACC,IAAI,EAAEf,OAAO,CAAC,CAAC,CAAC,EAC/FjB,MAAM,CAAC0B,cAAc,CAACpB,UAAU,CAACqB,aAAa,CAAmB,kBAAkB,CAAC,CAAC,CACtF;AACH,CAAC,CAAC;AAEF,OAAO,MAAMO,SAAS,gBASlBjC,CAAC,CAACW,IAAI,CACPC,IAAI,IAAKC,YAAY,CAACD,IAAI,CAAC,CAAC,CAAC,CAAC,EAC/B,CACEE,UAA+B,EAC/BC,MAAiB,EACjBC,OAAuB,KAEvBjB,MAAM,CAACuB,OAAO,CAAC,MAAMR,UAAU,CAACA,UAAU,CAACmB,SAAS,CAAClB,MAAM,EAAEC,OAAO,CAAC,CAAC,CAACQ,IAAI,CACzEzB,MAAM,CAAC0B,cAAc,CAACpB,UAAU,CAACqB,aAAa,CAAe,iBAAiB,CAAC,CAAC,CACjF,CACJ;AAED,OAAO,MAAMQ,UAAU,gBASnBlC,CAAC,CAACW,IAAI,CACPC,IAAI,IAAKC,YAAY,CAACD,IAAI,CAAC,CAAC,CAAC,CAAC,EAC/B,CACEE,UAA+B,EAC/BC,MAAiB,EACjBC,OAAuB,KAEvBjB,MAAM,CAACuB,OAAO,CAAC,MAAMR,UAAU,CAACA,UAAU,CAACoB,UAAU,CAACnB,MAAM,EAAEC,OAAO,CAAC,CAAC,CAACQ,IAAI,CAC1EzB,MAAM,CAAC0B,cAAc,CAACpB,UAAU,CAACqB,aAAa,CAAe,kBAAkB,CAAC,CAAC,CAClF,CACJ;AAED,OAAO,MAAMS,UAAU,gBAcnBnC,CAAC,CAACW,IAAI,CACPC,IAAI,IAAKC,YAAY,CAACD,IAAI,CAAC,CAAC,CAAC,CAAC,EAC/B,CACEE,UAA+B,EAC/BC,MAAiB,EACjBqB,MAAiD,EACjDpB,OAAuB,KAEvBjB,MAAM,CAACuB,OAAO,CAAC,MACbR,UAAU,CAACA,UAAU,CAACqB,UAAU,CAC9BpB,MAAM,EACNlB,KAAK,CAACwC,OAAO,CAACD,MAAM,CAAC,GAAG,CAAC,GAAGA,MAAM,CAAC,GAAGA,MAAgC,EACtEpB,OAAO,CACR,CACF,CAACQ,IAAI,CAACzB,MAAM,CAAC0B,cAAc,CAACpB,UAAU,CAACqB,aAAa,CAAe,kBAAkB,CAAC,CAAC,CAAC,CAC5F;AAED,OAAO,MAAMY,UAAU,gBAenBtC,CAAC,CAACW,IAAI,CACPC,IAAI,IAAKC,YAAY,CAACD,IAAI,CAAC,CAAC,CAAC,CAAC,EAC/B,CACEE,UAA+B,EAC/BC,MAAiB,EACjBwB,WAAc,EACdvB,OAAwB,KAMxBhB,CAAC,CAACwB,IAAI,CACJV,UAAU,CAACN,MAAM,CAAC+B,WAAW,CAAC,EAC9BxC,MAAM,CAAC8B,OAAO,CAAEU,WAAW,IACzBxC,MAAM,CAACuB,OAAO,CAAC,MAAMR,UAAU,CAACA,UAAU,CAACwB,UAAU,CAACvB,MAAM,EAAEwB,WAAW,EAAEvB,OAAO,CAAC,CAAC,CACrF,EACDjB,MAAM,CAAC0B,cAAc,CAACpB,UAAU,CAACqB,aAAa,CAA0B,kBAAkB,CAAC,CAAC,CAC7F,CACJ;AAED,OAAO,MAAMc,iBAAiB,gBA4C1BxC,CAAC,CAACW,IAAI,CACPC,IAAI,IAAKC,YAAY,CAACD,IAAI,CAAC,CAAC,CAAC,CAAC,EAC/B,CACEE,UAA+B,EAC/BC,MAAiB,EACjBwB,WAAc,EACdvB,OAAkC,KAElChB,CAAC,CAACwB,IAAI,CACJV,UAAU,CAACN,MAAM,CAAC+B,WAAW,CAAC,EAC9BxC,MAAM,CAAC8B,OAAO,CAAEU,WAAW,IACzBxC,MAAM,CAACuB,OAAO,CAAC,MAAMR,UAAU,CAACA,UAAU,CAAC0B,iBAAiB,CAACzB,MAAM,EAAEwB,WAAW,EAAEvB,OAAO,IAAI,EAAE,CAAC,CAAC,CAClG,EACDjB,MAAM,CAAC8B,OAAO,CAAER,KAAK,IACnBtB,MAAM,CAACoB,GAAG,CAAC,WAAUC,CAAC;EACpB,IAAIJ,OAAO,EAAEyB,qBAAqB,IAAI,CAAC,CAACpB,KAAK,EAAE;IAC7C,MAAMqB,MAAM,GAAGrB,KAAwC;IACvD,MAAMsB,UAAU,GAAG,OAAOvB,CAAC,CAAChB,SAAS,CAACmB,sBAAsB,CAACT,UAAU,CAACL,MAAM,EAAEiC,MAAM,CAACrB,KAAK,CAAC,CAAC;IAC9F,OAAO;MAAE,GAAGqB,MAAM;MAAErB,KAAK,EAAEsB;IAAU,CAAE;EACzC;EACA,OAAO,OAAOvB,CAAC,CAAChB,SAAS,CAACmB,sBAAsB,CAACT,UAAU,CAACL,MAAM,EAAEY,KAAK,CAAC,CAAC;AAC7E,CAAC,CAAC,CACH,EACDtB,MAAM,CAAC0B,cAAc,CACnBpB,UAAU,CAACqB,aAAa,CAAgC,yBAAyB,CAAC,CACnF,CACF,CACJ;AAED,OAAO,MAAMkB,MAAM,gBASf5C,CAAC,CAACW,IAAI,CACPC,IAAI,IAAKC,YAAY,CAACD,IAAI,CAAC,CAAC,CAAC,CAAC,EAC/B,CACEE,UAA+B,EAC/B+B,OAAe,EACf7B,OAAuB,KAEvBhB,CAAC,CAACwB,IAAI,CACJzB,MAAM,CAACuB,OAAO,CAAC,MAAMR,UAAU,CAACA,UAAU,CAAC8B,MAAM,CAACC,OAAO,EAAE7B,OAAO,CAAC,CAAC,EACpEjB,MAAM,CAAC+C,GAAG,CAAEC,aAAa,IAAK,IAAIzC,UAAU,CAAU;EAAEQ,UAAU,EAAEiC,aAAa;EAAEtC,MAAM,EAAEK,UAAU,CAACL;AAAM,CAAE,CAAC,CAAC,EAChHV,MAAM,CAAC0B,cAAc,CAACpB,UAAU,CAACqB,aAAa,CAAsB,cAAc,CAAC,CAAC,CACrF,CACJ;AAED,OAAO,MAAMsB,IAAI,gBAQbhD,CAAC,CAACW,IAAI,CACPC,IAAI,IAAKC,YAAY,CAACD,IAAI,CAAC,CAAC,CAAC,CAAC,EAC/B,CACEE,UAA+B,EAC/BE,OAA+B,KAE/BhB,CAAC,CAACwB,IAAI,CACJzB,MAAM,CAACuB,OAAO,CAAC,MAAMR,UAAU,CAACA,UAAU,CAACkC,IAAI,CAAChC,OAAO,CAAC,CAAC,EACzDjB,MAAM,CAAC0B,cAAc,CAACpB,UAAU,CAACqB,aAAa,CAAU,YAAY,CAAC,CAAC,CACvE,CACJ;AAED,OAAO,MAAMuB,aAAa,gBAYtBjD,CAAC,CAACW,IAAI,CACPC,IAAI,IAAKC,YAAY,CAACD,IAAI,CAAC,CAAC,CAAC,CAAC,EAC/B,CACEE,UAA+B,EAC/BoC,UAA2C,EAC3ClC,OAA8B,KAE9BhB,CAAC,CAACwB,IAAI,CACJzB,MAAM,CAACuB,OAAO,CAAC,MAAMR,UAAU,CAACA,UAAU,CAACmC,aAAa,CAAC,CAAC,GAAGC,UAAU,CAAC,EAAElC,OAAO,CAAC,CAAC,EACnFjB,MAAM,CAAC0B,cAAc,CAACpB,UAAU,CAACqB,aAAa,CAAgB,qBAAqB,CAAC,CAAC,CACtF,CACJ;AAED,OAAO,MAAMyB,WAAW,gBASpBnD,CAAC,CAACW,IAAI,CACPC,IAAI,IAAKC,YAAY,CAACD,IAAI,CAAC,CAAC,CAAC,CAAC,EAC/B,CACEE,UAA+B,EAC/BsC,SAA6B,EAC7BpC,OAA8B,KAE9BhB,CAAC,CAACwB,IAAI,CACJzB,MAAM,CAACuB,OAAO,CAAC,MAAMR,UAAU,CAACA,UAAU,CAACqC,WAAW,CAACC,SAAS,EAAEpC,OAAO,CAAC,CAAC,EAC3EjB,MAAM,CAAC0B,cAAc,CAACpB,UAAU,CAACqB,aAAa,CAAS,mBAAmB,CAAC,CAAC,CAC7E,CACJ;AAED;AACA,OAAO,MAAM2B,SAAS,gBASlBrD,CAAC,CAACW,IAAI,CACPC,IAAI,IAAKC,YAAY,CAACD,IAAI,CAAC,CAAC,CAAC,CAAC,EAC/B,CACEE,UAA+B,EAC/BwC,SAAiB,EACjBtC,OAA4B,KAE5BhB,CAAC,CAACwB,IAAI,CACJzB,MAAM,CAACuB,OAAO,CAAC,MAAMR,UAAU,CAACA,UAAU,CAACuC,SAAS,CAACC,SAAS,EAAEtC,OAAO,CAAC,CAAC,EACzEjB,MAAM,CAACwD,MAAM,EACbxD,MAAM,CAAC0B,cAAc,CAACpB,UAAU,CAACqB,aAAa,CAAO,iBAAiB,CAAC,CAAC,CACzE,CACJ;AAED,OAAO,MAAM8B,SAAS,gBAclBxD,CAAC,CAACW,IAAI,CACPC,IAAI,IAAKC,YAAY,CAACD,IAAI,CAAC,CAAC,CAAC,CAAC,EAC/B,CACEE,UAA+B,EAC/B2C,QAAiC,EACjChD,MAAgC,EAChCO,OAA0B,KAE1B,IAAId,iBAAiB,CAACA,iBAAiB,CAAY;EACjDe,MAAM,EAAEH,UAAU,CAACA,UAAU,CAAC0C,SAAS,CAAC,CAAC,GAAGC,QAAQ,CAAC,EAAEzC,OAAO,CAAC;EAC/DP;CACD,CAAC,CACL;AAED,OAAO,MAAMiD,sBAAsB,gBAQ/B1D,CAAC,CAACW,IAAI,CACPC,IAAI,IAAKC,YAAY,CAACD,IAAI,CAAC,CAAC,CAAC,CAAC,EAC/B,CACEE,UAA+B,EAC/BE,OAAuC,KAEvChB,CAAC,CAACwB,IAAI,CACJzB,MAAM,CAACuB,OAAO,CAAC,MAAMR,UAAU,CAACA,UAAU,CAAC4C,sBAAsB,CAAC1C,OAAO,CAAC,CAAC,EAC3EjB,MAAM,CAAC0B,cAAc,CAACpB,UAAU,CAACqB,aAAa,CAAS,8BAA8B,CAAC,CAAC,CACxF,CACJ;AAED,OAAO,MAAMiC,cAAc,gBASvB3D,CAAC,CAACW,IAAI,CACPC,IAAI,IAAKC,YAAY,CAACD,IAAI,CAAC,CAAC,CAAC,CAAC,EAC/B,CACEE,UAA+B,EAC/BC,MAAkB,EAClBC,OAA+B,KAE/BhB,CAAC,CAACwB,IAAI,CACJzB,MAAM,CAACuB,OAAO,CAAC,MAAMR,UAAU,CAACA,UAAU,CAAC6C,cAAc,CAAC5C,MAAM,EAAEC,OAAO,CAAC,CAAC,EAC3EjB,MAAM,CAAC0B,cAAc,CAACpB,UAAU,CAACqB,aAAa,CAAS,sBAAsB,CAAC,CAAC,CAChF,CACJ;AAED,MAAMb,YAAY,GAAI+C,CAAU,IAAKA,CAAC,YAAYtD,UAAU","ignoreList":[]}
1
+ {"version":3,"file":"Collection.js","names":["Array","Data","Effect","F","pipeArguments","Schema","AggregationCursor","FindCursor","mongoErrorOrDie","SchemaExt","MongoError","CollectionImpl","TaggedClass","encode","schema","pipe","arguments","find","dual","args","isCollection","collection","filter","options","FindCursorImpl","cursor","findOne","gen","value","promise","decodeNullableDocument","catchAllDefect","errorSource","insertOne","doc","flatMap","insertMany","docs","forEach","deleteOne","deleteMany","updateMany","update","isArray","replaceOne","replacement","findOneAndReplace","includeResultMetadata","result","maybeValue","rename","newName","map","newCollection","drop","createIndexes","indexSpecs","createIndex","indexSpec","dropIndex","indexName","aggregate","pipeline","AggregationCursorImpl","estimatedDocumentCount","countDocuments","x","functionName","CollectionErrorSource","module","name","db","dbName","collectionName"],"sources":["../../src/Collection.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/dist/esm/Db.js CHANGED
@@ -5,15 +5,21 @@ import * as Effect from "effect/Effect";
5
5
  import * as F from "effect/Function";
6
6
  import { Db } from "mongodb";
7
7
  import * as DocumentCollection from "./DocumentCollection.js";
8
+ import { mongoErrorOrDie } from "./internal/mongo-error.js";
8
9
  import * as ListCollectionsCursor from "./ListCollectionsCursor.js";
9
10
  import * as MongoError from "./MongoError.js";
10
- export const documentCollection = /*#__PURE__*/F.dual(args => isDb(args[0]), (db, name) => new DocumentCollection.DocumentCollection({
11
+ export const documentCollection = /*#__PURE__*/F.dual(args => isDb(args[0]), (db, name) => new DocumentCollection.DocumentCollectionImpl({
11
12
  collection: db.collection(name)
12
13
  }));
13
14
  export const collection = /*#__PURE__*/F.dual(args => isDb(args[0]), (db, name, schema) => DocumentCollection.typed(documentCollection(db, name), schema));
14
- export const listCollections = /*#__PURE__*/F.dual(args => isDb(args[0]), (db, filter, options) => new ListCollectionsCursor.ListCollectionsCursor({
15
+ export const listCollections = /*#__PURE__*/F.dual(args => isDb(args[0]), (db, filter, options) => new ListCollectionsCursor.ListCollectionsCursorImpl({
15
16
  cursor: db.listCollections(filter, options)
16
17
  }));
17
- export const dropCollection = /*#__PURE__*/F.dual(args => isDb(args[0]), (db, name, options) => F.pipe(Effect.promise(() => db.dropCollection(name, options)), Effect.catchAllDefect(MongoError.mongoErrorDie("dropCollection error"))));
18
+ export const dropCollection = /*#__PURE__*/F.dual(args => isDb(args[0]), (db, name, options) => F.pipe(Effect.promise(() => db.dropCollection(name, options)), Effect.catchAllDefect(mongoErrorOrDie(errorSource(db, "dropCollection")))));
18
19
  const isDb = x => x instanceof Db;
20
+ const errorSource = (db, functionName) => new MongoError.DbErrorSource({
21
+ module: "Db",
22
+ functionName,
23
+ db: db.databaseName
24
+ });
19
25
  //# sourceMappingURL=Db.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Db.js","names":["Effect","F","Db","DocumentCollection","ListCollectionsCursor","MongoError","documentCollection","dual","args","isDb","db","name","collection","schema","typed","listCollections","filter","options","cursor","dropCollection","pipe","promise","catchAllDefect","mongoErrorDie","x"],"sources":["../../src/Db.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAGA,OAAO,KAAKA,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,CAAC,MAAM,iBAAiB;AAGpC,SAASC,EAAE,QAAQ,SAAS;AAE5B,OAAO,KAAKC,kBAAkB,MAAM,yBAAyB;AAC7D,OAAO,KAAKC,qBAAqB,MAAM,4BAA4B;AACnE,OAAO,KAAKC,UAAU,MAAM,iBAAiB;AAE7C,OAAO,MAAMC,kBAAkB,gBAG3BL,CAAC,CAACM,IAAI,CACPC,IAAI,IAAKC,IAAI,CAACD,IAAI,CAAC,CAAC,CAAC,CAAC,EACvB,CAACE,EAAM,EAAEC,IAAY,KACnB,IAAIR,kBAAkB,CAACA,kBAAkB,CAAC;EACxCS,UAAU,EAAEF,EAAE,CAACE,UAAU,CAACD,IAAI;CAC/B,CAAC,CACL;AAED,OAAO,MAAMC,UAAU,gBAUnBX,CAAC,CAACM,IAAI,CACPC,IAAI,IAAKC,IAAI,CAACD,IAAI,CAAC,CAAC,CAAC,CAAC,EACvB,CACEE,EAAM,EACNC,IAAY,EACZE,MAA8B,KACKV,kBAAkB,CAACW,KAAK,CAACR,kBAAkB,CAACI,EAAE,EAAEC,IAAI,CAAC,EAAEE,MAAM,CAAC,CACpG;AAED,OAAO,MAAME,eAAe,gBAsBxBd,CAAC,CAACM,IAAI,CACPC,IAAI,IAAKC,IAAI,CAACD,IAAI,CAAC,CAAC,CAAC,CAAC,EACvB,CAACE,EAAM,EAAEM,MAAiB,EAAEC,OAAgC,KAC1D,IAAIb,qBAAqB,CAACA,qBAAqB,CAAC;EAAEc,MAAM,EAAER,EAAE,CAACK,eAAe,CAACC,MAAM,EAAEC,OAAO;AAAC,CAAE,CAAC,CACnG;AAED,OAAO,MAAME,cAAc,gBAKvBlB,CAAC,CAACM,IAAI,CACPC,IAAI,IAAKC,IAAI,CAACD,IAAI,CAAC,CAAC,CAAC,CAAC,EACvB,CAACE,EAAM,EAAEC,IAAY,EAAEM,OAA+B,KACpDhB,CAAC,CAACmB,IAAI,CACJpB,MAAM,CAACqB,OAAO,CAAC,MAAMX,EAAE,CAACS,cAAc,CAACR,IAAI,EAAEM,OAAO,CAAC,CAAC,EACtDjB,MAAM,CAACsB,cAAc,CAACjB,UAAU,CAACkB,aAAa,CAAU,sBAAsB,CAAC,CAAC,CACjF,CACJ;AAED,MAAMd,IAAI,GAAIe,CAAU,IAAKA,CAAC,YAAYtB,EAAE","ignoreList":[]}
1
+ {"version":3,"file":"Db.js","names":["Effect","F","Db","DocumentCollection","mongoErrorOrDie","ListCollectionsCursor","MongoError","documentCollection","dual","args","isDb","db","name","DocumentCollectionImpl","collection","schema","typed","listCollections","filter","options","ListCollectionsCursorImpl","cursor","dropCollection","pipe","promise","catchAllDefect","errorSource","x","functionName","DbErrorSource","module","databaseName"],"sources":["../../src/Db.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAGA,OAAO,KAAKA,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,CAAC,MAAM,iBAAiB;AAGpC,SAASC,EAAE,QAAQ,SAAS;AAE5B,OAAO,KAAKC,kBAAkB,MAAM,yBAAyB;AAC7D,SAASC,eAAe,QAAQ,2BAA2B;AAC3D,OAAO,KAAKC,qBAAqB,MAAM,4BAA4B;AACnE,OAAO,KAAKC,UAAU,MAAM,iBAAiB;AAE7C,OAAO,MAAMC,kBAAkB,gBAG3BN,CAAC,CAACO,IAAI,CACPC,IAAI,IAAKC,IAAI,CAACD,IAAI,CAAC,CAAC,CAAC,CAAC,EACvB,CAACE,EAAM,EAAEC,IAAY,KACnB,IAAIT,kBAAkB,CAACU,sBAAsB,CAAC;EAC5CC,UAAU,EAAEH,EAAE,CAACG,UAAU,CAACF,IAAI;CAC/B,CAAC,CACL;AAED,OAAO,MAAME,UAAU,gBAUnBb,CAAC,CAACO,IAAI,CACPC,IAAI,IAAKC,IAAI,CAACD,IAAI,CAAC,CAAC,CAAC,CAAC,EACvB,CACEE,EAAM,EACNC,IAAY,EACZG,MAA8B,KACKZ,kBAAkB,CAACa,KAAK,CAACT,kBAAkB,CAACI,EAAE,EAAEC,IAAI,CAAC,EAAEG,MAAM,CAAC,CACpG;AAED,OAAO,MAAME,eAAe,gBAsBxBhB,CAAC,CAACO,IAAI,CACPC,IAAI,IAAKC,IAAI,CAACD,IAAI,CAAC,CAAC,CAAC,CAAC,EACvB,CAACE,EAAM,EAAEO,MAAiB,EAAEC,OAAgC,KAC1D,IAAId,qBAAqB,CAACe,yBAAyB,CAAC;EAAEC,MAAM,EAAEV,EAAE,CAACM,eAAe,CAACC,MAAM,EAAEC,OAAO;AAAC,CAAE,CAAC,CACvG;AAED,OAAO,MAAMG,cAAc,gBAKvBrB,CAAC,CAACO,IAAI,CACPC,IAAI,IAAKC,IAAI,CAACD,IAAI,CAAC,CAAC,CAAC,CAAC,EACvB,CAACE,EAAM,EAAEC,IAAY,EAAEO,OAA+B,KACpDlB,CAAC,CAACsB,IAAI,CACJvB,MAAM,CAACwB,OAAO,CAAC,MAAMb,EAAE,CAACW,cAAc,CAACV,IAAI,EAAEO,OAAO,CAAC,CAAC,EACtDnB,MAAM,CAACyB,cAAc,CAACrB,eAAe,CAACsB,WAAW,CAACf,EAAE,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAC1E,CACJ;AAED,MAAMD,IAAI,GAAIiB,CAAU,IAAKA,CAAC,YAAYzB,EAAE;AAE5C,MAAMwB,WAAW,GAAGA,CAACf,EAAM,EAAEiB,YAAoB,KAC/C,IAAItB,UAAU,CAACuB,aAAa,CAAC;EAAEC,MAAM,EAAE,IAAI;EAAEF,YAAY;EAAEjB,EAAE,EAAEA,EAAE,CAACoB;AAAY,CAAE,CAAC","ignoreList":[]}
@@ -4,12 +4,22 @@
4
4
  import * as Data from "effect/Data";
5
5
  import * as Effect from "effect/Effect";
6
6
  import * as F from "effect/Function";
7
+ import { pipeArguments } from "effect/Pipeable";
7
8
  import * as Stream from "effect/Stream";
9
+ import { mongoErrorOrDie } from "./internal/mongo-error.js";
8
10
  import * as MongoError from "./MongoError.js";
9
- export class DocumentAggregationCursor extends /*#__PURE__*/Data.TaggedClass("DocumentAggregationCursor") {}
10
- export const toArray = cursor => F.pipe(Effect.tryPromise({
11
- try: () => cursor.cursor.toArray(),
12
- catch: F.identity
13
- }), Effect.catchAll(MongoError.mongoErrorDie(`${cursor._tag}.toArray error`)));
14
- export const toStream = cursor => F.pipe(Stream.fromAsyncIterable(cursor.cursor, F.identity), Stream.catchAll(MongoError.mongoErrorStream(`${cursor._tag}.toStream error`)));
11
+ /** @internal */
12
+ export class DocumentAggregationCursorImpl extends /*#__PURE__*/Data.TaggedClass("DocumentAggregationCursor") {
13
+ pipe() {
14
+ return pipeArguments(this, arguments);
15
+ }
16
+ }
17
+ export const toArray = cursor => F.pipe(Effect.promise(() => cursor.cursor.toArray()), Effect.catchAllDefect(mongoErrorOrDie(errorSource(cursor, "toArray"))));
18
+ export const toStream = cursor => F.pipe(Stream.fromAsyncIterable(cursor.cursor, F.identity), Stream.catchAll(mongoErrorOrDie(errorSource(cursor, "toStream"))));
19
+ const errorSource = (cursor, functionName) => new MongoError.CollectionErrorSource({
20
+ module: DocumentAggregationCursorImpl.name,
21
+ functionName,
22
+ db: cursor.cursor.namespace.db,
23
+ collection: cursor.cursor.namespace.collection ?? "NO_COLLECTION_NAME"
24
+ });
15
25
  //# sourceMappingURL=DocumentAggregationCursor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DocumentAggregationCursor.js","names":["Data","Effect","F","Stream","MongoError","DocumentAggregationCursor","TaggedClass","toArray","cursor","pipe","tryPromise","try","catch","identity","catchAll","mongoErrorDie","_tag","toStream","fromAsyncIterable","mongoErrorStream"],"sources":["../../src/DocumentAggregationCursor.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAGA,OAAO,KAAKA,IAAI,MAAM,aAAa;AACnC,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,CAAC,MAAM,iBAAiB;AACpC,OAAO,KAAKC,MAAM,MAAM,eAAe;AAEvC,OAAO,KAAKC,UAAU,MAAM,iBAAiB;AAE7C,OAAM,MAAOC,yBACX,sBAAQL,IAAI,CAACM,WAAW,CAAC,2BAA2B,CAA+C;AAIrG,OAAO,MAAMC,OAAO,GAClBC,MAAiC,IAEjCN,CAAC,CAACO,IAAI,CACJR,MAAM,CAACS,UAAU,CAAC;EAAEC,GAAG,EAAEA,CAAA,KAAMH,MAAM,CAACA,MAAM,CAACD,OAAO,EAAE;EAAEK,KAAK,EAAEV,CAAC,CAACW;AAAQ,CAAE,CAAC,EAC5EZ,MAAM,CAACa,QAAQ,CAACV,UAAU,CAACW,aAAa,CAAkB,GAAGP,MAAM,CAACQ,IAAI,gBAAgB,CAAC,CAAC,CAC3F;AAEH,OAAO,MAAMC,QAAQ,GACnBT,MAAiC,IAEjCN,CAAC,CAACO,IAAI,CACJN,MAAM,CAACe,iBAAiB,CAACV,MAAM,CAACA,MAAM,EAAEN,CAAC,CAACW,QAAQ,CAAC,EACnDV,MAAM,CAACW,QAAQ,CAACV,UAAU,CAACe,gBAAgB,CAAW,GAAGX,MAAM,CAACQ,IAAI,iBAAiB,CAAC,CAAC,CACxF","ignoreList":[]}
1
+ {"version":3,"file":"DocumentAggregationCursor.js","names":["Data","Effect","F","pipeArguments","Stream","mongoErrorOrDie","MongoError","DocumentAggregationCursorImpl","TaggedClass","pipe","arguments","toArray","cursor","promise","catchAllDefect","errorSource","toStream","fromAsyncIterable","identity","catchAll","functionName","CollectionErrorSource","module","name","db","namespace","collection"],"sources":["../../src/DocumentAggregationCursor.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAGA,OAAO,KAAKA,IAAI,MAAM,aAAa;AACnC,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,CAAC,MAAM,iBAAiB;AAEpC,SAASC,aAAa,QAAQ,iBAAiB;AAC/C,OAAO,KAAKC,MAAM,MAAM,eAAe;AAEvC,SAASC,eAAe,QAAQ,2BAA2B;AAC3D,OAAO,KAAKC,UAAU,MAAM,iBAAiB;AAQ7C;AACA,OAAM,MAAOC,6BACX,sBAAQP,IAAI,CAACQ,WAAW,CAAC,2BAA2B,CAAkC;EAGtFC,IAAIA,CAAA;IACF,OAAON,aAAa,CAAC,IAAI,EAAEO,SAAS,CAAC;EACvC;;AAGF,OAAO,MAAMC,OAAO,GAClBC,MAAiC,IAEjCV,CAAC,CAACO,IAAI,CACJR,MAAM,CAACY,OAAO,CAAC,MAAMD,MAAM,CAACA,MAAM,CAACD,OAAO,EAAE,CAAC,EAC7CV,MAAM,CAACa,cAAc,CAACT,eAAe,CAACU,WAAW,CAACH,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,CACvE;AAEH,OAAO,MAAMI,QAAQ,GACnBJ,MAAiC,IAEjCV,CAAC,CAACO,IAAI,CACJL,MAAM,CAACa,iBAAiB,CAACL,MAAM,CAACA,MAAM,EAAEV,CAAC,CAACgB,QAAQ,CAAC,EACnDd,MAAM,CAACe,QAAQ,CAACd,eAAe,CAACU,WAAW,CAACH,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,CAClE;AAEH,MAAMG,WAAW,GAAGA,CAACH,MAAiC,EAAEQ,YAAoB,KAC1E,IAAId,UAAU,CAACe,qBAAqB,CAAC;EACnCC,MAAM,EAAEf,6BAA6B,CAACgB,IAAI;EAC1CH,YAAY;EACZI,EAAE,EAAEZ,MAAM,CAACA,MAAM,CAACa,SAAS,CAACD,EAAE;EAC9BE,UAAU,EAAEd,MAAM,CAACA,MAAM,CAACa,SAAS,CAACC,UAAU,IAAI;CACnD,CAAC","ignoreList":[]}
@@ -6,21 +6,28 @@ import * as Data from "effect/Data";
6
6
  import * as Effect from "effect/Effect";
7
7
  import * as F from "effect/Function";
8
8
  import * as O from "effect/Option";
9
+ import { pipeArguments } from "effect/Pipeable";
9
10
  import * as Collection from "./Collection.js";
10
11
  import * as DocumentAggregationCursor from "./DocumentAggregationCursor.js";
11
12
  import * as DocumentFindCursor from "./DocumentFindCursor.js";
13
+ import { mongoErrorOrDie } from "./internal/mongo-error.js";
12
14
  import * as MongoError from "./MongoError.js";
13
- export class DocumentCollection extends /*#__PURE__*/Data.TaggedClass("DocumentCollection") {}
14
- export const find = /*#__PURE__*/F.dual(args => isDocumentCollection(args[0]), (collection, filter, options) => new DocumentFindCursor.DocumentFindCursor({
15
+ /** @internal */
16
+ export class DocumentCollectionImpl extends /*#__PURE__*/Data.TaggedClass("DocumentCollection") {
17
+ pipe() {
18
+ return pipeArguments(this, arguments);
19
+ }
20
+ }
21
+ export const find = /*#__PURE__*/F.dual(args => isDocumentCollection(args[0]), (collection, filter, options) => new DocumentFindCursor.DocumentFindCursorImpl({
15
22
  cursor: collection.collection.find(filter ?? {}, options)
16
23
  }));
17
- export const findOne = /*#__PURE__*/F.dual(args => isDocumentCollection(args[0]), (collection, filter, options) => F.pipe(Effect.promise(() => collection.collection.findOne(filter, options)), Effect.map(value => O.fromNullable(value)), Effect.catchAllDefect(MongoError.mongoErrorDie("findOne error"))));
18
- export const insertOne = /*#__PURE__*/F.dual(args => isDocumentCollection(args[0]), (collection, doc, options) => F.pipe(Effect.promise(() => collection.collection.insertOne(doc, options)), Effect.catchAllDefect(MongoError.mongoErrorDie("insertOne error"))));
19
- export const insertMany = /*#__PURE__*/F.dual(args => isDocumentCollection(args[0]), (collection, docs, options) => F.pipe(Effect.promise(() => collection.collection.insertMany(docs, options)), Effect.catchAllDefect(MongoError.mongoErrorDie("insertMany error"))));
20
- export const deleteOne = /*#__PURE__*/F.dual(args => isDocumentCollection(args[0]), (collection, filter, options) => F.pipe(Effect.promise(() => collection.collection.deleteOne(filter, options)), Effect.catchAllDefect(MongoError.mongoErrorDie("deleteOne error"))));
21
- export const deleteMany = /*#__PURE__*/F.dual(args => isDocumentCollection(args[0]), (collection, filter, options) => F.pipe(Effect.promise(() => collection.collection.deleteMany(filter, options)), Effect.catchAllDefect(MongoError.mongoErrorDie("deleteMany error"))));
22
- export const updateMany = /*#__PURE__*/F.dual(args => isDocumentCollection(args[0]), (collection, filter, update, options) => F.pipe(Effect.promise(() => collection.collection.updateMany(filter, Array.isArray(update) ? [...update] : update, options)), Effect.catchAllDefect(MongoError.mongoErrorDie("updateMany error"))));
23
- export const replaceOne = /*#__PURE__*/F.dual(args => isDocumentCollection(args[0]), (collection, filter, replacement, options) => F.pipe(Effect.promise(() => collection.collection.replaceOne(filter, replacement, options)), Effect.catchAllDefect(MongoError.mongoErrorDie("replaceOne error"))));
24
+ export const findOne = /*#__PURE__*/F.dual(args => isDocumentCollection(args[0]), (collection, filter, options) => F.pipe(Effect.promise(() => collection.collection.findOne(filter, options)), Effect.map(value => O.fromNullable(value)), Effect.catchAllDefect(mongoErrorOrDie(errorSource(collection, "findOne")))));
25
+ export const insertOne = /*#__PURE__*/F.dual(args => isDocumentCollection(args[0]), (collection, doc, options) => F.pipe(Effect.promise(() => collection.collection.insertOne(doc, options)), Effect.catchAllDefect(mongoErrorOrDie(errorSource(collection, "insertOne")))));
26
+ export const insertMany = /*#__PURE__*/F.dual(args => isDocumentCollection(args[0]), (collection, docs, options) => F.pipe(Effect.promise(() => collection.collection.insertMany(docs, options)), Effect.catchAllDefect(mongoErrorOrDie(errorSource(collection, "insertMany")))));
27
+ export const deleteOne = /*#__PURE__*/F.dual(args => isDocumentCollection(args[0]), (collection, filter, options) => F.pipe(Effect.promise(() => collection.collection.deleteOne(filter, options)), Effect.catchAllDefect(mongoErrorOrDie(errorSource(collection, "deleteOne")))));
28
+ export const deleteMany = /*#__PURE__*/F.dual(args => isDocumentCollection(args[0]), (collection, filter, options) => F.pipe(Effect.promise(() => collection.collection.deleteMany(filter, options)), Effect.catchAllDefect(mongoErrorOrDie(errorSource(collection, "deleteMany")))));
29
+ export const updateMany = /*#__PURE__*/F.dual(args => isDocumentCollection(args[0]), (collection, filter, update, options) => F.pipe(Effect.promise(() => collection.collection.updateMany(filter, Array.isArray(update) ? [...update] : update, options)), Effect.catchAllDefect(mongoErrorOrDie(errorSource(collection, "updateMany")))));
30
+ export const replaceOne = /*#__PURE__*/F.dual(args => isDocumentCollection(args[0]), (collection, filter, replacement, options) => F.pipe(Effect.promise(() => collection.collection.replaceOne(filter, replacement, options)), Effect.catchAllDefect(mongoErrorOrDie(errorSource(collection, "replaceOne")))));
24
31
  export const findOneAndReplace = /*#__PURE__*/F.dual(args => isDocumentCollection(args[0]), (collection, filter, replacement, options) => F.pipe(Effect.promise(() => collection.collection.findOneAndReplace(filter, replacement, options ?? {})), Effect.map(value => {
25
32
  if (options?.includeResultMetadata && !!value) {
26
33
  const result = value;
@@ -30,23 +37,28 @@ export const findOneAndReplace = /*#__PURE__*/F.dual(args => isDocumentCollectio
30
37
  };
31
38
  }
32
39
  return O.fromNullable(value);
33
- }), Effect.catchAllDefect(MongoError.mongoErrorDie("findOneAndReplace error"))));
34
- export const rename = /*#__PURE__*/F.dual(args => isDocumentCollection(args[0]), (collection, newName, options) => F.pipe(Effect.promise(() => collection.collection.rename(newName, options)), Effect.map(collection => new DocumentCollection({
40
+ }), Effect.catchAllDefect(mongoErrorOrDie(errorSource(collection, "findOneAndReplace")))));
41
+ export const rename = /*#__PURE__*/F.dual(args => isDocumentCollection(args[0]), (collection, newName, options) => F.pipe(Effect.promise(() => collection.collection.rename(newName, options)), Effect.map(collection => new DocumentCollectionImpl({
35
42
  collection
36
- })), Effect.catchAllDefect(MongoError.mongoErrorDie("rename error"))));
37
- export const drop = /*#__PURE__*/F.dual(args => isDocumentCollection(args[0]), (collection, options) => F.pipe(Effect.promise(() => collection.collection.drop(options)), Effect.catchAllDefect(MongoError.mongoErrorDie("drop error"))));
38
- export const createIndexes = /*#__PURE__*/F.dual(args => isDocumentCollection(args[0]), (collection, indexSpecs, options) => F.pipe(Effect.promise(() => collection.collection.createIndexes([...indexSpecs], options)), Effect.catchAllDefect(MongoError.mongoErrorDie("createIndexes error"))));
39
- export const createIndex = /*#__PURE__*/F.dual(args => isDocumentCollection(args[0]), (collection, indexSpec, options) => F.pipe(Effect.promise(() => collection.collection.createIndex(indexSpec, options)), Effect.catchAllDefect(MongoError.mongoErrorDie("createIndex error"))));
40
- // TODO: review return type. Should we return Document like mongodb driver?
41
- export const dropIndex = /*#__PURE__*/F.dual(args => isDocumentCollection(args[0]), (collection, indexName, options) => F.pipe(Effect.promise(() => collection.collection.dropIndex(indexName, options)), Effect.asVoid, Effect.catchAllDefect(MongoError.mongoErrorDie("dropIndex error"))));
42
- export const aggregate = /*#__PURE__*/F.dual(args => isDocumentCollection(args[0]), (collection, pipeline, options) => new DocumentAggregationCursor.DocumentAggregationCursor({
43
+ })), Effect.catchAllDefect(mongoErrorOrDie(errorSource(collection, "rename")))));
44
+ export const drop = /*#__PURE__*/F.dual(args => isDocumentCollection(args[0]), (collection, options) => F.pipe(Effect.promise(() => collection.collection.drop(options)), Effect.catchAllDefect(mongoErrorOrDie(errorSource(collection, "drop")))));
45
+ export const createIndexes = /*#__PURE__*/F.dual(args => isDocumentCollection(args[0]), (collection, indexSpecs, options) => F.pipe(Effect.promise(() => collection.collection.createIndexes([...indexSpecs], options)), Effect.catchAllDefect(mongoErrorOrDie(errorSource(collection, "createIndexes")))));
46
+ export const createIndex = /*#__PURE__*/F.dual(args => isDocumentCollection(args[0]), (collection, indexSpec, options) => F.pipe(Effect.promise(() => collection.collection.createIndex(indexSpec, options)), Effect.catchAllDefect(mongoErrorOrDie(errorSource(collection, "createIndex")))));
47
+ export const dropIndex = /*#__PURE__*/F.dual(args => isDocumentCollection(args[0]), (collection, indexName, options) => F.pipe(Effect.promise(() => collection.collection.dropIndex(indexName, options)), Effect.catchAllDefect(mongoErrorOrDie(errorSource(collection, "dropIndex")))));
48
+ export const aggregate = /*#__PURE__*/F.dual(args => isDocumentCollection(args[0]), (collection, pipeline, options) => new DocumentAggregationCursor.DocumentAggregationCursorImpl({
43
49
  cursor: collection.collection.aggregate(pipeline ? [...pipeline] : undefined, options)
44
50
  }));
45
- export const estimatedDocumentCount = /*#__PURE__*/F.dual(args => isDocumentCollection(args[0]), (collection, options) => F.pipe(Effect.promise(() => collection.collection.estimatedDocumentCount(options)), Effect.catchAllDefect(MongoError.mongoErrorDie("estimatedDocumentCount error"))));
46
- export const countDocuments = /*#__PURE__*/F.dual(args => isDocumentCollection(args[0]), (collection, filter, options) => F.pipe(Effect.promise(() => collection.collection.countDocuments(filter, options)), Effect.catchAllDefect(MongoError.mongoErrorDie("countDocuments error"))));
47
- export const typed = /*#__PURE__*/F.dual(args => isDocumentCollection(args[0]), (collection, schema) => new Collection.Collection({
51
+ export const estimatedDocumentCount = /*#__PURE__*/F.dual(args => isDocumentCollection(args[0]), (collection, options) => F.pipe(Effect.promise(() => collection.collection.estimatedDocumentCount(options)), Effect.catchAllDefect(mongoErrorOrDie(errorSource(collection, "estimatedDocumentCount")))));
52
+ export const countDocuments = /*#__PURE__*/F.dual(args => isDocumentCollection(args[0]), (collection, filter, options) => F.pipe(Effect.promise(() => collection.collection.countDocuments(filter, options)), Effect.catchAllDefect(mongoErrorOrDie(errorSource(collection, "countDocuments")))));
53
+ export const typed = /*#__PURE__*/F.dual(args => isDocumentCollection(args[0]), (collection, schema) => new Collection.CollectionImpl({
48
54
  collection: collection.collection,
49
55
  schema
50
56
  }));
51
- const isDocumentCollection = x => x instanceof DocumentCollection;
57
+ const isDocumentCollection = x => x instanceof DocumentCollectionImpl;
58
+ const errorSource = (collection, functionName) => new MongoError.CollectionErrorSource({
59
+ module: DocumentCollectionImpl.name,
60
+ functionName,
61
+ db: collection.collection.dbName,
62
+ collection: collection.collection.collectionName
63
+ });
52
64
  //# sourceMappingURL=DocumentCollection.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DocumentCollection.js","names":["Array","Data","Effect","F","O","Collection","DocumentAggregationCursor","DocumentFindCursor","MongoError","DocumentCollection","TaggedClass","find","dual","args","isDocumentCollection","collection","filter","options","cursor","findOne","pipe","promise","map","value","fromNullable","catchAllDefect","mongoErrorDie","insertOne","doc","insertMany","docs","deleteOne","deleteMany","updateMany","update","isArray","replaceOne","replacement","findOneAndReplace","includeResultMetadata","result","rename","newName","drop","createIndexes","indexSpecs","createIndex","indexSpec","dropIndex","indexName","asVoid","aggregate","pipeline","undefined","estimatedDocumentCount","countDocuments","typed","schema","x"],"sources":["../../src/DocumentCollection.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"DocumentCollection.js","names":["Array","Data","Effect","F","O","pipeArguments","Collection","DocumentAggregationCursor","DocumentFindCursor","mongoErrorOrDie","MongoError","DocumentCollectionImpl","TaggedClass","pipe","arguments","find","dual","args","isDocumentCollection","collection","filter","options","DocumentFindCursorImpl","cursor","findOne","promise","map","value","fromNullable","catchAllDefect","errorSource","insertOne","doc","insertMany","docs","deleteOne","deleteMany","updateMany","update","isArray","replaceOne","replacement","findOneAndReplace","includeResultMetadata","result","rename","newName","drop","createIndexes","indexSpecs","createIndex","indexSpec","dropIndex","indexName","aggregate","pipeline","DocumentAggregationCursorImpl","undefined","estimatedDocumentCount","countDocuments","typed","schema","CollectionImpl","x","functionName","CollectionErrorSource","module","name","db","dbName","collectionName"],"sources":["../../src/DocumentCollection.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -4,30 +4,40 @@
4
4
  import * as Data from "effect/Data";
5
5
  import * as Effect from "effect/Effect";
6
6
  import * as F from "effect/Function";
7
+ import { pipeArguments } from "effect/Pipeable";
7
8
  import * as Stream from "effect/Stream";
8
9
  import * as FindCursor from "./FindCursor.js";
10
+ import { mongoErrorOrDie } from "./internal/mongo-error.js";
9
11
  import * as MongoError from "./MongoError.js";
10
- export class DocumentFindCursor extends /*#__PURE__*/Data.TaggedClass("DocumentFindCursor") {}
11
- export const filter = /*#__PURE__*/F.dual(args => isDocumentFindCursor(args[0]), (cursor, filter) => new DocumentFindCursor({
12
+ /** @internal */
13
+ export class DocumentFindCursorImpl extends /*#__PURE__*/Data.TaggedClass("DocumentFindCursor") {
14
+ pipe() {
15
+ return pipeArguments(this, arguments);
16
+ }
17
+ }
18
+ export const filter = /*#__PURE__*/F.dual(args => isDocumentFindCursor(args[0]), (cursor, filter) => new DocumentFindCursorImpl({
12
19
  cursor: cursor.cursor.filter(filter)
13
20
  }));
14
- export const project = /*#__PURE__*/F.dual(args => isDocumentFindCursor(args[0]), (cursor, value) => new DocumentFindCursor({
21
+ export const project = /*#__PURE__*/F.dual(args => isDocumentFindCursor(args[0]), (cursor, value) => new DocumentFindCursorImpl({
15
22
  cursor: cursor.cursor.project(value)
16
23
  }));
17
- export const sort = /*#__PURE__*/F.dual(args => isDocumentFindCursor(args[0]), (cursor, sort, direction) => new DocumentFindCursor({
24
+ export const sort = /*#__PURE__*/F.dual(args => isDocumentFindCursor(args[0]), (cursor, sort, direction) => new DocumentFindCursorImpl({
18
25
  cursor: cursor.cursor.sort(sort, direction)
19
26
  }));
20
- export const limit = /*#__PURE__*/F.dual(args => isDocumentFindCursor(args[0]), (cursor, value) => new DocumentFindCursor({
27
+ export const limit = /*#__PURE__*/F.dual(args => isDocumentFindCursor(args[0]), (cursor, value) => new DocumentFindCursorImpl({
21
28
  cursor: cursor.cursor.limit(value)
22
29
  }));
23
- export const toArray = cursor => F.pipe(Effect.tryPromise({
24
- try: () => cursor.cursor.toArray(),
25
- catch: F.identity
26
- }), Effect.catchAll(MongoError.mongoErrorDie("toArray error")));
27
- export const toStream = cursor => F.pipe(Stream.fromAsyncIterable(cursor.cursor, F.identity), Stream.catchAll(MongoError.mongoErrorStream("Unable to read from mongodb cursor")));
28
- export const typed = /*#__PURE__*/F.dual(args => isDocumentFindCursor(args[0]), (cursor, schema) => new FindCursor.FindCursor({
30
+ export const toArray = cursor => F.pipe(Effect.promise(() => cursor.cursor.toArray()), Effect.catchAllDefect(mongoErrorOrDie(errorSource(cursor, "toArray"))));
31
+ export const toStream = cursor => F.pipe(Stream.fromAsyncIterable(cursor.cursor, F.identity), Stream.catchAll(mongoErrorOrDie(errorSource(cursor, "toStream"))));
32
+ export const typed = /*#__PURE__*/F.dual(args => isDocumentFindCursor(args[0]), (cursor, schema) => new FindCursor.FindCursorImpl({
29
33
  cursor: cursor.cursor,
30
34
  schema
31
35
  }));
32
- const isDocumentFindCursor = x => x instanceof DocumentFindCursor;
36
+ const isDocumentFindCursor = x => x instanceof DocumentFindCursorImpl;
37
+ const errorSource = (cursor, functionName) => new MongoError.CollectionErrorSource({
38
+ module: DocumentFindCursorImpl.name,
39
+ functionName,
40
+ db: cursor.cursor.namespace.db,
41
+ collection: cursor.cursor.namespace.collection ?? "NO_COLLECTION_NAME"
42
+ });
33
43
  //# sourceMappingURL=DocumentFindCursor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DocumentFindCursor.js","names":["Data","Effect","F","Stream","FindCursor","MongoError","DocumentFindCursor","TaggedClass","filter","dual","args","isDocumentFindCursor","cursor","project","value","sort","direction","limit","toArray","pipe","tryPromise","try","catch","identity","catchAll","mongoErrorDie","toStream","fromAsyncIterable","mongoErrorStream","typed","schema","x"],"sources":["../../src/DocumentFindCursor.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAGA,OAAO,KAAKA,IAAI,MAAM,aAAa;AACnC,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,CAAC,MAAM,iBAAiB;AAEpC,OAAO,KAAKC,MAAM,MAAM,eAAe;AAEvC,OAAO,KAAKC,UAAU,MAAM,iBAAiB;AAC7C,OAAO,KAAKC,UAAU,MAAM,iBAAiB;AAE7C,OAAM,MAAOC,kBAAmB,sBAAQN,IAAI,CAACO,WAAW,CAAC,oBAAoB,CAE3E;AAGF,OAAO,MAAMC,MAAM,gBAGfN,CAAC,CAACO,IAAI,CACPC,IAAI,IAAKC,oBAAoB,CAACD,IAAI,CAAC,CAAC,CAAC,CAAC,EACvC,CAACE,MAA0B,EAAEJ,MAAwB,KACnD,IAAIF,kBAAkB,CAAC;EAAEM,MAAM,EAAEA,MAAM,CAACA,MAAM,CAACJ,MAAM,CAACA,MAAM;AAAC,CAAE,CAAC,CACnE;AAED,OAAO,MAAMK,OAAO,gBAGhBX,CAAC,CAACO,IAAI,CACPC,IAAI,IAAKC,oBAAoB,CAACD,IAAI,CAAC,CAAC,CAAC,CAAC,EACvC,CAACE,MAA0B,EAAEE,KAAe,KAC1C,IAAIR,kBAAkB,CAAC;EAAEM,MAAM,EAAEA,MAAM,CAACA,MAAM,CAACC,OAAO,CAACC,KAAK;AAAC,CAAE,CAAC,CACnE;AAED,OAAO,MAAMC,IAAI,gBAGbb,CAAC,CAACO,IAAI,CACPC,IAAI,IAAKC,oBAAoB,CAACD,IAAI,CAAC,CAAC,CAAC,CAAC,EACvC,CAACE,MAA0B,EAAEG,IAAmB,EAAEC,SAAyB,KACzE,IAAIV,kBAAkB,CAAC;EAAEM,MAAM,EAAEA,MAAM,CAACA,MAAM,CAACG,IAAI,CAACA,IAAI,EAAEC,SAAS;AAAC,CAAE,CAAC,CAC1E;AAED,OAAO,MAAMC,KAAK,gBAGdf,CAAC,CAACO,IAAI,CACPC,IAAI,IAAKC,oBAAoB,CAACD,IAAI,CAAC,CAAC,CAAC,CAAC,EACvC,CAACE,MAA0B,EAAEE,KAAa,KACxC,IAAIR,kBAAkB,CAAC;EAAEM,MAAM,EAAEA,MAAM,CAACA,MAAM,CAACK,KAAK,CAACH,KAAK;AAAC,CAAE,CAAC,CACjE;AAED,OAAO,MAAMI,OAAO,GAAIN,MAA0B,IAChDV,CAAC,CAACiB,IAAI,CACJlB,MAAM,CAACmB,UAAU,CAAC;EAAEC,GAAG,EAAEA,CAAA,KAAMT,MAAM,CAACA,MAAM,CAACM,OAAO,EAAE;EAAEI,KAAK,EAAEpB,CAAC,CAACqB;AAAQ,CAAE,CAAC,EAC5EtB,MAAM,CAACuB,QAAQ,CAACnB,UAAU,CAACoB,aAAa,CAAkB,eAAe,CAAC,CAAC,CAC5E;AAEH,OAAO,MAAMC,QAAQ,GACnBd,MAA0B,IAE1BV,CAAC,CAACiB,IAAI,CACJhB,MAAM,CAACwB,iBAAiB,CAACf,MAAM,CAACA,MAAM,EAAEV,CAAC,CAACqB,QAAQ,CAAC,EACnDpB,MAAM,CAACqB,QAAQ,CAACnB,UAAU,CAACuB,gBAAgB,CAAW,oCAAoC,CAAC,CAAC,CAC7F;AAEH,OAAO,MAAMC,KAAK,gBAGd3B,CAAC,CAACO,IAAI,CAAEC,IAAI,IAAKC,oBAAoB,CAACD,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAClDE,MAA0B,EAC1BkB,MAA8B,KACK,IAAI1B,UAAU,CAACA,UAAU,CAAU;EAAEQ,MAAM,EAAEA,MAAM,CAACA,MAAM;EAAEkB;AAAM,CAAE,CAAC,CAAC;AAE3G,MAAMnB,oBAAoB,GAAIoB,CAAU,IAAKA,CAAC,YAAYzB,kBAAkB","ignoreList":[]}
1
+ {"version":3,"file":"DocumentFindCursor.js","names":["Data","Effect","F","pipeArguments","Stream","FindCursor","mongoErrorOrDie","MongoError","DocumentFindCursorImpl","TaggedClass","pipe","arguments","filter","dual","args","isDocumentFindCursor","cursor","project","value","sort","direction","limit","toArray","promise","catchAllDefect","errorSource","toStream","fromAsyncIterable","identity","catchAll","typed","schema","FindCursorImpl","x","functionName","CollectionErrorSource","module","name","db","namespace","collection"],"sources":["../../src/DocumentFindCursor.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -4,50 +4,57 @@
4
4
  import * as Data from "effect/Data";
5
5
  import * as Effect from "effect/Effect";
6
6
  import * as F from "effect/Function";
7
+ import { pipeArguments } from "effect/Pipeable";
7
8
  import * as Schema from "effect/Schema";
8
9
  import * as Stream from "effect/Stream";
9
10
  import * as Tuple from "effect/Tuple";
11
+ import { mongoErrorOrDie } from "./internal/mongo-error.js";
10
12
  import * as MongoError from "./MongoError.js";
11
- export class FindCursor extends /*#__PURE__*/Data.TaggedClass("FindCursor") {}
12
- export const filter = /*#__PURE__*/F.dual(args => isFindCursor(args[0]), (cursor, filter) => new FindCursor({
13
+ /** @internal */
14
+ export class FindCursorImpl extends /*#__PURE__*/Data.TaggedClass("FindCursor") {
15
+ pipe() {
16
+ return pipeArguments(this, arguments);
17
+ }
18
+ }
19
+ export const filter = /*#__PURE__*/F.dual(args => isFindCursor(args[0]), (cursor, filter) => new FindCursorImpl({
13
20
  cursor: cursor.cursor.filter(filter),
14
21
  schema: cursor.schema
15
22
  }));
16
- export const project = /*#__PURE__*/F.dual(args => isFindCursor(args[0]), (cursor, newSchema, value) => new FindCursor({
23
+ export const project = /*#__PURE__*/F.dual(args => isFindCursor(args[0]), (cursor, newSchema, value) => new FindCursorImpl({
17
24
  cursor: cursor.cursor.project(value),
18
25
  schema: newSchema
19
26
  }));
20
- export const sort = /*#__PURE__*/F.dual(args => isFindCursor(args[0]), (cursor, sort, direction) => new FindCursor({
27
+ export const sort = /*#__PURE__*/F.dual(args => isFindCursor(args[0]), (cursor, sort, direction) => new FindCursorImpl({
21
28
  cursor: cursor.cursor.sort(sort, direction),
22
29
  schema: cursor.schema
23
30
  }));
24
- export const limit = /*#__PURE__*/F.dual(args => isFindCursor(args[0]), (cursor, value) => new FindCursor({
31
+ export const limit = /*#__PURE__*/F.dual(args => isFindCursor(args[0]), (cursor, value) => new FindCursorImpl({
25
32
  cursor: cursor.cursor.limit(value),
26
33
  schema: cursor.schema
27
34
  }));
28
35
  export const toArray = cursor => {
29
36
  const decode = Schema.decodeUnknown(cursor.schema);
30
- return Effect.tryPromise({
31
- try: () => cursor.cursor.toArray(),
32
- catch: F.identity
33
- }).pipe(Effect.catchAll(MongoError.mongoErrorDie("Unable to get array from mongodb cursor")), Effect.flatMap(Effect.forEach(x => decode(x))));
37
+ return Effect.promise(() => cursor.cursor.toArray()).pipe(Effect.catchAllDefect(mongoErrorOrDie(errorSource(cursor, "toArray"))), Effect.flatMap(Effect.forEach(x => decode(x))));
34
38
  };
35
39
  export const toArrayEither = cursor => {
36
40
  const decode = Schema.decodeUnknown(cursor.schema);
37
- return Effect.tryPromise({
38
- try: () => cursor.cursor.toArray(),
39
- catch: F.identity
40
- }).pipe(Effect.catchAll(MongoError.mongoErrorDie("Unable to get array from mongodb cursor")), Effect.flatMap(Effect.forEach(x => F.pipe(decode(x), Effect.mapError(error => Tuple.make(x, error)), Effect.either))));
41
+ return Effect.promise(() => cursor.cursor.toArray()).pipe(Effect.catchAllDefect(mongoErrorOrDie(errorSource(cursor, "toArrayEither"))), Effect.flatMap(Effect.forEach(x => F.pipe(decode(x), Effect.mapError(error => Tuple.make(x, error)), Effect.either))));
41
42
  };
42
43
  export const toStream = cursor => {
43
44
  const decode = Schema.decodeUnknown(cursor.schema);
44
- return F.pipe(Stream.fromAsyncIterable(cursor.cursor, F.identity), Stream.catchAll(MongoError.mongoErrorStream("Unable to get stream from mongodb cursor")), Stream.mapEffect(x => decode(x)));
45
+ return F.pipe(Stream.fromAsyncIterable(cursor.cursor, F.identity), Stream.catchAll(mongoErrorOrDie(errorSource(cursor, "toStream"))), Stream.mapEffect(x => decode(x)));
45
46
  };
46
47
  export const toStreamEither = cursor => {
47
48
  const decode = Schema.decodeUnknown(cursor.schema);
48
- return F.pipe(Stream.fromAsyncIterable(cursor.cursor, F.identity), Stream.catchAll(MongoError.mongoErrorStream("Unable to get stream either from mongodb cursor")), Stream.mapEffect(x => F.pipe(
49
+ return F.pipe(Stream.fromAsyncIterable(cursor.cursor, F.identity), Stream.catchAll(mongoErrorOrDie(errorSource(cursor, "toStreamEither"))), Stream.mapEffect(x => F.pipe(
49
50
  // keep new line
50
51
  decode(x), Effect.mapError(error => Tuple.make(x, error)), Effect.either)));
51
52
  };
52
- const isFindCursor = x => x instanceof FindCursor;
53
+ const isFindCursor = x => x instanceof FindCursorImpl;
54
+ const errorSource = (cursor, functionName) => new MongoError.CollectionErrorSource({
55
+ module: FindCursorImpl.name,
56
+ functionName,
57
+ db: cursor.cursor.namespace.db,
58
+ collection: cursor.cursor.namespace.collection ?? "NO_COLLECTION_NAME"
59
+ });
53
60
  //# sourceMappingURL=FindCursor.js.map