@fluidframework/tree 2.0.0-rc.2.0.2 → 2.0.0-rc.3.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.cjs +2 -0
- package/CHANGELOG.md +74 -0
- package/api-extractor.json +2 -3
- package/api-report/tree.api.md +208 -154
- package/beta.d.ts +11 -0
- package/dist/beta.d.ts +90 -0
- package/dist/codec/codec.d.ts +10 -4
- package/dist/codec/codec.d.ts.map +1 -1
- package/dist/codec/codec.js +2 -2
- package/dist/codec/codec.js.map +1 -1
- package/dist/codec/discriminatedUnions.d.ts.map +1 -1
- package/dist/codec/discriminatedUnions.js +6 -2
- package/dist/codec/discriminatedUnions.js.map +1 -1
- package/dist/codec/index.d.ts +2 -2
- package/dist/codec/index.d.ts.map +1 -1
- package/dist/codec/index.js +3 -2
- package/dist/codec/index.js.map +1 -1
- package/dist/codec/noopValidator.d.ts.map +1 -1
- package/dist/codec/noopValidator.js.map +1 -1
- package/dist/codec/versioned/codec.d.ts +10 -2
- package/dist/codec/versioned/codec.d.ts.map +1 -1
- package/dist/codec/versioned/codec.js +28 -6
- package/dist/codec/versioned/codec.js.map +1 -1
- package/dist/codec/versioned/index.d.ts +1 -1
- package/dist/codec/versioned/index.d.ts.map +1 -1
- package/dist/codec/versioned/index.js +2 -1
- package/dist/codec/versioned/index.js.map +1 -1
- package/dist/core/change-family/changeFamily.d.ts +2 -2
- package/dist/core/change-family/changeFamily.d.ts.map +1 -1
- package/dist/core/change-family/changeFamily.js.map +1 -1
- package/dist/core/forest/editableForest.d.ts +1 -1
- package/dist/core/forest/editableForest.d.ts.map +1 -1
- package/dist/core/forest/editableForest.js +2 -2
- package/dist/core/forest/editableForest.js.map +1 -1
- package/dist/core/forest/forest.d.ts +5 -1
- package/dist/core/forest/forest.d.ts.map +1 -1
- package/dist/core/forest/forest.js +2 -2
- package/dist/core/forest/forest.js.map +1 -1
- package/dist/core/index.d.ts +3 -3
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +6 -3
- package/dist/core/index.js.map +1 -1
- package/dist/core/rebase/changeRebaser.d.ts.map +1 -1
- package/dist/core/rebase/changeRebaser.js.map +1 -1
- package/dist/core/rebase/index.d.ts +1 -1
- package/dist/core/rebase/index.d.ts.map +1 -1
- package/dist/core/rebase/index.js +4 -1
- package/dist/core/rebase/index.js.map +1 -1
- package/dist/core/rebase/revisionTagCodec.d.ts.map +1 -1
- package/dist/core/rebase/revisionTagCodec.js +2 -2
- package/dist/core/rebase/revisionTagCodec.js.map +1 -1
- package/dist/core/rebase/types.d.ts +30 -0
- package/dist/core/rebase/types.d.ts.map +1 -1
- package/dist/core/rebase/types.js +26 -1
- package/dist/core/rebase/types.js.map +1 -1
- package/dist/core/rebase/utils.d.ts.map +1 -1
- package/dist/core/rebase/utils.js +11 -10
- package/dist/core/rebase/utils.js.map +1 -1
- package/dist/core/revertible/index.d.ts +1 -1
- package/dist/core/revertible/index.d.ts.map +1 -1
- package/dist/core/revertible/index.js +1 -3
- package/dist/core/revertible/index.js.map +1 -1
- package/dist/core/revertible/revertible.d.ts +15 -49
- package/dist/core/revertible/revertible.d.ts.map +1 -1
- package/dist/core/revertible/revertible.js +3 -33
- package/dist/core/revertible/revertible.js.map +1 -1
- package/dist/core/schema-stored/format.d.ts.map +1 -1
- package/dist/core/schema-stored/format.js.map +1 -1
- package/dist/core/schema-stored/index.d.ts +2 -1
- package/dist/core/schema-stored/index.d.ts.map +1 -1
- package/dist/core/schema-stored/index.js +4 -1
- package/dist/core/schema-stored/index.js.map +1 -1
- package/dist/core/schema-stored/multiplicity.d.ts.map +1 -0
- package/dist/{feature-libraries → core/schema-stored}/multiplicity.js +2 -2
- package/{lib/feature-libraries → dist/core/schema-stored}/multiplicity.js.map +1 -1
- package/dist/core/schema-stored/schema.d.ts +32 -9
- package/dist/core/schema-stored/schema.d.ts.map +1 -1
- package/dist/core/schema-stored/schema.js +14 -7
- package/dist/core/schema-stored/schema.js.map +1 -1
- package/dist/core/schema-stored/storedSchemaRepository.d.ts +1 -1
- package/dist/core/schema-stored/storedSchemaRepository.d.ts.map +1 -1
- package/dist/core/schema-stored/storedSchemaRepository.js.map +1 -1
- package/dist/core/tree/anchorSet.d.ts +31 -16
- package/dist/core/tree/anchorSet.d.ts.map +1 -1
- package/dist/core/tree/anchorSet.js +37 -62
- package/dist/core/tree/anchorSet.js.map +1 -1
- package/dist/core/tree/cursor.d.ts.map +1 -1
- package/dist/core/tree/cursor.js +4 -4
- package/dist/core/tree/cursor.js.map +1 -1
- package/dist/core/tree/delta.d.ts.map +1 -1
- package/dist/core/tree/delta.js.map +1 -1
- package/dist/core/tree/deltaUtil.d.ts +1 -1
- package/dist/core/tree/deltaUtil.d.ts.map +1 -1
- package/dist/core/tree/deltaUtil.js.map +1 -1
- package/dist/core/tree/detachedFieldIndex.d.ts +2 -2
- package/dist/core/tree/detachedFieldIndex.d.ts.map +1 -1
- package/dist/core/tree/detachedFieldIndex.js +15 -15
- package/dist/core/tree/detachedFieldIndex.js.map +1 -1
- package/dist/core/tree/detachedFieldIndexCodec.d.ts.map +1 -1
- package/dist/core/tree/detachedFieldIndexCodec.js +4 -4
- package/dist/core/tree/detachedFieldIndexCodec.js.map +1 -1
- package/dist/core/tree/detachedFieldIndexFormat.d.ts.map +1 -1
- package/dist/core/tree/detachedFieldIndexFormat.js.map +1 -1
- package/dist/core/tree/detachedFieldIndexTypes.d.ts.map +1 -1
- package/dist/core/tree/detachedFieldIndexTypes.js.map +1 -1
- package/dist/core/tree/mapTree.d.ts.map +1 -1
- package/dist/core/tree/mapTree.js.map +1 -1
- package/dist/core/tree/pathTree.d.ts.map +1 -1
- package/dist/core/tree/pathTree.js.map +1 -1
- package/dist/core/tree/persistedTreeTextFormat.d.ts.map +1 -1
- package/dist/core/tree/persistedTreeTextFormat.js.map +1 -1
- package/dist/core/tree/sparseTree.d.ts.map +1 -1
- package/dist/core/tree/sparseTree.js +5 -5
- package/dist/core/tree/sparseTree.js.map +1 -1
- package/dist/core/tree/treeTextFormat.d.ts.map +1 -1
- package/dist/core/tree/treeTextFormat.js.map +1 -1
- package/dist/core/tree/types.d.ts +1 -1
- package/dist/core/tree/types.d.ts.map +1 -1
- package/dist/core/tree/types.js +7 -7
- package/dist/core/tree/types.js.map +1 -1
- package/dist/core/tree/visitDelta.d.ts +13 -2
- package/dist/core/tree/visitDelta.d.ts.map +1 -1
- package/dist/core/tree/visitDelta.js +47 -18
- package/dist/core/tree/visitDelta.js.map +1 -1
- package/dist/core/tree/visitPath.d.ts +1 -1
- package/dist/core/tree/visitPath.d.ts.map +1 -1
- package/dist/core/tree/visitPath.js +4 -0
- package/dist/core/tree/visitPath.js.map +1 -1
- package/dist/core/tree/visitorUtils.d.ts +4 -4
- package/dist/core/tree/visitorUtils.d.ts.map +1 -1
- package/dist/core/tree/visitorUtils.js +2 -2
- package/dist/core/tree/visitorUtils.js.map +1 -1
- package/dist/domains/json/jsonCursor.d.ts.map +1 -1
- package/dist/domains/json/jsonCursor.js +7 -7
- package/dist/domains/json/jsonCursor.js.map +1 -1
- package/dist/domains/json/jsonDomainSchema.d.ts.map +1 -1
- package/dist/domains/json/jsonDomainSchema.js.map +1 -1
- package/dist/domains/leafDomain.d.ts.map +1 -1
- package/dist/domains/leafDomain.js +8 -8
- package/dist/domains/leafDomain.js.map +1 -1
- package/dist/domains/nodeKey/nodeKeySchema.d.ts.map +1 -1
- package/dist/domains/nodeKey/nodeKeySchema.js +2 -2
- package/dist/domains/nodeKey/nodeKeySchema.js.map +1 -1
- package/dist/domains/schemaBuilder.d.ts +19 -81
- package/dist/domains/schemaBuilder.d.ts.map +1 -1
- package/dist/domains/schemaBuilder.js +24 -93
- package/dist/domains/schemaBuilder.js.map +1 -1
- package/dist/domains/testRecursiveDomain.d.ts +0 -4
- package/dist/domains/testRecursiveDomain.d.ts.map +1 -1
- package/dist/domains/testRecursiveDomain.js +1 -8
- package/dist/domains/testRecursiveDomain.js.map +1 -1
- package/dist/events/events.d.ts.map +1 -1
- package/dist/events/events.js +2 -2
- package/dist/events/events.js.map +1 -1
- package/dist/external-utilities/typeboxValidator.d.ts.map +1 -1
- package/dist/external-utilities/typeboxValidator.js.map +1 -1
- package/dist/feature-libraries/changeAtomIdCodec.d.ts +1 -1
- package/dist/feature-libraries/changeAtomIdCodec.d.ts.map +1 -1
- package/dist/feature-libraries/changeAtomIdCodec.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/basicChunk.d.ts +3 -3
- package/dist/feature-libraries/chunked-forest/basicChunk.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/basicChunk.js +29 -29
- package/dist/feature-libraries/chunked-forest/basicChunk.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/chunk.d.ts +1 -1
- package/dist/feature-libraries/chunked-forest/chunk.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/chunk.js +2 -2
- package/dist/feature-libraries/chunked-forest/chunk.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/chunkTree.d.ts +2 -2
- package/dist/feature-libraries/chunked-forest/chunkTree.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/chunkTree.js +13 -14
- package/dist/feature-libraries/chunked-forest/chunkTree.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/chunkedForest.d.ts +2 -2
- package/dist/feature-libraries/chunked-forest/chunkedForest.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/chunkedForest.js +25 -24
- package/dist/feature-libraries/chunked-forest/chunkedForest.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/chunkCodecUtilities.d.ts +2 -2
- package/dist/feature-libraries/chunked-forest/codec/chunkCodecUtilities.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/chunkCodecUtilities.js +4 -4
- package/dist/feature-libraries/chunked-forest/codec/chunkCodecUtilities.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/chunkDecoding.d.ts +1 -1
- package/dist/feature-libraries/chunked-forest/codec/chunkDecoding.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/chunkDecoding.js +13 -13
- package/dist/feature-libraries/chunked-forest/codec/chunkDecoding.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.d.ts +2 -2
- package/dist/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.js +3 -3
- package/dist/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/chunkEncodingGeneric.d.ts +1 -1
- package/dist/feature-libraries/chunked-forest/codec/chunkEncodingGeneric.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/chunkEncodingGeneric.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/codecs.d.ts +4 -9
- package/dist/feature-libraries/chunked-forest/codec/codecs.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/codecs.js +6 -5
- package/dist/feature-libraries/chunked-forest/codec/codecs.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/compressedEncode.d.ts +3 -3
- package/dist/feature-libraries/chunked-forest/codec/compressedEncode.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/compressedEncode.js +8 -8
- package/dist/feature-libraries/chunked-forest/codec/compressedEncode.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/format.d.ts +1 -1
- package/dist/feature-libraries/chunked-forest/codec/format.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/format.js +1 -2
- package/dist/feature-libraries/chunked-forest/codec/format.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/formatGeneric.d.ts +1 -1
- package/dist/feature-libraries/chunked-forest/codec/index.d.ts +1 -1
- package/dist/feature-libraries/chunked-forest/codec/index.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/index.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/nodeShape.d.ts +2 -2
- package/dist/feature-libraries/chunked-forest/codec/nodeShape.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/nodeShape.js +3 -3
- package/dist/feature-libraries/chunked-forest/codec/nodeShape.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/schemaBasedEncoding.d.ts +3 -3
- package/dist/feature-libraries/chunked-forest/codec/schemaBasedEncoding.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/schemaBasedEncoding.js +4 -5
- package/dist/feature-libraries/chunked-forest/codec/schemaBasedEncoding.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/uncompressedEncode.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/uncompressedEncode.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/emptyChunk.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/emptyChunk.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/index.d.ts +1 -1
- package/dist/feature-libraries/chunked-forest/index.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/index.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/sequenceChunk.d.ts +1 -1
- package/dist/feature-libraries/chunked-forest/sequenceChunk.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/sequenceChunk.js +1 -1
- package/dist/feature-libraries/chunked-forest/sequenceChunk.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/uniformChunk.d.ts +3 -3
- package/dist/feature-libraries/chunked-forest/uniformChunk.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/uniformChunk.js +21 -21
- package/dist/feature-libraries/chunked-forest/uniformChunk.js.map +1 -1
- package/dist/feature-libraries/contextuallyTyped.d.ts +5 -9
- package/dist/feature-libraries/contextuallyTyped.d.ts.map +1 -1
- package/dist/feature-libraries/contextuallyTyped.js +33 -48
- package/dist/feature-libraries/contextuallyTyped.js.map +1 -1
- package/dist/feature-libraries/default-schema/defaultEditBuilder.d.ts +3 -5
- package/dist/feature-libraries/default-schema/defaultEditBuilder.d.ts.map +1 -1
- package/dist/feature-libraries/default-schema/defaultEditBuilder.js +7 -7
- package/dist/feature-libraries/default-schema/defaultEditBuilder.js.map +1 -1
- package/dist/feature-libraries/default-schema/defaultFieldKinds.d.ts +18 -4
- package/dist/feature-libraries/default-schema/defaultFieldKinds.d.ts.map +1 -1
- package/dist/feature-libraries/default-schema/defaultFieldKinds.js +59 -24
- package/dist/feature-libraries/default-schema/defaultFieldKinds.js.map +1 -1
- package/dist/feature-libraries/default-schema/defaultSchema.d.ts.map +1 -1
- package/dist/feature-libraries/default-schema/defaultSchema.js.map +1 -1
- package/dist/feature-libraries/default-schema/index.d.ts +1 -1
- package/dist/feature-libraries/default-schema/index.d.ts.map +1 -1
- package/dist/feature-libraries/default-schema/index.js +2 -1
- package/dist/feature-libraries/default-schema/index.js.map +1 -1
- package/dist/feature-libraries/default-schema/noChangeCodecs.d.ts +8 -0
- package/dist/feature-libraries/default-schema/noChangeCodecs.d.ts.map +1 -0
- package/dist/feature-libraries/default-schema/noChangeCodecs.js +10 -0
- package/dist/feature-libraries/default-schema/noChangeCodecs.js.map +1 -0
- package/dist/feature-libraries/detachedFieldIndexSummarizer.d.ts +1 -1
- package/dist/feature-libraries/detachedFieldIndexSummarizer.d.ts.map +1 -1
- package/dist/feature-libraries/detachedFieldIndexSummarizer.js +2 -2
- package/dist/feature-libraries/detachedFieldIndexSummarizer.js.map +1 -1
- package/dist/feature-libraries/editableTreeBinder.d.ts.map +1 -1
- package/dist/feature-libraries/editableTreeBinder.js +6 -6
- package/dist/feature-libraries/editableTreeBinder.js.map +1 -1
- package/dist/feature-libraries/fieldGenerator.d.ts +1 -1
- package/dist/feature-libraries/fieldGenerator.d.ts.map +1 -1
- package/dist/feature-libraries/fieldGenerator.js.map +1 -1
- package/dist/feature-libraries/flex-tree/context.d.ts +16 -4
- package/dist/feature-libraries/flex-tree/context.d.ts.map +1 -1
- package/dist/feature-libraries/flex-tree/context.js +27 -15
- package/dist/feature-libraries/flex-tree/context.js.map +1 -1
- package/dist/feature-libraries/flex-tree/flexTreeTypes.d.ts +43 -36
- package/dist/feature-libraries/flex-tree/flexTreeTypes.d.ts.map +1 -1
- package/dist/feature-libraries/flex-tree/flexTreeTypes.js +9 -6
- package/dist/feature-libraries/flex-tree/flexTreeTypes.js.map +1 -1
- package/dist/feature-libraries/flex-tree/index.d.ts +3 -3
- package/dist/feature-libraries/flex-tree/index.d.ts.map +1 -1
- package/dist/feature-libraries/flex-tree/index.js +3 -2
- package/dist/feature-libraries/flex-tree/index.js.map +1 -1
- package/dist/feature-libraries/flex-tree/lazyEntity.d.ts +7 -8
- package/dist/feature-libraries/flex-tree/lazyEntity.d.ts.map +1 -1
- package/dist/feature-libraries/flex-tree/lazyEntity.js +12 -17
- package/dist/feature-libraries/flex-tree/lazyEntity.js.map +1 -1
- package/dist/feature-libraries/flex-tree/lazyField.d.ts +21 -7
- package/dist/feature-libraries/flex-tree/lazyField.d.ts.map +1 -1
- package/dist/feature-libraries/flex-tree/lazyField.js +69 -46
- package/dist/feature-libraries/flex-tree/lazyField.js.map +1 -1
- package/dist/feature-libraries/flex-tree/lazyNode.d.ts +12 -9
- package/dist/feature-libraries/flex-tree/lazyNode.d.ts.map +1 -1
- package/dist/feature-libraries/flex-tree/lazyNode.js +51 -97
- package/dist/feature-libraries/flex-tree/lazyNode.js.map +1 -1
- package/dist/feature-libraries/flex-tree/nodeKeys.d.ts.map +1 -1
- package/dist/feature-libraries/flex-tree/nodeKeys.js.map +1 -1
- package/dist/feature-libraries/flex-tree/treeEvents.d.ts +7 -70
- package/dist/feature-libraries/flex-tree/treeEvents.d.ts.map +1 -1
- package/dist/feature-libraries/flex-tree/treeEvents.js.map +1 -1
- package/dist/feature-libraries/flex-tree/unboxed.d.ts.map +1 -1
- package/dist/feature-libraries/flex-tree/unboxed.js +1 -1
- package/dist/feature-libraries/flex-tree/unboxed.js.map +1 -1
- package/dist/feature-libraries/flex-tree/utilities.d.ts.map +1 -1
- package/dist/feature-libraries/flex-tree/utilities.js.map +1 -1
- package/dist/feature-libraries/forest-summary/codec.d.ts.map +1 -1
- package/dist/feature-libraries/forest-summary/codec.js +2 -2
- package/dist/feature-libraries/forest-summary/codec.js.map +1 -1
- package/dist/feature-libraries/forest-summary/forestSummarizer.d.ts +3 -3
- package/dist/feature-libraries/forest-summary/forestSummarizer.d.ts.map +1 -1
- package/dist/feature-libraries/forest-summary/forestSummarizer.js +14 -14
- package/dist/feature-libraries/forest-summary/forestSummarizer.js.map +1 -1
- package/dist/feature-libraries/forest-summary/format.d.ts.map +1 -1
- package/dist/feature-libraries/forest-summary/format.js +4 -4
- package/dist/feature-libraries/forest-summary/format.js.map +1 -1
- package/dist/feature-libraries/index.d.ts +8 -9
- package/dist/feature-libraries/index.d.ts.map +1 -1
- package/dist/feature-libraries/index.js +9 -9
- package/dist/feature-libraries/index.js.map +1 -1
- package/dist/feature-libraries/mapTreeCursor.d.ts +1 -1
- package/dist/feature-libraries/mapTreeCursor.d.ts.map +1 -1
- package/dist/feature-libraries/mapTreeCursor.js +2 -2
- package/dist/feature-libraries/mapTreeCursor.js.map +1 -1
- package/dist/feature-libraries/memoizedIdRangeAllocator.js.map +1 -1
- package/dist/feature-libraries/modular-schema/comparison.d.ts +1 -1
- package/dist/feature-libraries/modular-schema/comparison.d.ts.map +1 -1
- package/dist/feature-libraries/modular-schema/comparison.js +20 -20
- package/dist/feature-libraries/modular-schema/comparison.js.map +1 -1
- package/dist/feature-libraries/modular-schema/fieldChangeHandler.d.ts +19 -13
- package/dist/feature-libraries/modular-schema/fieldChangeHandler.d.ts.map +1 -1
- package/dist/feature-libraries/modular-schema/fieldChangeHandler.js.map +1 -1
- package/dist/feature-libraries/modular-schema/fieldKind.d.ts +3 -4
- package/dist/feature-libraries/modular-schema/fieldKind.d.ts.map +1 -1
- package/dist/feature-libraries/modular-schema/fieldKind.js.map +1 -1
- package/dist/feature-libraries/modular-schema/fieldKindConfiguration.d.ts +21 -0
- package/dist/feature-libraries/modular-schema/fieldKindConfiguration.d.ts.map +1 -0
- package/dist/feature-libraries/modular-schema/fieldKindConfiguration.js +7 -0
- package/dist/feature-libraries/modular-schema/fieldKindConfiguration.js.map +1 -0
- package/dist/feature-libraries/modular-schema/fieldKindWithEditor.d.ts +1 -2
- package/dist/feature-libraries/modular-schema/fieldKindWithEditor.d.ts.map +1 -1
- package/dist/feature-libraries/modular-schema/fieldKindWithEditor.js +4 -4
- package/dist/feature-libraries/modular-schema/fieldKindWithEditor.js.map +1 -1
- package/dist/feature-libraries/modular-schema/genericFieldKind.d.ts.map +1 -1
- package/dist/feature-libraries/modular-schema/genericFieldKind.js +3 -7
- package/dist/feature-libraries/modular-schema/genericFieldKind.js.map +1 -1
- package/dist/feature-libraries/modular-schema/genericFieldKindCodecs.d.ts +3 -5
- package/dist/feature-libraries/modular-schema/genericFieldKindCodecs.d.ts.map +1 -1
- package/dist/feature-libraries/modular-schema/genericFieldKindCodecs.js +7 -7
- package/dist/feature-libraries/modular-schema/genericFieldKindCodecs.js.map +1 -1
- package/dist/feature-libraries/modular-schema/genericFieldKindFormat.d.ts +1 -1
- package/dist/feature-libraries/modular-schema/genericFieldKindFormat.d.ts.map +1 -1
- package/dist/feature-libraries/modular-schema/genericFieldKindFormat.js +1 -1
- package/dist/feature-libraries/modular-schema/genericFieldKindFormat.js.map +1 -1
- package/dist/feature-libraries/modular-schema/genericFieldKindTypes.d.ts +4 -4
- package/dist/feature-libraries/modular-schema/genericFieldKindTypes.d.ts.map +1 -1
- package/dist/feature-libraries/modular-schema/genericFieldKindTypes.js.map +1 -1
- package/dist/feature-libraries/modular-schema/index.d.ts +5 -4
- package/dist/feature-libraries/modular-schema/index.d.ts.map +1 -1
- package/dist/feature-libraries/modular-schema/index.js +3 -2
- package/dist/feature-libraries/modular-schema/index.js.map +1 -1
- package/dist/feature-libraries/modular-schema/isNeverTree.d.ts +1 -1
- package/dist/feature-libraries/modular-schema/isNeverTree.d.ts.map +1 -1
- package/dist/feature-libraries/modular-schema/isNeverTree.js +10 -11
- package/dist/feature-libraries/modular-schema/isNeverTree.js.map +1 -1
- package/dist/feature-libraries/modular-schema/modularChangeCodecs.d.ts +4 -5
- package/dist/feature-libraries/modular-schema/modularChangeCodecs.d.ts.map +1 -1
- package/dist/feature-libraries/modular-schema/modularChangeCodecs.js +73 -37
- package/dist/feature-libraries/modular-schema/modularChangeCodecs.js.map +1 -1
- package/dist/feature-libraries/modular-schema/modularChangeFamily.d.ts +13 -25
- package/dist/feature-libraries/modular-schema/modularChangeFamily.d.ts.map +1 -1
- package/dist/feature-libraries/modular-schema/modularChangeFamily.js +261 -169
- package/dist/feature-libraries/modular-schema/modularChangeFamily.js.map +1 -1
- package/dist/feature-libraries/modular-schema/modularChangeFormat.d.ts +5 -12
- package/dist/feature-libraries/modular-schema/modularChangeFormat.d.ts.map +1 -1
- package/dist/feature-libraries/modular-schema/modularChangeFormat.js +0 -10
- package/dist/feature-libraries/modular-schema/modularChangeFormat.js.map +1 -1
- package/dist/feature-libraries/modular-schema/modularChangeTypes.d.ts +6 -4
- package/dist/feature-libraries/modular-schema/modularChangeTypes.d.ts.map +1 -1
- package/dist/feature-libraries/modular-schema/modularChangeTypes.js.map +1 -1
- package/dist/feature-libraries/node-key/nodeKey.d.ts +1 -1
- package/dist/feature-libraries/node-key/nodeKey.d.ts.map +1 -1
- package/dist/feature-libraries/node-key/nodeKey.js.map +1 -1
- package/dist/feature-libraries/node-key/nodeKeyIndex.d.ts +2 -2
- package/dist/feature-libraries/node-key/nodeKeyIndex.d.ts.map +1 -1
- package/dist/feature-libraries/node-key/nodeKeyIndex.js +3 -3
- package/dist/feature-libraries/node-key/nodeKeyIndex.js.map +1 -1
- package/dist/feature-libraries/node-key/nodeKeyManager.d.ts +2 -2
- package/dist/feature-libraries/node-key/nodeKeyManager.d.ts.map +1 -1
- package/dist/feature-libraries/node-key/nodeKeyManager.js +9 -9
- package/dist/feature-libraries/node-key/nodeKeyManager.js.map +1 -1
- package/dist/feature-libraries/object-forest/objectForest.d.ts +1 -1
- package/dist/feature-libraries/object-forest/objectForest.d.ts.map +1 -1
- package/dist/feature-libraries/object-forest/objectForest.js +49 -48
- package/dist/feature-libraries/object-forest/objectForest.js.map +1 -1
- package/dist/feature-libraries/optional-field/index.d.ts +1 -1
- package/dist/feature-libraries/optional-field/index.d.ts.map +1 -1
- package/dist/feature-libraries/optional-field/index.js +1 -2
- package/dist/feature-libraries/optional-field/index.js.map +1 -1
- package/dist/feature-libraries/optional-field/optionalField.d.ts +3 -5
- package/dist/feature-libraries/optional-field/optionalField.d.ts.map +1 -1
- package/dist/feature-libraries/optional-field/optionalField.js +33 -39
- package/dist/feature-libraries/optional-field/optionalField.js.map +1 -1
- package/dist/feature-libraries/optional-field/{optionalFieldChangeFormat.d.ts → optionalFieldChangeFormatV1.d.ts} +1 -1
- package/dist/feature-libraries/optional-field/optionalFieldChangeFormatV1.d.ts.map +1 -0
- package/dist/feature-libraries/optional-field/{optionalFieldChangeFormat.js → optionalFieldChangeFormatV1.js} +11 -2
- package/dist/feature-libraries/optional-field/optionalFieldChangeFormatV1.js.map +1 -0
- package/dist/feature-libraries/optional-field/optionalFieldChangeFormatV2.d.ts +25 -0
- package/dist/feature-libraries/optional-field/optionalFieldChangeFormatV2.d.ts.map +1 -0
- package/dist/feature-libraries/optional-field/optionalFieldChangeFormatV2.js +44 -0
- package/dist/feature-libraries/optional-field/optionalFieldChangeFormatV2.js.map +1 -0
- package/dist/feature-libraries/optional-field/optionalFieldChangeTypes.d.ts +4 -7
- package/dist/feature-libraries/optional-field/optionalFieldChangeTypes.d.ts.map +1 -1
- package/dist/feature-libraries/optional-field/optionalFieldChangeTypes.js.map +1 -1
- package/dist/feature-libraries/optional-field/optionalFieldCodecV1.d.ts +12 -0
- package/dist/feature-libraries/optional-field/optionalFieldCodecV1.d.ts.map +1 -0
- package/dist/feature-libraries/optional-field/optionalFieldCodecV1.js +158 -0
- package/dist/feature-libraries/optional-field/optionalFieldCodecV1.js.map +1 -0
- package/dist/feature-libraries/optional-field/optionalFieldCodecV2.d.ts +12 -0
- package/dist/feature-libraries/optional-field/optionalFieldCodecV2.d.ts.map +1 -0
- package/dist/feature-libraries/optional-field/optionalFieldCodecV2.js +87 -0
- package/dist/feature-libraries/optional-field/optionalFieldCodecV2.js.map +1 -0
- package/dist/feature-libraries/optional-field/optionalFieldCodecs.d.ts +2 -4
- package/dist/feature-libraries/optional-field/optionalFieldCodecs.d.ts.map +1 -1
- package/dist/feature-libraries/optional-field/optionalFieldCodecs.js +7 -150
- package/dist/feature-libraries/optional-field/optionalFieldCodecs.js.map +1 -1
- package/dist/feature-libraries/schema-aware/schemaAware.d.ts +3 -4
- package/dist/feature-libraries/schema-aware/schemaAware.d.ts.map +1 -1
- package/dist/feature-libraries/schema-aware/schemaAware.js +1 -1
- package/dist/feature-libraries/schema-aware/schemaAware.js.map +1 -1
- package/dist/feature-libraries/schema-edits/index.d.ts +1 -1
- package/dist/feature-libraries/schema-edits/index.d.ts.map +1 -1
- package/dist/feature-libraries/schema-edits/index.js +2 -2
- package/dist/feature-libraries/schema-edits/index.js.map +1 -1
- package/dist/feature-libraries/schema-edits/schemaChangeCodecs.d.ts +2 -3
- package/dist/feature-libraries/schema-edits/schemaChangeCodecs.d.ts.map +1 -1
- package/dist/feature-libraries/schema-edits/schemaChangeCodecs.js +13 -5
- package/dist/feature-libraries/schema-edits/schemaChangeCodecs.js.map +1 -1
- package/dist/feature-libraries/schema-edits/schemaChangeFormat.d.ts.map +1 -1
- package/dist/feature-libraries/schema-edits/schemaChangeFormat.js.map +1 -1
- package/dist/feature-libraries/schema-edits/schemaChangeTypes.d.ts +5 -0
- package/dist/feature-libraries/schema-edits/schemaChangeTypes.d.ts.map +1 -1
- package/dist/feature-libraries/schema-edits/schemaChangeTypes.js.map +1 -1
- package/dist/feature-libraries/schema-index/codec.d.ts +1 -1
- package/dist/feature-libraries/schema-index/codec.d.ts.map +1 -1
- package/dist/feature-libraries/schema-index/codec.js +10 -10
- package/dist/feature-libraries/schema-index/codec.js.map +1 -1
- package/dist/feature-libraries/schema-index/format.d.ts.map +1 -1
- package/dist/feature-libraries/schema-index/format.js.map +1 -1
- package/dist/feature-libraries/schema-index/schemaSummarizer.d.ts +2 -2
- package/dist/feature-libraries/schema-index/schemaSummarizer.d.ts.map +1 -1
- package/dist/feature-libraries/schema-index/schemaSummarizer.js +4 -4
- package/dist/feature-libraries/schema-index/schemaSummarizer.js.map +1 -1
- package/dist/feature-libraries/schemaBuilder.d.ts +1 -1
- package/dist/feature-libraries/schemaBuilder.d.ts.map +1 -1
- package/dist/feature-libraries/schemaBuilder.js +1 -1
- package/dist/feature-libraries/schemaBuilder.js.map +1 -1
- package/dist/feature-libraries/schemaBuilderBase.d.ts +1 -1
- package/dist/feature-libraries/schemaBuilderBase.d.ts.map +1 -1
- package/dist/feature-libraries/schemaBuilderBase.js +19 -19
- package/dist/feature-libraries/schemaBuilderBase.js.map +1 -1
- package/dist/feature-libraries/sequence-field/compose.d.ts +9 -13
- package/dist/feature-libraries/sequence-field/compose.d.ts.map +1 -1
- package/dist/feature-libraries/sequence-field/compose.js +76 -43
- package/dist/feature-libraries/sequence-field/compose.js.map +1 -1
- package/dist/feature-libraries/sequence-field/format.d.ts.map +1 -1
- package/dist/feature-libraries/sequence-field/format.js +14 -14
- package/dist/feature-libraries/sequence-field/format.js.map +1 -1
- package/dist/feature-libraries/sequence-field/helperTypes.d.ts +3 -3
- package/dist/feature-libraries/sequence-field/helperTypes.d.ts.map +1 -1
- package/dist/feature-libraries/sequence-field/helperTypes.js.map +1 -1
- package/dist/feature-libraries/sequence-field/index.d.ts +5 -5
- package/dist/feature-libraries/sequence-field/index.d.ts.map +1 -1
- package/dist/feature-libraries/sequence-field/index.js.map +1 -1
- package/dist/feature-libraries/sequence-field/invert.d.ts +1 -2
- package/dist/feature-libraries/sequence-field/invert.d.ts.map +1 -1
- package/dist/feature-libraries/sequence-field/invert.js +30 -39
- package/dist/feature-libraries/sequence-field/invert.js.map +1 -1
- package/dist/feature-libraries/sequence-field/markListFactory.d.ts +4 -4
- package/dist/feature-libraries/sequence-field/markListFactory.d.ts.map +1 -1
- package/dist/feature-libraries/sequence-field/markListFactory.js.map +1 -1
- package/dist/feature-libraries/sequence-field/markQueue.d.ts +7 -7
- package/dist/feature-libraries/sequence-field/markQueue.d.ts.map +1 -1
- package/dist/feature-libraries/sequence-field/markQueue.js +2 -2
- package/dist/feature-libraries/sequence-field/markQueue.js.map +1 -1
- package/dist/feature-libraries/sequence-field/moveEffectTable.d.ts +25 -14
- package/dist/feature-libraries/sequence-field/moveEffectTable.d.ts.map +1 -1
- package/dist/feature-libraries/sequence-field/moveEffectTable.js +20 -11
- package/dist/feature-libraries/sequence-field/moveEffectTable.js.map +1 -1
- package/dist/feature-libraries/sequence-field/prune.d.ts +2 -2
- package/dist/feature-libraries/sequence-field/prune.d.ts.map +1 -1
- package/dist/feature-libraries/sequence-field/prune.js.map +1 -1
- package/dist/feature-libraries/sequence-field/rebase.d.ts +3 -4
- package/dist/feature-libraries/sequence-field/rebase.d.ts.map +1 -1
- package/dist/feature-libraries/sequence-field/rebase.js +34 -40
- package/dist/feature-libraries/sequence-field/rebase.js.map +1 -1
- package/dist/feature-libraries/sequence-field/relevantRemovedRoots.d.ts +2 -2
- package/dist/feature-libraries/sequence-field/relevantRemovedRoots.d.ts.map +1 -1
- package/dist/feature-libraries/sequence-field/relevantRemovedRoots.js +2 -2
- package/dist/feature-libraries/sequence-field/relevantRemovedRoots.js.map +1 -1
- package/dist/feature-libraries/sequence-field/sequenceFieldChangeHandler.d.ts +1 -1
- package/dist/feature-libraries/sequence-field/sequenceFieldChangeHandler.d.ts.map +1 -1
- package/dist/feature-libraries/sequence-field/sequenceFieldChangeHandler.js +1 -1
- package/dist/feature-libraries/sequence-field/sequenceFieldChangeHandler.js.map +1 -1
- package/dist/feature-libraries/sequence-field/sequenceFieldChangeRebaser.d.ts +2 -2
- package/dist/feature-libraries/sequence-field/sequenceFieldChangeRebaser.d.ts.map +1 -1
- package/dist/feature-libraries/sequence-field/sequenceFieldChangeRebaser.js +1 -1
- package/dist/feature-libraries/sequence-field/sequenceFieldChangeRebaser.js.map +1 -1
- package/dist/feature-libraries/sequence-field/sequenceFieldCodecs.d.ts +2 -3
- package/dist/feature-libraries/sequence-field/sequenceFieldCodecs.d.ts.map +1 -1
- package/dist/feature-libraries/sequence-field/sequenceFieldCodecs.js +17 -19
- package/dist/feature-libraries/sequence-field/sequenceFieldCodecs.js.map +1 -1
- package/dist/feature-libraries/sequence-field/sequenceFieldEditor.d.ts +17 -17
- package/dist/feature-libraries/sequence-field/sequenceFieldEditor.d.ts.map +1 -1
- package/dist/feature-libraries/sequence-field/sequenceFieldEditor.js +2 -2
- package/dist/feature-libraries/sequence-field/sequenceFieldEditor.js.map +1 -1
- package/dist/feature-libraries/sequence-field/sequenceFieldToDelta.d.ts +3 -3
- package/dist/feature-libraries/sequence-field/sequenceFieldToDelta.d.ts.map +1 -1
- package/dist/feature-libraries/sequence-field/sequenceFieldToDelta.js +10 -10
- package/dist/feature-libraries/sequence-field/sequenceFieldToDelta.js.map +1 -1
- package/dist/feature-libraries/sequence-field/types.d.ts +7 -8
- package/dist/feature-libraries/sequence-field/types.d.ts.map +1 -1
- package/dist/feature-libraries/sequence-field/types.js.map +1 -1
- package/dist/feature-libraries/sequence-field/utils.d.ts +42 -35
- package/dist/feature-libraries/sequence-field/utils.d.ts.map +1 -1
- package/dist/feature-libraries/sequence-field/utils.js +43 -21
- package/dist/feature-libraries/sequence-field/utils.js.map +1 -1
- package/dist/feature-libraries/storedToViewSchema.d.ts +2 -2
- package/dist/feature-libraries/storedToViewSchema.d.ts.map +1 -1
- package/dist/feature-libraries/storedToViewSchema.js +3 -3
- package/dist/feature-libraries/storedToViewSchema.js.map +1 -1
- package/dist/feature-libraries/treeCursorUtils.d.ts +1 -1
- package/dist/feature-libraries/treeCursorUtils.d.ts.map +1 -1
- package/dist/feature-libraries/treeCursorUtils.js +8 -8
- package/dist/feature-libraries/treeCursorUtils.js.map +1 -1
- package/dist/feature-libraries/treeTextCursor.d.ts +1 -1
- package/dist/feature-libraries/treeTextCursor.d.ts.map +1 -1
- package/dist/feature-libraries/treeTextCursor.js +3 -3
- package/dist/feature-libraries/treeTextCursor.js.map +1 -1
- package/dist/feature-libraries/typed-schema/flexList.d.ts +1 -2
- package/dist/feature-libraries/typed-schema/flexList.d.ts.map +1 -1
- package/dist/feature-libraries/typed-schema/flexList.js.map +1 -1
- package/dist/feature-libraries/typed-schema/index.d.ts +0 -1
- package/dist/feature-libraries/typed-schema/index.d.ts.map +1 -1
- package/dist/feature-libraries/typed-schema/index.js.map +1 -1
- package/dist/feature-libraries/typed-schema/schemaCollection.d.ts.map +1 -1
- package/dist/feature-libraries/typed-schema/schemaCollection.js +14 -14
- package/dist/feature-libraries/typed-schema/schemaCollection.js.map +1 -1
- package/dist/feature-libraries/typed-schema/typeUtils.d.ts +0 -5
- package/dist/feature-libraries/typed-schema/typeUtils.d.ts.map +1 -1
- package/dist/feature-libraries/typed-schema/typeUtils.js.map +1 -1
- package/dist/feature-libraries/typed-schema/typedTreeSchema.d.ts +5 -4
- package/dist/feature-libraries/typed-schema/typedTreeSchema.d.ts.map +1 -1
- package/dist/feature-libraries/typed-schema/typedTreeSchema.js +19 -11
- package/dist/feature-libraries/typed-schema/typedTreeSchema.js.map +1 -1
- package/dist/feature-libraries/typed-schema/view.d.ts +1 -1
- package/dist/feature-libraries/typed-schema/view.d.ts.map +1 -1
- package/dist/feature-libraries/typed-schema/view.js +10 -10
- package/dist/feature-libraries/typed-schema/view.js.map +1 -1
- package/dist/feature-libraries/valueUtilities.d.ts +6 -3
- package/dist/feature-libraries/valueUtilities.d.ts.map +1 -1
- package/dist/feature-libraries/valueUtilities.js +11 -10
- package/dist/feature-libraries/valueUtilities.js.map +1 -1
- package/dist/index.d.ts +7 -7
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +9 -9
- package/dist/index.js.map +1 -1
- package/dist/packageVersion.d.ts +1 -1
- package/dist/packageVersion.js +1 -1
- package/dist/packageVersion.js.map +1 -1
- package/dist/public.d.ts +90 -0
- package/dist/shared-tree/index.d.ts +3 -3
- package/dist/shared-tree/index.d.ts.map +1 -1
- package/dist/shared-tree/index.js +2 -1
- package/dist/shared-tree/index.js.map +1 -1
- package/dist/shared-tree/schematizeTree.d.ts +1 -1
- package/dist/shared-tree/schematizeTree.d.ts.map +1 -1
- package/dist/shared-tree/schematizeTree.js +11 -11
- package/dist/shared-tree/schematizeTree.js.map +1 -1
- package/dist/shared-tree/schematizingTreeView.d.ts +10 -3
- package/dist/shared-tree/schematizingTreeView.d.ts.map +1 -1
- package/dist/shared-tree/schematizingTreeView.js +39 -39
- package/dist/shared-tree/schematizingTreeView.js.map +1 -1
- package/dist/shared-tree/sharedTree.d.ts +58 -8
- package/dist/shared-tree/sharedTree.d.ts.map +1 -1
- package/dist/shared-tree/sharedTree.js +45 -12
- package/dist/shared-tree/sharedTree.js.map +1 -1
- package/dist/shared-tree/sharedTreeChangeCodecs.d.ts +3 -5
- package/dist/shared-tree/sharedTreeChangeCodecs.d.ts.map +1 -1
- package/dist/shared-tree/sharedTreeChangeCodecs.js +18 -11
- package/dist/shared-tree/sharedTreeChangeCodecs.js.map +1 -1
- package/dist/shared-tree/sharedTreeChangeFamily.d.ts +1 -0
- package/dist/shared-tree/sharedTreeChangeFamily.d.ts.map +1 -1
- package/dist/shared-tree/sharedTreeChangeFamily.js +9 -6
- package/dist/shared-tree/sharedTreeChangeFamily.js.map +1 -1
- package/dist/shared-tree/sharedTreeChangeFormat.d.ts +4 -188
- package/dist/shared-tree/sharedTreeChangeFormat.d.ts.map +1 -1
- package/dist/shared-tree/sharedTreeChangeFormat.js +3 -3
- package/dist/shared-tree/sharedTreeChangeFormat.js.map +1 -1
- package/dist/shared-tree/sharedTreeEditBuilder.d.ts.map +1 -1
- package/dist/shared-tree/sharedTreeEditBuilder.js +4 -1
- package/dist/shared-tree/sharedTreeEditBuilder.js.map +1 -1
- package/dist/shared-tree/treeApi.d.ts +83 -2
- package/dist/shared-tree/treeApi.d.ts.map +1 -1
- package/dist/shared-tree/treeApi.js +37 -14
- package/dist/shared-tree/treeApi.js.map +1 -1
- package/dist/shared-tree/treeCheckout.d.ts +41 -20
- package/dist/shared-tree/treeCheckout.d.ts.map +1 -1
- package/dist/shared-tree/treeCheckout.js +135 -61
- package/dist/shared-tree/treeCheckout.js.map +1 -1
- package/dist/shared-tree/treeView.d.ts +3 -3
- package/dist/shared-tree/treeView.d.ts.map +1 -1
- package/dist/shared-tree/treeView.js.map +1 -1
- package/dist/shared-tree-core/branch.d.ts +5 -32
- package/dist/shared-tree-core/branch.d.ts.map +1 -1
- package/dist/shared-tree-core/branch.js +12 -142
- package/dist/shared-tree-core/branch.js.map +1 -1
- package/dist/shared-tree-core/editManager.d.ts +2 -15
- package/dist/shared-tree-core/editManager.d.ts.map +1 -1
- package/dist/shared-tree-core/editManager.js +38 -82
- package/dist/shared-tree-core/editManager.js.map +1 -1
- package/dist/shared-tree-core/editManagerCodecs.d.ts +4 -4
- package/dist/shared-tree-core/editManagerCodecs.d.ts.map +1 -1
- package/dist/shared-tree-core/editManagerCodecs.js +24 -10
- package/dist/shared-tree-core/editManagerCodecs.js.map +1 -1
- package/dist/shared-tree-core/editManagerFormat.d.ts +4 -5
- package/dist/shared-tree-core/editManagerFormat.d.ts.map +1 -1
- package/dist/shared-tree-core/editManagerFormat.js +9 -10
- package/dist/shared-tree-core/editManagerFormat.js.map +1 -1
- package/dist/shared-tree-core/editManagerSummarizer.d.ts +7 -6
- package/dist/shared-tree-core/editManagerSummarizer.d.ts.map +1 -1
- package/dist/shared-tree-core/editManagerSummarizer.js +6 -9
- package/dist/shared-tree-core/editManagerSummarizer.js.map +1 -1
- package/dist/shared-tree-core/index.d.ts +1 -1
- package/dist/shared-tree-core/index.d.ts.map +1 -1
- package/dist/shared-tree-core/index.js +2 -2
- package/dist/shared-tree-core/index.js.map +1 -1
- package/dist/shared-tree-core/messageCodecs.d.ts +7 -4
- package/dist/shared-tree-core/messageCodecs.d.ts.map +1 -1
- package/dist/shared-tree-core/messageCodecs.js +21 -4
- package/dist/shared-tree-core/messageCodecs.js.map +1 -1
- package/dist/shared-tree-core/messageFormat.d.ts +10 -2
- package/dist/shared-tree-core/messageFormat.d.ts.map +1 -1
- package/dist/shared-tree-core/messageFormat.js +1 -0
- package/dist/shared-tree-core/messageFormat.js.map +1 -1
- package/dist/shared-tree-core/messageTypes.d.ts.map +1 -1
- package/dist/shared-tree-core/messageTypes.js.map +1 -1
- package/dist/shared-tree-core/sequenceIdUtils.d.ts.map +1 -1
- package/dist/shared-tree-core/sequenceIdUtils.js.map +1 -1
- package/dist/shared-tree-core/sharedTreeCore.d.ts +10 -5
- package/dist/shared-tree-core/sharedTreeCore.d.ts.map +1 -1
- package/dist/shared-tree-core/sharedTreeCore.js +18 -18
- package/dist/shared-tree-core/sharedTreeCore.js.map +1 -1
- package/dist/simple-tree/arrayNode.d.ts +187 -0
- package/dist/simple-tree/arrayNode.d.ts.map +1 -0
- package/dist/simple-tree/arrayNode.js +438 -0
- package/dist/simple-tree/arrayNode.js.map +1 -0
- package/dist/simple-tree/index.d.ts +10 -8
- package/dist/simple-tree/index.d.ts.map +1 -1
- package/dist/simple-tree/index.js +9 -8
- package/dist/simple-tree/index.js.map +1 -1
- package/dist/simple-tree/leafNodeSchema.d.ts +11 -0
- package/dist/simple-tree/leafNodeSchema.d.ts.map +1 -0
- package/dist/simple-tree/leafNodeSchema.js +51 -0
- package/dist/simple-tree/leafNodeSchema.js.map +1 -0
- package/dist/simple-tree/mapNode.d.ts +86 -0
- package/dist/simple-tree/mapNode.d.ts.map +1 -0
- package/dist/simple-tree/mapNode.js +204 -0
- package/dist/simple-tree/mapNode.js.map +1 -0
- package/dist/simple-tree/objectNode.d.ts +62 -0
- package/dist/simple-tree/objectNode.d.ts.map +1 -0
- package/dist/simple-tree/objectNode.js +242 -0
- package/dist/simple-tree/objectNode.js.map +1 -0
- package/dist/simple-tree/proxies.d.ts +21 -62
- package/dist/simple-tree/proxies.d.ts.map +1 -1
- package/dist/simple-tree/proxies.js +128 -679
- package/dist/simple-tree/proxies.js.map +1 -1
- package/dist/simple-tree/proxyBinding.d.ts +48 -0
- package/dist/simple-tree/proxyBinding.d.ts.map +1 -0
- package/dist/simple-tree/proxyBinding.js +132 -0
- package/dist/simple-tree/proxyBinding.js.map +1 -0
- package/dist/simple-tree/rawNode.d.ts +9 -50
- package/dist/simple-tree/rawNode.d.ts.map +1 -1
- package/dist/simple-tree/rawNode.js +15 -91
- package/dist/simple-tree/rawNode.js.map +1 -1
- package/dist/simple-tree/schemaCaching.d.ts +26 -0
- package/dist/simple-tree/schemaCaching.d.ts.map +1 -0
- package/dist/simple-tree/schemaCaching.js +69 -0
- package/dist/simple-tree/schemaCaching.js.map +1 -0
- package/dist/simple-tree/schemaCreationUtilities.d.ts +2 -1
- package/dist/simple-tree/schemaCreationUtilities.d.ts.map +1 -1
- package/dist/simple-tree/schemaCreationUtilities.js +3 -3
- package/dist/simple-tree/schemaCreationUtilities.js.map +1 -1
- package/dist/simple-tree/schemaFactory.d.ts +92 -43
- package/dist/simple-tree/schemaFactory.d.ts.map +1 -1
- package/dist/simple-tree/schemaFactory.js +124 -177
- package/dist/simple-tree/schemaFactory.js.map +1 -1
- package/dist/simple-tree/schemaFactoryRecursive.d.ts +27 -83
- package/dist/simple-tree/schemaFactoryRecursive.d.ts.map +1 -1
- package/dist/simple-tree/schemaFactoryRecursive.js +1 -115
- package/dist/simple-tree/schemaFactoryRecursive.js.map +1 -1
- package/dist/simple-tree/schemaTypes.d.ts +123 -70
- package/dist/simple-tree/schemaTypes.d.ts.map +1 -1
- package/dist/simple-tree/schemaTypes.js +86 -5
- package/dist/simple-tree/schemaTypes.js.map +1 -1
- package/dist/simple-tree/testRecursiveDomain.d.ts +8 -8
- package/dist/simple-tree/testRecursiveDomain.d.ts.map +1 -1
- package/dist/simple-tree/testRecursiveDomain.js +2 -2
- package/dist/simple-tree/testRecursiveDomain.js.map +1 -1
- package/dist/simple-tree/toFlexSchema.d.ts +8 -20
- package/dist/simple-tree/toFlexSchema.d.ts.map +1 -1
- package/dist/simple-tree/toFlexSchema.js +33 -41
- package/dist/simple-tree/toFlexSchema.js.map +1 -1
- package/dist/simple-tree/toMapTree.d.ts +12 -22
- package/dist/simple-tree/toMapTree.d.ts.map +1 -1
- package/dist/simple-tree/toMapTree.js +185 -136
- package/dist/simple-tree/toMapTree.js.map +1 -1
- package/dist/simple-tree/tree.d.ts +20 -3
- package/dist/simple-tree/tree.d.ts.map +1 -1
- package/dist/simple-tree/tree.js.map +1 -1
- package/dist/simple-tree/treeApi.d.ts +82 -5
- package/dist/simple-tree/treeApi.d.ts.map +1 -1
- package/dist/simple-tree/treeApi.js +96 -18
- package/dist/simple-tree/treeApi.js.map +1 -1
- package/dist/simple-tree/types.d.ts +1 -142
- package/dist/simple-tree/types.d.ts.map +1 -1
- package/dist/simple-tree/types.js.map +1 -1
- package/dist/simple-tree/typesUnsafe.d.ts +32 -17
- package/dist/simple-tree/typesUnsafe.d.ts.map +1 -1
- package/dist/simple-tree/typesUnsafe.js.map +1 -1
- package/dist/treeFactory.d.ts +31 -14
- package/dist/treeFactory.d.ts.map +1 -1
- package/dist/treeFactory.js +50 -23
- package/dist/treeFactory.js.map +1 -1
- package/dist/util/brand.d.ts +26 -114
- package/dist/util/brand.d.ts.map +1 -1
- package/dist/util/brand.js +24 -91
- package/dist/util/brand.js.map +1 -1
- package/dist/util/idAllocator.d.ts.map +1 -1
- package/dist/util/idAllocator.js +2 -2
- package/dist/util/idAllocator.js.map +1 -1
- package/dist/util/index.d.ts +5 -3
- package/dist/util/index.d.ts.map +1 -1
- package/dist/util/index.js +8 -9
- package/dist/util/index.js.map +1 -1
- package/dist/util/nestedSet.d.ts.map +1 -1
- package/dist/util/nestedSet.js.map +1 -1
- package/dist/util/opaque.d.ts +46 -0
- package/dist/util/opaque.d.ts.map +1 -0
- package/dist/util/opaque.js +29 -0
- package/dist/util/opaque.js.map +1 -0
- package/dist/util/referenceCounting.d.ts +1 -1
- package/dist/util/referenceCounting.d.ts.map +1 -1
- package/dist/util/referenceCounting.js +3 -3
- package/dist/util/referenceCounting.js.map +1 -1
- package/dist/util/typeCheckTests.d.ts +1 -1
- package/dist/util/typeCheckTests.d.ts.map +1 -1
- package/dist/util/typeCheckTests.js.map +1 -1
- package/dist/util/typeUtils.d.ts +13 -0
- package/dist/util/typeUtils.d.ts.map +1 -1
- package/dist/util/typeUtils.js.map +1 -1
- package/dist/util/typeboxBrand.d.ts +17 -0
- package/dist/util/typeboxBrand.d.ts.map +1 -0
- package/dist/util/typeboxBrand.js +32 -0
- package/dist/util/typeboxBrand.js.map +1 -0
- package/dist/util/utils.d.ts +2 -15
- package/dist/util/utils.d.ts.map +1 -1
- package/dist/util/utils.js +11 -11
- package/dist/util/utils.js.map +1 -1
- package/docs/main/compatibility.md +95 -0
- package/docs/main/schema2.md +3 -3
- package/docs/main/sequence-field/move-composition.md +46 -0
- package/docs/main/tree-content-apis.md +5 -5
- package/docs/roadmap.md +4 -4
- package/internal.d.ts +11 -0
- package/lib/beta.d.ts +90 -0
- package/lib/codec/codec.d.ts +10 -4
- package/lib/codec/codec.d.ts.map +1 -1
- package/lib/codec/codec.js +2 -2
- package/lib/codec/codec.js.map +1 -1
- package/lib/codec/discriminatedUnions.d.ts.map +1 -1
- package/lib/codec/discriminatedUnions.js +5 -1
- package/lib/codec/discriminatedUnions.js.map +1 -1
- package/lib/codec/index.d.ts +2 -2
- package/lib/codec/index.d.ts.map +1 -1
- package/lib/codec/index.js +1 -1
- package/lib/codec/index.js.map +1 -1
- package/lib/codec/noopValidator.d.ts.map +1 -1
- package/lib/codec/noopValidator.js.map +1 -1
- package/lib/codec/versioned/codec.d.ts +10 -2
- package/lib/codec/versioned/codec.d.ts.map +1 -1
- package/lib/codec/versioned/codec.js +25 -4
- package/lib/codec/versioned/codec.js.map +1 -1
- package/lib/codec/versioned/index.d.ts +1 -1
- package/lib/codec/versioned/index.d.ts.map +1 -1
- package/lib/codec/versioned/index.js +1 -1
- package/lib/codec/versioned/index.js.map +1 -1
- package/lib/core/change-family/changeFamily.d.ts +2 -2
- package/lib/core/change-family/changeFamily.d.ts.map +1 -1
- package/lib/core/change-family/changeFamily.js.map +1 -1
- package/lib/core/forest/editableForest.d.ts +1 -1
- package/lib/core/forest/editableForest.d.ts.map +1 -1
- package/lib/core/forest/editableForest.js +2 -2
- package/lib/core/forest/editableForest.js.map +1 -1
- package/lib/core/forest/forest.d.ts +5 -1
- package/lib/core/forest/forest.d.ts.map +1 -1
- package/lib/core/forest/forest.js +1 -1
- package/lib/core/forest/forest.js.map +1 -1
- package/lib/core/index.d.ts +3 -3
- package/lib/core/index.d.ts.map +1 -1
- package/lib/core/index.js +3 -3
- package/lib/core/index.js.map +1 -1
- package/lib/core/rebase/changeRebaser.d.ts.map +1 -1
- package/lib/core/rebase/changeRebaser.js.map +1 -1
- package/lib/core/rebase/index.d.ts +1 -1
- package/lib/core/rebase/index.d.ts.map +1 -1
- package/lib/core/rebase/index.js +1 -1
- package/lib/core/rebase/index.js.map +1 -1
- package/lib/core/rebase/revisionTagCodec.d.ts.map +1 -1
- package/lib/core/rebase/revisionTagCodec.js +1 -1
- package/lib/core/rebase/revisionTagCodec.js.map +1 -1
- package/lib/core/rebase/types.d.ts +30 -0
- package/lib/core/rebase/types.d.ts.map +1 -1
- package/lib/core/rebase/types.js +23 -0
- package/lib/core/rebase/types.js.map +1 -1
- package/lib/core/rebase/utils.d.ts.map +1 -1
- package/lib/core/rebase/utils.js +6 -5
- package/lib/core/rebase/utils.js.map +1 -1
- package/lib/core/revertible/index.d.ts +1 -1
- package/lib/core/revertible/index.d.ts.map +1 -1
- package/lib/core/revertible/index.js +1 -1
- package/lib/core/revertible/index.js.map +1 -1
- package/lib/core/revertible/revertible.d.ts +15 -49
- package/lib/core/revertible/revertible.d.ts.map +1 -1
- package/lib/core/revertible/revertible.js +2 -32
- package/lib/core/revertible/revertible.js.map +1 -1
- package/lib/core/schema-stored/format.d.ts.map +1 -1
- package/lib/core/schema-stored/format.js.map +1 -1
- package/lib/core/schema-stored/index.d.ts +2 -1
- package/lib/core/schema-stored/index.d.ts.map +1 -1
- package/lib/core/schema-stored/index.js +2 -1
- package/lib/core/schema-stored/index.js.map +1 -1
- package/lib/core/schema-stored/multiplicity.d.ts.map +1 -0
- package/lib/core/schema-stored/multiplicity.js.map +1 -0
- package/lib/core/schema-stored/schema.d.ts +32 -9
- package/lib/core/schema-stored/schema.d.ts.map +1 -1
- package/lib/core/schema-stored/schema.js +13 -7
- package/lib/core/schema-stored/schema.js.map +1 -1
- package/lib/core/schema-stored/storedSchemaRepository.d.ts +1 -1
- package/lib/core/schema-stored/storedSchemaRepository.d.ts.map +1 -1
- package/lib/core/schema-stored/storedSchemaRepository.js.map +1 -1
- package/lib/core/tree/anchorSet.d.ts +31 -16
- package/lib/core/tree/anchorSet.d.ts.map +1 -1
- package/lib/core/tree/anchorSet.js +10 -35
- package/lib/core/tree/anchorSet.js.map +1 -1
- package/lib/core/tree/cursor.d.ts.map +1 -1
- package/lib/core/tree/cursor.js +1 -1
- package/lib/core/tree/cursor.js.map +1 -1
- package/lib/core/tree/delta.d.ts.map +1 -1
- package/lib/core/tree/delta.js.map +1 -1
- package/lib/core/tree/deltaUtil.d.ts +1 -1
- package/lib/core/tree/deltaUtil.d.ts.map +1 -1
- package/lib/core/tree/deltaUtil.js.map +1 -1
- package/lib/core/tree/detachedFieldIndex.d.ts +2 -2
- package/lib/core/tree/detachedFieldIndex.d.ts.map +1 -1
- package/lib/core/tree/detachedFieldIndex.js +2 -2
- package/lib/core/tree/detachedFieldIndex.js.map +1 -1
- package/lib/core/tree/detachedFieldIndexCodec.d.ts.map +1 -1
- package/lib/core/tree/detachedFieldIndexCodec.js +1 -1
- package/lib/core/tree/detachedFieldIndexCodec.js.map +1 -1
- package/lib/core/tree/detachedFieldIndexFormat.d.ts.map +1 -1
- package/lib/core/tree/detachedFieldIndexFormat.js.map +1 -1
- package/lib/core/tree/detachedFieldIndexTypes.d.ts.map +1 -1
- package/lib/core/tree/detachedFieldIndexTypes.js.map +1 -1
- package/lib/core/tree/mapTree.d.ts.map +1 -1
- package/lib/core/tree/mapTree.js.map +1 -1
- package/lib/core/tree/pathTree.d.ts.map +1 -1
- package/lib/core/tree/pathTree.js.map +1 -1
- package/lib/core/tree/persistedTreeTextFormat.d.ts.map +1 -1
- package/lib/core/tree/persistedTreeTextFormat.js.map +1 -1
- package/lib/core/tree/sparseTree.d.ts.map +1 -1
- package/lib/core/tree/sparseTree.js +1 -1
- package/lib/core/tree/sparseTree.js.map +1 -1
- package/lib/core/tree/treeTextFormat.d.ts.map +1 -1
- package/lib/core/tree/treeTextFormat.js.map +1 -1
- package/lib/core/tree/types.d.ts +1 -1
- package/lib/core/tree/types.d.ts.map +1 -1
- package/lib/core/tree/types.js +1 -1
- package/lib/core/tree/types.js.map +1 -1
- package/lib/core/tree/visitDelta.d.ts +13 -2
- package/lib/core/tree/visitDelta.d.ts.map +1 -1
- package/lib/core/tree/visitDelta.js +43 -14
- package/lib/core/tree/visitDelta.js.map +1 -1
- package/lib/core/tree/visitPath.d.ts +1 -1
- package/lib/core/tree/visitPath.d.ts.map +1 -1
- package/lib/core/tree/visitPath.js +4 -0
- package/lib/core/tree/visitPath.js.map +1 -1
- package/lib/core/tree/visitorUtils.d.ts +4 -4
- package/lib/core/tree/visitorUtils.d.ts.map +1 -1
- package/lib/core/tree/visitorUtils.js +1 -1
- package/lib/core/tree/visitorUtils.js.map +1 -1
- package/lib/domains/json/jsonCursor.d.ts.map +1 -1
- package/lib/domains/json/jsonCursor.js +1 -1
- package/lib/domains/json/jsonCursor.js.map +1 -1
- package/lib/domains/json/jsonDomainSchema.d.ts.map +1 -1
- package/lib/domains/json/jsonDomainSchema.js.map +1 -1
- package/lib/domains/leafDomain.d.ts.map +1 -1
- package/lib/domains/leafDomain.js +1 -1
- package/lib/domains/leafDomain.js.map +1 -1
- package/lib/domains/nodeKey/nodeKeySchema.d.ts.map +1 -1
- package/lib/domains/nodeKey/nodeKeySchema.js +2 -2
- package/lib/domains/nodeKey/nodeKeySchema.js.map +1 -1
- package/lib/domains/schemaBuilder.d.ts +19 -81
- package/lib/domains/schemaBuilder.d.ts.map +1 -1
- package/lib/domains/schemaBuilder.js +24 -92
- package/lib/domains/schemaBuilder.js.map +1 -1
- package/lib/domains/testRecursiveDomain.d.ts +0 -4
- package/lib/domains/testRecursiveDomain.d.ts.map +1 -1
- package/lib/domains/testRecursiveDomain.js +1 -8
- package/lib/domains/testRecursiveDomain.js.map +1 -1
- package/lib/events/events.d.ts.map +1 -1
- package/lib/events/events.js +1 -1
- package/lib/events/events.js.map +1 -1
- package/lib/external-utilities/typeboxValidator.d.ts.map +1 -1
- package/lib/external-utilities/typeboxValidator.js.map +1 -1
- package/lib/feature-libraries/changeAtomIdCodec.d.ts +1 -1
- package/lib/feature-libraries/changeAtomIdCodec.d.ts.map +1 -1
- package/lib/feature-libraries/changeAtomIdCodec.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/basicChunk.d.ts +3 -3
- package/lib/feature-libraries/chunked-forest/basicChunk.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/basicChunk.js +4 -4
- package/lib/feature-libraries/chunked-forest/basicChunk.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/chunk.d.ts +1 -1
- package/lib/feature-libraries/chunked-forest/chunk.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/chunk.js +1 -1
- package/lib/feature-libraries/chunked-forest/chunk.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/chunkTree.d.ts +2 -2
- package/lib/feature-libraries/chunked-forest/chunkTree.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/chunkTree.js +5 -6
- package/lib/feature-libraries/chunked-forest/chunkTree.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/chunkedForest.d.ts +2 -2
- package/lib/feature-libraries/chunked-forest/chunkedForest.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/chunkedForest.js +4 -3
- package/lib/feature-libraries/chunked-forest/chunkedForest.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/chunkCodecUtilities.d.ts +2 -2
- package/lib/feature-libraries/chunked-forest/codec/chunkCodecUtilities.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/chunkCodecUtilities.js +1 -1
- package/lib/feature-libraries/chunked-forest/codec/chunkCodecUtilities.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/chunkDecoding.d.ts +1 -1
- package/lib/feature-libraries/chunked-forest/codec/chunkDecoding.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/chunkDecoding.js +3 -3
- package/lib/feature-libraries/chunked-forest/codec/chunkDecoding.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.d.ts +2 -2
- package/lib/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.js +1 -1
- package/lib/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/chunkEncodingGeneric.d.ts +1 -1
- package/lib/feature-libraries/chunked-forest/codec/chunkEncodingGeneric.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/chunkEncodingGeneric.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/codecs.d.ts +4 -9
- package/lib/feature-libraries/chunked-forest/codec/codecs.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/codecs.js +4 -3
- package/lib/feature-libraries/chunked-forest/codec/codecs.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/compressedEncode.d.ts +3 -3
- package/lib/feature-libraries/chunked-forest/codec/compressedEncode.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/compressedEncode.js +1 -1
- package/lib/feature-libraries/chunked-forest/codec/compressedEncode.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/format.d.ts +1 -1
- package/lib/feature-libraries/chunked-forest/codec/format.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/format.js +2 -3
- package/lib/feature-libraries/chunked-forest/codec/format.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/formatGeneric.d.ts +1 -1
- package/lib/feature-libraries/chunked-forest/codec/index.d.ts +1 -1
- package/lib/feature-libraries/chunked-forest/codec/index.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/index.js +1 -1
- package/lib/feature-libraries/chunked-forest/codec/index.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/nodeShape.d.ts +2 -2
- package/lib/feature-libraries/chunked-forest/codec/nodeShape.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/nodeShape.js +1 -1
- package/lib/feature-libraries/chunked-forest/codec/nodeShape.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/schemaBasedEncoding.d.ts +3 -3
- package/lib/feature-libraries/chunked-forest/codec/schemaBasedEncoding.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/schemaBasedEncoding.js +3 -4
- package/lib/feature-libraries/chunked-forest/codec/schemaBasedEncoding.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/uncompressedEncode.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/uncompressedEncode.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/emptyChunk.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/emptyChunk.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/index.d.ts +1 -1
- package/lib/feature-libraries/chunked-forest/index.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/index.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/sequenceChunk.d.ts +1 -1
- package/lib/feature-libraries/chunked-forest/sequenceChunk.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/sequenceChunk.js +1 -1
- package/lib/feature-libraries/chunked-forest/sequenceChunk.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/uniformChunk.d.ts +3 -3
- package/lib/feature-libraries/chunked-forest/uniformChunk.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/uniformChunk.js +4 -4
- package/lib/feature-libraries/chunked-forest/uniformChunk.js.map +1 -1
- package/lib/feature-libraries/contextuallyTyped.d.ts +5 -9
- package/lib/feature-libraries/contextuallyTyped.d.ts.map +1 -1
- package/lib/feature-libraries/contextuallyTyped.js +6 -20
- package/lib/feature-libraries/contextuallyTyped.js.map +1 -1
- package/lib/feature-libraries/default-schema/defaultEditBuilder.d.ts +3 -5
- package/lib/feature-libraries/default-schema/defaultEditBuilder.d.ts.map +1 -1
- package/lib/feature-libraries/default-schema/defaultEditBuilder.js +6 -6
- package/lib/feature-libraries/default-schema/defaultEditBuilder.js.map +1 -1
- package/lib/feature-libraries/default-schema/defaultFieldKinds.d.ts +18 -4
- package/lib/feature-libraries/default-schema/defaultFieldKinds.d.ts.map +1 -1
- package/lib/feature-libraries/default-schema/defaultFieldKinds.js +55 -20
- package/lib/feature-libraries/default-schema/defaultFieldKinds.js.map +1 -1
- package/lib/feature-libraries/default-schema/defaultSchema.d.ts.map +1 -1
- package/lib/feature-libraries/default-schema/defaultSchema.js.map +1 -1
- package/lib/feature-libraries/default-schema/index.d.ts +1 -1
- package/lib/feature-libraries/default-schema/index.d.ts.map +1 -1
- package/lib/feature-libraries/default-schema/index.js +1 -1
- package/lib/feature-libraries/default-schema/index.js.map +1 -1
- package/lib/feature-libraries/default-schema/noChangeCodecs.d.ts +8 -0
- package/lib/feature-libraries/default-schema/noChangeCodecs.d.ts.map +1 -0
- package/lib/feature-libraries/default-schema/noChangeCodecs.js +7 -0
- package/lib/feature-libraries/default-schema/noChangeCodecs.js.map +1 -0
- package/lib/feature-libraries/detachedFieldIndexSummarizer.d.ts +1 -1
- package/lib/feature-libraries/detachedFieldIndexSummarizer.d.ts.map +1 -1
- package/lib/feature-libraries/detachedFieldIndexSummarizer.js +1 -1
- package/lib/feature-libraries/detachedFieldIndexSummarizer.js.map +1 -1
- package/lib/feature-libraries/editableTreeBinder.d.ts.map +1 -1
- package/lib/feature-libraries/editableTreeBinder.js +1 -1
- package/lib/feature-libraries/editableTreeBinder.js.map +1 -1
- package/lib/feature-libraries/fieldGenerator.d.ts +1 -1
- package/lib/feature-libraries/fieldGenerator.d.ts.map +1 -1
- package/lib/feature-libraries/fieldGenerator.js.map +1 -1
- package/lib/feature-libraries/flex-tree/context.d.ts +16 -4
- package/lib/feature-libraries/flex-tree/context.d.ts.map +1 -1
- package/lib/feature-libraries/flex-tree/context.js +17 -5
- package/lib/feature-libraries/flex-tree/context.js.map +1 -1
- package/lib/feature-libraries/flex-tree/flexTreeTypes.d.ts +43 -36
- package/lib/feature-libraries/flex-tree/flexTreeTypes.d.ts.map +1 -1
- package/lib/feature-libraries/flex-tree/flexTreeTypes.js +8 -5
- package/lib/feature-libraries/flex-tree/flexTreeTypes.js.map +1 -1
- package/lib/feature-libraries/flex-tree/index.d.ts +3 -3
- package/lib/feature-libraries/flex-tree/index.d.ts.map +1 -1
- package/lib/feature-libraries/flex-tree/index.js +2 -2
- package/lib/feature-libraries/flex-tree/index.js.map +1 -1
- package/lib/feature-libraries/flex-tree/lazyEntity.d.ts +7 -8
- package/lib/feature-libraries/flex-tree/lazyEntity.d.ts.map +1 -1
- package/lib/feature-libraries/flex-tree/lazyEntity.js +8 -12
- package/lib/feature-libraries/flex-tree/lazyEntity.js.map +1 -1
- package/lib/feature-libraries/flex-tree/lazyField.d.ts +21 -7
- package/lib/feature-libraries/flex-tree/lazyField.d.ts.map +1 -1
- package/lib/feature-libraries/flex-tree/lazyField.js +43 -22
- package/lib/feature-libraries/flex-tree/lazyField.js.map +1 -1
- package/lib/feature-libraries/flex-tree/lazyNode.d.ts +12 -9
- package/lib/feature-libraries/flex-tree/lazyNode.d.ts.map +1 -1
- package/lib/feature-libraries/flex-tree/lazyNode.js +35 -80
- package/lib/feature-libraries/flex-tree/lazyNode.js.map +1 -1
- package/lib/feature-libraries/flex-tree/nodeKeys.d.ts.map +1 -1
- package/lib/feature-libraries/flex-tree/nodeKeys.js.map +1 -1
- package/lib/feature-libraries/flex-tree/treeEvents.d.ts +7 -70
- package/lib/feature-libraries/flex-tree/treeEvents.d.ts.map +1 -1
- package/lib/feature-libraries/flex-tree/treeEvents.js.map +1 -1
- package/lib/feature-libraries/flex-tree/unboxed.d.ts.map +1 -1
- package/lib/feature-libraries/flex-tree/unboxed.js +1 -1
- package/lib/feature-libraries/flex-tree/unboxed.js.map +1 -1
- package/lib/feature-libraries/flex-tree/utilities.d.ts.map +1 -1
- package/lib/feature-libraries/flex-tree/utilities.js.map +1 -1
- package/lib/feature-libraries/forest-summary/codec.d.ts.map +1 -1
- package/lib/feature-libraries/forest-summary/codec.js +1 -1
- package/lib/feature-libraries/forest-summary/codec.js.map +1 -1
- package/lib/feature-libraries/forest-summary/forestSummarizer.d.ts +3 -3
- package/lib/feature-libraries/forest-summary/forestSummarizer.d.ts.map +1 -1
- package/lib/feature-libraries/forest-summary/forestSummarizer.js +3 -3
- package/lib/feature-libraries/forest-summary/forestSummarizer.js.map +1 -1
- package/lib/feature-libraries/forest-summary/format.d.ts.map +1 -1
- package/lib/feature-libraries/forest-summary/format.js +1 -1
- package/lib/feature-libraries/forest-summary/format.js.map +1 -1
- package/lib/feature-libraries/index.d.ts +8 -9
- package/lib/feature-libraries/index.d.ts.map +1 -1
- package/lib/feature-libraries/index.js +6 -7
- package/lib/feature-libraries/index.js.map +1 -1
- package/lib/feature-libraries/mapTreeCursor.d.ts +1 -1
- package/lib/feature-libraries/mapTreeCursor.d.ts.map +1 -1
- package/lib/feature-libraries/mapTreeCursor.js +2 -2
- package/lib/feature-libraries/mapTreeCursor.js.map +1 -1
- package/lib/feature-libraries/memoizedIdRangeAllocator.js +1 -1
- package/lib/feature-libraries/memoizedIdRangeAllocator.js.map +1 -1
- package/lib/feature-libraries/modular-schema/comparison.d.ts +1 -1
- package/lib/feature-libraries/modular-schema/comparison.d.ts.map +1 -1
- package/lib/feature-libraries/modular-schema/comparison.js +3 -3
- package/lib/feature-libraries/modular-schema/comparison.js.map +1 -1
- package/lib/feature-libraries/modular-schema/fieldChangeHandler.d.ts +19 -13
- package/lib/feature-libraries/modular-schema/fieldChangeHandler.d.ts.map +1 -1
- package/lib/feature-libraries/modular-schema/fieldChangeHandler.js.map +1 -1
- package/lib/feature-libraries/modular-schema/fieldKind.d.ts +3 -4
- package/lib/feature-libraries/modular-schema/fieldKind.d.ts.map +1 -1
- package/lib/feature-libraries/modular-schema/fieldKind.js.map +1 -1
- package/lib/feature-libraries/modular-schema/fieldKindConfiguration.d.ts +21 -0
- package/lib/feature-libraries/modular-schema/fieldKindConfiguration.d.ts.map +1 -0
- package/lib/{test/codec/codec.spec.d.ts → feature-libraries/modular-schema/fieldKindConfiguration.js} +1 -1
- package/lib/feature-libraries/modular-schema/fieldKindConfiguration.js.map +1 -0
- package/lib/feature-libraries/modular-schema/fieldKindWithEditor.d.ts +1 -2
- package/lib/feature-libraries/modular-schema/fieldKindWithEditor.d.ts.map +1 -1
- package/lib/feature-libraries/modular-schema/fieldKindWithEditor.js +3 -3
- package/lib/feature-libraries/modular-schema/fieldKindWithEditor.js.map +1 -1
- package/lib/feature-libraries/modular-schema/genericFieldKind.d.ts.map +1 -1
- package/lib/feature-libraries/modular-schema/genericFieldKind.js +3 -7
- package/lib/feature-libraries/modular-schema/genericFieldKind.js.map +1 -1
- package/lib/feature-libraries/modular-schema/genericFieldKindCodecs.d.ts +3 -5
- package/lib/feature-libraries/modular-schema/genericFieldKindCodecs.d.ts.map +1 -1
- package/lib/feature-libraries/modular-schema/genericFieldKindCodecs.js +7 -7
- package/lib/feature-libraries/modular-schema/genericFieldKindCodecs.js.map +1 -1
- package/lib/feature-libraries/modular-schema/genericFieldKindFormat.d.ts +1 -1
- package/lib/feature-libraries/modular-schema/genericFieldKindFormat.d.ts.map +1 -1
- package/lib/feature-libraries/modular-schema/genericFieldKindFormat.js +1 -1
- package/lib/feature-libraries/modular-schema/genericFieldKindFormat.js.map +1 -1
- package/lib/feature-libraries/modular-schema/genericFieldKindTypes.d.ts +4 -4
- package/lib/feature-libraries/modular-schema/genericFieldKindTypes.d.ts.map +1 -1
- package/lib/feature-libraries/modular-schema/genericFieldKindTypes.js.map +1 -1
- package/lib/feature-libraries/modular-schema/index.d.ts +5 -4
- package/lib/feature-libraries/modular-schema/index.d.ts.map +1 -1
- package/lib/feature-libraries/modular-schema/index.js +2 -2
- package/lib/feature-libraries/modular-schema/index.js.map +1 -1
- package/lib/feature-libraries/modular-schema/isNeverTree.d.ts +1 -1
- package/lib/feature-libraries/modular-schema/isNeverTree.d.ts.map +1 -1
- package/lib/feature-libraries/modular-schema/isNeverTree.js +6 -7
- package/lib/feature-libraries/modular-schema/isNeverTree.js.map +1 -1
- package/lib/feature-libraries/modular-schema/modularChangeCodecs.d.ts +4 -5
- package/lib/feature-libraries/modular-schema/modularChangeCodecs.d.ts.map +1 -1
- package/lib/feature-libraries/modular-schema/modularChangeCodecs.js +63 -27
- package/lib/feature-libraries/modular-schema/modularChangeCodecs.js.map +1 -1
- package/lib/feature-libraries/modular-schema/modularChangeFamily.d.ts +13 -25
- package/lib/feature-libraries/modular-schema/modularChangeFamily.d.ts.map +1 -1
- package/lib/feature-libraries/modular-schema/modularChangeFamily.js +202 -110
- package/lib/feature-libraries/modular-schema/modularChangeFamily.js.map +1 -1
- package/lib/feature-libraries/modular-schema/modularChangeFormat.d.ts +5 -12
- package/lib/feature-libraries/modular-schema/modularChangeFormat.d.ts.map +1 -1
- package/lib/feature-libraries/modular-schema/modularChangeFormat.js +2 -12
- package/lib/feature-libraries/modular-schema/modularChangeFormat.js.map +1 -1
- package/lib/feature-libraries/modular-schema/modularChangeTypes.d.ts +6 -4
- package/lib/feature-libraries/modular-schema/modularChangeTypes.d.ts.map +1 -1
- package/lib/feature-libraries/modular-schema/modularChangeTypes.js.map +1 -1
- package/lib/feature-libraries/node-key/nodeKey.d.ts +1 -1
- package/lib/feature-libraries/node-key/nodeKey.d.ts.map +1 -1
- package/lib/feature-libraries/node-key/nodeKey.js.map +1 -1
- package/lib/feature-libraries/node-key/nodeKeyIndex.d.ts +2 -2
- package/lib/feature-libraries/node-key/nodeKeyIndex.d.ts.map +1 -1
- package/lib/feature-libraries/node-key/nodeKeyIndex.js +2 -2
- package/lib/feature-libraries/node-key/nodeKeyIndex.js.map +1 -1
- package/lib/feature-libraries/node-key/nodeKeyManager.d.ts +2 -2
- package/lib/feature-libraries/node-key/nodeKeyManager.d.ts.map +1 -1
- package/lib/feature-libraries/node-key/nodeKeyManager.js +2 -2
- package/lib/feature-libraries/node-key/nodeKeyManager.js.map +1 -1
- package/lib/feature-libraries/object-forest/objectForest.d.ts +1 -1
- package/lib/feature-libraries/object-forest/objectForest.d.ts.map +1 -1
- package/lib/feature-libraries/object-forest/objectForest.js +6 -5
- package/lib/feature-libraries/object-forest/objectForest.js.map +1 -1
- package/lib/feature-libraries/optional-field/index.d.ts +1 -1
- package/lib/feature-libraries/optional-field/index.d.ts.map +1 -1
- package/lib/feature-libraries/optional-field/index.js +1 -1
- package/lib/feature-libraries/optional-field/index.js.map +1 -1
- package/lib/feature-libraries/optional-field/optionalField.d.ts +3 -5
- package/lib/feature-libraries/optional-field/optionalField.d.ts.map +1 -1
- package/lib/feature-libraries/optional-field/optionalField.js +18 -22
- package/lib/feature-libraries/optional-field/optionalField.js.map +1 -1
- package/lib/feature-libraries/optional-field/{optionalFieldChangeFormat.d.ts → optionalFieldChangeFormatV1.d.ts} +1 -1
- package/lib/feature-libraries/optional-field/optionalFieldChangeFormatV1.d.ts.map +1 -0
- package/lib/feature-libraries/optional-field/{optionalFieldChangeFormat.js → optionalFieldChangeFormatV1.js} +11 -2
- package/lib/feature-libraries/optional-field/optionalFieldChangeFormatV1.js.map +1 -0
- package/lib/feature-libraries/optional-field/optionalFieldChangeFormatV2.d.ts +25 -0
- package/lib/feature-libraries/optional-field/optionalFieldChangeFormatV2.d.ts.map +1 -0
- package/lib/feature-libraries/optional-field/optionalFieldChangeFormatV2.js +40 -0
- package/lib/feature-libraries/optional-field/optionalFieldChangeFormatV2.js.map +1 -0
- package/lib/feature-libraries/optional-field/optionalFieldChangeTypes.d.ts +4 -7
- package/lib/feature-libraries/optional-field/optionalFieldChangeTypes.d.ts.map +1 -1
- package/lib/feature-libraries/optional-field/optionalFieldChangeTypes.js.map +1 -1
- package/lib/feature-libraries/optional-field/optionalFieldCodecV1.d.ts +12 -0
- package/lib/feature-libraries/optional-field/optionalFieldCodecV1.d.ts.map +1 -0
- package/lib/feature-libraries/optional-field/optionalFieldCodecV1.js +154 -0
- package/lib/feature-libraries/optional-field/optionalFieldCodecV1.js.map +1 -0
- package/lib/feature-libraries/optional-field/optionalFieldCodecV2.d.ts +12 -0
- package/lib/feature-libraries/optional-field/optionalFieldCodecV2.d.ts.map +1 -0
- package/lib/feature-libraries/optional-field/optionalFieldCodecV2.js +83 -0
- package/lib/feature-libraries/optional-field/optionalFieldCodecV2.js.map +1 -0
- package/lib/feature-libraries/optional-field/optionalFieldCodecs.d.ts +2 -4
- package/lib/feature-libraries/optional-field/optionalFieldCodecs.d.ts.map +1 -1
- package/lib/feature-libraries/optional-field/optionalFieldCodecs.js +7 -150
- package/lib/feature-libraries/optional-field/optionalFieldCodecs.js.map +1 -1
- package/lib/feature-libraries/schema-aware/schemaAware.d.ts +3 -4
- package/lib/feature-libraries/schema-aware/schemaAware.d.ts.map +1 -1
- package/lib/feature-libraries/schema-aware/schemaAware.js +1 -1
- package/lib/feature-libraries/schema-aware/schemaAware.js.map +1 -1
- package/lib/feature-libraries/schema-edits/index.d.ts +1 -1
- package/lib/feature-libraries/schema-edits/index.d.ts.map +1 -1
- package/lib/feature-libraries/schema-edits/index.js +1 -1
- package/lib/feature-libraries/schema-edits/index.js.map +1 -1
- package/lib/feature-libraries/schema-edits/schemaChangeCodecs.d.ts +2 -3
- package/lib/feature-libraries/schema-edits/schemaChangeCodecs.d.ts.map +1 -1
- package/lib/feature-libraries/schema-edits/schemaChangeCodecs.js +10 -2
- package/lib/feature-libraries/schema-edits/schemaChangeCodecs.js.map +1 -1
- package/lib/feature-libraries/schema-edits/schemaChangeFormat.d.ts.map +1 -1
- package/lib/feature-libraries/schema-edits/schemaChangeFormat.js.map +1 -1
- package/lib/feature-libraries/schema-edits/schemaChangeTypes.d.ts +5 -0
- package/lib/feature-libraries/schema-edits/schemaChangeTypes.d.ts.map +1 -1
- package/lib/feature-libraries/schema-edits/schemaChangeTypes.js.map +1 -1
- package/lib/feature-libraries/schema-index/codec.d.ts +1 -1
- package/lib/feature-libraries/schema-index/codec.d.ts.map +1 -1
- package/lib/feature-libraries/schema-index/codec.js +3 -3
- package/lib/feature-libraries/schema-index/codec.js.map +1 -1
- package/lib/feature-libraries/schema-index/format.d.ts.map +1 -1
- package/lib/feature-libraries/schema-index/format.js.map +1 -1
- package/lib/feature-libraries/schema-index/schemaSummarizer.d.ts +2 -2
- package/lib/feature-libraries/schema-index/schemaSummarizer.d.ts.map +1 -1
- package/lib/feature-libraries/schema-index/schemaSummarizer.js +2 -2
- package/lib/feature-libraries/schema-index/schemaSummarizer.js.map +1 -1
- package/lib/feature-libraries/schemaBuilder.d.ts +1 -1
- package/lib/feature-libraries/schemaBuilder.d.ts.map +1 -1
- package/lib/feature-libraries/schemaBuilder.js +1 -1
- package/lib/feature-libraries/schemaBuilder.js.map +1 -1
- package/lib/feature-libraries/schemaBuilderBase.d.ts +1 -1
- package/lib/feature-libraries/schemaBuilderBase.d.ts.map +1 -1
- package/lib/feature-libraries/schemaBuilderBase.js +2 -2
- package/lib/feature-libraries/schemaBuilderBase.js.map +1 -1
- package/lib/feature-libraries/sequence-field/compose.d.ts +9 -13
- package/lib/feature-libraries/sequence-field/compose.d.ts.map +1 -1
- package/lib/feature-libraries/sequence-field/compose.js +63 -30
- package/lib/feature-libraries/sequence-field/compose.js.map +1 -1
- package/lib/feature-libraries/sequence-field/format.d.ts.map +1 -1
- package/lib/feature-libraries/sequence-field/format.js +1 -1
- package/lib/feature-libraries/sequence-field/format.js.map +1 -1
- package/lib/feature-libraries/sequence-field/helperTypes.d.ts +3 -3
- package/lib/feature-libraries/sequence-field/helperTypes.d.ts.map +1 -1
- package/lib/feature-libraries/sequence-field/helperTypes.js.map +1 -1
- package/lib/feature-libraries/sequence-field/index.d.ts +5 -5
- package/lib/feature-libraries/sequence-field/index.d.ts.map +1 -1
- package/lib/feature-libraries/sequence-field/index.js.map +1 -1
- package/lib/feature-libraries/sequence-field/invert.d.ts +1 -2
- package/lib/feature-libraries/sequence-field/invert.d.ts.map +1 -1
- package/lib/feature-libraries/sequence-field/invert.js +20 -29
- package/lib/feature-libraries/sequence-field/invert.js.map +1 -1
- package/lib/feature-libraries/sequence-field/markListFactory.d.ts +4 -4
- package/lib/feature-libraries/sequence-field/markListFactory.d.ts.map +1 -1
- package/lib/feature-libraries/sequence-field/markListFactory.js.map +1 -1
- package/lib/feature-libraries/sequence-field/markQueue.d.ts +7 -7
- package/lib/feature-libraries/sequence-field/markQueue.d.ts.map +1 -1
- package/lib/feature-libraries/sequence-field/markQueue.js +1 -1
- package/lib/feature-libraries/sequence-field/markQueue.js.map +1 -1
- package/lib/feature-libraries/sequence-field/moveEffectTable.d.ts +25 -14
- package/lib/feature-libraries/sequence-field/moveEffectTable.d.ts.map +1 -1
- package/lib/feature-libraries/sequence-field/moveEffectTable.js +15 -6
- package/lib/feature-libraries/sequence-field/moveEffectTable.js.map +1 -1
- package/lib/feature-libraries/sequence-field/prune.d.ts +2 -2
- package/lib/feature-libraries/sequence-field/prune.d.ts.map +1 -1
- package/lib/feature-libraries/sequence-field/prune.js.map +1 -1
- package/lib/feature-libraries/sequence-field/rebase.d.ts +3 -4
- package/lib/feature-libraries/sequence-field/rebase.d.ts.map +1 -1
- package/lib/feature-libraries/sequence-field/rebase.js +11 -17
- package/lib/feature-libraries/sequence-field/rebase.js.map +1 -1
- package/lib/feature-libraries/sequence-field/relevantRemovedRoots.d.ts +2 -2
- package/lib/feature-libraries/sequence-field/relevantRemovedRoots.d.ts.map +1 -1
- package/lib/feature-libraries/sequence-field/relevantRemovedRoots.js +2 -2
- package/lib/feature-libraries/sequence-field/relevantRemovedRoots.js.map +1 -1
- package/lib/feature-libraries/sequence-field/sequenceFieldChangeHandler.d.ts +1 -1
- package/lib/feature-libraries/sequence-field/sequenceFieldChangeHandler.d.ts.map +1 -1
- package/lib/feature-libraries/sequence-field/sequenceFieldChangeHandler.js +1 -1
- package/lib/feature-libraries/sequence-field/sequenceFieldChangeHandler.js.map +1 -1
- package/lib/feature-libraries/sequence-field/sequenceFieldChangeRebaser.d.ts +2 -2
- package/lib/feature-libraries/sequence-field/sequenceFieldChangeRebaser.d.ts.map +1 -1
- package/lib/feature-libraries/sequence-field/sequenceFieldChangeRebaser.js +1 -1
- package/lib/feature-libraries/sequence-field/sequenceFieldChangeRebaser.js.map +1 -1
- package/lib/feature-libraries/sequence-field/sequenceFieldCodecs.d.ts +2 -3
- package/lib/feature-libraries/sequence-field/sequenceFieldCodecs.d.ts.map +1 -1
- package/lib/feature-libraries/sequence-field/sequenceFieldCodecs.js +13 -15
- package/lib/feature-libraries/sequence-field/sequenceFieldCodecs.js.map +1 -1
- package/lib/feature-libraries/sequence-field/sequenceFieldEditor.d.ts +17 -17
- package/lib/feature-libraries/sequence-field/sequenceFieldEditor.d.ts.map +1 -1
- package/lib/feature-libraries/sequence-field/sequenceFieldEditor.js +1 -1
- package/lib/feature-libraries/sequence-field/sequenceFieldEditor.js.map +1 -1
- package/lib/feature-libraries/sequence-field/sequenceFieldToDelta.d.ts +3 -3
- package/lib/feature-libraries/sequence-field/sequenceFieldToDelta.d.ts.map +1 -1
- package/lib/feature-libraries/sequence-field/sequenceFieldToDelta.js +7 -7
- package/lib/feature-libraries/sequence-field/sequenceFieldToDelta.js.map +1 -1
- package/lib/feature-libraries/sequence-field/types.d.ts +7 -8
- package/lib/feature-libraries/sequence-field/types.d.ts.map +1 -1
- package/lib/feature-libraries/sequence-field/types.js.map +1 -1
- package/lib/feature-libraries/sequence-field/utils.d.ts +42 -35
- package/lib/feature-libraries/sequence-field/utils.d.ts.map +1 -1
- package/lib/feature-libraries/sequence-field/utils.js +28 -7
- package/lib/feature-libraries/sequence-field/utils.js.map +1 -1
- package/lib/feature-libraries/storedToViewSchema.d.ts +2 -2
- package/lib/feature-libraries/storedToViewSchema.d.ts.map +1 -1
- package/lib/feature-libraries/storedToViewSchema.js +3 -3
- package/lib/feature-libraries/storedToViewSchema.js.map +1 -1
- package/lib/feature-libraries/treeCursorUtils.d.ts +1 -1
- package/lib/feature-libraries/treeCursorUtils.d.ts.map +1 -1
- package/lib/feature-libraries/treeCursorUtils.js +2 -2
- package/lib/feature-libraries/treeCursorUtils.js.map +1 -1
- package/lib/feature-libraries/treeTextCursor.d.ts +1 -1
- package/lib/feature-libraries/treeTextCursor.d.ts.map +1 -1
- package/lib/feature-libraries/treeTextCursor.js +2 -2
- package/lib/feature-libraries/treeTextCursor.js.map +1 -1
- package/lib/feature-libraries/typed-schema/flexList.d.ts +1 -2
- package/lib/feature-libraries/typed-schema/flexList.d.ts.map +1 -1
- package/lib/feature-libraries/typed-schema/flexList.js.map +1 -1
- package/lib/feature-libraries/typed-schema/index.d.ts +0 -1
- package/lib/feature-libraries/typed-schema/index.d.ts.map +1 -1
- package/lib/feature-libraries/typed-schema/index.js.map +1 -1
- package/lib/feature-libraries/typed-schema/schemaCollection.d.ts.map +1 -1
- package/lib/feature-libraries/typed-schema/schemaCollection.js +4 -4
- package/lib/feature-libraries/typed-schema/schemaCollection.js.map +1 -1
- package/lib/feature-libraries/typed-schema/typeUtils.d.ts +0 -5
- package/lib/feature-libraries/typed-schema/typeUtils.d.ts.map +1 -1
- package/lib/feature-libraries/typed-schema/typeUtils.js.map +1 -1
- package/lib/feature-libraries/typed-schema/typedTreeSchema.d.ts +5 -4
- package/lib/feature-libraries/typed-schema/typedTreeSchema.d.ts.map +1 -1
- package/lib/feature-libraries/typed-schema/typedTreeSchema.js +16 -8
- package/lib/feature-libraries/typed-schema/typedTreeSchema.js.map +1 -1
- package/lib/feature-libraries/typed-schema/view.d.ts +1 -1
- package/lib/feature-libraries/typed-schema/view.d.ts.map +1 -1
- package/lib/feature-libraries/typed-schema/view.js +1 -1
- package/lib/feature-libraries/typed-schema/view.js.map +1 -1
- package/lib/feature-libraries/valueUtilities.d.ts +6 -3
- package/lib/feature-libraries/valueUtilities.d.ts.map +1 -1
- package/lib/feature-libraries/valueUtilities.js +8 -7
- package/lib/feature-libraries/valueUtilities.js.map +1 -1
- package/lib/index.d.ts +7 -7
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +5 -7
- package/lib/index.js.map +1 -1
- package/lib/packageVersion.d.ts +1 -1
- package/lib/packageVersion.js +1 -1
- package/lib/packageVersion.js.map +1 -1
- package/lib/public.d.ts +90 -0
- package/lib/shared-tree/index.d.ts +3 -3
- package/lib/shared-tree/index.d.ts.map +1 -1
- package/lib/shared-tree/index.js +2 -2
- package/lib/shared-tree/index.js.map +1 -1
- package/lib/shared-tree/schematizeTree.d.ts +1 -1
- package/lib/shared-tree/schematizeTree.d.ts.map +1 -1
- package/lib/shared-tree/schematizeTree.js +6 -6
- package/lib/shared-tree/schematizeTree.js.map +1 -1
- package/lib/shared-tree/schematizingTreeView.d.ts +10 -3
- package/lib/shared-tree/schematizingTreeView.d.ts.map +1 -1
- package/lib/shared-tree/schematizingTreeView.js +21 -21
- package/lib/shared-tree/schematizingTreeView.js.map +1 -1
- package/lib/shared-tree/sharedTree.d.ts +58 -8
- package/lib/shared-tree/sharedTree.d.ts.map +1 -1
- package/lib/shared-tree/sharedTree.js +43 -10
- package/lib/shared-tree/sharedTree.js.map +1 -1
- package/lib/shared-tree/sharedTreeChangeCodecs.d.ts +3 -5
- package/lib/shared-tree/sharedTreeChangeCodecs.d.ts.map +1 -1
- package/lib/shared-tree/sharedTreeChangeCodecs.js +18 -10
- package/lib/shared-tree/sharedTreeChangeCodecs.js.map +1 -1
- package/lib/shared-tree/sharedTreeChangeFamily.d.ts +1 -0
- package/lib/shared-tree/sharedTreeChangeFamily.d.ts.map +1 -1
- package/lib/shared-tree/sharedTreeChangeFamily.js +7 -5
- package/lib/shared-tree/sharedTreeChangeFamily.js.map +1 -1
- package/lib/shared-tree/sharedTreeChangeFormat.d.ts +4 -188
- package/lib/shared-tree/sharedTreeChangeFormat.d.ts.map +1 -1
- package/lib/shared-tree/sharedTreeChangeFormat.js +3 -3
- package/lib/shared-tree/sharedTreeChangeFormat.js.map +1 -1
- package/lib/shared-tree/sharedTreeEditBuilder.d.ts.map +1 -1
- package/lib/shared-tree/sharedTreeEditBuilder.js +4 -1
- package/lib/shared-tree/sharedTreeEditBuilder.js.map +1 -1
- package/lib/shared-tree/treeApi.d.ts +83 -2
- package/lib/shared-tree/treeApi.d.ts.map +1 -1
- package/lib/shared-tree/treeApi.js +30 -7
- package/lib/shared-tree/treeApi.js.map +1 -1
- package/lib/shared-tree/treeCheckout.d.ts +41 -20
- package/lib/shared-tree/treeCheckout.d.ts.map +1 -1
- package/lib/shared-tree/treeCheckout.js +115 -41
- package/lib/shared-tree/treeCheckout.js.map +1 -1
- package/lib/shared-tree/treeView.d.ts +3 -3
- package/lib/shared-tree/treeView.d.ts.map +1 -1
- package/lib/shared-tree/treeView.js.map +1 -1
- package/lib/shared-tree-core/branch.d.ts +5 -32
- package/lib/shared-tree-core/branch.d.ts.map +1 -1
- package/lib/shared-tree-core/branch.js +9 -139
- package/lib/shared-tree-core/branch.js.map +1 -1
- package/lib/shared-tree-core/editManager.d.ts +2 -15
- package/lib/shared-tree-core/editManager.d.ts.map +1 -1
- package/lib/shared-tree-core/editManager.js +4 -48
- package/lib/shared-tree-core/editManager.js.map +1 -1
- package/lib/shared-tree-core/editManagerCodecs.d.ts +4 -4
- package/lib/shared-tree-core/editManagerCodecs.d.ts.map +1 -1
- package/lib/shared-tree-core/editManagerCodecs.js +19 -6
- package/lib/shared-tree-core/editManagerCodecs.js.map +1 -1
- package/lib/shared-tree-core/editManagerFormat.d.ts +4 -5
- package/lib/shared-tree-core/editManagerFormat.d.ts.map +1 -1
- package/lib/shared-tree-core/editManagerFormat.js +2 -3
- package/lib/shared-tree-core/editManagerFormat.js.map +1 -1
- package/lib/shared-tree-core/editManagerSummarizer.d.ts +7 -6
- package/lib/shared-tree-core/editManagerSummarizer.d.ts.map +1 -1
- package/lib/shared-tree-core/editManagerSummarizer.js +4 -7
- package/lib/shared-tree-core/editManagerSummarizer.js.map +1 -1
- package/lib/shared-tree-core/index.d.ts +1 -1
- package/lib/shared-tree-core/index.d.ts.map +1 -1
- package/lib/shared-tree-core/index.js.map +1 -1
- package/lib/shared-tree-core/messageCodecs.d.ts +7 -4
- package/lib/shared-tree-core/messageCodecs.d.ts.map +1 -1
- package/lib/shared-tree-core/messageCodecs.js +19 -3
- package/lib/shared-tree-core/messageCodecs.js.map +1 -1
- package/lib/shared-tree-core/messageFormat.d.ts +10 -2
- package/lib/shared-tree-core/messageFormat.d.ts.map +1 -1
- package/lib/shared-tree-core/messageFormat.js +1 -0
- package/lib/shared-tree-core/messageFormat.js.map +1 -1
- package/lib/shared-tree-core/messageTypes.d.ts.map +1 -1
- package/lib/shared-tree-core/messageTypes.js.map +1 -1
- package/lib/shared-tree-core/sequenceIdUtils.d.ts.map +1 -1
- package/lib/shared-tree-core/sequenceIdUtils.js.map +1 -1
- package/lib/shared-tree-core/sharedTreeCore.d.ts +10 -5
- package/lib/shared-tree-core/sharedTreeCore.d.ts.map +1 -1
- package/lib/shared-tree-core/sharedTreeCore.js +12 -12
- package/lib/shared-tree-core/sharedTreeCore.js.map +1 -1
- package/lib/simple-tree/arrayNode.d.ts +187 -0
- package/lib/simple-tree/arrayNode.d.ts.map +1 -0
- package/lib/simple-tree/arrayNode.js +433 -0
- package/lib/simple-tree/arrayNode.js.map +1 -0
- package/lib/simple-tree/index.d.ts +10 -8
- package/lib/simple-tree/index.d.ts.map +1 -1
- package/lib/simple-tree/index.js +4 -4
- package/lib/simple-tree/index.js.map +1 -1
- package/lib/simple-tree/leafNodeSchema.d.ts +11 -0
- package/lib/simple-tree/leafNodeSchema.d.ts.map +1 -0
- package/lib/simple-tree/leafNodeSchema.js +48 -0
- package/lib/simple-tree/leafNodeSchema.js.map +1 -0
- package/lib/simple-tree/mapNode.d.ts +86 -0
- package/lib/simple-tree/mapNode.d.ts.map +1 -0
- package/lib/simple-tree/mapNode.js +198 -0
- package/lib/simple-tree/mapNode.js.map +1 -0
- package/lib/simple-tree/objectNode.d.ts +62 -0
- package/lib/simple-tree/objectNode.d.ts.map +1 -0
- package/lib/simple-tree/objectNode.js +236 -0
- package/lib/simple-tree/objectNode.js.map +1 -0
- package/lib/simple-tree/proxies.d.ts +21 -62
- package/lib/simple-tree/proxies.d.ts.map +1 -1
- package/lib/simple-tree/proxies.js +119 -667
- package/lib/simple-tree/proxies.js.map +1 -1
- package/lib/simple-tree/proxyBinding.d.ts +48 -0
- package/lib/simple-tree/proxyBinding.d.ts.map +1 -0
- package/lib/simple-tree/proxyBinding.js +124 -0
- package/lib/simple-tree/proxyBinding.js.map +1 -0
- package/lib/simple-tree/rawNode.d.ts +9 -50
- package/lib/simple-tree/rawNode.d.ts.map +1 -1
- package/lib/simple-tree/rawNode.js +12 -85
- package/lib/simple-tree/rawNode.js.map +1 -1
- package/lib/simple-tree/schemaCaching.d.ts +26 -0
- package/lib/simple-tree/schemaCaching.d.ts.map +1 -0
- package/lib/simple-tree/schemaCaching.js +61 -0
- package/lib/simple-tree/schemaCaching.js.map +1 -0
- package/lib/simple-tree/schemaCreationUtilities.d.ts +2 -1
- package/lib/simple-tree/schemaCreationUtilities.d.ts.map +1 -1
- package/lib/simple-tree/schemaCreationUtilities.js +1 -1
- package/lib/simple-tree/schemaCreationUtilities.js.map +1 -1
- package/lib/simple-tree/schemaFactory.d.ts +92 -43
- package/lib/simple-tree/schemaFactory.d.ts.map +1 -1
- package/lib/simple-tree/schemaFactory.js +105 -157
- package/lib/simple-tree/schemaFactory.js.map +1 -1
- package/lib/simple-tree/schemaFactoryRecursive.d.ts +27 -83
- package/lib/simple-tree/schemaFactoryRecursive.d.ts.map +1 -1
- package/lib/simple-tree/schemaFactoryRecursive.js +1 -114
- package/lib/simple-tree/schemaFactoryRecursive.js.map +1 -1
- package/lib/simple-tree/schemaTypes.d.ts +123 -70
- package/lib/simple-tree/schemaTypes.d.ts.map +1 -1
- package/lib/simple-tree/schemaTypes.js +81 -4
- package/lib/simple-tree/schemaTypes.js.map +1 -1
- package/lib/simple-tree/testRecursiveDomain.d.ts +8 -8
- package/lib/simple-tree/testRecursiveDomain.d.ts.map +1 -1
- package/lib/simple-tree/testRecursiveDomain.js +2 -2
- package/lib/simple-tree/testRecursiveDomain.js.map +1 -1
- package/lib/simple-tree/toFlexSchema.d.ts +8 -20
- package/lib/simple-tree/toFlexSchema.d.ts.map +1 -1
- package/lib/simple-tree/toFlexSchema.js +22 -27
- package/lib/simple-tree/toFlexSchema.js.map +1 -1
- package/lib/simple-tree/toMapTree.d.ts +12 -22
- package/lib/simple-tree/toMapTree.d.ts.map +1 -1
- package/lib/simple-tree/toMapTree.js +183 -133
- package/lib/simple-tree/toMapTree.js.map +1 -1
- package/lib/simple-tree/tree.d.ts +20 -3
- package/lib/simple-tree/tree.d.ts.map +1 -1
- package/lib/simple-tree/tree.js.map +1 -1
- package/lib/simple-tree/treeApi.d.ts +82 -5
- package/lib/simple-tree/treeApi.d.ts.map +1 -1
- package/lib/simple-tree/treeApi.js +90 -12
- package/lib/simple-tree/treeApi.js.map +1 -1
- package/lib/simple-tree/types.d.ts +1 -142
- package/lib/simple-tree/types.d.ts.map +1 -1
- package/lib/simple-tree/types.js.map +1 -1
- package/lib/simple-tree/typesUnsafe.d.ts +32 -17
- package/lib/simple-tree/typesUnsafe.d.ts.map +1 -1
- package/lib/simple-tree/typesUnsafe.js.map +1 -1
- package/lib/treeFactory.d.ts +31 -14
- package/lib/treeFactory.d.ts.map +1 -1
- package/lib/treeFactory.js +48 -22
- package/lib/treeFactory.js.map +1 -1
- package/lib/util/brand.d.ts +26 -114
- package/lib/util/brand.d.ts.map +1 -1
- package/lib/util/brand.js +23 -83
- package/lib/util/brand.js.map +1 -1
- package/lib/util/idAllocator.d.ts.map +1 -1
- package/lib/util/idAllocator.js +1 -1
- package/lib/util/idAllocator.js.map +1 -1
- package/lib/util/index.d.ts +5 -3
- package/lib/util/index.d.ts.map +1 -1
- package/lib/util/index.js +3 -1
- package/lib/util/index.js.map +1 -1
- package/lib/util/nestedSet.d.ts.map +1 -1
- package/lib/util/nestedSet.js.map +1 -1
- package/lib/util/opaque.d.ts +46 -0
- package/lib/util/opaque.d.ts.map +1 -0
- package/lib/util/opaque.js +24 -0
- package/lib/util/opaque.js.map +1 -0
- package/lib/util/referenceCounting.d.ts +1 -1
- package/lib/util/referenceCounting.d.ts.map +1 -1
- package/lib/util/referenceCounting.js +2 -2
- package/lib/util/referenceCounting.js.map +1 -1
- package/lib/util/typeCheckTests.d.ts +1 -1
- package/lib/util/typeCheckTests.d.ts.map +1 -1
- package/lib/util/typeCheckTests.js.map +1 -1
- package/lib/util/typeUtils.d.ts +13 -0
- package/lib/util/typeUtils.d.ts.map +1 -1
- package/lib/util/typeUtils.js.map +1 -1
- package/lib/util/typeboxBrand.d.ts +17 -0
- package/lib/util/typeboxBrand.d.ts.map +1 -0
- package/lib/util/typeboxBrand.js +27 -0
- package/lib/util/typeboxBrand.js.map +1 -0
- package/lib/util/utils.d.ts +2 -15
- package/lib/util/utils.d.ts.map +1 -1
- package/lib/util/utils.js +3 -3
- package/lib/util/utils.js.map +1 -1
- package/package.json +55 -50
- package/src/codec/codec.ts +15 -7
- package/src/codec/discriminatedUnions.ts +3 -1
- package/src/codec/index.ts +8 -1
- package/src/codec/noopValidator.ts +1 -0
- package/src/codec/versioned/codec.ts +55 -25
- package/src/codec/versioned/index.ts +5 -1
- package/src/core/README.md +1 -5
- package/src/core/change-family/changeFamily.ts +3 -2
- package/src/core/forest/editableForest.ts +7 -5
- package/src/core/forest/forest.ts +11 -4
- package/src/core/index.ts +10 -8
- package/src/core/rebase/changeRebaser.ts +1 -0
- package/src/core/rebase/index.ts +4 -0
- package/src/core/rebase/revisionTagCodec.ts +3 -1
- package/src/core/rebase/types.ts +46 -1
- package/src/core/rebase/utils.ts +9 -6
- package/src/core/revertible/index.ts +1 -1
- package/src/core/revertible/revertible.ts +17 -50
- package/src/core/schema-stored/format.ts +1 -0
- package/src/core/schema-stored/index.ts +5 -2
- package/src/{feature-libraries → core/schema-stored}/multiplicity.ts +1 -0
- package/src/core/schema-stored/schema.ts +51 -23
- package/src/core/schema-stored/storedSchemaRepository.ts +4 -2
- package/src/core/tree/anchorSet.ts +52 -63
- package/src/core/tree/cursor.ts +3 -1
- package/src/core/tree/delta.ts +1 -0
- package/src/core/tree/deltaUtil.ts +2 -1
- package/src/core/tree/detachedFieldIndex.ts +6 -4
- package/src/core/tree/detachedFieldIndexCodec.ts +4 -2
- package/src/core/tree/detachedFieldIndexFormat.ts +2 -0
- package/src/core/tree/detachedFieldIndexTypes.ts +1 -0
- package/src/core/tree/mapTree.ts +1 -0
- package/src/core/tree/pathTree.ts +1 -0
- package/src/core/tree/persistedTreeTextFormat.ts +1 -0
- package/src/core/tree/sparseTree.ts +4 -2
- package/src/core/tree/treeTextFormat.ts +1 -0
- package/src/core/tree/types.ts +2 -1
- package/src/core/tree/visitDelta.ts +65 -18
- package/src/core/tree/visitPath.ts +2 -1
- package/src/core/tree/visitorUtils.ts +7 -5
- package/src/domains/json/jsonCursor.ts +6 -4
- package/src/domains/json/jsonDomainSchema.ts +1 -2
- package/src/domains/leafDomain.ts +1 -1
- package/src/domains/nodeKey/nodeKeySchema.ts +5 -4
- package/src/domains/schemaBuilder.ts +25 -214
- package/src/domains/testRecursiveDomain.ts +2 -25
- package/src/events/events.ts +2 -1
- package/src/external-utilities/typeboxValidator.ts +2 -1
- package/src/feature-libraries/README.md +4 -4
- package/src/feature-libraries/changeAtomIdCodec.ts +4 -4
- package/src/feature-libraries/chunked-forest/basicChunk.ts +12 -10
- package/src/feature-libraries/chunked-forest/chunk.ts +3 -2
- package/src/feature-libraries/chunked-forest/chunkTree.ts +17 -15
- package/src/feature-libraries/chunked-forest/chunkedForest.ts +20 -17
- package/src/feature-libraries/chunked-forest/codec/chunkCodecUtilities.ts +4 -3
- package/src/feature-libraries/chunked-forest/codec/chunkDecoding.ts +16 -14
- package/src/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.ts +5 -3
- package/src/feature-libraries/chunked-forest/codec/chunkEncodingGeneric.ts +2 -1
- package/src/feature-libraries/chunked-forest/codec/codecs.ts +9 -12
- package/src/feature-libraries/chunked-forest/codec/compressedEncode.ts +11 -9
- package/src/feature-libraries/chunked-forest/codec/format.ts +4 -3
- package/src/feature-libraries/chunked-forest/codec/index.ts +1 -6
- package/src/feature-libraries/chunked-forest/codec/nodeShape.ts +8 -6
- package/src/feature-libraries/chunked-forest/codec/schemaBasedEncoding.ts +13 -11
- package/src/feature-libraries/chunked-forest/codec/uncompressedEncode.ts +2 -1
- package/src/feature-libraries/chunked-forest/emptyChunk.ts +5 -4
- package/src/feature-libraries/chunked-forest/index.ts +0 -1
- package/src/feature-libraries/chunked-forest/sequenceChunk.ts +3 -2
- package/src/feature-libraries/chunked-forest/uniformChunk.ts +11 -9
- package/src/feature-libraries/contextuallyTyped.ts +23 -36
- package/src/feature-libraries/default-schema/defaultEditBuilder.ts +36 -57
- package/src/feature-libraries/default-schema/defaultFieldKinds.ts +78 -25
- package/src/feature-libraries/default-schema/defaultSchema.ts +1 -0
- package/src/feature-libraries/default-schema/index.ts +2 -0
- package/src/feature-libraries/default-schema/noChangeCodecs.ts +12 -0
- package/src/feature-libraries/detachedFieldIndexSummarizer.ts +4 -3
- package/src/feature-libraries/editableTreeBinder.ts +3 -1
- package/src/feature-libraries/fieldGenerator.ts +2 -1
- package/src/feature-libraries/flex-tree/README.md +2 -2
- package/src/feature-libraries/flex-tree/context.ts +34 -8
- package/src/feature-libraries/flex-tree/flexTreeTypes.ts +63 -45
- package/src/feature-libraries/flex-tree/index.ts +3 -3
- package/src/feature-libraries/flex-tree/lazyEntity.ts +13 -23
- package/src/feature-libraries/flex-tree/lazyField.ts +95 -47
- package/src/feature-libraries/flex-tree/lazyNode.ts +65 -131
- package/src/feature-libraries/flex-tree/nodeKeys.ts +1 -0
- package/src/feature-libraries/flex-tree/treeEvents.ts +7 -73
- package/src/feature-libraries/flex-tree/unboxed.ts +3 -2
- package/src/feature-libraries/flex-tree/utilities.ts +1 -0
- package/src/feature-libraries/forest-summary/codec.ts +3 -1
- package/src/feature-libraries/forest-summary/forestSummarizer.ts +13 -11
- package/src/feature-libraries/forest-summary/format.ts +2 -1
- package/src/feature-libraries/index.ts +13 -12
- package/src/feature-libraries/mapTreeCursor.ts +8 -6
- package/src/feature-libraries/memoizedIdRangeAllocator.ts +3 -3
- package/src/feature-libraries/modular-schema/comparison.ts +11 -9
- package/src/feature-libraries/modular-schema/fieldChangeHandler.ts +29 -28
- package/src/feature-libraries/modular-schema/fieldKind.ts +8 -4
- package/src/feature-libraries/modular-schema/fieldKindConfiguration.ts +24 -0
- package/src/feature-libraries/modular-schema/fieldKindWithEditor.ts +7 -5
- package/src/feature-libraries/modular-schema/genericFieldKind.ts +12 -20
- package/src/feature-libraries/modular-schema/genericFieldKindCodecs.ts +18 -31
- package/src/feature-libraries/modular-schema/genericFieldKindFormat.ts +2 -2
- package/src/feature-libraries/modular-schema/genericFieldKindTypes.ts +4 -4
- package/src/feature-libraries/modular-schema/index.ts +5 -2
- package/src/feature-libraries/modular-schema/isNeverTree.ts +12 -12
- package/src/feature-libraries/modular-schema/modularChangeCodecs.ts +151 -56
- package/src/feature-libraries/modular-schema/modularChangeFamily.ts +460 -251
- package/src/feature-libraries/modular-schema/modularChangeFormat.ts +4 -22
- package/src/feature-libraries/modular-schema/modularChangeTypes.ts +7 -3
- package/src/feature-libraries/node-key/nodeKey.ts +2 -1
- package/src/feature-libraries/node-key/nodeKeyIndex.ts +5 -3
- package/src/feature-libraries/node-key/nodeKeyManager.ts +6 -4
- package/src/feature-libraries/object-forest/objectForest.ts +25 -23
- package/src/feature-libraries/optional-field/index.ts +1 -1
- package/src/feature-libraries/optional-field/optionalField.ts +38 -44
- package/src/feature-libraries/optional-field/{optionalFieldChangeFormat.ts → optionalFieldChangeFormatV1.ts} +10 -1
- package/src/feature-libraries/optional-field/optionalFieldChangeFormatV2.ts +60 -0
- package/src/feature-libraries/optional-field/optionalFieldChangeTypes.ts +4 -7
- package/src/feature-libraries/optional-field/optionalFieldCodecV1.ts +204 -0
- package/src/feature-libraries/optional-field/optionalFieldCodecV2.ts +135 -0
- package/src/feature-libraries/optional-field/optionalFieldCodecs.ts +11 -207
- package/src/feature-libraries/schema-aware/README.md +1 -1
- package/src/feature-libraries/schema-aware/schemaAware.ts +13 -9
- package/src/feature-libraries/schema-edits/index.ts +1 -1
- package/src/feature-libraries/schema-edits/schemaChangeCodecs.ts +23 -3
- package/src/feature-libraries/schema-edits/schemaChangeFormat.ts +1 -0
- package/src/feature-libraries/schema-edits/schemaChangeTypes.ts +6 -0
- package/src/feature-libraries/schema-index/codec.ts +8 -7
- package/src/feature-libraries/schema-index/format.ts +1 -0
- package/src/feature-libraries/schema-index/schemaSummarizer.ts +10 -8
- package/src/feature-libraries/schemaBuilder.ts +2 -1
- package/src/feature-libraries/schemaBuilderBase.ts +16 -14
- package/src/feature-libraries/sequence-field/compose.ts +283 -176
- package/src/feature-libraries/sequence-field/format.ts +2 -1
- package/src/feature-libraries/sequence-field/helperTypes.ts +5 -5
- package/src/feature-libraries/sequence-field/index.ts +4 -5
- package/src/feature-libraries/sequence-field/invert.ts +49 -82
- package/src/feature-libraries/sequence-field/markListFactory.ts +4 -4
- package/src/feature-libraries/sequence-field/markQueue.ts +12 -10
- package/src/feature-libraries/sequence-field/moveEffectTable.ts +61 -31
- package/src/feature-libraries/sequence-field/prune.ts +4 -8
- package/src/feature-libraries/sequence-field/rebase.ts +128 -141
- package/src/feature-libraries/sequence-field/relevantRemovedRoots.ts +9 -10
- package/src/feature-libraries/sequence-field/sequenceFieldChangeHandler.ts +3 -2
- package/src/feature-libraries/sequence-field/sequenceFieldChangeRebaser.ts +3 -2
- package/src/feature-libraries/sequence-field/sequenceFieldCodecs.ts +31 -38
- package/src/feature-libraries/sequence-field/sequenceFieldEditor.ts +38 -59
- package/src/feature-libraries/sequence-field/sequenceFieldToDelta.ts +15 -15
- package/src/feature-libraries/sequence-field/types.ts +7 -9
- package/src/feature-libraries/sequence-field/utils.ts +95 -76
- package/src/feature-libraries/storedToViewSchema.ts +13 -12
- package/src/feature-libraries/treeCursorUtils.ts +9 -8
- package/src/feature-libraries/treeTextCursor.ts +12 -10
- package/src/feature-libraries/typed-schema/flexList.ts +1 -3
- package/src/feature-libraries/typed-schema/index.ts +0 -2
- package/src/feature-libraries/typed-schema/schemaCollection.ts +11 -10
- package/src/feature-libraries/typed-schema/typeUtils.ts +0 -6
- package/src/feature-libraries/typed-schema/typedTreeSchema.ts +32 -18
- package/src/feature-libraries/typed-schema/view.ts +6 -5
- package/src/feature-libraries/valueUtilities.ts +11 -9
- package/src/index.ts +34 -26
- package/src/packageVersion.ts +1 -1
- package/src/shared-tree/index.ts +9 -1
- package/src/shared-tree/schematizeTree.ts +12 -10
- package/src/shared-tree/schematizingTreeView.ts +47 -28
- package/src/shared-tree/sharedTree.ts +131 -44
- package/src/shared-tree/sharedTreeChangeCodecs.ts +79 -62
- package/src/shared-tree/sharedTreeChangeFamily.ts +13 -7
- package/src/shared-tree/sharedTreeChangeFormat.ts +4 -3
- package/src/shared-tree/sharedTreeEditBuilder.ts +5 -1
- package/src/shared-tree/treeApi.ts +141 -10
- package/src/shared-tree/treeCheckout.ts +203 -60
- package/src/shared-tree/treeView.ts +5 -4
- package/src/shared-tree-core/branch.ts +20 -204
- package/src/shared-tree-core/editManager.ts +20 -78
- package/src/shared-tree-core/editManagerCodecs.ts +111 -63
- package/src/shared-tree-core/editManagerFormat.ts +7 -8
- package/src/shared-tree-core/editManagerSummarizer.ts +14 -36
- package/src/shared-tree-core/index.ts +2 -0
- package/src/shared-tree-core/messageCodecs.ts +62 -5
- package/src/shared-tree-core/messageFormat.ts +12 -2
- package/src/shared-tree-core/messageTypes.ts +1 -0
- package/src/shared-tree-core/sequenceIdUtils.ts +1 -0
- package/src/shared-tree-core/sharedTreeCore.ts +40 -22
- package/src/simple-tree/ProxyBinding.md +102 -0
- package/src/simple-tree/README.md +0 -6
- package/src/simple-tree/arrayNode.ts +769 -0
- package/src/simple-tree/index.ts +16 -9
- package/src/simple-tree/leafNodeSchema.ts +72 -0
- package/src/simple-tree/mapNode.ts +343 -0
- package/src/simple-tree/objectNode.ts +411 -0
- package/src/simple-tree/proxies.ts +197 -932
- package/src/simple-tree/proxyBinding.ts +182 -0
- package/src/simple-tree/rawNode.ts +19 -135
- package/src/simple-tree/schemaCaching.ts +90 -0
- package/src/simple-tree/schemaCreationUtilities.ts +6 -9
- package/src/simple-tree/schemaFactory.ts +247 -261
- package/src/simple-tree/schemaFactoryRecursive.ts +32 -185
- package/src/simple-tree/schemaTypes.ts +149 -81
- package/src/simple-tree/testRecursiveDomain.ts +3 -3
- package/src/simple-tree/toFlexSchema.ts +39 -47
- package/src/simple-tree/toMapTree.ts +236 -196
- package/src/simple-tree/tree.ts +24 -3
- package/src/simple-tree/treeApi.ts +209 -24
- package/src/simple-tree/types.ts +1 -173
- package/src/simple-tree/typesUnsafe.ts +42 -21
- package/src/treeFactory.ts +51 -26
- package/src/util/brand.ts +36 -168
- package/src/util/idAllocator.ts +2 -1
- package/src/util/index.ts +4 -18
- package/src/util/nestedSet.ts +1 -1
- package/src/util/opaque.ts +68 -0
- package/src/util/referenceCounting.ts +3 -3
- package/src/util/typeCheckTests.ts +7 -7
- package/src/util/typeUtils.ts +14 -0
- package/src/util/typeboxBrand.ts +31 -0
- package/src/util/utils.ts +3 -17
- package/tsconfig.json +1 -1
- package/api-extractor-cjs.json +0 -18
- package/api-extractor-esm.json +0 -14
- package/dist/feature-libraries/multiplicity.d.ts.map +0 -1
- package/dist/feature-libraries/multiplicity.js.map +0 -1
- package/dist/feature-libraries/optional-field/optionalFieldChangeFormat.d.ts.map +0 -1
- package/dist/feature-libraries/optional-field/optionalFieldChangeFormat.js.map +0 -1
- package/dist/simple-tree/flexNode.d.ts +0 -35
- package/dist/simple-tree/flexNode.d.ts.map +0 -1
- package/dist/simple-tree/flexNode.js +0 -62
- package/dist/simple-tree/flexNode.js.map +0 -1
- package/dist/simple-tree/treeArrayNode.d.ts +0 -46
- package/dist/simple-tree/treeArrayNode.d.ts.map +0 -1
- package/dist/simple-tree/treeArrayNode.js +0 -50
- package/dist/simple-tree/treeArrayNode.js.map +0 -1
- package/dist/tree-alpha.d.ts +0 -2159
- package/dist/tree-beta.d.ts +0 -2159
- package/dist/tree-public.d.ts +0 -1942
- package/dist/tree-untrimmed.d.ts +0 -6880
- package/lib/feature-libraries/multiplicity.d.ts.map +0 -1
- package/lib/feature-libraries/optional-field/optionalFieldChangeFormat.d.ts.map +0 -1
- package/lib/feature-libraries/optional-field/optionalFieldChangeFormat.js.map +0 -1
- package/lib/simple-tree/flexNode.d.ts +0 -35
- package/lib/simple-tree/flexNode.d.ts.map +0 -1
- package/lib/simple-tree/flexNode.js +0 -55
- package/lib/simple-tree/flexNode.js.map +0 -1
- package/lib/simple-tree/treeArrayNode.d.ts +0 -46
- package/lib/simple-tree/treeArrayNode.d.ts.map +0 -1
- package/lib/simple-tree/treeArrayNode.js +0 -46
- package/lib/simple-tree/treeArrayNode.js.map +0 -1
- package/lib/test/codec/ajvValidator.cjs +0 -70
- package/lib/test/codec/ajvValidator.cjs.map +0 -1
- package/lib/test/codec/ajvValidator.d.cts +0 -13
- package/lib/test/codec/ajvValidator.d.cts.map +0 -1
- package/lib/test/codec/codec.spec.d.ts.map +0 -1
- package/lib/test/codec/codec.spec.js +0 -36
- package/lib/test/codec/codec.spec.js.map +0 -1
- package/lib/test/codec/index.d.ts +0 -7
- package/lib/test/codec/index.d.ts.map +0 -1
- package/lib/test/codec/index.js +0 -7
- package/lib/test/codec/index.js.map +0 -1
- package/lib/test/codec/utils.d.ts +0 -58
- package/lib/test/codec/utils.d.ts.map +0 -1
- package/lib/test/codec/utils.js +0 -61
- package/lib/test/codec/utils.js.map +0 -1
- package/lib/test/cursorTestSuite.d.ts +0 -106
- package/lib/test/cursorTestSuite.d.ts.map +0 -1
- package/lib/test/cursorTestSuite.js +0 -680
- package/lib/test/cursorTestSuite.js.map +0 -1
- package/lib/test/domains/json/benchmarks.d.ts +0 -17
- package/lib/test/domains/json/benchmarks.d.ts.map +0 -1
- package/lib/test/domains/json/benchmarks.js +0 -61
- package/lib/test/domains/json/benchmarks.js.map +0 -1
- package/lib/test/domains/json/canada.d.ts +0 -33
- package/lib/test/domains/json/canada.d.ts.map +0 -1
- package/lib/test/domains/json/canada.js +0 -81
- package/lib/test/domains/json/canada.js.map +0 -1
- package/lib/test/domains/json/citm.d.ts +0 -81
- package/lib/test/domains/json/citm.d.ts.map +0 -1
- package/lib/test/domains/json/citm.js +0 -515
- package/lib/test/domains/json/citm.js.map +0 -1
- package/lib/test/domains/json/jsDirectObject.bench.d.ts +0 -13
- package/lib/test/domains/json/jsDirectObject.bench.d.ts.map +0 -1
- package/lib/test/domains/json/jsDirectObject.bench.js +0 -74
- package/lib/test/domains/json/jsDirectObject.bench.js.map +0 -1
- package/lib/test/domains/json/jsObjectUtil.d.ts +0 -12
- package/lib/test/domains/json/jsObjectUtil.d.ts.map +0 -1
- package/lib/test/domains/json/jsObjectUtil.js +0 -36
- package/lib/test/domains/json/jsObjectUtil.js.map +0 -1
- package/lib/test/domains/json/jsonCursor.bench.d.ts +0 -11
- package/lib/test/domains/json/jsonCursor.bench.d.ts.map +0 -1
- package/lib/test/domains/json/jsonCursor.bench.js +0 -220
- package/lib/test/domains/json/jsonCursor.bench.js.map +0 -1
- package/lib/test/domains/json/jsonCursor.spec.d.ts +0 -6
- package/lib/test/domains/json/jsonCursor.spec.d.ts.map +0 -1
- package/lib/test/domains/json/jsonCursor.spec.js +0 -75
- package/lib/test/domains/json/jsonCursor.spec.js.map +0 -1
- package/lib/test/domains/json/jsonGeneratorUtils.d.ts +0 -9
- package/lib/test/domains/json/jsonGeneratorUtils.d.ts.map +0 -1
- package/lib/test/domains/json/jsonGeneratorUtils.js +0 -36
- package/lib/test/domains/json/jsonGeneratorUtils.js.map +0 -1
- package/lib/test/domains/json/twitter.d.ts +0 -204
- package/lib/test/domains/json/twitter.d.ts.map +0 -1
- package/lib/test/domains/json/twitter.js +0 -7413
- package/lib/test/domains/json/twitter.js.map +0 -1
- package/lib/test/domains/schemaBuilder.spec.d.ts +0 -6
- package/lib/test/domains/schemaBuilder.spec.d.ts.map +0 -1
- package/lib/test/domains/schemaBuilder.spec.js +0 -148
- package/lib/test/domains/schemaBuilder.spec.js.map +0 -1
- package/lib/test/editMinter.d.ts +0 -8
- package/lib/test/editMinter.d.ts.map +0 -1
- package/lib/test/editMinter.js +0 -21
- package/lib/test/editMinter.js.map +0 -1
- package/lib/test/events/eventEmitter.spec.d.ts +0 -6
- package/lib/test/events/eventEmitter.spec.d.ts.map +0 -1
- package/lib/test/events/eventEmitter.spec.js +0 -159
- package/lib/test/events/eventEmitter.spec.js.map +0 -1
- package/lib/test/exhaustiveRebaserUtils.d.ts +0 -78
- package/lib/test/exhaustiveRebaserUtils.d.ts.map +0 -1
- package/lib/test/exhaustiveRebaserUtils.js +0 -53
- package/lib/test/exhaustiveRebaserUtils.js.map +0 -1
- package/lib/test/feature-libraries/chunked-forest/basicChunk.spec.d.ts +0 -6
- package/lib/test/feature-libraries/chunked-forest/basicChunk.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/chunked-forest/basicChunk.spec.js +0 -161
- package/lib/test/feature-libraries/chunked-forest/basicChunk.spec.js.map +0 -1
- package/lib/test/feature-libraries/chunked-forest/chunkEncodingEndToEnd.d.ts +0 -2
- package/lib/test/feature-libraries/chunked-forest/chunkEncodingEndToEnd.d.ts.map +0 -1
- package/lib/test/feature-libraries/chunked-forest/chunkEncodingEndToEnd.js +0 -102
- package/lib/test/feature-libraries/chunked-forest/chunkEncodingEndToEnd.js.map +0 -1
- package/lib/test/feature-libraries/chunked-forest/chunkTree.spec.d.ts +0 -6
- package/lib/test/feature-libraries/chunked-forest/chunkTree.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/chunked-forest/chunkTree.spec.js +0 -259
- package/lib/test/feature-libraries/chunked-forest/chunkTree.spec.js.map +0 -1
- package/lib/test/feature-libraries/chunked-forest/chunkedForest.spec.d.ts +0 -6
- package/lib/test/feature-libraries/chunked-forest/chunkedForest.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/chunked-forest/chunkedForest.spec.js +0 -47
- package/lib/test/feature-libraries/chunked-forest/chunkedForest.spec.js.map +0 -1
- package/lib/test/feature-libraries/chunked-forest/codec/checkEncode.d.ts +0 -9
- package/lib/test/feature-libraries/chunked-forest/codec/checkEncode.d.ts.map +0 -1
- package/lib/test/feature-libraries/chunked-forest/codec/checkEncode.js +0 -124
- package/lib/test/feature-libraries/chunked-forest/codec/checkEncode.js.map +0 -1
- package/lib/test/feature-libraries/chunked-forest/codec/chunkCodecUtilities.spec.d.ts +0 -6
- package/lib/test/feature-libraries/chunked-forest/codec/chunkCodecUtilities.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/chunked-forest/codec/chunkCodecUtilities.spec.js +0 -187
- package/lib/test/feature-libraries/chunked-forest/codec/chunkCodecUtilities.spec.js.map +0 -1
- package/lib/test/feature-libraries/chunked-forest/codec/chunkDecoding.spec.d.ts +0 -6
- package/lib/test/feature-libraries/chunked-forest/codec/chunkDecoding.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/chunked-forest/codec/chunkDecoding.spec.js +0 -308
- package/lib/test/feature-libraries/chunked-forest/codec/chunkDecoding.spec.js.map +0 -1
- package/lib/test/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.spec.d.ts +0 -6
- package/lib/test/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.spec.js +0 -123
- package/lib/test/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.spec.js.map +0 -1
- package/lib/test/feature-libraries/chunked-forest/codec/chunkEncodingGeneric.spec.d.ts +0 -7
- package/lib/test/feature-libraries/chunked-forest/codec/chunkEncodingGeneric.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/chunked-forest/codec/chunkEncodingGeneric.spec.js +0 -135
- package/lib/test/feature-libraries/chunked-forest/codec/chunkEncodingGeneric.spec.js.map +0 -1
- package/lib/test/feature-libraries/chunked-forest/codec/compressedEncode.spec.d.ts +0 -11
- package/lib/test/feature-libraries/chunked-forest/codec/compressedEncode.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/chunked-forest/codec/compressedEncode.spec.js +0 -211
- package/lib/test/feature-libraries/chunked-forest/codec/compressedEncode.spec.js.map +0 -1
- package/lib/test/feature-libraries/chunked-forest/codec/format.spec.d.ts +0 -6
- package/lib/test/feature-libraries/chunked-forest/codec/format.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/chunked-forest/codec/format.spec.js +0 -15
- package/lib/test/feature-libraries/chunked-forest/codec/format.spec.js.map +0 -1
- package/lib/test/feature-libraries/chunked-forest/codec/nodeShape.spec.d.ts +0 -6
- package/lib/test/feature-libraries/chunked-forest/codec/nodeShape.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/chunked-forest/codec/nodeShape.spec.js +0 -98
- package/lib/test/feature-libraries/chunked-forest/codec/nodeShape.spec.js.map +0 -1
- package/lib/test/feature-libraries/chunked-forest/codec/schemaBasedEncoding.spec.d.ts +0 -6
- package/lib/test/feature-libraries/chunked-forest/codec/schemaBasedEncoding.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/chunked-forest/codec/schemaBasedEncoding.spec.js +0 -176
- package/lib/test/feature-libraries/chunked-forest/codec/schemaBasedEncoding.spec.js.map +0 -1
- package/lib/test/feature-libraries/chunked-forest/codec/uncompressedEncode.spec.d.ts +0 -6
- package/lib/test/feature-libraries/chunked-forest/codec/uncompressedEncode.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/chunked-forest/codec/uncompressedEncode.spec.js +0 -29
- package/lib/test/feature-libraries/chunked-forest/codec/uncompressedEncode.spec.js.map +0 -1
- package/lib/test/feature-libraries/chunked-forest/fieldCursorTestUtilities.d.ts +0 -12
- package/lib/test/feature-libraries/chunked-forest/fieldCursorTestUtilities.d.ts.map +0 -1
- package/lib/test/feature-libraries/chunked-forest/fieldCursorTestUtilities.js +0 -38
- package/lib/test/feature-libraries/chunked-forest/fieldCursorTestUtilities.js.map +0 -1
- package/lib/test/feature-libraries/chunked-forest/uniformChunk.spec.d.ts +0 -6
- package/lib/test/feature-libraries/chunked-forest/uniformChunk.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/chunked-forest/uniformChunk.spec.js +0 -138
- package/lib/test/feature-libraries/chunked-forest/uniformChunk.spec.js.map +0 -1
- package/lib/test/feature-libraries/chunked-forest/uniformChunkTestData.d.ts +0 -34
- package/lib/test/feature-libraries/chunked-forest/uniformChunkTestData.d.ts.map +0 -1
- package/lib/test/feature-libraries/chunked-forest/uniformChunkTestData.js +0 -114
- package/lib/test/feature-libraries/chunked-forest/uniformChunkTestData.js.map +0 -1
- package/lib/test/feature-libraries/contextuallyTyped.spec.d.ts +0 -6
- package/lib/test/feature-libraries/contextuallyTyped.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/contextuallyTyped.spec.js +0 -107
- package/lib/test/feature-libraries/contextuallyTyped.spec.js.map +0 -1
- package/lib/test/feature-libraries/default-field-kinds/defaultChangeFamily.spec.d.ts +0 -6
- package/lib/test/feature-libraries/default-field-kinds/defaultChangeFamily.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/default-field-kinds/defaultChangeFamily.spec.js +0 -850
- package/lib/test/feature-libraries/default-field-kinds/defaultChangeFamily.spec.js.map +0 -1
- package/lib/test/feature-libraries/default-field-kinds/defaultFieldKinds.spec.d.ts +0 -6
- package/lib/test/feature-libraries/default-field-kinds/defaultFieldKinds.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/default-field-kinds/defaultFieldKinds.spec.js +0 -110
- package/lib/test/feature-libraries/default-field-kinds/defaultFieldKinds.spec.js.map +0 -1
- package/lib/test/feature-libraries/deltaUtils.spec.d.ts +0 -6
- package/lib/test/feature-libraries/deltaUtils.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/deltaUtils.spec.js +0 -87
- package/lib/test/feature-libraries/deltaUtils.spec.js.map +0 -1
- package/lib/test/feature-libraries/fieldKindTestUtils.d.ts +0 -20
- package/lib/test/feature-libraries/fieldKindTestUtils.d.ts.map +0 -1
- package/lib/test/feature-libraries/fieldKindTestUtils.js +0 -42
- package/lib/test/feature-libraries/fieldKindTestUtils.js.map +0 -1
- package/lib/test/feature-libraries/flex-tree/editableTree.identifier.spec.d.ts +0 -6
- package/lib/test/feature-libraries/flex-tree/editableTree.identifier.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/flex-tree/editableTree.identifier.spec.js +0 -91
- package/lib/test/feature-libraries/flex-tree/editableTree.identifier.spec.js.map +0 -1
- package/lib/test/feature-libraries/flex-tree/editableTreeTypes.spec.d.ts +0 -6
- package/lib/test/feature-libraries/flex-tree/editableTreeTypes.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/flex-tree/editableTreeTypes.spec.js +0 -225
- package/lib/test/feature-libraries/flex-tree/editableTreeTypes.spec.js.map +0 -1
- package/lib/test/feature-libraries/flex-tree/events.spec.d.ts +0 -2
- package/lib/test/feature-libraries/flex-tree/events.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/flex-tree/events.spec.js +0 -605
- package/lib/test/feature-libraries/flex-tree/events.spec.js.map +0 -1
- package/lib/test/feature-libraries/flex-tree/lazyField.spec.d.ts +0 -6
- package/lib/test/feature-libraries/flex-tree/lazyField.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/flex-tree/lazyField.spec.js +0 -326
- package/lib/test/feature-libraries/flex-tree/lazyField.spec.js.map +0 -1
- package/lib/test/feature-libraries/flex-tree/lazyNode.spec.d.ts +0 -6
- package/lib/test/feature-libraries/flex-tree/lazyNode.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/flex-tree/lazyNode.spec.js +0 -381
- package/lib/test/feature-libraries/flex-tree/lazyNode.spec.js.map +0 -1
- package/lib/test/feature-libraries/flex-tree/navigation.spec.d.ts +0 -6
- package/lib/test/feature-libraries/flex-tree/navigation.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/flex-tree/navigation.spec.js +0 -50
- package/lib/test/feature-libraries/flex-tree/navigation.spec.js.map +0 -1
- package/lib/test/feature-libraries/flex-tree/unboxed.spec.d.ts +0 -6
- package/lib/test/feature-libraries/flex-tree/unboxed.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/flex-tree/unboxed.spec.js +0 -197
- package/lib/test/feature-libraries/flex-tree/unboxed.spec.js.map +0 -1
- package/lib/test/feature-libraries/flex-tree/utilities.spec.d.ts +0 -6
- package/lib/test/feature-libraries/flex-tree/utilities.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/flex-tree/utilities.spec.js +0 -109
- package/lib/test/feature-libraries/flex-tree/utilities.spec.js.map +0 -1
- package/lib/test/feature-libraries/flex-tree/utils.d.ts +0 -32
- package/lib/test/feature-libraries/flex-tree/utils.d.ts.map +0 -1
- package/lib/test/feature-libraries/flex-tree/utils.js +0 -50
- package/lib/test/feature-libraries/flex-tree/utils.js.map +0 -1
- package/lib/test/feature-libraries/forest-summary/forestSummarizerCodec.spec.d.ts +0 -6
- package/lib/test/feature-libraries/forest-summary/forestSummarizerCodec.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/forest-summary/forestSummarizerCodec.spec.js +0 -115
- package/lib/test/feature-libraries/forest-summary/forestSummarizerCodec.spec.js.map +0 -1
- package/lib/test/feature-libraries/mapTreeCursor.spec.d.ts +0 -6
- package/lib/test/feature-libraries/mapTreeCursor.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/mapTreeCursor.spec.js +0 -8
- package/lib/test/feature-libraries/mapTreeCursor.spec.js.map +0 -1
- package/lib/test/feature-libraries/memoizedIdRangeAllocator.spec.d.ts +0 -6
- package/lib/test/feature-libraries/memoizedIdRangeAllocator.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/memoizedIdRangeAllocator.spec.js +0 -80
- package/lib/test/feature-libraries/memoizedIdRangeAllocator.spec.js.map +0 -1
- package/lib/test/feature-libraries/mitigatedChangeFamily.spec.d.ts +0 -6
- package/lib/test/feature-libraries/mitigatedChangeFamily.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/mitigatedChangeFamily.spec.js +0 -96
- package/lib/test/feature-libraries/mitigatedChangeFamily.spec.js.map +0 -1
- package/lib/test/feature-libraries/modular-schema/basicRebasers.d.ts +0 -44
- package/lib/test/feature-libraries/modular-schema/basicRebasers.d.ts.map +0 -1
- package/lib/test/feature-libraries/modular-schema/basicRebasers.js +0 -77
- package/lib/test/feature-libraries/modular-schema/basicRebasers.js.map +0 -1
- package/lib/test/feature-libraries/modular-schema/comparison.spec.d.ts +0 -6
- package/lib/test/feature-libraries/modular-schema/comparison.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/modular-schema/comparison.spec.js +0 -264
- package/lib/test/feature-libraries/modular-schema/comparison.spec.js.map +0 -1
- package/lib/test/feature-libraries/modular-schema/genericFieldKind.spec.d.ts +0 -6
- package/lib/test/feature-libraries/modular-schema/genericFieldKind.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/modular-schema/genericFieldKind.spec.js +0 -345
- package/lib/test/feature-libraries/modular-schema/genericFieldKind.spec.js.map +0 -1
- package/lib/test/feature-libraries/modular-schema/genericFieldSnapshots.test.d.ts +0 -6
- package/lib/test/feature-libraries/modular-schema/genericFieldSnapshots.test.d.ts.map +0 -1
- package/lib/test/feature-libraries/modular-schema/genericFieldSnapshots.test.js +0 -49
- package/lib/test/feature-libraries/modular-schema/genericFieldSnapshots.test.js.map +0 -1
- package/lib/test/feature-libraries/modular-schema/isNeverTree.spec.d.ts +0 -6
- package/lib/test/feature-libraries/modular-schema/isNeverTree.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/modular-schema/isNeverTree.spec.js +0 -126
- package/lib/test/feature-libraries/modular-schema/isNeverTree.spec.js.map +0 -1
- package/lib/test/feature-libraries/modular-schema/modularChangeFamily.spec.d.ts +0 -6
- package/lib/test/feature-libraries/modular-schema/modularChangeFamily.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/modular-schema/modularChangeFamily.spec.js +0 -1070
- package/lib/test/feature-libraries/modular-schema/modularChangeFamily.spec.js.map +0 -1
- package/lib/test/feature-libraries/modular-schema/rangeMap.spec.d.ts +0 -6
- package/lib/test/feature-libraries/modular-schema/rangeMap.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/modular-schema/rangeMap.spec.js +0 -182
- package/lib/test/feature-libraries/modular-schema/rangeMap.spec.js.map +0 -1
- package/lib/test/feature-libraries/modular-schema/schemaEvolutionExamples.spec.d.ts +0 -6
- package/lib/test/feature-libraries/modular-schema/schemaEvolutionExamples.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/modular-schema/schemaEvolutionExamples.spec.js +0 -390
- package/lib/test/feature-libraries/modular-schema/schemaEvolutionExamples.spec.js.map +0 -1
- package/lib/test/feature-libraries/modularChangeFamilyIntegration.spec.d.ts +0 -6
- package/lib/test/feature-libraries/modularChangeFamilyIntegration.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/modularChangeFamilyIntegration.spec.js +0 -556
- package/lib/test/feature-libraries/modularChangeFamilyIntegration.spec.js.map +0 -1
- package/lib/test/feature-libraries/node-key/nodeKey.spec.d.ts +0 -6
- package/lib/test/feature-libraries/node-key/nodeKey.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/node-key/nodeKey.spec.js +0 -74
- package/lib/test/feature-libraries/node-key/nodeKey.spec.js.map +0 -1
- package/lib/test/feature-libraries/node-key/nodeKeyIndex.bench.d.ts +0 -6
- package/lib/test/feature-libraries/node-key/nodeKeyIndex.bench.d.ts.map +0 -1
- package/lib/test/feature-libraries/node-key/nodeKeyIndex.bench.js +0 -258
- package/lib/test/feature-libraries/node-key/nodeKeyIndex.bench.js.map +0 -1
- package/lib/test/feature-libraries/node-key/nodeKeyIndex.spec.d.ts +0 -6
- package/lib/test/feature-libraries/node-key/nodeKeyIndex.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/node-key/nodeKeyIndex.spec.js +0 -262
- package/lib/test/feature-libraries/node-key/nodeKeyIndex.spec.js.map +0 -1
- package/lib/test/feature-libraries/objectForest.spec.d.ts +0 -6
- package/lib/test/feature-libraries/objectForest.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/objectForest.spec.js +0 -62
- package/lib/test/feature-libraries/objectForest.spec.js.map +0 -1
- package/lib/test/feature-libraries/optional-field/optionalChangeRebaser.test.d.ts +0 -6
- package/lib/test/feature-libraries/optional-field/optionalChangeRebaser.test.d.ts.map +0 -1
- package/lib/test/feature-libraries/optional-field/optionalChangeRebaser.test.js +0 -352
- package/lib/test/feature-libraries/optional-field/optionalChangeRebaser.test.js.map +0 -1
- package/lib/test/feature-libraries/optional-field/optionalField.spec.d.ts +0 -6
- package/lib/test/feature-libraries/optional-field/optionalField.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/optional-field/optionalField.spec.js +0 -396
- package/lib/test/feature-libraries/optional-field/optionalField.spec.js.map +0 -1
- package/lib/test/feature-libraries/optional-field/optionalFieldChangeCodecs.test.d.ts +0 -6
- package/lib/test/feature-libraries/optional-field/optionalFieldChangeCodecs.test.d.ts.map +0 -1
- package/lib/test/feature-libraries/optional-field/optionalFieldChangeCodecs.test.js +0 -50
- package/lib/test/feature-libraries/optional-field/optionalFieldChangeCodecs.test.js.map +0 -1
- package/lib/test/feature-libraries/optional-field/optionalFieldSnapshots.test.d.ts +0 -6
- package/lib/test/feature-libraries/optional-field/optionalFieldSnapshots.test.d.ts.map +0 -1
- package/lib/test/feature-libraries/optional-field/optionalFieldSnapshots.test.js +0 -59
- package/lib/test/feature-libraries/optional-field/optionalFieldSnapshots.test.js.map +0 -1
- package/lib/test/feature-libraries/optional-field/optionalFieldUtils.d.ts +0 -62
- package/lib/test/feature-libraries/optional-field/optionalFieldUtils.d.ts.map +0 -1
- package/lib/test/feature-libraries/optional-field/optionalFieldUtils.js +0 -232
- package/lib/test/feature-libraries/optional-field/optionalFieldUtils.js.map +0 -1
- package/lib/test/feature-libraries/schema-aware/schemaAware.spec.d.ts +0 -6
- package/lib/test/feature-libraries/schema-aware/schemaAware.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/schema-aware/schemaAware.spec.js +0 -133
- package/lib/test/feature-libraries/schema-aware/schemaAware.spec.js.map +0 -1
- package/lib/test/feature-libraries/schema-aware/schemaComplex.d.ts +0 -16
- package/lib/test/feature-libraries/schema-aware/schemaComplex.d.ts.map +0 -1
- package/lib/test/feature-libraries/schema-aware/schemaComplex.js +0 -40
- package/lib/test/feature-libraries/schema-aware/schemaComplex.js.map +0 -1
- package/lib/test/feature-libraries/schema-aware/schemaSimple.d.ts +0 -13
- package/lib/test/feature-libraries/schema-aware/schemaSimple.d.ts.map +0 -1
- package/lib/test/feature-libraries/schema-aware/schemaSimple.js +0 -28
- package/lib/test/feature-libraries/schema-aware/schemaSimple.js.map +0 -1
- package/lib/test/feature-libraries/schema-index/codec.spec.d.ts +0 -6
- package/lib/test/feature-libraries/schema-index/codec.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/schema-index/codec.spec.js +0 -81
- package/lib/test/feature-libraries/schema-index/codec.spec.js.map +0 -1
- package/lib/test/feature-libraries/schema-index/schemaSummarizer.spec.d.ts +0 -6
- package/lib/test/feature-libraries/schema-index/schemaSummarizer.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/schema-index/schemaSummarizer.spec.js +0 -28
- package/lib/test/feature-libraries/schema-index/schemaSummarizer.spec.js.map +0 -1
- package/lib/test/feature-libraries/schemaBuilder.spec.d.ts +0 -6
- package/lib/test/feature-libraries/schemaBuilder.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/schemaBuilder.spec.js +0 -88
- package/lib/test/feature-libraries/schemaBuilder.spec.js.map +0 -1
- package/lib/test/feature-libraries/sequence-field/compose.test.d.ts +0 -6
- package/lib/test/feature-libraries/sequence-field/compose.test.d.ts.map +0 -1
- package/lib/test/feature-libraries/sequence-field/compose.test.js +0 -1431
- package/lib/test/feature-libraries/sequence-field/compose.test.js.map +0 -1
- package/lib/test/feature-libraries/sequence-field/invert.test.d.ts +0 -6
- package/lib/test/feature-libraries/sequence-field/invert.test.d.ts.map +0 -1
- package/lib/test/feature-libraries/sequence-field/invert.test.js +0 -418
- package/lib/test/feature-libraries/sequence-field/invert.test.js.map +0 -1
- package/lib/test/feature-libraries/sequence-field/markListFactory.test.d.ts +0 -6
- package/lib/test/feature-libraries/sequence-field/markListFactory.test.d.ts.map +0 -1
- package/lib/test/feature-libraries/sequence-field/markListFactory.test.js +0 -239
- package/lib/test/feature-libraries/sequence-field/markListFactory.test.js.map +0 -1
- package/lib/test/feature-libraries/sequence-field/populatedMarks.d.ts +0 -18
- package/lib/test/feature-libraries/sequence-field/populatedMarks.d.ts.map +0 -1
- package/lib/test/feature-libraries/sequence-field/populatedMarks.js +0 -95
- package/lib/test/feature-libraries/sequence-field/populatedMarks.js.map +0 -1
- package/lib/test/feature-libraries/sequence-field/randomChangeGenerator.d.ts +0 -12
- package/lib/test/feature-libraries/sequence-field/randomChangeGenerator.d.ts.map +0 -1
- package/lib/test/feature-libraries/sequence-field/randomChangeGenerator.js +0 -35
- package/lib/test/feature-libraries/sequence-field/randomChangeGenerator.js.map +0 -1
- package/lib/test/feature-libraries/sequence-field/randomChangeGenerator.test.d.ts +0 -6
- package/lib/test/feature-libraries/sequence-field/randomChangeGenerator.test.d.ts.map +0 -1
- package/lib/test/feature-libraries/sequence-field/randomChangeGenerator.test.js +0 -42
- package/lib/test/feature-libraries/sequence-field/randomChangeGenerator.test.js.map +0 -1
- package/lib/test/feature-libraries/sequence-field/rebase.test.d.ts +0 -6
- package/lib/test/feature-libraries/sequence-field/rebase.test.d.ts.map +0 -1
- package/lib/test/feature-libraries/sequence-field/rebase.test.js +0 -1038
- package/lib/test/feature-libraries/sequence-field/rebase.test.js.map +0 -1
- package/lib/test/feature-libraries/sequence-field/relevantRemovedRoots.test.d.ts +0 -6
- package/lib/test/feature-libraries/sequence-field/relevantRemovedRoots.test.d.ts.map +0 -1
- package/lib/test/feature-libraries/sequence-field/relevantRemovedRoots.test.js +0 -211
- package/lib/test/feature-libraries/sequence-field/relevantRemovedRoots.test.js.map +0 -1
- package/lib/test/feature-libraries/sequence-field/sequenceChangeRebaser.test.d.ts +0 -11
- package/lib/test/feature-libraries/sequence-field/sequenceChangeRebaser.test.d.ts.map +0 -1
- package/lib/test/feature-libraries/sequence-field/sequenceChangeRebaser.test.js +0 -784
- package/lib/test/feature-libraries/sequence-field/sequenceChangeRebaser.test.js.map +0 -1
- package/lib/test/feature-libraries/sequence-field/sequenceField.spec.d.ts +0 -6
- package/lib/test/feature-libraries/sequence-field/sequenceField.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/sequence-field/sequenceField.spec.js +0 -36
- package/lib/test/feature-libraries/sequence-field/sequenceField.spec.js.map +0 -1
- package/lib/test/feature-libraries/sequence-field/sequenceFieldCodecs.test.d.ts +0 -6
- package/lib/test/feature-libraries/sequence-field/sequenceFieldCodecs.test.d.ts.map +0 -1
- package/lib/test/feature-libraries/sequence-field/sequenceFieldCodecs.test.js +0 -34
- package/lib/test/feature-libraries/sequence-field/sequenceFieldCodecs.test.js.map +0 -1
- package/lib/test/feature-libraries/sequence-field/sequenceFieldEditor.test.d.ts +0 -6
- package/lib/test/feature-libraries/sequence-field/sequenceFieldEditor.test.d.ts.map +0 -1
- package/lib/test/feature-libraries/sequence-field/sequenceFieldEditor.test.js +0 -38
- package/lib/test/feature-libraries/sequence-field/sequenceFieldEditor.test.js.map +0 -1
- package/lib/test/feature-libraries/sequence-field/sequenceFieldSnapshots.test.d.ts +0 -6
- package/lib/test/feature-libraries/sequence-field/sequenceFieldSnapshots.test.d.ts.map +0 -1
- package/lib/test/feature-libraries/sequence-field/sequenceFieldSnapshots.test.js +0 -34
- package/lib/test/feature-libraries/sequence-field/sequenceFieldSnapshots.test.js.map +0 -1
- package/lib/test/feature-libraries/sequence-field/sequenceFieldToDelta.test.d.ts +0 -6
- package/lib/test/feature-libraries/sequence-field/sequenceFieldToDelta.test.d.ts.map +0 -1
- package/lib/test/feature-libraries/sequence-field/sequenceFieldToDelta.test.js +0 -417
- package/lib/test/feature-libraries/sequence-field/sequenceFieldToDelta.test.js.map +0 -1
- package/lib/test/feature-libraries/sequence-field/sequenceFieldUtils.test.d.ts +0 -6
- package/lib/test/feature-libraries/sequence-field/sequenceFieldUtils.test.d.ts.map +0 -1
- package/lib/test/feature-libraries/sequence-field/sequenceFieldUtils.test.js +0 -40
- package/lib/test/feature-libraries/sequence-field/sequenceFieldUtils.test.js.map +0 -1
- package/lib/test/feature-libraries/sequence-field/testEdits.d.ts +0 -124
- package/lib/test/feature-libraries/sequence-field/testEdits.d.ts.map +0 -1
- package/lib/test/feature-libraries/sequence-field/testEdits.js +0 -270
- package/lib/test/feature-libraries/sequence-field/testEdits.js.map +0 -1
- package/lib/test/feature-libraries/sequence-field/utils.d.ts +0 -106
- package/lib/test/feature-libraries/sequence-field/utils.d.ts.map +0 -1
- package/lib/test/feature-libraries/sequence-field/utils.js +0 -535
- package/lib/test/feature-libraries/sequence-field/utils.js.map +0 -1
- package/lib/test/feature-libraries/storedToViewSchema.spec.d.ts +0 -6
- package/lib/test/feature-libraries/storedToViewSchema.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/storedToViewSchema.spec.js +0 -117
- package/lib/test/feature-libraries/storedToViewSchema.spec.js.map +0 -1
- package/lib/test/feature-libraries/treeCursorUtils.spec.d.ts +0 -6
- package/lib/test/feature-libraries/treeCursorUtils.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/treeCursorUtils.spec.js +0 -237
- package/lib/test/feature-libraries/treeCursorUtils.spec.js.map +0 -1
- package/lib/test/feature-libraries/treeTextCursor.spec.d.ts +0 -6
- package/lib/test/feature-libraries/treeTextCursor.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/treeTextCursor.spec.js +0 -8
- package/lib/test/feature-libraries/treeTextCursor.spec.js.map +0 -1
- package/lib/test/feature-libraries/typedSchema/example.spec.d.ts +0 -6
- package/lib/test/feature-libraries/typedSchema/example.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/typedSchema/example.spec.js +0 -20
- package/lib/test/feature-libraries/typedSchema/example.spec.js.map +0 -1
- package/lib/test/feature-libraries/typedSchema/flexList.spec.d.ts +0 -6
- package/lib/test/feature-libraries/typedSchema/flexList.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/typedSchema/flexList.spec.js +0 -52
- package/lib/test/feature-libraries/typedSchema/flexList.spec.js.map +0 -1
- package/lib/test/feature-libraries/typedSchema/typeUtils.spec.d.ts +0 -6
- package/lib/test/feature-libraries/typedSchema/typeUtils.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/typedSchema/typeUtils.spec.js +0 -10
- package/lib/test/feature-libraries/typedSchema/typeUtils.spec.js.map +0 -1
- package/lib/test/feature-libraries/typedSchema/typedTreeSchema.spec.d.ts +0 -6
- package/lib/test/feature-libraries/typedSchema/typedTreeSchema.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/typedSchema/typedTreeSchema.spec.js +0 -83
- package/lib/test/feature-libraries/typedSchema/typedTreeSchema.spec.js.map +0 -1
- package/lib/test/feature-libraries/valueUtilities.spec.d.ts +0 -6
- package/lib/test/feature-libraries/valueUtilities.spec.d.ts.map +0 -1
- package/lib/test/feature-libraries/valueUtilities.spec.js +0 -69
- package/lib/test/feature-libraries/valueUtilities.spec.js.map +0 -1
- package/lib/test/forestTestSuite.d.ts +0 -26
- package/lib/test/forestTestSuite.d.ts.map +0 -1
- package/lib/test/forestTestSuite.js +0 -793
- package/lib/test/forestTestSuite.js.map +0 -1
- package/lib/test/objMerge.d.ts +0 -24
- package/lib/test/objMerge.d.ts.map +0 -1
- package/lib/test/objMerge.js +0 -181
- package/lib/test/objMerge.js.map +0 -1
- package/lib/test/rebase/findAncestor.spec.d.ts +0 -6
- package/lib/test/rebase/findAncestor.spec.d.ts.map +0 -1
- package/lib/test/rebase/findAncestor.spec.js +0 -139
- package/lib/test/rebase/findAncestor.spec.js.map +0 -1
- package/lib/test/rebase/fuzz.d.ts +0 -16
- package/lib/test/rebase/fuzz.d.ts.map +0 -1
- package/lib/test/rebase/fuzz.js +0 -57
- package/lib/test/rebase/fuzz.js.map +0 -1
- package/lib/test/rebase/generateFuzzyCombinedChange.spec.d.ts +0 -6
- package/lib/test/rebase/generateFuzzyCombinedChange.spec.d.ts.map +0 -1
- package/lib/test/rebase/generateFuzzyCombinedChange.spec.js +0 -42
- package/lib/test/rebase/generateFuzzyCombinedChange.spec.js.map +0 -1
- package/lib/test/rebase/rebaseBranch.spec.d.ts +0 -6
- package/lib/test/rebase/rebaseBranch.spec.d.ts.map +0 -1
- package/lib/test/rebase/rebaseBranch.spec.js +0 -208
- package/lib/test/rebase/rebaseBranch.spec.js.map +0 -1
- package/lib/test/rebase/rebaser.spec.d.ts +0 -14
- package/lib/test/rebase/rebaser.spec.d.ts.map +0 -1
- package/lib/test/rebase/rebaser.spec.js +0 -166
- package/lib/test/rebase/rebaser.spec.js.map +0 -1
- package/lib/test/rebase/revisionTagCodec.spec.d.ts +0 -6
- package/lib/test/rebase/revisionTagCodec.spec.d.ts.map +0 -1
- package/lib/test/rebase/revisionTagCodec.spec.js +0 -56
- package/lib/test/rebase/revisionTagCodec.spec.js.map +0 -1
- package/lib/test/rebase/verifyChangeRebaser.spec.d.ts +0 -6
- package/lib/test/rebase/verifyChangeRebaser.spec.d.ts.map +0 -1
- package/lib/test/rebase/verifyChangeRebaser.spec.js +0 -52
- package/lib/test/rebase/verifyChangeRebaser.spec.js.map +0 -1
- package/lib/test/rebaserAxiomaticTests.d.ts +0 -15
- package/lib/test/rebaserAxiomaticTests.d.ts.map +0 -1
- package/lib/test/rebaserAxiomaticTests.js +0 -202
- package/lib/test/rebaserAxiomaticTests.js.map +0 -1
- package/lib/test/scalableTestTrees.d.ts +0 -89
- package/lib/test/scalableTestTrees.d.ts.map +0 -1
- package/lib/test/scalableTestTrees.js +0 -188
- package/lib/test/scalableTestTrees.js.map +0 -1
- package/lib/test/shared-tree/editing.spec.d.ts +0 -2
- package/lib/test/shared-tree/editing.spec.d.ts.map +0 -1
- package/lib/test/shared-tree/editing.spec.js +0 -2091
- package/lib/test/shared-tree/editing.spec.js.map +0 -1
- package/lib/test/shared-tree/fuzz/anchorStability.fuzz.spec.d.ts +0 -2
- package/lib/test/shared-tree/fuzz/anchorStability.fuzz.spec.d.ts.map +0 -1
- package/lib/test/shared-tree/fuzz/anchorStability.fuzz.spec.js +0 -161
- package/lib/test/shared-tree/fuzz/anchorStability.fuzz.spec.js.map +0 -1
- package/lib/test/shared-tree/fuzz/composeVsIndividual.fuzz.spec.d.ts +0 -2
- package/lib/test/shared-tree/fuzz/composeVsIndividual.fuzz.spec.d.ts.map +0 -1
- package/lib/test/shared-tree/fuzz/composeVsIndividual.fuzz.spec.js +0 -105
- package/lib/test/shared-tree/fuzz/composeVsIndividual.fuzz.spec.js.map +0 -1
- package/lib/test/shared-tree/fuzz/fuzzEditGenerators.d.ts +0 -127
- package/lib/test/shared-tree/fuzz/fuzzEditGenerators.d.ts.map +0 -1
- package/lib/test/shared-tree/fuzz/fuzzEditGenerators.js +0 -439
- package/lib/test/shared-tree/fuzz/fuzzEditGenerators.js.map +0 -1
- package/lib/test/shared-tree/fuzz/fuzzEditReducers.d.ts +0 -21
- package/lib/test/shared-tree/fuzz/fuzzEditReducers.d.ts.map +0 -1
- package/lib/test/shared-tree/fuzz/fuzzEditReducers.js +0 -214
- package/lib/test/shared-tree/fuzz/fuzzEditReducers.js.map +0 -1
- package/lib/test/shared-tree/fuzz/fuzzUtils.d.ts +0 -33
- package/lib/test/shared-tree/fuzz/fuzzUtils.d.ts.map +0 -1
- package/lib/test/shared-tree/fuzz/fuzzUtils.js +0 -78
- package/lib/test/shared-tree/fuzz/fuzzUtils.js.map +0 -1
- package/lib/test/shared-tree/fuzz/operationTypes.d.ts +0 -116
- package/lib/test/shared-tree/fuzz/operationTypes.d.ts.map +0 -1
- package/lib/test/shared-tree/fuzz/operationTypes.js +0 -6
- package/lib/test/shared-tree/fuzz/operationTypes.js.map +0 -1
- package/lib/test/shared-tree/fuzz/topLevel.fuzz.spec.d.ts +0 -2
- package/lib/test/shared-tree/fuzz/topLevel.fuzz.spec.d.ts.map +0 -1
- package/lib/test/shared-tree/fuzz/topLevel.fuzz.spec.js +0 -110
- package/lib/test/shared-tree/fuzz/topLevel.fuzz.spec.js.map +0 -1
- package/lib/test/shared-tree/fuzz/undoRedo.fuzz.spec.d.ts +0 -6
- package/lib/test/shared-tree/fuzz/undoRedo.fuzz.spec.d.ts.map +0 -1
- package/lib/test/shared-tree/fuzz/undoRedo.fuzz.spec.js +0 -220
- package/lib/test/shared-tree/fuzz/undoRedo.fuzz.spec.js.map +0 -1
- package/lib/test/shared-tree/opSize.bench.d.ts +0 -2
- package/lib/test/shared-tree/opSize.bench.d.ts.map +0 -1
- package/lib/test/shared-tree/opSize.bench.js +0 -559
- package/lib/test/shared-tree/opSize.bench.js.map +0 -1
- package/lib/test/shared-tree/schematizeTree.spec.d.ts +0 -6
- package/lib/test/shared-tree/schematizeTree.spec.d.ts.map +0 -1
- package/lib/test/shared-tree/schematizeTree.spec.js +0 -331
- package/lib/test/shared-tree/schematizeTree.spec.js.map +0 -1
- package/lib/test/shared-tree/schematizingTreeView.spec.d.ts +0 -6
- package/lib/test/shared-tree/schematizingTreeView.spec.d.ts.map +0 -1
- package/lib/test/shared-tree/schematizingTreeView.spec.js +0 -137
- package/lib/test/shared-tree/schematizingTreeView.spec.js.map +0 -1
- package/lib/test/shared-tree/sharedTree.bench.d.ts +0 -2
- package/lib/test/shared-tree/sharedTree.bench.d.ts.map +0 -1
- package/lib/test/shared-tree/sharedTree.bench.js +0 -349
- package/lib/test/shared-tree/sharedTree.bench.js.map +0 -1
- package/lib/test/shared-tree/sharedTree.spec.d.ts +0 -2
- package/lib/test/shared-tree/sharedTree.spec.d.ts.map +0 -1
- package/lib/test/shared-tree/sharedTree.spec.js +0 -1375
- package/lib/test/shared-tree/sharedTree.spec.js.map +0 -1
- package/lib/test/shared-tree/sharedTreeChangeCodec.spec.d.ts +0 -6
- package/lib/test/shared-tree/sharedTreeChangeCodec.spec.d.ts.map +0 -1
- package/lib/test/shared-tree/sharedTreeChangeCodec.spec.js +0 -52
- package/lib/test/shared-tree/sharedTreeChangeCodec.spec.js.map +0 -1
- package/lib/test/shared-tree/sharedTreeChangeFamily.spec.d.ts +0 -6
- package/lib/test/shared-tree/sharedTreeChangeFamily.spec.d.ts.map +0 -1
- package/lib/test/shared-tree/sharedTreeChangeFamily.spec.js +0 -139
- package/lib/test/shared-tree/sharedTreeChangeFamily.spec.js.map +0 -1
- package/lib/test/shared-tree/summary.bench.d.ts +0 -6
- package/lib/test/shared-tree/summary.bench.d.ts.map +0 -1
- package/lib/test/shared-tree/summary.bench.js +0 -111
- package/lib/test/shared-tree/summary.bench.js.map +0 -1
- package/lib/test/shared-tree/treeApi.spec.d.ts +0 -2
- package/lib/test/shared-tree/treeApi.spec.d.ts.map +0 -1
- package/lib/test/shared-tree/treeApi.spec.js +0 -151
- package/lib/test/shared-tree/treeApi.spec.js.map +0 -1
- package/lib/test/shared-tree/treeCheckout.spec.d.ts +0 -2
- package/lib/test/shared-tree/treeCheckout.spec.d.ts.map +0 -1
- package/lib/test/shared-tree/treeCheckout.spec.js +0 -678
- package/lib/test/shared-tree/treeCheckout.spec.js.map +0 -1
- package/lib/test/shared-tree/treeView.spec.d.ts +0 -2
- package/lib/test/shared-tree/treeView.spec.d.ts.map +0 -1
- package/lib/test/shared-tree/treeView.spec.js +0 -16
- package/lib/test/shared-tree/treeView.spec.js.map +0 -1
- package/lib/test/shared-tree/undo.spec.d.ts +0 -2
- package/lib/test/shared-tree/undo.spec.d.ts.map +0 -1
- package/lib/test/shared-tree/undo.spec.js +0 -298
- package/lib/test/shared-tree/undo.spec.js.map +0 -1
- package/lib/test/shared-tree-core/branch.spec.d.ts +0 -6
- package/lib/test/shared-tree-core/branch.spec.d.ts.map +0 -1
- package/lib/test/shared-tree-core/branch.spec.js +0 -766
- package/lib/test/shared-tree-core/branch.spec.js.map +0 -1
- package/lib/test/shared-tree-core/edit-manager/editManager.bench.d.ts +0 -6
- package/lib/test/shared-tree-core/edit-manager/editManager.bench.d.ts.map +0 -1
- package/lib/test/shared-tree-core/edit-manager/editManager.bench.js +0 -227
- package/lib/test/shared-tree-core/edit-manager/editManager.bench.js.map +0 -1
- package/lib/test/shared-tree-core/edit-manager/editManager.spec.d.ts +0 -6
- package/lib/test/shared-tree-core/edit-manager/editManager.spec.d.ts.map +0 -1
- package/lib/test/shared-tree-core/edit-manager/editManager.spec.js +0 -13
- package/lib/test/shared-tree-core/edit-manager/editManager.spec.js.map +0 -1
- package/lib/test/shared-tree-core/edit-manager/editManagerCodecs.test.d.ts +0 -6
- package/lib/test/shared-tree-core/edit-manager/editManagerCodecs.test.d.ts.map +0 -1
- package/lib/test/shared-tree-core/edit-manager/editManagerCodecs.test.js +0 -161
- package/lib/test/shared-tree-core/edit-manager/editManagerCodecs.test.js.map +0 -1
- package/lib/test/shared-tree-core/edit-manager/editManagerCorrectness.test.d.ts +0 -6
- package/lib/test/shared-tree-core/edit-manager/editManagerCorrectness.test.d.ts.map +0 -1
- package/lib/test/shared-tree-core/edit-manager/editManagerCorrectness.test.js +0 -568
- package/lib/test/shared-tree-core/edit-manager/editManagerCorrectness.test.js.map +0 -1
- package/lib/test/shared-tree-core/edit-manager/editManagerPerf.test.d.ts +0 -6
- package/lib/test/shared-tree-core/edit-manager/editManagerPerf.test.d.ts.map +0 -1
- package/lib/test/shared-tree-core/edit-manager/editManagerPerf.test.js +0 -442
- package/lib/test/shared-tree-core/edit-manager/editManagerPerf.test.js.map +0 -1
- package/lib/test/shared-tree-core/edit-manager/editManagerScenario.d.ts +0 -80
- package/lib/test/shared-tree-core/edit-manager/editManagerScenario.d.ts.map +0 -1
- package/lib/test/shared-tree-core/edit-manager/editManagerScenario.js +0 -267
- package/lib/test/shared-tree-core/edit-manager/editManagerScenario.js.map +0 -1
- package/lib/test/shared-tree-core/edit-manager/editManagerTestUtils.d.ts +0 -211
- package/lib/test/shared-tree-core/edit-manager/editManagerTestUtils.d.ts.map +0 -1
- package/lib/test/shared-tree-core/edit-manager/editManagerTestUtils.js +0 -130
- package/lib/test/shared-tree-core/edit-manager/editManagerTestUtils.js.map +0 -1
- package/lib/test/shared-tree-core/message.spec.d.ts +0 -2
- package/lib/test/shared-tree-core/message.spec.d.ts.map +0 -1
- package/lib/test/shared-tree-core/message.spec.js +0 -99
- package/lib/test/shared-tree-core/message.spec.js.map +0 -1
- package/lib/test/shared-tree-core/sharedTreeCore.spec.d.ts +0 -2
- package/lib/test/shared-tree-core/sharedTreeCore.spec.d.ts.map +0 -1
- package/lib/test/shared-tree-core/sharedTreeCore.spec.js +0 -316
- package/lib/test/shared-tree-core/sharedTreeCore.spec.js.map +0 -1
- package/lib/test/shared-tree-core/utils.d.ts +0 -19
- package/lib/test/shared-tree-core/utils.d.ts.map +0 -1
- package/lib/test/shared-tree-core/utils.js +0 -26
- package/lib/test/shared-tree-core/utils.js.map +0 -1
- package/lib/test/simple-tree/list.spec.d.ts +0 -6
- package/lib/test/simple-tree/list.spec.d.ts.map +0 -1
- package/lib/test/simple-tree/list.spec.js +0 -613
- package/lib/test/simple-tree/list.spec.js.map +0 -1
- package/lib/test/simple-tree/object.spec.d.ts +0 -6
- package/lib/test/simple-tree/object.spec.d.ts.map +0 -1
- package/lib/test/simple-tree/object.spec.js +0 -390
- package/lib/test/simple-tree/object.spec.js.map +0 -1
- package/lib/test/simple-tree/objectFactory.spec.d.ts +0 -6
- package/lib/test/simple-tree/objectFactory.spec.d.ts.map +0 -1
- package/lib/test/simple-tree/objectFactory.spec.js +0 -210
- package/lib/test/simple-tree/objectFactory.spec.js.map +0 -1
- package/lib/test/simple-tree/primitives.spec.d.ts +0 -6
- package/lib/test/simple-tree/primitives.spec.d.ts.map +0 -1
- package/lib/test/simple-tree/primitives.spec.js +0 -134
- package/lib/test/simple-tree/primitives.spec.js.map +0 -1
- package/lib/test/simple-tree/proxies.spec.d.ts +0 -6
- package/lib/test/simple-tree/proxies.spec.d.ts.map +0 -1
- package/lib/test/simple-tree/proxies.spec.js +0 -597
- package/lib/test/simple-tree/proxies.spec.js.map +0 -1
- package/lib/test/simple-tree/rawObjectNode.spec.d.ts +0 -6
- package/lib/test/simple-tree/rawObjectNode.spec.d.ts.map +0 -1
- package/lib/test/simple-tree/rawObjectNode.spec.js +0 -73
- package/lib/test/simple-tree/rawObjectNode.spec.js.map +0 -1
- package/lib/test/simple-tree/schemaCreationUtilities.spec.d.ts +0 -6
- package/lib/test/simple-tree/schemaCreationUtilities.spec.d.ts.map +0 -1
- package/lib/test/simple-tree/schemaCreationUtilities.spec.js +0 -153
- package/lib/test/simple-tree/schemaCreationUtilities.spec.js.map +0 -1
- package/lib/test/simple-tree/schemaFactory.examples.spec.d.ts +0 -6
- package/lib/test/simple-tree/schemaFactory.examples.spec.d.ts.map +0 -1
- package/lib/test/simple-tree/schemaFactory.examples.spec.js +0 -107
- package/lib/test/simple-tree/schemaFactory.examples.spec.js.map +0 -1
- package/lib/test/simple-tree/schemaFactory.spec.d.ts +0 -6
- package/lib/test/simple-tree/schemaFactory.spec.d.ts.map +0 -1
- package/lib/test/simple-tree/schemaFactory.spec.js +0 -515
- package/lib/test/simple-tree/schemaFactory.spec.js.map +0 -1
- package/lib/test/simple-tree/schemaFactoryRecursive.spec.d.ts +0 -6
- package/lib/test/simple-tree/schemaFactoryRecursive.spec.d.ts.map +0 -1
- package/lib/test/simple-tree/schemaFactoryRecursive.spec.js +0 -282
- package/lib/test/simple-tree/schemaFactoryRecursive.spec.js.map +0 -1
- package/lib/test/simple-tree/schemaTypes.spec.d.ts +0 -6
- package/lib/test/simple-tree/schemaTypes.spec.d.ts.map +0 -1
- package/lib/test/simple-tree/schemaTypes.spec.js +0 -89
- package/lib/test/simple-tree/schemaTypes.spec.js.map +0 -1
- package/lib/test/simple-tree/toFlexSchema.spec.d.ts +0 -6
- package/lib/test/simple-tree/toFlexSchema.spec.d.ts.map +0 -1
- package/lib/test/simple-tree/toFlexSchema.spec.js +0 -30
- package/lib/test/simple-tree/toFlexSchema.spec.js.map +0 -1
- package/lib/test/simple-tree/toMapTree.spec.d.ts +0 -6
- package/lib/test/simple-tree/toMapTree.spec.d.ts.map +0 -1
- package/lib/test/simple-tree/toMapTree.spec.js +0 -423
- package/lib/test/simple-tree/toMapTree.spec.js.map +0 -1
- package/lib/test/simple-tree/tree.spec.d.ts +0 -6
- package/lib/test/simple-tree/tree.spec.d.ts.map +0 -1
- package/lib/test/simple-tree/tree.spec.js +0 -71
- package/lib/test/simple-tree/tree.spec.js.map +0 -1
- package/lib/test/simple-tree/treeApi.spec.d.ts +0 -6
- package/lib/test/simple-tree/treeApi.spec.d.ts.map +0 -1
- package/lib/test/simple-tree/treeApi.spec.js +0 -146
- package/lib/test/simple-tree/treeApi.spec.js.map +0 -1
- package/lib/test/simple-tree/utils.d.ts +0 -16
- package/lib/test/simple-tree/utils.d.ts.map +0 -1
- package/lib/test/simple-tree/utils.js +0 -33
- package/lib/test/simple-tree/utils.js.map +0 -1
- package/lib/test/snapshots/gc.spec.d.ts +0 -6
- package/lib/test/snapshots/gc.spec.d.ts.map +0 -1
- package/lib/test/snapshots/gc.spec.js +0 -106
- package/lib/test/snapshots/gc.spec.js.map +0 -1
- package/lib/test/snapshots/index.d.ts +0 -6
- package/lib/test/snapshots/index.d.ts.map +0 -1
- package/lib/test/snapshots/index.js +0 -6
- package/lib/test/snapshots/index.js.map +0 -1
- package/lib/test/snapshots/schema.spec.d.ts +0 -6
- package/lib/test/snapshots/schema.spec.d.ts.map +0 -1
- package/lib/test/snapshots/schema.spec.js +0 -17
- package/lib/test/snapshots/schema.spec.js.map +0 -1
- package/lib/test/snapshots/snapshotTools.d.ts +0 -25
- package/lib/test/snapshots/snapshotTools.d.ts.map +0 -1
- package/lib/test/snapshots/snapshotTools.js +0 -85
- package/lib/test/snapshots/snapshotTools.js.map +0 -1
- package/lib/test/snapshots/summary.spec.d.ts +0 -6
- package/lib/test/snapshots/summary.spec.d.ts.map +0 -1
- package/lib/test/snapshots/summary.spec.js +0 -26
- package/lib/test/snapshots/summary.spec.js.map +0 -1
- package/lib/test/snapshots/testTrees.d.ts +0 -15
- package/lib/test/snapshots/testTrees.d.ts.map +0 -1
- package/lib/test/snapshots/testTrees.js +0 -374
- package/lib/test/snapshots/testTrees.js.map +0 -1
- package/lib/test/snapshots/utils.d.ts +0 -7
- package/lib/test/snapshots/utils.d.ts.map +0 -1
- package/lib/test/snapshots/utils.js +0 -106
- package/lib/test/snapshots/utils.js.map +0 -1
- package/lib/test/testChange.d.ts +0 -90
- package/lib/test/testChange.d.ts.map +0 -1
- package/lib/test/testChange.js +0 -234
- package/lib/test/testChange.js.map +0 -1
- package/lib/test/testChange.spec.d.ts +0 -6
- package/lib/test/testChange.spec.d.ts.map +0 -1
- package/lib/test/testChange.spec.js +0 -113
- package/lib/test/testChange.spec.js.map +0 -1
- package/lib/test/testTrees.d.ts +0 -56
- package/lib/test/testTrees.d.ts.map +0 -1
- package/lib/test/testTrees.js +0 -175
- package/lib/test/testTrees.js.map +0 -1
- package/lib/test/tree/anchorSet.spec.d.ts +0 -6
- package/lib/test/tree/anchorSet.spec.d.ts.map +0 -1
- package/lib/test/tree/anchorSet.spec.js +0 -593
- package/lib/test/tree/anchorSet.spec.js.map +0 -1
- package/lib/test/tree/detachedFieldIndex.spec.d.ts +0 -11
- package/lib/test/tree/detachedFieldIndex.spec.d.ts.map +0 -1
- package/lib/test/tree/detachedFieldIndex.spec.js +0 -218
- package/lib/test/tree/detachedFieldIndex.spec.js.map +0 -1
- package/lib/test/tree/pathTree.spec.d.ts +0 -6
- package/lib/test/tree/pathTree.spec.d.ts.map +0 -1
- package/lib/test/tree/pathTree.spec.js +0 -122
- package/lib/test/tree/pathTree.spec.js.map +0 -1
- package/lib/test/tree/visitDelta.spec.d.ts +0 -6
- package/lib/test/tree/visitDelta.spec.d.ts.map +0 -1
- package/lib/test/tree/visitDelta.spec.js +0 -1055
- package/lib/test/tree/visitDelta.spec.js.map +0 -1
- package/lib/test/util/brand.spec.d.ts +0 -22
- package/lib/test/util/brand.spec.d.ts.map +0 -1
- package/lib/test/util/brand.spec.js +0 -19
- package/lib/test/util/brand.spec.js.map +0 -1
- package/lib/test/util/deepFreeze.spec.d.ts +0 -6
- package/lib/test/util/deepFreeze.spec.d.ts.map +0 -1
- package/lib/test/util/deepFreeze.spec.js +0 -176
- package/lib/test/util/deepFreeze.spec.js.map +0 -1
- package/lib/test/util/nestedMap.spec.d.ts +0 -6
- package/lib/test/util/nestedMap.spec.d.ts.map +0 -1
- package/lib/test/util/nestedMap.spec.js +0 -190
- package/lib/test/util/nestedMap.spec.js.map +0 -1
- package/lib/test/util/offsetList.spec.d.ts +0 -6
- package/lib/test/util/offsetList.spec.d.ts.map +0 -1
- package/lib/test/util/offsetList.spec.js +0 -35
- package/lib/test/util/offsetList.spec.js.map +0 -1
- package/lib/test/util/testTreeProvider.spec.d.ts +0 -6
- package/lib/test/util/testTreeProvider.spec.d.ts.map +0 -1
- package/lib/test/util/testTreeProvider.spec.js +0 -56
- package/lib/test/util/testTreeProvider.spec.js.map +0 -1
- package/lib/test/util/typeUtils.spec.d.ts +0 -6
- package/lib/test/util/typeUtils.spec.d.ts.map +0 -1
- package/lib/test/util/typeUtils.spec.js +0 -19
- package/lib/test/util/typeUtils.spec.js.map +0 -1
- package/lib/test/util/utils.spec.d.ts +0 -6
- package/lib/test/util/utils.spec.d.ts.map +0 -1
- package/lib/test/util/utils.spec.js +0 -27
- package/lib/test/util/utils.spec.js.map +0 -1
- package/lib/test/utils.d.ts +0 -313
- package/lib/test/utils.d.ts.map +0 -1
- package/lib/test/utils.js +0 -765
- package/lib/test/utils.js.map +0 -1
- package/lib/tree-alpha.d.ts +0 -2159
- package/lib/tree-beta.d.ts +0 -2159
- package/lib/tree-public.d.ts +0 -1942
- package/lib/tree-untrimmed.d.ts +0 -6880
- package/src/simple-tree/flexNode.ts +0 -96
- package/src/simple-tree/treeArrayNode.ts +0 -70
- /package/dist/{feature-libraries → core/schema-stored}/multiplicity.d.ts +0 -0
- /package/lib/{feature-libraries → core/schema-stored}/multiplicity.d.ts +0 -0
- /package/lib/{feature-libraries → core/schema-stored}/multiplicity.js +0 -0
- /package/{dist → lib}/tsdoc-metadata.json +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rebase.test.js","sourceRoot":"","sources":["../../../../src/test/feature-libraries/sequence-field/rebase.test.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 { strict as assert } from \"assert\";\nimport { mintRevisionTag } from \"../../utils.js\";\nimport { SequenceField as SF } from \"../../../feature-libraries/index.js\";\nimport { ChangeAtomId, RevisionTag, tagChange } from \"../../../core/index.js\";\nimport { TestChange } from \"../../testChange.js\";\nimport { brand } from \"../../../util/index.js\";\n// eslint-disable-next-line import/no-internal-modules\nimport { rebaseRevisionMetadataFromInfo } from \"../../../feature-libraries/modular-schema/modularChangeFamily.js\";\nimport {\n\tcheckDeltaEquality,\n\trebaseTagged,\n\trebase as rebaseI,\n\tshallowCompose,\n\trebaseOverComposition,\n\trebaseOverChanges,\n\tdescribeForBothConfigs,\n\tassertChangesetsEqual,\n\twithoutTombstones,\n\twithOrderingMethod,\n\tRebaseConfig,\n} from \"./utils.js\";\nimport { cases, ChangeMaker as Change, MarkMaker as Mark, TestChangeset } from \"./testEdits.js\";\n\nconst tag1: RevisionTag = mintRevisionTag();\nconst tag2: RevisionTag = mintRevisionTag();\nconst tag3: RevisionTag = mintRevisionTag();\n\nfunction rebase(\n\tchange: TestChangeset,\n\tbase: TestChangeset,\n\tbaseRev?: RevisionTag,\n\tconfig?: RebaseConfig,\n): TestChangeset {\n\treturn rebaseI(change, tagChange(base, baseRev ?? tag1), config);\n}\n\nexport function testRebase() {\n\tdescribeForBothConfigs(\"Rebase\", (config) => {\n\t\tconst withConfig = (fn: () => void) => withOrderingMethod(config.cellOrdering, fn);\n\t\tdescribe(\"no changes ↷ *\", () => {\n\t\t\tfor (const [name, testCase] of Object.entries(cases)) {\n\t\t\t\tit(`no changes ↷ ${name}`, () =>\n\t\t\t\t\twithConfig(() => {\n\t\t\t\t\t\tconst actual = rebase([], testCase);\n\t\t\t\t\t\tassertChangesetsEqual(withoutTombstones(actual), cases.no_change);\n\t\t\t\t\t}));\n\t\t\t}\n\t\t});\n\n\t\tdescribe(\"* ↷ no changes\", () => {\n\t\t\tfor (const [name, testCase] of Object.entries(cases)) {\n\t\t\t\tit(`${name} ↷ no changes`, () =>\n\t\t\t\t\twithConfig(() => {\n\t\t\t\t\t\tconst actual = rebase(testCase, cases.no_change);\n\t\t\t\t\t\tassertChangesetsEqual(actual, testCase);\n\t\t\t\t\t}));\n\t\t\t}\n\t\t});\n\n\t\tdescribe(\"* ↷ pin\", () => {\n\t\t\tfor (const [name, testCase] of Object.entries(cases)) {\n\t\t\t\tit(`${name} ↷ pin`, () =>\n\t\t\t\t\twithConfig(() => {\n\t\t\t\t\t\tconst actual = rebase(testCase, cases.pin);\n\t\t\t\t\t\tassertChangesetsEqual(actual, testCase);\n\t\t\t\t\t}));\n\t\t\t}\n\t\t});\n\n\t\tit(\"modify ↷ modify\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst change1 = Change.modify(0, TestChange.mint([0], 1));\n\t\t\t\tconst change2 = Change.modify(0, TestChange.mint([0], 2));\n\t\t\t\tconst expected = Change.modify(0, TestChange.mint([0, 1], 2));\n\t\t\t\tconst actual = rebase(change2, change1);\n\t\t\t\tassertChangesetsEqual(actual, expected);\n\t\t\t}));\n\n\t\tit(\"insert ↷ modify\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst actual = rebase(cases.insert, cases.modify);\n\t\t\t\tassertChangesetsEqual(actual, cases.insert);\n\t\t\t}));\n\n\t\tit(\"modify insert ↷ modify\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst actual = rebase(cases.modify_insert, cases.modify);\n\t\t\t\tassertChangesetsEqual(actual, cases.modify_insert);\n\t\t\t}));\n\n\t\tit(\"remove ↷ modify\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst actual = rebase(cases.remove, cases.modify);\n\t\t\t\tassertChangesetsEqual(actual, cases.remove);\n\t\t\t}));\n\n\t\tit(\"revive ↷ modify\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst revive = [\n\t\t\t\t\tMark.revive(2, { revision: tag1, localId: brand(0) }),\n\t\t\t\t\tMark.skip(2),\n\t\t\t\t\tMark.revive(2, { revision: tag1, localId: brand(2) }),\n\t\t\t\t\tMark.skip(4),\n\t\t\t\t\tMark.revive(2, { revision: tag1, localId: brand(4) }),\n\t\t\t\t];\n\t\t\t\tconst mods = [\n\t\t\t\t\tMark.modify(TestChange.mint([0], 1)),\n\t\t\t\t\tMark.skip(2),\n\t\t\t\t\tMark.modify(TestChange.mint([0], 2)),\n\t\t\t\t\tMark.skip(5),\n\t\t\t\t\tMark.modify(TestChange.mint([0], 3)),\n\t\t\t\t];\n\t\t\t\tconst actual = rebase(revive, mods);\n\t\t\t\tassertChangesetsEqual(actual, revive);\n\t\t\t}));\n\n\t\tit(\"modify ↷ remove\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst mods = [\n\t\t\t\t\tMark.modify(TestChange.mint([0], 1)),\n\t\t\t\t\t{ count: 2 },\n\t\t\t\t\tMark.modify(TestChange.mint([0], 2)),\n\t\t\t\t\t{ count: 2 },\n\t\t\t\t\tMark.modify(TestChange.mint([0], 3)),\n\t\t\t\t];\n\t\t\t\tconst deletion = [{ count: 2 }, Mark.remove(3, brand(0))];\n\t\t\t\tconst actual = rebase(mods, deletion, tag1);\n\t\t\t\tconst expected = [\n\t\t\t\t\tMark.modify(TestChange.mint([0], 1)),\n\t\t\t\t\t{ count: 1 },\n\t\t\t\t\tMark.modify(TestChange.mint([0], 2), { revision: tag1, localId: brand(1) }),\n\t\t\t\t\t{ count: 1 },\n\t\t\t\t\tMark.modify(TestChange.mint([0], 3)),\n\t\t\t\t];\n\t\t\t\tcheckDeltaEquality(actual, expected);\n\t\t\t}));\n\n\t\tit(\"insert ↷ remove\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst insert = [\n\t\t\t\t\tMark.insert(1, brand(1)),\n\t\t\t\t\tMark.skip(2),\n\t\t\t\t\tMark.insert(1, brand(2)),\n\t\t\t\t\tMark.skip(6),\n\t\t\t\t\tMark.insert(1, brand(3)),\n\t\t\t\t];\n\t\t\t\tconst deletion = Change.remove(1, 3);\n\t\t\t\tconst actual = rebase(insert, deletion);\n\t\t\t\tconst expected = [\n\t\t\t\t\tMark.insert(1, brand(1)),\n\t\t\t\t\tMark.skip(1),\n\t\t\t\t\tMark.insert(1, brand(2)),\n\t\t\t\t\tMark.skip(4),\n\t\t\t\t\tMark.insert(1, brand(3)),\n\t\t\t\t];\n\t\t\t\tcheckDeltaEquality(actual, expected);\n\t\t\t}));\n\n\t\tit(\"revive ↷ remove\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst revive = [\n\t\t\t\t\tMark.revive(1, { revision: tag1, localId: brand(0) }),\n\t\t\t\t\tMark.skip(2),\n\t\t\t\t\tMark.revive(1, { revision: tag1, localId: brand(1) }),\n\t\t\t\t\tMark.skip(4),\n\t\t\t\t\tMark.revive(1, { revision: tag1, localId: brand(2) }),\n\t\t\t\t];\n\t\t\t\tconst deletion = Change.remove(1, 3);\n\t\t\t\tconst actual = rebase(revive, deletion, tag2);\n\t\t\t\tconst expected = [\n\t\t\t\t\tMark.revive(1, { revision: tag1, localId: brand(0) }),\n\t\t\t\t\tMark.skip(1),\n\t\t\t\t\tMark.tomb(tag2, brand(0)),\n\t\t\t\t\tMark.revive(1, {\n\t\t\t\t\t\trevision: tag1,\n\t\t\t\t\t\tlocalId: brand(1),\n\t\t\t\t\t\tlineage: [{ revision: tag2, id: brand(0), count: 3, offset: 1 }],\n\t\t\t\t\t}),\n\t\t\t\t\tMark.tomb(tag2, brand(1), 2),\n\t\t\t\t\tMark.skip(2),\n\t\t\t\t\tMark.revive(1, { revision: tag1, localId: brand(2) }),\n\t\t\t\t];\n\t\t\t\tassertChangesetsEqual(actual, expected);\n\t\t\t}));\n\n\t\tit(\"pin ↷ related remove\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst pin = [Mark.pin(3, brand(0))];\n\t\t\t\tconst deletion = Change.remove(1, 1);\n\t\t\t\tconst actual = rebase(pin, deletion, tag2);\n\t\t\t\tconst expected = [\n\t\t\t\t\t// Earlier revive is unaffected\n\t\t\t\t\tMark.pin(1, brand(0)),\n\t\t\t\t\t// Overlapping pin is now a revive\n\t\t\t\t\tMark.revive(\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\trevision: tag2,\n\t\t\t\t\t\t\tlocalId: brand(0),\n\t\t\t\t\t\t\tadjacentCells: [{ id: brand(0), count: 1 }],\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{ id: brand(1) },\n\t\t\t\t\t),\n\t\t\t\t\t// Later revive is unaffected\n\t\t\t\t\tMark.pin(1, brand(2)),\n\t\t\t\t];\n\t\t\t\tassertChangesetsEqual(actual, expected);\n\t\t\t}));\n\n\t\tit(\"remove ↷ overlapping remove\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\t// Removes ---DEFGH--\n\t\t\t\tconst removeA = [{ count: 3 }, Mark.remove(5, brand(0))];\n\t\t\t\t// Removes --CD-F-HI\n\t\t\t\tconst removeB = [\n\t\t\t\t\t{ count: 2 },\n\t\t\t\t\tMark.remove(2, brand(0)),\n\t\t\t\t\t{ count: 1 },\n\t\t\t\t\tMark.remove(1, brand(2)),\n\t\t\t\t\t{ count: 1 },\n\t\t\t\t\tMark.remove(2, brand(3)),\n\t\t\t\t];\n\t\t\t\tconst actual = rebase(removeA, removeB, tag1);\n\t\t\t\t// Removes --dEfGh--\n\t\t\t\t// Where lowercase letters denote nodes that are already removed\n\t\t\t\tconst cellsCD: SF.IdRange[] = [{ id: brand(0), count: 2 }];\n\t\t\t\tconst cellsF: SF.IdRange[] = [{ id: brand(2), count: 1 }];\n\t\t\t\tconst cellsHI: SF.IdRange[] = [{ id: brand(3), count: 2 }];\n\t\t\t\tconst expected = [\n\t\t\t\t\t{ count: 2 },\n\t\t\t\t\tMark.tomb(tag1, brand(0), 1),\n\t\t\t\t\tMark.onEmptyCell(\n\t\t\t\t\t\t{ revision: tag1, localId: brand(1), adjacentCells: cellsCD },\n\t\t\t\t\t\tMark.remove(1, brand(0)),\n\t\t\t\t\t),\n\t\t\t\t\tMark.remove(1, brand(1)),\n\t\t\t\t\tMark.onEmptyCell(\n\t\t\t\t\t\t{ revision: tag1, localId: brand(2), adjacentCells: cellsF },\n\t\t\t\t\t\tMark.remove(1, brand(2)),\n\t\t\t\t\t),\n\t\t\t\t\tMark.remove(1, brand(3)),\n\t\t\t\t\tMark.onEmptyCell(\n\t\t\t\t\t\t{ revision: tag1, localId: brand(3), adjacentCells: cellsHI },\n\t\t\t\t\t\tMark.remove(1, brand(4)),\n\t\t\t\t\t),\n\t\t\t\t\tMark.tomb(tag1, brand(4), 1),\n\t\t\t\t];\n\t\t\t\tassertChangesetsEqual(actual, expected);\n\t\t\t}));\n\n\t\tit(\"remove ↷ earlier remove\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\t// Removes ---DE\n\t\t\t\tconst removeA = Change.remove(3, 2);\n\t\t\t\t// Removes AB--\n\t\t\t\tconst removeB = Change.remove(0, 2);\n\t\t\t\tconst actual = rebase(removeA, removeB);\n\t\t\t\t// Removes -DE\n\t\t\t\tconst expected = [\n\t\t\t\t\tMark.tomb(tag1, brand(0), 2),\n\t\t\t\t\tMark.skip(1),\n\t\t\t\t\tMark.remove(2, brand(0)),\n\t\t\t\t];\n\t\t\t\tassertChangesetsEqual(actual, expected);\n\t\t\t}));\n\n\t\tit(\"remove ↷ later remove\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\t// Removes AB--\n\t\t\t\tconst removeA = Change.remove(0, 2);\n\t\t\t\t// Removes ---DE\n\t\t\t\tconst removeB = Change.remove(3, 2);\n\t\t\t\tconst actual = rebase(removeA, removeB);\n\t\t\t\tconst expected = [\n\t\t\t\t\tMark.remove(2, brand(0)),\n\t\t\t\t\tMark.skip(1),\n\t\t\t\t\tMark.tomb(tag1, brand(0), 2),\n\t\t\t\t];\n\t\t\t\tassertChangesetsEqual(actual, expected);\n\t\t\t}));\n\n\t\tit(\"move ↷ overlapping remove\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\t// Moves ---DEFGH--\n\t\t\t\tconst move = [Mark.moveIn(5, brand(0)), { count: 3 }, Mark.moveOut(5, brand(0))];\n\t\t\t\t// Removes --CD-F-HI\n\t\t\t\tconst deletion = [\n\t\t\t\t\t{ count: 2 },\n\t\t\t\t\tMark.remove(2, brand(0)),\n\t\t\t\t\t{ count: 1 },\n\t\t\t\t\tMark.remove(1, brand(2)),\n\t\t\t\t\t{ count: 1 },\n\t\t\t\t\tMark.remove(2, brand(3)),\n\t\t\t\t];\n\t\t\t\tconst actual = rebase(move, deletion, tag1);\n\t\t\t\t// Moves --dEfGh--\n\t\t\t\t// Where lowercase letters denote nodes that are removed\n\t\t\t\tconst cellsCD: SF.IdRange[] = [{ id: brand(0), count: 2 }];\n\t\t\t\tconst cellsF: SF.IdRange[] = [{ id: brand(2), count: 1 }];\n\t\t\t\tconst cellsHI: SF.IdRange[] = [{ id: brand(3), count: 2 }];\n\t\t\t\tconst expected = [\n\t\t\t\t\tMark.moveIn(5, brand(0)),\n\t\t\t\t\t{ count: 2 },\n\t\t\t\t\tMark.tomb(tag1, brand(0)),\n\t\t\t\t\tMark.onEmptyCell(\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\trevision: tag1,\n\t\t\t\t\t\t\tlocalId: brand(1),\n\t\t\t\t\t\t\tadjacentCells: cellsCD,\n\t\t\t\t\t\t},\n\t\t\t\t\t\tMark.moveOut(1, brand(0)),\n\t\t\t\t\t),\n\t\t\t\t\tMark.moveOut(1, brand(1)),\n\t\t\t\t\tMark.onEmptyCell(\n\t\t\t\t\t\t{ revision: tag1, localId: brand(2), adjacentCells: cellsF },\n\t\t\t\t\t\tMark.moveOut(1, brand(2)),\n\t\t\t\t\t),\n\t\t\t\t\tMark.moveOut(1, brand(3)),\n\t\t\t\t\tMark.onEmptyCell(\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\trevision: tag1,\n\t\t\t\t\t\t\tlocalId: brand(3),\n\t\t\t\t\t\t\tadjacentCells: cellsHI,\n\t\t\t\t\t\t},\n\t\t\t\t\t\tMark.moveOut(1, brand(4)),\n\t\t\t\t\t),\n\t\t\t\t\tMark.tomb(tag1, brand(4)),\n\t\t\t\t];\n\t\t\t\tassertChangesetsEqual(actual, expected);\n\t\t\t}));\n\n\t\tit(\"modify ↷ insert\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst mods = [\n\t\t\t\t\tMark.modify(TestChange.mint([], 1)),\n\t\t\t\t\tMark.skip(2),\n\t\t\t\t\tMark.modify(TestChange.mint([], 2)),\n\t\t\t\t];\n\t\t\t\tconst insert = Change.insert(2, 1, brand(2));\n\t\t\t\tconst expected = [\n\t\t\t\t\tMark.modify(TestChange.mint([], 1)),\n\t\t\t\t\tMark.skip(3),\n\t\t\t\t\tMark.modify(TestChange.mint([], 2)),\n\t\t\t\t];\n\t\t\t\tconst actual = rebase(mods, insert);\n\t\t\t\tassertChangesetsEqual(actual, expected);\n\t\t\t}));\n\n\t\tit(\"remove ↷ insert\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\t// Removes A-CD-E\n\t\t\t\tconst deletion = [\n\t\t\t\t\tMark.remove(1, brand(0)),\n\t\t\t\t\tMark.skip(1),\n\t\t\t\t\tMark.remove(2, brand(1)),\n\t\t\t\t\tMark.skip(1),\n\t\t\t\t\tMark.remove(1, brand(3)),\n\t\t\t\t];\n\t\t\t\t// Inserts between C and D\n\t\t\t\tconst insert = Change.insert(3, 1, brand(2));\n\t\t\t\tconst expected = [\n\t\t\t\t\tMark.remove(1, brand(0)),\n\t\t\t\t\tMark.skip(1),\n\t\t\t\t\tMark.remove(1, brand(1)),\n\t\t\t\t\tMark.skip(1), // <- insert\n\t\t\t\t\tMark.remove(1, brand(2)),\n\t\t\t\t\tMark.skip(1),\n\t\t\t\t\tMark.remove(1, brand(3)),\n\t\t\t\t];\n\t\t\t\tconst actual = rebase(deletion, insert);\n\t\t\t\tassertChangesetsEqual(actual, expected);\n\t\t\t}));\n\n\t\tit(\"insert ↷ insert\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst insertA = [Mark.insert(1, brand(1)), Mark.skip(2), Mark.insert(1, brand(2))];\n\t\t\t\tconst insertB = Change.insert(1, 1, brand(3));\n\t\t\t\tconst actual = rebase(insertA, insertB);\n\t\t\t\tconst expected = [Mark.insert(1, brand(1)), Mark.skip(3), Mark.insert(1, brand(2))];\n\t\t\t\tassertChangesetsEqual(actual, expected);\n\t\t\t}));\n\n\t\tit(\"revive ↷ insert\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst revive = [\n\t\t\t\t\tMark.revive(1, { revision: tag1, localId: brand(0) }),\n\t\t\t\t\tMark.skip(2),\n\t\t\t\t\tMark.revive(2, { revision: tag1, localId: brand(1) }),\n\t\t\t\t];\n\t\t\t\t// TODO: test both tiebreak policies\n\t\t\t\tconst insert = Change.insert(2, 1);\n\t\t\t\tconst actual = rebase(revive, insert, tag2);\n\t\t\t\tconst expected = [\n\t\t\t\t\tMark.revive(1, { revision: tag1, localId: brand(0) }),\n\t\t\t\t\tMark.skip(3),\n\t\t\t\t\tMark.revive(2, { revision: tag1, localId: brand(1) }),\n\t\t\t\t];\n\t\t\t\tassertChangesetsEqual(actual, expected);\n\t\t\t}));\n\n\t\tit(\"redundant revive ↷ insert\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst revive = Change.redundantRevive(0, 3, { revision: tag1, localId: brand(0) });\n\t\t\t\tconst insert = Change.insert(1, 1);\n\t\t\t\tconst actual = rebase(revive, insert);\n\t\t\t\tconst expected = [Mark.pin(1, brand(0)), Mark.skip(1), Mark.pin(2, brand(1))];\n\t\t\t\tassertChangesetsEqual(actual, expected);\n\t\t\t}));\n\n\t\tit(\"modify ↷ revive\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst mods = [\n\t\t\t\t\tMark.modify(TestChange.mint([0], 1)),\n\t\t\t\t\tMark.skip(2),\n\t\t\t\t\tMark.modify(TestChange.mint([0], 2)),\n\t\t\t\t];\n\t\t\t\tconst revive = Change.revive(2, 1, { revision: tag1, localId: brand(0) });\n\t\t\t\tconst expected = [\n\t\t\t\t\t// Modify at earlier index is unaffected\n\t\t\t\t\tMark.modify(TestChange.mint([0], 1)),\n\t\t\t\t\t// Modify at later index has its index increased\n\t\t\t\t\tMark.skip(3),\n\t\t\t\t\tMark.modify(TestChange.mint([0], 2)),\n\t\t\t\t];\n\t\t\t\tconst actual = rebase(mods, revive);\n\t\t\t\tassertChangesetsEqual(actual, expected);\n\t\t\t}));\n\n\t\tit(\"remove ↷ revive\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\t// Removes A-CD-E\n\t\t\t\tconst deletion = [\n\t\t\t\t\tMark.remove(1, brand(0)),\n\t\t\t\t\tMark.skip(1),\n\t\t\t\t\tMark.remove(2, brand(1)),\n\t\t\t\t\tMark.skip(1),\n\t\t\t\t\tMark.remove(1, brand(3)),\n\t\t\t\t];\n\t\t\t\t// Revives content between C and D\n\t\t\t\tconst revive = Change.revive(3, 1, { revision: tag1, localId: brand(0) });\n\t\t\t\tconst expected = [\n\t\t\t\t\tMark.remove(1, brand(0)),\n\t\t\t\t\tMark.skip(1),\n\t\t\t\t\tMark.remove(1, brand(1)),\n\t\t\t\t\tMark.skip(1),\n\t\t\t\t\tMark.remove(1, brand(2)),\n\t\t\t\t\tMark.skip(1),\n\t\t\t\t\tMark.remove(1, brand(3)),\n\t\t\t\t];\n\t\t\t\tconst actual = rebase(deletion, revive);\n\t\t\t\tassertChangesetsEqual(actual, expected);\n\t\t\t}));\n\n\t\tit(\"insert ↷ revive\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst insert = [Mark.insert(1, brand(1)), Mark.skip(2), Mark.insert(1, brand(2))];\n\t\t\t\tconst revive = Change.revive(1, 1, { revision: tag1, localId: brand(0) });\n\t\t\t\tconst actual = rebase(insert, revive);\n\t\t\t\tconst expected = [Mark.insert(1, brand(1)), Mark.skip(3), Mark.insert(1, brand(2))];\n\t\t\t\tassertChangesetsEqual(actual, expected);\n\t\t\t}));\n\n\t\tit(\"reviveAA ↷ reviveB => BAA\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst lineage: SF.LineageEvent[] = [\n\t\t\t\t\t{ revision: tag2, id: brand(0), count: 1, offset: 1 },\n\t\t\t\t];\n\t\t\t\tconst reviveAA = [\n\t\t\t\t\tMark.tomb(tag2),\n\t\t\t\t\tMark.revive(2, { revision: tag1, localId: brand(0), lineage }),\n\t\t\t\t];\n\t\t\t\tconst reviveB = [Mark.revive(1, { revision: tag2, localId: brand(0) })];\n\t\t\t\tconst expected = [\n\t\t\t\t\tMark.skip(1),\n\t\t\t\t\tMark.revive(2, { revision: tag1, localId: brand(0), lineage }),\n\t\t\t\t];\n\t\t\t\tconst actual = rebase(reviveAA, reviveB);\n\t\t\t\tassertChangesetsEqual(actual, expected);\n\t\t\t}));\n\n\t\tit(\"reviveAA ↷ reviveB => AAB\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst lineage: SF.LineageEvent[] = [\n\t\t\t\t\t{ revision: tag2, id: brand(0), count: 1, offset: 0 },\n\t\t\t\t];\n\t\t\t\tconst reviveAA = [\n\t\t\t\t\tMark.revive(2, { revision: tag1, localId: brand(0), lineage }),\n\t\t\t\t\tMark.tomb(tag2),\n\t\t\t\t];\n\t\t\t\tconst reviveB = [Mark.revive(1, { revision: tag2, localId: brand(0) })];\n\t\t\t\tconst expected = [Mark.revive(2, { revision: tag1, localId: brand(0), lineage })];\n\t\t\t\tconst actual = rebase(reviveAA, reviveB);\n\t\t\t\tassertChangesetsEqual(actual, expected);\n\t\t\t}));\n\n\t\tit(\"reviveBB ↷ reviveA => BBA\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst reviveBB = [Mark.revive(2, { revision: tag2, localId: brand(0) })];\n\t\t\t\tconst reviveA = [\n\t\t\t\t\tMark.tomb(tag2, brand(0), 2),\n\t\t\t\t\tMark.revive(1, {\n\t\t\t\t\t\trevision: tag1,\n\t\t\t\t\t\tlocalId: brand(1),\n\t\t\t\t\t\tlineage: [{ revision: tag2, id: brand(0), count: 2, offset: 2 }],\n\t\t\t\t\t}),\n\t\t\t\t];\n\t\t\t\tconst expected = [Mark.revive(2, { revision: tag2, localId: brand(0) })];\n\t\t\t\tconst actual = rebase(reviveBB, reviveA);\n\t\t\t\tassertChangesetsEqual(actual, expected);\n\t\t\t}));\n\n\t\tit(\"reviveBB ↷ reviveA => ABB\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst reviveBB = Change.revive(5, 2, { revision: tag2, localId: brand(0) });\n\t\t\t\tconst reviveA = [\n\t\t\t\t\tMark.skip(5),\n\t\t\t\t\tMark.revive(1, {\n\t\t\t\t\t\trevision: tag1,\n\t\t\t\t\t\tlocalId: brand(0),\n\t\t\t\t\t\tlineage: [{ revision: tag2, id: brand(0), count: 2, offset: 0 }],\n\t\t\t\t\t}),\n\t\t\t\t\tMark.tomb(tag2, brand(0), 2),\n\t\t\t\t];\n\t\t\t\tconst expected = [\n\t\t\t\t\tMark.skip(6),\n\t\t\t\t\tMark.revive(2, { revision: tag2, localId: brand(0) }),\n\t\t\t\t];\n\t\t\t\tconst actual = rebase(reviveBB, reviveA);\n\t\t\t\tassertChangesetsEqual(actual, expected);\n\t\t\t}));\n\n\t\tit(\"reviveA ↷ reviveBB => BAB\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst lineage: SF.LineageEvent[] = [\n\t\t\t\t\t{ revision: tag2, id: brand(5), count: 2, offset: 1 },\n\t\t\t\t];\n\t\t\t\tconst reviveA = [\n\t\t\t\t\tMark.skip(5),\n\t\t\t\t\tMark.tomb(tag2, brand(5)),\n\t\t\t\t\tMark.revive(1, { revision: tag1, localId: brand(6), lineage }),\n\t\t\t\t\tMark.tomb(tag2, brand(6)),\n\t\t\t\t];\n\t\t\t\tconst reviveBB = [\n\t\t\t\t\tMark.skip(5),\n\t\t\t\t\tMark.revive(2, { revision: tag2, localId: brand(5) }),\n\t\t\t\t];\n\t\t\t\tconst expected = [\n\t\t\t\t\tMark.skip(6),\n\t\t\t\t\tMark.revive(1, { revision: tag1, localId: brand(6), lineage }),\n\t\t\t\t];\n\t\t\t\tconst actual = rebase(reviveA, reviveBB);\n\t\t\t\tassertChangesetsEqual(actual, expected);\n\t\t\t}));\n\n\t\tit(\"reviveAA ↷ reviveCB => CBAA\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst lineage: SF.LineageEvent[] = [\n\t\t\t\t\t{ revision: tag2, id: brand(0), count: 1, offset: 1 },\n\t\t\t\t\t{ revision: tag3, id: brand(0), count: 1, offset: 1 },\n\t\t\t\t];\n\t\t\t\tconst reviveAA = [\n\t\t\t\t\tMark.tomb(tag2),\n\t\t\t\t\tMark.tomb(tag3),\n\t\t\t\t\tMark.revive(2, { revision: tag1, localId: brand(0), lineage }),\n\t\t\t\t];\n\t\t\t\tconst reviveB = [\n\t\t\t\t\tMark.revive(1, { revision: tag2, localId: brand(0) }),\n\t\t\t\t\tMark.revive(1, { revision: tag3, localId: brand(0) }),\n\t\t\t\t];\n\t\t\t\tconst expected = [\n\t\t\t\t\tMark.skip(2),\n\t\t\t\t\tMark.revive(2, { revision: tag1, localId: brand(0), lineage }),\n\t\t\t\t];\n\t\t\t\tconst actual = rebase(reviveAA, reviveB);\n\t\t\t\tassertChangesetsEqual(actual, expected);\n\t\t\t}));\n\n\t\tit(\"revive ↷ same revive (base within curr)\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst reviveABC = [Mark.revive(3, { revision: tag1, localId: brand(1) })];\n\t\t\t\tconst reviveB = [\n\t\t\t\t\tMark.tomb(tag1, brand(1)),\n\t\t\t\t\tMark.revive(1, { revision: tag1, localId: brand(2) }),\n\t\t\t\t\tMark.tomb(tag1, brand(3)),\n\t\t\t\t];\n\t\t\t\tconst actual = rebase(reviveABC, reviveB, tag2);\n\t\t\t\tconst expected = [\n\t\t\t\t\tMark.revive(1, { revision: tag1, localId: brand(1) }),\n\t\t\t\t\tMark.pin(1, brand(2)),\n\t\t\t\t\tMark.revive(1, { revision: tag1, localId: brand(3) }),\n\t\t\t\t];\n\t\t\t\tassertChangesetsEqual(actual, expected);\n\t\t\t}));\n\n\t\tit(\"revive ↷ same revive (curr within base)\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst reviveB = [\n\t\t\t\t\tMark.tomb(tag1, brand(1)),\n\t\t\t\t\tMark.revive(1, { revision: tag1, localId: brand(2) }),\n\t\t\t\t\tMark.tomb(tag1, brand(3)),\n\t\t\t\t];\n\t\t\t\tconst reviveABC = [Mark.revive(3, { revision: tag1, localId: brand(1) })];\n\t\t\t\tconst actual = rebase(reviveB, reviveABC, tag2);\n\t\t\t\tconst expected = [Mark.skip(1), Mark.pin(1, brand(2))];\n\t\t\t\tassertChangesetsEqual(actual, expected);\n\t\t\t}));\n\n\t\tit(\"concurrent inserts ↷ remove\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst delA = tagChange(Change.remove(0, 1), mintRevisionTag());\n\t\t\t\tconst insertB = tagChange(Change.insert(0, 1), mintRevisionTag());\n\t\t\t\tconst insertC = tagChange(Change.insert(1, 1), mintRevisionTag());\n\t\t\t\tconst insertB2 = rebaseTagged(insertB, delA);\n\t\t\t\tconst insertC2 = rebaseOverChanges(insertC, [delA, insertB2]);\n\t\t\t\tconst expected = Change.insert(1, 1);\n\t\t\t\tcheckDeltaEquality(insertC2.change, expected);\n\t\t\t}));\n\n\t\tit(\"concurrent inserts ↷ connected remove\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst delA = tagChange(Change.remove(0, 1), mintRevisionTag());\n\t\t\t\tconst delB = tagChange(Change.remove(1, 1), mintRevisionTag());\n\t\t\t\tconst delC = tagChange(Change.remove(0, 1), mintRevisionTag());\n\n\t\t\t\tconst insertD = tagChange(Change.insert(0, 1), mintRevisionTag());\n\t\t\t\tconst insertE = tagChange(Change.insert(3, 1), mintRevisionTag());\n\t\t\t\tconst insertD2 = rebaseOverChanges(insertD, [delA, delB, delC]);\n\t\t\t\tconst insertE2 = rebaseOverChanges(insertE, [delA, delB, delC, insertD2]);\n\t\t\t\tconst expected = Change.insert(1, 1);\n\t\t\t\tcheckDeltaEquality(insertE2.change, expected);\n\t\t\t}));\n\n\t\tit(\"concurrent insert and move ↷ remove\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst delA = tagChange(Change.remove(0, 1), mintRevisionTag());\n\t\t\t\tconst insertB = tagChange(Change.insert(0, 1), mintRevisionTag());\n\t\t\t\tconst moveC = tagChange(Change.move(2, 1, 1), mintRevisionTag());\n\t\t\t\tconst insertB2 = rebaseTagged(insertB, delA);\n\t\t\t\tconst moveC2 = rebaseOverChanges(moveC, [delA, insertB2]);\n\t\t\t\tconst expected = Change.move(2, 1, 1);\n\t\t\t\tcheckDeltaEquality(moveC2.change, expected);\n\t\t\t}));\n\n\t\tit(\"modify ↷ move right\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst inner = TestChange.mint([0], 1);\n\t\t\t\tconst modify = [Mark.modify(inner)];\n\t\t\t\tconst [moveOut, moveIn] = Mark.move(1, brand(0));\n\t\t\t\tconst move = [moveOut, Mark.skip(3), moveIn];\n\t\t\t\tconst expected = [Mark.tomb(tag1), Mark.skip(3), Mark.modify(inner)];\n\t\t\t\tconst rebased = rebase(modify, move);\n\t\t\t\tassertChangesetsEqual(rebased, expected);\n\t\t\t}));\n\n\t\tit(\"modify ↷ move left\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst inner = TestChange.mint([0], 1);\n\t\t\t\tconst modify = [Mark.skip(3), Mark.modify(inner)];\n\t\t\t\tconst [moveOut, moveIn] = Mark.move(1, brand(0));\n\t\t\t\tconst move = [moveIn, Mark.skip(3), moveOut];\n\t\t\t\tconst expected = [Mark.modify(inner), Mark.skip(3), Mark.tomb(tag1)];\n\t\t\t\tconst rebased = rebase(modify, move);\n\t\t\t\tassertChangesetsEqual(rebased, expected);\n\t\t\t}));\n\n\t\tit(\"modify ↷ move left + modify\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst inputChildChange = TestChange.mint([], 2);\n\t\t\t\tconst baseChildChange = TestChange.mint([], 1);\n\t\t\t\tconst modify = [Mark.skip(3), Mark.modify(inputChildChange)];\n\t\t\t\tconst [moveOut, moveIn] = Mark.move(1, brand(0), {\n\t\t\t\t\tchanges: baseChildChange,\n\t\t\t\t});\n\t\t\t\tconst move = [moveIn, Mark.skip(3), moveOut];\n\t\t\t\tconst expected = [\n\t\t\t\t\tMark.modify(TestChange.mint([1], 2)),\n\t\t\t\t\tMark.skip(3),\n\t\t\t\t\tMark.tomb(tag1),\n\t\t\t\t];\n\t\t\t\tconst childRebaser = (\n\t\t\t\t\tchange: TestChange | undefined,\n\t\t\t\t\tover: TestChange | undefined,\n\t\t\t\t): TestChange | undefined => {\n\t\t\t\t\t// These checks ensure that we don't attempt to rebase output of `inputChildChange ↷ baseChildChange`.\n\t\t\t\t\t// This may happen if the inputChildChange is rebased then sent as an effect that is then treated\n\t\t\t\t\t// as nested change to be rebased when the effect is consumed.\n\t\t\t\t\tassert.equal(change, inputChildChange);\n\t\t\t\t\tassert.equal(over, baseChildChange);\n\t\t\t\t\treturn TestChange.rebase(change, over);\n\t\t\t\t};\n\t\t\t\tconst rebased = rebase(modify, move, undefined, { childRebaser });\n\t\t\t\tassertChangesetsEqual(rebased, expected);\n\t\t\t}));\n\n\t\tit(\"remove ↷ move\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst deletion = [Mark.skip(2), Mark.remove(2, brand(0))];\n\t\t\t\tconst move = Change.move(1, 3, 0);\n\t\t\t\tconst expected = [\n\t\t\t\t\tMark.skip(1),\n\t\t\t\t\tMark.remove(2, brand(0)),\n\t\t\t\t\tMark.skip(1),\n\t\t\t\t\tMark.tomb(tag1, brand(0), 3),\n\t\t\t\t];\n\t\t\t\tconst rebased = rebase(deletion, move);\n\t\t\t\tassertChangesetsEqual(rebased, expected);\n\t\t\t}));\n\n\t\tit(\"move ↷ move\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst [moveOut, moveIn] = Mark.move(2, brand(0));\n\t\t\t\tconst moveA = [moveIn, Mark.skip(2), moveOut, Mark.skip(1)];\n\t\t\t\tconst moveB = [Mark.skip(2), moveOut, Mark.skip(1), moveIn];\n\t\t\t\tconst expected = [\n\t\t\t\t\tmoveOut,\n\t\t\t\t\tMark.skip(2),\n\t\t\t\t\tMark.tomb(tag1, brand(0), 2),\n\t\t\t\t\tMark.skip(1),\n\t\t\t\t\tmoveIn,\n\t\t\t\t];\n\t\t\t\tconst rebased = rebase(moveB, moveA);\n\t\t\t\tassertChangesetsEqual(rebased, expected);\n\t\t\t}));\n\n\t\tit(\"return ↷ return (same destination, <=)\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst cellId: ChangeAtomId = {\n\t\t\t\t\trevision: tag3,\n\t\t\t\t\tlocalId: brand(0),\n\t\t\t\t};\n\t\t\t\tconst move = [\n\t\t\t\t\tMark.returnTo(1, brand(0), cellId),\n\t\t\t\t\t{ count: 2 },\n\t\t\t\t\tMark.moveOut(1, brand(0)),\n\t\t\t\t];\n\t\t\t\tconst expected = [Mark.pin(1, brand(0)), { count: 2 }, Mark.tomb(tag1, brand(0))];\n\t\t\t\tconst rebased = rebase(move, move);\n\t\t\t\tassertChangesetsEqual(rebased, expected);\n\t\t\t}));\n\n\t\tit(\"return ↷ return (same destination, =>)\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst cellId: ChangeAtomId = {\n\t\t\t\t\trevision: tag3,\n\t\t\t\t\tlocalId: brand(0),\n\t\t\t\t};\n\t\t\t\tconst move = [\n\t\t\t\t\tMark.moveOut(1, brand(0)),\n\t\t\t\t\t{ count: 2 },\n\t\t\t\t\tMark.returnTo(1, brand(0), cellId),\n\t\t\t\t];\n\t\t\t\tconst expected = [Mark.tomb(tag1, brand(0)), { count: 2 }, Mark.pin(1, brand(0))];\n\t\t\t\tconst rebased = rebase(move, move);\n\t\t\t\tassertChangesetsEqual(rebased, expected);\n\t\t\t}));\n\n\t\tit(\"return ↷ return (other destination)\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst return1 = [\n\t\t\t\t\tMark.returnTo(1, brand(0), {\n\t\t\t\t\t\trevision: tag3,\n\t\t\t\t\t\tlocalId: brand(0),\n\t\t\t\t\t}),\n\t\t\t\t\t{ count: 2 },\n\t\t\t\t\tMark.moveOut(1, brand(0)),\n\t\t\t\t];\n\t\t\t\tconst return2 = [\n\t\t\t\t\t{ count: 2 },\n\t\t\t\t\tMark.moveOut(1, brand(0)),\n\t\t\t\t\t{ count: 2 },\n\t\t\t\t\tMark.returnTo(1, brand(0), {\n\t\t\t\t\t\trevision: tag3,\n\t\t\t\t\t\tlocalId: brand(42),\n\t\t\t\t\t}),\n\t\t\t\t];\n\t\t\t\tconst expected = [\n\t\t\t\t\tMark.moveOut(1, brand(0)),\n\t\t\t\t\t{ count: 2 },\n\t\t\t\t\tMark.tomb(tag1, brand(0)),\n\t\t\t\t\t{ count: 2 },\n\t\t\t\t\tMark.returnTo(1, brand(0), {\n\t\t\t\t\t\trevision: tag3,\n\t\t\t\t\t\tlocalId: brand(42),\n\t\t\t\t\t}),\n\t\t\t\t];\n\t\t\t\tconst rebased = rebase(return2, return1);\n\t\t\t\tassertChangesetsEqual(rebased, expected);\n\t\t\t}));\n\n\t\tit(\"pin ↷ move\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst move = [Mark.moveIn(2, brand(0)), { count: 2 }, Mark.moveOut(2, brand(0))];\n\t\t\t\tconst pin = [{ count: 2 }, Mark.pin(2, brand(0))];\n\t\t\t\tconst expected = [\n\t\t\t\t\tMark.moveOut(2, brand(0)),\n\t\t\t\t\t{ count: 2 },\n\t\t\t\t\tMark.returnTo(2, brand(0), {\n\t\t\t\t\t\trevision: tag1,\n\t\t\t\t\t\tlocalId: brand(0),\n\t\t\t\t\t\tadjacentCells: [{ count: 2, id: brand(0) }],\n\t\t\t\t\t}),\n\t\t\t\t];\n\t\t\t\tconst rebased = rebase(pin, move);\n\t\t\t\tassertChangesetsEqual(rebased, expected);\n\t\t\t}));\n\n\t\tit(\"remove ↷ composite move\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst [mo1, mi1] = Mark.move(1, brand(0));\n\t\t\t\tconst [mo2, mi2] = Mark.move(1, brand(1));\n\t\t\t\tconst [mo3, mi3] = Mark.move(1, brand(2));\n\t\t\t\tconst move = [\n\t\t\t\t\tmo1,\n\t\t\t\t\tMark.skip(1),\n\t\t\t\t\tMark.attachAndDetach(mi1, mo2),\n\t\t\t\t\tMark.skip(1),\n\t\t\t\t\tMark.attachAndDetach(mi2, mo3),\n\t\t\t\t\tMark.skip(1),\n\t\t\t\t\tmi3,\n\t\t\t\t];\n\t\t\t\tconst del = [Mark.remove(1, brand(0))];\n\t\t\t\tconst rebased = rebase(del, move);\n\t\t\t\tconst expected = [\n\t\t\t\t\tMark.tomb(tag1, brand(0)),\n\t\t\t\t\tMark.skip(1),\n\t\t\t\t\tMark.tomb(tag1, brand(1)),\n\t\t\t\t\tMark.skip(1),\n\t\t\t\t\tMark.tomb(tag1, brand(2)),\n\t\t\t\t\tMark.skip(1),\n\t\t\t\t\tMark.remove(1, brand(0)),\n\t\t\t\t];\n\t\t\t\tassertChangesetsEqual(rebased, expected);\n\t\t\t}));\n\n\t\tit(\"rebasing over transient revive changes cell ID\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst change = TestChange.mint([0], 1);\n\t\t\t\tconst modify = Change.modifyDetached(0, change, {\n\t\t\t\t\trevision: tag1,\n\t\t\t\t\tlocalId: brand(0),\n\t\t\t\t});\n\n\t\t\t\tconst revive = [\n\t\t\t\t\tMark.remove(1, brand(2), { cellId: { revision: tag1, localId: brand(0) } }),\n\t\t\t\t];\n\n\t\t\t\tconst rebased = rebase(modify, revive, tag2);\n\t\t\t\tconst expected = Change.modifyDetached(0, change, {\n\t\t\t\t\trevision: tag2,\n\t\t\t\t\tlocalId: brand(2),\n\t\t\t\t\tadjacentCells: [{ id: brand(2), count: 1 }],\n\t\t\t\t});\n\t\t\t\tassertChangesetsEqual(rebased, expected);\n\t\t\t}));\n\n\t\tit(\"rebasing over transient adds lineage\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst insert = Change.insert(0, 1);\n\t\t\t\tconst transient = [\n\t\t\t\t\tMark.attachAndDetach(Mark.insert(2, brand(0)), Mark.remove(2, brand(2))),\n\t\t\t\t];\n\t\t\t\tconst rebased = rebase(insert, transient);\n\t\t\t\tconst expected = [\n\t\t\t\t\tMark.insert(1, {\n\t\t\t\t\t\tlocalId: brand(0),\n\t\t\t\t\t\tlineage: [{ revision: tag1, id: brand(2), count: 2, offset: 0 }],\n\t\t\t\t\t}),\n\t\t\t\t\tMark.tomb(tag1, brand(2), 2),\n\t\t\t\t];\n\n\t\t\t\tassertChangesetsEqual(rebased, expected);\n\t\t\t}));\n\n\t\tit(\"remove ↷ [move, remove]\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst moveAndRemove = [\n\t\t\t\t\tMark.moveOut(1, brand(0)),\n\t\t\t\t\t{ count: 1 },\n\t\t\t\t\tMark.attachAndDetach(Mark.moveIn(1, brand(0)), Mark.remove(1, brand(1))),\n\t\t\t\t];\n\n\t\t\t\tconst del = Change.remove(0, 1);\n\t\t\t\tconst rebased = rebase(del, moveAndRemove);\n\t\t\t\tconst expected = [\n\t\t\t\t\tMark.tomb(tag1, brand(0)),\n\t\t\t\t\t{ count: 1 },\n\t\t\t\t\tMark.remove(1, brand(0), {\n\t\t\t\t\t\tcellId: {\n\t\t\t\t\t\t\trevision: tag1,\n\t\t\t\t\t\t\tlocalId: brand(1),\n\t\t\t\t\t\t\tadjacentCells: [{ id: brand(1), count: 1 }],\n\t\t\t\t\t\t},\n\t\t\t\t\t}),\n\t\t\t\t];\n\n\t\t\t\tassertChangesetsEqual(rebased, expected);\n\t\t\t}));\n\n\t\tit(\"remove ↷ [move, remove] (reverse move direction)\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst moveAndRemove = [\n\t\t\t\t\tMark.attachAndDetach(Mark.moveIn(1, brand(0)), Mark.remove(1, brand(1))),\n\t\t\t\t\t{ count: 1 },\n\t\t\t\t\tMark.moveOut(1, brand(0)),\n\t\t\t\t];\n\n\t\t\t\tconst del = Change.remove(1, 1);\n\t\t\t\tconst rebased = rebase(del, moveAndRemove);\n\t\t\t\tconst expected = [\n\t\t\t\t\tMark.remove(1, brand(0), {\n\t\t\t\t\t\tcellId: {\n\t\t\t\t\t\t\trevision: tag1,\n\t\t\t\t\t\t\tlocalId: brand(1),\n\t\t\t\t\t\t\tadjacentCells: [{ id: brand(1), count: 1 }],\n\t\t\t\t\t\t},\n\t\t\t\t\t}),\n\t\t\t\t\t{ count: 1 },\n\t\t\t\t\tMark.tomb(tag1, brand(0)),\n\t\t\t\t];\n\n\t\t\t\tassertChangesetsEqual(rebased, expected);\n\t\t\t}));\n\n\t\tit(\"move ↷ move and remove\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst moveAndRemove = [\n\t\t\t\t\t{ count: 1 },\n\t\t\t\t\tMark.attachAndDetach(Mark.moveIn(1, brand(0)), Mark.remove(1, brand(1))),\n\t\t\t\t\t{ count: 1 },\n\t\t\t\t\tMark.moveOut(1, brand(0)),\n\t\t\t\t];\n\n\t\t\t\tconst move = Change.move(2, 1, 0);\n\t\t\t\tconst rebased = rebase(move, moveAndRemove);\n\t\t\t\tconst expected = [\n\t\t\t\t\tMark.moveIn(1, brand(0)),\n\t\t\t\t\t{ count: 1 },\n\t\t\t\t\tMark.moveOut(1, brand(0), {\n\t\t\t\t\t\tcellId: {\n\t\t\t\t\t\t\trevision: tag1,\n\t\t\t\t\t\t\tlocalId: brand(1),\n\t\t\t\t\t\t\tadjacentCells: [{ id: brand(1), count: 1 }],\n\t\t\t\t\t\t},\n\t\t\t\t\t}),\n\t\t\t\t\t{ count: 1 },\n\t\t\t\t\tMark.tomb(tag1, brand(0)),\n\t\t\t\t];\n\n\t\t\t\tassertChangesetsEqual(rebased, expected);\n\t\t\t}));\n\n\t\tit(\"revive ↷ [revive, move]\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst cellId: ChangeAtomId = { revision: tag1, localId: brand(0) };\n\t\t\t\tconst reviveAndMove = [\n\t\t\t\t\tMark.moveOut(1, brand(1), { cellId }),\n\t\t\t\t\t{ count: 1 },\n\t\t\t\t\tMark.moveIn(1, brand(1)),\n\t\t\t\t];\n\t\t\t\tconst revive = [Mark.revive(1, cellId)];\n\t\t\t\tconst rebased = rebase(revive, reviveAndMove, tag2);\n\t\t\t\tconst expected = [\n\t\t\t\t\tMark.returnTo(1, brand(0), {\n\t\t\t\t\t\trevision: tag2,\n\t\t\t\t\t\tlocalId: brand(1),\n\t\t\t\t\t\tadjacentCells: [{ id: brand(1), count: 1 }],\n\t\t\t\t\t}),\n\t\t\t\t\t{ count: 1 },\n\t\t\t\t\tMark.moveOut(1, brand(0)),\n\t\t\t\t];\n\t\t\t\tassertChangesetsEqual(rebased, expected);\n\t\t\t}));\n\n\t\tit(\"revive ↷ [revive, move, remove]\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst cellId: ChangeAtomId = { revision: tag1, localId: brand(0) };\n\t\t\t\tconst reviveMoveRemove = [\n\t\t\t\t\tMark.moveOut(1, brand(1), { cellId }),\n\t\t\t\t\t{ count: 1 },\n\t\t\t\t\tMark.attachAndDetach(Mark.moveIn(1, brand(1)), Mark.remove(1, brand(2))),\n\t\t\t\t];\n\t\t\t\tconst revive = [Mark.revive(1, cellId)];\n\t\t\t\tconst rebased = rebase(revive, reviveMoveRemove, tag2);\n\t\t\t\tconst expected = [\n\t\t\t\t\tMark.returnTo(1, brand(0), {\n\t\t\t\t\t\trevision: tag2,\n\t\t\t\t\t\tlocalId: brand(1),\n\t\t\t\t\t\tadjacentCells: [{ id: brand(1), count: 1 }],\n\t\t\t\t\t}),\n\t\t\t\t\t{ count: 1 },\n\t\t\t\t\tMark.onEmptyCell(\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\trevision: tag2,\n\t\t\t\t\t\t\tlocalId: brand(2),\n\t\t\t\t\t\t\tadjacentCells: [{ id: brand(2), count: 1 }],\n\t\t\t\t\t\t},\n\t\t\t\t\t\tMark.moveOut(1, brand(0)),\n\t\t\t\t\t),\n\t\t\t\t];\n\t\t\t\tassertChangesetsEqual(rebased, expected);\n\t\t\t}));\n\n\t\tit(\"move chain ↷ remove\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst del = Change.remove(0, 1);\n\t\t\t\tconst move = [\n\t\t\t\t\tMark.moveOut(1, brand(0), {\n\t\t\t\t\t\tfinalEndpoint: { localId: brand(1) },\n\t\t\t\t\t}),\n\t\t\t\t\t{ count: 1 },\n\t\t\t\t\tMark.attachAndDetach(Mark.moveIn(1, brand(0)), Mark.moveOut(1, brand(1))),\n\t\t\t\t\t{ count: 1 },\n\t\t\t\t\tMark.moveIn(1, brand(1), { finalEndpoint: { localId: brand(0) } }),\n\t\t\t\t];\n\n\t\t\t\tconst rebased = rebase(move, del);\n\t\t\t\tconst expected = [\n\t\t\t\t\tMark.moveOut(1, brand(0), {\n\t\t\t\t\t\tcellId: {\n\t\t\t\t\t\t\trevision: tag1,\n\t\t\t\t\t\t\tlocalId: brand(0),\n\t\t\t\t\t\t\tadjacentCells: [{ id: brand(0), count: 1 }],\n\t\t\t\t\t\t},\n\t\t\t\t\t\tfinalEndpoint: { localId: brand(1) },\n\t\t\t\t\t}),\n\t\t\t\t\t{ count: 1 },\n\t\t\t\t\tMark.attachAndDetach(Mark.moveIn(1, brand(0)), Mark.moveOut(1, brand(1))),\n\t\t\t\t\t{ count: 1 },\n\t\t\t\t\tMark.moveIn(1, brand(1), {\n\t\t\t\t\t\tfinalEndpoint: { localId: brand(0) },\n\t\t\t\t\t}),\n\t\t\t\t];\n\n\t\t\t\tassertChangesetsEqual(rebased, expected);\n\t\t\t}));\n\n\t\tit(\"[revive, move] ↷ [revive, move]\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst cellId: ChangeAtomId = { revision: tag2, localId: brand(0) };\n\t\t\t\tconst reviveAndMove1 = [\n\t\t\t\t\tMark.moveOut(1, brand(0), { cellId }),\n\t\t\t\t\t{ count: 1 },\n\t\t\t\t\tMark.moveIn(1, brand(0)),\n\t\t\t\t];\n\t\t\t\tconst reviveAndMove2 = [\n\t\t\t\t\tMark.moveOut(1, brand(1), { cellId }),\n\t\t\t\t\t{ count: 2 },\n\t\t\t\t\tMark.moveIn(1, brand(1)),\n\t\t\t\t];\n\t\t\t\tconst rebased = rebase(reviveAndMove2, reviveAndMove1, tag3);\n\t\t\t\tconst expected = [\n\t\t\t\t\tMark.tomb(tag3),\n\t\t\t\t\t{ count: 1 },\n\t\t\t\t\tMark.moveOut(1, brand(1)),\n\t\t\t\t\t{ count: 1 },\n\t\t\t\t\tMark.moveIn(1, brand(1)),\n\t\t\t\t];\n\t\t\t\tassertChangesetsEqual(rebased, expected);\n\t\t\t}));\n\n\t\tit(\"[revive, return] ↷ [revive, return] (same destination)\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst cellSrc: ChangeAtomId = { revision: tag1, localId: brand(0) };\n\t\t\t\tconst cellDst: ChangeAtomId = { revision: tag2, localId: brand(0) };\n\t\t\t\tconst reviveAndMove = [\n\t\t\t\t\tMark.moveOut(1, brand(0), { cellId: cellSrc }),\n\t\t\t\t\t{ count: 2 },\n\t\t\t\t\tMark.returnTo(1, brand(0), cellDst),\n\t\t\t\t];\n\t\t\t\tconst rebased = rebase(reviveAndMove, reviveAndMove, tag3);\n\t\t\t\tconst expected = [Mark.tomb(tag3), { count: 2 }, Mark.pin(1, brand(0))];\n\t\t\t\tassertChangesetsEqual(rebased, expected);\n\t\t\t}));\n\n\t\tit(\"[revive, return] ↷ [revive, return] (other destination)\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst cellSrc: ChangeAtomId = { revision: tag1, localId: brand(0) };\n\t\t\t\tconst cellDst1: ChangeAtomId = { revision: tag2, localId: brand(1) };\n\t\t\t\tconst cellDst2: ChangeAtomId = { revision: tag2, localId: brand(2) };\n\t\t\t\tconst reviveAndMove1 = [\n\t\t\t\t\tMark.moveOut(1, brand(0), { cellId: cellSrc }),\n\t\t\t\t\t{ count: 2 },\n\t\t\t\t\tMark.returnTo(1, brand(0), cellDst1),\n\t\t\t\t];\n\t\t\t\tconst reviveAndMove2 = [\n\t\t\t\t\tMark.moveOut(1, brand(1), { cellId: cellSrc }),\n\t\t\t\t\t{ count: 4 },\n\t\t\t\t\tMark.returnTo(1, brand(1), cellDst2),\n\t\t\t\t];\n\t\t\t\tconst rebased = rebase(reviveAndMove2, reviveAndMove1, tag3);\n\t\t\t\tconst expected = [\n\t\t\t\t\tMark.tomb(tag3),\n\t\t\t\t\t{ count: 2 },\n\t\t\t\t\tMark.moveOut(1, brand(1)),\n\t\t\t\t\t{ count: 2 },\n\t\t\t\t\tMark.returnTo(1, brand(1), cellDst2),\n\t\t\t\t];\n\t\t\t\tassertChangesetsEqual(rebased, expected);\n\t\t\t}));\n\n\t\tit(\"remove ↷ move with multiple destinations\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst del = [Mark.remove(2, brand(0))];\n\t\t\t\tconst move = [\n\t\t\t\t\tMark.moveOut(2, brand(0)),\n\t\t\t\t\t{ count: 1 },\n\t\t\t\t\tMark.moveIn(1, brand(0)),\n\t\t\t\t\t{ count: 1 },\n\t\t\t\t\tMark.moveIn(1, brand(1)),\n\t\t\t\t];\n\n\t\t\t\tconst rebased = rebase(del, move);\n\t\t\t\tconst expected = [\n\t\t\t\t\tMark.tomb(tag1, brand(0), 2),\n\t\t\t\t\t{ count: 1 },\n\t\t\t\t\tMark.remove(1, brand(0)),\n\t\t\t\t\t{ count: 1 },\n\t\t\t\t\tMark.remove(1, brand(1)),\n\t\t\t\t];\n\t\t\t\tassertChangesetsEqual(rebased, expected);\n\t\t\t}));\n\n\t\t// Tests that lineage is only added for detaches which are contiguous in the output context of the base changeset.\n\t\tit(\"insert ↷ insert within remove\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\tconst insertAndRemove = [\n\t\t\t\t\tMark.remove(1, brand(0)),\n\t\t\t\t\tMark.insert(1, brand(1)),\n\t\t\t\t\tMark.remove(1, brand(2)),\n\t\t\t\t];\n\n\t\t\t\tconst insert = [{ count: 1 }, Mark.insert(1, brand(0))];\n\t\t\t\tconst rebased = rebase(insert, insertAndRemove);\n\t\t\t\tconst expected = [\n\t\t\t\t\tMark.tomb(tag1, brand(0)),\n\t\t\t\t\tMark.insert(1, {\n\t\t\t\t\t\tlocalId: brand(0),\n\t\t\t\t\t\tlineage: [{ revision: tag1, id: brand(0), count: 1, offset: 1 }],\n\t\t\t\t\t}),\n\t\t\t\t\tMark.skip(1),\n\t\t\t\t\tMark.tomb(tag1, brand(2)),\n\t\t\t\t];\n\t\t\t\tassertChangesetsEqual(rebased, expected);\n\t\t\t}));\n\n\t\tit(\"insert ↷ [remove, insert]\", () =>\n\t\t\twithConfig(() => {\n\t\t\t\t// Because B does not have lineage for A, we should use B's insertion's tiebreak policy\n\t\t\t\t// and consider the cell it inserts into to be before the cell emptied by A\n\t\t\t\t// Although B and C's inserts appear to be at adjacent positions when rebasing C over B,\n\t\t\t\t// we should use C's lineage to deduce that it must come after B.\n\t\t\t\tconst removeA = [Mark.remove(1, brand(0))];\n\t\t\t\tconst insertB = [Mark.insert(1, brand(0))];\n\t\t\t\tconst insertC = [{ count: 1 }, Mark.insert(1, brand(0))];\n\n\t\t\t\tconst c2 = rebase(insertC, removeA, tag1);\n\t\t\t\tconst c3 = rebase(c2, insertB, tag2);\n\t\t\t\tconst expected = [\n\t\t\t\t\t{ count: 1 }, // Insert B\n\t\t\t\t\tMark.tomb(tag1), // Remove A\n\t\t\t\t\tMark.insert(1, {\n\t\t\t\t\t\tlocalId: brand(0),\n\t\t\t\t\t\tlineage: [{ revision: tag1, id: brand(0), count: 1, offset: 1 }],\n\t\t\t\t\t}),\n\t\t\t\t];\n\t\t\t\tassertChangesetsEqual(c3, expected);\n\t\t\t}));\n\n\t\tdescribe(\"Over composition\", () => {\n\t\t\tit(\"insert ↷ [remove, remove]\", () =>\n\t\t\t\twithConfig(() => {\n\t\t\t\t\tconst removes: TestChangeset = shallowCompose([\n\t\t\t\t\t\ttagChange(Change.remove(1, 2), tag1),\n\t\t\t\t\t\ttagChange(Change.remove(0, 2), tag2),\n\t\t\t\t\t]);\n\n\t\t\t\t\tconst insert = Change.insert(3, 1);\n\t\t\t\t\tconst rebased = rebaseOverComposition(\n\t\t\t\t\t\tinsert,\n\t\t\t\t\t\tremoves,\n\t\t\t\t\t\trebaseRevisionMetadataFromInfo(\n\t\t\t\t\t\t\t[{ revision: tag1 }, { revision: tag2 }],\n\t\t\t\t\t\t\t[tag1, tag2],\n\t\t\t\t\t\t),\n\t\t\t\t\t);\n\n\t\t\t\t\tconst expected = [\n\t\t\t\t\t\tMark.tomb(tag2),\n\t\t\t\t\t\tMark.tomb(tag1, brand(0), 2),\n\t\t\t\t\t\tMark.insert(1, {\n\t\t\t\t\t\t\tlocalId: brand(0),\n\t\t\t\t\t\t\tlineage: [\n\t\t\t\t\t\t\t\t{ revision: tag2, id: brand(0), count: 1, offset: 1 },\n\t\t\t\t\t\t\t\t{ revision: tag1, id: brand(0), count: 2, offset: 2 },\n\t\t\t\t\t\t\t\t{ revision: tag2, id: brand(1), count: 1, offset: 0 },\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t}),\n\t\t\t\t\t\tMark.tomb(tag2, brand(1)),\n\t\t\t\t\t];\n\t\t\t\t\tassertChangesetsEqual(rebased, expected);\n\t\t\t\t}));\n\n\t\t\tit(\"modify ↷ [remove, remove]\", () =>\n\t\t\t\twithConfig(() => {\n\t\t\t\t\tconst removes: TestChangeset = shallowCompose([\n\t\t\t\t\t\ttagChange(Change.remove(1, 3), tag1),\n\t\t\t\t\t\ttagChange(Change.remove(0, 2), tag2),\n\t\t\t\t\t]);\n\n\t\t\t\t\tconst nodeChange = TestChange.mint([], 0);\n\t\t\t\t\tconst modify = Change.modify(3, nodeChange);\n\t\t\t\t\tconst rebased = rebaseOverComposition(\n\t\t\t\t\t\tmodify,\n\t\t\t\t\t\tremoves,\n\t\t\t\t\t\trebaseRevisionMetadataFromInfo(\n\t\t\t\t\t\t\t[{ revision: tag1 }, { revision: tag2 }],\n\t\t\t\t\t\t\t[tag1, tag2],\n\t\t\t\t\t\t),\n\t\t\t\t\t);\n\n\t\t\t\t\tconst expected = [\n\t\t\t\t\t\tMark.tomb(tag2),\n\t\t\t\t\t\tMark.tomb(tag1, brand(0), 2),\n\t\t\t\t\t\tMark.modify(nodeChange, {\n\t\t\t\t\t\t\trevision: tag1,\n\t\t\t\t\t\t\tlocalId: brand(2),\n\t\t\t\t\t\t\tadjacentCells: [{ id: brand(0), count: 3 }],\n\t\t\t\t\t\t\tlineage: [{ revision: tag2, id: brand(0), count: 2, offset: 1 }],\n\t\t\t\t\t\t}),\n\t\t\t\t\t\tMark.tomb(tag2, brand(1)),\n\t\t\t\t\t];\n\t\t\t\t\tassertChangesetsEqual(rebased, expected);\n\t\t\t\t}));\n\t\t});\n\t});\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"relevantRemovedRoots.test.d.ts","sourceRoot":"","sources":["../../../../src/test/feature-libraries/sequence-field/relevantRemovedRoots.test.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA6BH,wBAAgB,wBAAwB,SAyLvC"}
|
|
@@ -1,211 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* Copyright (c) Microsoft Corporation and contributors. All rights reserved.
|
|
3
|
-
* Licensed under the MIT License.
|
|
4
|
-
*/
|
|
5
|
-
import { strict as assert } from "assert";
|
|
6
|
-
import { mintRevisionTag } from "../../utils.js";
|
|
7
|
-
import { makeAnonChange, tagChange, } from "../../../core/index.js";
|
|
8
|
-
import { SequenceField as SF } from "../../../feature-libraries/index.js";
|
|
9
|
-
import { brand } from "../../../util/index.js";
|
|
10
|
-
import { TestChange } from "../../testChange.js";
|
|
11
|
-
import { MarkMaker as Mark } from "./testEdits.js";
|
|
12
|
-
const tag = mintRevisionTag();
|
|
13
|
-
const atomId = { localId: brand(0) };
|
|
14
|
-
const deltaId = { minor: atomId.localId };
|
|
15
|
-
const childChange = TestChange.mint([0], 1);
|
|
16
|
-
const relevantNestedTree = { minor: 4242 };
|
|
17
|
-
const oneTreeDelegate = (child) => {
|
|
18
|
-
assert.deepEqual(child, childChange);
|
|
19
|
-
return [relevantNestedTree];
|
|
20
|
-
};
|
|
21
|
-
const noTreeDelegate = (child) => {
|
|
22
|
-
assert.deepEqual(child, childChange);
|
|
23
|
-
return [];
|
|
24
|
-
};
|
|
25
|
-
export function testRelevantRemovedRoots() {
|
|
26
|
-
describe("relevantRemovedRoots", () => {
|
|
27
|
-
describe("does not include", () => {
|
|
28
|
-
it("a tree that remains in-doc", () => {
|
|
29
|
-
const input = [{ count: 1 }];
|
|
30
|
-
const actual = SF.relevantRemovedRoots(makeAnonChange(input), noTreeDelegate);
|
|
31
|
-
const array = Array.from(actual);
|
|
32
|
-
assert.deepEqual(array, []);
|
|
33
|
-
});
|
|
34
|
-
it("a tree with child changes that remains in-doc", () => {
|
|
35
|
-
const input = [Mark.modify(childChange)];
|
|
36
|
-
const actual = SF.relevantRemovedRoots(makeAnonChange(input), noTreeDelegate);
|
|
37
|
-
const array = Array.from(actual);
|
|
38
|
-
assert.deepEqual(array, []);
|
|
39
|
-
});
|
|
40
|
-
it("a tree that remains removed", () => {
|
|
41
|
-
const input = [{ count: 1, cellId: atomId }];
|
|
42
|
-
const actual = SF.relevantRemovedRoots(makeAnonChange(input), noTreeDelegate);
|
|
43
|
-
const array = Array.from(actual);
|
|
44
|
-
assert.deepEqual(array, []);
|
|
45
|
-
});
|
|
46
|
-
it("a tree being removed", () => {
|
|
47
|
-
const input = [Mark.remove(1, atomId)];
|
|
48
|
-
const actual = SF.relevantRemovedRoots(makeAnonChange(input), noTreeDelegate);
|
|
49
|
-
const array = Array.from(actual);
|
|
50
|
-
assert.deepEqual(array, []);
|
|
51
|
-
});
|
|
52
|
-
it("a tree with child changes being removed", () => {
|
|
53
|
-
const input = [Mark.remove(1, atomId, { changes: childChange })];
|
|
54
|
-
const actual = SF.relevantRemovedRoots(makeAnonChange(input), noTreeDelegate);
|
|
55
|
-
const array = Array.from(actual);
|
|
56
|
-
assert.deepEqual(array, []);
|
|
57
|
-
});
|
|
58
|
-
it("a tree being moved", () => {
|
|
59
|
-
const input = [Mark.moveOut(1, atomId), Mark.moveIn(1, atomId)];
|
|
60
|
-
const actual = SF.relevantRemovedRoots(makeAnonChange(input), noTreeDelegate);
|
|
61
|
-
const array = Array.from(actual);
|
|
62
|
-
assert.deepEqual(array, []);
|
|
63
|
-
});
|
|
64
|
-
it("a tree with child changes being moved", () => {
|
|
65
|
-
const input = [
|
|
66
|
-
Mark.moveOut(1, atomId, { changes: childChange }),
|
|
67
|
-
Mark.moveIn(1, atomId),
|
|
68
|
-
];
|
|
69
|
-
const actual = SF.relevantRemovedRoots(makeAnonChange(input), noTreeDelegate);
|
|
70
|
-
const array = Array.from(actual);
|
|
71
|
-
assert.deepEqual(array, []);
|
|
72
|
-
});
|
|
73
|
-
it("a live tree being pinned", () => {
|
|
74
|
-
const input = [Mark.pin(1, brand(0))];
|
|
75
|
-
const actual = SF.relevantRemovedRoots(makeAnonChange(input), noTreeDelegate);
|
|
76
|
-
const array = Array.from(actual);
|
|
77
|
-
assert.deepEqual(array, []);
|
|
78
|
-
});
|
|
79
|
-
});
|
|
80
|
-
describe("does include", () => {
|
|
81
|
-
it("a tree being inserted", () => {
|
|
82
|
-
const input = [Mark.insert(1, atomId)];
|
|
83
|
-
const actual = SF.relevantRemovedRoots(makeAnonChange(input), noTreeDelegate);
|
|
84
|
-
const array = Array.from(actual);
|
|
85
|
-
assert.deepEqual(array, [deltaId]);
|
|
86
|
-
});
|
|
87
|
-
it("a tree being transiently inserted", () => {
|
|
88
|
-
const input = [
|
|
89
|
-
Mark.attachAndDetach(Mark.insert(1, atomId), Mark.remove(1, atomId)),
|
|
90
|
-
];
|
|
91
|
-
const actual = SF.relevantRemovedRoots(makeAnonChange(input), noTreeDelegate);
|
|
92
|
-
const array = Array.from(actual);
|
|
93
|
-
assert.deepEqual(array, [deltaId]);
|
|
94
|
-
});
|
|
95
|
-
it("a tree being transiently inserted and moved out", () => {
|
|
96
|
-
const input = [
|
|
97
|
-
Mark.attachAndDetach(Mark.insert(1, atomId), Mark.moveOut(1, atomId)),
|
|
98
|
-
];
|
|
99
|
-
const actual = SF.relevantRemovedRoots(makeAnonChange(input), noTreeDelegate);
|
|
100
|
-
const array = Array.from(actual);
|
|
101
|
-
assert.deepEqual(array, [deltaId]);
|
|
102
|
-
});
|
|
103
|
-
it("relevant roots from nested changes under a tree that remains in-doc", () => {
|
|
104
|
-
const input = [Mark.modify(childChange)];
|
|
105
|
-
const actual = SF.relevantRemovedRoots(makeAnonChange(input), oneTreeDelegate);
|
|
106
|
-
const array = Array.from(actual);
|
|
107
|
-
assert.deepEqual(array, [relevantNestedTree]);
|
|
108
|
-
});
|
|
109
|
-
it("relevant roots from nested changes under a tree that remains removed", () => {
|
|
110
|
-
const input = [Mark.modify(childChange, atomId)];
|
|
111
|
-
const actual = SF.relevantRemovedRoots(makeAnonChange(input), oneTreeDelegate);
|
|
112
|
-
const array = Array.from(actual);
|
|
113
|
-
assert.deepEqual(array, [deltaId, relevantNestedTree]);
|
|
114
|
-
});
|
|
115
|
-
it("a removed tree with nested changes", () => {
|
|
116
|
-
const input = [Mark.modify(childChange, atomId)];
|
|
117
|
-
const actual = SF.relevantRemovedRoots(makeAnonChange(input), noTreeDelegate);
|
|
118
|
-
const array = Array.from(actual);
|
|
119
|
-
assert.deepEqual(array, [deltaId]);
|
|
120
|
-
});
|
|
121
|
-
it("a tree being restored by revive", () => {
|
|
122
|
-
const input = [Mark.revive(1, atomId)];
|
|
123
|
-
const actual = SF.relevantRemovedRoots(makeAnonChange(input), noTreeDelegate);
|
|
124
|
-
const array = Array.from(actual);
|
|
125
|
-
assert.deepEqual(array, [deltaId]);
|
|
126
|
-
});
|
|
127
|
-
it("a tree being restored by pin", () => {
|
|
128
|
-
const input = [Mark.pin(1, brand(0), { cellId: atomId })];
|
|
129
|
-
const actual = SF.relevantRemovedRoots(makeAnonChange(input), noTreeDelegate);
|
|
130
|
-
const array = Array.from(actual);
|
|
131
|
-
assert.deepEqual(array, [deltaId]);
|
|
132
|
-
});
|
|
133
|
-
it("a tree being transiently restored", () => {
|
|
134
|
-
const input = [Mark.remove(1, brand(0), { cellId: atomId })];
|
|
135
|
-
const actual = SF.relevantRemovedRoots(makeAnonChange(input), noTreeDelegate);
|
|
136
|
-
const array = Array.from(actual);
|
|
137
|
-
assert.deepEqual(array, [deltaId]);
|
|
138
|
-
});
|
|
139
|
-
it("relevant roots from nested changes under a tree being restored by revive", () => {
|
|
140
|
-
const input = [Mark.revive(1, atomId, { changes: childChange })];
|
|
141
|
-
const actual = SF.relevantRemovedRoots(makeAnonChange(input), oneTreeDelegate);
|
|
142
|
-
const array = Array.from(actual);
|
|
143
|
-
assert.deepEqual(array, [deltaId, relevantNestedTree]);
|
|
144
|
-
});
|
|
145
|
-
it("relevant roots from nested changes under a tree being restored by pin", () => {
|
|
146
|
-
const input = [
|
|
147
|
-
Mark.pin(1, brand(0), { cellId: atomId, changes: childChange }),
|
|
148
|
-
];
|
|
149
|
-
const actual = SF.relevantRemovedRoots(makeAnonChange(input), oneTreeDelegate);
|
|
150
|
-
const array = Array.from(actual);
|
|
151
|
-
assert.deepEqual(array, [deltaId, relevantNestedTree]);
|
|
152
|
-
});
|
|
153
|
-
it("relevant roots from nested changes under a tree being removed", () => {
|
|
154
|
-
const input = [Mark.remove(1, atomId, { changes: childChange })];
|
|
155
|
-
const actual = SF.relevantRemovedRoots(makeAnonChange(input), oneTreeDelegate);
|
|
156
|
-
const array = Array.from(actual);
|
|
157
|
-
assert.deepEqual(array, [relevantNestedTree]);
|
|
158
|
-
});
|
|
159
|
-
it("relevant roots from nested changes under a tree being inserted", () => {
|
|
160
|
-
const input = [Mark.insert(1, atomId, { changes: childChange })];
|
|
161
|
-
const actual = SF.relevantRemovedRoots(makeAnonChange(input), oneTreeDelegate);
|
|
162
|
-
const array = Array.from(actual);
|
|
163
|
-
assert.deepEqual(array, [deltaId, relevantNestedTree]);
|
|
164
|
-
});
|
|
165
|
-
it("relevant roots from nested changes under a tree being moved", () => {
|
|
166
|
-
const input = [
|
|
167
|
-
Mark.moveOut(1, atomId, { changes: childChange }),
|
|
168
|
-
Mark.moveIn(1, atomId),
|
|
169
|
-
];
|
|
170
|
-
const actual = SF.relevantRemovedRoots(makeAnonChange(input), oneTreeDelegate);
|
|
171
|
-
const array = Array.from(actual);
|
|
172
|
-
assert.deepEqual(array, [relevantNestedTree]);
|
|
173
|
-
});
|
|
174
|
-
it("relevant roots from nested changes under a tree being transiently inserted", () => {
|
|
175
|
-
const input = [
|
|
176
|
-
Mark.attachAndDetach(Mark.insert(1, atomId), Mark.remove(1, atomId), {
|
|
177
|
-
changes: childChange,
|
|
178
|
-
}),
|
|
179
|
-
];
|
|
180
|
-
const actual = SF.relevantRemovedRoots(makeAnonChange(input), oneTreeDelegate);
|
|
181
|
-
const array = Array.from(actual);
|
|
182
|
-
assert.deepEqual(array, [deltaId, relevantNestedTree]);
|
|
183
|
-
});
|
|
184
|
-
it("relevant roots from nested changes under a tree being transiently restored", () => {
|
|
185
|
-
const input = [
|
|
186
|
-
Mark.remove(1, brand(0), { cellId: atomId, changes: childChange }),
|
|
187
|
-
];
|
|
188
|
-
const actual = SF.relevantRemovedRoots(makeAnonChange(input), oneTreeDelegate);
|
|
189
|
-
const array = Array.from(actual);
|
|
190
|
-
assert.deepEqual(array, [deltaId, relevantNestedTree]);
|
|
191
|
-
});
|
|
192
|
-
it("relevant roots from nested changes under a tree being transiently inserted and moved out", () => {
|
|
193
|
-
const input = [
|
|
194
|
-
Mark.attachAndDetach(Mark.insert(1, atomId), Mark.moveOut(1, atomId), {
|
|
195
|
-
changes: childChange,
|
|
196
|
-
}),
|
|
197
|
-
];
|
|
198
|
-
const actual = SF.relevantRemovedRoots(makeAnonChange(input), oneTreeDelegate);
|
|
199
|
-
const array = Array.from(actual);
|
|
200
|
-
assert.deepEqual(array, [deltaId, relevantNestedTree]);
|
|
201
|
-
});
|
|
202
|
-
});
|
|
203
|
-
it("uses passed down revision", () => {
|
|
204
|
-
const input = [Mark.modify(childChange, { localId: brand(42) })];
|
|
205
|
-
const actual = SF.relevantRemovedRoots(tagChange(input, tag), noTreeDelegate);
|
|
206
|
-
const array = Array.from(actual);
|
|
207
|
-
assert.deepEqual(array, [{ major: tag, minor: 42 }]);
|
|
208
|
-
});
|
|
209
|
-
});
|
|
210
|
-
}
|
|
211
|
-
//# sourceMappingURL=relevantRemovedRoots.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"relevantRemovedRoots.test.js","sourceRoot":"","sources":["../../../../src/test/feature-libraries/sequence-field/relevantRemovedRoots.test.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 { strict as assert } from \"assert\";\nimport { mintRevisionTag } from \"../../utils.js\";\nimport {\n\tChangeAtomId,\n\tDeltaDetachedNodeId,\n\tmakeAnonChange,\n\ttagChange,\n} from \"../../../core/index.js\";\nimport { SequenceField as SF } from \"../../../feature-libraries/index.js\";\nimport { brand } from \"../../../util/index.js\";\nimport { TestChange } from \"../../testChange.js\";\nimport { TestChangeset, MarkMaker as Mark } from \"./testEdits.js\";\n\nconst tag = mintRevisionTag();\nconst atomId: ChangeAtomId = { localId: brand(0) };\nconst deltaId: DeltaDetachedNodeId = { minor: atomId.localId };\nconst childChange = TestChange.mint([0], 1);\nconst relevantNestedTree = { minor: 4242 };\nconst oneTreeDelegate = (child: TestChange) => {\n\tassert.deepEqual(child, childChange);\n\treturn [relevantNestedTree];\n};\nconst noTreeDelegate = (child: TestChange) => {\n\tassert.deepEqual(child, childChange);\n\treturn [];\n};\n\nexport function testRelevantRemovedRoots() {\n\tdescribe(\"relevantRemovedRoots\", () => {\n\t\tdescribe(\"does not include\", () => {\n\t\t\tit(\"a tree that remains in-doc\", () => {\n\t\t\t\tconst input: TestChangeset = [{ count: 1 }];\n\t\t\t\tconst actual = SF.relevantRemovedRoots(makeAnonChange(input), noTreeDelegate);\n\t\t\t\tconst array = Array.from(actual);\n\t\t\t\tassert.deepEqual(array, []);\n\t\t\t});\n\t\t\tit(\"a tree with child changes that remains in-doc\", () => {\n\t\t\t\tconst input: TestChangeset = [Mark.modify(childChange)];\n\t\t\t\tconst actual = SF.relevantRemovedRoots(makeAnonChange(input), noTreeDelegate);\n\t\t\t\tconst array = Array.from(actual);\n\t\t\t\tassert.deepEqual(array, []);\n\t\t\t});\n\t\t\tit(\"a tree that remains removed\", () => {\n\t\t\t\tconst input: TestChangeset = [{ count: 1, cellId: atomId }];\n\t\t\t\tconst actual = SF.relevantRemovedRoots(makeAnonChange(input), noTreeDelegate);\n\t\t\t\tconst array = Array.from(actual);\n\t\t\t\tassert.deepEqual(array, []);\n\t\t\t});\n\t\t\tit(\"a tree being removed\", () => {\n\t\t\t\tconst input: TestChangeset = [Mark.remove(1, atomId)];\n\t\t\t\tconst actual = SF.relevantRemovedRoots(makeAnonChange(input), noTreeDelegate);\n\t\t\t\tconst array = Array.from(actual);\n\t\t\t\tassert.deepEqual(array, []);\n\t\t\t});\n\t\t\tit(\"a tree with child changes being removed\", () => {\n\t\t\t\tconst input: TestChangeset = [Mark.remove(1, atomId, { changes: childChange })];\n\t\t\t\tconst actual = SF.relevantRemovedRoots(makeAnonChange(input), noTreeDelegate);\n\t\t\t\tconst array = Array.from(actual);\n\t\t\t\tassert.deepEqual(array, []);\n\t\t\t});\n\t\t\tit(\"a tree being moved\", () => {\n\t\t\t\tconst input: TestChangeset = [Mark.moveOut(1, atomId), Mark.moveIn(1, atomId)];\n\t\t\t\tconst actual = SF.relevantRemovedRoots(makeAnonChange(input), noTreeDelegate);\n\t\t\t\tconst array = Array.from(actual);\n\t\t\t\tassert.deepEqual(array, []);\n\t\t\t});\n\t\t\tit(\"a tree with child changes being moved\", () => {\n\t\t\t\tconst input: TestChangeset = [\n\t\t\t\t\tMark.moveOut(1, atomId, { changes: childChange }),\n\t\t\t\t\tMark.moveIn(1, atomId),\n\t\t\t\t];\n\t\t\t\tconst actual = SF.relevantRemovedRoots(makeAnonChange(input), noTreeDelegate);\n\t\t\t\tconst array = Array.from(actual);\n\t\t\t\tassert.deepEqual(array, []);\n\t\t\t});\n\t\t\tit(\"a live tree being pinned\", () => {\n\t\t\t\tconst input: TestChangeset = [Mark.pin(1, brand(0))];\n\t\t\t\tconst actual = SF.relevantRemovedRoots(makeAnonChange(input), noTreeDelegate);\n\t\t\t\tconst array = Array.from(actual);\n\t\t\t\tassert.deepEqual(array, []);\n\t\t\t});\n\t\t});\n\t\tdescribe(\"does include\", () => {\n\t\t\tit(\"a tree being inserted\", () => {\n\t\t\t\tconst input: TestChangeset = [Mark.insert(1, atomId)];\n\t\t\t\tconst actual = SF.relevantRemovedRoots(makeAnonChange(input), noTreeDelegate);\n\t\t\t\tconst array = Array.from(actual);\n\t\t\t\tassert.deepEqual(array, [deltaId]);\n\t\t\t});\n\t\t\tit(\"a tree being transiently inserted\", () => {\n\t\t\t\tconst input: TestChangeset = [\n\t\t\t\t\tMark.attachAndDetach(Mark.insert(1, atomId), Mark.remove(1, atomId)),\n\t\t\t\t];\n\t\t\t\tconst actual = SF.relevantRemovedRoots(makeAnonChange(input), noTreeDelegate);\n\t\t\t\tconst array = Array.from(actual);\n\t\t\t\tassert.deepEqual(array, [deltaId]);\n\t\t\t});\n\t\t\tit(\"a tree being transiently inserted and moved out\", () => {\n\t\t\t\tconst input: TestChangeset = [\n\t\t\t\t\tMark.attachAndDetach(Mark.insert(1, atomId), Mark.moveOut(1, atomId)),\n\t\t\t\t];\n\t\t\t\tconst actual = SF.relevantRemovedRoots(makeAnonChange(input), noTreeDelegate);\n\t\t\t\tconst array = Array.from(actual);\n\t\t\t\tassert.deepEqual(array, [deltaId]);\n\t\t\t});\n\t\t\tit(\"relevant roots from nested changes under a tree that remains in-doc\", () => {\n\t\t\t\tconst input: TestChangeset = [Mark.modify(childChange)];\n\t\t\t\tconst actual = SF.relevantRemovedRoots(makeAnonChange(input), oneTreeDelegate);\n\t\t\t\tconst array = Array.from(actual);\n\t\t\t\tassert.deepEqual(array, [relevantNestedTree]);\n\t\t\t});\n\t\t\tit(\"relevant roots from nested changes under a tree that remains removed\", () => {\n\t\t\t\tconst input: TestChangeset = [Mark.modify(childChange, atomId)];\n\t\t\t\tconst actual = SF.relevantRemovedRoots(makeAnonChange(input), oneTreeDelegate);\n\t\t\t\tconst array = Array.from(actual);\n\t\t\t\tassert.deepEqual(array, [deltaId, relevantNestedTree]);\n\t\t\t});\n\t\t\tit(\"a removed tree with nested changes\", () => {\n\t\t\t\tconst input: TestChangeset = [Mark.modify(childChange, atomId)];\n\t\t\t\tconst actual = SF.relevantRemovedRoots(makeAnonChange(input), noTreeDelegate);\n\t\t\t\tconst array = Array.from(actual);\n\t\t\t\tassert.deepEqual(array, [deltaId]);\n\t\t\t});\n\t\t\tit(\"a tree being restored by revive\", () => {\n\t\t\t\tconst input: TestChangeset = [Mark.revive(1, atomId)];\n\t\t\t\tconst actual = SF.relevantRemovedRoots(makeAnonChange(input), noTreeDelegate);\n\t\t\t\tconst array = Array.from(actual);\n\t\t\t\tassert.deepEqual(array, [deltaId]);\n\t\t\t});\n\t\t\tit(\"a tree being restored by pin\", () => {\n\t\t\t\tconst input: TestChangeset = [Mark.pin(1, brand(0), { cellId: atomId })];\n\t\t\t\tconst actual = SF.relevantRemovedRoots(makeAnonChange(input), noTreeDelegate);\n\t\t\t\tconst array = Array.from(actual);\n\t\t\t\tassert.deepEqual(array, [deltaId]);\n\t\t\t});\n\t\t\tit(\"a tree being transiently restored\", () => {\n\t\t\t\tconst input: TestChangeset = [Mark.remove(1, brand(0), { cellId: atomId })];\n\t\t\t\tconst actual = SF.relevantRemovedRoots(makeAnonChange(input), noTreeDelegate);\n\t\t\t\tconst array = Array.from(actual);\n\t\t\t\tassert.deepEqual(array, [deltaId]);\n\t\t\t});\n\t\t\tit(\"relevant roots from nested changes under a tree being restored by revive\", () => {\n\t\t\t\tconst input: TestChangeset = [Mark.revive(1, atomId, { changes: childChange })];\n\t\t\t\tconst actual = SF.relevantRemovedRoots(makeAnonChange(input), oneTreeDelegate);\n\t\t\t\tconst array = Array.from(actual);\n\t\t\t\tassert.deepEqual(array, [deltaId, relevantNestedTree]);\n\t\t\t});\n\t\t\tit(\"relevant roots from nested changes under a tree being restored by pin\", () => {\n\t\t\t\tconst input: TestChangeset = [\n\t\t\t\t\tMark.pin(1, brand(0), { cellId: atomId, changes: childChange }),\n\t\t\t\t];\n\t\t\t\tconst actual = SF.relevantRemovedRoots(makeAnonChange(input), oneTreeDelegate);\n\t\t\t\tconst array = Array.from(actual);\n\t\t\t\tassert.deepEqual(array, [deltaId, relevantNestedTree]);\n\t\t\t});\n\t\t\tit(\"relevant roots from nested changes under a tree being removed\", () => {\n\t\t\t\tconst input: TestChangeset = [Mark.remove(1, atomId, { changes: childChange })];\n\t\t\t\tconst actual = SF.relevantRemovedRoots(makeAnonChange(input), oneTreeDelegate);\n\t\t\t\tconst array = Array.from(actual);\n\t\t\t\tassert.deepEqual(array, [relevantNestedTree]);\n\t\t\t});\n\t\t\tit(\"relevant roots from nested changes under a tree being inserted\", () => {\n\t\t\t\tconst input: TestChangeset = [Mark.insert(1, atomId, { changes: childChange })];\n\t\t\t\tconst actual = SF.relevantRemovedRoots(makeAnonChange(input), oneTreeDelegate);\n\t\t\t\tconst array = Array.from(actual);\n\t\t\t\tassert.deepEqual(array, [deltaId, relevantNestedTree]);\n\t\t\t});\n\t\t\tit(\"relevant roots from nested changes under a tree being moved\", () => {\n\t\t\t\tconst input: TestChangeset = [\n\t\t\t\t\tMark.moveOut(1, atomId, { changes: childChange }),\n\t\t\t\t\tMark.moveIn(1, atomId),\n\t\t\t\t];\n\t\t\t\tconst actual = SF.relevantRemovedRoots(makeAnonChange(input), oneTreeDelegate);\n\t\t\t\tconst array = Array.from(actual);\n\t\t\t\tassert.deepEqual(array, [relevantNestedTree]);\n\t\t\t});\n\t\t\tit(\"relevant roots from nested changes under a tree being transiently inserted\", () => {\n\t\t\t\tconst input: TestChangeset = [\n\t\t\t\t\tMark.attachAndDetach(Mark.insert(1, atomId), Mark.remove(1, atomId), {\n\t\t\t\t\t\tchanges: childChange,\n\t\t\t\t\t}),\n\t\t\t\t];\n\t\t\t\tconst actual = SF.relevantRemovedRoots(makeAnonChange(input), oneTreeDelegate);\n\t\t\t\tconst array = Array.from(actual);\n\t\t\t\tassert.deepEqual(array, [deltaId, relevantNestedTree]);\n\t\t\t});\n\t\t\tit(\"relevant roots from nested changes under a tree being transiently restored\", () => {\n\t\t\t\tconst input: TestChangeset = [\n\t\t\t\t\tMark.remove(1, brand(0), { cellId: atomId, changes: childChange }),\n\t\t\t\t];\n\t\t\t\tconst actual = SF.relevantRemovedRoots(makeAnonChange(input), oneTreeDelegate);\n\t\t\t\tconst array = Array.from(actual);\n\t\t\t\tassert.deepEqual(array, [deltaId, relevantNestedTree]);\n\t\t\t});\n\t\t\tit(\"relevant roots from nested changes under a tree being transiently inserted and moved out\", () => {\n\t\t\t\tconst input: TestChangeset = [\n\t\t\t\t\tMark.attachAndDetach(Mark.insert(1, atomId), Mark.moveOut(1, atomId), {\n\t\t\t\t\t\tchanges: childChange,\n\t\t\t\t\t}),\n\t\t\t\t];\n\t\t\t\tconst actual = SF.relevantRemovedRoots(makeAnonChange(input), oneTreeDelegate);\n\t\t\t\tconst array = Array.from(actual);\n\t\t\t\tassert.deepEqual(array, [deltaId, relevantNestedTree]);\n\t\t\t});\n\t\t});\n\t\tit(\"uses passed down revision\", () => {\n\t\t\tconst input: TestChangeset = [Mark.modify(childChange, { localId: brand(42) })];\n\t\t\tconst actual = SF.relevantRemovedRoots(tagChange(input, tag), noTreeDelegate);\n\t\t\tconst array = Array.from(actual);\n\t\t\tassert.deepEqual(array, [{ major: tag, minor: 42 }]);\n\t\t});\n\t});\n}\n"]}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* Copyright (c) Microsoft Corporation and contributors. All rights reserved.
|
|
3
|
-
* Licensed under the MIT License.
|
|
4
|
-
*/
|
|
5
|
-
export declare function testRebaserAxioms(): void;
|
|
6
|
-
export declare function testStateBasedRebaserAxioms(): void;
|
|
7
|
-
export declare function testSandwichRebasing(): void;
|
|
8
|
-
export declare function testSandwichComposing(): void;
|
|
9
|
-
export declare function testComposedSandwichRebasing(): void;
|
|
10
|
-
export declare function testExamples(): void;
|
|
11
|
-
//# sourceMappingURL=sequenceChangeRebaser.test.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sequenceChangeRebaser.test.d.ts","sourceRoot":"","sources":["../../../../src/test/feature-libraries/sequence-field/sequenceChangeRebaser.test.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAsLH,wBAAgB,iBAAiB,SAgShC;AA6MD,wBAAgB,2BAA2B,SAuD1C;AAED,wBAAgB,oBAAoB,SAyJnC;AAED,wBAAgB,qBAAqB,SAiIpC;AAED,wBAAgB,4BAA4B,SAa3C;AAED,wBAAgB,YAAY,SA4B3B"}
|