@fluidframework/merge-tree 2.0.0-rc.1.0.3 → 2.0.0-rc.2.0.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.
- package/{.eslintrc.js → .eslintrc.cjs} +4 -1
- package/{.mocharc.js → .mocharc.cjs} +1 -1
- package/CHANGELOG.md +4 -0
- package/api-extractor-cjs.json +8 -0
- package/api-extractor-lint.json +1 -1
- package/api-extractor.json +1 -9
- package/api-report/merge-tree.api.md +6 -12
- package/dist/MergeTreeTextHelper.d.ts +2 -2
- package/dist/MergeTreeTextHelper.d.ts.map +1 -1
- package/dist/MergeTreeTextHelper.js +3 -3
- package/dist/MergeTreeTextHelper.js.map +1 -1
- package/dist/attributionCollection.d.ts +1 -1
- package/dist/attributionCollection.d.ts.map +1 -1
- package/dist/attributionCollection.js.map +1 -1
- package/dist/attributionPolicy.d.ts +1 -1
- package/dist/attributionPolicy.d.ts.map +1 -1
- package/dist/attributionPolicy.js +15 -15
- package/dist/attributionPolicy.js.map +1 -1
- package/dist/client.d.ts +31 -12
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +103 -92
- package/dist/client.js.map +1 -1
- package/dist/collections/index.d.ts +2 -2
- package/dist/collections/index.d.ts.map +1 -1
- package/dist/collections/index.js +6 -6
- package/dist/collections/index.js.map +1 -1
- package/dist/endOfTreeSegment.d.ts +3 -3
- package/dist/endOfTreeSegment.d.ts.map +1 -1
- package/dist/endOfTreeSegment.js +8 -8
- package/dist/endOfTreeSegment.js.map +1 -1
- package/dist/index.d.ts +20 -20
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +71 -71
- package/dist/index.js.map +1 -1
- package/dist/localReference.d.ts +9 -39
- package/dist/localReference.d.ts.map +1 -1
- package/dist/localReference.js +29 -24
- package/dist/localReference.js.map +1 -1
- package/dist/merge-tree-alpha.d.ts +28 -450
- package/dist/merge-tree-beta.d.ts +0 -438
- package/dist/merge-tree-public.d.ts +0 -438
- package/dist/merge-tree-untrimmed.d.ts +28 -787
- package/dist/mergeTree.d.ts +11 -19
- package/dist/mergeTree.d.ts.map +1 -1
- package/dist/mergeTree.js +201 -189
- package/dist/mergeTree.js.map +1 -1
- package/dist/mergeTreeDeltaCallback.d.ts +3 -7
- package/dist/mergeTreeDeltaCallback.d.ts.map +1 -1
- package/dist/mergeTreeDeltaCallback.js.map +1 -1
- package/dist/mergeTreeNodeWalk.d.ts +1 -1
- package/dist/mergeTreeNodeWalk.d.ts.map +1 -1
- package/dist/mergeTreeNodeWalk.js.map +1 -1
- package/dist/mergeTreeNodes.d.ts +17 -14
- package/dist/mergeTreeNodes.d.ts.map +1 -1
- package/dist/mergeTreeNodes.js +32 -32
- package/dist/mergeTreeNodes.js.map +1 -1
- package/dist/mergeTreeTracking.d.ts +2 -2
- package/dist/mergeTreeTracking.d.ts.map +1 -1
- package/dist/mergeTreeTracking.js +2 -2
- package/dist/mergeTreeTracking.js.map +1 -1
- package/dist/opBuilder.d.ts +3 -3
- package/dist/opBuilder.d.ts.map +1 -1
- package/dist/opBuilder.js +7 -7
- package/dist/opBuilder.js.map +1 -1
- package/dist/package.json +3 -0
- package/dist/partialLengths.d.ts +5 -5
- package/dist/partialLengths.d.ts.map +1 -1
- package/dist/partialLengths.js +29 -29
- package/dist/partialLengths.js.map +1 -1
- package/dist/referencePositions.d.ts +4 -4
- package/dist/referencePositions.d.ts.map +1 -1
- package/dist/referencePositions.js +2 -2
- package/dist/referencePositions.js.map +1 -1
- package/dist/revertibles.d.ts +7 -7
- package/dist/revertibles.d.ts.map +1 -1
- package/dist/revertibles.js +39 -39
- package/dist/revertibles.js.map +1 -1
- package/dist/segmentGroupCollection.d.ts +1 -1
- package/dist/segmentGroupCollection.d.ts.map +1 -1
- package/dist/segmentGroupCollection.js +3 -3
- package/dist/segmentGroupCollection.js.map +1 -1
- package/dist/segmentPropertiesManager.d.ts +2 -2
- package/dist/segmentPropertiesManager.d.ts.map +1 -1
- package/dist/segmentPropertiesManager.js +8 -8
- package/dist/segmentPropertiesManager.js.map +1 -1
- package/dist/snapshotChunks.d.ts +3 -3
- package/dist/snapshotChunks.d.ts.map +1 -1
- package/dist/snapshotChunks.js +5 -5
- package/dist/snapshotChunks.js.map +1 -1
- package/dist/snapshotLoader.d.ts +3 -3
- package/dist/snapshotLoader.d.ts.map +1 -1
- package/dist/snapshotLoader.js +19 -19
- package/dist/snapshotLoader.js.map +1 -1
- package/dist/snapshotV1.d.ts +3 -3
- package/dist/snapshotV1.d.ts.map +1 -1
- package/dist/snapshotV1.js +35 -18
- package/dist/snapshotV1.js.map +1 -1
- package/dist/snapshotlegacy.d.ts +2 -2
- package/dist/snapshotlegacy.d.ts.map +1 -1
- package/dist/snapshotlegacy.js +22 -10
- package/dist/snapshotlegacy.js.map +1 -1
- package/dist/sortedSegmentSet.d.ts +3 -3
- package/dist/sortedSegmentSet.d.ts.map +1 -1
- package/dist/sortedSegmentSet.js +7 -5
- package/dist/sortedSegmentSet.js.map +1 -1
- package/dist/test/Insertion.perf.spec.js +15 -15
- package/dist/test/Insertion.perf.spec.js.map +1 -1
- package/dist/test/PartialLengths.perf.spec.js +13 -13
- package/dist/test/PartialLengths.perf.spec.js.map +1 -1
- package/dist/test/Removal.perf.spec.js +25 -25
- package/dist/test/Removal.perf.spec.js.map +1 -1
- package/dist/test/Snapshot.perf.spec.js +3 -3
- package/dist/test/Snapshot.perf.spec.js.map +1 -1
- package/dist/test/attributionCollection.perf.spec.js +9 -9
- package/dist/test/attributionCollection.perf.spec.js.map +1 -1
- package/dist/test/attributionCollection.spec.js +46 -46
- package/dist/test/attributionCollection.spec.js.map +1 -1
- package/dist/test/attributionPolicy.spec.js +13 -13
- package/dist/test/attributionPolicy.spec.js.map +1 -1
- package/dist/test/{beastTest.d.ts → beastTest.spec.d.ts} +3 -3
- package/dist/test/beastTest.spec.d.ts.map +1 -0
- package/dist/test/{beastTest.js → beastTest.spec.js} +120 -119
- package/dist/test/beastTest.spec.js.map +1 -0
- package/dist/test/client.annotateMarker.spec.js +13 -13
- package/dist/test/client.annotateMarker.spec.js.map +1 -1
- package/dist/test/{client.apis.d.ts → client.apis.spec.d.ts} +1 -1
- package/dist/test/client.apis.spec.d.ts.map +1 -0
- package/dist/test/{client.apis.js → client.apis.spec.js} +8 -8
- package/dist/test/client.apis.spec.js.map +1 -0
- package/dist/test/client.applyMsg.spec.js +106 -43
- package/dist/test/client.applyMsg.spec.js.map +1 -1
- package/dist/test/client.applyStashedOpFarm.spec.d.ts +1 -1
- package/dist/test/client.applyStashedOpFarm.spec.d.ts.map +1 -1
- package/dist/test/client.applyStashedOpFarm.spec.js +33 -21
- package/dist/test/client.applyStashedOpFarm.spec.js.map +1 -1
- package/dist/test/client.attributionFarm.spec.d.ts +1 -1
- package/dist/test/client.attributionFarm.spec.d.ts.map +1 -1
- package/dist/test/client.attributionFarm.spec.js +13 -13
- package/dist/test/client.attributionFarm.spec.js.map +1 -1
- package/dist/test/client.conflictFarm.spec.d.ts +1 -1
- package/dist/test/client.conflictFarm.spec.d.ts.map +1 -1
- package/dist/test/client.conflictFarm.spec.js +9 -9
- package/dist/test/client.conflictFarm.spec.js.map +1 -1
- package/dist/test/client.getPosition.spec.js +4 -4
- package/dist/test/client.getPosition.spec.js.map +1 -1
- package/dist/test/client.localReference.spec.js +140 -109
- package/dist/test/client.localReference.spec.js.map +1 -1
- package/dist/test/client.localReferenceFarm.spec.js +18 -18
- package/dist/test/client.localReferenceFarm.spec.js.map +1 -1
- package/dist/test/client.rebasePosition.spec.js +2 -2
- package/dist/test/client.rebasePosition.spec.js.map +1 -1
- package/dist/test/client.reconnectFarm.spec.d.ts +1 -1
- package/dist/test/client.reconnectFarm.spec.d.ts.map +1 -1
- package/dist/test/client.reconnectFarm.spec.js +10 -10
- package/dist/test/client.reconnectFarm.spec.js.map +1 -1
- package/dist/test/client.replay.spec.js +11 -11
- package/dist/test/client.replay.spec.js.map +1 -1
- package/dist/test/client.rollback.spec.js +83 -83
- package/dist/test/client.rollback.spec.js.map +1 -1
- package/dist/test/client.rollbackFarm.spec.js +9 -9
- package/dist/test/client.rollbackFarm.spec.js.map +1 -1
- package/dist/test/client.searchForMarker.spec.js +137 -137
- package/dist/test/client.searchForMarker.spec.js.map +1 -1
- package/dist/test/client.walkSegments.spec.js +2 -2
- package/dist/test/client.walkSegments.spec.js.map +1 -1
- package/dist/test/collections.list.spec.js +4 -4
- package/dist/test/collections.list.spec.js.map +1 -1
- package/dist/test/createInsertOnlyAttributionPolicy.spec.js +4 -4
- package/dist/test/createInsertOnlyAttributionPolicy.spec.js.map +1 -1
- package/dist/test/dirname.cjs +16 -0
- package/dist/test/dirname.cjs.map +1 -0
- package/dist/test/dirname.d.cts +6 -0
- package/dist/test/dirname.d.cts.map +1 -0
- package/dist/test/index.d.ts +8 -8
- package/dist/test/index.d.ts.map +1 -1
- package/dist/test/index.js +82 -81
- package/dist/test/index.js.map +1 -1
- package/dist/test/mergeTree.annotate.deltaCallback.spec.js +39 -39
- package/dist/test/mergeTree.annotate.deltaCallback.spec.js.map +1 -1
- package/dist/test/mergeTree.annotate.spec.js +39 -39
- package/dist/test/mergeTree.annotate.spec.js.map +1 -1
- package/dist/test/mergeTree.insert.deltaCallback.spec.js +35 -35
- package/dist/test/mergeTree.insert.deltaCallback.spec.js.map +1 -1
- package/dist/test/mergeTree.insertingWalk.spec.js +77 -77
- package/dist/test/mergeTree.insertingWalk.spec.js.map +1 -1
- package/dist/test/mergeTree.markRangeRemoved.deltaCallback.spec.js +42 -42
- package/dist/test/mergeTree.markRangeRemoved.deltaCallback.spec.js.map +1 -1
- package/dist/test/mergeTree.markRangeRemoved.spec.js +15 -15
- package/dist/test/mergeTree.markRangeRemoved.spec.js.map +1 -1
- package/dist/test/mergeTree.walk.spec.js +14 -14
- package/dist/test/mergeTree.walk.spec.js.map +1 -1
- package/dist/test/mergeTree.zamboni.spec.js +9 -9
- package/dist/test/mergeTree.zamboni.spec.js.map +1 -1
- package/dist/test/mergeTreeOperationRunner.d.ts +4 -4
- package/dist/test/mergeTreeOperationRunner.d.ts.map +1 -1
- package/dist/test/mergeTreeOperationRunner.js +16 -15
- package/dist/test/mergeTreeOperationRunner.js.map +1 -1
- package/dist/test/mergeTreeOperationRunner.spec.js +5 -5
- package/dist/test/mergeTreeOperationRunner.spec.js.map +1 -1
- package/dist/test/obliterate.concurrent.spec.js +85 -88
- package/dist/test/obliterate.concurrent.spec.js.map +1 -1
- package/dist/test/obliterate.deltaCallback.spec.d.ts +6 -0
- package/dist/test/obliterate.deltaCallback.spec.d.ts.map +1 -0
- package/dist/test/obliterate.deltaCallback.spec.js +146 -0
- package/dist/test/obliterate.deltaCallback.spec.js.map +1 -0
- package/dist/test/obliterate.partialLength.spec.js +39 -44
- package/dist/test/obliterate.partialLength.spec.js.map +1 -1
- package/dist/test/obliterate.reconnect.spec.js +15 -18
- package/dist/test/obliterate.reconnect.spec.js.map +1 -1
- package/dist/test/obliterate.spec.js +16 -16
- package/dist/test/obliterate.spec.js.map +1 -1
- package/dist/test/ordinal.spec.js +5 -5
- package/dist/test/ordinal.spec.js.map +1 -1
- package/dist/test/partialLength.spec.js +58 -64
- package/dist/test/partialLength.spec.js.map +1 -1
- package/dist/test/properties.spec.js +15 -15
- package/dist/test/properties.spec.js.map +1 -1
- package/dist/test/reconnectHelper.d.ts +8 -8
- package/dist/test/reconnectHelper.d.ts.map +1 -1
- package/dist/test/reconnectHelper.js +3 -3
- package/dist/test/reconnectHelper.js.map +1 -1
- package/dist/test/resetPendingSegmentsToOp.spec.js +18 -18
- package/dist/test/resetPendingSegmentsToOp.spec.js.map +1 -1
- package/dist/test/revertibleFarm.spec.js +21 -21
- package/dist/test/revertibleFarm.spec.js.map +1 -1
- package/dist/test/revertibles.spec.js +67 -67
- package/dist/test/revertibles.spec.js.map +1 -1
- package/dist/test/segmentGroupCollection.spec.js +3 -3
- package/dist/test/segmentGroupCollection.spec.js.map +1 -1
- package/dist/test/snapshot.spec.js +16 -16
- package/dist/test/snapshot.spec.js.map +1 -1
- package/dist/test/snapshot.utils.d.ts +4 -4
- package/dist/test/snapshot.utils.d.ts.map +1 -1
- package/dist/test/snapshot.utils.js +11 -11
- package/dist/test/snapshot.utils.js.map +1 -1
- package/dist/test/snapshotlegacy.spec.js +22 -22
- package/dist/test/snapshotlegacy.spec.js.map +1 -1
- package/dist/test/sortedSegmentSet.spec.js +9 -9
- package/dist/test/sortedSegmentSet.spec.js.map +1 -1
- package/dist/test/testClient.d.ts +13 -16
- package/dist/test/testClient.d.ts.map +1 -1
- package/dist/test/testClient.js +57 -59
- package/dist/test/testClient.js.map +1 -1
- package/dist/test/testClientLogger.d.ts +3 -3
- package/dist/test/testClientLogger.d.ts.map +1 -1
- package/dist/test/testClientLogger.js +19 -19
- package/dist/test/testClientLogger.js.map +1 -1
- package/dist/test/testServer.d.ts +3 -3
- package/dist/test/testServer.d.ts.map +1 -1
- package/dist/test/testServer.js +8 -8
- package/dist/test/testServer.js.map +1 -1
- package/dist/test/testUtils.d.ts +14 -6
- package/dist/test/testUtils.d.ts.map +1 -1
- package/dist/test/testUtils.js +36 -17
- package/dist/test/testUtils.js.map +1 -1
- package/dist/test/text.d.ts +2 -2
- package/dist/test/text.d.ts.map +1 -1
- package/dist/test/text.js +10 -10
- package/dist/test/text.js.map +1 -1
- package/dist/test/tracking.spec.js +12 -12
- package/dist/test/tracking.spec.js.map +1 -1
- package/dist/test/{wordUnitTests.d.ts → wordUnitTests.spec.d.ts} +1 -1
- package/dist/test/wordUnitTests.spec.d.ts.map +1 -0
- package/dist/test/{wordUnitTests.js → wordUnitTests.spec.js} +16 -15
- package/dist/test/wordUnitTests.spec.js.map +1 -0
- package/dist/textSegment.d.ts +3 -3
- package/dist/textSegment.d.ts.map +1 -1
- package/dist/textSegment.js +2 -2
- package/dist/textSegment.js.map +1 -1
- package/dist/tsdoc-metadata.json +1 -1
- package/dist/zamboni.d.ts +2 -2
- package/dist/zamboni.d.ts.map +1 -1
- package/dist/zamboni.js +19 -19
- package/dist/zamboni.js.map +1 -1
- package/lib/{MergeTreeTextHelper.d.mts → MergeTreeTextHelper.d.ts} +3 -3
- package/lib/MergeTreeTextHelper.d.ts.map +1 -0
- package/lib/{MergeTreeTextHelper.mjs → MergeTreeTextHelper.js} +3 -2
- package/lib/MergeTreeTextHelper.js.map +1 -0
- package/lib/{attributionCollection.d.mts → attributionCollection.d.ts} +2 -2
- package/lib/attributionCollection.d.ts.map +1 -0
- package/lib/{attributionCollection.mjs → attributionCollection.js} +1 -1
- package/lib/attributionCollection.js.map +1 -0
- package/lib/{attributionPolicy.d.mts → attributionPolicy.d.ts} +2 -2
- package/lib/attributionPolicy.d.ts.map +1 -0
- package/lib/{attributionPolicy.mjs → attributionPolicy.js} +4 -4
- package/lib/attributionPolicy.js.map +1 -0
- package/lib/{client.d.mts → client.d.ts} +32 -13
- package/lib/client.d.ts.map +1 -0
- package/lib/{client.mjs → client.js} +42 -31
- package/lib/client.js.map +1 -0
- package/lib/collections/{index.d.mts → index.d.ts} +3 -3
- package/lib/collections/index.d.ts.map +1 -0
- package/lib/collections/index.js +7 -0
- package/lib/collections/index.js.map +1 -0
- package/lib/collections/{list.d.mts → list.d.ts} +1 -1
- package/lib/collections/list.d.ts.map +1 -0
- package/lib/collections/{list.mjs → list.js} +1 -1
- package/lib/collections/list.js.map +1 -0
- package/lib/collections/{rbTree.d.mts → rbTree.d.ts} +1 -1
- package/lib/collections/rbTree.d.ts.map +1 -0
- package/lib/collections/{rbTree.mjs → rbTree.js} +1 -1
- package/lib/collections/rbTree.js.map +1 -0
- package/lib/{constants.d.mts → constants.d.ts} +1 -1
- package/lib/constants.d.ts.map +1 -0
- package/lib/{constants.mjs → constants.js} +1 -1
- package/lib/constants.js.map +1 -0
- package/lib/{endOfTreeSegment.d.mts → endOfTreeSegment.d.ts} +4 -4
- package/lib/endOfTreeSegment.d.ts.map +1 -0
- package/lib/{endOfTreeSegment.mjs → endOfTreeSegment.js} +3 -3
- package/lib/endOfTreeSegment.js.map +1 -0
- package/lib/{index.d.mts → index.d.ts} +21 -21
- package/lib/index.d.ts.map +1 -0
- package/lib/{index.mjs → index.js} +20 -20
- package/lib/index.js.map +1 -0
- package/lib/{localReference.d.mts → localReference.d.ts} +10 -40
- package/lib/localReference.d.ts.map +1 -0
- package/lib/{localReference.mjs → localReference.js} +12 -6
- package/lib/localReference.js.map +1 -0
- package/lib/{merge-tree-alpha.d.mts → merge-tree-alpha.d.ts} +28 -450
- package/lib/merge-tree-beta.d.ts +230 -0
- package/lib/merge-tree-public.d.ts +230 -0
- package/lib/{merge-tree-untrimmed.d.mts → merge-tree-untrimmed.d.ts} +28 -787
- package/lib/{mergeTree.d.mts → mergeTree.d.ts} +12 -20
- package/lib/mergeTree.d.ts.map +1 -0
- package/lib/{mergeTree.mjs → mergeTree.js} +47 -32
- package/lib/mergeTree.js.map +1 -0
- package/lib/{mergeTreeDeltaCallback.d.mts → mergeTreeDeltaCallback.d.ts} +8 -8
- package/lib/mergeTreeDeltaCallback.d.ts.map +1 -0
- package/lib/{mergeTreeDeltaCallback.mjs → mergeTreeDeltaCallback.js} +1 -1
- package/lib/mergeTreeDeltaCallback.js.map +1 -0
- package/lib/{mergeTreeNodeWalk.d.mts → mergeTreeNodeWalk.d.ts} +2 -2
- package/lib/mergeTreeNodeWalk.d.ts.map +1 -0
- package/lib/{mergeTreeNodeWalk.mjs → mergeTreeNodeWalk.js} +1 -1
- package/lib/mergeTreeNodeWalk.js.map +1 -0
- package/lib/{mergeTreeNodes.d.mts → mergeTreeNodes.d.ts} +18 -15
- package/lib/mergeTreeNodes.d.ts.map +1 -0
- package/lib/{mergeTreeNodes.mjs → mergeTreeNodes.js} +12 -10
- package/lib/mergeTreeNodes.js.map +1 -0
- package/lib/{mergeTreeTracking.d.mts → mergeTreeTracking.d.ts} +3 -3
- package/lib/mergeTreeTracking.d.ts.map +1 -0
- package/lib/{mergeTreeTracking.mjs → mergeTreeTracking.js} +3 -2
- package/lib/mergeTreeTracking.js.map +1 -0
- package/lib/{opBuilder.d.mts → opBuilder.d.ts} +4 -4
- package/lib/{opBuilder.d.mts.map → opBuilder.d.ts.map} +1 -1
- package/lib/{opBuilder.mjs → opBuilder.js} +2 -2
- package/lib/opBuilder.js.map +1 -0
- package/lib/{ops.d.mts → ops.d.ts} +1 -1
- package/lib/ops.d.ts.map +1 -0
- package/lib/{ops.mjs → ops.js} +1 -1
- package/lib/ops.js.map +1 -0
- package/lib/{ordinal.d.mts → ordinal.d.ts} +1 -1
- package/lib/ordinal.d.ts.map +1 -0
- package/lib/{ordinal.mjs → ordinal.js} +2 -1
- package/lib/ordinal.js.map +1 -0
- package/lib/{partialLengths.d.mts → partialLengths.d.ts} +6 -6
- package/lib/partialLengths.d.ts.map +1 -0
- package/lib/{partialLengths.mjs → partialLengths.js} +11 -10
- package/lib/partialLengths.js.map +1 -0
- package/lib/{properties.d.mts → properties.d.ts} +1 -1
- package/lib/properties.d.ts.map +1 -0
- package/lib/{properties.mjs → properties.js} +1 -1
- package/lib/properties.js.map +1 -0
- package/lib/{referencePositions.d.mts → referencePositions.d.ts} +5 -5
- package/lib/referencePositions.d.ts.map +1 -0
- package/lib/{referencePositions.mjs → referencePositions.js} +2 -2
- package/lib/referencePositions.js.map +1 -0
- package/lib/{revertibles.d.mts → revertibles.d.ts} +8 -8
- package/lib/revertibles.d.ts.map +1 -0
- package/lib/{revertibles.mjs → revertibles.js} +13 -13
- package/lib/revertibles.js.map +1 -0
- package/lib/{segmentGroupCollection.d.mts → segmentGroupCollection.d.ts} +2 -2
- package/lib/segmentGroupCollection.d.ts.map +1 -0
- package/lib/{segmentGroupCollection.mjs → segmentGroupCollection.js} +2 -2
- package/lib/segmentGroupCollection.js.map +1 -0
- package/lib/{segmentPropertiesManager.d.mts → segmentPropertiesManager.d.ts} +3 -3
- package/lib/segmentPropertiesManager.d.ts.map +1 -0
- package/lib/{segmentPropertiesManager.mjs → segmentPropertiesManager.js} +5 -3
- package/lib/segmentPropertiesManager.js.map +1 -0
- package/lib/{snapshotChunks.d.mts → snapshotChunks.d.ts} +4 -4
- package/lib/snapshotChunks.d.ts.map +1 -0
- package/lib/{snapshotChunks.mjs → snapshotChunks.js} +2 -2
- package/lib/snapshotChunks.js.map +1 -0
- package/lib/{snapshotLoader.d.mts → snapshotLoader.d.ts} +4 -4
- package/lib/snapshotLoader.d.ts.map +1 -0
- package/lib/{snapshotLoader.mjs → snapshotLoader.js} +10 -9
- package/lib/snapshotLoader.js.map +1 -0
- package/lib/{snapshotV1.d.mts → snapshotV1.d.ts} +4 -4
- package/lib/snapshotV1.d.ts.map +1 -0
- package/lib/{snapshotV1.mjs → snapshotV1.js} +24 -7
- package/lib/snapshotV1.js.map +1 -0
- package/lib/{snapshotlegacy.d.mts → snapshotlegacy.d.ts} +3 -3
- package/lib/snapshotlegacy.d.ts.map +1 -0
- package/lib/{snapshotlegacy.mjs → snapshotlegacy.js} +17 -4
- package/lib/snapshotlegacy.js.map +1 -0
- package/lib/{sortedSegmentSet.d.mts → sortedSegmentSet.d.ts} +4 -4
- package/lib/sortedSegmentSet.d.ts.map +1 -0
- package/lib/{sortedSegmentSet.mjs → sortedSegmentSet.js} +8 -5
- package/lib/sortedSegmentSet.js.map +1 -0
- package/lib/{sortedSet.d.mts → sortedSet.d.ts} +1 -1
- package/lib/sortedSet.d.ts.map +1 -0
- package/lib/{sortedSet.mjs → sortedSet.js} +1 -1
- package/lib/sortedSet.js.map +1 -0
- package/lib/test/Insertion.perf.spec.d.ts +6 -0
- package/lib/test/Insertion.perf.spec.d.ts.map +1 -0
- package/lib/test/Insertion.perf.spec.js +111 -0
- package/lib/test/Insertion.perf.spec.js.map +1 -0
- package/lib/test/PartialLengths.perf.spec.d.ts +6 -0
- package/lib/test/PartialLengths.perf.spec.d.ts.map +1 -0
- package/lib/test/PartialLengths.perf.spec.js +65 -0
- package/lib/test/PartialLengths.perf.spec.js.map +1 -0
- package/lib/test/Removal.perf.spec.d.ts +6 -0
- package/lib/test/Removal.perf.spec.d.ts.map +1 -0
- package/lib/test/Removal.perf.spec.js +164 -0
- package/lib/test/Removal.perf.spec.js.map +1 -0
- package/lib/test/Snapshot.perf.spec.d.ts +6 -0
- package/lib/test/Snapshot.perf.spec.d.ts.map +1 -0
- package/lib/test/Snapshot.perf.spec.js +31 -0
- package/lib/test/Snapshot.perf.spec.js.map +1 -0
- package/lib/test/attributionCollection.perf.spec.d.ts +6 -0
- package/lib/test/attributionCollection.perf.spec.d.ts.map +1 -0
- package/lib/test/attributionCollection.perf.spec.js +229 -0
- package/lib/test/attributionCollection.perf.spec.js.map +1 -0
- package/lib/test/attributionCollection.spec.d.ts +6 -0
- package/lib/test/attributionCollection.spec.d.ts.map +1 -0
- package/lib/test/attributionCollection.spec.js +484 -0
- package/lib/test/attributionCollection.spec.js.map +1 -0
- package/lib/test/attributionPolicy.spec.d.ts +6 -0
- package/lib/test/attributionPolicy.spec.d.ts.map +1 -0
- package/lib/test/attributionPolicy.spec.js +187 -0
- package/lib/test/attributionPolicy.spec.js.map +1 -0
- package/lib/test/beastTest.spec.d.ts +54 -0
- package/lib/test/beastTest.spec.d.ts.map +1 -0
- package/lib/test/beastTest.spec.js +1318 -0
- package/lib/test/beastTest.spec.js.map +1 -0
- package/lib/test/client.annotateMarker.spec.d.ts +6 -0
- package/lib/test/client.annotateMarker.spec.d.ts.map +1 -0
- package/lib/test/client.annotateMarker.spec.js +43 -0
- package/lib/test/client.annotateMarker.spec.js.map +1 -0
- package/lib/test/client.apis.spec.d.ts +7 -0
- package/lib/test/client.apis.spec.d.ts.map +1 -0
- package/lib/test/client.apis.spec.js +67 -0
- package/lib/test/client.apis.spec.js.map +1 -0
- package/lib/test/client.applyMsg.spec.d.ts +6 -0
- package/lib/test/client.applyMsg.spec.d.ts.map +1 -0
- package/lib/test/client.applyMsg.spec.js +561 -0
- package/lib/test/client.applyMsg.spec.js.map +1 -0
- package/lib/test/client.applyStashedOpFarm.spec.d.ts +12 -0
- package/lib/test/client.applyStashedOpFarm.spec.d.ts.map +1 -0
- package/lib/test/client.applyStashedOpFarm.spec.js +153 -0
- package/lib/test/client.applyStashedOpFarm.spec.js.map +1 -0
- package/lib/test/client.attributionFarm.spec.d.ts +7 -0
- package/lib/test/client.attributionFarm.spec.d.ts.map +1 -0
- package/lib/test/client.attributionFarm.spec.js +92 -0
- package/lib/test/client.attributionFarm.spec.js.map +1 -0
- package/lib/test/client.conflictFarm.spec.d.ts +15 -0
- package/lib/test/client.conflictFarm.spec.d.ts.map +1 -0
- package/lib/test/client.conflictFarm.spec.js +85 -0
- package/lib/test/client.conflictFarm.spec.js.map +1 -0
- package/lib/test/client.getPosition.spec.d.ts +6 -0
- package/lib/test/client.getPosition.spec.d.ts.map +1 -0
- package/lib/test/client.getPosition.spec.js +52 -0
- package/lib/test/client.getPosition.spec.js.map +1 -0
- package/lib/test/client.localReference.spec.d.ts +6 -0
- package/lib/test/client.localReference.spec.d.ts.map +1 -0
- package/lib/test/client.localReference.spec.js +468 -0
- package/lib/test/client.localReference.spec.js.map +1 -0
- package/lib/test/client.localReferenceFarm.spec.d.ts +6 -0
- package/lib/test/client.localReferenceFarm.spec.d.ts.map +1 -0
- package/lib/test/client.localReferenceFarm.spec.js +86 -0
- package/lib/test/client.localReferenceFarm.spec.js.map +1 -0
- package/lib/test/client.rebasePosition.spec.d.ts +6 -0
- package/lib/test/client.rebasePosition.spec.d.ts.map +1 -0
- package/lib/test/client.rebasePosition.spec.js +100 -0
- package/lib/test/client.rebasePosition.spec.js.map +1 -0
- package/lib/test/client.reconnectFarm.spec.d.ts +12 -0
- package/lib/test/client.reconnectFarm.spec.d.ts.map +1 -0
- package/lib/test/client.reconnectFarm.spec.js +88 -0
- package/lib/test/client.reconnectFarm.spec.js.map +1 -0
- package/lib/test/client.replay.spec.d.ts +6 -0
- package/lib/test/client.replay.spec.d.ts.map +1 -0
- package/lib/test/client.replay.spec.js +57 -0
- package/lib/test/client.replay.spec.js.map +1 -0
- package/lib/test/client.rollback.spec.d.ts +6 -0
- package/lib/test/client.rollback.spec.d.ts.map +1 -0
- package/lib/test/client.rollback.spec.js +451 -0
- package/lib/test/client.rollback.spec.js.map +1 -0
- package/lib/test/client.rollbackFarm.spec.d.ts +6 -0
- package/lib/test/client.rollbackFarm.spec.d.ts.map +1 -0
- package/lib/test/client.rollbackFarm.spec.js +46 -0
- package/lib/test/client.rollbackFarm.spec.js.map +1 -0
- package/lib/test/client.searchForMarker.spec.d.ts +6 -0
- package/lib/test/client.searchForMarker.spec.d.ts.map +1 -0
- package/lib/test/client.searchForMarker.spec.js +495 -0
- package/lib/test/client.searchForMarker.spec.js.map +1 -0
- package/lib/test/client.walkSegments.spec.d.ts +6 -0
- package/lib/test/client.walkSegments.spec.d.ts.map +1 -0
- package/lib/test/client.walkSegments.spec.js +52 -0
- package/lib/test/client.walkSegments.spec.js.map +1 -0
- package/lib/test/collections.list.spec.d.ts +6 -0
- package/lib/test/collections.list.spec.d.ts.map +1 -0
- package/lib/test/collections.list.spec.js +82 -0
- package/lib/test/collections.list.spec.js.map +1 -0
- package/lib/test/createInsertOnlyAttributionPolicy.spec.d.ts +6 -0
- package/lib/test/createInsertOnlyAttributionPolicy.spec.d.ts.map +1 -0
- package/lib/test/createInsertOnlyAttributionPolicy.spec.js +33 -0
- package/lib/test/createInsertOnlyAttributionPolicy.spec.js.map +1 -0
- package/lib/test/dirname.cjs +16 -0
- package/lib/test/dirname.cjs.map +1 -0
- package/lib/test/dirname.d.cts +6 -0
- package/lib/test/dirname.d.cts.map +1 -0
- package/lib/test/index.d.ts +13 -0
- package/lib/test/index.d.ts.map +1 -0
- package/lib/test/index.js +13 -0
- package/lib/test/index.js.map +1 -0
- package/lib/test/mergeTree.annotate.deltaCallback.spec.d.ts +6 -0
- package/lib/test/mergeTree.annotate.deltaCallback.spec.d.ts.map +1 -0
- package/lib/test/mergeTree.annotate.deltaCallback.spec.js +140 -0
- package/lib/test/mergeTree.annotate.deltaCallback.spec.js.map +1 -0
- package/lib/test/mergeTree.annotate.spec.d.ts +6 -0
- package/lib/test/mergeTree.annotate.spec.d.ts.map +1 -0
- package/lib/test/mergeTree.annotate.spec.js +446 -0
- package/lib/test/mergeTree.annotate.spec.js.map +1 -0
- package/lib/test/mergeTree.insert.deltaCallback.spec.d.ts +6 -0
- package/lib/test/mergeTree.insert.deltaCallback.spec.d.ts.map +1 -0
- package/lib/test/mergeTree.insert.deltaCallback.spec.js +124 -0
- package/lib/test/mergeTree.insert.deltaCallback.spec.js.map +1 -0
- package/lib/test/mergeTree.insertingWalk.spec.d.ts +6 -0
- package/lib/test/mergeTree.insertingWalk.spec.d.ts.map +1 -0
- package/lib/test/mergeTree.insertingWalk.spec.js +277 -0
- package/lib/test/mergeTree.insertingWalk.spec.js.map +1 -0
- package/lib/test/mergeTree.markRangeRemoved.deltaCallback.spec.d.ts +6 -0
- package/lib/test/mergeTree.markRangeRemoved.deltaCallback.spec.d.ts.map +1 -0
- package/lib/test/mergeTree.markRangeRemoved.deltaCallback.spec.js +176 -0
- package/lib/test/mergeTree.markRangeRemoved.deltaCallback.spec.js.map +1 -0
- package/lib/test/mergeTree.markRangeRemoved.spec.d.ts +6 -0
- package/lib/test/mergeTree.markRangeRemoved.spec.d.ts.map +1 -0
- package/lib/test/mergeTree.markRangeRemoved.spec.js +128 -0
- package/lib/test/mergeTree.markRangeRemoved.spec.js.map +1 -0
- package/lib/test/mergeTree.walk.spec.d.ts +6 -0
- package/lib/test/mergeTree.walk.spec.d.ts.map +1 -0
- package/lib/test/mergeTree.walk.spec.js +61 -0
- package/lib/test/mergeTree.walk.spec.js.map +1 -0
- package/lib/test/mergeTree.zamboni.spec.d.ts +6 -0
- package/lib/test/mergeTree.zamboni.spec.d.ts.map +1 -0
- package/lib/test/mergeTree.zamboni.spec.js +50 -0
- package/lib/test/mergeTree.zamboni.spec.js.map +1 -0
- package/lib/test/mergeTreeOperationRunner.d.ts +63 -0
- package/lib/test/mergeTreeOperationRunner.d.ts.map +1 -0
- package/lib/test/mergeTreeOperationRunner.js +207 -0
- package/lib/test/mergeTreeOperationRunner.js.map +1 -0
- package/lib/test/mergeTreeOperationRunner.spec.d.ts +6 -0
- package/lib/test/mergeTreeOperationRunner.spec.d.ts.map +1 -0
- package/lib/test/mergeTreeOperationRunner.spec.js +154 -0
- package/lib/test/mergeTreeOperationRunner.spec.js.map +1 -0
- package/lib/test/obliterate.concurrent.spec.d.ts +6 -0
- package/lib/test/obliterate.concurrent.spec.d.ts.map +1 -0
- package/lib/test/obliterate.concurrent.spec.js +1441 -0
- package/lib/test/obliterate.concurrent.spec.js.map +1 -0
- package/lib/test/obliterate.deltaCallback.spec.d.ts +6 -0
- package/lib/test/obliterate.deltaCallback.spec.d.ts.map +1 -0
- package/lib/test/obliterate.deltaCallback.spec.js +144 -0
- package/lib/test/obliterate.deltaCallback.spec.js.map +1 -0
- package/lib/test/obliterate.partialLength.spec.d.ts +6 -0
- package/lib/test/obliterate.partialLength.spec.d.ts.map +1 -0
- package/lib/test/obliterate.partialLength.spec.js +272 -0
- package/lib/test/obliterate.partialLength.spec.js.map +1 -0
- package/lib/test/obliterate.reconnect.spec.d.ts +6 -0
- package/lib/test/obliterate.reconnect.spec.d.ts.map +1 -0
- package/lib/test/obliterate.reconnect.spec.js +159 -0
- package/lib/test/obliterate.reconnect.spec.js.map +1 -0
- package/lib/test/obliterate.spec.d.ts +6 -0
- package/lib/test/obliterate.spec.d.ts.map +1 -0
- package/lib/test/obliterate.spec.js +160 -0
- package/lib/test/obliterate.spec.js.map +1 -0
- package/lib/test/ordinal.spec.d.ts +2 -0
- package/lib/test/ordinal.spec.d.ts.map +1 -0
- package/lib/test/ordinal.spec.js +38 -0
- package/lib/test/ordinal.spec.js.map +1 -0
- package/lib/test/partialLength.spec.d.ts +6 -0
- package/lib/test/partialLength.spec.d.ts.map +1 -0
- package/lib/test/partialLength.spec.js +274 -0
- package/lib/test/partialLength.spec.js.map +1 -0
- package/lib/test/properties.spec.d.ts +6 -0
- package/lib/test/properties.spec.d.ts.map +1 -0
- package/lib/test/properties.spec.js +53 -0
- package/lib/test/properties.spec.js.map +1 -0
- package/lib/test/reconnectHelper.d.ts +48 -0
- package/lib/test/reconnectHelper.d.ts.map +1 -0
- package/lib/test/reconnectHelper.js +82 -0
- package/lib/test/reconnectHelper.js.map +1 -0
- package/lib/test/resetPendingSegmentsToOp.spec.d.ts +6 -0
- package/lib/test/resetPendingSegmentsToOp.spec.d.ts.map +1 -0
- package/lib/test/resetPendingSegmentsToOp.spec.js +235 -0
- package/lib/test/resetPendingSegmentsToOp.spec.js.map +1 -0
- package/lib/test/revertibleFarm.spec.d.ts +6 -0
- package/lib/test/revertibleFarm.spec.d.ts.map +1 -0
- package/lib/test/revertibleFarm.spec.js +119 -0
- package/lib/test/revertibleFarm.spec.js.map +1 -0
- package/lib/test/revertibles.spec.d.ts +17 -0
- package/lib/test/revertibles.spec.d.ts.map +1 -0
- package/lib/test/revertibles.spec.js +381 -0
- package/lib/test/revertibles.spec.js.map +1 -0
- package/lib/test/segmentGroupCollection.spec.d.ts +6 -0
- package/lib/test/segmentGroupCollection.spec.d.ts.map +1 -0
- package/lib/test/segmentGroupCollection.spec.js +58 -0
- package/lib/test/segmentGroupCollection.spec.js.map +1 -0
- package/lib/test/snapshot.spec.d.ts +6 -0
- package/lib/test/snapshot.spec.d.ts.map +1 -0
- package/lib/test/snapshot.spec.js +176 -0
- package/lib/test/snapshot.spec.js.map +1 -0
- package/lib/test/snapshot.utils.d.ts +33 -0
- package/lib/test/snapshot.utils.d.ts.map +1 -0
- package/lib/test/snapshot.utils.js +104 -0
- package/lib/test/snapshot.utils.js.map +1 -0
- package/lib/test/snapshotlegacy.spec.d.ts +6 -0
- package/lib/test/snapshotlegacy.spec.d.ts.map +1 -0
- package/lib/test/snapshotlegacy.spec.js +137 -0
- package/lib/test/snapshotlegacy.spec.js.map +1 -0
- package/lib/test/sortedSegmentSet.spec.d.ts +6 -0
- package/lib/test/sortedSegmentSet.spec.d.ts.map +1 -0
- package/lib/test/sortedSegmentSet.spec.js +93 -0
- package/lib/test/sortedSegmentSet.spec.js.map +1 -0
- package/lib/test/testClient.d.ts +116 -0
- package/lib/test/testClient.d.ts.map +1 -0
- package/lib/test/testClient.js +430 -0
- package/lib/test/testClient.js.map +1 -0
- package/lib/test/testClientLogger.d.ts +44 -0
- package/lib/test/testClientLogger.d.ts.map +1 -0
- package/lib/test/testClientLogger.js +282 -0
- package/lib/test/testClientLogger.js.map +1 -0
- package/lib/test/testSerializer.d.ts +18 -0
- package/lib/test/testSerializer.d.ts.map +1 -0
- package/lib/test/testSerializer.js +29 -0
- package/lib/test/testSerializer.js.map +1 -0
- package/lib/test/testServer.d.ts +36 -0
- package/lib/test/testServer.d.ts.map +1 -0
- package/lib/test/testServer.js +133 -0
- package/lib/test/testServer.js.map +1 -0
- package/lib/test/testUtils.d.ts +77 -0
- package/lib/test/testUtils.d.ts.map +1 -0
- package/lib/test/testUtils.js +151 -0
- package/lib/test/testUtils.js.map +1 -0
- package/lib/test/text.d.ts +9 -0
- package/lib/test/text.d.ts.map +1 -0
- package/lib/test/text.js +71 -0
- package/lib/test/text.js.map +1 -0
- package/lib/test/tracking.spec.d.ts +6 -0
- package/lib/test/tracking.spec.d.ts.map +1 -0
- package/lib/test/tracking.spec.js +118 -0
- package/lib/test/tracking.spec.js.map +1 -0
- package/lib/test/types/validateMergeTreePrevious.generated.d.ts +2 -0
- package/lib/test/types/validateMergeTreePrevious.generated.d.ts.map +1 -0
- package/lib/test/types/validateMergeTreePrevious.generated.js +228 -0
- package/lib/test/types/validateMergeTreePrevious.generated.js.map +1 -0
- package/lib/test/wordUnitTests.spec.d.ts +6 -0
- package/lib/test/wordUnitTests.spec.d.ts.map +1 -0
- package/lib/test/wordUnitTests.spec.js +166 -0
- package/lib/test/wordUnitTests.spec.js.map +1 -0
- package/lib/{textSegment.d.mts → textSegment.d.ts} +4 -4
- package/lib/textSegment.d.ts.map +1 -0
- package/lib/{textSegment.mjs → textSegment.js} +2 -2
- package/lib/textSegment.js.map +1 -0
- package/lib/{zamboni.d.mts → zamboni.d.ts} +3 -3
- package/lib/zamboni.d.ts.map +1 -0
- package/lib/{zamboni.mjs → zamboni.js} +7 -6
- package/lib/zamboni.js.map +1 -0
- package/package.json +50 -57
- package/src/MergeTreeTextHelper.ts +4 -4
- package/src/attributionCollection.ts +1 -1
- package/src/attributionPolicy.ts +5 -5
- package/src/client.ts +50 -41
- package/src/collections/index.ts +2 -2
- package/src/endOfTreeSegment.ts +5 -5
- package/src/index.ts +20 -20
- package/src/localReference.ts +13 -7
- package/src/mergeTree.ts +53 -44
- package/src/mergeTreeDeltaCallback.ts +3 -8
- package/src/mergeTreeNodeWalk.ts +1 -1
- package/src/mergeTreeNodes.ts +21 -19
- package/src/mergeTreeTracking.ts +3 -3
- package/src/opBuilder.ts +3 -3
- package/src/partialLengths.ts +10 -10
- package/src/referencePositions.ts +4 -4
- package/src/revertibles.ts +14 -18
- package/src/segmentGroupCollection.ts +2 -2
- package/src/segmentPropertiesManager.ts +3 -3
- package/src/snapshotChunks.ts +4 -4
- package/src/snapshotLoader.ts +14 -11
- package/src/snapshotV1.ts +29 -9
- package/src/snapshotlegacy.ts +19 -5
- package/src/sortedSegmentSet.ts +8 -6
- package/src/textSegment.ts +3 -3
- package/src/zamboni.ts +7 -7
- package/tsconfig.cjs.json +7 -0
- package/tsconfig.json +2 -5
- package/api-extractor-esm.json +0 -17
- package/dist/test/beastTest.d.ts.map +0 -1
- package/dist/test/beastTest.js.map +0 -1
- package/dist/test/client.apis.d.ts.map +0 -1
- package/dist/test/client.apis.js.map +0 -1
- package/dist/test/wordUnitTests.d.ts.map +0 -1
- package/dist/test/wordUnitTests.js.map +0 -1
- package/lib/MergeTreeTextHelper.d.mts.map +0 -1
- package/lib/MergeTreeTextHelper.mjs.map +0 -1
- package/lib/attributionCollection.d.mts.map +0 -1
- package/lib/attributionCollection.mjs.map +0 -1
- package/lib/attributionPolicy.d.mts.map +0 -1
- package/lib/attributionPolicy.mjs.map +0 -1
- package/lib/client.d.mts.map +0 -1
- package/lib/client.mjs.map +0 -1
- package/lib/collections/index.d.mts.map +0 -1
- package/lib/collections/index.mjs +0 -7
- package/lib/collections/index.mjs.map +0 -1
- package/lib/collections/list.d.mts.map +0 -1
- package/lib/collections/list.mjs.map +0 -1
- package/lib/collections/rbTree.d.mts.map +0 -1
- package/lib/collections/rbTree.mjs.map +0 -1
- package/lib/constants.d.mts.map +0 -1
- package/lib/constants.mjs.map +0 -1
- package/lib/endOfTreeSegment.d.mts.map +0 -1
- package/lib/endOfTreeSegment.mjs.map +0 -1
- package/lib/index.d.mts.map +0 -1
- package/lib/index.mjs.map +0 -1
- package/lib/localReference.d.mts.map +0 -1
- package/lib/localReference.mjs.map +0 -1
- package/lib/merge-tree-beta.d.mts +0 -668
- package/lib/merge-tree-public.d.mts +0 -668
- package/lib/mergeTree.d.mts.map +0 -1
- package/lib/mergeTree.mjs.map +0 -1
- package/lib/mergeTreeDeltaCallback.d.mts.map +0 -1
- package/lib/mergeTreeDeltaCallback.mjs.map +0 -1
- package/lib/mergeTreeNodeWalk.d.mts.map +0 -1
- package/lib/mergeTreeNodeWalk.mjs.map +0 -1
- package/lib/mergeTreeNodes.d.mts.map +0 -1
- package/lib/mergeTreeNodes.mjs.map +0 -1
- package/lib/mergeTreeTracking.d.mts.map +0 -1
- package/lib/mergeTreeTracking.mjs.map +0 -1
- package/lib/opBuilder.mjs.map +0 -1
- package/lib/ops.d.mts.map +0 -1
- package/lib/ops.mjs.map +0 -1
- package/lib/ordinal.d.mts.map +0 -1
- package/lib/ordinal.mjs.map +0 -1
- package/lib/partialLengths.d.mts.map +0 -1
- package/lib/partialLengths.mjs.map +0 -1
- package/lib/properties.d.mts.map +0 -1
- package/lib/properties.mjs.map +0 -1
- package/lib/referencePositions.d.mts.map +0 -1
- package/lib/referencePositions.mjs.map +0 -1
- package/lib/revertibles.d.mts.map +0 -1
- package/lib/revertibles.mjs.map +0 -1
- package/lib/segmentGroupCollection.d.mts.map +0 -1
- package/lib/segmentGroupCollection.mjs.map +0 -1
- package/lib/segmentPropertiesManager.d.mts.map +0 -1
- package/lib/segmentPropertiesManager.mjs.map +0 -1
- package/lib/snapshotChunks.d.mts.map +0 -1
- package/lib/snapshotChunks.mjs.map +0 -1
- package/lib/snapshotLoader.d.mts.map +0 -1
- package/lib/snapshotLoader.mjs.map +0 -1
- package/lib/snapshotV1.d.mts.map +0 -1
- package/lib/snapshotV1.mjs.map +0 -1
- package/lib/snapshotlegacy.d.mts.map +0 -1
- package/lib/snapshotlegacy.mjs.map +0 -1
- package/lib/sortedSegmentSet.d.mts.map +0 -1
- package/lib/sortedSegmentSet.mjs.map +0 -1
- package/lib/sortedSet.d.mts.map +0 -1
- package/lib/sortedSet.mjs.map +0 -1
- package/lib/textSegment.d.mts.map +0 -1
- package/lib/textSegment.mjs.map +0 -1
- package/lib/zamboni.d.mts.map +0 -1
- package/lib/zamboni.mjs.map +0 -1
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,YAAY,EAAE,KAAK,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAC3F,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AACtE,OAAO,EAAE,yBAAyB,EAAe,MAAM,sCAAsC,CAAC;AAC9F,OAAO,EACN,sBAAsB,EACtB,sBAAsB,EACtB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAE5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAA4B,MAAM,iCAAiC,CAAC;AAGhG,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/client.js
CHANGED
|
@@ -9,18 +9,18 @@ const protocol_definitions_1 = require("@fluidframework/protocol-definitions");
|
|
|
9
9
|
const core_utils_1 = require("@fluidframework/core-utils");
|
|
10
10
|
const client_utils_1 = require("@fluid-internal/client-utils");
|
|
11
11
|
const telemetry_utils_1 = require("@fluidframework/telemetry-utils");
|
|
12
|
-
const
|
|
13
|
-
const
|
|
14
|
-
const
|
|
15
|
-
const
|
|
16
|
-
const
|
|
17
|
-
const
|
|
18
|
-
const
|
|
19
|
-
const
|
|
20
|
-
const
|
|
21
|
-
const
|
|
22
|
-
const
|
|
23
|
-
const
|
|
12
|
+
const index_js_1 = require("./collections/index.js");
|
|
13
|
+
const constants_js_1 = require("./constants.js");
|
|
14
|
+
const mergeTreeNodes_js_1 = require("./mergeTreeNodes.js");
|
|
15
|
+
const opBuilder_js_1 = require("./opBuilder.js");
|
|
16
|
+
const ops_js_1 = require("./ops.js");
|
|
17
|
+
const snapshotlegacy_js_1 = require("./snapshotlegacy.js");
|
|
18
|
+
const snapshotLoader_js_1 = require("./snapshotLoader.js");
|
|
19
|
+
const snapshotV1_js_1 = require("./snapshotV1.js");
|
|
20
|
+
const referencePositions_js_1 = require("./referencePositions.js");
|
|
21
|
+
const mergeTree_js_1 = require("./mergeTree.js");
|
|
22
|
+
const MergeTreeTextHelper_js_1 = require("./MergeTreeTextHelper.js");
|
|
23
|
+
const mergeTreeNodeWalk_js_1 = require("./mergeTreeNodeWalk.js");
|
|
24
24
|
function removeMoveInfo(segment) {
|
|
25
25
|
delete segment.movedSeq;
|
|
26
26
|
delete segment.movedSeqs;
|
|
@@ -33,16 +33,30 @@ function removeMoveInfo(segment) {
|
|
|
33
33
|
* @alpha
|
|
34
34
|
*/
|
|
35
35
|
class Client extends client_utils_1.TypedEventEmitter {
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
36
|
+
/**
|
|
37
|
+
* @param specToSegment - Rehydrates a segment from its JSON representation
|
|
38
|
+
* @param logger - Telemetry logger for diagnostics
|
|
39
|
+
* @param options - Options for this client. See {@link IMergeTreeOptions} for details.
|
|
40
|
+
* @param getMinInFlightRefSeq - Upon applying a message (see {@link Client.applyMsg}), client purges collab-window information which
|
|
41
|
+
* is no longer necessary based on that message's minimum sequence number.
|
|
42
|
+
* However, if the user of this client has in-flight messages which refer to positions in this Client,
|
|
43
|
+
* they may wish to preserve additional merge information.
|
|
44
|
+
* The effective minimum sequence number will be the minimum of the message's minimumSequenceNumber and the result of this function.
|
|
45
|
+
* If this function returns undefined, the message's minimumSequenceNumber will be used.
|
|
46
|
+
*
|
|
47
|
+
* @privateRemarks
|
|
48
|
+
* - Passing specToSegment would be unnecessary if Client were merged with SharedSegmentSequence
|
|
49
|
+
* - AB#6866 tracks a more unified approach to collab window min seq handling.
|
|
50
|
+
*/
|
|
51
|
+
constructor(specToSegment, logger, options, getMinInFlightRefSeq = () => undefined) {
|
|
39
52
|
super();
|
|
40
53
|
this.specToSegment = specToSegment;
|
|
41
54
|
this.logger = logger;
|
|
42
|
-
this.
|
|
55
|
+
this.getMinInFlightRefSeq = getMinInFlightRefSeq;
|
|
56
|
+
this.clientNameToIds = new index_js_1.RedBlackTree(mergeTreeNodes_js_1.compareStrings);
|
|
43
57
|
this.shortClientIdMap = [];
|
|
44
58
|
this.lastNormalizationRefSeq = 0;
|
|
45
|
-
this._mergeTree = new
|
|
59
|
+
this._mergeTree = new mergeTree_js_1.MergeTree(options);
|
|
46
60
|
this._mergeTree.mergeTreeDeltaCallback = (opArgs, deltaArgs) => {
|
|
47
61
|
this.emit("delta", opArgs, deltaArgs, this);
|
|
48
62
|
};
|
|
@@ -79,7 +93,7 @@ class Client extends client_utils_1.TypedEventEmitter {
|
|
|
79
93
|
* @returns The annotate op if valid, otherwise undefined
|
|
80
94
|
*/
|
|
81
95
|
annotateMarker(marker, props) {
|
|
82
|
-
const annotateOp = (0,
|
|
96
|
+
const annotateOp = (0, opBuilder_js_1.createAnnotateMarkerOp)(marker, props);
|
|
83
97
|
this.applyAnnotateRangeOp({ op: annotateOp });
|
|
84
98
|
return annotateOp;
|
|
85
99
|
}
|
|
@@ -91,7 +105,7 @@ class Client extends client_utils_1.TypedEventEmitter {
|
|
|
91
105
|
* @returns The annotate op if valid, otherwise undefined
|
|
92
106
|
*/
|
|
93
107
|
annotateRangeLocal(start, end, props) {
|
|
94
|
-
const annotateOp = (0,
|
|
108
|
+
const annotateOp = (0, opBuilder_js_1.createAnnotateRangeOp)(start, end, props);
|
|
95
109
|
this.applyAnnotateRangeOp({ op: annotateOp });
|
|
96
110
|
return annotateOp;
|
|
97
111
|
}
|
|
@@ -102,7 +116,7 @@ class Client extends client_utils_1.TypedEventEmitter {
|
|
|
102
116
|
* @param end - The exclusive end of the range to remove
|
|
103
117
|
*/
|
|
104
118
|
removeRangeLocal(start, end) {
|
|
105
|
-
const removeOp = (0,
|
|
119
|
+
const removeOp = (0, opBuilder_js_1.createRemoveRangeOp)(start, end);
|
|
106
120
|
this.applyRemoveRangeOp({ op: removeOp });
|
|
107
121
|
return removeOp;
|
|
108
122
|
}
|
|
@@ -115,7 +129,7 @@ class Client extends client_utils_1.TypedEventEmitter {
|
|
|
115
129
|
*/
|
|
116
130
|
// eslint-disable-next-line import/no-deprecated
|
|
117
131
|
obliterateRangeLocal(start, end) {
|
|
118
|
-
const obliterateOp = (0,
|
|
132
|
+
const obliterateOp = (0, opBuilder_js_1.createObliterateRangeOp)(start, end);
|
|
119
133
|
this.applyObliterateRangeOp({ op: obliterateOp });
|
|
120
134
|
return obliterateOp;
|
|
121
135
|
}
|
|
@@ -127,7 +141,7 @@ class Client extends client_utils_1.TypedEventEmitter {
|
|
|
127
141
|
if (segment.cachedLength <= 0) {
|
|
128
142
|
return undefined;
|
|
129
143
|
}
|
|
130
|
-
const insertOp = (0,
|
|
144
|
+
const insertOp = (0, opBuilder_js_1.createInsertSegmentOp)(pos, segment);
|
|
131
145
|
if (this.applyInsertOp({ op: insertOp })) {
|
|
132
146
|
return insertOp;
|
|
133
147
|
}
|
|
@@ -139,10 +153,10 @@ class Client extends client_utils_1.TypedEventEmitter {
|
|
|
139
153
|
*/
|
|
140
154
|
insertAtReferencePositionLocal(refPos, segment) {
|
|
141
155
|
const pos = this._mergeTree.referencePositionToLocalPosition(refPos, this.getCurrentSeq(), this.getClientId());
|
|
142
|
-
if (pos ===
|
|
156
|
+
if (pos === referencePositions_js_1.DetachedReferencePosition) {
|
|
143
157
|
return undefined;
|
|
144
158
|
}
|
|
145
|
-
const op = (0,
|
|
159
|
+
const op = (0, opBuilder_js_1.createInsertSegmentOp)(pos, segment);
|
|
146
160
|
if (this.applyInsertOp({ op })) {
|
|
147
161
|
return op;
|
|
148
162
|
}
|
|
@@ -151,7 +165,7 @@ class Client extends client_utils_1.TypedEventEmitter {
|
|
|
151
165
|
this._mergeTree.mapRange(handler, this.getCurrentSeq(), this.getClientId(), accum, start, end, splitRange);
|
|
152
166
|
}
|
|
153
167
|
walkAllSegments(action, accum) {
|
|
154
|
-
return (0,
|
|
168
|
+
return (0, mergeTreeNodeWalk_js_1.walkAllChildSegments)(this._mergeTree.root, accum === undefined ? action : (seg) => action(seg, accum));
|
|
155
169
|
}
|
|
156
170
|
/**
|
|
157
171
|
* Serializes the data required for garbage collection. The IFluidHandles stored in all segments that haven't
|
|
@@ -161,11 +175,11 @@ class Client extends client_utils_1.TypedEventEmitter {
|
|
|
161
175
|
serializeGCData(handle, handleCollectingSerializer) {
|
|
162
176
|
let localInserts = 0;
|
|
163
177
|
let localRemoves = 0;
|
|
164
|
-
(0,
|
|
165
|
-
if (seg.seq ===
|
|
178
|
+
(0, mergeTreeNodeWalk_js_1.walkAllChildSegments)(this._mergeTree.root, (seg) => {
|
|
179
|
+
if (seg.seq === constants_js_1.UnassignedSequenceNumber) {
|
|
166
180
|
localInserts++;
|
|
167
181
|
}
|
|
168
|
-
if (seg.removedSeq ===
|
|
182
|
+
if (seg.removedSeq === constants_js_1.UnassignedSequenceNumber) {
|
|
169
183
|
localRemoves++;
|
|
170
184
|
}
|
|
171
185
|
// Only serialize segments that have not been removed.
|
|
@@ -220,6 +234,11 @@ class Client extends client_utils_1.TypedEventEmitter {
|
|
|
220
234
|
}
|
|
221
235
|
/**
|
|
222
236
|
* Resolves a `ReferencePosition` into a character position using this client's perspective.
|
|
237
|
+
*
|
|
238
|
+
* Reference positions that point to a character that has been removed will
|
|
239
|
+
* always return the position of the nearest non-removed character, regardless
|
|
240
|
+
* of {@link ReferenceType}. To handle this case specifically, one may wish
|
|
241
|
+
* to look at the segment returned by {@link ReferencePosition.getSegment}.
|
|
223
242
|
*/
|
|
224
243
|
localReferencePositionToPosition(lref) {
|
|
225
244
|
return this._mergeTree.referencePositionToLocalPosition(lref);
|
|
@@ -243,7 +262,7 @@ class Client extends client_utils_1.TypedEventEmitter {
|
|
|
243
262
|
this._mergeTree.rollback(op, localOpMetadata);
|
|
244
263
|
}
|
|
245
264
|
applyObliterateRangeOp(opArgs) {
|
|
246
|
-
(0, core_utils_1.assert)(opArgs.op.type ===
|
|
265
|
+
(0, core_utils_1.assert)(opArgs.op.type === ops_js_1.MergeTreeDeltaType.OBLITERATE, 0x866 /* Unexpected op type on range obliterate! */);
|
|
247
266
|
const op = opArgs.op;
|
|
248
267
|
const clientArgs = this.getClientSequenceArgs(opArgs);
|
|
249
268
|
const range = this.getValidOpRange(op, clientArgs);
|
|
@@ -254,7 +273,7 @@ class Client extends client_utils_1.TypedEventEmitter {
|
|
|
254
273
|
* @param opArgs - The ops args for the op
|
|
255
274
|
*/
|
|
256
275
|
applyRemoveRangeOp(opArgs) {
|
|
257
|
-
(0, core_utils_1.assert)(opArgs.op.type ===
|
|
276
|
+
(0, core_utils_1.assert)(opArgs.op.type === ops_js_1.MergeTreeDeltaType.REMOVE, 0x02d /* "Unexpected op type on range remove!" */);
|
|
258
277
|
const op = opArgs.op;
|
|
259
278
|
const clientArgs = this.getClientSequenceArgs(opArgs);
|
|
260
279
|
const range = this.getValidOpRange(op, clientArgs);
|
|
@@ -265,7 +284,7 @@ class Client extends client_utils_1.TypedEventEmitter {
|
|
|
265
284
|
* @param opArgs - The ops args for the op
|
|
266
285
|
*/
|
|
267
286
|
applyAnnotateRangeOp(opArgs) {
|
|
268
|
-
(0, core_utils_1.assert)(opArgs.op.type ===
|
|
287
|
+
(0, core_utils_1.assert)(opArgs.op.type === ops_js_1.MergeTreeDeltaType.ANNOTATE, 0x02e /* "Unexpected op type on range annotate!" */);
|
|
269
288
|
const op = opArgs.op;
|
|
270
289
|
const clientArgs = this.getClientSequenceArgs(opArgs);
|
|
271
290
|
const range = this.getValidOpRange(op, clientArgs);
|
|
@@ -277,7 +296,7 @@ class Client extends client_utils_1.TypedEventEmitter {
|
|
|
277
296
|
* @returns True if the insert was applied. False if it could not be.
|
|
278
297
|
*/
|
|
279
298
|
applyInsertOp(opArgs) {
|
|
280
|
-
(0, core_utils_1.assert)(opArgs.op.type ===
|
|
299
|
+
(0, core_utils_1.assert)(opArgs.op.type === ops_js_1.MergeTreeDeltaType.INSERT, 0x02f /* "Unexpected op type on range insert!" */);
|
|
281
300
|
const op = opArgs.op;
|
|
282
301
|
const clientArgs = this.getClientSequenceArgs(opArgs);
|
|
283
302
|
const range = this.getValidOpRange(op, clientArgs);
|
|
@@ -314,17 +333,17 @@ class Client extends client_utils_1.TypedEventEmitter {
|
|
|
314
333
|
if (start === undefined ||
|
|
315
334
|
start < 0 ||
|
|
316
335
|
start > length ||
|
|
317
|
-
(start === length && op.type !==
|
|
336
|
+
(start === length && op.type !== ops_js_1.MergeTreeDeltaType.INSERT)) {
|
|
318
337
|
invalidPositions.push("start");
|
|
319
338
|
}
|
|
320
339
|
// Validate end if not insert, or insert has end
|
|
321
340
|
//
|
|
322
|
-
if (op.type !==
|
|
341
|
+
if (op.type !== ops_js_1.MergeTreeDeltaType.INSERT || end !== undefined) {
|
|
323
342
|
if (end === undefined || end <= start) {
|
|
324
343
|
invalidPositions.push("end");
|
|
325
344
|
}
|
|
326
345
|
}
|
|
327
|
-
if (op.type ===
|
|
346
|
+
if (op.type === ops_js_1.MergeTreeDeltaType.OBLITERATE && end !== undefined && end > length) {
|
|
328
347
|
invalidPositions.push("end");
|
|
329
348
|
}
|
|
330
349
|
if (invalidPositions.length > 0) {
|
|
@@ -379,7 +398,7 @@ class Client extends client_utils_1.TypedEventEmitter {
|
|
|
379
398
|
return this.getClientSequenceArgsForMessage(opArgs.sequencedMessage);
|
|
380
399
|
}
|
|
381
400
|
ackPendingSegment(opArgs) {
|
|
382
|
-
if (opArgs.op.type ===
|
|
401
|
+
if (opArgs.op.type === ops_js_1.MergeTreeDeltaType.GROUP) {
|
|
383
402
|
for (const memberOp of opArgs.op.ops) {
|
|
384
403
|
this._mergeTree.ackPendingSegment({
|
|
385
404
|
groupOp: opArgs.op,
|
|
@@ -453,54 +472,54 @@ class Client extends client_utils_1.TypedEventEmitter {
|
|
|
453
472
|
const segmentPosition = this.findReconnectionPosition(segment, segmentGroup.localSeq);
|
|
454
473
|
let newOp;
|
|
455
474
|
switch (resetOp.type) {
|
|
456
|
-
case
|
|
475
|
+
case ops_js_1.MergeTreeDeltaType.ANNOTATE:
|
|
457
476
|
(0, core_utils_1.assert)(segment.propertyManager?.hasPendingProperties() === true, 0x036 /* "Segment has no pending properties" */);
|
|
458
477
|
// if the segment has been removed or obliterated, there's no need to send the annotate op
|
|
459
478
|
// unless the remove was local, in which case the annotate must have come
|
|
460
479
|
// before the remove
|
|
461
480
|
if ((segment.removedSeq === undefined ||
|
|
462
481
|
(segment.localRemovedSeq !== undefined &&
|
|
463
|
-
segment.removedSeq ===
|
|
482
|
+
segment.removedSeq === constants_js_1.UnassignedSequenceNumber)) &&
|
|
464
483
|
(segment.movedSeq === undefined ||
|
|
465
484
|
(segment.localMovedSeq !== undefined &&
|
|
466
|
-
segment.movedSeq ===
|
|
467
|
-
newOp = (0,
|
|
485
|
+
segment.movedSeq === constants_js_1.UnassignedSequenceNumber))) {
|
|
486
|
+
newOp = (0, opBuilder_js_1.createAnnotateRangeOp)(segmentPosition, segmentPosition + segment.cachedLength, resetOp.props);
|
|
468
487
|
}
|
|
469
488
|
break;
|
|
470
|
-
case
|
|
471
|
-
(0, core_utils_1.assert)(segment.seq ===
|
|
489
|
+
case ops_js_1.MergeTreeDeltaType.INSERT:
|
|
490
|
+
(0, core_utils_1.assert)(segment.seq === constants_js_1.UnassignedSequenceNumber, 0x037 /* "Segment already has assigned sequence number" */);
|
|
472
491
|
let segInsertOp = segment;
|
|
473
492
|
if (typeof resetOp.seg === "object" && resetOp.seg.props !== undefined) {
|
|
474
493
|
segInsertOp = segment.clone();
|
|
475
494
|
segInsertOp.properties = resetOp.seg.props;
|
|
476
495
|
}
|
|
477
|
-
if (segment.movedSeq !==
|
|
496
|
+
if (segment.movedSeq !== constants_js_1.UnassignedSequenceNumber) {
|
|
478
497
|
removeMoveInfo(segment);
|
|
479
498
|
}
|
|
480
|
-
newOp = (0,
|
|
499
|
+
newOp = (0, opBuilder_js_1.createInsertSegmentOp)(segmentPosition, segInsertOp);
|
|
481
500
|
break;
|
|
482
|
-
case
|
|
501
|
+
case ops_js_1.MergeTreeDeltaType.REMOVE:
|
|
483
502
|
if (segment.localRemovedSeq !== undefined &&
|
|
484
|
-
segment.removedSeq ===
|
|
503
|
+
segment.removedSeq === constants_js_1.UnassignedSequenceNumber &&
|
|
485
504
|
(segment.movedSeq === undefined ||
|
|
486
505
|
(segment.localMovedSeq !== undefined &&
|
|
487
|
-
segment.movedSeq ===
|
|
488
|
-
newOp = (0,
|
|
506
|
+
segment.movedSeq === constants_js_1.UnassignedSequenceNumber))) {
|
|
507
|
+
newOp = (0, opBuilder_js_1.createRemoveRangeOp)(segmentPosition, segmentPosition + segment.cachedLength);
|
|
489
508
|
}
|
|
490
509
|
break;
|
|
491
|
-
case
|
|
510
|
+
case ops_js_1.MergeTreeDeltaType.OBLITERATE:
|
|
492
511
|
if (segment.localMovedSeq !== undefined &&
|
|
493
|
-
segment.movedSeq ===
|
|
512
|
+
segment.movedSeq === constants_js_1.UnassignedSequenceNumber &&
|
|
494
513
|
(segment.removedSeq === undefined ||
|
|
495
514
|
(segment.localRemovedSeq !== undefined &&
|
|
496
|
-
segment.removedSeq ===
|
|
497
|
-
newOp = (0,
|
|
515
|
+
segment.removedSeq === constants_js_1.UnassignedSequenceNumber))) {
|
|
516
|
+
newOp = (0, opBuilder_js_1.createObliterateRangeOp)(segmentPosition, segmentPosition + segment.cachedLength);
|
|
498
517
|
}
|
|
499
518
|
break;
|
|
500
519
|
default:
|
|
501
520
|
throw new Error(`Invalid op type`);
|
|
502
521
|
}
|
|
503
|
-
if (newOp && resetOp.type ===
|
|
522
|
+
if (newOp && resetOp.type === ops_js_1.MergeTreeDeltaType.OBLITERATE) {
|
|
504
523
|
segment.segmentGroups.enqueue(obliterateSegmentGroup);
|
|
505
524
|
const first = opList[0];
|
|
506
525
|
if (!!first && first.pos2 !== undefined) {
|
|
@@ -522,7 +541,7 @@ class Client extends client_utils_1.TypedEventEmitter {
|
|
|
522
541
|
opList.push(newOp);
|
|
523
542
|
}
|
|
524
543
|
}
|
|
525
|
-
if (resetOp.type ===
|
|
544
|
+
if (resetOp.type === ops_js_1.MergeTreeDeltaType.OBLITERATE &&
|
|
526
545
|
obliterateSegmentGroup.segments.length > 0) {
|
|
527
546
|
this._mergeTree.pendingSegments.push(obliterateSegmentGroup);
|
|
528
547
|
}
|
|
@@ -533,19 +552,19 @@ class Client extends client_utils_1.TypedEventEmitter {
|
|
|
533
552
|
const msg = opArgs.sequencedMessage;
|
|
534
553
|
this.getOrAddShortClientIdFromMessage(msg);
|
|
535
554
|
switch (op.type) {
|
|
536
|
-
case
|
|
555
|
+
case ops_js_1.MergeTreeDeltaType.INSERT:
|
|
537
556
|
this.applyInsertOp(opArgs);
|
|
538
557
|
break;
|
|
539
|
-
case
|
|
558
|
+
case ops_js_1.MergeTreeDeltaType.REMOVE:
|
|
540
559
|
this.applyRemoveRangeOp(opArgs);
|
|
541
560
|
break;
|
|
542
|
-
case
|
|
561
|
+
case ops_js_1.MergeTreeDeltaType.ANNOTATE:
|
|
543
562
|
this.applyAnnotateRangeOp(opArgs);
|
|
544
563
|
break;
|
|
545
|
-
case
|
|
564
|
+
case ops_js_1.MergeTreeDeltaType.OBLITERATE:
|
|
546
565
|
this.applyObliterateRangeOp(opArgs);
|
|
547
566
|
break;
|
|
548
|
-
case
|
|
567
|
+
case ops_js_1.MergeTreeDeltaType.GROUP: {
|
|
549
568
|
for (const memberOp of op.ops) {
|
|
550
569
|
this.applyRemoteOp({
|
|
551
570
|
op: memberOp,
|
|
@@ -559,35 +578,26 @@ class Client extends client_utils_1.TypedEventEmitter {
|
|
|
559
578
|
break;
|
|
560
579
|
}
|
|
561
580
|
}
|
|
562
|
-
// eslint-disable-next-line import/no-deprecated
|
|
563
581
|
applyStashedOp(op) {
|
|
564
|
-
// eslint-disable-next-line import/no-deprecated
|
|
565
|
-
let metadata;
|
|
566
|
-
const stashed = true;
|
|
567
582
|
switch (op.type) {
|
|
568
|
-
case
|
|
569
|
-
this.applyInsertOp({ op
|
|
570
|
-
metadata = this.peekPendingSegmentGroups();
|
|
583
|
+
case ops_js_1.MergeTreeDeltaType.INSERT:
|
|
584
|
+
this.applyInsertOp({ op });
|
|
571
585
|
break;
|
|
572
|
-
case
|
|
573
|
-
this.applyRemoveRangeOp({ op
|
|
574
|
-
metadata = this.peekPendingSegmentGroups();
|
|
586
|
+
case ops_js_1.MergeTreeDeltaType.REMOVE:
|
|
587
|
+
this.applyRemoveRangeOp({ op });
|
|
575
588
|
break;
|
|
576
|
-
case
|
|
577
|
-
this.applyAnnotateRangeOp({ op
|
|
578
|
-
metadata = this.peekPendingSegmentGroups();
|
|
589
|
+
case ops_js_1.MergeTreeDeltaType.ANNOTATE:
|
|
590
|
+
this.applyAnnotateRangeOp({ op });
|
|
579
591
|
break;
|
|
580
|
-
case
|
|
592
|
+
case ops_js_1.MergeTreeDeltaType.OBLITERATE:
|
|
581
593
|
this.applyObliterateRangeOp({ op });
|
|
582
|
-
metadata = this.peekPendingSegmentGroups();
|
|
583
594
|
break;
|
|
584
|
-
case
|
|
585
|
-
|
|
595
|
+
case ops_js_1.MergeTreeDeltaType.GROUP:
|
|
596
|
+
op.ops.map((o) => this.applyStashedOp(o));
|
|
597
|
+
break;
|
|
586
598
|
default:
|
|
587
599
|
(0, core_utils_1.unreachableCase)(op, "unrecognized op type");
|
|
588
600
|
}
|
|
589
|
-
(0, core_utils_1.assert)(!!metadata, 0x2db /* "Applying op must generate a pending segment" */);
|
|
590
|
-
return metadata;
|
|
591
601
|
}
|
|
592
602
|
applyMsg(msg, local = false) {
|
|
593
603
|
// Ensure client ID is registered
|
|
@@ -605,7 +615,8 @@ class Client extends client_utils_1.TypedEventEmitter {
|
|
|
605
615
|
this.applyRemoteOp(opArgs);
|
|
606
616
|
}
|
|
607
617
|
}
|
|
608
|
-
this.
|
|
618
|
+
const min = Math.min(this.getMinInFlightRefSeq() ?? Number.POSITIVE_INFINITY, msg.minimumSequenceNumber);
|
|
619
|
+
this.updateSeqNumbers(min, msg.sequenceNumber);
|
|
609
620
|
}
|
|
610
621
|
updateSeqNumbers(min, seq) {
|
|
611
622
|
const collabWindow = this.getCollabWindow();
|
|
@@ -643,7 +654,7 @@ class Client extends client_utils_1.TypedEventEmitter {
|
|
|
643
654
|
if (segmentGroup.length === 0) {
|
|
644
655
|
// sometimes we rebase to an empty op
|
|
645
656
|
// eslint-disable-next-line import/no-deprecated
|
|
646
|
-
return (0,
|
|
657
|
+
return (0, opBuilder_js_1.createGroupOp)();
|
|
647
658
|
}
|
|
648
659
|
firstGroup = segmentGroup[0];
|
|
649
660
|
}
|
|
@@ -661,7 +672,7 @@ class Client extends client_utils_1.TypedEventEmitter {
|
|
|
661
672
|
this.lastNormalizationRefSeq = rebaseTo;
|
|
662
673
|
}
|
|
663
674
|
const opList = [];
|
|
664
|
-
if (resetOp.type ===
|
|
675
|
+
if (resetOp.type === ops_js_1.MergeTreeDeltaType.GROUP) {
|
|
665
676
|
if (Array.isArray(segmentGroup)) {
|
|
666
677
|
(0, core_utils_1.assert)(resetOp.ops.length === segmentGroup.length, 0x03a /* "Number of ops in 'resetOp' must match the number of segment groups provided." */);
|
|
667
678
|
for (let i = 0; i < resetOp.ops.length; i++) {
|
|
@@ -676,16 +687,16 @@ class Client extends client_utils_1.TypedEventEmitter {
|
|
|
676
687
|
}
|
|
677
688
|
}
|
|
678
689
|
else {
|
|
679
|
-
(0, core_utils_1.assert)(resetOp.type !==
|
|
690
|
+
(0, core_utils_1.assert)(resetOp.type !== ops_js_1.MergeTreeDeltaType.GROUP, 0x03c /* "Reset op has 'group' delta type!" */);
|
|
680
691
|
(0, core_utils_1.assert)(!Array.isArray(segmentGroup), 0x03d /* "segmentGroup is array rather than singleton!" */);
|
|
681
692
|
opList.push(...this.resetPendingDeltaToOps(resetOp, segmentGroup));
|
|
682
693
|
}
|
|
683
694
|
// eslint-disable-next-line import/no-deprecated
|
|
684
|
-
return opList.length === 1 ? opList[0] : (0,
|
|
695
|
+
return opList.length === 1 ? opList[0] : (0, opBuilder_js_1.createGroupOp)(...opList);
|
|
685
696
|
}
|
|
686
697
|
// eslint-disable-next-line import/no-deprecated
|
|
687
698
|
createTextHelper() {
|
|
688
|
-
return new
|
|
699
|
+
return new MergeTreeTextHelper_js_1.MergeTreeTextHelper(this._mergeTree);
|
|
689
700
|
}
|
|
690
701
|
summarize(runtime, handle, serializer, catchUpMsgs) {
|
|
691
702
|
const deltaManager = runtime.deltaManager;
|
|
@@ -701,23 +712,23 @@ class Client extends client_utils_1.TypedEventEmitter {
|
|
|
701
712
|
// (See https://github.com/microsoft/FluidFramework/issues/84)
|
|
702
713
|
if (this._mergeTree.options?.newMergeTreeSnapshotFormat === true) {
|
|
703
714
|
(0, core_utils_1.assert)(catchUpMsgs === undefined || catchUpMsgs.length === 0, 0x03f /* "New format should not emit catchup ops" */);
|
|
704
|
-
const snap = new
|
|
715
|
+
const snap = new snapshotV1_js_1.SnapshotV1(this._mergeTree, this.logger, (id) => this.getLongClientId(id));
|
|
705
716
|
snap.extractSync();
|
|
706
717
|
return snap.emit(serializer, handle);
|
|
707
718
|
}
|
|
708
719
|
else {
|
|
709
|
-
const snap = new
|
|
720
|
+
const snap = new snapshotlegacy_js_1.SnapshotLegacy(this._mergeTree, this.logger);
|
|
710
721
|
snap.extractSync();
|
|
711
722
|
return snap.emit(catchUpMsgs, serializer, handle);
|
|
712
723
|
}
|
|
713
724
|
}
|
|
714
725
|
async load(runtime, storage, serializer) {
|
|
715
|
-
const loader = new
|
|
726
|
+
const loader = new snapshotLoader_js_1.SnapshotLoader(runtime, this, this._mergeTree, this.logger, serializer);
|
|
716
727
|
return loader.initialize(storage);
|
|
717
728
|
}
|
|
718
729
|
getLocalSequenceNumber() {
|
|
719
730
|
const segWindow = this.getCollabWindow();
|
|
720
|
-
return segWindow.collaborating ?
|
|
731
|
+
return segWindow.collaborating ? constants_js_1.UnassignedSequenceNumber : constants_js_1.UniversalSequenceNumber;
|
|
721
732
|
}
|
|
722
733
|
// eslint-disable-next-line import/no-deprecated
|
|
723
734
|
localTransaction(groupOp) {
|
|
@@ -727,16 +738,16 @@ class Client extends client_utils_1.TypedEventEmitter {
|
|
|
727
738
|
groupOp,
|
|
728
739
|
};
|
|
729
740
|
switch (op.type) {
|
|
730
|
-
case
|
|
741
|
+
case ops_js_1.MergeTreeDeltaType.INSERT:
|
|
731
742
|
this.applyInsertOp(opArgs);
|
|
732
743
|
break;
|
|
733
|
-
case
|
|
744
|
+
case ops_js_1.MergeTreeDeltaType.ANNOTATE:
|
|
734
745
|
this.applyAnnotateRangeOp(opArgs);
|
|
735
746
|
break;
|
|
736
|
-
case
|
|
747
|
+
case ops_js_1.MergeTreeDeltaType.REMOVE:
|
|
737
748
|
this.applyRemoveRangeOp(opArgs);
|
|
738
749
|
break;
|
|
739
|
-
case
|
|
750
|
+
case ops_js_1.MergeTreeDeltaType.OBLITERATE:
|
|
740
751
|
this.applyObliterateRangeOp(opArgs);
|
|
741
752
|
break;
|
|
742
753
|
default:
|