@rebasepro/server-mongo 0.14.0 → 0.14.1

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.
@@ -1 +1 @@
1
- {"version":3,"file":"services.d.ts","sourceRoot":"","sources":["../../src/auth/services.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"services.d.ts","sourceRoot":"","sources":["../../src/auth/services.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * Translates Rebase filter conditions to MongoDB query operators.
5
5
  */
6
- import { CollectionConfig, FilterValues, LogicalCondition } from "@rebasepro/types";
6
+ import { CollectionConfig, FilterValues, LogicalCondition, OrderByTuple } from "@rebasepro/types";
7
7
  import { Filter, Document } from "mongodb";
8
8
  /**
9
9
  * MongoDB Condition Builder
@@ -79,13 +79,37 @@ export declare class MongoConditionBuilder {
79
79
  searchString?: string;
80
80
  properties?: CollectionConfig["properties"];
81
81
  }): Filter<Document>;
82
+ /**
83
+ * The primary key's name in a stored document.
84
+ *
85
+ * Rows leave this driver with `_id` renamed to `id` — see
86
+ * `MongoDataService.documentToRow` — so `id` is the only name a caller ever
87
+ * sees, and the one the SDK's own examples use for a tie-breaker. A sort
88
+ * document naming `id` names a field no document has: Mongo does not
89
+ * complain, it just returns them in natural order, so `.orderBy("id")` read
90
+ * as "no sort at all" with a 200 to go with it.
91
+ */
92
+ private static readonly ID_FIELD;
82
93
  /**
83
94
  * Build MongoDB sort options from Rebase options
84
95
  *
85
- * @param orderBy - Field to order by
86
- * @param order - Sort direction
96
+ * A Mongo sort document is already an ordered map of field to direction, so
97
+ * a multi-key sort is expressed directly: the keys are applied in insertion
98
+ * order, each breaking ties on the one before it.
99
+ *
100
+ * The id closes every sort, descending, for the same reason the Postgres
101
+ * driver appends `id DESC`: it is what makes the ordering *total*. Without
102
+ * it, two rows sharing a sort value are returned in whatever order the
103
+ * engine pleases, and that order is free to differ between two executions of
104
+ * the same query — so paging by `offset` over a non-unique sort column
105
+ * repeats some rows and skips others. A single-column sort has always had
106
+ * this exposure here; a multi-key sort merely made it easier to reach, since
107
+ * the whole point of the later keys is that the earlier ones tie.
108
+ *
109
+ * @param orderBy - Field to order by, or the `[field, direction]` list
110
+ * @param order - Sort direction, for the single-field spelling
87
111
  * @returns MongoDB sort object
88
112
  */
89
- static buildSort(orderBy?: string, order?: "asc" | "desc"): Record<string, 1 | -1> | undefined;
113
+ static buildSort(orderBy?: string | OrderByTuple[], order?: "asc" | "desc"): Record<string, 1 | -1> | undefined;
90
114
  }
91
115
  //# sourceMappingURL=MongoConditionBuilder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MongoConditionBuilder.d.ts","sourceRoot":"","sources":["../../src/db/MongoConditionBuilder.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,gBAAgB,EAAmB,YAAY,EAAE,gBAAgB,EAAiB,MAAM,kBAAkB,CAAC;AAEpH,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAkD3C;;;;;GAKG;AACH,qBAAa,qBAAqB;IAC9B;;;;;OAKG;IACH,MAAM,CAAC,qBAAqB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACtD,MAAM,EAAE,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,GAC/C,MAAM,CAAC,QAAQ,CAAC,EAAE;IAqBrB;;;;;;;;;;OAUG;IACH,OAAO,CAAC,MAAM,CAAC,cAAc;IAwC7B;;;;;;OAMG;IACH,MAAM,CAAC,sBAAsB,CAAC,OAAO,EAAE,gBAAgB,GAAG,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,SAAS;IAuBlG;;;;;;OAMG;IACH,MAAM,CAAC,qBAAqB,CACxB,YAAY,EAAE,MAAM,EAKpB,UAAU,EAAE,gBAAgB,CAAC,YAAY,CAAC,GAC3C,MAAM,CAAC,QAAQ,CAAC,EAAE;IAkCrB;;;;;OAKG;IACH,MAAM,CAAC,wBAAwB,CAAC,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,SAAS;IAM7F;;;;;OAKG;IACH,MAAM,CAAC,uBAAuB,CAAC,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,SAAS;IAM5F;;;;;OAKG;IACH,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE;QACtD,MAAM,CAAC,EAAE,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;QAChD;;;;;WAKG;QACH,OAAO,CAAC,EAAE,gBAAgB,CAAC;QAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,UAAU,CAAC,EAAE,gBAAgB,CAAC,YAAY,CAAC,CAAC;KAC/C,GAAG,MAAM,CAAC,QAAQ,CAAC;IA8BpB;;;;;;OAMG;IACH,MAAM,CAAC,SAAS,CACZ,OAAO,CAAC,EAAE,MAAM,EAChB,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,GACvB,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,SAAS;CAIxC"}
1
+ {"version":3,"file":"MongoConditionBuilder.d.ts","sourceRoot":"","sources":["../../src/db/MongoConditionBuilder.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,gBAAgB,EAAmB,YAAY,EAAE,gBAAgB,EAAE,YAAY,EAAiB,MAAM,kBAAkB,CAAC;AAElI,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAkD3C;;;;;GAKG;AACH,qBAAa,qBAAqB;IAC9B;;;;;OAKG;IACH,MAAM,CAAC,qBAAqB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACtD,MAAM,EAAE,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,GAC/C,MAAM,CAAC,QAAQ,CAAC,EAAE;IAqBrB;;;;;;;;;;OAUG;IACH,OAAO,CAAC,MAAM,CAAC,cAAc;IAwC7B;;;;;;OAMG;IACH,MAAM,CAAC,sBAAsB,CAAC,OAAO,EAAE,gBAAgB,GAAG,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,SAAS;IAuBlG;;;;;;OAMG;IACH,MAAM,CAAC,qBAAqB,CACxB,YAAY,EAAE,MAAM,EAKpB,UAAU,EAAE,gBAAgB,CAAC,YAAY,CAAC,GAC3C,MAAM,CAAC,QAAQ,CAAC,EAAE;IAkCrB;;;;;OAKG;IACH,MAAM,CAAC,wBAAwB,CAAC,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,SAAS;IAM7F;;;;;OAKG;IACH,MAAM,CAAC,uBAAuB,CAAC,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,SAAS;IAM5F;;;;;OAKG;IACH,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE;QACtD,MAAM,CAAC,EAAE,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;QAChD;;;;;WAKG;QACH,OAAO,CAAC,EAAE,gBAAgB,CAAC;QAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,UAAU,CAAC,EAAE,gBAAgB,CAAC,YAAY,CAAC,CAAC;KAC/C,GAAG,MAAM,CAAC,QAAQ,CAAC;IA8BpB;;;;;;;;;OASG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAEzC;;;;;;;;;;;;;;;;;;;OAmBG;IACH,MAAM,CAAC,SAAS,CACZ,OAAO,CAAC,EAAE,MAAM,GAAG,YAAY,EAAE,EACjC,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,GACvB,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,SAAS;CAkBxC"}
@@ -5,7 +5,7 @@
5
5
  * Provides all CRUD operations for rows.
6
6
  */
7
7
  import { Db, Document, Filter } from "mongodb";
8
- import { FilterValues, DataRepository, CollectionConfig, LogicalCondition } from "@rebasepro/types";
8
+ import { FilterValues, DataRepository, CollectionConfig, LogicalCondition, OrderByTuple } from "@rebasepro/types";
9
9
  /**
10
10
  * MongoDB Row Service
11
11
  *
@@ -54,7 +54,7 @@ export declare class MongoDataService implements DataRepository {
54
54
  filter?: FilterValues<Extract<keyof M, string>>;
55
55
  /** An `or(...)`/`and(...)` group, AND-ed with `filter`. */
56
56
  logical?: LogicalCondition;
57
- orderBy?: string;
57
+ orderBy?: string | OrderByTuple[];
58
58
  order?: "desc" | "asc";
59
59
  limit?: number;
60
60
  offset?: number;
@@ -69,7 +69,7 @@ export declare class MongoDataService implements DataRepository {
69
69
  */
70
70
  searchRows<M extends Record<string, any>>(collectionPath: string, searchString: string, options?: {
71
71
  filter?: FilterValues<Extract<keyof M, string>>;
72
- orderBy?: string;
72
+ orderBy?: string | OrderByTuple[];
73
73
  order?: "desc" | "asc";
74
74
  limit?: number;
75
75
  databaseId?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"MongoDataService.d.ts","sourceRoot":"","sources":["../../src/db/MongoDataService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MongoDataService.d.ts","sourceRoot":"","sources":["../../src/db/MongoDataService.ts"],"names":[],"mappings":"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"}
package/dist/index.es.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { MongoClient, ObjectId } from "mongodb";
2
2
  import { ANONYMOUS_USER_ID, EntityReference, ListLimitError, getCollectionDataPath, isAnonymousUid, resolveClientListLimit } from "@rebasepro/types";
3
- import { buildPropertyCallbacks, buildSdkData, checkOperation, normalizeEmail, securityRuleToConditions, toFilterTuples, updateDateAutoValues } from "@rebasepro/common";
3
+ import { buildPropertyCallbacks, buildSdkData, checkOperation, normalizeDriverOrderBy, normalizeEmail, securityRuleToConditions, toFilterTuples, updateDateAutoValues } from "@rebasepro/common";
4
4
  import { ApiError, logger } from "@rebasepro/server";
5
5
  import { mergeDeep } from "@rebasepro/utils";
6
6
  //#region \0rolldown/runtime.js
@@ -108,7 +108,7 @@ function likePatternToRegExp(pattern, caseInsensitive) {
108
108
  * Provides static methods to translate Rebase filter conditions
109
109
  * to MongoDB query filters.
110
110
  */
111
- var MongoConditionBuilder = class {
111
+ var MongoConditionBuilder = class MongoConditionBuilder {
112
112
  /**
113
113
  * Build MongoDB filter conditions from Rebase FilterValues
114
114
  *
@@ -238,15 +238,46 @@ var MongoConditionBuilder = class {
238
238
  return this.combineConditionsWithAnd(conditions) ?? {};
239
239
  }
240
240
  /**
241
+ * The primary key's name in a stored document.
242
+ *
243
+ * Rows leave this driver with `_id` renamed to `id` — see
244
+ * `MongoDataService.documentToRow` — so `id` is the only name a caller ever
245
+ * sees, and the one the SDK's own examples use for a tie-breaker. A sort
246
+ * document naming `id` names a field no document has: Mongo does not
247
+ * complain, it just returns them in natural order, so `.orderBy("id")` read
248
+ * as "no sort at all" with a 200 to go with it.
249
+ */
250
+ static ID_FIELD = "_id";
251
+ /**
241
252
  * Build MongoDB sort options from Rebase options
242
253
  *
243
- * @param orderBy - Field to order by
244
- * @param order - Sort direction
254
+ * A Mongo sort document is already an ordered map of field to direction, so
255
+ * a multi-key sort is expressed directly: the keys are applied in insertion
256
+ * order, each breaking ties on the one before it.
257
+ *
258
+ * The id closes every sort, descending, for the same reason the Postgres
259
+ * driver appends `id DESC`: it is what makes the ordering *total*. Without
260
+ * it, two rows sharing a sort value are returned in whatever order the
261
+ * engine pleases, and that order is free to differ between two executions of
262
+ * the same query — so paging by `offset` over a non-unique sort column
263
+ * repeats some rows and skips others. A single-column sort has always had
264
+ * this exposure here; a multi-key sort merely made it easier to reach, since
265
+ * the whole point of the later keys is that the earlier ones tie.
266
+ *
267
+ * @param orderBy - Field to order by, or the `[field, direction]` list
268
+ * @param order - Sort direction, for the single-field spelling
245
269
  * @returns MongoDB sort object
246
270
  */
247
271
  static buildSort(orderBy, order) {
248
- if (!orderBy) return void 0;
249
- return { [orderBy]: order === "desc" ? -1 : 1 };
272
+ const keys = normalizeDriverOrderBy(orderBy, order);
273
+ if (!keys) return void 0;
274
+ const sort = {};
275
+ for (const [field, direction] of keys) {
276
+ const key = field === "id" ? MongoConditionBuilder.ID_FIELD : field;
277
+ if (!(key in sort)) sort[key] = direction === "desc" ? -1 : 1;
278
+ }
279
+ if (!(MongoConditionBuilder.ID_FIELD in sort)) sort[MongoConditionBuilder.ID_FIELD] = -1;
280
+ return sort;
250
281
  }
251
282
  };
252
283
  //#endregion
@@ -480,6 +511,19 @@ var MongoDataService = class {
480
511
  * Provides real-time subscriptions to collection and row changes.
481
512
  */
482
513
  /**
514
+ * The query half of a subscription config — everything except who is watching.
515
+ *
516
+ * Spread into the re-fetch rather than re-listed field by field. Re-listing is
517
+ * how `logical` and `offset` went missing twice on this path: the type declares
518
+ * them, every boundary accepted them, and each hand-written list quietly named
519
+ * a subset. A function that removes the two non-query fields cannot fall behind
520
+ * the type the way a list of the other nine can.
521
+ */
522
+ var queryOf = (config) => {
523
+ const { clientId: _clientId, authContext: _authContext, ...query } = config;
524
+ return query;
525
+ };
526
+ /**
483
527
  * MongoDB Realtime Service
484
528
  *
485
529
  * Implements real-time subscriptions using MongoDB Change Streams.
@@ -503,6 +547,34 @@ var MongoRealtimeService = class {
503
547
  return path.replace(/\//g, "_");
504
548
  }
505
549
  /**
550
+ * Claim a delivery slot for a subscription, before doing the work.
551
+ *
552
+ * Returns the check to run immediately before calling the callback. It
553
+ * refuses in three cases, all of which used to deliver:
554
+ *
555
+ * - **Out of order.** A newer fetch has already delivered, so this one is
556
+ * stale — the client would go back to the state before the change.
557
+ * - **Unsubscribed.** The subscription was cancelled while the fetch was in
558
+ * flight, and its callback belongs to a client that stopped listening.
559
+ * - **Re-subscribed.** `subscribeToCollection` unsubscribes first, so the
560
+ * same id can name a *different* subscription by the time a fetch lands —
561
+ * with a different filter, and a different caller's rows.
562
+ *
563
+ * Synchronous deliveries claim a slot too. A `delete` notification with no
564
+ * fetch behind it is the newest thing known about the row, so it must also
565
+ * be the thing that closes the door on an older fetch still in flight —
566
+ * otherwise the deleted row reappears a moment after it vanished.
567
+ */
568
+ beginDelivery(subscriptionId, subscription) {
569
+ const seq = ++subscription.started;
570
+ return () => {
571
+ if (this.subscriptions.get(subscriptionId) !== subscription) return false;
572
+ if (seq <= subscription.delivered) return false;
573
+ subscription.delivered = seq;
574
+ return true;
575
+ };
576
+ }
577
+ /**
506
578
  * Subscribe to collection changes
507
579
  */
508
580
  subscribeToCollection(subscriptionId, config, callback) {
@@ -522,12 +594,14 @@ var MongoRealtimeService = class {
522
594
  type: "collection",
523
595
  config,
524
596
  changeStream,
525
- callback
597
+ callback,
598
+ started: 0,
599
+ delivered: 0
526
600
  };
527
601
  this.subscriptions.set(subscriptionId, subscription);
528
- this.fetchAndNotifyCollection(subscriptionId, config, callback);
602
+ this.fetchAndNotifyCollection(subscriptionId, subscription);
529
603
  changeStream.on("change", async (change) => {
530
- await this.fetchAndNotifyCollection(subscriptionId, config, callback);
604
+ await this.fetchAndNotifyCollection(subscriptionId, subscription);
531
605
  });
532
606
  changeStream.on("error", (error) => {
533
607
  logger.error(`Change stream error for subscription ${subscriptionId}`, { error });
@@ -537,29 +611,29 @@ var MongoRealtimeService = class {
537
611
  const subscription = {
538
612
  type: "collection",
539
613
  config,
540
- callback
614
+ callback,
615
+ started: 0,
616
+ delivered: 0
541
617
  };
542
618
  this.subscriptions.set(subscriptionId, subscription);
543
- this.fetchAndNotifyCollection(subscriptionId, config, callback);
619
+ this.fetchAndNotifyCollection(subscriptionId, subscription);
544
620
  }
545
621
  }
546
622
  /**
547
623
  * Fetch collection and notify callback
548
624
  */
549
- async fetchAndNotifyCollection(subscriptionId, config, callback) {
625
+ async fetchAndNotifyCollection(subscriptionId, subscription) {
626
+ const config = subscription.config;
627
+ const callback = subscription.callback;
628
+ const canDeliver = this.beginDelivery(subscriptionId, subscription);
550
629
  try {
551
630
  const registryCollection = this.driver?.registry?.getCollectionByPath(config.path);
552
631
  const rows = await (await this.scopedDriver(config.authContext)).fetchCollection({
553
- path: config.path,
554
- collection: registryCollection,
632
+ ...queryOf(config),
555
633
  filter: config.filter,
556
- orderBy: config.orderBy,
557
- order: config.order,
558
- limit: config.limit,
559
- startAfter: config.startAfter,
560
- searchString: config.searchString
634
+ collection: registryCollection
561
635
  });
562
- if (callback) callback(rows);
636
+ if (callback && canDeliver()) callback(rows);
563
637
  } catch (error) {
564
638
  logger.error(`Error fetching collection for subscription ${subscriptionId}`, { error });
565
639
  }
@@ -600,14 +674,17 @@ var MongoRealtimeService = class {
600
674
  type: "single",
601
675
  config,
602
676
  changeStream,
603
- callback
677
+ callback,
678
+ started: 0,
679
+ delivered: 0
604
680
  };
605
681
  this.subscriptions.set(subscriptionId, subscription);
606
- this.fetchAndNotifyOne(subscriptionId, config, callback);
682
+ this.fetchAndNotifyOne(subscriptionId, subscription);
607
683
  changeStream.on("change", async (change) => {
608
684
  if (change.operationType === "delete") {
609
- if (callback) callback(null);
610
- } else await this.fetchAndNotifyOne(subscriptionId, config, callback);
685
+ const canDeliver = this.beginDelivery(subscriptionId, subscription);
686
+ if (callback && canDeliver()) callback(null);
687
+ } else await this.fetchAndNotifyOne(subscriptionId, subscription);
611
688
  });
612
689
  changeStream.on("error", (error) => {
613
690
  logger.error(`Change stream error for subscription ${subscriptionId}`, { error });
@@ -617,16 +694,21 @@ var MongoRealtimeService = class {
617
694
  const subscription = {
618
695
  type: "single",
619
696
  config,
620
- callback
697
+ callback,
698
+ started: 0,
699
+ delivered: 0
621
700
  };
622
701
  this.subscriptions.set(subscriptionId, subscription);
623
- this.fetchAndNotifyOne(subscriptionId, config, callback);
702
+ this.fetchAndNotifyOne(subscriptionId, subscription);
624
703
  }
625
704
  }
626
705
  /**
627
706
  * Fetch row and notify callback
628
707
  */
629
- async fetchAndNotifyOne(subscriptionId, config, callback) {
708
+ async fetchAndNotifyOne(subscriptionId, subscription) {
709
+ const config = subscription.config;
710
+ const callback = subscription.callback;
711
+ const canDeliver = this.beginDelivery(subscriptionId, subscription);
630
712
  try {
631
713
  const registryCollection = this.driver?.registry?.getCollectionByPath(config.path);
632
714
  const row = await (await this.scopedDriver(config.authContext)).fetchOne({
@@ -634,7 +716,7 @@ var MongoRealtimeService = class {
634
716
  id: config.id,
635
717
  collection: registryCollection
636
718
  });
637
- if (callback) callback(row || null);
719
+ if (callback && canDeliver()) callback(row || null);
638
720
  } catch (error) {
639
721
  logger.error(`Error fetching row for subscription ${subscriptionId}`, { error });
640
722
  }
@@ -656,11 +738,11 @@ var MongoRealtimeService = class {
656
738
  async notifyUpdate(path, id, row, _databaseId) {
657
739
  for (const [subscriptionId, subscription] of this.subscriptions) if (subscription.type === "single") {
658
740
  const config = subscription.config;
659
- if (config.path === path && config.id.toString() === id) if (row === null) subscription.callback?.(null);
660
- else await this.fetchAndNotifyOne(subscriptionId, config, subscription.callback);
741
+ if (config.path === path && config.id.toString() === id) if (row === null) {
742
+ if (this.beginDelivery(subscriptionId, subscription)()) subscription.callback?.(null);
743
+ } else await this.fetchAndNotifyOne(subscriptionId, subscription);
661
744
  } else if (subscription.type === "collection") {
662
- const config = subscription.config;
663
- if (config.path === path) await this.fetchAndNotifyCollection(subscriptionId, config, subscription.callback);
745
+ if (subscription.config.path === path) await this.fetchAndNotifyCollection(subscriptionId, subscription);
664
746
  }
665
747
  }
666
748
  /**
@@ -732,11 +814,14 @@ var MongoRealtimeService = class {
732
814
  clientId,
733
815
  path: message.payload?.path,
734
816
  filter: message.payload?.filter,
817
+ logical: message.payload?.logical,
818
+ offset: message.payload?.offset,
735
819
  orderBy: message.payload?.orderBy,
736
820
  order: message.payload?.order,
737
821
  limit: boundedLimit,
738
822
  startAfter: message.payload?.startAfter,
739
823
  searchString: message.payload?.searchString,
824
+ searchExplain: message.payload?.searchExplain,
740
825
  authContext
741
826
  }, (rows) => {
742
827
  ws.send(JSON.stringify({
@@ -1252,7 +1337,7 @@ var MongoDriver = class {
1252
1337
  * what every re-fetch reads — the wrapper used to stamp the field on the
1253
1338
  * `Subscription` object instead, and nothing has ever read that one.
1254
1339
  */
1255
- listenCollection({ path, collection, filter, limit, startAfter, orderBy, searchString, order, onUpdate, onError }, authContext) {
1340
+ listenCollection({ onUpdate, onError, collection, vectorSearch, ...query }, authContext) {
1256
1341
  const subscriptionId = this.generateSubscriptionId();
1257
1342
  const callback = (rows) => {
1258
1343
  try {
@@ -1264,13 +1349,7 @@ var MongoDriver = class {
1264
1349
  };
1265
1350
  this.realtimeService.subscribeToCollection(subscriptionId, {
1266
1351
  clientId: "driver",
1267
- path,
1268
- filter,
1269
- orderBy,
1270
- order,
1271
- limit,
1272
- startAfter,
1273
- searchString,
1352
+ ...query,
1274
1353
  authContext
1275
1354
  }, callback);
1276
1355
  return () => {
@@ -2080,7 +2159,12 @@ var MongoUserService = class {
2080
2159
  createdAt: now,
2081
2160
  updatedAt: now
2082
2161
  };
2083
- await this.collection.insertOne(doc);
2162
+ try {
2163
+ await this.collection.insertOne(doc);
2164
+ } catch (error) {
2165
+ if (error?.code === 11e3) throw ApiError.conflict("Email already registered", "EMAIL_EXISTS");
2166
+ throw error;
2167
+ }
2084
2168
  return toUser(doc);
2085
2169
  }
2086
2170
  async getUserById(id) {
@@ -2655,7 +2739,7 @@ var MongoAuthRepository = class {
2655
2739
  await this.tokenRepository.markMagicLinkTokenUsed(tokenHash);
2656
2740
  }
2657
2741
  async createMfaFactor(uid, factorType, secretEncrypted, friendlyName) {
2658
- throw new Error("MFA is not implemented for MongoDB");
2742
+ throw new ApiError(501, "MFA_NOT_SUPPORTED", "Multi-factor authentication is not implemented for the MongoDB backend, so a factor cannot be stored. Use a Postgres data source for accounts that need a second factor.");
2659
2743
  }
2660
2744
  async getMfaFactors(uid) {
2661
2745
  return [];
@@ -2664,22 +2748,22 @@ var MongoAuthRepository = class {
2664
2748
  return null;
2665
2749
  }
2666
2750
  async verifyMfaFactor(factorId) {
2667
- throw new Error("MFA is not implemented for MongoDB");
2751
+ throw new ApiError(501, "MFA_NOT_SUPPORTED", "Multi-factor authentication is not implemented for the MongoDB backend, so a factor's verification cannot be stored. Use a Postgres data source for accounts that need a second factor.");
2668
2752
  }
2669
2753
  async deleteMfaFactor(factorId, uid) {
2670
- throw new Error("MFA is not implemented for MongoDB");
2754
+ throw new ApiError(501, "MFA_NOT_SUPPORTED", "Multi-factor authentication is not implemented for the MongoDB backend, so a factor cannot be stored. Use a Postgres data source for accounts that need a second factor.");
2671
2755
  }
2672
2756
  async createMfaChallenge(factorId, ipAddress) {
2673
- throw new Error("MFA is not implemented for MongoDB");
2757
+ throw new ApiError(501, "MFA_NOT_SUPPORTED", "Multi-factor authentication is not implemented for the MongoDB backend, so a challenge cannot be stored. Use a Postgres data source for accounts that need a second factor.");
2674
2758
  }
2675
2759
  async getMfaChallengeById(challengeId) {
2676
2760
  return null;
2677
2761
  }
2678
2762
  async verifyMfaChallenge(challengeId) {
2679
- throw new Error("MFA is not implemented for MongoDB");
2763
+ throw new ApiError(501, "MFA_NOT_SUPPORTED", "Multi-factor authentication is not implemented for the MongoDB backend, so a challenge's verification cannot be stored. Use a Postgres data source for accounts that need a second factor.");
2680
2764
  }
2681
2765
  async createRecoveryCodes(uid, codeHashes) {
2682
- throw new Error("MFA is not implemented for MongoDB");
2766
+ throw new ApiError(501, "MFA_NOT_SUPPORTED", "Multi-factor authentication is not implemented for the MongoDB backend, so recovery codes cannot be stored. Use a Postgres data source for accounts that need a second factor.");
2683
2767
  }
2684
2768
  async useRecoveryCode(uid, codeHash) {
2685
2769
  return false;
@@ -2799,7 +2883,7 @@ function createMongoBootstrapper(mongoConfig) {
2799
2883
  },
2800
2884
  mountRoutes() {},
2801
2885
  async initializeWebsockets(server, realtimeService, driver, config, authAdapter) {
2802
- const { createMongoWebSocket } = await import("./websocket-Bs54-gR-.js");
2886
+ const { createMongoWebSocket } = await import("./websocket-Do3I42Uc.js");
2803
2887
  createMongoWebSocket(server, realtimeService, driver, config, cachedAdmin, authAdapter);
2804
2888
  }
2805
2889
  };