@powersync/service-module-mongodb-storage 0.10.4 → 0.12.0

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 (32) hide show
  1. package/CHANGELOG.md +65 -0
  2. package/LICENSE +3 -3
  3. package/dist/storage/implementation/MongoBucketBatch.d.ts +21 -2
  4. package/dist/storage/implementation/MongoBucketBatch.js +66 -7
  5. package/dist/storage/implementation/MongoBucketBatch.js.map +1 -1
  6. package/dist/storage/implementation/MongoCompactor.d.ts +7 -0
  7. package/dist/storage/implementation/MongoCompactor.js +122 -44
  8. package/dist/storage/implementation/MongoCompactor.js.map +1 -1
  9. package/dist/storage/implementation/MongoParameterCompactor.d.ts +17 -0
  10. package/dist/storage/implementation/MongoParameterCompactor.js +92 -0
  11. package/dist/storage/implementation/MongoParameterCompactor.js.map +1 -0
  12. package/dist/storage/implementation/MongoSyncBucketStorage.d.ts +14 -4
  13. package/dist/storage/implementation/MongoSyncBucketStorage.js +229 -115
  14. package/dist/storage/implementation/MongoSyncBucketStorage.js.map +1 -1
  15. package/dist/storage/implementation/PersistedBatch.d.ts +1 -0
  16. package/dist/storage/implementation/PersistedBatch.js +12 -5
  17. package/dist/storage/implementation/PersistedBatch.js.map +1 -1
  18. package/dist/storage/implementation/models.d.ts +20 -0
  19. package/dist/storage/implementation/util.d.ts +2 -1
  20. package/dist/storage/implementation/util.js +13 -0
  21. package/dist/storage/implementation/util.js.map +1 -1
  22. package/package.json +9 -9
  23. package/src/storage/implementation/MongoBucketBatch.ts +82 -8
  24. package/src/storage/implementation/MongoCompactor.ts +147 -47
  25. package/src/storage/implementation/MongoParameterCompactor.ts +105 -0
  26. package/src/storage/implementation/MongoSyncBucketStorage.ts +257 -157
  27. package/src/storage/implementation/PersistedBatch.ts +13 -5
  28. package/src/storage/implementation/models.ts +21 -0
  29. package/src/storage/implementation/util.ts +14 -1
  30. package/test/src/__snapshots__/storage_sync.test.ts.snap +319 -11
  31. package/test/src/storage_compacting.test.ts +2 -0
  32. package/tsconfig.tsbuildinfo +1 -1
@@ -51,16 +51,17 @@ var __disposeResources = (this && this.__disposeResources) || (function (Suppres
51
51
  return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
52
52
  });
53
53
  import * as lib_mongo from '@powersync/lib-service-mongodb';
54
- import { BaseObserver, ErrorCode, logger, ReplicationAbortedError, ServiceAssertionError, ServiceError } from '@powersync/lib-services-framework';
55
- import { BroadcastIterable, CHECKPOINT_INVALIDATE_ALL, deserializeParameterLookup, internalToExternalOpId, storage } from '@powersync/service-core';
54
+ import { BaseObserver, logger, ReplicationAbortedError, ServiceAssertionError } from '@powersync/lib-services-framework';
55
+ import { addPartialChecksums, BroadcastIterable, CHECKPOINT_INVALIDATE_ALL, deserializeParameterLookup, internalToExternalOpId, maxLsn, storage } from '@powersync/service-core';
56
56
  import { JSONBig } from '@powersync/service-jsonbig';
57
57
  import * as bson from 'bson';
58
58
  import { LRUCache } from 'lru-cache';
59
59
  import * as timers from 'timers/promises';
60
60
  import { MongoBucketBatch } from './MongoBucketBatch.js';
61
61
  import { MongoCompactor } from './MongoCompactor.js';
62
+ import { MongoParameterCompactor } from './MongoParameterCompactor.js';
62
63
  import { MongoWriteCheckpointAPI } from './MongoWriteCheckpointAPI.js';
