@fluidframework/merge-tree 0.59.2000-63294 → 0.59.3000-66610
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 +0 -1
- package/dist/client.d.ts +4 -2
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +39 -33
- package/dist/client.js.map +1 -1
- package/dist/collections.d.ts.map +1 -1
- package/dist/collections.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/localReference.d.ts +58 -2
- package/dist/localReference.d.ts.map +1 -1
- package/dist/localReference.js +60 -35
- package/dist/localReference.js.map +1 -1
- package/dist/mergeTree.d.ts +25 -21
- package/dist/mergeTree.d.ts.map +1 -1
- package/dist/mergeTree.js +72 -79
- package/dist/mergeTree.js.map +1 -1
- package/dist/partialLengths.js +10 -10
- package/dist/partialLengths.js.map +1 -1
- package/dist/referencePositions.d.ts +54 -0
- package/dist/referencePositions.d.ts.map +1 -0
- package/dist/referencePositions.js +90 -0
- package/dist/referencePositions.js.map +1 -0
- package/dist/segmentGroupCollection.js +1 -1
- package/dist/segmentGroupCollection.js.map +1 -1
- package/dist/segmentPropertiesManager.js +5 -5
- package/dist/segmentPropertiesManager.js.map +1 -1
- package/dist/snapshotChunks.js.map +1 -1
- package/dist/snapshotLoader.d.ts.map +1 -1
- package/dist/snapshotLoader.js +9 -9
- package/dist/snapshotLoader.js.map +1 -1
- package/dist/snapshotV1.js +7 -7
- package/dist/snapshotV1.js.map +1 -1
- package/dist/snapshotlegacy.js +5 -5
- package/dist/snapshotlegacy.js.map +1 -1
- package/dist/sortedSegmentSet.d.ts.map +1 -1
- package/dist/sortedSegmentSet.js.map +1 -1
- package/lib/client.d.ts +4 -2
- package/lib/client.d.ts.map +1 -1
- package/lib/client.js +10 -4
- package/lib/client.js.map +1 -1
- package/lib/collections.d.ts.map +1 -1
- package/lib/collections.js.map +1 -1
- package/lib/index.d.ts +1 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +1 -0
- package/lib/index.js.map +1 -1
- package/lib/localReference.d.ts +58 -2
- package/lib/localReference.d.ts.map +1 -1
- package/lib/localReference.js +54 -29
- package/lib/localReference.js.map +1 -1
- package/lib/mergeTree.d.ts +25 -21
- package/lib/mergeTree.d.ts.map +1 -1
- package/lib/mergeTree.js +39 -42
- package/lib/mergeTree.js.map +1 -1
- package/lib/referencePositions.d.ts +54 -0
- package/lib/referencePositions.d.ts.map +1 -0
- package/lib/referencePositions.js +78 -0
- package/lib/referencePositions.js.map +1 -0
- package/lib/segmentPropertiesManager.js.map +1 -1
- package/lib/snapshotChunks.js.map +1 -1
- package/lib/snapshotLoader.d.ts.map +1 -1
- package/lib/snapshotLoader.js.map +1 -1
- package/lib/snapshotV1.js.map +1 -1
- package/lib/snapshotlegacy.js.map +1 -1
- package/lib/sortedSegmentSet.d.ts.map +1 -1
- package/lib/sortedSegmentSet.js.map +1 -1
- package/package.json +83 -14
- package/src/client.ts +19 -17
- package/src/collections.ts +26 -52
- package/src/index.ts +1 -0
- package/src/localReference.ts +69 -36
- package/src/mergeTree.ts +71 -90
- package/src/referencePositions.ts +122 -0
- package/src/snapshotChunks.ts +8 -8
- package/src/snapshotLoader.ts +4 -4
- package/src/snapshotV1.ts +1 -1
- package/src/snapshotlegacy.ts +1 -1
- package/src/sortedSegmentSet.ts +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"localReference.js","sourceRoot":"","sources":["../src/localReference.ts"],"names":[],"mappings":"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","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { assert } from \"@fluidframework/common-utils\";\nimport { Client } from \"./client\";\nimport {\n ISegment,\n ReferencePosition,\n refGetRangeLabels,\n refGetTileLabels,\n refHasRangeLabel,\n refHasTileLabel,\n} from \"./mergeTree\";\nimport { ICombiningOp, ReferenceType } from \"./ops\";\nimport { addProperties, PropertySet } from \"./properties\";\n\nexport class LocalReference implements ReferencePosition {\n public static readonly DetachedPosition: number = -1;\n\n public properties: PropertySet | undefined;\n public pairedRef?: LocalReference;\n public segment: ISegment | undefined;\n\n constructor(\n private readonly client: Client,\n initSegment: ISegment,\n public offset = 0,\n public refType = ReferenceType.Simple,\n ) {\n this.segment = initSegment;\n }\n\n public min(b: LocalReference) {\n if (this.compare(b) < 0) {\n return this;\n } else {\n return b;\n }\n }\n\n public max(b: LocalReference) {\n if (this.compare(b) > 0) {\n return this;\n } else {\n return b;\n }\n }\n\n public compare(b: LocalReference) {\n if (this.segment === b.segment) {\n return this.offset - b.offset;\n } else {\n if (this.segment === undefined\n || (b.segment !== undefined &&\n this.segment.ordinal < b.segment.ordinal)) {\n return -1;\n } else {\n return 1;\n }\n }\n }\n\n public toPosition() {\n if (this.segment && this.segment.parent) {\n return this.getOffset() + this.client.getPosition(this.segment);\n } else {\n return LocalReference.DetachedPosition;\n }\n }\n\n public hasTileLabels() {\n return !!this.getTileLabels();\n }\n\n public hasRangeLabels() {\n return !!this.getRangeLabels();\n }\n\n public hasTileLabel(label: string): boolean {\n return refHasTileLabel(this, label);\n }\n\n public hasRangeLabel(label: string): boolean {\n return refHasRangeLabel(this, label);\n }\n\n public getTileLabels(): string[] | undefined {\n return refGetTileLabels(this);\n }\n\n public getRangeLabels(): string[] | undefined {\n return refGetRangeLabels(this);\n }\n\n public isLeaf() {\n return false;\n }\n\n public addProperties(newProps: PropertySet, op?: ICombiningOp) {\n this.properties = addProperties(this.properties, newProps, op);\n }\n\n public getClient() {\n return this.client;\n }\n\n public getSegment() {\n return this.segment;\n }\n\n public getOffset() {\n if (this.segment?.removedSeq) {\n return 0;\n }\n return this.offset;\n }\n\n public getProperties() {\n return this.properties;\n }\n}\n\ninterface IRefsAtOffset {\n before?: LocalReference[];\n at?: LocalReference[];\n after?: LocalReference[];\n}\n\n/**\n * Represents a collection of {@link LocalReference}s associated with one segment in a merge-tree.\n */\nexport class LocalReferenceCollection {\n public static append(seg1: ISegment, seg2: ISegment) {\n if (seg2.localRefs && !seg2.localRefs.empty) {\n if (!seg1.localRefs) {\n seg1.localRefs = new LocalReferenceCollection(seg1);\n }\n assert(seg1.localRefs.refsByOffset.length === seg1.cachedLength,\n 0x2be /* \"LocalReferences array contains a gap\" */);\n seg1.localRefs.append(seg2.localRefs);\n }\n else if (seg1.localRefs) {\n // Since creating the LocalReferenceCollection, we may have appended\n // segments that had no local references. Account for them now by padding the array.\n seg1.localRefs.refsByOffset.length += seg2.cachedLength;\n }\n }\n\n public hierRefCount: number = 0;\n private readonly refsByOffset: (IRefsAtOffset | undefined)[];\n private refCount: number = 0;\n\n constructor(\n /** Segment this `LocalReferenceCollection` is associated to. */\n private readonly segment: ISegment,\n initialRefsByfOffset = new Array<IRefsAtOffset | undefined>(segment.cachedLength)) {\n // Since javascript arrays are sparse the above won't populate any of the\n // indices, but it will ensure the length property of the array matches\n // the length of the segment.\n this.refsByOffset = initialRefsByfOffset;\n }\n\n public [Symbol.iterator]() {\n const subiterators: IterableIterator<LocalReference>[] = [];\n for (const refs of this.refsByOffset) {\n if (refs) {\n if (refs.before) {\n subiterators.push(refs.before[Symbol.iterator]());\n }\n if (refs.at) {\n subiterators.push(refs.at[Symbol.iterator]());\n }\n if (refs.after) {\n subiterators.push(refs.after[Symbol.iterator]());\n }\n }\n }\n\n const iterator = {\n next(): IteratorResult<LocalReference> {\n while (subiterators.length > 0) {\n const next = subiterators[0].next();\n if (next.done === true) {\n subiterators.shift();\n } else {\n return next;\n }\n }\n\n return { value: undefined, done: true };\n },\n [Symbol.iterator]() {\n return this;\n },\n };\n return iterator;\n }\n\n public clear() {\n this.refCount = 0;\n this.hierRefCount = 0;\n const detachSegments = (refs: LocalReference[] | undefined) => {\n if (refs) {\n refs.forEach((r) => {\n if (r.segment === this.segment) {\n r.segment = undefined;\n }\n });\n }\n };\n for (let i = 0; i < this.refsByOffset.length; i++) {\n const refsAtOffset = this.refsByOffset[i];\n if (refsAtOffset) {\n detachSegments(refsAtOffset.before);\n detachSegments(refsAtOffset.at);\n detachSegments(refsAtOffset.before);\n this.refsByOffset[i] = undefined;\n }\n }\n }\n\n public get empty() {\n return this.refCount === 0;\n }\n\n public addLocalRef(lref: LocalReference) {\n const refsAtOffset = this.refsByOffset[lref.offset];\n if (refsAtOffset === undefined) {\n this.refsByOffset[lref.offset] = {\n at: [lref],\n };\n } else if (refsAtOffset.at === undefined) {\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n this.refsByOffset[lref.offset]!.at = [lref];\n } else {\n refsAtOffset.at.push(lref);\n }\n\n if (lref.hasRangeLabels() || lref.hasTileLabels()) {\n this.hierRefCount++;\n }\n this.refCount++;\n }\n\n public removeLocalRef(lref: LocalReference) {\n const tryRemoveRef = (refs: LocalReference[] | undefined) => {\n if (refs) {\n const index = refs.indexOf(lref);\n if (index >= 0) {\n refs.splice(index, 1);\n if (lref.hasRangeLabels() || lref.hasTileLabels()) {\n this.hierRefCount--;\n }\n this.refCount--;\n return lref;\n }\n }\n };\n const refAtOffset = this.refsByOffset[lref.offset];\n if (refAtOffset !== undefined) {\n let ref = tryRemoveRef(refAtOffset.before);\n if (ref) {\n return ref;\n }\n\n ref = tryRemoveRef(refAtOffset.at);\n if (ref) {\n return ref;\n }\n\n ref = tryRemoveRef(refAtOffset.after);\n if (ref) {\n return ref;\n }\n }\n }\n\n /**\n * Called by 'append()' implementations to append local refs from the given 'other' segment to the\n * end of 'this' segment.\n *\n * Note: This method should be invoked after the caller has ensured that segments can be merged,\n * but before 'this' segment's cachedLength has changed, or the adjustment to the local refs\n * will be incorrect.\n */\n public append(other: LocalReferenceCollection) {\n if (!other || other.empty) {\n return;\n }\n this.hierRefCount += other.hierRefCount;\n this.refCount += other.refCount;\n other.hierRefCount = 0;\n for (const lref of other) {\n lref.segment = this.segment;\n lref.offset += this.refsByOffset.length;\n }\n\n this.refsByOffset.push(...other.refsByOffset);\n }\n\n /**\n * Splits this `LocalReferenceCollection` into the intervals [0, offset) and [offset, originalLength).\n * Local references in the former half of this split will remain associated with the segment used on construction.\n * Local references in the latter half of this split will be transferred to `splitSeg`,\n * and its `localRefs` field will be set.\n * @param offset - Offset into the original segment at which the collection should be split\n * @param splitSeg - Split segment which originally corresponded to the indices [offset, originalLength)\n * before splitting.\n */\n public split(offset: number, splitSeg: ISegment) {\n if (!this.empty) {\n const localRefs =\n new LocalReferenceCollection(\n splitSeg,\n this.refsByOffset.splice(offset, this.refsByOffset.length - offset));\n\n splitSeg.localRefs = localRefs;\n for (const lref of localRefs) {\n lref.segment = splitSeg;\n lref.offset -= offset;\n if (lref.hasRangeLabels() || lref.hasTileLabels()) {\n this.hierRefCount--;\n localRefs.hierRefCount++;\n }\n this.refCount--;\n localRefs.refCount++;\n }\n } else {\n // shrink the offset array when empty and splitting\n this.refsByOffset.length = offset;\n }\n }\n\n public addBeforeTombstones(...refs: Iterable<LocalReference>[]) {\n const beforeRefs: LocalReference[] = [];\n\n for (const iterable of refs) {\n for (const lref of iterable) {\n // eslint-disable-next-line no-bitwise\n if (lref.refType & ReferenceType.SlideOnRemove) {\n beforeRefs.push(lref);\n lref.segment = this.segment;\n lref.offset = 0;\n if (lref.hasRangeLabels() || lref.hasTileLabels()) {\n this.hierRefCount++;\n }\n this.refCount++;\n } else {\n lref.segment = undefined;\n }\n }\n }\n if (beforeRefs.length > 0) {\n if (this.refsByOffset[0] === undefined) {\n this.refsByOffset[0] = { before: beforeRefs };\n } else if (this.refsByOffset[0].before === undefined) {\n this.refsByOffset[0].before = beforeRefs;\n } else {\n this.refsByOffset[0].before.unshift(...beforeRefs);\n }\n }\n }\n\n public addAfterTombstones(...refs: Iterable<LocalReference>[]) {\n const afterRefs: LocalReference[] = [];\n\n for (const iterable of refs) {\n for (const lref of iterable) {\n // eslint-disable-next-line no-bitwise\n if (lref.refType & ReferenceType.SlideOnRemove) {\n afterRefs.push(lref);\n lref.segment = this.segment;\n lref.offset = this.segment.cachedLength - 1;\n if (lref.hasRangeLabels() || lref.hasTileLabels()) {\n this.hierRefCount++;\n }\n this.refCount++;\n } else {\n lref.segment = undefined;\n }\n }\n }\n if (afterRefs.length > 0) {\n const refsAtOffset = this.refsByOffset[this.segment.cachedLength - 1];\n if (refsAtOffset === undefined) {\n this.refsByOffset[this.segment.cachedLength - 1] = { after: afterRefs };\n } else if (refsAtOffset.after === undefined) {\n refsAtOffset.after = afterRefs;\n } else {\n refsAtOffset.after.push(...afterRefs);\n }\n }\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"localReference.js","sourceRoot":"","sources":["../src/localReference.ts"],"names":[],"mappings":"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","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { assert } from \"@fluidframework/common-utils\";\nimport { Client } from \"./client\";\nimport {\n ISegment,\n} from \"./mergeTree\";\nimport { ICombiningOp, ReferenceType } from \"./ops\";\nimport { addProperties, PropertySet } from \"./properties\";\nimport { minReferencePosition,\n maxReferencePosition,\n compareReferencePositions,\n refHasTileLabels,\n refHasRangeLabels,\n ReferencePosition,\n refGetRangeLabels,\n refGetTileLabels,\n refHasRangeLabel,\n refHasTileLabel,\n} from \"./referencePositions\";\n\n/**\n * @deprecated - Use ReferencePosition\n */\n export class LocalReference implements ReferencePosition {\n /**\n * @deprecated - use DetachedReferencePosition\n */\n public static readonly DetachedPosition: number = -1;\n\n public properties: PropertySet | undefined;\n /**\n * @deprecated - use properties to store pair\n */\n public pairedRef?: LocalReference;\n /**\n * @deprecated - use getSegment\n */\n public segment: ISegment | undefined;\n\n /**\n * @deprecated - use createReferencePosition\n */\n constructor(\n private readonly client: Client,\n initSegment: ISegment,\n /**\n * @deprecated - use getOffset\n */\n public offset = 0,\n public refType = ReferenceType.Simple,\n properties?: PropertySet,\n ) {\n this.segment = initSegment;\n this.properties = properties;\n }\n\n /**\n * @deprecated - use minReferencePosition\n */\n public min(b: LocalReference) {\n return minReferencePosition(this, b);\n }\n /**\n * @deprecated - use maxReferencePosition\n */\n public max(b: LocalReference) {\n return maxReferencePosition(this, b);\n }\n /**\n * @deprecated - use compareReferencePositions\n */\n public compare(b: LocalReference) {\n return compareReferencePositions(this, b);\n }\n\n /**\n * @deprecated - use getLocalReferencePosition\n */\n public toPosition() {\n if (this.segment && this.segment.parent) {\n return this.getOffset() + this.client.getPosition(this.segment);\n } else {\n return LocalReference.DetachedPosition;\n }\n }\n\n /**\n * @deprecated - use refHasTileLabels\n */\n public hasTileLabels() {\n return refHasTileLabels(this);\n }\n /**\n * @deprecated - use refHasRangeLabels\n */\n public hasRangeLabels() {\n return refHasRangeLabels(this);\n }\n /**\n * @deprecated - use refHasTileLabel\n */\n public hasTileLabel(label: string): boolean {\n return refHasTileLabel(this, label);\n }\n /**\n * @deprecated - use refHasRangeLabel\n */\n public hasRangeLabel(label: string): boolean {\n return refHasRangeLabel(this, label);\n }\n /**\n * @deprecated - use refGetTileLabels\n */\n public getTileLabels(): string[] | undefined {\n return refGetTileLabels(this);\n }\n /**\n * @deprecated - use refGetRangeLabels\n */\n public getRangeLabels(): string[] | undefined {\n return refGetRangeLabels(this);\n }\n\n public isLeaf() {\n return false;\n }\n\n public addProperties(newProps: PropertySet, op?: ICombiningOp) {\n this.properties = addProperties(this.properties, newProps, op);\n }\n\n /**\n * @deprecated - no longer supported\n */\n public getClient() {\n return this.client;\n }\n\n public getSegment() {\n return this.segment;\n }\n\n public getOffset() {\n if (this.segment?.removedSeq) {\n return 0;\n }\n return this.offset;\n }\n\n public getProperties() {\n return this.properties;\n }\n}\n\ninterface IRefsAtOffset {\n before?: LocalReference[];\n at?: LocalReference[];\n after?: LocalReference[];\n}\n\n/**\n * Represents a collection of {@link LocalReference}s associated with one segment in a merge-tree.\n */\nexport class LocalReferenceCollection {\n public static append(seg1: ISegment, seg2: ISegment) {\n if (seg2.localRefs && !seg2.localRefs.empty) {\n if (!seg1.localRefs) {\n seg1.localRefs = new LocalReferenceCollection(seg1);\n }\n assert(seg1.localRefs.refsByOffset.length === seg1.cachedLength,\n 0x2be /* \"LocalReferences array contains a gap\" */);\n seg1.localRefs.append(seg2.localRefs);\n } else if (seg1.localRefs) {\n // Since creating the LocalReferenceCollection, we may have appended\n // segments that had no local references. Account for them now by padding the array.\n seg1.localRefs.refsByOffset.length += seg2.cachedLength;\n }\n }\n\n public hierRefCount: number = 0;\n private readonly refsByOffset: (IRefsAtOffset | undefined)[];\n private refCount: number = 0;\n\n constructor(\n /** Segment this `LocalReferenceCollection` is associated to. */\n private readonly segment: ISegment,\n initialRefsByfOffset = new Array<IRefsAtOffset | undefined>(segment.cachedLength)) {\n // Since javascript arrays are sparse the above won't populate any of the\n // indices, but it will ensure the length property of the array matches\n // the length of the segment.\n this.refsByOffset = initialRefsByfOffset;\n }\n\n public [Symbol.iterator]() {\n const subiterators: IterableIterator<LocalReference>[] = [];\n for (const refs of this.refsByOffset) {\n if (refs) {\n if (refs.before) {\n subiterators.push(refs.before[Symbol.iterator]());\n }\n if (refs.at) {\n subiterators.push(refs.at[Symbol.iterator]());\n }\n if (refs.after) {\n subiterators.push(refs.after[Symbol.iterator]());\n }\n }\n }\n\n const iterator = {\n next(): IteratorResult<LocalReference> {\n while (subiterators.length > 0) {\n const next = subiterators[0].next();\n if (next.done === true) {\n subiterators.shift();\n } else {\n return next;\n }\n }\n\n return { value: undefined, done: true };\n },\n [Symbol.iterator]() {\n return this;\n },\n };\n return iterator;\n }\n\n public clear() {\n this.refCount = 0;\n this.hierRefCount = 0;\n const detachSegments = (refs: LocalReference[] | undefined) => {\n if (refs) {\n refs.forEach((r) => {\n if (r.segment === this.segment) {\n r.segment = undefined;\n }\n });\n }\n };\n for (let i = 0; i < this.refsByOffset.length; i++) {\n const refsAtOffset = this.refsByOffset[i];\n if (refsAtOffset) {\n detachSegments(refsAtOffset.before);\n detachSegments(refsAtOffset.at);\n detachSegments(refsAtOffset.before);\n this.refsByOffset[i] = undefined;\n }\n }\n }\n\n public get empty() {\n return this.refCount === 0;\n }\n\n public addLocalRef(lref: LocalReference) {\n const refsAtOffset = this.refsByOffset[lref.offset];\n if (refsAtOffset === undefined) {\n this.refsByOffset[lref.offset] = {\n at: [lref],\n };\n } else if (refsAtOffset.at === undefined) {\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n this.refsByOffset[lref.offset]!.at = [lref];\n } else {\n refsAtOffset.at.push(lref);\n }\n\n if (lref.hasRangeLabels() || lref.hasTileLabels()) {\n this.hierRefCount++;\n }\n this.refCount++;\n }\n\n public removeLocalRef(lref: LocalReference) {\n const tryRemoveRef = (refs: LocalReference[] | undefined) => {\n if (refs) {\n const index = refs.indexOf(lref);\n if (index >= 0) {\n refs.splice(index, 1);\n if (lref.hasRangeLabels() || lref.hasTileLabels()) {\n this.hierRefCount--;\n }\n this.refCount--;\n return lref;\n }\n }\n };\n const refAtOffset = this.refsByOffset[lref.offset];\n if (refAtOffset !== undefined) {\n let ref = tryRemoveRef(refAtOffset.before);\n if (ref) {\n return ref;\n }\n\n ref = tryRemoveRef(refAtOffset.at);\n if (ref) {\n return ref;\n }\n\n ref = tryRemoveRef(refAtOffset.after);\n if (ref) {\n return ref;\n }\n }\n }\n\n /**\n * Called by 'append()' implementations to append local refs from the given 'other' segment to the\n * end of 'this' segment.\n *\n * Note: This method should be invoked after the caller has ensured that segments can be merged,\n * but before 'this' segment's cachedLength has changed, or the adjustment to the local refs\n * will be incorrect.\n */\n public append(other: LocalReferenceCollection) {\n if (!other || other.empty) {\n return;\n }\n this.hierRefCount += other.hierRefCount;\n this.refCount += other.refCount;\n other.hierRefCount = 0;\n for (const lref of other) {\n lref.segment = this.segment;\n lref.offset += this.refsByOffset.length;\n }\n\n this.refsByOffset.push(...other.refsByOffset);\n }\n\n /**\n * Splits this `LocalReferenceCollection` into the intervals [0, offset) and [offset, originalLength).\n * Local references in the former half of this split will remain associated with the segment used on construction.\n * Local references in the latter half of this split will be transferred to `splitSeg`,\n * and its `localRefs` field will be set.\n * @param offset - Offset into the original segment at which the collection should be split\n * @param splitSeg - Split segment which originally corresponded to the indices [offset, originalLength)\n * before splitting.\n */\n public split(offset: number, splitSeg: ISegment) {\n if (!this.empty) {\n const localRefs =\n new LocalReferenceCollection(\n splitSeg,\n this.refsByOffset.splice(offset, this.refsByOffset.length - offset));\n\n splitSeg.localRefs = localRefs;\n for (const lref of localRefs) {\n lref.segment = splitSeg;\n lref.offset -= offset;\n if (lref.hasRangeLabels() || lref.hasTileLabels()) {\n this.hierRefCount--;\n localRefs.hierRefCount++;\n }\n this.refCount--;\n localRefs.refCount++;\n }\n } else {\n // shrink the offset array when empty and splitting\n this.refsByOffset.length = offset;\n }\n }\n\n public addBeforeTombstones(...refs: Iterable<LocalReference>[]) {\n const beforeRefs: LocalReference[] = [];\n\n for (const iterable of refs) {\n for (const lref of iterable) {\n // eslint-disable-next-line no-bitwise\n if (lref.refType & ReferenceType.SlideOnRemove) {\n beforeRefs.push(lref);\n lref.segment = this.segment;\n lref.offset = 0;\n if (lref.hasRangeLabels() || lref.hasTileLabels()) {\n this.hierRefCount++;\n }\n this.refCount++;\n } else {\n lref.segment = undefined;\n }\n }\n }\n if (beforeRefs.length > 0) {\n if (this.refsByOffset[0] === undefined) {\n this.refsByOffset[0] = { before: beforeRefs };\n } else if (this.refsByOffset[0].before === undefined) {\n this.refsByOffset[0].before = beforeRefs;\n } else {\n this.refsByOffset[0].before.unshift(...beforeRefs);\n }\n }\n }\n\n public addAfterTombstones(...refs: Iterable<LocalReference>[]) {\n const afterRefs: LocalReference[] = [];\n\n for (const iterable of refs) {\n for (const lref of iterable) {\n // eslint-disable-next-line no-bitwise\n if (lref.refType & ReferenceType.SlideOnRemove) {\n afterRefs.push(lref);\n lref.segment = this.segment;\n lref.offset = this.segment.cachedLength - 1;\n if (lref.hasRangeLabels() || lref.hasTileLabels()) {\n this.hierRefCount++;\n }\n this.refCount++;\n } else {\n lref.segment = undefined;\n }\n }\n }\n if (afterRefs.length > 0) {\n const refsAtOffset = this.refsByOffset[this.segment.cachedLength - 1];\n if (refsAtOffset === undefined) {\n this.refsByOffset[this.segment.cachedLength - 1] = { after: afterRefs };\n } else if (refsAtOffset.after === undefined) {\n refsAtOffset.after = afterRefs;\n } else {\n refsAtOffset.after.push(...afterRefs);\n }\n }\n }\n}\n"]}
|
package/lib/mergeTree.d.ts
CHANGED
|
@@ -9,23 +9,9 @@ import { TrackingGroupCollection } from "./mergeTreeTracking";
|
|
|
9
9
|
import { ICombiningOp, IJSONSegment, IMarkerDef, IRelativePosition, ReferenceType } from "./ops";
|
|
10
10
|
import { PartialSequenceLengths } from "./partialLengths";
|
|
11
11
|
import { MapLike, PropertySet } from "./properties";
|
|
12
|
+
import { RangeStackMap, ReferencePosition } from "./referencePositions";
|
|
12
13
|
import { SegmentGroupCollection } from "./segmentGroupCollection";
|
|
13
14
|
import { PropertiesManager } from "./segmentPropertiesManager";
|
|
14
|
-
export interface ReferencePosition {
|
|
15
|
-
properties?: PropertySet;
|
|
16
|
-
refType: ReferenceType;
|
|
17
|
-
isLeaf(): boolean;
|
|
18
|
-
getSegment(): ISegment | undefined;
|
|
19
|
-
getOffset(): number;
|
|
20
|
-
addProperties(newProps: PropertySet, op?: ICombiningOp): void;
|
|
21
|
-
hasTileLabels(): boolean;
|
|
22
|
-
hasRangeLabels(): boolean;
|
|
23
|
-
hasTileLabel(label: string): boolean;
|
|
24
|
-
hasRangeLabel(label: string): boolean;
|
|
25
|
-
getTileLabels(): string[] | undefined;
|
|
26
|
-
getRangeLabels(): string[] | undefined;
|
|
27
|
-
}
|
|
28
|
-
export declare type RangeStackMap = MapLike<Stack<ReferencePosition>>;
|
|
29
15
|
export interface IMergeNodeCommon {
|
|
30
16
|
parent?: IMergeBlock;
|
|
31
17
|
/**
|
|
@@ -208,14 +194,8 @@ export declare abstract class BaseSegment extends MergeNode implements ISegment
|
|
|
208
194
|
abstract append(segment: ISegment): void;
|
|
209
195
|
protected abstract createSplitSegmentAt(pos: number): BaseSegment | undefined;
|
|
210
196
|
}
|
|
211
|
-
export declare const reservedTileLabelsKey = "referenceTileLabels";
|
|
212
|
-
export declare const reservedRangeLabelsKey = "referenceRangeLabels";
|
|
213
197
|
export declare const reservedMarkerIdKey = "markerId";
|
|
214
198
|
export declare const reservedMarkerSimpleTypeKey = "markerSimpleType";
|
|
215
|
-
export declare const refGetTileLabels: (refPos: ReferencePosition) => string[] | undefined;
|
|
216
|
-
export declare const refGetRangeLabels: (refPos: ReferencePosition) => string[] | undefined;
|
|
217
|
-
export declare function refHasTileLabel(refPos: ReferencePosition, label: string): boolean;
|
|
218
|
-
export declare function refHasRangeLabel(refPos: ReferencePosition, label: string): boolean;
|
|
219
199
|
export interface IJSONMarkerSegment extends IJSONSegment {
|
|
220
200
|
marker: IMarkerDef;
|
|
221
201
|
}
|
|
@@ -234,11 +214,29 @@ export declare class Marker extends BaseSegment implements ReferencePosition {
|
|
|
234
214
|
hasSimpleType(simpleTypeName: string): boolean;
|
|
235
215
|
getProperties(): PropertySet | undefined;
|
|
236
216
|
getId(): string | undefined;
|
|
217
|
+
/**
|
|
218
|
+
* @deprecated - use refHasTileLabels
|
|
219
|
+
*/
|
|
237
220
|
hasTileLabels(): boolean;
|
|
221
|
+
/**
|
|
222
|
+
* @deprecated - use refHasRangeLabels
|
|
223
|
+
*/
|
|
238
224
|
hasRangeLabels(): boolean;
|
|
225
|
+
/**
|
|
226
|
+
* @deprecated - use refHasTileLabel
|
|
227
|
+
*/
|
|
239
228
|
hasTileLabel(label: string): boolean;
|
|
229
|
+
/**
|
|
230
|
+
* @deprecated - use refHasRangeLabel
|
|
231
|
+
*/
|
|
240
232
|
hasRangeLabel(label: string): boolean;
|
|
233
|
+
/**
|
|
234
|
+
* @deprecated - use refGetTileLabels
|
|
235
|
+
*/
|
|
241
236
|
getTileLabels(): string[] | undefined;
|
|
237
|
+
/**
|
|
238
|
+
* @deprecated - use refGetRangeLabels
|
|
239
|
+
*/
|
|
242
240
|
getRangeLabels(): string[] | undefined;
|
|
243
241
|
toString(): string;
|
|
244
242
|
protected createSplitSegmentAt(pos: number): undefined;
|
|
@@ -413,7 +411,13 @@ export declare class MergeTree {
|
|
|
413
411
|
annotateRange(start: number, end: number, props: PropertySet, combiningOp: ICombiningOp | undefined, refSeq: number, clientId: number, seq: number, opArgs: IMergeTreeDeltaOpArgs): void;
|
|
414
412
|
markRangeRemoved(start: number, end: number, refSeq: number, clientId: number, seq: number, overwrite: boolean | undefined, opArgs: IMergeTreeDeltaOpArgs): void;
|
|
415
413
|
private nodeUpdateLengthNewStructure;
|
|
414
|
+
/**
|
|
415
|
+
* @deprecated - use removeLocalReferencePosition
|
|
416
|
+
*/
|
|
416
417
|
removeLocalReference(segment: ISegment, lref: LocalReference): void;
|
|
418
|
+
/**
|
|
419
|
+
* @deprecated - use createLocalReference
|
|
420
|
+
*/
|
|
417
421
|
addLocalReference(lref: LocalReference): void;
|
|
418
422
|
private blockUpdate;
|
|
419
423
|
private blockUpdatePathLengths;
|
package/lib/mergeTree.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mergeTree.d.ts","sourceRoot":"","sources":["../src/mergeTree.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mergeTree.d.ts","sourceRoot":"","sources":["../src/mergeTree.ts"],"names":[],"mappings":"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"}
|
package/lib/mergeTree.js
CHANGED
|
@@ -13,6 +13,7 @@ import { TrackingGroupCollection } from "./mergeTreeTracking";
|
|
|
13
13
|
import { ReferenceType, } from "./ops";
|
|
14
14
|
import { PartialSequenceLengths } from "./partialLengths";
|
|
15
15
|
import { clone, createMap, extend, extendIfUndefined, matchProperties, } from "./properties";
|
|
16
|
+
import { refGetRangeLabels, refGetTileLabels, refHasRangeLabel, refHasRangeLabels, refHasTileLabel, refHasTileLabels, } from "./referencePositions";
|
|
16
17
|
import { SegmentGroupCollection } from "./segmentGroupCollection";
|
|
17
18
|
import { PropertiesManager } from "./segmentPropertiesManager";
|
|
18
19
|
export function toRemovalInfo(maybe) {
|
|
@@ -32,7 +33,7 @@ export class MergeNode {
|
|
|
32
33
|
}
|
|
33
34
|
}
|
|
34
35
|
function addTile(tile, tiles) {
|
|
35
|
-
const tileLabels = tile
|
|
36
|
+
const tileLabels = refGetTileLabels(tile);
|
|
36
37
|
if (tileLabels) {
|
|
37
38
|
for (const tileLabel of tileLabels) {
|
|
38
39
|
tiles[tileLabel] = tile;
|
|
@@ -40,7 +41,7 @@ function addTile(tile, tiles) {
|
|
|
40
41
|
}
|
|
41
42
|
}
|
|
42
43
|
function addTileIfNotPresent(tile, tiles) {
|
|
43
|
-
const tileLabels = tile
|
|
44
|
+
const tileLabels = refGetTileLabels(tile);
|
|
44
45
|
if (tileLabels) {
|
|
45
46
|
for (const tileLabel of tileLabels) {
|
|
46
47
|
if (tiles[tileLabel] === undefined) {
|
|
@@ -108,9 +109,9 @@ function addNodeReferences(mergeTree, node, rightmostTiles, leftmostTiles, range
|
|
|
108
109
|
addTileIfNotPresent(segment, leftmostTiles);
|
|
109
110
|
}
|
|
110
111
|
if (segment.refType & (ReferenceType.NestBegin | ReferenceType.NestEnd)) {
|
|
111
|
-
const rangeLabels = segment
|
|
112
|
+
const rangeLabels = refGetRangeLabels(segment);
|
|
112
113
|
if (rangeLabels) {
|
|
113
|
-
for (const label of
|
|
114
|
+
for (const label of rangeLabels) {
|
|
114
115
|
updateRangeInfo(label, segment);
|
|
115
116
|
}
|
|
116
117
|
}
|
|
@@ -126,7 +127,7 @@ function addNodeReferences(mergeTree, node, rightmostTiles, leftmostTiles, range
|
|
|
126
127
|
addTileIfNotPresent(lref, leftmostTiles);
|
|
127
128
|
}
|
|
128
129
|
if (lref.refType & (ReferenceType.NestBegin | ReferenceType.NestEnd)) {
|
|
129
|
-
for (const label of lref
|
|
130
|
+
for (const label of refGetRangeLabels(lref)) {
|
|
130
131
|
updateRangeInfo(label, lref);
|
|
131
132
|
}
|
|
132
133
|
}
|
|
@@ -332,36 +333,8 @@ export class BaseSegment extends MergeNode {
|
|
|
332
333
|
}
|
|
333
334
|
}
|
|
334
335
|
}
|
|
335
|
-
export const reservedTileLabelsKey = "referenceTileLabels";
|
|
336
|
-
export const reservedRangeLabelsKey = "referenceRangeLabels";
|
|
337
336
|
export const reservedMarkerIdKey = "markerId";
|
|
338
337
|
export const reservedMarkerSimpleTypeKey = "markerSimpleType";
|
|
339
|
-
export const refGetTileLabels = (refPos) => (refPos.refType & ReferenceType.Tile)
|
|
340
|
-
&& refPos.properties ? refPos.properties[reservedTileLabelsKey] : undefined;
|
|
341
|
-
export const refGetRangeLabels = (refPos) => (refPos.refType & (ReferenceType.NestBegin | ReferenceType.NestEnd))
|
|
342
|
-
&& refPos.properties ? refPos.properties[reservedRangeLabelsKey] : undefined;
|
|
343
|
-
export function refHasTileLabel(refPos, label) {
|
|
344
|
-
const tileLabels = refPos.getTileLabels();
|
|
345
|
-
if (tileLabels) {
|
|
346
|
-
for (const refLabel of tileLabels) {
|
|
347
|
-
if (label === refLabel) {
|
|
348
|
-
return true;
|
|
349
|
-
}
|
|
350
|
-
}
|
|
351
|
-
}
|
|
352
|
-
return false;
|
|
353
|
-
}
|
|
354
|
-
export function refHasRangeLabel(refPos, label) {
|
|
355
|
-
const rangeLabels = refPos.getRangeLabels();
|
|
356
|
-
if (rangeLabels) {
|
|
357
|
-
for (const refLabel of rangeLabels) {
|
|
358
|
-
if (label === refLabel) {
|
|
359
|
-
return true;
|
|
360
|
-
}
|
|
361
|
-
}
|
|
362
|
-
}
|
|
363
|
-
return false;
|
|
364
|
-
}
|
|
365
338
|
export class Marker extends BaseSegment {
|
|
366
339
|
constructor(refType) {
|
|
367
340
|
super();
|
|
@@ -413,21 +386,39 @@ export class Marker extends BaseSegment {
|
|
|
413
386
|
return this.properties[reservedMarkerIdKey];
|
|
414
387
|
}
|
|
415
388
|
}
|
|
389
|
+
/**
|
|
390
|
+
* @deprecated - use refHasTileLabels
|
|
391
|
+
*/
|
|
416
392
|
hasTileLabels() {
|
|
417
|
-
return
|
|
393
|
+
return refHasTileLabels(this);
|
|
418
394
|
}
|
|
395
|
+
/**
|
|
396
|
+
* @deprecated - use refHasRangeLabels
|
|
397
|
+
*/
|
|
419
398
|
hasRangeLabels() {
|
|
420
|
-
return
|
|
399
|
+
return refHasRangeLabels(this);
|
|
421
400
|
}
|
|
401
|
+
/**
|
|
402
|
+
* @deprecated - use refHasTileLabel
|
|
403
|
+
*/
|
|
422
404
|
hasTileLabel(label) {
|
|
423
405
|
return refHasTileLabel(this, label);
|
|
424
406
|
}
|
|
407
|
+
/**
|
|
408
|
+
* @deprecated - use refHasRangeLabel
|
|
409
|
+
*/
|
|
425
410
|
hasRangeLabel(label) {
|
|
426
411
|
return refHasRangeLabel(this, label);
|
|
427
412
|
}
|
|
413
|
+
/**
|
|
414
|
+
* @deprecated - use refGetTileLabels
|
|
415
|
+
*/
|
|
428
416
|
getTileLabels() {
|
|
429
417
|
return refGetTileLabels(this);
|
|
430
418
|
}
|
|
419
|
+
/**
|
|
420
|
+
* @deprecated - use refGetRangeLabels
|
|
421
|
+
*/
|
|
431
422
|
getRangeLabels() {
|
|
432
423
|
return refGetRangeLabels(this);
|
|
433
424
|
}
|
|
@@ -453,7 +444,7 @@ export class Marker extends BaseSegment {
|
|
|
453
444
|
if (id) {
|
|
454
445
|
bbuf += ` (${id}) `;
|
|
455
446
|
}
|
|
456
|
-
const tileLabels = this
|
|
447
|
+
const tileLabels = refGetTileLabels(this);
|
|
457
448
|
if (tileLabels) {
|
|
458
449
|
lbuf += "tile -- ";
|
|
459
450
|
for (let i = 0, len = tileLabels.length; i < len; i++) {
|
|
@@ -464,7 +455,7 @@ export class Marker extends BaseSegment {
|
|
|
464
455
|
lbuf += tileLabel;
|
|
465
456
|
}
|
|
466
457
|
}
|
|
467
|
-
const rangeLabels = this
|
|
458
|
+
const rangeLabels = refGetRangeLabels(this);
|
|
468
459
|
if (rangeLabels) {
|
|
469
460
|
let rangeKind = "begin";
|
|
470
461
|
if (this.refType & ReferenceType.NestEnd) {
|
|
@@ -566,7 +557,7 @@ const LRUSegmentComparer = {
|
|
|
566
557
|
};
|
|
567
558
|
function applyLeafRangeMarker(marker, searchInfo) {
|
|
568
559
|
for (const rangeLabel of searchInfo.rangeLabels) {
|
|
569
|
-
if (marker
|
|
560
|
+
if (refHasRangeLabel(marker, rangeLabel)) {
|
|
570
561
|
let currentStack = searchInfo.stacks[rangeLabel];
|
|
571
562
|
if (currentStack === undefined) {
|
|
572
563
|
currentStack = new Stack();
|
|
@@ -604,7 +595,7 @@ function rangeShift(node, segpos, refSeq, clientId, offset, end, searchInfo) {
|
|
|
604
595
|
}
|
|
605
596
|
function recordTileStart(segment, segpos, refSeq, clientId, start, end, searchInfo) {
|
|
606
597
|
if (Marker.is(segment)) {
|
|
607
|
-
if (segment
|
|
598
|
+
if (refHasTileLabel(segment, searchInfo.tileLabel)) {
|
|
608
599
|
searchInfo.tile = segment;
|
|
609
600
|
}
|
|
610
601
|
}
|
|
@@ -614,7 +605,7 @@ function tileShift(node, segpos, refSeq, clientId, offset, end, searchInfo) {
|
|
|
614
605
|
if (node.isLeaf()) {
|
|
615
606
|
const seg = node;
|
|
616
607
|
if ((searchInfo.mergeTree.localNetLength(seg) > 0) && Marker.is(seg)) {
|
|
617
|
-
if (seg
|
|
608
|
+
if (refHasTileLabel(seg, searchInfo.tileLabel)) {
|
|
618
609
|
searchInfo.tile = seg;
|
|
619
610
|
}
|
|
620
611
|
}
|
|
@@ -1506,9 +1497,9 @@ export class MergeTree {
|
|
|
1506
1497
|
const saveIfLocal = (locSegment) => {
|
|
1507
1498
|
// Save segment so can assign sequence number when acked by server
|
|
1508
1499
|
if (this.collabWindow.collaborating) {
|
|
1509
|
-
if ((locSegment.seq === UnassignedSequenceNumber) &&
|
|
1510
|
-
(clientId === this.collabWindow.clientId)) {
|
|
1500
|
+
if ((locSegment.seq === UnassignedSequenceNumber) && (clientId === this.collabWindow.clientId)) {
|
|
1511
1501
|
segmentGroup = this.addToPendingList(locSegment, segmentGroup, localSeq);
|
|
1502
|
+
// eslint-disable-next-line @typescript-eslint/brace-style
|
|
1512
1503
|
}
|
|
1513
1504
|
// LocSegment.seq === 0 when coming from SharedSegmentSequence.loadBody()
|
|
1514
1505
|
// In all other cases this has to be true (checked by addToLRUSet):
|
|
@@ -1934,6 +1925,9 @@ export class MergeTree {
|
|
|
1934
1925
|
node.partialLengths = PartialSequenceLengths.combine(this, node, this.collabWindow, recur);
|
|
1935
1926
|
}
|
|
1936
1927
|
}
|
|
1928
|
+
/**
|
|
1929
|
+
* @deprecated - use removeLocalReferencePosition
|
|
1930
|
+
*/
|
|
1937
1931
|
removeLocalReference(segment, lref) {
|
|
1938
1932
|
if (segment.localRefs) {
|
|
1939
1933
|
const removedRef = segment.localRefs.removeLocalRef(lref);
|
|
@@ -1942,6 +1936,9 @@ export class MergeTree {
|
|
|
1942
1936
|
}
|
|
1943
1937
|
}
|
|
1944
1938
|
}
|
|
1939
|
+
/**
|
|
1940
|
+
* @deprecated - use createLocalReference
|
|
1941
|
+
*/
|
|
1945
1942
|
addLocalReference(lref) {
|
|
1946
1943
|
const segment = lref.segment;
|
|
1947
1944
|
let localRefs = segment.localRefs;
|