63
- import { idPrefixFilter, mapOpEntry, readSingleBatch } from './util.js';
64
+ import { idPrefixFilter, mapOpEntry, readSingleBatch, setSessionSnapshotTime } from './util.js';
64
65
  export class MongoSyncBucketStorage extends BaseObserver {
65
66
  factory;
66
67
  group_id;
@@ -114,26 +115,42 @@ export class MongoSyncBucketStorage extends BaseObserver {
114
115
  return this.parsedSyncRulesCache.parsed;
115
116
  }
116
117
  async getCheckpoint() {
117
- const doc = await this.db.sync_rules.findOne({ _id: this.group_id }, {
118
- projection: { last_checkpoint: 1, last_checkpoint_lsn: 1, snapshot_done: 1 }
118
+ return (await this.getCheckpointInternal()) ?? new EmptyReplicationCheckpoint();
119
+ }
120
+ async getCheckpointInternal() {
121
+ return await this.db.client.withSession({ snapshot: true }, async (session) => {
122
+ const doc = await this.db.sync_rules.findOne({ _id: this.group_id }, {
123
+ session,
124
+ projection: { _id: 1, state: 1, last_checkpoint: 1, last_checkpoint_lsn: 1, snapshot_done: 1 }
125
+ });
126
+ if (!doc?.snapshot_done || !['ACTIVE', 'ERRORED'].includes(doc.state)) {
127
+ // Sync rules not active - return null
128
+ return null;
129
+ }
130
+ // Specifically using operationTime instead of clusterTime
131
+ // There are 3 fields in the response:
132
+ // 1. operationTime, not exposed for snapshot sessions (used for causal consistency)
133
+ // 2. clusterTime (used for connection management)
134
+ // 3. atClusterTime, which is session.snapshotTime
135
+ // We use atClusterTime, to match the driver's internal snapshot handling.
136
+ // There are cases where clusterTime > operationTime and atClusterTime,
137
+ // which could cause snapshot queries using this as the snapshotTime to timeout.
138
+ // This was specifically observed on MongoDB 6.0 and 7.0.
139
+ const snapshotTime = session.snapshotTime;
140
+ if (snapshotTime == null) {
141
+ throw new ServiceAssertionError('Missing snapshotTime in getCheckpoint()');
142
+ }
143
+ return new MongoReplicationCheckpoint(this,
144
+ // null/0n is a valid checkpoint in some cases, for example if the initial snapshot was empty
145
+ doc.last_checkpoint ?? 0n, doc.last_checkpoint_lsn ?? null, snapshotTime);
119
146
  });
120
- if (!doc?.snapshot_done) {
121
- return {
122
- checkpoint: 0n,
123
- lsn: null
124
- };
125
- }
126
- return {
127
- checkpoint: doc?.last_checkpoint ?? 0n,
128
- lsn: doc?.last_checkpoint_lsn ?? null
129
- };
130
147
  }
131
148
  async startBatch(options, callback) {
132
149
  const env_1 = { stack: [], error: void 0, hasError: false };
133
150
  try {
134
151
  const doc = await this.db.sync_rules.findOne({
135
152
  _id: this.group_id
136
- }, { projection: { last_checkpoint_lsn: 1, no_checkpoint_before: 1, keepalive_op: 1 } });
153
+ }, { projection: { last_checkpoint_lsn: 1, no_checkpoint_before: 1, keepalive_op: 1, snapshot_lsn: 1 } });
137
154
  const checkpoint_lsn = doc?.last_checkpoint_lsn ?? null;
138
155
  const batch = __addDisposableResource(env_1, new MongoBucketBatch({
139
156
  logger: options.logger,
@@ -142,6 +159,7 @@ export class MongoSyncBucketStorage extends BaseObserver {
142
159
  groupId: this.group_id,
143
160
  slotName: this.slot_name,
144
161
  lastCheckpointLsn: checkpoint_lsn,
162
+ resumeFromLsn: maxLsn(checkpoint_lsn, doc?.snapshot_lsn),
145
163
  noCheckpointBeforeLsn: doc?.no_checkpoint_before ?? options.zeroLSN,
146
164
  keepaliveOp: doc?.keepalive_op ? BigInt(doc.keepalive_op) : null,
147
165
  storeCurrentData: options.storeCurrentData,
@@ -170,8 +188,8 @@ export class MongoSyncBucketStorage extends BaseObserver {
170
188
  }
171
189
  async resolveTable(options) {
172
190
  const { group_id, connection_id, connection_tag, entity_descriptor } = options;
173
- const { schema, name: table, objectId, replicationColumns } = entity_descriptor;
174
- const columns = replicationColumns.map((column) => ({
191
+ const { schema, name, objectId, replicaIdColumns } = entity_descriptor;
192
+ const normalizedReplicaIdColumns = replicaIdColumns.map((column) => ({
175
193
  name: column.name,
176
194
  type: column.type,
177
195
  type_oid: column.typeId
@@ -183,8 +201,8 @@ export class MongoSyncBucketStorage extends BaseObserver {
183
201
  group_id: group_id,
184
202
  connection_id: connection_id,
185
203
  schema_name: schema,
186
- table_name: table,
187
- replica_id_columns2: columns
204
+ table_name: name,
205
+ replica_id_columns2: normalizedReplicaIdColumns
188
206
  };
189
207
  if (objectId != null) {
190
208
  filter.relation_id = objectId;
@@ -197,15 +215,23 @@ export class MongoSyncBucketStorage extends BaseObserver {
197
215
  connection_id: connection_id,
198
216
  relation_id: objectId,
199
217
  schema_name: schema,
200
- table_name: table,
218
+ table_name: name,
201
219
  replica_id_columns: null,
202
- replica_id_columns2: columns,
220
+ replica_id_columns2: normalizedReplicaIdColumns,
203
221
  snapshot_done: false,
204
222
  snapshot_status: undefined
205
223
  };
206
224
  await col.insertOne(doc, { session });
207
225
  }
208
- const sourceTable = new storage.SourceTable(doc._id, connection_tag, objectId, schema, table, replicationColumns, doc.snapshot_done ?? true);
226
+ const sourceTable = new storage.SourceTable({
227
+ id: doc._id,
228
+ connectionTag: connection_tag,
229
+ objectId: objectId,
230
+ schema: schema,
231
+ name: name,
232
+ replicaIdColumns: replicaIdColumns,
233
+ snapshotComplete: doc.snapshot_done ?? true
234
+ });
209
235
  sourceTable.syncEvent = options.sync_rules.tableTriggersEvent(sourceTable);
210
236
  sourceTable.syncData = options.sync_rules.tableSyncsData(sourceTable);
211
237
  sourceTable.syncParameters = options.sync_rules.tableSyncsParameters(sourceTable);
@@ -219,7 +245,7 @@ export class MongoSyncBucketStorage extends BaseObserver {
219
245
  };
220
246
  let dropTables = [];
221
247
  // Detect tables that are either renamed, or have different replica_id_columns
222
- let truncateFilter = [{ schema_name: schema, table_name: table }];
248
+ let truncateFilter = [{ schema_name: schema, table_name: name }];
223
249
  if (objectId != null) {
224
250
  // Only detect renames if the source uses relation ids.
225
251
  truncateFilter.push({ relation_id: objectId });
@@ -232,7 +258,15 @@ export class MongoSyncBucketStorage extends BaseObserver {
232
258
  $or: truncateFilter
233
259
  }, { session })
234
260
  .toArray();
235
- dropTables = truncate.map((doc) => new storage.SourceTable(doc._id, connection_tag, doc.relation_id, doc.schema_name, doc.table_name, doc.replica_id_columns2?.map((c) => ({ name: c.name, typeOid: c.type_oid, type: c.type })) ?? [], doc.snapshot_done ?? true));
261
+ dropTables = truncate.map((doc) => new storage.SourceTable({
262
+ id: doc._id,
263
+ connectionTag: connection_tag,
264
+ objectId: doc.relation_id,
265
+ schema: doc.schema_name,
266
+ name: doc.table_name,
267
+ replicaIdColumns: doc.replica_id_columns2?.map((c) => ({ name: c.name, typeOid: c.type_oid, type: c.type })) ?? [],
268
+ snapshotComplete: doc.snapshot_done ?? true
269
+ }));
236
270
  result = {
237
271
  table: sourceTable,
238
272
  dropTables: dropTables
@@ -241,37 +275,63 @@ export class MongoSyncBucketStorage extends BaseObserver {
241
275
  return result;
242
276
  }
243
277
  async getParameterSets(checkpoint, lookups) {
244
- const lookupFilter = lookups.map((lookup) => {
245
- return storage.serializeLookup(lookup);
246
- });
247
- const rows = await this.db.bucket_parameters
248
- .aggregate([
249
- {
250
- $match: {
251
- 'key.g': this.group_id,
252
- lookup: { $in: lookupFilter },
253
- _id: { $lte: checkpoint }
254
- }
255
- },
256
- {
257
- $sort: {
258
- _id: -1
259
- }
260
- },
261
- {
262
- $group: {
263
- _id: { key: '$key', lookup: '$lookup' },
264
- bucket_parameters: {
265
- $first: '$bucket_parameters'
278
+ return this.db.client.withSession({ snapshot: true }, async (session) => {
279
+ // Set the session's snapshot time to the checkpoint's snapshot time.
280
+ // An alternative would be to create the session when the checkpoint is created, but managing
281
+ // the session lifetime would become more complex.
282
+ // Starting and ending sessions are cheap (synchronous when no transactions are used),
283
+ // so this should be fine.
284
+ // This is a roundabout way of setting {readConcern: {atClusterTime: clusterTime}}, since
285
+ // that is not exposed directly by the driver.
286
+ // Future versions of the driver may change the snapshotTime behavior, so we need tests to
287
+ // validate that this works as expected. We test this in the compacting tests.
288
+ setSessionSnapshotTime(session, checkpoint.snapshotTime);
289
+ const lookupFilter = lookups.map((lookup) => {
290
+ return storage.serializeLookup(lookup);
291
+ });
292
+ // This query does not use indexes super efficiently, apart from the lookup filter.
293
+ // From some experimentation I could do individual lookups more efficient using an index
294
+ // on {'key.g': 1, lookup: 1, 'key.t': 1, 'key.k': 1, _id: -1},
295
+ // but could not do the same using $group.
296
+ // For now, just rely on compacting to remove extraneous data.
297
+ // For a description of the data format, see the `/docs/parameters-lookups.md` file.
298
+ const rows = await this.db.bucket_parameters
299
+ .aggregate([
300
+ {
301
+ $match: {
302
+ 'key.g': this.group_id,
303
+ lookup: { $in: lookupFilter },
304
+ _id: { $lte: checkpoint.checkpoint }
305
+ }
306
+ },
307
+ {
308
+ $sort: {
309
+ _id: -1
310
+ }
311
+ },
312
+ {
313
+ $group: {
314
+ _id: { key: '$key', lookup: '$lookup' },
315
+ bucket_parameters: {
316
+ $first: '$bucket_parameters'
317
+ }
266
318
  }
267
319
  }
268
- }
269
- ])
270
- .toArray();
271
- const groupedParameters = rows.map((row) => {
272
- return row.bucket_parameters;
320
+ ], {
321
+ session,
322
+ readConcern: 'snapshot',
323
+ // Limit the time for the operation to complete, to avoid getting connection timeouts
324
+ maxTimeMS: lib_mongo.db.MONGO_OPERATION_TIMEOUT_MS
325
+ })
326
+ .toArray()
327
+ .catch((e) => {
328
+ throw lib_mongo.mapQueryError(e, 'while evaluating parameter queries');
329
+ });
330
+ const groupedParameters = rows.map((row) => {
331
+ return row.bucket_parameters;
332
+ });
333
+ return groupedParameters.flat();
273
334
  });
274
- return groupedParameters.flat();
275
335
  }
276
336
  async *getBucketDataBatch(checkpoint, dataBuckets, options) {
277
337
  if (dataBuckets.size == 0) {
@@ -399,23 +459,65 @@ export class MongoSyncBucketStorage extends BaseObserver {
399
459
  async getChecksums(checkpoint, buckets) {
400
460
  return this.checksumCache.getChecksumMap(checkpoint, buckets);
401
461
  }
462
+ clearChecksumCache() {
463
+ this.checksumCache.clear();
464
+ }
402
465
  async getChecksumsInternal(batch) {
403
466
  if (batch.length == 0) {
404
467
  return new Map();
405
468
  }
469
+ const preFilters = [];
470
+ for (let request of batch) {
471
+ if (request.start == null) {
472
+ preFilters.push({
473
+ _id: {
474
+ g: this.group_id,
475
+ b: request.bucket
476
+ },
477
+ 'compacted_state.op_id': { $exists: true, $lte: request.end }
478
+ });
479
+ }
480
+ }
481
+ const preStates = new Map();
482
+ if (preFilters.length > 0) {
483
+ // For un-cached bucket checksums, attempt to use the compacted state first.
484
+ const states = await this.db.bucket_state
485
+ .find({
486
+ $or: preFilters
487
+ })
488
+ .toArray();
489
+ for (let state of states) {
490
+ const compactedState = state.compacted_state;
491
+ preStates.set(state._id.b, {
492
+ opId: compactedState.op_id,
493
+ checksum: {
494
+ bucket: state._id.b,
495
+ checksum: Number(compactedState.checksum),
496
+ count: compactedState.count
497
+ }
498
+ });
499
+ }
500
+ }
406
501
  const filters = [];
407
502
  for (let request of batch) {
503
+ let start = request.start;
504
+ if (start == null) {
505
+ const preState = preStates.get(request.bucket);
506
+ if (preState != null) {
507
+ start = preState.opId;
508
+ }
509
+ }
408
510
  filters.push({
409
511
  _id: {
410
512
  $gt: {
411
513
  g: this.group_id,
412
514
  b: request.bucket,
413
- o: request.start ? BigInt(request.start) : new bson.MinKey()
515
+ o: start ?? new bson.MinKey()
414
516
  },
415
517
  $lte: {
416
518
  g: this.group_id,
417
519
  b: request.bucket,
418
- o: BigInt(request.end)
520
+ o: request.end
419
521
  }
420
522
  }
421
523
  });
@@ -442,22 +544,40 @@ export class MongoSyncBucketStorage extends BaseObserver {
442
544
  }
443
545
  }
444
546
  }
445
- ], { session: undefined, readConcern: 'snapshot', maxTimeMS: lib_mongo.db.MONGO_OPERATION_TIMEOUT_MS })
547
+ ], { session: undefined, readConcern: 'snapshot', maxTimeMS: lib_mongo.db.MONGO_CHECKSUM_TIMEOUT_MS })
446
548
  .toArray()
447
549
  .catch((e) => {
448
550
  throw lib_mongo.mapQueryError(e, 'while reading checksums');
449
551
  });
450
- return new Map(aggregate.map((doc) => {
552
+ const partialChecksums = new Map(aggregate.map((doc) => {
553
+ const partialChecksum = Number(BigInt(doc.checksum_total) & 0xffffffffn) & 0xffffffff;
554
+ const bucket = doc._id;
451
555
  return [
452
- doc._id,
453
- {
454
- bucket: doc._id,
455
- partialCount: doc.count,
456
- partialChecksum: Number(BigInt(doc.checksum_total) & 0xffffffffn) & 0xffffffff,
457
- isFullChecksum: doc.has_clear_op == 1
458
- }
556
+ bucket,
557
+ doc.has_clear_op == 1
558
+ ? {
559
+ // full checksum - replaces any previous one
560
+ bucket,
561
+ checksum: partialChecksum,
562
+ count: doc.count
563
+ }
564
+ : {
565
+ // partial checksum - is added to a previous one
566
+ bucket,
567
+ partialCount: doc.count,
568
+ partialChecksum
569
+ }
459
570
  ];
460
571
  }));
572
+ return new Map(batch.map((request) => {
573
+ const bucket = request.bucket;
574
+ // Could be null if this is either (1) a partial request, or (2) no compacted checksum was available
575
+ const preState = preStates.get(bucket);
576
+ // Could be null if we got no data
577
+ const partialChecksum = partialChecksums.get(bucket);
578
+ const merged = addPartialChecksums(bucket, preState?.checksum ?? null, partialChecksum ?? null);
579
+ return [bucket, merged];
580
+ }));
461
581
  }
462
582
  async terminate(options) {
463
583
  // Default is to clear the storage except when explicitly requested not to.
@@ -510,7 +630,6 @@ export class MongoSyncBucketStorage extends BaseObserver {
510
630
  if (lib_mongo.isMongoServerError(e) && e.codeName == 'MaxTimeMSExpired') {
511
631
  logger.info(`${this.slot_name} Cleared batch of data in ${lib_mongo.db.MONGO_CLEAR_OPERATION_TIMEOUT_MS}ms, continuing...`);
512
632
  await timers.setTimeout(lib_mongo.db.MONGO_CLEAR_OPERATION_TIMEOUT_MS / 5);
513
- continue;
514
633
  }
515
634
  else {
516
635
  throw e;
@@ -551,31 +670,6 @@ export class MongoSyncBucketStorage extends BaseObserver {
551
670
  group_id: this.group_id
552
671
  }, { maxTimeMS: lib_mongo.db.MONGO_CLEAR_OPERATION_TIMEOUT_MS });
553
672
  }
554
- async autoActivate() {
555
- await this.db.client.withSession(async (session) => {
556
- await session.withTransaction(async () => {
557
- const doc = await this.db.sync_rules.findOne({ _id: this.group_id }, { session });
558
- if (doc && doc.state == 'PROCESSING') {
559
- await this.db.sync_rules.updateOne({
560
- _id: this.group_id
561
- }, {
562
- $set: {
563
- state: storage.SyncRuleState.ACTIVE
564
- }
565
- }, { session });
566
- await this.db.sync_rules.updateMany({
567
- _id: { $ne: this.group_id },
568
- state: { $in: [storage.SyncRuleState.ACTIVE, storage.SyncRuleState.ERRORED] }
569
- }, {
570
- $set: {
571
- state: storage.SyncRuleState.STOP
572
- }
573
- }, { session });
574
- await this.db.notifyCheckpoint();
575
- }
576
- });
577
- });
578
- }
579
673
  async reportError(e) {
580
674
  const message = String(e.message ?? 'Replication failure');
581
675
  await this.db.sync_rules.updateOne({
@@ -588,13 +682,28 @@ export class MongoSyncBucketStorage extends BaseObserver {
588
682
  await this.db.notifyCheckpoint();
589
683
  }
590
684
  async compact(options) {
591
- return new MongoCompactor(this.db, this.group_id, options).compact();
685
+ let maxOpId = options?.maxOpId;
686
+ if (maxOpId == null) {
687
+ const checkpoint = await this.getCheckpointInternal();
688
+ maxOpId = checkpoint?.checkpoint ?? undefined;
689
+ }
690
+ await new MongoCompactor(this.db, this.group_id, { ...options, maxOpId }).compact();
691
+ if (maxOpId != null && options?.compactParameterData) {
692
+ await new MongoParameterCompactor(this.db, this.group_id, maxOpId, options).compact();
693
+ }
592
694
  }
593
- makeActiveCheckpoint(doc) {
594
- return {
595
- checkpoint: doc?.last_checkpoint ?? 0n,
596
- lsn: doc?.last_checkpoint_lsn ?? null
597
- };
695
+ async populatePersistentChecksumCache(options) {
696
+ const start = Date.now();
697
+ // We do a minimal compact, primarily to populate the checksum cache
698
+ await this.compact({
699
+ ...options,
700
+ // Skip parameter data
701
+ compactParameterData: false,
702
+ // Don't track updates for MOVE compacting
703
+ memoryLimitMB: 0
704
+ });
705
+ const duration = Date.now() - start;
706
+ logger.info(`Populated persistent checksum cache in ${(duration / 1000).toFixed(1)}s`);
598
707
  }
599
708
  /**
600
709
  * Instance-wide watch on the latest available checkpoint (op_id + lsn).
@@ -611,29 +720,12 @@ export class MongoSyncBucketStorage extends BaseObserver {
611
720
  if (signal.aborted) {
612
721
  break;
613
722
  }
614
- const doc = await this.db.sync_rules.findOne({
615
- _id: this.group_id,
616
- state: { $in: [storage.SyncRuleState.ACTIVE, storage.SyncRuleState.ERRORED] }
617
- }, {
618
- limit: 1,
619
- projection: {
620
- _id: 1,
621
- state: 1,
622
- last_checkpoint: 1,
623
- last_checkpoint_lsn: 1
624
- }
625
- });
626
- if (doc == null) {
627
- // Sync rules not present or not active.
628
- // Abort the connections - clients will have to retry later.
629
- throw new ServiceError(ErrorCode.PSYNC_S2302, 'No active sync rules available');
630
- }
631
- else if (doc.state != storage.SyncRuleState.ACTIVE && doc.state != storage.SyncRuleState.ERRORED) {
723
+ const op = await this.getCheckpointInternal();
724
+ if (op == null) {
632
725
  // Sync rules have changed - abort and restart.
633
726
  // We do a soft close of the stream here - no error
634
727
  break;
635
728
  }
636
- const op = this.makeActiveCheckpoint(doc);
637
729
  // Check for LSN / checkpoint changes - ignore other metadata changes
638
730
  if (lastOp == null || op.lsn != lastOp.lsn || op.checkpoint != lastOp.checkpoint) {
639
731
  lastOp = op;
@@ -855,4 +947,26 @@ export class MongoSyncBucketStorage extends BaseObserver {
855
947
  };
856
948
  }
857
949
  }
950
+ class MongoReplicationCheckpoint {
951
+ storage;
952
+ checkpoint;
953
+ lsn;
954
+ snapshotTime;
955
+ constructor(storage, checkpoint, lsn, snapshotTime) {
956
+ this.storage = storage;
957
+ this.checkpoint = checkpoint;
958
+ this.lsn = lsn;
959
+ this.snapshotTime = snapshotTime;
960
+ }
961
+ async getParameterSets(lookups) {
962
+ return this.storage.getParameterSets(this, lookups);
963
+ }
964
+ }
965
+ class EmptyReplicationCheckpoint {
966
+ checkpoint = 0n;
967
+ lsn = null;
968
+ async getParameterSets(lookups) {
969
+ return [];
970
+ }
971
+ }
858
972
  //# sourceMappingURL=MongoSyncBucketStorage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MongoSyncBucketStorage.js","sourceRoot":"","sources":["../../../src/storage/implementation/MongoSyncBucketStorage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MongoSyncBucketStorage.js","sourceRoot":"","sources":["../../../src/storage/implementation/MongoSyncBucketStorage.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,KAAK,SAAS,MAAM,gCAAgC,CAAC;AAE5D,OAAO,EACL,YAAY,EACZ,MAAM,EACN,uBAAuB,EACvB,qBAAqB,EACtB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EAEjB,yBAAyB,EAGzB,0BAA0B,EAG1B,sBAAsB,EACtB,MAAM,EAIN,OAAO,EAGR,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAErD,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,MAAM,MAAM,iBAAiB,CAAC;AAI1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAEhG,MAAM,OAAO,sBACX,SAAQ,YAAoD;IAc1C;IACA;IACC;IACD;IAdD,EAAE,CAAiB;IAC5B,aAAa,GAAG,IAAI,OAAO,CAAC,aAAa,CAAC;QAChD,cAAc,EAAE,CAAC,KAAK,EAAE,EAAE;YACxB,OAAO,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;QAC1C,CAAC;KACF,CAAC,CAAC;IAEK,oBAAoB,CAA+E;IACnG,kBAAkB,CAA0B;IAEpD,YACkB,OAA2B,EAC3B,QAAgB,EACf,UAA6C,EAC9C,SAAiB,EACjC,sBAAmD,OAAO,CAAC,mBAAmB,CAAC,OAAO;QAEtF,KAAK,EAAE,CAAC;QANQ,YAAO,GAAP,OAAO,CAAoB;QAC3B,aAAQ,GAAR,QAAQ,CAAQ;QACf,eAAU,GAAV,UAAU,CAAmC;QAC9C,cAAS,GAAT,SAAS,CAAQ;QAIjC,IAAI,CAAC,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC;QACrB,IAAI,CAAC,kBAAkB,GAAG,IAAI,uBAAuB,CAAC;YACpD,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,IAAI,EAAE,mBAAmB;YACzB,aAAa,EAAE,QAAQ;SACxB,CAAC,CAAC;IACL,CAAC;IAED,IAAI,mBAAmB;QACrB,OAAO,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,CAAC;IACrD,CAAC;IAED,sBAAsB,CAAC,IAAiC;QACtD,IAAI,CAAC,kBAAkB,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;IACvD,CAAC;IAED,4BAA4B,CAAC,UAAiD;QAC5E,OAAO,IAAI,CAAC,kBAAkB,CAAC,4BAA4B,CAAC,UAAU,CAAC,CAAC;IAC1E,CAAC;IAED,mBAAmB,CAAC,OAAsD;QACxE,OAAO,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,CAAC;YACjD,GAAG,OAAO;YACV,aAAa,EAAE,IAAI,CAAC,QAAQ;SAC7B,CAAC,CAAC;IACL,CAAC;IAED,kBAAkB,CAAC,OAAsC;QACvD,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC,oBAAoB,IAAI,EAAE,CAAC;QAC3E;;;WAGG;QACH,IAAI,CAAC,MAAM,IAAI,OAAO,CAAC,aAAa,IAAI,aAAa,EAAE,aAAa,EAAE,CAAC;YACrE,IAAI,CAAC,oBAAoB,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,OAAO,EAAE,CAAC;QAC9F,CAAC;QAED,OAAO,IAAI,CAAC,oBAAqB,CAAC,MAAM,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,aAAa;QACjB,OAAO,CAAC,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC,IAAI,IAAI,0BAA0B,EAAE,CAAC;IAClF,CAAC;IAED,KAAK,CAAC,qBAAqB;QACzB,OAAO,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;YAC5E,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAC1C,EAAE,GAAG,EAAE,IAAI,CAAC,QAAQ,EAAE,EACtB;gBACE,OAAO;gBACP,UAAU,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,eAAe,EAAE,CAAC,EAAE,mBAAmB,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE;aAC/F,CACF,CAAC;YACF,IAAI,CAAC,GAAG,EAAE,aAAa,IAAI,CAAC,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBACtE,sCAAsC;gBACtC,OAAO,IAAI,CAAC;YACd,CAAC;YAED,0DAA0D;YAC1D,sCAAsC;YACtC,oFAAoF;YACpF,kDAAkD;YAClD,kDAAkD;YAClD,0EAA0E;YAC1E,uEAAuE;YACvE,gFAAgF;YAChF,yDAAyD;YACzD,MAAM,YAAY,GAAI,OAAe,CAAC,YAA0C,CAAC;YACjF,IAAI,YAAY,IAAI,IAAI,EAAE,CAAC;gBACzB,MAAM,IAAI,qBAAqB,CAAC,yCAAyC,CAAC,CAAC;YAC7E,CAAC;YACD,OAAO,IAAI,0BAA0B,CACnC,IAAI;YACJ,6FAA6F;YAC7F,GAAG,CAAC,eAAe,IAAI,EAAE,EACzB,GAAG,CAAC,mBAAmB,IAAI,IAAI,EAC/B,YAAY,CACb,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,UAAU,CACd,OAAkC,EAClC,QAA8D;;;YAE9D,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAC1C;gBACE,GAAG,EAAE,IAAI,CAAC,QAAQ;aACnB,EACD,EAAE,UAAU,EAAE,EAAE,mBAAmB,EAAE,CAAC,EAAE,oBAAoB,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,EAAE,CACtG,CAAC;YACF,MAAM,cAAc,GAAG,GAAG,EAAE,mBAAmB,IAAI,IAAI,CAAC;YAExD,MAAY,KAAK,kCAAG,IAAI,gBAAgB,CAAC;gBACvC,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,EAAE,EAAE,IAAI,CAAC,EAAE;gBACX,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,UAAU;gBACrD,OAAO,EAAE,IAAI,CAAC,QAAQ;gBACtB,QAAQ,EAAE,IAAI,CAAC,SAAS;gBACxB,iBAAiB,EAAE,cAAc;gBACjC,aAAa,EAAE,MAAM,CAAC,cAAc,EAAE,GAAG,EAAE,YAAY,CAAC;gBACxD,qBAAqB,EAAE,GAAG,EAAE,oBAAoB,IAAI,OAAO,CAAC,OAAO;gBACnE,WAAW,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI;gBAChE,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;gBAC1C,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,IAAI,KAAK;gBACnD,qBAAqB,EAAE,OAAO,CAAC,qBAAqB;aACrD,CAAC,OAAA,CAAC;YACH,IAAI,CAAC,gBAAgB,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;YAExD,MAAM,QAAQ,CAAC,KAAK,CAAC,CAAC;YACtB,MAAM,KAAK,CAAC,KAAK,EAAE,CAAC;YACpB,IAAI,KAAK,CAAC,eAAe,IAAI,IAAI,EAAE,CAAC;gBAClC,OAAO,EAAE,UAAU,EAAE,KAAK,CAAC,eAAe,EAAE,CAAC;YAC/C,CAAC;iBAAM,CAAC;gBACN,OAAO,IAAI,CAAC;YACd,CAAC;;;;;;;;;;;KACF;IAED,KAAK,CAAC,YAAY,CAAC,OAAoC;QACrD,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,cAAc,EAAE,iBAAiB,EAAE,GAAG,OAAO,CAAC;QAE/E,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,gBAAgB,EAAE,GAAG,iBAAiB,CAAC;QAEvE,MAAM,0BAA0B,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YACnE,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,QAAQ,EAAE,MAAM,CAAC,MAAM;SACxB,CAAC,CAAC,CAAC;QACJ,IAAI,MAAM,GAAsC,IAAI,CAAC;QACrD,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;YACjD,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC;YAClC,IAAI,MAAM,GAAiC;gBACzC,QAAQ,EAAE,QAAQ;gBAClB,aAAa,EAAE,aAAa;gBAC5B,WAAW,EAAE,MAAM;gBACnB,UAAU,EAAE,IAAI;gBAChB,mBAAmB,EAAE,0BAA0B;aAChD,CAAC;YACF,IAAI,QAAQ,IAAI,IAAI,EAAE,CAAC;gBACrB,MAAM,CAAC,WAAW,GAAG,QAAQ,CAAC;YAChC,CAAC;YACD,IAAI,GAAG,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;YACjD,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;gBAChB,GAAG,GAAG;oBACJ,GAAG,EAAE,IAAI,IAAI,CAAC,QAAQ,EAAE;oBACxB,QAAQ,EAAE,QAAQ;oBAClB,aAAa,EAAE,aAAa;oBAC5B,WAAW,EAAE,QAAQ;oBACrB,WAAW,EAAE,MAAM;oBACnB,UAAU,EAAE,IAAI;oBAChB,kBAAkB,EAAE,IAAI;oBACxB,mBAAmB,EAAE,0BAA0B;oBAC/C,aAAa,EAAE,KAAK;oBACpB,eAAe,EAAE,SAAS;iBAC3B,CAAC;gBAEF,MAAM,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;YACxC,CAAC;YACD,MAAM,WAAW,GAAG,IAAI,OAAO,CAAC,WAAW,CAAC;gBAC1C,EAAE,EAAE,GAAG,CAAC,GAAG;gBACX,aAAa,EAAE,cAAc;gBAC7B,QAAQ,EAAE,QAAQ;gBAClB,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,IAAI;gBACV,gBAAgB,EAAE,gBAAgB;gBAClC,gBAAgB,EAAE,GAAG,CAAC,aAAa,IAAI,IAAI;aAC5C,CAAC,CAAC;YACH,WAAW,CAAC,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;YAC3E,WAAW,CAAC,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;YACtE,WAAW,CAAC,cAAc,GAAG,OAAO,CAAC,UAAU,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC;YAClF,WAAW,CAAC,cAAc;gBACxB,GAAG,CAAC,eAAe,IAAI,IAAI;oBACzB,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC;wBACE,OAAO,EAAE,GAAG,CAAC,eAAe,CAAC,QAAQ,EAAE,MAAM,IAAI,IAAI;wBACrD,mBAAmB,EAAE,GAAG,CAAC,eAAe,CAAC,qBAAqB;wBAC9D,eAAe,EAAE,GAAG,CAAC,eAAe,CAAC,gBAAgB;qBACtD,CAAC;YAER,IAAI,UAAU,GAA0B,EAAE,CAAC;YAC3C,8EAA8E;YAC9E,IAAI,cAAc,GAAG,CAAC,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,CAAU,CAAC;YAC1E,IAAI,QAAQ,IAAI,IAAI,EAAE,CAAC;gBACrB,uDAAuD;gBACvD,cAAc,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,CAAC;YACjD,CAAC;YACD,MAAM,QAAQ,GAAG,MAAM,GAAG;iBACvB,IAAI,CACH;gBACE,QAAQ,EAAE,QAAQ;gBAClB,aAAa,EAAE,aAAa;gBAC5B,GAAG,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE;gBACrB,GAAG,EAAE,cAAc;aACpB,EACD,EAAE,OAAO,EAAE,CACZ;iBACA,OAAO,EAAE,CAAC;YACb,UAAU,GAAG,QAAQ,CAAC,GAAG,CACvB,CAAC,GAAG,EAAE,EAAE,CACN,IAAI,OAAO,CAAC,WAAW,CAAC;gBACtB,EAAE,EAAE,GAAG,CAAC,GAAG;gBACX,aAAa,EAAE,cAAc;gBAC7B,QAAQ,EAAE,GAAG,CAAC,WAAW;gBACzB,MAAM,EAAE,GAAG,CAAC,WAAW;gBACvB,IAAI,EAAE,GAAG,CAAC,UAAU;gBACpB,gBAAgB,EACd,GAAG,CAAC,mBAAmB,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE;gBAClG,gBAAgB,EAAE,GAAG,CAAC,aAAa,IAAI,IAAI;aAC5C,CAAC,CACL,CAAC;YAEF,MAAM,GAAG;gBACP,KAAK,EAAE,WAAW;gBAClB,UAAU,EAAE,UAAU;aACvB,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,OAAO,MAAO,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,UAAsC,EAAE,OAA0B;QACvF,OAAO,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;YACtE,qEAAqE;YACrE,6FAA6F;YAC7F,kDAAkD;YAClD,sFAAsF;YACtF,0BAA0B;YAC1B,yFAAyF;YACzF,8CAA8C;YAC9C,0FAA0F;YAC1F,8EAA8E;YAC9E,sBAAsB,CAAC,OAAO,EAAE,UAAU,CAAC,YAAY,CAAC,CAAC;YACzD,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;gBAC1C,OAAO,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;YACzC,CAAC,CAAC,CAAC;YACH,mFAAmF;YACnF,wFAAwF;YACxF,+DAA+D;YAC/D,0CAA0C;YAC1C,8DAA8D;YAC9D,oFAAoF;YACpF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,iBAAiB;iBACzC,SAAS,CACR;gBACE;oBACE,MAAM,EAAE;wBACN,OAAO,EAAE,IAAI,CAAC,QAAQ;wBACtB,MAAM,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE;wBAC7B,GAAG,EAAE,EAAE,IAAI,EAAE,UAAU,CAAC,UAAU,EAAE;qBACrC;iBACF;gBACD;oBACE,KAAK,EAAE;wBACL,GAAG,EAAE,CAAC,CAAC;qBACR;iBACF;gBACD;oBACE,MAAM,EAAE;wBACN,GAAG,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE;wBACvC,iBAAiB,EAAE;4BACjB,MAAM,EAAE,oBAAoB;yBAC7B;qBACF;iBACF;aACF,EACD;gBACE,OAAO;gBACP,WAAW,EAAE,UAAU;gBACvB,qFAAqF;gBACrF,SAAS,EAAE,SAAS,CAAC,EAAE,CAAC,0BAA0B;aACnD,CACF;iBACA,OAAO,EAAE;iBACT,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;gBACX,MAAM,SAAS,CAAC,aAAa,CAAC,CAAC,EAAE,oCAAoC,CAAC,CAAC;YACzE,CAAC,CAAC,CAAC;YACL,MAAM,iBAAiB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;gBACzC,OAAO,GAAG,CAAC,iBAAiB,CAAC;YAC/B,CAAC,CAAC,CAAC;YACH,OAAO,iBAAiB,CAAC,IAAI,EAAE,CAAC;QAClC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,CAAC,kBAAkB,CACvB,UAA8B,EAC9B,WAAsC,EACtC,OAAwC;QAExC,IAAI,WAAW,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC;YAC1B,OAAO;QACT,CAAC;QACD,IAAI,OAAO,GAAuC,EAAE,CAAC;QAErD,IAAI,UAAU,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,IAAI,qBAAqB,CAAC,oBAAoB,CAAC,CAAC;QACxD,CAAC;QACD,MAAM,GAAG,GAAG,UAAU,CAAC;QACvB,KAAK,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC;YAChD,OAAO,CAAC,IAAI,CAAC;gBACX,GAAG,EAAE;oBACH,GAAG,EAAE;wBACH,CAAC,EAAE,IAAI,CAAC,QAAQ;wBAChB,CAAC,EAAE,IAAI;wBACP,CAAC,EAAE,KAAK;qBACT;oBACD,IAAI,EAAE;wBACJ,CAAC,EAAE,IAAI,CAAC,QAAQ;wBAChB,CAAC,EAAE,IAAI;wBACP,CAAC,EAAE,GAAU;qBACd;iBACF;aACF,CAAC,CAAC;QACL,CAAC;QAED,mBAAmB;QACnB,yEAAyE;QACzE,6EAA6E;QAC7E,uDAAuD;QAEvD,MAAM,UAAU,GAAG,OAAO,EAAE,KAAK,IAAI,OAAO,CAAC,4BAA4B,CAAC;QAC1E,MAAM,mBAAmB,GAAG,OAAO,EAAE,eAAe,IAAI,OAAO,CAAC,kCAAkC,CAAC;QAEnG,MAAM,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,IAAI,CACrC;YACE,GAAG,EAAE,OAAO;SACb,EACD;YACE,OAAO,EAAE,SAAS;YAClB,IAAI,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE;YAChB,KAAK,EAAE,UAAU;YACjB,oFAAoF;YACpF,UAAU;YACV,SAAS,EAAE,UAAU;YACrB,sEAAsE;YACtE,qBAAqB;YACrB,8EAA8E;YAC9E,yDAAyD;YACzD,yCAAyC;YACzC,GAAG,EAAE,IAAI;YAET,qFAAqF;YACrF,SAAS,EAAE,SAAS,CAAC,EAAE,CAAC,0BAA0B;SACnD,CACqC,CAAC;QAEzC,yEAAyE;QACzE,iFAAiF;QACjF,mDAAmD;QACnD,+EAA+E;QAC/E,uBAAuB;QACvB,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,MAAM,eAAe,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;YAC9E,MAAM,SAAS,CAAC,aAAa,CAAC,CAAC,EAAE,2BAA2B,CAAC,CAAC;QAChE,CAAC,CAAC,CAAC;QACH,IAAI,IAAI,CAAC,MAAM,IAAI,UAAU,EAAE,CAAC;YAC9B,0EAA0E;YAC1E,YAAY,GAAG,IAAI,CAAC;QACtB,CAAC;QAED,IAAI,cAAc,GAAG,CAAC,CAAC;QACvB,IAAI,YAAY,GAAgC,IAAI,CAAC;QACrD,IAAI,QAAQ,GAAwB,IAAI,CAAC;QAEzC,uDAAuD;QACvD,KAAK,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;YACzB,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,iCAAiC,CAAuB,CAAC;YACvG,MAAM,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;YAEzB,IAAI,YAAY,IAAI,IAAI,IAAI,YAAY,CAAC,MAAM,IAAI,MAAM,IAAI,cAAc,IAAI,mBAAmB,EAAE,CAAC;gBACnG,+BAA+B;gBAC/B,IAAI,KAAK,GAA6B,SAAS,CAAC;gBAChD,IAAI,YAAY,IAAI,IAAI,EAAE,CAAC;oBACzB,8CAA8C;oBAC9C,IAAI,YAAY,CAAC,MAAM,IAAI,MAAM,EAAE,CAAC;wBAClC,mFAAmF;wBACnF,oFAAoF;wBACpF,qCAAqC;wBACrC,YAAY,CAAC,QAAQ,GAAG,IAAI,CAAC;wBAC7B,KAAK,GAAG,YAAY,CAAC,UAAU,CAAC;oBAClC,CAAC;oBAED,MAAM,UAAU,GAAG,YAAY,CAAC;oBAChC,YAAY,GAAG,IAAI,CAAC;oBACpB,cAAc,GAAG,CAAC,CAAC;oBACnB,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;oBACpD,QAAQ,GAAG,IAAI,CAAC;gBAClB,CAAC;gBAED,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;oBAClB,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBAC1C,IAAI,SAAS,IAAI,IAAI,EAAE,CAAC;wBACtB,MAAM,IAAI,qBAAqB,CAAC,+BAA+B,MAAM,EAAE,CAAC,CAAC;oBAC3E,CAAC;oBACD,KAAK,GAAG,sBAAsB,CAAC,SAAS,CAAC,CAAC;gBAC5C,CAAC;gBACD,YAAY,GAAG;oBACb,MAAM;oBACN,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,KAAK;oBACf,IAAI,EAAE,EAAE;oBACR,UAAU,EAAE,KAAK;iBAClB,CAAC;gBACF,QAAQ,GAAG,IAAI,CAAC;YAClB,CAAC;YAED,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;YAE9B,IAAI,GAAG,CAAC,SAAS,IAAI,IAAI,EAAE,CAAC;gBAC1B,cAAc;gBACd,IAAI,QAAQ,IAAI,IAAI,IAAI,GAAG,CAAC,SAAS,GAAG,QAAQ,EAAE,CAAC;oBACjD,QAAQ,GAAG,GAAG,CAAC,SAAS,CAAC;gBAC3B,CAAC;YACH,CAAC;YAED,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC9B,YAAY,CAAC,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC;YAEtC,cAAc,IAAI,OAAO,CAAC,UAAU,CAAC;QACvC,CAAC;QAED,IAAI,YAAY,IAAI,IAAI,EAAE,CAAC;YACzB,MAAM,UAAU,GAAG,YAAY,CAAC;YAChC,YAAY,GAAG,IAAI,CAAC;YACpB,wCAAwC;YACxC,+EAA+E;YAC/E,UAAU,CAAC,QAAQ,GAAG,YAAY,CAAC;YACnC,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;YACpD,QAAQ,GAAG,IAAI,CAAC;QAClB,CAAC;IACH,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,UAA8B,EAAE,OAAiB;QAClE,OAAO,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAChE,CAAC;IAED,kBAAkB;QAChB,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;IAC7B,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAAC,KAA2C;QAC5E,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YACtB,OAAO,IAAI,GAAG,EAAE,CAAC;QACnB,CAAC;QAED,MAAM,UAAU,GAAU,EAAE,CAAC;QAC7B,KAAK,IAAI,OAAO,IAAI,KAAK,EAAE,CAAC;YAC1B,IAAI,OAAO,CAAC,KAAK,IAAI,IAAI,EAAE,CAAC;gBAC1B,UAAU,CAAC,IAAI,CAAC;oBACd,GAAG,EAAE;wBACH,CAAC,EAAE,IAAI,CAAC,QAAQ;wBAChB,CAAC,EAAE,OAAO,CAAC,MAAM;qBAClB;oBACD,uBAAuB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,EAAE;iBAC9D,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,GAAG,EAA4D,CAAC;QAEtF,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,4EAA4E;YAC5E,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,YAAY;iBACtC,IAAI,CAAC;gBACJ,GAAG,EAAE,UAAU;aAChB,CAAC;iBACD,OAAO,EAAE,CAAC;YACb,KAAK,IAAI,KAAK,IAAI,MAAM,EAAE,CAAC;gBACzB,MAAM,cAAc,GAAG,KAAK,CAAC,eAAgB,CAAC;gBAC9C,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE;oBACzB,IAAI,EAAE,cAAc,CAAC,KAAK;oBAC1B,QAAQ,EAAE;wBACR,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;wBACnB,QAAQ,EAAE,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC;wBACzC,KAAK,EAAE,cAAc,CAAC,KAAK;qBAC5B;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,MAAM,OAAO,GAAU,EAAE,CAAC;QAC1B,KAAK,IAAI,OAAO,IAAI,KAAK,EAAE,CAAC;YAC1B,IAAI,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;YAC1B,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;gBAClB,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;gBAC/C,IAAI,QAAQ,IAAI,IAAI,EAAE,CAAC;oBACrB,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC;gBACxB,CAAC;YACH,CAAC;YAED,OAAO,CAAC,IAAI,CAAC;gBACX,GAAG,EAAE;oBACH,GAAG,EAAE;wBACH,CAAC,EAAE,IAAI,CAAC,QAAQ;wBAChB,CAAC,EAAE,OAAO,CAAC,MAAM;wBACjB,CAAC,EAAE,KAAK,IAAI,IAAI,IAAI,CAAC,MAAM,EAAE;qBAC9B;oBACD,IAAI,EAAE;wBACJ,CAAC,EAAE,IAAI,CAAC,QAAQ;wBAChB,CAAC,EAAE,OAAO,CAAC,MAAM;wBACjB,CAAC,EAAE,OAAO,CAAC,GAAG;qBACf;iBACF;aACF,CAAC,CAAC;QACL,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,WAAW;aACxC,SAAS,CACR;YACE;gBACE,MAAM,EAAE;oBACN,GAAG,EAAE,OAAO;iBACb;aACF;YACD;gBACE,MAAM,EAAE;oBACN,GAAG,EAAE,QAAQ;oBACb,6DAA6D;oBAC7D,0CAA0C;oBAC1C,8FAA8F;oBAC9F,cAAc,EAAE,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,EAAE;oBAClD,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE;oBAClB,YAAY,EAAE;wBACZ,IAAI,EAAE;4BACJ,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;yBACzC;qBACF;iBACF;aACF;SACF,EACD,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,CAAC,yBAAyB,EAAE,CACnG;aACA,OAAO,EAAE;aACT,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;YACX,MAAM,SAAS,CAAC,aAAa,CAAC,CAAC,EAAE,yBAAyB,CAAC,CAAC;QAC9D,CAAC,CAAC,CAAC;QAEL,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAC9B,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;YACpB,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,WAAW,CAAC,GAAG,UAAU,CAAC;YACtF,MAAM,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC;YACvB,OAAO;gBACL,MAAM;gBACN,GAAG,CAAC,YAAY,IAAI,CAAC;oBACnB,CAAC,CAAE;wBACC,4CAA4C;wBAC5C,MAAM;wBACN,QAAQ,EAAE,eAAe;wBACzB,KAAK,EAAE,GAAG,CAAC,KAAK;qBACS;oBAC7B,CAAC,CAAE;wBACC,gDAAgD;wBAChD,MAAM;wBACN,YAAY,EAAE,GAAG,CAAC,KAAK;wBACvB,eAAe;qBACW;aACjC,CAAC;QACJ,CAAC,CAAC,CACH,CAAC;QAEF,OAAO,IAAI,GAAG,CACZ,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;YACpB,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;YAC9B,oGAAoG;YACpG,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACvC,kCAAkC;YAClC,MAAM,eAAe,GAAG,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACrD,MAAM,MAAM,GAAG,mBAAmB,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,IAAI,IAAI,EAAE,eAAe,IAAI,IAAI,CAAC,CAAC;YAEhG,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC1B,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,OAAkC;QAChD,2EAA2E;QAC3E,IAAI,CAAC,OAAO,IAAI,OAAO,EAAE,YAAY,EAAE,CAAC;YACtC,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC5B,CAAC;QACD,MAAM,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAChC;YACE,GAAG,EAAE,IAAI,CAAC,QAAQ;SACnB,EACD;YACE,IAAI,EAAE;gBACJ,KAAK,EAAE,OAAO,CAAC,aAAa,CAAC,UAAU;gBACvC,aAAa,EAAE,IAAI;gBACnB,aAAa,EAAE,KAAK;aACrB;SACF,CACF,CAAC;QACF,MAAM,IAAI,CAAC,EAAE,CAAC,gBAAgB,EAAE,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,SAAS;QACb,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAC1C;YACE,GAAG,EAAE,IAAI,CAAC,QAAQ;SACnB,EACD;YACE,UAAU,EAAE;gBACV,aAAa,EAAE,CAAC;gBAChB,mBAAmB,EAAE,CAAC;gBACtB,KAAK,EAAE,CAAC;gBACR,YAAY,EAAE,CAAC;aAChB;SACF,CACF,CAAC;QACF,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;YAChB,MAAM,IAAI,qBAAqB,CAAC,+BAA+B,CAAC,CAAC;QACnE,CAAC;QAED,OAAO;YACL,aAAa,EAAE,GAAG,CAAC,aAAa;YAChC,YAAY,EAAE,GAAG,CAAC,YAAY,IAAI,IAAI;YACtC,MAAM,EAAE,GAAG,CAAC,KAAK,IAAI,QAAQ;YAC7B,cAAc,EAAE,GAAG,CAAC,mBAAmB;SACxC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,OAAqC;QAC/C,OAAO,IAAI,EAAE,CAAC;YACZ,IAAI,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;gBAC7B,MAAM,IAAI,uBAAuB,CAAC,uBAAuB,CAAC,CAAC;YAC7D,CAAC;YACD,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;gBAE5B,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,qBAAqB,CAAC,CAAC;gBACpD,OAAO;YACT,CAAC;YAAC,OAAO,CAAU,EAAE,CAAC;gBACpB,IAAI,SAAS,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,IAAI,kBAAkB,EAAE,CAAC;oBACxE,MAAM,CAAC,IAAI,CACT,GAAG,IAAI,CAAC,SAAS,6BAA6B,SAAS,CAAC,EAAE,CAAC,gCAAgC,mBAAmB,CAC/G,CAAC;oBACF,MAAM,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC,gCAAgC,GAAG,CAAC,CAAC,CAAC;gBAC7E,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,CAAC;gBACV,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,cAAc;QAC1B,qEAAqE;QACrE,uEAAuE;QAEvE,MAAM,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAChC;YACE,GAAG,EAAE,IAAI,CAAC,QAAQ;SACnB,EACD;YACE,IAAI,EAAE;gBACJ,aAAa,EAAE,KAAK;gBACpB,aAAa,EAAE,IAAI;gBACnB,mBAAmB,EAAE,IAAI;gBACzB,eAAe,EAAE,IAAI;gBACrB,oBAAoB,EAAE,IAAI;aAC3B;YACD,MAAM,EAAE;gBACN,YAAY,EAAE,CAAC;aAChB;SACF,EACD,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,CAAC,gCAAgC,EAAE,CAC7D,CAAC;QACF,MAAM,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,UAAU,CAClC;YACE,GAAG,EAAE,cAAc,CAAgB,EAAE,CAAC,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;SACrE,EACD,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,CAAC,gCAAgC,EAAE,CAC7D,CAAC;QACF,MAAM,IAAI,CAAC,EAAE,CAAC,iBAAiB,CAAC,UAAU,CACxC;YACE,OAAO,EAAE,IAAI,CAAC,QAAQ;SACvB,EACD,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,CAAC,gCAAgC,EAAE,CAC7D,CAAC;QAEF,MAAM,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,UAAU,CACnC;YACE,GAAG,EAAE,cAAc,CAAY,EAAE,CAAC,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;SACjE,EACD,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,CAAC,gCAAgC,EAAE,CAC7D,CAAC;QAEF,MAAM,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,UAAU,CACnC;YACE,GAAG,EAAE,cAAc,CAA6B,EAAE,CAAC,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;SAC7E,EACD,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,CAAC,gCAAgC,EAAE,CAC7D,CAAC;QAEF,MAAM,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,UAAU,CACpC;YACE,QAAQ,EAAE,IAAI,CAAC,QAAQ;SACxB,EACD,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,CAAC,gCAAgC,EAAE,CAC7D,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,CAAM;QACtB,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,OAAO,IAAI,qBAAqB,CAAC,CAAC;QAC3D,MAAM,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAChC;YACE,GAAG,EAAE,IAAI,CAAC,QAAQ;SACnB,EACD;YACE,IAAI,EAAE;gBACJ,gBAAgB,EAAE,OAAO;aAC1B;SACF,CACF,CAAC;QACF,MAAM,IAAI,CAAC,EAAE,CAAC,gBAAgB,EAAE,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAAgC;QAC5C,IAAI,OAAO,GAAG,OAAO,EAAE,OAAO,CAAC;QAC/B,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;YACpB,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC;YACtD,OAAO,GAAG,UAAU,EAAE,UAAU,IAAI,SAAS,CAAC;QAChD,CAAC;QACD,MAAM,IAAI,cAAc,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;QACpF,IAAI,OAAO,IAAI,IAAI,IAAI,OAAO,EAAE,oBAAoB,EAAE,CAAC;YACrD,MAAM,IAAI,uBAAuB,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC;QACxF,CAAC;IACH,CAAC;IAED,KAAK,CAAC,+BAA+B,CAAC,OAAmD;QACvF,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,oEAAoE;QACpE,MAAM,IAAI,CAAC,OAAO,CAAC;YACjB,GAAG,OAAO;YACV,sBAAsB;YACtB,oBAAoB,EAAE,KAAK;YAC3B,0CAA0C;YAC1C,aAAa,EAAE,CAAC;SACjB,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;QACpC,MAAM,CAAC,IAAI,CAAC,0CAA0C,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACzF,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,CAAC,qBAAqB,CAAC,MAAmB;QACtD,MAAM,MAAM,GAAG,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC;QAEpD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,OAAO;QACT,CAAC;QAED,kDAAkD;QAClD,2EAA2E;QAC3E,IAAI,MAAM,GAAyC,IAAI,CAAC;QAExD,IAAI,KAAK,EAAE,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;YAC7B,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,MAAM;YACR,CAAC;YAED,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC9C,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC;gBACf,+CAA+C;gBAC/C,mDAAmD;gBACnD,MAAM;YACR,CAAC;YAED,qEAAqE;YACrE,IAAI,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC,GAAG,IAAI,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC,UAAU,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;gBACjF,MAAM,GAAG,EAAE,CAAC;gBACZ,MAAM,EAAE,CAAC;YACX,CAAC;QACH,CAAC;IACH,CAAC;IAED,4DAA4D;IAC3C,UAAU,GAAG,IAAI,iBAAiB,CAAC,CAAC,MAAM,EAAE,EAAE;QAC7D,OAAO,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;IAC5C,CAAC,CAAC,CAAC;IAEH;;OAEG;IACH,KAAK,CAAC,CAAC,sBAAsB,CAAC,OAAoC;QAChE,IAAI,cAAc,GAAiC,IAAI,CAAC;QAExD,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACnE,IAAI,eAAe,GAAkB,IAAI,CAAC;QAE1C,IAAI,KAAK,EAAE,MAAM,cAAc,IAAI,IAAI,EAAE,CAAC;YACxC,2CAA2C;YAC3C,wBAAwB;YACxB,iCAAiC;YACjC,oDAAoD;YAEpD,IAAI,cAAc,CAAC,GAAG,IAAI,IAAI,EAAE,CAAC;gBAC/B,eAAe,KAAK,MAAM,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,CAAC;oBACpE,aAAa,EAAE,IAAI,CAAC,QAAQ;oBAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,KAAK,EAAE;wBACL,GAAG,EAAE,cAAc,CAAC,GAAG;qBACxB;iBACF,CAAC,CAAC;YACL,CAAC;YAED,IACE,cAAc,IAAI,IAAI;gBACtB,cAAc,CAAC,UAAU,IAAI,cAAc,CAAC,UAAU;gBACtD,cAAc,CAAC,GAAG,IAAI,cAAc,CAAC,GAAG,EACxC,CAAC;gBACD,gCAAgC;gBAChC,4DAA4D;gBAC5D,6DAA6D;gBAC7D,MAAM,MAAM,CAAC,UAAU,CAAC,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;gBACjD,SAAS;YACX,CAAC;YAED,IAAI,cAAc,IAAI,IAAI,EAAE,CAAC;gBAC3B,MAAM;oBACJ,IAAI,EAAE,cAAc;oBACpB,eAAe;oBACf,MAAM,EAAE,yBAAyB;iBAClC,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC;oBAC9C,cAAc;oBACd,cAAc;iBACf,CAAC,CAAC;gBAEH,IAAI,sBAAsB,GAAG,OAAO,CAAC,uBAAuB,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC;gBAC1F,IAAI,OAAO,CAAC,0BAA0B,EAAE,CAAC;oBACvC,sBAAsB,KAAK,MAAM,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,CAAC;wBAC3E,aAAa,EAAE,IAAI,CAAC,QAAQ;wBAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;wBACxB,KAAK,EAAE;4BACL,GAAG,EAAE,cAAc,CAAC,GAAI;yBACzB;qBACF,CAAC,CAAC;gBACL,CAAC;gBACD,IAAI,sBAAsB,IAAI,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,IAAI,sBAAsB,GAAG,eAAe,CAAC,EAAE,CAAC;oBAC5G,eAAe,GAAG,sBAAsB,CAAC;gBAC3C,CAAC;gBAED,MAAM;oBACJ,IAAI,EAAE,cAAc;oBACpB,eAAe;oBACf,MAAM,EAAE;wBACN,kBAAkB,EAAE,OAAO,CAAC,kBAAkB;wBAC9C,qBAAqB,EAAE,OAAO,CAAC,qBAAqB;wBACpD,uBAAuB,EAAE,OAAO,CAAC,uBAAuB;wBACxD,0BAA0B,EAAE,OAAO,CAAC,0BAA0B;qBAC/D;iBACF,CAAC;YACJ,CAAC;YAED,cAAc,GAAG,cAAc,CAAC;QAClC,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,CAAC,uBAAuB,CAAC,MAAmB;QACxD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,OAAO;QACT,CAAC;QAED,MAAM,KAAK,GAAG,GAAG,EAAE;YACjB,OAAO,IAAI,CAAC,EAAE,CAAC,iBAAiB,CAAC,IAAI,CACnC,EAAE,EACF,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,CAC7E,CAAC;QACJ,CAAC,CAAC;QAEF,IAAI,MAAM,GAAG,KAAK,EAAE,CAAC;QAErB,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE;YACpC,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;QAEH,gFAAgF;QAChF,kFAAkF;QAClF,KAAK,CAAC;QAEN,IAAI,CAAC;YACH,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACvB,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;oBAC7C,IAAI,SAAS,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,KAAK,oBAAoB,EAAE,CAAC;wBAC3E,wEAAwE;wBACxE,MAAM,GAAG,KAAK,EAAE,CAAC;wBACjB,gEAAgE;wBAChE,OAAO,EAAE,CAAC;oBACZ,CAAC;yBAAM,CAAC;wBACN,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;oBAC3B,CAAC;gBACH,CAAC,CAAC,CAAC;gBACH,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;oBAClB,OAAO;gBACT,CAAC;gBACD,qEAAqE;gBACrE,wDAAwD;gBACxD,MAAM,CAAC,qBAAqB,EAAE,CAAC;gBAC/B,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;oBAChB,KAAK,CAAC;gBACR,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,OAAO;YACT,CAAC;YACD,MAAM,CAAC,CAAC;QACV,CAAC;gBAAS,CAAC;YACT,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACvB,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAChC,OAAoC;QAEpC,MAAM,KAAK,GAAG,IAAI,CAAC;QACnB,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,YAAY;aAClD,IAAI,CACH;YACE,wCAAwC;YACxC,OAAO,EAAE,IAAI,CAAC,QAAQ;YACtB,OAAO,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,cAAc,CAAC,UAAU,EAAE;SACpD,EACD;YACE,UAAU,EAAE;gBACV,OAAO,EAAE,CAAC;aACX;YACD,KAAK,EAAE,KAAK,GAAG,CAAC;YAChB,SAAS,EAAE,KAAK,GAAG,CAAC;YACpB,WAAW,EAAE,IAAI;SAClB,CACF;aACA,OAAO,EAAE,CAAC;QAEb,MAAM,OAAO,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC3D,MAAM,qBAAqB,GAAG,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC;QAErD,OAAO;YACL,qBAAqB,EAAE,qBAAqB;YAC5C,kBAAkB,EAAE,qBAAqB,CAAC,CAAC,CAAC,IAAI,GAAG,EAAU,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC;SACjF,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,yBAAyB,CACrC,OAAoC;QAEpC,MAAM,KAAK,GAAG,IAAI,CAAC;QACnB,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,iBAAiB;aACrD,IAAI,CACH;YACE,GAAG,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,cAAc,CAAC,UAAU,EAAE,IAAI,EAAE,OAAO,CAAC,cAAc,CAAC,UAAU,EAAE;YACxF,OAAO,EAAE,IAAI,CAAC,QAAQ;SACvB,EACD;YACE,UAAU,EAAE;gBACV,MAAM,EAAE,CAAC;aACV;YACD,KAAK,EAAE,KAAK,GAAG,CAAC;YAChB,SAAS,EAAE,KAAK,GAAG,CAAC;YACpB,WAAW,EAAE,IAAI;SAClB,CACF;aACA,OAAO,EAAE,CAAC;QACb,MAAM,0BAA0B,GAAG,gBAAgB,CAAC,MAAM,GAAG,KAAK,CAAC;QAEnE,OAAO;YACL,0BAA0B,EAAE,0BAA0B;YACtD,uBAAuB,EAAE,0BAA0B;gBACjD,CAAC,CAAC,IAAI,GAAG,EAAU;gBACnB,CAAC,CAAC,IAAI,GAAG,CAAS,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,0BAA0B,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;SAC1G,CAAC;IACJ,CAAC;IAED,iHAAiH;IACjH,oHAAoH;IACpH,gBAAgB;IAChB,qGAAqG;IACrG,wCAAwC;IAChC,sBAAsB,GAAG,IAAI,QAAQ,CAI3C;QACA,6DAA6D;QAC7D,2BAA2B;QAC3B,mGAAmG;QACnG,+FAA+F;QAC/F,oGAAoG;QACpG,mGAAmG;QACnG,GAAG,EAAE,EAAE;QACP,OAAO,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI;QACzB,eAAe,EAAE,CAAC,KAAgC,EAAE,EAAE;YACpD,2BAA2B;YAC3B,MAAM,SAAS,GAAG,CAAC,GAAG,KAAK,CAAC,uBAAuB,CAAC,CAAC,MAAM,CAAS,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YAC/F,MAAM,UAAU,GAAG,CAAC,GAAG,KAAK,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAS,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YAC3F,MAAM,mBAAmB,GAAG,KAAK,CAAC,uBAAuB,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC,gCAAgC;YACrG,OAAO,GAAG,GAAG,SAAS,GAAG,UAAU,GAAG,mBAAmB,CAAC;QAC5D,CAAC;QACD,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE;YAChD,OAAO,IAAI,CAAC,4BAA4B,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACpE,CAAC;KACF,CAAC,CAAC;IAEH,KAAK,CAAC,oBAAoB,CAAC,OAAoC;QAC7D,MAAM,GAAG,GAAG,GAAG,OAAO,CAAC,cAAc,CAAC,UAAU,IAAI,OAAO,CAAC,cAAc,CAAC,GAAG,KAAK,OAAO,CAAC,cAAc,CAAC,UAAU,IAAI,OAAO,CAAC,cAAc,CAAC,GAAG,EAAE,CAAC;QACrJ,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;QACtF,OAAO,MAAO,CAAC;IACjB,CAAC;IAEO,KAAK,CAAC,4BAA4B,CAAC,OAAoC;QAC7E,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;QAC7D,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,yBAAyB,CAAC,OAAO,CAAC,CAAC;QACvE,MAAM,sBAAsB,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,yBAAyB,CAAC,OAAO,CAAC,CAAC;QAEhG,OAAO;YACL,GAAG,WAAW;YACd,GAAG,gBAAgB;YACnB,GAAG,sBAAsB;SAC1B,CAAC;IACJ,CAAC;CACF;AAOD,MAAM,0BAA0B;IAEpB;IACQ;IACA;IACT;IAJT,YACU,OAA+B,EACvB,UAAwB,EACxB,GAAkB,EAC3B,YAA6B;QAH5B,YAAO,GAAP,OAAO,CAAwB;QACvB,eAAU,GAAV,UAAU,CAAc;QACxB,QAAG,GAAH,GAAG,CAAe;QAC3B,iBAAY,GAAZ,YAAY,CAAiB;IACnC,CAAC;IAEJ,KAAK,CAAC,gBAAgB,CAAC,OAA0B;QAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACtD,CAAC;CACF;AAED,MAAM,0BAA0B;IACrB,UAAU,GAAiB,EAAE,CAAC;IAC9B,GAAG,GAAkB,IAAI,CAAC;IAEnC,KAAK,CAAC,gBAAgB,CAAC,OAA0B;QAC/C,OAAO,EAAE,CAAC;IACZ,CAAC;CACF"}
@@ -54,5 +54,6 @@ export declare class PersistedBatch {
54
54
  interface BucketStateUpdate {
55
55
  lastOp: InternalOpId;
56
56
  incrementCount: number;
57
+ incrementBytes: number;
57
58
  }
58
59
  export {};