@fluidframework/tree 2.0.0-dev-rc.1.0.0.224419
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/.dependency-cruiser-known-violations.json +111 -0
- package/.dependency-cruiser.js +442 -0
- package/.eslintrc.js +34 -0
- package/.mocharc.js +13 -0
- package/.vscode/Tree.code-workspace +15 -0
- package/.vscode/extensions.json +7 -0
- package/.vscode/launch.json +16 -0
- package/.vscode/settings.json +16 -0
- package/CHANGELOG.md +302 -0
- package/DEV.md +3 -0
- package/LICENSE +21 -0
- package/README.md +388 -0
- package/api-extractor-lint.json +13 -0
- package/api-extractor.json +4 -0
- package/api-report/tree.api.md +2022 -0
- package/dist/class-tree/index.d.ts +15 -0
- package/dist/class-tree/index.d.ts.map +1 -0
- package/dist/class-tree/index.js +57 -0
- package/dist/class-tree/index.js.map +1 -0
- package/dist/class-tree/integerIndexable.d.ts +31 -0
- package/dist/class-tree/integerIndexable.d.ts.map +1 -0
- package/dist/class-tree/integerIndexable.js +97 -0
- package/dist/class-tree/integerIndexable.js.map +1 -0
- package/dist/class-tree/internal.d.ts +6 -0
- package/dist/class-tree/internal.d.ts.map +1 -0
- package/dist/class-tree/internal.js +12 -0
- package/dist/class-tree/internal.js.map +1 -0
- package/dist/class-tree/schemaCreationUtilities.d.ts +96 -0
- package/dist/class-tree/schemaCreationUtilities.d.ts.map +1 -0
- package/dist/class-tree/schemaCreationUtilities.js +137 -0
- package/dist/class-tree/schemaCreationUtilities.js.map +1 -0
- package/dist/class-tree/schemaFactory.d.ts +225 -0
- package/dist/class-tree/schemaFactory.d.ts.map +1 -0
- package/dist/class-tree/schemaFactory.js +330 -0
- package/dist/class-tree/schemaFactory.js.map +1 -0
- package/dist/class-tree/schemaFactoryRecursive.d.ts +41 -0
- package/dist/class-tree/schemaFactoryRecursive.d.ts.map +1 -0
- package/dist/class-tree/schemaFactoryRecursive.js +66 -0
- package/dist/class-tree/schemaFactoryRecursive.js.map +1 -0
- package/dist/class-tree/schemaTypes.d.ts +237 -0
- package/dist/class-tree/schemaTypes.d.ts.map +1 -0
- package/dist/class-tree/schemaTypes.js +71 -0
- package/dist/class-tree/schemaTypes.js.map +1 -0
- package/dist/class-tree/testRecursiveDomain.d.ts +28 -0
- package/dist/class-tree/testRecursiveDomain.d.ts.map +1 -0
- package/dist/class-tree/testRecursiveDomain.js +40 -0
- package/dist/class-tree/testRecursiveDomain.js.map +1 -0
- package/dist/class-tree/toFlexSchema.d.ts +58 -0
- package/dist/class-tree/toFlexSchema.d.ts.map +1 -0
- package/dist/class-tree/toFlexSchema.js +207 -0
- package/dist/class-tree/toFlexSchema.js.map +1 -0
- package/dist/class-tree/tree.d.ts +98 -0
- package/dist/class-tree/tree.d.ts.map +1 -0
- package/dist/class-tree/tree.js +46 -0
- package/dist/class-tree/tree.js.map +1 -0
- package/dist/class-tree/treeApi.d.ts +69 -0
- package/dist/class-tree/treeApi.d.ts.map +1 -0
- package/dist/class-tree/treeApi.js +56 -0
- package/dist/class-tree/treeApi.js.map +1 -0
- package/dist/codec/codec.d.ts +214 -0
- package/dist/codec/codec.d.ts.map +1 -0
- package/dist/codec/codec.js +168 -0
- package/dist/codec/codec.js.map +1 -0
- package/dist/codec/discriminatedUnions.d.ts +82 -0
- package/dist/codec/discriminatedUnions.d.ts.map +1 -0
- package/dist/codec/discriminatedUnions.js +91 -0
- package/dist/codec/discriminatedUnions.js.map +1 -0
- package/dist/codec/index.d.ts +8 -0
- package/dist/codec/index.d.ts.map +1 -0
- package/dist/codec/index.js +19 -0
- package/dist/codec/index.js.map +1 -0
- package/dist/codec/noopValidator.d.ts +13 -0
- package/dist/codec/noopValidator.d.ts.map +1 -0
- package/dist/codec/noopValidator.js +17 -0
- package/dist/codec/noopValidator.js.map +1 -0
- package/dist/core/change-family/changeFamily.d.ts +32 -0
- package/dist/core/change-family/changeFamily.d.ts.map +1 -0
- package/dist/core/change-family/changeFamily.js +7 -0
- package/dist/core/change-family/changeFamily.js.map +1 -0
- package/dist/core/change-family/editBuilder.d.ts +19 -0
- package/dist/core/change-family/editBuilder.d.ts.map +1 -0
- package/dist/core/change-family/editBuilder.js +25 -0
- package/dist/core/change-family/editBuilder.js.map +1 -0
- package/dist/core/change-family/index.d.ts +7 -0
- package/dist/core/change-family/index.d.ts.map +1 -0
- package/dist/core/change-family/index.js +10 -0
- package/dist/core/change-family/index.js.map +1 -0
- package/dist/core/forest/editableForest.d.ts +54 -0
- package/dist/core/forest/editableForest.d.ts.map +1 -0
- package/dist/core/forest/editableForest.js +27 -0
- package/dist/core/forest/editableForest.js.map +1 -0
- package/dist/core/forest/forest.d.ts +200 -0
- package/dist/core/forest/forest.d.ts.map +1 -0
- package/dist/core/forest/forest.js +66 -0
- package/dist/core/forest/forest.js.map +1 -0
- package/dist/core/forest/index.d.ts +7 -0
- package/dist/core/forest/index.d.ts.map +1 -0
- package/dist/core/forest/index.js +15 -0
- package/dist/core/forest/index.js.map +1 -0
- package/dist/core/index.d.ts +12 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +106 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/rebase/changeRebaser.d.ts +132 -0
- package/dist/core/rebase/changeRebaser.d.ts.map +1 -0
- package/dist/core/rebase/changeRebaser.js +34 -0
- package/dist/core/rebase/changeRebaser.js.map +1 -0
- package/dist/core/rebase/index.d.ts +9 -0
- package/dist/core/rebase/index.d.ts.map +1 -0
- package/dist/core/rebase/index.js +32 -0
- package/dist/core/rebase/index.js.map +1 -0
- package/dist/core/rebase/types.d.ts +93 -0
- package/dist/core/rebase/types.d.ts.map +1 -0
- package/dist/core/rebase/types.js +59 -0
- package/dist/core/rebase/types.js.map +1 -0
- package/dist/core/rebase/utils.d.ts +215 -0
- package/dist/core/rebase/utils.d.ts.map +1 -0
- package/dist/core/rebase/utils.js +297 -0
- package/dist/core/rebase/utils.js.map +1 -0
- package/dist/core/rebase/verifyChangeRebaser.d.ts +76 -0
- package/dist/core/rebase/verifyChangeRebaser.d.ts.map +1 -0
- package/dist/core/rebase/verifyChangeRebaser.js +291 -0
- package/dist/core/rebase/verifyChangeRebaser.js.map +1 -0
- package/dist/core/revertible/index.d.ts +6 -0
- package/dist/core/revertible/index.d.ts.map +1 -0
- package/dist/core/revertible/index.js +12 -0
- package/dist/core/revertible/index.js.map +1 -0
- package/dist/core/revertible/revertible.d.ts +72 -0
- package/dist/core/revertible/revertible.d.ts.map +1 -0
- package/dist/core/revertible/revertible.js +51 -0
- package/dist/core/revertible/revertible.js.map +1 -0
- package/dist/core/schema-stored/format.d.ts +97 -0
- package/dist/core/schema-stored/format.d.ts.map +1 -0
- package/dist/core/schema-stored/format.js +65 -0
- package/dist/core/schema-stored/format.js.map +1 -0
- package/dist/core/schema-stored/index.d.ts +10 -0
- package/dist/core/schema-stored/index.d.ts.map +1 -0
- package/dist/core/schema-stored/index.js +47 -0
- package/dist/core/schema-stored/index.js.map +1 -0
- package/dist/core/schema-stored/schema.d.ts +195 -0
- package/dist/core/schema-stored/schema.d.ts.map +1 -0
- package/dist/core/schema-stored/schema.js +174 -0
- package/dist/core/schema-stored/schema.js.map +1 -0
- package/dist/core/schema-stored/storedSchemaRepository.d.ts +71 -0
- package/dist/core/schema-stored/storedSchemaRepository.d.ts.map +1 -0
- package/dist/core/schema-stored/storedSchemaRepository.js +81 -0
- package/dist/core/schema-stored/storedSchemaRepository.js.map +1 -0
- package/dist/core/schema-view/index.d.ts +6 -0
- package/dist/core/schema-view/index.d.ts.map +1 -0
- package/dist/core/schema-view/index.js +12 -0
- package/dist/core/schema-view/index.js.map +1 -0
- package/dist/core/schema-view/view.d.ts +64 -0
- package/dist/core/schema-view/view.d.ts.map +1 -0
- package/dist/core/schema-view/view.js +55 -0
- package/dist/core/schema-view/view.js.map +1 -0
- package/dist/core/tree/anchorSet.d.ts +318 -0
- package/dist/core/tree/anchorSet.d.ts.map +1 -0
- package/dist/core/tree/anchorSet.js +895 -0
- package/dist/core/tree/anchorSet.js.map +1 -0
- package/dist/core/tree/cursor.d.ts +358 -0
- package/dist/core/tree/cursor.d.ts.map +1 -0
- package/dist/core/tree/cursor.js +169 -0
- package/dist/core/tree/cursor.js.map +1 -0
- package/dist/core/tree/delta.d.ts +241 -0
- package/dist/core/tree/delta.d.ts.map +1 -0
- package/dist/core/tree/delta.js +7 -0
- package/dist/core/tree/delta.js.map +1 -0
- package/dist/core/tree/deltaUtil.d.ts +19 -0
- package/dist/core/tree/deltaUtil.d.ts.map +1 -0
- package/dist/core/tree/deltaUtil.js +82 -0
- package/dist/core/tree/deltaUtil.js.map +1 -0
- package/dist/core/tree/detachedFieldIndex.d.ts +64 -0
- package/dist/core/tree/detachedFieldIndex.d.ts.map +1 -0
- package/dist/core/tree/detachedFieldIndex.js +119 -0
- package/dist/core/tree/detachedFieldIndex.js.map +1 -0
- package/dist/core/tree/detachedFieldIndexCodec.d.ts +8 -0
- package/dist/core/tree/detachedFieldIndexCodec.d.ts.map +1 -0
- package/dist/core/tree/detachedFieldIndexCodec.js +53 -0
- package/dist/core/tree/detachedFieldIndexCodec.js.map +1 -0
- package/dist/core/tree/detachedFieldIndexFormat.d.ts +18 -0
- package/dist/core/tree/detachedFieldIndexFormat.d.ts.map +1 -0
- package/dist/core/tree/detachedFieldIndexFormat.js +25 -0
- package/dist/core/tree/detachedFieldIndexFormat.js.map +1 -0
- package/dist/core/tree/detachedFieldIndexTypes.d.ts +13 -0
- package/dist/core/tree/detachedFieldIndexTypes.d.ts.map +1 -0
- package/dist/core/tree/detachedFieldIndexTypes.js +7 -0
- package/dist/core/tree/detachedFieldIndexTypes.js.map +1 -0
- package/dist/core/tree/index.d.ts +19 -0
- package/dist/core/tree/index.d.ts.map +1 -0
- package/dist/core/tree/index.js +67 -0
- package/dist/core/tree/index.js.map +1 -0
- package/dist/core/tree/mapTree.d.ts +22 -0
- package/dist/core/tree/mapTree.d.ts.map +1 -0
- package/dist/core/tree/mapTree.js +25 -0
- package/dist/core/tree/mapTree.js.map +1 -0
- package/dist/core/tree/pathTree.d.ts +156 -0
- package/dist/core/tree/pathTree.d.ts.map +1 -0
- package/dist/core/tree/pathTree.js +99 -0
- package/dist/core/tree/pathTree.js.map +1 -0
- package/dist/core/tree/persistedTreeTextFormat.d.ts +93 -0
- package/dist/core/tree/persistedTreeTextFormat.d.ts.map +1 -0
- package/dist/core/tree/persistedTreeTextFormat.js +23 -0
- package/dist/core/tree/persistedTreeTextFormat.js.map +1 -0
- package/dist/core/tree/sparseTree.d.ts +91 -0
- package/dist/core/tree/sparseTree.d.ts.map +1 -0
- package/dist/core/tree/sparseTree.js +149 -0
- package/dist/core/tree/sparseTree.js.map +1 -0
- package/dist/core/tree/treeTextFormat.d.ts +94 -0
- package/dist/core/tree/treeTextFormat.d.ts.map +1 -0
- package/dist/core/tree/treeTextFormat.js +88 -0
- package/dist/core/tree/treeTextFormat.js.map +1 -0
- package/dist/core/tree/types.d.ts +145 -0
- package/dist/core/tree/types.d.ts.map +1 -0
- package/dist/core/tree/types.js +60 -0
- package/dist/core/tree/types.js.map +1 -0
- package/dist/core/tree/visitDelta.d.ts +135 -0
- package/dist/core/tree/visitDelta.d.ts.map +1 -0
- package/dist/core/tree/visitDelta.js +304 -0
- package/dist/core/tree/visitDelta.js.map +1 -0
- package/dist/core/tree/visitPath.d.ts +103 -0
- package/dist/core/tree/visitPath.d.ts.map +1 -0
- package/dist/core/tree/visitPath.js +3 -0
- package/dist/core/tree/visitPath.js.map +1 -0
- package/dist/core/tree/visitorUtils.d.ts +37 -0
- package/dist/core/tree/visitorUtils.d.ts.map +1 -0
- package/dist/core/tree/visitorUtils.js +60 -0
- package/dist/core/tree/visitorUtils.js.map +1 -0
- package/dist/domains/index.d.ts +9 -0
- package/dist/domains/index.d.ts.map +1 -0
- package/dist/domains/index.js +23 -0
- package/dist/domains/index.js.map +1 -0
- package/dist/domains/json/index.d.ts +7 -0
- package/dist/domains/json/index.d.ts.map +1 -0
- package/dist/domains/json/index.js +16 -0
- package/dist/domains/json/index.js.map +1 -0
- package/dist/domains/json/jsonCursor.d.ts +18 -0
- package/dist/domains/json/jsonCursor.d.ts.map +1 -0
- package/dist/domains/json/jsonCursor.js +125 -0
- package/dist/domains/json/jsonCursor.js.map +1 -0
- package/dist/domains/json/jsonDomainSchema.d.ts +14 -0
- package/dist/domains/json/jsonDomainSchema.d.ts.map +1 -0
- package/dist/domains/json/jsonDomainSchema.js +24 -0
- package/dist/domains/json/jsonDomainSchema.js.map +1 -0
- package/dist/domains/leafDomain.d.ts +73 -0
- package/dist/domains/leafDomain.d.ts.map +1 -0
- package/dist/domains/leafDomain.js +89 -0
- package/dist/domains/leafDomain.js.map +1 -0
- package/dist/domains/nodeKey/index.d.ts +6 -0
- package/dist/domains/nodeKey/index.d.ts.map +1 -0
- package/dist/domains/nodeKey/index.js +12 -0
- package/dist/domains/nodeKey/index.js.map +1 -0
- package/dist/domains/nodeKey/nodeKeySchema.d.ts +30 -0
- package/dist/domains/nodeKey/nodeKeySchema.d.ts.map +1 -0
- package/dist/domains/nodeKey/nodeKeySchema.js +36 -0
- package/dist/domains/nodeKey/nodeKeySchema.js.map +1 -0
- package/dist/domains/schemaBuilder.d.ts +190 -0
- package/dist/domains/schemaBuilder.d.ts.map +1 -0
- package/dist/domains/schemaBuilder.js +204 -0
- package/dist/domains/schemaBuilder.js.map +1 -0
- package/dist/domains/testRecursiveDomain.d.ts +21 -0
- package/dist/domains/testRecursiveDomain.d.ts.map +1 -0
- package/dist/domains/testRecursiveDomain.js +42 -0
- package/dist/domains/testRecursiveDomain.js.map +1 -0
- package/dist/events/events.d.ts +187 -0
- package/dist/events/events.d.ts.map +1 -0
- package/dist/events/events.js +124 -0
- package/dist/events/events.js.map +1 -0
- package/dist/events/index.d.ts +6 -0
- package/dist/events/index.d.ts.map +1 -0
- package/dist/events/index.js +11 -0
- package/dist/events/index.js.map +1 -0
- package/dist/external-utilities/index.d.ts +6 -0
- package/dist/external-utilities/index.d.ts.map +1 -0
- package/dist/external-utilities/index.js +10 -0
- package/dist/external-utilities/index.js.map +1 -0
- package/dist/external-utilities/typeboxValidator.d.ts +18 -0
- package/dist/external-utilities/typeboxValidator.d.ts.map +1 -0
- package/dist/external-utilities/typeboxValidator.js +30 -0
- package/dist/external-utilities/typeboxValidator.js.map +1 -0
- package/dist/feature-libraries/chunked-forest/basicChunk.d.ts +111 -0
- package/dist/feature-libraries/chunked-forest/basicChunk.d.ts.map +1 -0
- package/dist/feature-libraries/chunked-forest/basicChunk.js +460 -0
- package/dist/feature-libraries/chunked-forest/basicChunk.js.map +1 -0
- package/dist/feature-libraries/chunked-forest/chunk.d.ts +89 -0
- package/dist/feature-libraries/chunked-forest/chunk.d.ts.map +1 -0
- package/dist/feature-libraries/chunked-forest/chunk.js +28 -0
- package/dist/feature-libraries/chunked-forest/chunk.js.map +1 -0
- package/dist/feature-libraries/chunked-forest/chunkTree.d.ts +156 -0
- package/dist/feature-libraries/chunked-forest/chunkTree.d.ts.map +1 -0
- package/dist/feature-libraries/chunked-forest/chunkTree.js +357 -0
- package/dist/feature-libraries/chunked-forest/chunkTree.js.map +1 -0
- package/dist/feature-libraries/chunked-forest/chunkedForest.d.ts +57 -0
- package/dist/feature-libraries/chunked-forest/chunkedForest.d.ts.map +1 -0
- package/dist/feature-libraries/chunked-forest/chunkedForest.js +300 -0
- package/dist/feature-libraries/chunked-forest/chunkedForest.js.map +1 -0
- package/dist/feature-libraries/chunked-forest/codec/chunkCodecUtilities.d.ts +114 -0
- package/dist/feature-libraries/chunked-forest/codec/chunkCodecUtilities.d.ts.map +1 -0
- package/dist/feature-libraries/chunked-forest/codec/chunkCodecUtilities.js +135 -0
- package/dist/feature-libraries/chunked-forest/codec/chunkCodecUtilities.js.map +1 -0
- package/dist/feature-libraries/chunked-forest/codec/chunkDecoding.d.ts +61 -0
- package/dist/feature-libraries/chunked-forest/codec/chunkDecoding.d.ts.map +1 -0
- package/dist/feature-libraries/chunked-forest/codec/chunkDecoding.js +219 -0
- package/dist/feature-libraries/chunked-forest/codec/chunkDecoding.js.map +1 -0
- package/dist/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.d.ts +30 -0
- package/dist/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.d.ts.map +1 -0
- package/dist/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.js +53 -0
- package/dist/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.js.map +1 -0
- package/dist/feature-libraries/chunked-forest/codec/chunkEncodingGeneric.d.ts +81 -0
- package/dist/feature-libraries/chunked-forest/codec/chunkEncodingGeneric.d.ts.map +1 -0
- package/dist/feature-libraries/chunked-forest/codec/chunkEncodingGeneric.js +126 -0
- package/dist/feature-libraries/chunked-forest/codec/chunkEncodingGeneric.js.map +1 -0
- package/dist/feature-libraries/chunked-forest/codec/codecs.d.ts +32 -0
- package/dist/feature-libraries/chunked-forest/codec/codecs.d.ts.map +1 -0
- package/dist/feature-libraries/chunked-forest/codec/codecs.js +68 -0
- package/dist/feature-libraries/chunked-forest/codec/codecs.js.map +1 -0
- package/dist/feature-libraries/chunked-forest/codec/compressedEncode.d.ts +149 -0
- package/dist/feature-libraries/chunked-forest/codec/compressedEncode.d.ts.map +1 -0
- package/dist/feature-libraries/chunked-forest/codec/compressedEncode.js +280 -0
- package/dist/feature-libraries/chunked-forest/codec/compressedEncode.js.map +1 -0
- package/dist/feature-libraries/chunked-forest/codec/fieldBatch.d.ts +11 -0
- package/dist/feature-libraries/chunked-forest/codec/fieldBatch.d.ts.map +1 -0
- package/dist/feature-libraries/chunked-forest/codec/fieldBatch.js +7 -0
- package/dist/feature-libraries/chunked-forest/codec/fieldBatch.js.map +1 -0
- package/dist/feature-libraries/chunked-forest/codec/format.d.ts +208 -0
- package/dist/feature-libraries/chunked-forest/codec/format.d.ts.map +1 -0
- package/dist/feature-libraries/chunked-forest/codec/format.js +138 -0
- package/dist/feature-libraries/chunked-forest/codec/format.js.map +1 -0
- package/dist/feature-libraries/chunked-forest/codec/formatGeneric.d.ts +43 -0
- package/dist/feature-libraries/chunked-forest/codec/formatGeneric.d.ts.map +1 -0
- package/dist/feature-libraries/chunked-forest/codec/formatGeneric.js +45 -0
- package/dist/feature-libraries/chunked-forest/codec/formatGeneric.js.map +1 -0
- package/dist/feature-libraries/chunked-forest/codec/index.d.ts +8 -0
- package/dist/feature-libraries/chunked-forest/codec/index.d.ts.map +1 -0
- package/dist/feature-libraries/chunked-forest/codec/index.js +13 -0
- package/dist/feature-libraries/chunked-forest/codec/index.js.map +1 -0
- package/dist/feature-libraries/chunked-forest/codec/nodeShape.d.ts +23 -0
- package/dist/feature-libraries/chunked-forest/codec/nodeShape.d.ts.map +1 -0
- package/dist/feature-libraries/chunked-forest/codec/nodeShape.js +94 -0
- package/dist/feature-libraries/chunked-forest/codec/nodeShape.js.map +1 -0
- package/dist/feature-libraries/chunked-forest/codec/schemaBasedEncoding.d.ts +28 -0
- package/dist/feature-libraries/chunked-forest/codec/schemaBasedEncoding.d.ts.map +1 -0
- package/dist/feature-libraries/chunked-forest/codec/schemaBasedEncoding.js +99 -0
- package/dist/feature-libraries/chunked-forest/codec/schemaBasedEncoding.js.map +1 -0
- package/dist/feature-libraries/chunked-forest/codec/uncompressedEncode.d.ts +16 -0
- package/dist/feature-libraries/chunked-forest/codec/uncompressedEncode.d.ts.map +1 -0
- package/dist/feature-libraries/chunked-forest/codec/uncompressedEncode.js +61 -0
- package/dist/feature-libraries/chunked-forest/codec/uncompressedEncode.js.map +1 -0
- package/dist/feature-libraries/chunked-forest/emptyChunk.d.ts +19 -0
- package/dist/feature-libraries/chunked-forest/emptyChunk.d.ts.map +1 -0
- package/dist/feature-libraries/chunked-forest/emptyChunk.js +107 -0
- package/dist/feature-libraries/chunked-forest/emptyChunk.js.map +1 -0
- package/dist/feature-libraries/chunked-forest/index.d.ts +10 -0
- package/dist/feature-libraries/chunked-forest/index.d.ts.map +1 -0
- package/dist/feature-libraries/chunked-forest/index.js +25 -0
- package/dist/feature-libraries/chunked-forest/index.js.map +1 -0
- package/dist/feature-libraries/chunked-forest/sequenceChunk.d.ts +26 -0
- package/dist/feature-libraries/chunked-forest/sequenceChunk.d.ts.map +1 -0
- package/dist/feature-libraries/chunked-forest/sequenceChunk.js +51 -0
- package/dist/feature-libraries/chunked-forest/sequenceChunk.js.map +1 -0
- package/dist/feature-libraries/chunked-forest/uniformChunk.d.ts +186 -0
- package/dist/feature-libraries/chunked-forest/uniformChunk.d.ts.map +1 -0
- package/dist/feature-libraries/chunked-forest/uniformChunk.js +397 -0
- package/dist/feature-libraries/chunked-forest/uniformChunk.js.map +1 -0
- package/dist/feature-libraries/contextuallyTyped.d.ts +212 -0
- package/dist/feature-libraries/contextuallyTyped.d.ts.map +1 -0
- package/dist/feature-libraries/contextuallyTyped.js +342 -0
- package/dist/feature-libraries/contextuallyTyped.js.map +1 -0
- package/dist/feature-libraries/default-schema/defaultEditBuilder.d.ts +136 -0
- package/dist/feature-libraries/default-schema/defaultEditBuilder.d.ts.map +1 -0
- package/dist/feature-libraries/default-schema/defaultEditBuilder.js +245 -0
- package/dist/feature-libraries/default-schema/defaultEditBuilder.js.map +1 -0
- package/dist/feature-libraries/default-schema/defaultFieldKinds.d.ts +112 -0
- package/dist/feature-libraries/default-schema/defaultFieldKinds.d.ts.map +1 -0
- package/dist/feature-libraries/default-schema/defaultFieldKinds.js +110 -0
- package/dist/feature-libraries/default-schema/defaultFieldKinds.js.map +1 -0
- package/dist/feature-libraries/default-schema/defaultSchema.d.ts +11 -0
- package/dist/feature-libraries/default-schema/defaultSchema.d.ts.map +1 -0
- package/dist/feature-libraries/default-schema/defaultSchema.js +16 -0
- package/dist/feature-libraries/default-schema/defaultSchema.js.map +1 -0
- package/dist/feature-libraries/default-schema/index.d.ts +8 -0
- package/dist/feature-libraries/default-schema/index.d.ts.map +1 -0
- package/dist/feature-libraries/default-schema/index.js +18 -0
- package/dist/feature-libraries/default-schema/index.js.map +1 -0
- package/dist/feature-libraries/deltaUtils.d.ts +62 -0
- package/dist/feature-libraries/deltaUtils.d.ts.map +1 -0
- package/dist/feature-libraries/deltaUtils.js +126 -0
- package/dist/feature-libraries/deltaUtils.js.map +1 -0
- package/dist/feature-libraries/detachedFieldIndexSummarizer.d.ts +21 -0
- package/dist/feature-libraries/detachedFieldIndexSummarizer.d.ts.map +1 -0
- package/dist/feature-libraries/detachedFieldIndexSummarizer.js +46 -0
- package/dist/feature-libraries/detachedFieldIndexSummarizer.js.map +1 -0
- package/dist/feature-libraries/editableTreeBinder.d.ts +325 -0
- package/dist/feature-libraries/editableTreeBinder.d.ts.map +1 -0
- package/dist/feature-libraries/editableTreeBinder.js +578 -0
- package/dist/feature-libraries/editableTreeBinder.js.map +1 -0
- package/dist/feature-libraries/fieldGenerator.d.ts +46 -0
- package/dist/feature-libraries/fieldGenerator.d.ts.map +1 -0
- package/dist/feature-libraries/fieldGenerator.js +14 -0
- package/dist/feature-libraries/fieldGenerator.js.map +1 -0
- package/dist/feature-libraries/flex-tree/context.d.ts +87 -0
- package/dist/feature-libraries/flex-tree/context.d.ts.map +1 -0
- package/dist/feature-libraries/flex-tree/context.js +110 -0
- package/dist/feature-libraries/flex-tree/context.js.map +1 -0
- package/dist/feature-libraries/flex-tree/flexTreeTypes.d.ts +793 -0
- package/dist/feature-libraries/flex-tree/flexTreeTypes.d.ts.map +1 -0
- package/dist/feature-libraries/flex-tree/flexTreeTypes.js +57 -0
- package/dist/feature-libraries/flex-tree/flexTreeTypes.js.map +1 -0
- package/dist/feature-libraries/flex-tree/index.d.ts +11 -0
- package/dist/feature-libraries/flex-tree/index.d.ts.map +1 -0
- package/dist/feature-libraries/flex-tree/index.js +24 -0
- package/dist/feature-libraries/flex-tree/index.js.map +1 -0
- package/dist/feature-libraries/flex-tree/lazyEntity.d.ts +49 -0
- package/dist/feature-libraries/flex-tree/lazyEntity.d.ts.map +1 -0
- package/dist/feature-libraries/flex-tree/lazyEntity.js +104 -0
- package/dist/feature-libraries/flex-tree/lazyEntity.js.map +1 -0
- package/dist/feature-libraries/flex-tree/lazyField.d.ts +87 -0
- package/dist/feature-libraries/flex-tree/lazyField.d.ts.map +1 -0
- package/dist/feature-libraries/flex-tree/lazyField.js +341 -0
- package/dist/feature-libraries/flex-tree/lazyField.js.map +1 -0
- package/dist/feature-libraries/flex-tree/lazyNode.d.ts +75 -0
- package/dist/feature-libraries/flex-tree/lazyNode.d.ts.map +1 -0
- package/dist/feature-libraries/flex-tree/lazyNode.js +426 -0
- package/dist/feature-libraries/flex-tree/lazyNode.js.map +1 -0
- package/dist/feature-libraries/flex-tree/navigation.d.ts +46 -0
- package/dist/feature-libraries/flex-tree/navigation.d.ts.map +1 -0
- package/dist/feature-libraries/flex-tree/navigation.js +104 -0
- package/dist/feature-libraries/flex-tree/navigation.js.map +1 -0
- package/dist/feature-libraries/flex-tree/nodeKeys.d.ts +42 -0
- package/dist/feature-libraries/flex-tree/nodeKeys.d.ts.map +1 -0
- package/dist/feature-libraries/flex-tree/nodeKeys.js +24 -0
- package/dist/feature-libraries/flex-tree/nodeKeys.js.map +1 -0
- package/dist/feature-libraries/flex-tree/treeEvents.d.ts +111 -0
- package/dist/feature-libraries/flex-tree/treeEvents.d.ts.map +1 -0
- package/dist/feature-libraries/flex-tree/treeEvents.js +7 -0
- package/dist/feature-libraries/flex-tree/treeEvents.js.map +1 -0
- package/dist/feature-libraries/flex-tree/unboxed.d.ts +24 -0
- package/dist/feature-libraries/flex-tree/unboxed.d.ts.map +1 -0
- package/dist/feature-libraries/flex-tree/unboxed.js +54 -0
- package/dist/feature-libraries/flex-tree/unboxed.js.map +1 -0
- package/dist/feature-libraries/flex-tree/utilities.d.ts +29 -0
- package/dist/feature-libraries/flex-tree/utilities.d.ts.map +1 -0
- package/dist/feature-libraries/flex-tree/utilities.js +58 -0
- package/dist/feature-libraries/flex-tree/utilities.js.map +1 -0
- package/dist/feature-libraries/forest-summary/codec.d.ts +16 -0
- package/dist/feature-libraries/forest-summary/codec.d.ts.map +1 -0
- package/dist/feature-libraries/forest-summary/codec.js +39 -0
- package/dist/feature-libraries/forest-summary/codec.js.map +1 -0
- package/dist/feature-libraries/forest-summary/forestSummarizer.d.ts +40 -0
- package/dist/feature-libraries/forest-summary/forestSummarizer.d.ts.map +1 -0
- package/dist/feature-libraries/forest-summary/forestSummarizer.js +112 -0
- package/dist/feature-libraries/forest-summary/forestSummarizer.js.map +1 -0
- package/dist/feature-libraries/forest-summary/format.d.ts +16 -0
- package/dist/feature-libraries/forest-summary/format.d.ts.map +1 -0
- package/dist/feature-libraries/forest-summary/format.js +17 -0
- package/dist/feature-libraries/forest-summary/format.js.map +1 -0
- package/dist/feature-libraries/forest-summary/index.d.ts +6 -0
- package/dist/feature-libraries/forest-summary/index.d.ts.map +1 -0
- package/dist/feature-libraries/forest-summary/index.js +10 -0
- package/dist/feature-libraries/forest-summary/index.js.map +1 -0
- package/dist/feature-libraries/incrementalSummarizationUtils.d.ts +20 -0
- package/dist/feature-libraries/incrementalSummarizationUtils.d.ts.map +1 -0
- package/dist/feature-libraries/incrementalSummarizationUtils.js +7 -0
- package/dist/feature-libraries/incrementalSummarizationUtils.js.map +1 -0
- package/dist/feature-libraries/index.d.ts +35 -0
- package/dist/feature-libraries/index.d.ts.map +1 -0
- package/dist/feature-libraries/index.js +181 -0
- package/dist/feature-libraries/index.js.map +1 -0
- package/dist/feature-libraries/mapTreeCursor.d.ts +19 -0
- package/dist/feature-libraries/mapTreeCursor.d.ts.map +1 -0
- package/dist/feature-libraries/mapTreeCursor.js +53 -0
- package/dist/feature-libraries/mapTreeCursor.js.map +1 -0
- package/dist/feature-libraries/memoizedIdRangeAllocator.d.ts +42 -0
- package/dist/feature-libraries/memoizedIdRangeAllocator.d.ts.map +1 -0
- package/dist/feature-libraries/memoizedIdRangeAllocator.js +75 -0
- package/dist/feature-libraries/memoizedIdRangeAllocator.js.map +1 -0
- package/dist/feature-libraries/mitigatedChangeFamily.d.ts +22 -0
- package/dist/feature-libraries/mitigatedChangeFamily.d.ts.map +1 -0
- package/dist/feature-libraries/mitigatedChangeFamily.js +55 -0
- package/dist/feature-libraries/mitigatedChangeFamily.js.map +1 -0
- package/dist/feature-libraries/modular-schema/comparison.d.ts +63 -0
- package/dist/feature-libraries/modular-schema/comparison.d.ts.map +1 -0
- package/dist/feature-libraries/modular-schema/comparison.js +203 -0
- package/dist/feature-libraries/modular-schema/comparison.js.map +1 -0
- package/dist/feature-libraries/modular-schema/crossFieldQueries.d.ts +37 -0
- package/dist/feature-libraries/modular-schema/crossFieldQueries.d.ts.map +1 -0
- package/dist/feature-libraries/modular-schema/crossFieldQueries.js +29 -0
- package/dist/feature-libraries/modular-schema/crossFieldQueries.js.map +1 -0
- package/dist/feature-libraries/modular-schema/fieldChangeHandler.d.ts +140 -0
- package/dist/feature-libraries/modular-schema/fieldChangeHandler.d.ts.map +1 -0
- package/dist/feature-libraries/modular-schema/fieldChangeHandler.js +44 -0
- package/dist/feature-libraries/modular-schema/fieldChangeHandler.js.map +1 -0
- package/dist/feature-libraries/modular-schema/fieldKind.d.ts +94 -0
- package/dist/feature-libraries/modular-schema/fieldKind.d.ts.map +1 -0
- package/dist/feature-libraries/modular-schema/fieldKind.js +101 -0
- package/dist/feature-libraries/modular-schema/fieldKind.js.map +1 -0
- package/dist/feature-libraries/modular-schema/genericFieldKind.d.ts +27 -0
- package/dist/feature-libraries/modular-schema/genericFieldKind.d.ts.map +1 -0
- package/dist/feature-libraries/modular-schema/genericFieldKind.js +168 -0
- package/dist/feature-libraries/modular-schema/genericFieldKind.js.map +1 -0
- package/dist/feature-libraries/modular-schema/genericFieldKindCodecs.d.ts +9 -0
- package/dist/feature-libraries/modular-schema/genericFieldKindCodecs.d.ts.map +1 -0
- package/dist/feature-libraries/modular-schema/genericFieldKindCodecs.js +33 -0
- package/dist/feature-libraries/modular-schema/genericFieldKindCodecs.js.map +1 -0
- package/dist/feature-libraries/modular-schema/genericFieldKindFormat.d.ts +34 -0
- package/dist/feature-libraries/modular-schema/genericFieldKindFormat.d.ts.map +1 -0
- package/dist/feature-libraries/modular-schema/genericFieldKindFormat.js +31 -0
- package/dist/feature-libraries/modular-schema/genericFieldKindFormat.js.map +1 -0
- package/dist/feature-libraries/modular-schema/genericFieldKindTypes.d.ts +23 -0
- package/dist/feature-libraries/modular-schema/genericFieldKindTypes.d.ts.map +1 -0
- package/dist/feature-libraries/modular-schema/genericFieldKindTypes.js +7 -0
- package/dist/feature-libraries/modular-schema/genericFieldKindTypes.js.map +1 -0
- package/dist/feature-libraries/modular-schema/index.d.ts +15 -0
- package/dist/feature-libraries/modular-schema/index.d.ts.map +1 -0
- package/dist/feature-libraries/modular-schema/index.js +43 -0
- package/dist/feature-libraries/modular-schema/index.js.map +1 -0
- package/dist/feature-libraries/modular-schema/modularChangeCodecs.d.ts +12 -0
- package/dist/feature-libraries/modular-schema/modularChangeCodecs.d.ts.map +1 -0
- package/dist/feature-libraries/modular-schema/modularChangeCodecs.js +188 -0
- package/dist/feature-libraries/modular-schema/modularChangeCodecs.js.map +1 -0
- package/dist/feature-libraries/modular-schema/modularChangeFamily.d.ts +125 -0
- package/dist/feature-libraries/modular-schema/modularChangeFamily.d.ts.map +1 -0
- package/dist/feature-libraries/modular-schema/modularChangeFamily.js +733 -0
- package/dist/feature-libraries/modular-schema/modularChangeFamily.js.map +1 -0
- package/dist/feature-libraries/modular-schema/modularChangeFormat.d.ts +149 -0
- package/dist/feature-libraries/modular-schema/modularChangeFormat.d.ts.map +1 -0
- package/dist/feature-libraries/modular-schema/modularChangeFormat.js +77 -0
- package/dist/feature-libraries/modular-schema/modularChangeFormat.js.map +1 -0
- package/dist/feature-libraries/modular-schema/modularChangeTypes.d.ts +69 -0
- package/dist/feature-libraries/modular-schema/modularChangeTypes.d.ts.map +1 -0
- package/dist/feature-libraries/modular-schema/modularChangeTypes.js +7 -0
- package/dist/feature-libraries/modular-schema/modularChangeTypes.js.map +1 -0
- package/dist/feature-libraries/multiplicity.d.ts +55 -0
- package/dist/feature-libraries/multiplicity.d.ts.map +1 -0
- package/dist/feature-libraries/multiplicity.js +59 -0
- package/dist/feature-libraries/multiplicity.js.map +1 -0
- package/dist/feature-libraries/node-key/index.d.ts +8 -0
- package/dist/feature-libraries/node-key/index.d.ts.map +1 -0
- package/dist/feature-libraries/node-key/index.js +17 -0
- package/dist/feature-libraries/node-key/index.js.map +1 -0
- package/dist/feature-libraries/node-key/nodeKey.d.ts +50 -0
- package/dist/feature-libraries/node-key/nodeKey.d.ts.map +1 -0
- package/dist/feature-libraries/node-key/nodeKey.js +36 -0
- package/dist/feature-libraries/node-key/nodeKey.js.map +1 -0
- package/dist/feature-libraries/node-key/nodeKeyIndex.d.ts +41 -0
- package/dist/feature-libraries/node-key/nodeKeyIndex.d.ts.map +1 -0
- package/dist/feature-libraries/node-key/nodeKeyIndex.js +102 -0
- package/dist/feature-libraries/node-key/nodeKeyIndex.js.map +1 -0
- package/dist/feature-libraries/node-key/nodeKeyManager.d.ts +36 -0
- package/dist/feature-libraries/node-key/nodeKeyManager.d.ts.map +1 -0
- package/dist/feature-libraries/node-key/nodeKeyManager.js +66 -0
- package/dist/feature-libraries/node-key/nodeKeyManager.js.map +1 -0
- package/dist/feature-libraries/object-forest/index.d.ts +6 -0
- package/dist/feature-libraries/object-forest/index.d.ts.map +1 -0
- package/dist/feature-libraries/object-forest/index.js +10 -0
- package/dist/feature-libraries/object-forest/index.js.map +1 -0
- package/dist/feature-libraries/object-forest/objectForest.d.ts +86 -0
- package/dist/feature-libraries/object-forest/objectForest.d.ts.map +1 -0
- package/dist/feature-libraries/object-forest/objectForest.js +382 -0
- package/dist/feature-libraries/object-forest/objectForest.js.map +1 -0
- package/dist/feature-libraries/optional-field/index.d.ts +8 -0
- package/dist/feature-libraries/optional-field/index.d.ts.map +1 -0
- package/dist/feature-libraries/optional-field/index.js +16 -0
- package/dist/feature-libraries/optional-field/index.js.map +1 -0
- package/dist/feature-libraries/optional-field/optionalField.d.ts +31 -0
- package/dist/feature-libraries/optional-field/optionalField.d.ts.map +1 -0
- package/dist/feature-libraries/optional-field/optionalField.js +448 -0
- package/dist/feature-libraries/optional-field/optionalField.js.map +1 -0
- package/dist/feature-libraries/optional-field/optionalFieldChangeFormat.d.ts +38 -0
- package/dist/feature-libraries/optional-field/optionalFieldChangeFormat.d.ts.map +1 -0
- package/dist/feature-libraries/optional-field/optionalFieldChangeFormat.js +26 -0
- package/dist/feature-libraries/optional-field/optionalFieldChangeFormat.js.map +1 -0
- package/dist/feature-libraries/optional-field/optionalFieldChangeTypes.d.ts +55 -0
- package/dist/feature-libraries/optional-field/optionalFieldChangeTypes.d.ts.map +1 -0
- package/dist/feature-libraries/optional-field/optionalFieldChangeTypes.js +7 -0
- package/dist/feature-libraries/optional-field/optionalFieldChangeTypes.js.map +1 -0
- package/dist/feature-libraries/optional-field/optionalFieldCodecs.d.ts +11 -0
- package/dist/feature-libraries/optional-field/optionalFieldCodecs.d.ts.map +1 -0
- package/dist/feature-libraries/optional-field/optionalFieldCodecs.js +86 -0
- package/dist/feature-libraries/optional-field/optionalFieldCodecs.js.map +1 -0
- package/dist/feature-libraries/schema-aware/index.d.ts +6 -0
- package/dist/feature-libraries/schema-aware/index.d.ts.map +1 -0
- package/dist/feature-libraries/schema-aware/index.js +7 -0
- package/dist/feature-libraries/schema-aware/index.js.map +1 -0
- package/dist/feature-libraries/schema-aware/schemaAware.d.ts +77 -0
- package/dist/feature-libraries/schema-aware/schemaAware.d.ts.map +1 -0
- package/dist/feature-libraries/schema-aware/schemaAware.js +9 -0
- package/dist/feature-libraries/schema-aware/schemaAware.js.map +1 -0
- package/dist/feature-libraries/schema-edits/index.d.ts +8 -0
- package/dist/feature-libraries/schema-edits/index.d.ts.map +1 -0
- package/dist/feature-libraries/schema-edits/index.js +12 -0
- package/dist/feature-libraries/schema-edits/index.js.map +1 -0
- package/dist/feature-libraries/schema-edits/schemaChangeCodecs.d.ts +9 -0
- package/dist/feature-libraries/schema-edits/schemaChangeCodecs.d.ts.map +1 -0
- package/dist/feature-libraries/schema-edits/schemaChangeCodecs.js +31 -0
- package/dist/feature-libraries/schema-edits/schemaChangeCodecs.js.map +1 -0
- package/dist/feature-libraries/schema-edits/schemaChangeFormat.d.ts +53 -0
- package/dist/feature-libraries/schema-edits/schemaChangeFormat.d.ts.map +1 -0
- package/dist/feature-libraries/schema-edits/schemaChangeFormat.js +14 -0
- package/dist/feature-libraries/schema-edits/schemaChangeFormat.js.map +1 -0
- package/dist/feature-libraries/schema-edits/schemaChangeTypes.d.ts +18 -0
- package/dist/feature-libraries/schema-edits/schemaChangeTypes.d.ts.map +1 -0
- package/dist/feature-libraries/schema-edits/schemaChangeTypes.js +7 -0
- package/dist/feature-libraries/schema-edits/schemaChangeTypes.js.map +1 -0
- package/dist/feature-libraries/schema-index/codec.d.ts +13 -0
- package/dist/feature-libraries/schema-index/codec.d.ts.map +1 -0
- package/dist/feature-libraries/schema-index/codec.js +56 -0
- package/dist/feature-libraries/schema-index/codec.js.map +1 -0
- package/dist/feature-libraries/schema-index/format.d.ts +60 -0
- package/dist/feature-libraries/schema-index/format.d.ts.map +1 -0
- package/dist/feature-libraries/schema-index/format.js +33 -0
- package/dist/feature-libraries/schema-index/format.js.map +1 -0
- package/dist/feature-libraries/schema-index/index.d.ts +8 -0
- package/dist/feature-libraries/schema-index/index.d.ts.map +1 -0
- package/dist/feature-libraries/schema-index/index.js +15 -0
- package/dist/feature-libraries/schema-index/index.js.map +1 -0
- package/dist/feature-libraries/schema-index/schemaSummarizer.d.ts +41 -0
- package/dist/feature-libraries/schema-index/schemaSummarizer.d.ts.map +1 -0
- package/dist/feature-libraries/schema-index/schemaSummarizer.js +86 -0
- package/dist/feature-libraries/schema-index/schemaSummarizer.js.map +1 -0
- package/dist/feature-libraries/schemaBuilder.d.ts +31 -0
- package/dist/feature-libraries/schemaBuilder.d.ts.map +1 -0
- package/dist/feature-libraries/schemaBuilder.js +40 -0
- package/dist/feature-libraries/schemaBuilder.js.map +1 -0
- package/dist/feature-libraries/schemaBuilderBase.d.ts +217 -0
- package/dist/feature-libraries/schemaBuilderBase.d.ts.map +1 -0
- package/dist/feature-libraries/schemaBuilderBase.js +227 -0
- package/dist/feature-libraries/schemaBuilderBase.js.map +1 -0
- package/dist/feature-libraries/sequence-field/compose.d.ts +45 -0
- package/dist/feature-libraries/sequence-field/compose.d.ts.map +1 -0
- package/dist/feature-libraries/sequence-field/compose.js +438 -0
- package/dist/feature-libraries/sequence-field/compose.js.map +1 -0
- package/dist/feature-libraries/sequence-field/format.d.ts +427 -0
- package/dist/feature-libraries/sequence-field/format.d.ts.map +1 -0
- package/dist/feature-libraries/sequence-field/format.js +78 -0
- package/dist/feature-libraries/sequence-field/format.js.map +1 -0
- package/dist/feature-libraries/sequence-field/helperTypes.d.ts +34 -0
- package/dist/feature-libraries/sequence-field/helperTypes.d.ts.map +1 -0
- package/dist/feature-libraries/sequence-field/helperTypes.js +18 -0
- package/dist/feature-libraries/sequence-field/helperTypes.js.map +1 -0
- package/dist/feature-libraries/sequence-field/index.d.ts +18 -0
- package/dist/feature-libraries/sequence-field/index.d.ts.map +1 -0
- package/dist/feature-libraries/sequence-field/index.js +41 -0
- package/dist/feature-libraries/sequence-field/index.js.map +1 -0
- package/dist/feature-libraries/sequence-field/invert.d.ts +19 -0
- package/dist/feature-libraries/sequence-field/invert.d.ts.map +1 -0
- package/dist/feature-libraries/sequence-field/invert.js +221 -0
- package/dist/feature-libraries/sequence-field/invert.js.map +1 -0
- package/dist/feature-libraries/sequence-field/markListFactory.d.ts +21 -0
- package/dist/feature-libraries/sequence-field/markListFactory.d.ts.map +1 -0
- package/dist/feature-libraries/sequence-field/markListFactory.js +55 -0
- package/dist/feature-libraries/sequence-field/markListFactory.js.map +1 -0
- package/dist/feature-libraries/sequence-field/markQueue.d.ts +30 -0
- package/dist/feature-libraries/sequence-field/markQueue.d.ts.map +1 -0
- package/dist/feature-libraries/sequence-field/markQueue.js +74 -0
- package/dist/feature-libraries/sequence-field/markQueue.js.map +1 -0
- package/dist/feature-libraries/sequence-field/moveEffectTable.d.ts +48 -0
- package/dist/feature-libraries/sequence-field/moveEffectTable.d.ts.map +1 -0
- package/dist/feature-libraries/sequence-field/moveEffectTable.js +253 -0
- package/dist/feature-libraries/sequence-field/moveEffectTable.js.map +1 -0
- package/dist/feature-libraries/sequence-field/prune.d.ts +8 -0
- package/dist/feature-libraries/sequence-field/prune.d.ts.map +1 -0
- package/dist/feature-libraries/sequence-field/prune.js +25 -0
- package/dist/feature-libraries/sequence-field/prune.js.map +1 -0
- package/dist/feature-libraries/sequence-field/rebase.d.ts +26 -0
- package/dist/feature-libraries/sequence-field/rebase.d.ts.map +1 -0
- package/dist/feature-libraries/sequence-field/rebase.js +619 -0
- package/dist/feature-libraries/sequence-field/rebase.js.map +1 -0
- package/dist/feature-libraries/sequence-field/relevantRemovedRoots.d.ts +9 -0
- package/dist/feature-libraries/sequence-field/relevantRemovedRoots.d.ts.map +1 -0
- package/dist/feature-libraries/sequence-field/relevantRemovedRoots.js +50 -0
- package/dist/feature-libraries/sequence-field/relevantRemovedRoots.js.map +1 -0
- package/dist/feature-libraries/sequence-field/sequenceFieldChangeHandler.d.ts +10 -0
- package/dist/feature-libraries/sequence-field/sequenceFieldChangeHandler.d.ts.map +1 -0
- package/dist/feature-libraries/sequence-field/sequenceFieldChangeHandler.js +22 -0
- package/dist/feature-libraries/sequence-field/sequenceFieldChangeHandler.js.map +1 -0
- package/dist/feature-libraries/sequence-field/sequenceFieldChangeRebaser.d.ts +19 -0
- package/dist/feature-libraries/sequence-field/sequenceFieldChangeRebaser.d.ts.map +1 -0
- package/dist/feature-libraries/sequence-field/sequenceFieldChangeRebaser.js +19 -0
- package/dist/feature-libraries/sequence-field/sequenceFieldChangeRebaser.js.map +1 -0
- package/dist/feature-libraries/sequence-field/sequenceFieldCodecs.d.ts +10 -0
- package/dist/feature-libraries/sequence-field/sequenceFieldCodecs.d.ts.map +1 -0
- package/dist/feature-libraries/sequence-field/sequenceFieldCodecs.js +239 -0
- package/dist/feature-libraries/sequence-field/sequenceFieldCodecs.js.map +1 -0
- package/dist/feature-libraries/sequence-field/sequenceFieldEditor.d.ts +33 -0
- package/dist/feature-libraries/sequence-field/sequenceFieldEditor.d.ts.map +1 -0
- package/dist/feature-libraries/sequence-field/sequenceFieldEditor.js +113 -0
- package/dist/feature-libraries/sequence-field/sequenceFieldEditor.js.map +1 -0
- package/dist/feature-libraries/sequence-field/sequenceFieldToDelta.d.ts +9 -0
- package/dist/feature-libraries/sequence-field/sequenceFieldToDelta.d.ts.map +1 -0
- package/dist/feature-libraries/sequence-field/sequenceFieldToDelta.js +165 -0
- package/dist/feature-libraries/sequence-field/sequenceFieldToDelta.js.map +1 -0
- package/dist/feature-libraries/sequence-field/types.d.ts +182 -0
- package/dist/feature-libraries/sequence-field/types.d.ts.map +1 -0
- package/dist/feature-libraries/sequence-field/types.js +9 -0
- package/dist/feature-libraries/sequence-field/types.js.map +1 -0
- package/dist/feature-libraries/sequence-field/utils.d.ts +198 -0
- package/dist/feature-libraries/sequence-field/utils.d.ts.map +1 -0
- package/dist/feature-libraries/sequence-field/utils.js +977 -0
- package/dist/feature-libraries/sequence-field/utils.js.map +1 -0
- package/dist/feature-libraries/storedToViewSchema.d.ts +18 -0
- package/dist/feature-libraries/storedToViewSchema.d.ts.map +1 -0
- package/dist/feature-libraries/storedToViewSchema.js +70 -0
- package/dist/feature-libraries/storedToViewSchema.js.map +1 -0
- package/dist/feature-libraries/treeCompressionUtils.d.ts +23 -0
- package/dist/feature-libraries/treeCompressionUtils.d.ts.map +1 -0
- package/dist/feature-libraries/treeCompressionUtils.js +27 -0
- package/dist/feature-libraries/treeCompressionUtils.js.map +1 -0
- package/dist/feature-libraries/treeCursorUtils.d.ts +101 -0
- package/dist/feature-libraries/treeCursorUtils.d.ts.map +1 -0
- package/dist/feature-libraries/treeCursorUtils.js +374 -0
- package/dist/feature-libraries/treeCursorUtils.js.map +1 -0
- package/dist/feature-libraries/treeTextCursor.d.ts +62 -0
- package/dist/feature-libraries/treeTextCursor.d.ts.map +1 -0
- package/dist/feature-libraries/treeTextCursor.js +104 -0
- package/dist/feature-libraries/treeTextCursor.js.map +1 -0
- package/dist/feature-libraries/typed-schema/flexList.d.ts +97 -0
- package/dist/feature-libraries/typed-schema/flexList.d.ts.map +1 -0
- package/dist/feature-libraries/typed-schema/flexList.js +58 -0
- package/dist/feature-libraries/typed-schema/flexList.js.map +1 -0
- package/dist/feature-libraries/typed-schema/index.d.ts +11 -0
- package/dist/feature-libraries/typed-schema/index.d.ts.map +1 -0
- package/dist/feature-libraries/typed-schema/index.js +61 -0
- package/dist/feature-libraries/typed-schema/index.js.map +1 -0
- package/dist/feature-libraries/typed-schema/internal.d.ts +7 -0
- package/dist/feature-libraries/typed-schema/internal.d.ts.map +1 -0
- package/dist/feature-libraries/typed-schema/internal.js +7 -0
- package/dist/feature-libraries/typed-schema/internal.js.map +1 -0
- package/dist/feature-libraries/typed-schema/schemaCollection.d.ts +67 -0
- package/dist/feature-libraries/typed-schema/schemaCollection.d.ts.map +1 -0
- package/dist/feature-libraries/typed-schema/schemaCollection.js +207 -0
- package/dist/feature-libraries/typed-schema/schemaCollection.js.map +1 -0
- package/dist/feature-libraries/typed-schema/typeUtils.d.ts +22 -0
- package/dist/feature-libraries/typed-schema/typeUtils.d.ts.map +1 -0
- package/dist/feature-libraries/typed-schema/typeUtils.js +14 -0
- package/dist/feature-libraries/typed-schema/typeUtils.js.map +1 -0
- package/dist/feature-libraries/typed-schema/typedTreeSchema.d.ts +294 -0
- package/dist/feature-libraries/typed-schema/typedTreeSchema.d.ts.map +1 -0
- package/dist/feature-libraries/typed-schema/typedTreeSchema.js +334 -0
- package/dist/feature-libraries/typed-schema/typedTreeSchema.js.map +1 -0
- package/dist/feature-libraries/typed-schema/view.d.ts +55 -0
- package/dist/feature-libraries/typed-schema/view.d.ts.map +1 -0
- package/dist/feature-libraries/typed-schema/view.js +117 -0
- package/dist/feature-libraries/typed-schema/view.js.map +1 -0
- package/dist/feature-libraries/utils.d.ts +9 -0
- package/dist/feature-libraries/utils.d.ts.map +1 -0
- package/dist/feature-libraries/utils.js +28 -0
- package/dist/feature-libraries/utils.js.map +1 -0
- package/dist/feature-libraries/valueUtilities.d.ts +21 -0
- package/dist/feature-libraries/valueUtilities.d.ts.map +1 -0
- package/dist/feature-libraries/valueUtilities.js +70 -0
- package/dist/feature-libraries/valueUtilities.js.map +1 -0
- package/dist/feature-libraries/versioned/codec.d.ts +11 -0
- package/dist/feature-libraries/versioned/codec.d.ts.map +1 -0
- package/dist/feature-libraries/versioned/codec.js +31 -0
- package/dist/feature-libraries/versioned/codec.js.map +1 -0
- package/dist/feature-libraries/versioned/format.d.ts +10 -0
- package/dist/feature-libraries/versioned/format.d.ts.map +1 -0
- package/dist/feature-libraries/versioned/format.js +12 -0
- package/dist/feature-libraries/versioned/format.js.map +1 -0
- package/dist/feature-libraries/versioned/index.d.ts +7 -0
- package/dist/feature-libraries/versioned/index.d.ts.map +1 -0
- package/dist/feature-libraries/versioned/index.js +13 -0
- package/dist/feature-libraries/versioned/index.js.map +1 -0
- package/dist/index.d.ts +21 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +133 -0
- package/dist/index.js.map +1 -0
- package/dist/internal.d.ts +8 -0
- package/dist/internal.d.ts.map +1 -0
- package/dist/internal.js +11 -0
- package/dist/internal.js.map +1 -0
- package/dist/shared-tree/index.d.ts +10 -0
- package/dist/shared-tree/index.d.ts.map +1 -0
- package/dist/shared-tree/index.js +19 -0
- package/dist/shared-tree/index.js.map +1 -0
- package/dist/shared-tree/schematizedTree.d.ts +94 -0
- package/dist/shared-tree/schematizedTree.d.ts.map +1 -0
- package/dist/shared-tree/schematizedTree.js +158 -0
- package/dist/shared-tree/schematizedTree.js.map +1 -0
- package/dist/shared-tree/sharedTree.d.ts +143 -0
- package/dist/shared-tree/sharedTree.d.ts.map +1 -0
- package/dist/shared-tree/sharedTree.js +220 -0
- package/dist/shared-tree/sharedTree.js.map +1 -0
- package/dist/shared-tree/sharedTreeChangeCodecs.d.ts +11 -0
- package/dist/shared-tree/sharedTreeChangeCodecs.d.ts.map +1 -0
- package/dist/shared-tree/sharedTreeChangeCodecs.js +59 -0
- package/dist/shared-tree/sharedTreeChangeCodecs.js.map +1 -0
- package/dist/shared-tree/sharedTreeChangeFamily.d.ts +25 -0
- package/dist/shared-tree/sharedTreeChangeFamily.d.ts.map +1 -0
- package/dist/shared-tree/sharedTreeChangeFamily.js +120 -0
- package/dist/shared-tree/sharedTreeChangeFamily.js.map +1 -0
- package/dist/shared-tree/sharedTreeChangeFormat.d.ts +178 -0
- package/dist/shared-tree/sharedTreeChangeFormat.d.ts.map +1 -0
- package/dist/shared-tree/sharedTreeChangeFormat.js +15 -0
- package/dist/shared-tree/sharedTreeChangeFormat.js.map +1 -0
- package/dist/shared-tree/sharedTreeChangeTypes.d.ts +26 -0
- package/dist/shared-tree/sharedTreeChangeTypes.d.ts.map +1 -0
- package/dist/shared-tree/sharedTreeChangeTypes.js +7 -0
- package/dist/shared-tree/sharedTreeChangeTypes.js.map +1 -0
- package/dist/shared-tree/sharedTreeEditBuilder.d.ts +42 -0
- package/dist/shared-tree/sharedTreeEditBuilder.d.ts.map +1 -0
- package/dist/shared-tree/sharedTreeEditBuilder.js +34 -0
- package/dist/shared-tree/sharedTreeEditBuilder.js.map +1 -0
- package/dist/shared-tree/treeCheckout.d.ts +228 -0
- package/dist/shared-tree/treeCheckout.d.ts.map +1 -0
- package/dist/shared-tree/treeCheckout.js +190 -0
- package/dist/shared-tree/treeCheckout.js.map +1 -0
- package/dist/shared-tree/treeView.d.ts +66 -0
- package/dist/shared-tree/treeView.d.ts.map +1 -0
- package/dist/shared-tree/treeView.js +33 -0
- package/dist/shared-tree/treeView.js.map +1 -0
- package/dist/shared-tree-core/branch.d.ts +199 -0
- package/dist/shared-tree-core/branch.d.ts.map +1 -0
- package/dist/shared-tree-core/branch.js +413 -0
- package/dist/shared-tree-core/branch.js.map +1 -0
- package/dist/shared-tree-core/editManager.d.ts +126 -0
- package/dist/shared-tree-core/editManager.d.ts.map +1 -0
- package/dist/shared-tree-core/editManager.js +435 -0
- package/dist/shared-tree-core/editManager.js.map +1 -0
- package/dist/shared-tree-core/editManagerCodecs.d.ts +9 -0
- package/dist/shared-tree-core/editManagerCodecs.d.ts.map +1 -0
- package/dist/shared-tree-core/editManagerCodecs.js +52 -0
- package/dist/shared-tree-core/editManagerCodecs.js.map +1 -0
- package/dist/shared-tree-core/editManagerFormat.d.ts +68 -0
- package/dist/shared-tree-core/editManagerFormat.d.ts.map +1 -0
- package/dist/shared-tree-core/editManagerFormat.js +58 -0
- package/dist/shared-tree-core/editManagerFormat.js.map +1 -0
- package/dist/shared-tree-core/editManagerSummarizer.d.ts +25 -0
- package/dist/shared-tree-core/editManagerSummarizer.d.ts.map +1 -0
- package/dist/shared-tree-core/editManagerSummarizer.js +56 -0
- package/dist/shared-tree-core/editManagerSummarizer.js.map +1 -0
- package/dist/shared-tree-core/index.d.ts +13 -0
- package/dist/shared-tree-core/index.d.ts.map +1 -0
- package/dist/shared-tree-core/index.js +25 -0
- package/dist/shared-tree-core/index.js.map +1 -0
- package/dist/shared-tree-core/messageCodecs.d.ts +9 -0
- package/dist/shared-tree-core/messageCodecs.d.ts.map +1 -0
- package/dist/shared-tree-core/messageCodecs.js +35 -0
- package/dist/shared-tree-core/messageCodecs.js.map +1 -0
- package/dist/shared-tree-core/messageFormat.d.ts +30 -0
- package/dist/shared-tree-core/messageFormat.d.ts.map +1 -0
- package/dist/shared-tree-core/messageFormat.js +16 -0
- package/dist/shared-tree-core/messageFormat.js.map +1 -0
- package/dist/shared-tree-core/messageTypes.d.ts +10 -0
- package/dist/shared-tree-core/messageTypes.d.ts.map +1 -0
- package/dist/shared-tree-core/messageTypes.js +7 -0
- package/dist/shared-tree-core/messageTypes.js.map +1 -0
- package/dist/shared-tree-core/revisionTagCodecs.d.ts +11 -0
- package/dist/shared-tree-core/revisionTagCodecs.d.ts.map +1 -0
- package/dist/shared-tree-core/revisionTagCodecs.js +17 -0
- package/dist/shared-tree-core/revisionTagCodecs.js.map +1 -0
- package/dist/shared-tree-core/sharedTreeCore.d.ts +112 -0
- package/dist/shared-tree-core/sharedTreeCore.d.ts.map +1 -0
- package/dist/shared-tree-core/sharedTreeCore.js +197 -0
- package/dist/shared-tree-core/sharedTreeCore.js.map +1 -0
- package/dist/shared-tree-core/transactionStack.d.ts +30 -0
- package/dist/shared-tree-core/transactionStack.d.ts.map +1 -0
- package/dist/shared-tree-core/transactionStack.js +42 -0
- package/dist/shared-tree-core/transactionStack.js.map +1 -0
- package/dist/simple-tree/flexNode.d.ts +34 -0
- package/dist/simple-tree/flexNode.d.ts.map +1 -0
- package/dist/simple-tree/flexNode.js +57 -0
- package/dist/simple-tree/flexNode.js.map +1 -0
- package/dist/simple-tree/index.d.ts +10 -0
- package/dist/simple-tree/index.d.ts.map +1 -0
- package/dist/simple-tree/index.js +17 -0
- package/dist/simple-tree/index.js.map +1 -0
- package/dist/simple-tree/insertable.d.ts +44 -0
- package/dist/simple-tree/insertable.d.ts.map +1 -0
- package/dist/simple-tree/insertable.js +7 -0
- package/dist/simple-tree/insertable.js.map +1 -0
- package/dist/simple-tree/objectFactory.d.ts +30 -0
- package/dist/simple-tree/objectFactory.d.ts.map +1 -0
- package/dist/simple-tree/objectFactory.js +20 -0
- package/dist/simple-tree/objectFactory.js.map +1 -0
- package/dist/simple-tree/proxies.d.ts +112 -0
- package/dist/simple-tree/proxies.d.ts.map +1 -0
- package/dist/simple-tree/proxies.js +811 -0
- package/dist/simple-tree/proxies.js.map +1 -0
- package/dist/simple-tree/rawNode.d.ts +96 -0
- package/dist/simple-tree/rawNode.d.ts.map +1 -0
- package/dist/simple-tree/rawNode.js +141 -0
- package/dist/simple-tree/rawNode.js.map +1 -0
- package/dist/simple-tree/toMapTree.d.ts +101 -0
- package/dist/simple-tree/toMapTree.d.ts.map +1 -0
- package/dist/simple-tree/toMapTree.js +299 -0
- package/dist/simple-tree/toMapTree.js.map +1 -0
- package/dist/simple-tree/treeListNode.d.ts +60 -0
- package/dist/simple-tree/treeListNode.d.ts.map +1 -0
- package/dist/simple-tree/treeListNode.js +53 -0
- package/dist/simple-tree/treeListNode.js.map +1 -0
- package/dist/simple-tree/types.d.ts +243 -0
- package/dist/simple-tree/types.d.ts.map +1 -0
- package/dist/simple-tree/types.js +21 -0
- package/dist/simple-tree/types.js.map +1 -0
- package/dist/tree-alpha.d.ts +1789 -0
- package/dist/tree-beta.d.ts +1789 -0
- package/dist/tree-public.d.ts +728 -0
- package/dist/tree-untrimmed.d.ts +6411 -0
- package/dist/treeFactory.d.ts +55 -0
- package/dist/treeFactory.d.ts.map +1 -0
- package/dist/treeFactory.js +85 -0
- package/dist/treeFactory.js.map +1 -0
- package/dist/tsdoc-metadata.json +11 -0
- package/dist/util/brand.d.ts +179 -0
- package/dist/util/brand.d.ts.map +1 -0
- package/dist/util/brand.js +130 -0
- package/dist/util/brand.js.map +1 -0
- package/dist/util/brandedMap.d.ts +46 -0
- package/dist/util/brandedMap.d.ts.map +1 -0
- package/dist/util/brandedMap.js +32 -0
- package/dist/util/brandedMap.js.map +1 -0
- package/dist/util/idAllocator.d.ts +29 -0
- package/dist/util/idAllocator.d.ts.map +1 -0
- package/dist/util/idAllocator.js +34 -0
- package/dist/util/idAllocator.js.map +1 -0
- package/dist/util/index.d.ts +18 -0
- package/dist/util/index.d.ts.map +1 -0
- package/dist/util/index.js +82 -0
- package/dist/util/index.js.map +1 -0
- package/dist/util/nestedMap.d.ts +129 -0
- package/dist/util/nestedMap.d.ts.map +1 -0
- package/dist/util/nestedMap.js +239 -0
- package/dist/util/nestedMap.js.map +1 -0
- package/dist/util/nestedSet.d.ts +9 -0
- package/dist/util/nestedSet.d.ts.map +1 -0
- package/dist/util/nestedSet.js +17 -0
- package/dist/util/nestedSet.js.map +1 -0
- package/dist/util/offsetList.d.ts +22 -0
- package/dist/util/offsetList.d.ts.map +1 -0
- package/dist/util/offsetList.js +44 -0
- package/dist/util/offsetList.js.map +1 -0
- package/dist/util/rangeMap.d.ts +40 -0
- package/dist/util/rangeMap.d.ts.map +1 -0
- package/dist/util/rangeMap.js +103 -0
- package/dist/util/rangeMap.js.map +1 -0
- package/dist/util/referenceCounting.d.ts +30 -0
- package/dist/util/referenceCounting.d.ts.map +1 -0
- package/dist/util/referenceCounting.js +34 -0
- package/dist/util/referenceCounting.js.map +1 -0
- package/dist/util/stackyIterator.d.ts +20 -0
- package/dist/util/stackyIterator.d.ts.map +1 -0
- package/dist/util/stackyIterator.js +49 -0
- package/dist/util/stackyIterator.js.map +1 -0
- package/dist/util/transactionResult.d.ts +20 -0
- package/dist/util/transactionResult.d.ts.map +1 -0
- package/dist/util/transactionResult.js +24 -0
- package/dist/util/transactionResult.js.map +1 -0
- package/dist/util/typeCheck.d.ts +183 -0
- package/dist/util/typeCheck.d.ts.map +1 -0
- package/dist/util/typeCheck.js +7 -0
- package/dist/util/typeCheck.js.map +1 -0
- package/dist/util/typeCheckTests.d.ts +60 -0
- package/dist/util/typeCheckTests.d.ts.map +1 -0
- package/dist/util/typeCheckTests.js +7 -0
- package/dist/util/typeCheckTests.js.map +1 -0
- package/dist/util/typeUtils.d.ts +129 -0
- package/dist/util/typeUtils.d.ts.map +1 -0
- package/dist/util/typeUtils.js +11 -0
- package/dist/util/typeUtils.js.map +1 -0
- package/dist/util/utils.d.ts +287 -0
- package/dist/util/utils.d.ts.map +1 -0
- package/dist/util/utils.js +376 -0
- package/dist/util/utils.js.map +1 -0
- package/docs/.attachments/UndoAfterCollab.png +0 -0
- package/docs/.attachments/UndoAfterCollabFast.png +0 -0
- package/docs/.attachments/UndoDangerZone.drawio +1 -0
- package/docs/.attachments/UndoDuringCollab.png +0 -0
- package/docs/.attachments/children.drawio.svg +297 -0
- package/docs/.attachments/data-model.drawio.svg +654 -0
- package/docs/.attachments/explicit-sequence.drawio.svg +180 -0
- package/docs/.attachments/implicit-sequence.drawio.svg +106 -0
- package/docs/.attachments/root.drawio.svg +32 -0
- package/docs/.attachments/scalar-nodes.drawio.svg +87 -0
- package/docs/.markdownlint.json +4 -0
- package/docs/README.md +22 -0
- package/docs/main/cell-model-of-collaborative-editing.md +225 -0
- package/docs/main/compatibility.md +149 -0
- package/docs/main/data-model.md +191 -0
- package/docs/main/indexes-and-branches.md +143 -0
- package/docs/main/modular-change-family.md +125 -0
- package/docs/main/repair-data.md +275 -0
- package/docs/main/schema2.md +141 -0
- package/docs/main/semantic-format.md +315 -0
- package/docs/main/stored-and-view-schema-options.md +120 -0
- package/docs/main/stored-and-view-schema.md +331 -0
- package/docs/main/tree-content-apis.md +104 -0
- package/docs/main/tree-storage.md +816 -0
- package/docs/main/undo.md +191 -0
- package/docs/main/v1-undo-example-flow.md +273 -0
- package/docs/main/v1-undo.md +591 -0
- package/docs/roadmap.md +419 -0
- package/docs/wip/anchorInterfaces.ts +81 -0
- package/docs/wip/changeset.ts +1239 -0
- package/docs/wip/inverse-changes.md +876 -0
- package/lib/class-tree/index.d.ts +15 -0
- package/lib/class-tree/index.d.ts.map +1 -0
- package/lib/class-tree/index.js +18 -0
- package/lib/class-tree/index.js.map +1 -0
- package/lib/class-tree/integerIndexable.d.ts +31 -0
- package/lib/class-tree/integerIndexable.d.ts.map +1 -0
- package/lib/class-tree/integerIndexable.js +92 -0
- package/lib/class-tree/integerIndexable.js.map +1 -0
- package/lib/class-tree/internal.d.ts +6 -0
- package/lib/class-tree/internal.d.ts.map +1 -0
- package/lib/class-tree/internal.js +7 -0
- package/lib/class-tree/internal.js.map +1 -0
- package/lib/class-tree/schemaCreationUtilities.d.ts +96 -0
- package/lib/class-tree/schemaCreationUtilities.d.ts.map +1 -0
- package/lib/class-tree/schemaCreationUtilities.js +130 -0
- package/lib/class-tree/schemaCreationUtilities.js.map +1 -0
- package/lib/class-tree/schemaFactory.d.ts +225 -0
- package/lib/class-tree/schemaFactory.d.ts.map +1 -0
- package/lib/class-tree/schemaFactory.js +325 -0
- package/lib/class-tree/schemaFactory.js.map +1 -0
- package/lib/class-tree/schemaFactoryRecursive.d.ts +41 -0
- package/lib/class-tree/schemaFactoryRecursive.d.ts.map +1 -0
- package/lib/class-tree/schemaFactoryRecursive.js +62 -0
- package/lib/class-tree/schemaFactoryRecursive.js.map +1 -0
- package/lib/class-tree/schemaTypes.d.ts +237 -0
- package/lib/class-tree/schemaTypes.d.ts.map +1 -0
- package/lib/class-tree/schemaTypes.js +67 -0
- package/lib/class-tree/schemaTypes.js.map +1 -0
- package/lib/class-tree/testRecursiveDomain.d.ts +28 -0
- package/lib/class-tree/testRecursiveDomain.d.ts.map +1 -0
- package/lib/class-tree/testRecursiveDomain.js +36 -0
- package/lib/class-tree/testRecursiveDomain.js.map +1 -0
- package/lib/class-tree/toFlexSchema.d.ts +58 -0
- package/lib/class-tree/toFlexSchema.d.ts.map +1 -0
- package/lib/class-tree/toFlexSchema.js +195 -0
- package/lib/class-tree/toFlexSchema.js.map +1 -0
- package/lib/class-tree/tree.d.ts +98 -0
- package/lib/class-tree/tree.d.ts.map +1 -0
- package/lib/class-tree/tree.js +41 -0
- package/lib/class-tree/tree.js.map +1 -0
- package/lib/class-tree/treeApi.d.ts +69 -0
- package/lib/class-tree/treeApi.d.ts.map +1 -0
- package/lib/class-tree/treeApi.js +53 -0
- package/lib/class-tree/treeApi.js.map +1 -0
- package/lib/codec/codec.d.ts +214 -0
- package/lib/codec/codec.d.ts.map +1 -0
- package/lib/codec/codec.js +160 -0
- package/lib/codec/codec.js.map +1 -0
- package/lib/codec/discriminatedUnions.d.ts +82 -0
- package/lib/codec/discriminatedUnions.d.ts.map +1 -0
- package/lib/codec/discriminatedUnions.js +87 -0
- package/lib/codec/discriminatedUnions.js.map +1 -0
- package/lib/codec/index.d.ts +8 -0
- package/lib/codec/index.d.ts.map +1 -0
- package/lib/codec/index.js +8 -0
- package/lib/codec/index.js.map +1 -0
- package/lib/codec/noopValidator.d.ts +13 -0
- package/lib/codec/noopValidator.d.ts.map +1 -0
- package/lib/codec/noopValidator.js +14 -0
- package/lib/codec/noopValidator.js.map +1 -0
- package/lib/core/change-family/changeFamily.d.ts +32 -0
- package/lib/core/change-family/changeFamily.d.ts.map +1 -0
- package/lib/core/change-family/changeFamily.js +6 -0
- package/lib/core/change-family/changeFamily.js.map +1 -0
- package/lib/core/change-family/editBuilder.d.ts +19 -0
- package/lib/core/change-family/editBuilder.d.ts.map +1 -0
- package/lib/core/change-family/editBuilder.js +21 -0
- package/lib/core/change-family/editBuilder.js.map +1 -0
- package/lib/core/change-family/index.d.ts +7 -0
- package/lib/core/change-family/index.d.ts.map +1 -0
- package/lib/core/change-family/index.js +6 -0
- package/lib/core/change-family/index.js.map +1 -0
- package/lib/core/forest/editableForest.d.ts +54 -0
- package/lib/core/forest/editableForest.d.ts.map +1 -0
- package/lib/core/forest/editableForest.js +22 -0
- package/lib/core/forest/editableForest.js.map +1 -0
- package/lib/core/forest/forest.d.ts +200 -0
- package/lib/core/forest/forest.d.ts.map +1 -0
- package/lib/core/forest/forest.js +61 -0
- package/lib/core/forest/forest.js.map +1 -0
- package/lib/core/forest/index.d.ts +7 -0
- package/lib/core/forest/index.d.ts.map +1 -0
- package/lib/core/forest/index.js +7 -0
- package/lib/core/forest/index.js.map +1 -0
- package/lib/core/index.d.ts +12 -0
- package/lib/core/index.d.ts.map +1 -0
- package/lib/core/index.js +12 -0
- package/lib/core/index.js.map +1 -0
- package/lib/core/rebase/changeRebaser.d.ts +132 -0
- package/lib/core/rebase/changeRebaser.d.ts.map +1 -0
- package/lib/core/rebase/changeRebaser.js +27 -0
- package/lib/core/rebase/changeRebaser.js.map +1 -0
- package/lib/core/rebase/index.d.ts +9 -0
- package/lib/core/rebase/index.d.ts.map +1 -0
- package/lib/core/rebase/index.js +9 -0
- package/lib/core/rebase/index.js.map +1 -0
- package/lib/core/rebase/types.d.ts +93 -0
- package/lib/core/rebase/types.d.ts.map +1 -0
- package/lib/core/rebase/types.js +51 -0
- package/lib/core/rebase/types.js.map +1 -0
- package/lib/core/rebase/utils.d.ts +215 -0
- package/lib/core/rebase/utils.d.ts.map +1 -0
- package/lib/core/rebase/utils.js +288 -0
- package/lib/core/rebase/utils.js.map +1 -0
- package/lib/core/rebase/verifyChangeRebaser.d.ts +76 -0
- package/lib/core/rebase/verifyChangeRebaser.d.ts.map +1 -0
- package/lib/core/rebase/verifyChangeRebaser.js +287 -0
- package/lib/core/rebase/verifyChangeRebaser.js.map +1 -0
- package/lib/core/revertible/index.d.ts +6 -0
- package/lib/core/revertible/index.d.ts.map +1 -0
- package/lib/core/revertible/index.js +6 -0
- package/lib/core/revertible/index.js.map +1 -0
- package/lib/core/revertible/revertible.d.ts +72 -0
- package/lib/core/revertible/revertible.d.ts.map +1 -0
- package/lib/core/revertible/revertible.js +48 -0
- package/lib/core/revertible/revertible.js.map +1 -0
- package/lib/core/schema-stored/format.d.ts +97 -0
- package/lib/core/schema-stored/format.d.ts.map +1 -0
- package/lib/core/schema-stored/format.js +62 -0
- package/lib/core/schema-stored/format.js.map +1 -0
- package/lib/core/schema-stored/index.d.ts +10 -0
- package/lib/core/schema-stored/index.d.ts.map +1 -0
- package/lib/core/schema-stored/index.js +9 -0
- package/lib/core/schema-stored/index.js.map +1 -0
- package/lib/core/schema-stored/schema.d.ts +195 -0
- package/lib/core/schema-stored/schema.d.ts.map +1 -0
- package/lib/core/schema-stored/schema.js +165 -0
- package/lib/core/schema-stored/schema.js.map +1 -0
- package/lib/core/schema-stored/storedSchemaRepository.d.ts +71 -0
- package/lib/core/schema-stored/storedSchemaRepository.d.ts.map +1 -0
- package/lib/core/schema-stored/storedSchemaRepository.js +73 -0
- package/lib/core/schema-stored/storedSchemaRepository.js.map +1 -0
- package/lib/core/schema-view/index.d.ts +6 -0
- package/lib/core/schema-view/index.d.ts.map +1 -0
- package/lib/core/schema-view/index.js +6 -0
- package/lib/core/schema-view/index.js.map +1 -0
- package/lib/core/schema-view/view.d.ts +64 -0
- package/lib/core/schema-view/view.d.ts.map +1 -0
- package/lib/core/schema-view/view.js +51 -0
- package/lib/core/schema-view/view.js.map +1 -0
- package/lib/core/tree/anchorSet.d.ts +318 -0
- package/lib/core/tree/anchorSet.d.ts.map +1 -0
- package/lib/core/tree/anchorSet.js +890 -0
- package/lib/core/tree/anchorSet.js.map +1 -0
- package/lib/core/tree/cursor.d.ts +358 -0
- package/lib/core/tree/cursor.d.ts.map +1 -0
- package/lib/core/tree/cursor.js +156 -0
- package/lib/core/tree/cursor.js.map +1 -0
- package/lib/core/tree/delta.d.ts +241 -0
- package/lib/core/tree/delta.d.ts.map +1 -0
- package/lib/core/tree/delta.js +6 -0
- package/lib/core/tree/delta.js.map +1 -0
- package/lib/core/tree/deltaUtil.d.ts +19 -0
- package/lib/core/tree/deltaUtil.d.ts.map +1 -0
- package/lib/core/tree/deltaUtil.js +70 -0
- package/lib/core/tree/deltaUtil.js.map +1 -0
- package/lib/core/tree/detachedFieldIndex.d.ts +64 -0
- package/lib/core/tree/detachedFieldIndex.d.ts.map +1 -0
- package/lib/core/tree/detachedFieldIndex.js +115 -0
- package/lib/core/tree/detachedFieldIndex.js.map +1 -0
- package/lib/core/tree/detachedFieldIndexCodec.d.ts +8 -0
- package/lib/core/tree/detachedFieldIndexCodec.d.ts.map +1 -0
- package/lib/core/tree/detachedFieldIndexCodec.js +49 -0
- package/lib/core/tree/detachedFieldIndexCodec.js.map +1 -0
- package/lib/core/tree/detachedFieldIndexFormat.d.ts +18 -0
- package/lib/core/tree/detachedFieldIndexFormat.d.ts.map +1 -0
- package/lib/core/tree/detachedFieldIndexFormat.js +22 -0
- package/lib/core/tree/detachedFieldIndexFormat.js.map +1 -0
- package/lib/core/tree/detachedFieldIndexTypes.d.ts +13 -0
- package/lib/core/tree/detachedFieldIndexTypes.d.ts.map +1 -0
- package/lib/core/tree/detachedFieldIndexTypes.js +6 -0
- package/lib/core/tree/detachedFieldIndexTypes.js.map +1 -0
- package/lib/core/tree/index.d.ts +19 -0
- package/lib/core/tree/index.d.ts.map +1 -0
- package/lib/core/tree/index.js +17 -0
- package/lib/core/tree/index.js.map +1 -0
- package/lib/core/tree/mapTree.d.ts +22 -0
- package/lib/core/tree/mapTree.d.ts.map +1 -0
- package/lib/core/tree/mapTree.js +21 -0
- package/lib/core/tree/mapTree.js.map +1 -0
- package/lib/core/tree/pathTree.d.ts +156 -0
- package/lib/core/tree/pathTree.d.ts.map +1 -0
- package/lib/core/tree/pathTree.js +90 -0
- package/lib/core/tree/pathTree.js.map +1 -0
- package/lib/core/tree/persistedTreeTextFormat.d.ts +93 -0
- package/lib/core/tree/persistedTreeTextFormat.d.ts.map +1 -0
- package/lib/core/tree/persistedTreeTextFormat.js +20 -0
- package/lib/core/tree/persistedTreeTextFormat.js.map +1 -0
- package/lib/core/tree/sparseTree.d.ts +91 -0
- package/lib/core/tree/sparseTree.d.ts.map +1 -0
- package/lib/core/tree/sparseTree.js +144 -0
- package/lib/core/tree/sparseTree.js.map +1 -0
- package/lib/core/tree/treeTextFormat.d.ts +94 -0
- package/lib/core/tree/treeTextFormat.d.ts.map +1 -0
- package/lib/core/tree/treeTextFormat.js +81 -0
- package/lib/core/tree/treeTextFormat.js.map +1 -0
- package/lib/core/tree/types.d.ts +145 -0
- package/lib/core/tree/types.d.ts.map +1 -0
- package/lib/core/tree/types.js +55 -0
- package/lib/core/tree/types.js.map +1 -0
- package/lib/core/tree/visitDelta.d.ts +135 -0
- package/lib/core/tree/visitDelta.d.ts.map +1 -0
- package/lib/core/tree/visitDelta.js +300 -0
- package/lib/core/tree/visitDelta.js.map +1 -0
- package/lib/core/tree/visitPath.d.ts +103 -0
- package/lib/core/tree/visitPath.d.ts.map +1 -0
- package/lib/core/tree/visitPath.js +2 -0
- package/lib/core/tree/visitPath.js.map +1 -0
- package/lib/core/tree/visitorUtils.d.ts +37 -0
- package/lib/core/tree/visitorUtils.d.ts.map +1 -0
- package/lib/core/tree/visitorUtils.js +53 -0
- package/lib/core/tree/visitorUtils.js.map +1 -0
- package/lib/domains/index.d.ts +9 -0
- package/lib/domains/index.d.ts.map +1 -0
- package/lib/domains/index.js +9 -0
- package/lib/domains/index.js.map +1 -0
- package/lib/domains/json/index.d.ts +7 -0
- package/lib/domains/json/index.d.ts.map +1 -0
- package/lib/domains/json/index.js +7 -0
- package/lib/domains/json/index.js.map +1 -0
- package/lib/domains/json/jsonCursor.d.ts +18 -0
- package/lib/domains/json/jsonCursor.d.ts.map +1 -0
- package/lib/domains/json/jsonCursor.js +120 -0
- package/lib/domains/json/jsonCursor.js.map +1 -0
- package/lib/domains/json/jsonDomainSchema.d.ts +14 -0
- package/lib/domains/json/jsonDomainSchema.d.ts.map +1 -0
- package/lib/domains/json/jsonDomainSchema.js +21 -0
- package/lib/domains/json/jsonDomainSchema.js.map +1 -0
- package/lib/domains/leafDomain.d.ts +73 -0
- package/lib/domains/leafDomain.d.ts.map +1 -0
- package/lib/domains/leafDomain.js +86 -0
- package/lib/domains/leafDomain.js.map +1 -0
- package/lib/domains/nodeKey/index.d.ts +6 -0
- package/lib/domains/nodeKey/index.d.ts.map +1 -0
- package/lib/domains/nodeKey/index.js +6 -0
- package/lib/domains/nodeKey/index.js.map +1 -0
- package/lib/domains/nodeKey/nodeKeySchema.d.ts +30 -0
- package/lib/domains/nodeKey/nodeKeySchema.d.ts.map +1 -0
- package/lib/domains/nodeKey/nodeKeySchema.js +33 -0
- package/lib/domains/nodeKey/nodeKeySchema.js.map +1 -0
- package/lib/domains/schemaBuilder.d.ts +190 -0
- package/lib/domains/schemaBuilder.d.ts.map +1 -0
- package/lib/domains/schemaBuilder.js +199 -0
- package/lib/domains/schemaBuilder.js.map +1 -0
- package/lib/domains/testRecursiveDomain.d.ts +21 -0
- package/lib/domains/testRecursiveDomain.d.ts.map +1 -0
- package/lib/domains/testRecursiveDomain.js +39 -0
- package/lib/domains/testRecursiveDomain.js.map +1 -0
- package/lib/events/events.d.ts +187 -0
- package/lib/events/events.d.ts.map +1 -0
- package/lib/events/events.js +119 -0
- package/lib/events/events.js.map +1 -0
- package/lib/events/index.d.ts +6 -0
- package/lib/events/index.d.ts.map +1 -0
- package/lib/events/index.js +6 -0
- package/lib/events/index.js.map +1 -0
- package/lib/external-utilities/index.d.ts +6 -0
- package/lib/external-utilities/index.d.ts.map +1 -0
- package/lib/external-utilities/index.js +6 -0
- package/lib/external-utilities/index.js.map +1 -0
- package/lib/external-utilities/typeboxValidator.d.ts +18 -0
- package/lib/external-utilities/typeboxValidator.d.ts.map +1 -0
- package/lib/external-utilities/typeboxValidator.js +27 -0
- package/lib/external-utilities/typeboxValidator.js.map +1 -0
- package/lib/feature-libraries/chunked-forest/basicChunk.d.ts +111 -0
- package/lib/feature-libraries/chunked-forest/basicChunk.d.ts.map +1 -0
- package/lib/feature-libraries/chunked-forest/basicChunk.js +455 -0
- package/lib/feature-libraries/chunked-forest/basicChunk.js.map +1 -0
- package/lib/feature-libraries/chunked-forest/chunk.d.ts +89 -0
- package/lib/feature-libraries/chunked-forest/chunk.d.ts.map +1 -0
- package/lib/feature-libraries/chunked-forest/chunk.js +24 -0
- package/lib/feature-libraries/chunked-forest/chunk.js.map +1 -0
- package/lib/feature-libraries/chunked-forest/chunkTree.d.ts +156 -0
- package/lib/feature-libraries/chunked-forest/chunkTree.d.ts.map +1 -0
- package/lib/feature-libraries/chunked-forest/chunkTree.js +340 -0
- package/lib/feature-libraries/chunked-forest/chunkTree.js.map +1 -0
- package/lib/feature-libraries/chunked-forest/chunkedForest.d.ts +57 -0
- package/lib/feature-libraries/chunked-forest/chunkedForest.d.ts.map +1 -0
- package/lib/feature-libraries/chunked-forest/chunkedForest.js +295 -0
- package/lib/feature-libraries/chunked-forest/chunkedForest.js.map +1 -0
- package/lib/feature-libraries/chunked-forest/codec/chunkCodecUtilities.d.ts +114 -0
- package/lib/feature-libraries/chunked-forest/codec/chunkCodecUtilities.d.ts.map +1 -0
- package/lib/feature-libraries/chunked-forest/codec/chunkCodecUtilities.js +124 -0
- package/lib/feature-libraries/chunked-forest/codec/chunkCodecUtilities.js.map +1 -0
- package/lib/feature-libraries/chunked-forest/codec/chunkDecoding.d.ts +61 -0
- package/lib/feature-libraries/chunked-forest/codec/chunkDecoding.d.ts.map +1 -0
- package/lib/feature-libraries/chunked-forest/codec/chunkDecoding.js +209 -0
- package/lib/feature-libraries/chunked-forest/codec/chunkDecoding.js.map +1 -0
- package/lib/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.d.ts +30 -0
- package/lib/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.d.ts.map +1 -0
- package/lib/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.js +47 -0
- package/lib/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.js.map +1 -0
- package/lib/feature-libraries/chunked-forest/codec/chunkEncodingGeneric.d.ts +81 -0
- package/lib/feature-libraries/chunked-forest/codec/chunkEncodingGeneric.d.ts.map +1 -0
- package/lib/feature-libraries/chunked-forest/codec/chunkEncodingGeneric.js +120 -0
- package/lib/feature-libraries/chunked-forest/codec/chunkEncodingGeneric.js.map +1 -0
- package/lib/feature-libraries/chunked-forest/codec/codecs.d.ts +32 -0
- package/lib/feature-libraries/chunked-forest/codec/codecs.d.ts.map +1 -0
- package/lib/feature-libraries/chunked-forest/codec/codecs.js +63 -0
- package/lib/feature-libraries/chunked-forest/codec/codecs.js.map +1 -0
- package/lib/feature-libraries/chunked-forest/codec/compressedEncode.d.ts +149 -0
- package/lib/feature-libraries/chunked-forest/codec/compressedEncode.d.ts.map +1 -0
- package/lib/feature-libraries/chunked-forest/codec/compressedEncode.js +269 -0
- package/lib/feature-libraries/chunked-forest/codec/compressedEncode.js.map +1 -0
- package/lib/feature-libraries/chunked-forest/codec/fieldBatch.d.ts +11 -0
- package/lib/feature-libraries/chunked-forest/codec/fieldBatch.d.ts.map +1 -0
- package/lib/feature-libraries/chunked-forest/codec/fieldBatch.js +6 -0
- package/lib/feature-libraries/chunked-forest/codec/fieldBatch.js.map +1 -0
- package/lib/feature-libraries/chunked-forest/codec/format.d.ts +208 -0
- package/lib/feature-libraries/chunked-forest/codec/format.d.ts.map +1 -0
- package/lib/feature-libraries/chunked-forest/codec/format.js +135 -0
- package/lib/feature-libraries/chunked-forest/codec/format.js.map +1 -0
- package/lib/feature-libraries/chunked-forest/codec/formatGeneric.d.ts +43 -0
- package/lib/feature-libraries/chunked-forest/codec/formatGeneric.d.ts.map +1 -0
- package/lib/feature-libraries/chunked-forest/codec/formatGeneric.js +41 -0
- package/lib/feature-libraries/chunked-forest/codec/formatGeneric.js.map +1 -0
- package/lib/feature-libraries/chunked-forest/codec/index.d.ts +8 -0
- package/lib/feature-libraries/chunked-forest/codec/index.d.ts.map +1 -0
- package/lib/feature-libraries/chunked-forest/codec/index.js +7 -0
- package/lib/feature-libraries/chunked-forest/codec/index.js.map +1 -0
- package/lib/feature-libraries/chunked-forest/codec/nodeShape.d.ts +23 -0
- package/lib/feature-libraries/chunked-forest/codec/nodeShape.d.ts.map +1 -0
- package/lib/feature-libraries/chunked-forest/codec/nodeShape.js +89 -0
- package/lib/feature-libraries/chunked-forest/codec/nodeShape.js.map +1 -0
- package/lib/feature-libraries/chunked-forest/codec/schemaBasedEncoding.d.ts +28 -0
- package/lib/feature-libraries/chunked-forest/codec/schemaBasedEncoding.d.ts.map +1 -0
- package/lib/feature-libraries/chunked-forest/codec/schemaBasedEncoding.js +91 -0
- package/lib/feature-libraries/chunked-forest/codec/schemaBasedEncoding.js.map +1 -0
- package/lib/feature-libraries/chunked-forest/codec/uncompressedEncode.d.ts +16 -0
- package/lib/feature-libraries/chunked-forest/codec/uncompressedEncode.d.ts.map +1 -0
- package/lib/feature-libraries/chunked-forest/codec/uncompressedEncode.js +57 -0
- package/lib/feature-libraries/chunked-forest/codec/uncompressedEncode.js.map +1 -0
- package/lib/feature-libraries/chunked-forest/emptyChunk.d.ts +19 -0
- package/lib/feature-libraries/chunked-forest/emptyChunk.d.ts.map +1 -0
- package/lib/feature-libraries/chunked-forest/emptyChunk.js +104 -0
- package/lib/feature-libraries/chunked-forest/emptyChunk.js.map +1 -0
- package/lib/feature-libraries/chunked-forest/index.d.ts +10 -0
- package/lib/feature-libraries/chunked-forest/index.d.ts.map +1 -0
- package/lib/feature-libraries/chunked-forest/index.js +10 -0
- package/lib/feature-libraries/chunked-forest/index.js.map +1 -0
- package/lib/feature-libraries/chunked-forest/sequenceChunk.d.ts +26 -0
- package/lib/feature-libraries/chunked-forest/sequenceChunk.d.ts.map +1 -0
- package/lib/feature-libraries/chunked-forest/sequenceChunk.js +47 -0
- package/lib/feature-libraries/chunked-forest/sequenceChunk.js.map +1 -0
- package/lib/feature-libraries/chunked-forest/uniformChunk.d.ts +186 -0
- package/lib/feature-libraries/chunked-forest/uniformChunk.d.ts.map +1 -0
- package/lib/feature-libraries/chunked-forest/uniformChunk.js +390 -0
- package/lib/feature-libraries/chunked-forest/uniformChunk.js.map +1 -0
- package/lib/feature-libraries/contextuallyTyped.d.ts +212 -0
- package/lib/feature-libraries/contextuallyTyped.d.ts.map +1 -0
- package/lib/feature-libraries/contextuallyTyped.js +324 -0
- package/lib/feature-libraries/contextuallyTyped.js.map +1 -0
- package/lib/feature-libraries/default-schema/defaultEditBuilder.d.ts +136 -0
- package/lib/feature-libraries/default-schema/defaultEditBuilder.d.ts.map +1 -0
- package/lib/feature-libraries/default-schema/defaultEditBuilder.js +238 -0
- package/lib/feature-libraries/default-schema/defaultEditBuilder.js.map +1 -0
- package/lib/feature-libraries/default-schema/defaultFieldKinds.d.ts +112 -0
- package/lib/feature-libraries/default-schema/defaultFieldKinds.d.ts.map +1 -0
- package/lib/feature-libraries/default-schema/defaultFieldKinds.js +107 -0
- package/lib/feature-libraries/default-schema/defaultFieldKinds.js.map +1 -0
- package/lib/feature-libraries/default-schema/defaultSchema.d.ts +11 -0
- package/lib/feature-libraries/default-schema/defaultSchema.d.ts.map +1 -0
- package/lib/feature-libraries/default-schema/defaultSchema.js +13 -0
- package/lib/feature-libraries/default-schema/defaultSchema.js.map +1 -0
- package/lib/feature-libraries/default-schema/index.d.ts +8 -0
- package/lib/feature-libraries/default-schema/index.d.ts.map +1 -0
- package/lib/feature-libraries/default-schema/index.js +8 -0
- package/lib/feature-libraries/default-schema/index.js.map +1 -0
- package/lib/feature-libraries/deltaUtils.d.ts +62 -0
- package/lib/feature-libraries/deltaUtils.d.ts.map +1 -0
- package/lib/feature-libraries/deltaUtils.js +117 -0
- package/lib/feature-libraries/deltaUtils.js.map +1 -0
- package/lib/feature-libraries/detachedFieldIndexSummarizer.d.ts +21 -0
- package/lib/feature-libraries/detachedFieldIndexSummarizer.d.ts.map +1 -0
- package/lib/feature-libraries/detachedFieldIndexSummarizer.js +42 -0
- package/lib/feature-libraries/detachedFieldIndexSummarizer.js.map +1 -0
- package/lib/feature-libraries/editableTreeBinder.d.ts +325 -0
- package/lib/feature-libraries/editableTreeBinder.d.ts.map +1 -0
- package/lib/feature-libraries/editableTreeBinder.js +567 -0
- package/lib/feature-libraries/editableTreeBinder.js.map +1 -0
- package/lib/feature-libraries/fieldGenerator.d.ts +46 -0
- package/lib/feature-libraries/fieldGenerator.d.ts.map +1 -0
- package/lib/feature-libraries/fieldGenerator.js +13 -0
- package/lib/feature-libraries/fieldGenerator.js.map +1 -0
- package/lib/feature-libraries/flex-tree/context.d.ts +87 -0
- package/lib/feature-libraries/flex-tree/context.d.ts.map +1 -0
- package/lib/feature-libraries/flex-tree/context.js +105 -0
- package/lib/feature-libraries/flex-tree/context.js.map +1 -0
- package/lib/feature-libraries/flex-tree/flexTreeTypes.d.ts +793 -0
- package/lib/feature-libraries/flex-tree/flexTreeTypes.d.ts.map +1 -0
- package/lib/feature-libraries/flex-tree/flexTreeTypes.js +52 -0
- package/lib/feature-libraries/flex-tree/flexTreeTypes.js.map +1 -0
- package/lib/feature-libraries/flex-tree/index.d.ts +11 -0
- package/lib/feature-libraries/flex-tree/index.d.ts.map +1 -0
- package/lib/feature-libraries/flex-tree/index.js +8 -0
- package/lib/feature-libraries/flex-tree/index.js.map +1 -0
- package/lib/feature-libraries/flex-tree/lazyEntity.d.ts +49 -0
- package/lib/feature-libraries/flex-tree/lazyEntity.d.ts.map +1 -0
- package/lib/feature-libraries/flex-tree/lazyEntity.js +97 -0
- package/lib/feature-libraries/flex-tree/lazyEntity.js.map +1 -0
- package/lib/feature-libraries/flex-tree/lazyField.d.ts +87 -0
- package/lib/feature-libraries/flex-tree/lazyField.d.ts.map +1 -0
- package/lib/feature-libraries/flex-tree/lazyField.js +331 -0
- package/lib/feature-libraries/flex-tree/lazyField.js.map +1 -0
- package/lib/feature-libraries/flex-tree/lazyNode.d.ts +75 -0
- package/lib/feature-libraries/flex-tree/lazyNode.d.ts.map +1 -0
- package/lib/feature-libraries/flex-tree/lazyNode.js +415 -0
- package/lib/feature-libraries/flex-tree/lazyNode.js.map +1 -0
- package/lib/feature-libraries/flex-tree/navigation.d.ts +46 -0
- package/lib/feature-libraries/flex-tree/navigation.d.ts.map +1 -0
- package/lib/feature-libraries/flex-tree/navigation.js +97 -0
- package/lib/feature-libraries/flex-tree/navigation.js.map +1 -0
- package/lib/feature-libraries/flex-tree/nodeKeys.d.ts +42 -0
- package/lib/feature-libraries/flex-tree/nodeKeys.d.ts.map +1 -0
- package/lib/feature-libraries/flex-tree/nodeKeys.js +20 -0
- package/lib/feature-libraries/flex-tree/nodeKeys.js.map +1 -0
- package/lib/feature-libraries/flex-tree/treeEvents.d.ts +111 -0
- package/lib/feature-libraries/flex-tree/treeEvents.d.ts.map +1 -0
- package/lib/feature-libraries/flex-tree/treeEvents.js +6 -0
- package/lib/feature-libraries/flex-tree/treeEvents.js.map +1 -0
- package/lib/feature-libraries/flex-tree/unboxed.d.ts +24 -0
- package/lib/feature-libraries/flex-tree/unboxed.d.ts.map +1 -0
- package/lib/feature-libraries/flex-tree/unboxed.js +48 -0
- package/lib/feature-libraries/flex-tree/unboxed.js.map +1 -0
- package/lib/feature-libraries/flex-tree/utilities.d.ts +29 -0
- package/lib/feature-libraries/flex-tree/utilities.d.ts.map +1 -0
- package/lib/feature-libraries/flex-tree/utilities.js +53 -0
- package/lib/feature-libraries/flex-tree/utilities.js.map +1 -0
- package/lib/feature-libraries/forest-summary/codec.d.ts +16 -0
- package/lib/feature-libraries/forest-summary/codec.d.ts.map +1 -0
- package/lib/feature-libraries/forest-summary/codec.js +35 -0
- package/lib/feature-libraries/forest-summary/codec.js.map +1 -0
- package/lib/feature-libraries/forest-summary/forestSummarizer.d.ts +40 -0
- package/lib/feature-libraries/forest-summary/forestSummarizer.d.ts.map +1 -0
- package/lib/feature-libraries/forest-summary/forestSummarizer.js +108 -0
- package/lib/feature-libraries/forest-summary/forestSummarizer.js.map +1 -0
- package/lib/feature-libraries/forest-summary/format.d.ts +16 -0
- package/lib/feature-libraries/forest-summary/format.d.ts.map +1 -0
- package/lib/feature-libraries/forest-summary/format.js +14 -0
- package/lib/feature-libraries/forest-summary/format.js.map +1 -0
- package/lib/feature-libraries/forest-summary/index.d.ts +6 -0
- package/lib/feature-libraries/forest-summary/index.d.ts.map +1 -0
- package/lib/feature-libraries/forest-summary/index.js +6 -0
- package/lib/feature-libraries/forest-summary/index.js.map +1 -0
- package/lib/feature-libraries/incrementalSummarizationUtils.d.ts +20 -0
- package/lib/feature-libraries/incrementalSummarizationUtils.d.ts.map +1 -0
- package/lib/feature-libraries/incrementalSummarizationUtils.js +6 -0
- package/lib/feature-libraries/incrementalSummarizationUtils.js.map +1 -0
- package/lib/feature-libraries/index.d.ts +35 -0
- package/lib/feature-libraries/index.d.ts.map +1 -0
- package/lib/feature-libraries/index.js +34 -0
- package/lib/feature-libraries/index.js.map +1 -0
- package/lib/feature-libraries/mapTreeCursor.d.ts +19 -0
- package/lib/feature-libraries/mapTreeCursor.d.ts.map +1 -0
- package/lib/feature-libraries/mapTreeCursor.js +47 -0
- package/lib/feature-libraries/mapTreeCursor.js.map +1 -0
- package/lib/feature-libraries/memoizedIdRangeAllocator.d.ts +42 -0
- package/lib/feature-libraries/memoizedIdRangeAllocator.d.ts.map +1 -0
- package/lib/feature-libraries/memoizedIdRangeAllocator.js +72 -0
- package/lib/feature-libraries/memoizedIdRangeAllocator.js.map +1 -0
- package/lib/feature-libraries/mitigatedChangeFamily.d.ts +22 -0
- package/lib/feature-libraries/mitigatedChangeFamily.d.ts.map +1 -0
- package/lib/feature-libraries/mitigatedChangeFamily.js +50 -0
- package/lib/feature-libraries/mitigatedChangeFamily.js.map +1 -0
- package/lib/feature-libraries/modular-schema/comparison.d.ts +63 -0
- package/lib/feature-libraries/modular-schema/comparison.d.ts.map +1 -0
- package/lib/feature-libraries/modular-schema/comparison.js +190 -0
- package/lib/feature-libraries/modular-schema/comparison.js.map +1 -0
- package/lib/feature-libraries/modular-schema/crossFieldQueries.d.ts +37 -0
- package/lib/feature-libraries/modular-schema/crossFieldQueries.d.ts.map +1 -0
- package/lib/feature-libraries/modular-schema/crossFieldQueries.js +23 -0
- package/lib/feature-libraries/modular-schema/crossFieldQueries.js.map +1 -0
- package/lib/feature-libraries/modular-schema/fieldChangeHandler.d.ts +140 -0
- package/lib/feature-libraries/modular-schema/fieldChangeHandler.d.ts.map +1 -0
- package/lib/feature-libraries/modular-schema/fieldChangeHandler.js +38 -0
- package/lib/feature-libraries/modular-schema/fieldChangeHandler.js.map +1 -0
- package/lib/feature-libraries/modular-schema/fieldKind.d.ts +94 -0
- package/lib/feature-libraries/modular-schema/fieldKind.d.ts.map +1 -0
- package/lib/feature-libraries/modular-schema/fieldKind.js +95 -0
- package/lib/feature-libraries/modular-schema/fieldKind.js.map +1 -0
- package/lib/feature-libraries/modular-schema/genericFieldKind.d.ts +27 -0
- package/lib/feature-libraries/modular-schema/genericFieldKind.d.ts.map +1 -0
- package/lib/feature-libraries/modular-schema/genericFieldKind.js +163 -0
- package/lib/feature-libraries/modular-schema/genericFieldKind.js.map +1 -0
- package/lib/feature-libraries/modular-schema/genericFieldKindCodecs.d.ts +9 -0
- package/lib/feature-libraries/modular-schema/genericFieldKindCodecs.d.ts.map +1 -0
- package/lib/feature-libraries/modular-schema/genericFieldKindCodecs.js +29 -0
- package/lib/feature-libraries/modular-schema/genericFieldKindCodecs.js.map +1 -0
- package/lib/feature-libraries/modular-schema/genericFieldKindFormat.d.ts +34 -0
- package/lib/feature-libraries/modular-schema/genericFieldKindFormat.d.ts.map +1 -0
- package/lib/feature-libraries/modular-schema/genericFieldKindFormat.js +26 -0
- package/lib/feature-libraries/modular-schema/genericFieldKindFormat.js.map +1 -0
- package/lib/feature-libraries/modular-schema/genericFieldKindTypes.d.ts +23 -0
- package/lib/feature-libraries/modular-schema/genericFieldKindTypes.d.ts.map +1 -0
- package/lib/feature-libraries/modular-schema/genericFieldKindTypes.js +6 -0
- package/lib/feature-libraries/modular-schema/genericFieldKindTypes.js.map +1 -0
- package/lib/feature-libraries/modular-schema/index.d.ts +15 -0
- package/lib/feature-libraries/modular-schema/index.d.ts.map +1 -0
- package/lib/feature-libraries/modular-schema/index.js +13 -0
- package/lib/feature-libraries/modular-schema/index.js.map +1 -0
- package/lib/feature-libraries/modular-schema/modularChangeCodecs.d.ts +12 -0
- package/lib/feature-libraries/modular-schema/modularChangeCodecs.d.ts.map +1 -0
- package/lib/feature-libraries/modular-schema/modularChangeCodecs.js +184 -0
- package/lib/feature-libraries/modular-schema/modularChangeCodecs.js.map +1 -0
- package/lib/feature-libraries/modular-schema/modularChangeFamily.d.ts +125 -0
- package/lib/feature-libraries/modular-schema/modularChangeFamily.d.ts.map +1 -0
- package/lib/feature-libraries/modular-schema/modularChangeFamily.js +723 -0
- package/lib/feature-libraries/modular-schema/modularChangeFamily.js.map +1 -0
- package/lib/feature-libraries/modular-schema/modularChangeFormat.d.ts +149 -0
- package/lib/feature-libraries/modular-schema/modularChangeFormat.d.ts.map +1 -0
- package/lib/feature-libraries/modular-schema/modularChangeFormat.js +74 -0
- package/lib/feature-libraries/modular-schema/modularChangeFormat.js.map +1 -0
- package/lib/feature-libraries/modular-schema/modularChangeTypes.d.ts +69 -0
- package/lib/feature-libraries/modular-schema/modularChangeTypes.d.ts.map +1 -0
- package/lib/feature-libraries/modular-schema/modularChangeTypes.js +6 -0
- package/lib/feature-libraries/modular-schema/modularChangeTypes.js.map +1 -0
- package/lib/feature-libraries/multiplicity.d.ts +55 -0
- package/lib/feature-libraries/multiplicity.d.ts.map +1 -0
- package/lib/feature-libraries/multiplicity.js +56 -0
- package/lib/feature-libraries/multiplicity.js.map +1 -0
- package/lib/feature-libraries/node-key/index.d.ts +8 -0
- package/lib/feature-libraries/node-key/index.d.ts.map +1 -0
- package/lib/feature-libraries/node-key/index.js +8 -0
- package/lib/feature-libraries/node-key/index.js.map +1 -0
- package/lib/feature-libraries/node-key/nodeKey.d.ts +50 -0
- package/lib/feature-libraries/node-key/nodeKey.d.ts.map +1 -0
- package/lib/feature-libraries/node-key/nodeKey.js +32 -0
- package/lib/feature-libraries/node-key/nodeKey.js.map +1 -0
- package/lib/feature-libraries/node-key/nodeKeyIndex.d.ts +41 -0
- package/lib/feature-libraries/node-key/nodeKeyIndex.d.ts.map +1 -0
- package/lib/feature-libraries/node-key/nodeKeyIndex.js +98 -0
- package/lib/feature-libraries/node-key/nodeKeyIndex.js.map +1 -0
- package/lib/feature-libraries/node-key/nodeKeyManager.d.ts +36 -0
- package/lib/feature-libraries/node-key/nodeKeyManager.d.ts.map +1 -0
- package/lib/feature-libraries/node-key/nodeKeyManager.js +61 -0
- package/lib/feature-libraries/node-key/nodeKeyManager.js.map +1 -0
- package/lib/feature-libraries/object-forest/index.d.ts +6 -0
- package/lib/feature-libraries/object-forest/index.d.ts.map +1 -0
- package/lib/feature-libraries/object-forest/index.js +6 -0
- package/lib/feature-libraries/object-forest/index.js.map +1 -0
- package/lib/feature-libraries/object-forest/objectForest.d.ts +86 -0
- package/lib/feature-libraries/object-forest/objectForest.d.ts.map +1 -0
- package/lib/feature-libraries/object-forest/objectForest.js +377 -0
- package/lib/feature-libraries/object-forest/objectForest.js.map +1 -0
- package/lib/feature-libraries/optional-field/index.d.ts +8 -0
- package/lib/feature-libraries/optional-field/index.d.ts.map +1 -0
- package/lib/feature-libraries/optional-field/index.js +7 -0
- package/lib/feature-libraries/optional-field/index.js.map +1 -0
- package/lib/feature-libraries/optional-field/optionalField.d.ts +31 -0
- package/lib/feature-libraries/optional-field/optionalField.d.ts.map +1 -0
- package/lib/feature-libraries/optional-field/optionalField.js +444 -0
- package/lib/feature-libraries/optional-field/optionalField.js.map +1 -0
- package/lib/feature-libraries/optional-field/optionalFieldChangeFormat.d.ts +38 -0
- package/lib/feature-libraries/optional-field/optionalFieldChangeFormat.d.ts.map +1 -0
- package/lib/feature-libraries/optional-field/optionalFieldChangeFormat.js +22 -0
- package/lib/feature-libraries/optional-field/optionalFieldChangeFormat.js.map +1 -0
- package/lib/feature-libraries/optional-field/optionalFieldChangeTypes.d.ts +55 -0
- package/lib/feature-libraries/optional-field/optionalFieldChangeTypes.d.ts.map +1 -0
- package/lib/feature-libraries/optional-field/optionalFieldChangeTypes.js +6 -0
- package/lib/feature-libraries/optional-field/optionalFieldChangeTypes.js.map +1 -0
- package/lib/feature-libraries/optional-field/optionalFieldCodecs.d.ts +11 -0
- package/lib/feature-libraries/optional-field/optionalFieldCodecs.d.ts.map +1 -0
- package/lib/feature-libraries/optional-field/optionalFieldCodecs.js +82 -0
- package/lib/feature-libraries/optional-field/optionalFieldCodecs.js.map +1 -0
- package/lib/feature-libraries/schema-aware/index.d.ts +6 -0
- package/lib/feature-libraries/schema-aware/index.d.ts.map +1 -0
- package/lib/feature-libraries/schema-aware/index.js +6 -0
- package/lib/feature-libraries/schema-aware/index.js.map +1 -0
- package/lib/feature-libraries/schema-aware/schemaAware.d.ts +77 -0
- package/lib/feature-libraries/schema-aware/schemaAware.d.ts.map +1 -0
- package/lib/feature-libraries/schema-aware/schemaAware.js +7 -0
- package/lib/feature-libraries/schema-aware/schemaAware.js.map +1 -0
- package/lib/feature-libraries/schema-edits/index.d.ts +8 -0
- package/lib/feature-libraries/schema-edits/index.d.ts.map +1 -0
- package/lib/feature-libraries/schema-edits/index.js +7 -0
- package/lib/feature-libraries/schema-edits/index.js.map +1 -0
- package/lib/feature-libraries/schema-edits/schemaChangeCodecs.d.ts +9 -0
- package/lib/feature-libraries/schema-edits/schemaChangeCodecs.d.ts.map +1 -0
- package/lib/feature-libraries/schema-edits/schemaChangeCodecs.js +27 -0
- package/lib/feature-libraries/schema-edits/schemaChangeCodecs.js.map +1 -0
- package/lib/feature-libraries/schema-edits/schemaChangeFormat.d.ts +53 -0
- package/lib/feature-libraries/schema-edits/schemaChangeFormat.d.ts.map +1 -0
- package/lib/feature-libraries/schema-edits/schemaChangeFormat.js +11 -0
- package/lib/feature-libraries/schema-edits/schemaChangeFormat.js.map +1 -0
- package/lib/feature-libraries/schema-edits/schemaChangeTypes.d.ts +18 -0
- package/lib/feature-libraries/schema-edits/schemaChangeTypes.d.ts.map +1 -0
- package/lib/feature-libraries/schema-edits/schemaChangeTypes.js +6 -0
- package/lib/feature-libraries/schema-edits/schemaChangeTypes.js.map +1 -0
- package/lib/feature-libraries/schema-index/codec.d.ts +13 -0
- package/lib/feature-libraries/schema-index/codec.d.ts.map +1 -0
- package/lib/feature-libraries/schema-index/codec.js +51 -0
- package/lib/feature-libraries/schema-index/codec.js.map +1 -0
- package/lib/feature-libraries/schema-index/format.d.ts +60 -0
- package/lib/feature-libraries/schema-index/format.d.ts.map +1 -0
- package/lib/feature-libraries/schema-index/format.js +30 -0
- package/lib/feature-libraries/schema-index/format.js.map +1 -0
- package/lib/feature-libraries/schema-index/index.d.ts +8 -0
- package/lib/feature-libraries/schema-index/index.d.ts.map +1 -0
- package/lib/feature-libraries/schema-index/index.js +8 -0
- package/lib/feature-libraries/schema-index/index.js.map +1 -0
- package/lib/feature-libraries/schema-index/schemaSummarizer.d.ts +41 -0
- package/lib/feature-libraries/schema-index/schemaSummarizer.d.ts.map +1 -0
- package/lib/feature-libraries/schema-index/schemaSummarizer.js +81 -0
- package/lib/feature-libraries/schema-index/schemaSummarizer.js.map +1 -0
- package/lib/feature-libraries/schemaBuilder.d.ts +31 -0
- package/lib/feature-libraries/schemaBuilder.d.ts.map +1 -0
- package/lib/feature-libraries/schemaBuilder.js +36 -0
- package/lib/feature-libraries/schemaBuilder.js.map +1 -0
- package/lib/feature-libraries/schemaBuilderBase.d.ts +217 -0
- package/lib/feature-libraries/schemaBuilderBase.d.ts.map +1 -0
- package/lib/feature-libraries/schemaBuilderBase.js +221 -0
- package/lib/feature-libraries/schemaBuilderBase.js.map +1 -0
- package/lib/feature-libraries/sequence-field/compose.d.ts +45 -0
- package/lib/feature-libraries/sequence-field/compose.d.ts.map +1 -0
- package/lib/feature-libraries/sequence-field/compose.js +432 -0
- package/lib/feature-libraries/sequence-field/compose.js.map +1 -0
- package/lib/feature-libraries/sequence-field/format.d.ts +427 -0
- package/lib/feature-libraries/sequence-field/format.d.ts.map +1 -0
- package/lib/feature-libraries/sequence-field/format.js +74 -0
- package/lib/feature-libraries/sequence-field/format.js.map +1 -0
- package/lib/feature-libraries/sequence-field/helperTypes.d.ts +34 -0
- package/lib/feature-libraries/sequence-field/helperTypes.d.ts.map +1 -0
- package/lib/feature-libraries/sequence-field/helperTypes.js +13 -0
- package/lib/feature-libraries/sequence-field/helperTypes.js.map +1 -0
- package/lib/feature-libraries/sequence-field/index.d.ts +18 -0
- package/lib/feature-libraries/sequence-field/index.d.ts.map +1 -0
- package/lib/feature-libraries/sequence-field/index.js +17 -0
- package/lib/feature-libraries/sequence-field/index.js.map +1 -0
- package/lib/feature-libraries/sequence-field/invert.d.ts +19 -0
- package/lib/feature-libraries/sequence-field/invert.d.ts.map +1 -0
- package/lib/feature-libraries/sequence-field/invert.js +217 -0
- package/lib/feature-libraries/sequence-field/invert.js.map +1 -0
- package/lib/feature-libraries/sequence-field/markListFactory.d.ts +21 -0
- package/lib/feature-libraries/sequence-field/markListFactory.d.ts.map +1 -0
- package/lib/feature-libraries/sequence-field/markListFactory.js +51 -0
- package/lib/feature-libraries/sequence-field/markListFactory.js.map +1 -0
- package/lib/feature-libraries/sequence-field/markQueue.d.ts +30 -0
- package/lib/feature-libraries/sequence-field/markQueue.d.ts.map +1 -0
- package/lib/feature-libraries/sequence-field/markQueue.js +70 -0
- package/lib/feature-libraries/sequence-field/markQueue.js.map +1 -0
- package/lib/feature-libraries/sequence-field/moveEffectTable.d.ts +48 -0
- package/lib/feature-libraries/sequence-field/moveEffectTable.d.ts.map +1 -0
- package/lib/feature-libraries/sequence-field/moveEffectTable.js +242 -0
- package/lib/feature-libraries/sequence-field/moveEffectTable.js.map +1 -0
- package/lib/feature-libraries/sequence-field/prune.d.ts +8 -0
- package/lib/feature-libraries/sequence-field/prune.d.ts.map +1 -0
- package/lib/feature-libraries/sequence-field/prune.js +21 -0
- package/lib/feature-libraries/sequence-field/prune.js.map +1 -0
- package/lib/feature-libraries/sequence-field/rebase.d.ts +26 -0
- package/lib/feature-libraries/sequence-field/rebase.d.ts.map +1 -0
- package/lib/feature-libraries/sequence-field/rebase.js +615 -0
- package/lib/feature-libraries/sequence-field/rebase.js.map +1 -0
- package/lib/feature-libraries/sequence-field/relevantRemovedRoots.d.ts +9 -0
- package/lib/feature-libraries/sequence-field/relevantRemovedRoots.d.ts.map +1 -0
- package/lib/feature-libraries/sequence-field/relevantRemovedRoots.js +46 -0
- package/lib/feature-libraries/sequence-field/relevantRemovedRoots.js.map +1 -0
- package/lib/feature-libraries/sequence-field/sequenceFieldChangeHandler.d.ts +10 -0
- package/lib/feature-libraries/sequence-field/sequenceFieldChangeHandler.d.ts.map +1 -0
- package/lib/feature-libraries/sequence-field/sequenceFieldChangeHandler.js +19 -0
- package/lib/feature-libraries/sequence-field/sequenceFieldChangeHandler.js.map +1 -0
- package/lib/feature-libraries/sequence-field/sequenceFieldChangeRebaser.d.ts +19 -0
- package/lib/feature-libraries/sequence-field/sequenceFieldChangeRebaser.d.ts.map +1 -0
- package/lib/feature-libraries/sequence-field/sequenceFieldChangeRebaser.js +16 -0
- package/lib/feature-libraries/sequence-field/sequenceFieldChangeRebaser.js.map +1 -0
- package/lib/feature-libraries/sequence-field/sequenceFieldCodecs.d.ts +10 -0
- package/lib/feature-libraries/sequence-field/sequenceFieldCodecs.d.ts.map +1 -0
- package/lib/feature-libraries/sequence-field/sequenceFieldCodecs.js +235 -0
- package/lib/feature-libraries/sequence-field/sequenceFieldCodecs.js.map +1 -0
- package/lib/feature-libraries/sequence-field/sequenceFieldEditor.d.ts +33 -0
- package/lib/feature-libraries/sequence-field/sequenceFieldEditor.d.ts.map +1 -0
- package/lib/feature-libraries/sequence-field/sequenceFieldEditor.js +110 -0
- package/lib/feature-libraries/sequence-field/sequenceFieldEditor.js.map +1 -0
- package/lib/feature-libraries/sequence-field/sequenceFieldToDelta.d.ts +9 -0
- package/lib/feature-libraries/sequence-field/sequenceFieldToDelta.d.ts.map +1 -0
- package/lib/feature-libraries/sequence-field/sequenceFieldToDelta.js +161 -0
- package/lib/feature-libraries/sequence-field/sequenceFieldToDelta.js.map +1 -0
- package/lib/feature-libraries/sequence-field/types.d.ts +182 -0
- package/lib/feature-libraries/sequence-field/types.d.ts.map +1 -0
- package/lib/feature-libraries/sequence-field/types.js +6 -0
- package/lib/feature-libraries/sequence-field/types.js.map +1 -0
- package/lib/feature-libraries/sequence-field/utils.d.ts +198 -0
- package/lib/feature-libraries/sequence-field/utils.d.ts.map +1 -0
- package/lib/feature-libraries/sequence-field/utils.js +924 -0
- package/lib/feature-libraries/sequence-field/utils.js.map +1 -0
- package/lib/feature-libraries/storedToViewSchema.d.ts +18 -0
- package/lib/feature-libraries/storedToViewSchema.d.ts.map +1 -0
- package/lib/feature-libraries/storedToViewSchema.js +65 -0
- package/lib/feature-libraries/storedToViewSchema.js.map +1 -0
- package/lib/feature-libraries/treeCompressionUtils.d.ts +23 -0
- package/lib/feature-libraries/treeCompressionUtils.d.ts.map +1 -0
- package/lib/feature-libraries/treeCompressionUtils.js +24 -0
- package/lib/feature-libraries/treeCompressionUtils.js.map +1 -0
- package/lib/feature-libraries/treeCursorUtils.d.ts +101 -0
- package/lib/feature-libraries/treeCursorUtils.d.ts.map +1 -0
- package/lib/feature-libraries/treeCursorUtils.js +364 -0
- package/lib/feature-libraries/treeCursorUtils.js.map +1 -0
- package/lib/feature-libraries/treeTextCursor.d.ts +62 -0
- package/lib/feature-libraries/treeTextCursor.d.ts.map +1 -0
- package/lib/feature-libraries/treeTextCursor.js +96 -0
- package/lib/feature-libraries/treeTextCursor.js.map +1 -0
- package/lib/feature-libraries/typed-schema/flexList.d.ts +97 -0
- package/lib/feature-libraries/typed-schema/flexList.d.ts.map +1 -0
- package/lib/feature-libraries/typed-schema/flexList.js +51 -0
- package/lib/feature-libraries/typed-schema/flexList.js.map +1 -0
- package/lib/feature-libraries/typed-schema/index.d.ts +11 -0
- package/lib/feature-libraries/typed-schema/index.d.ts.map +1 -0
- package/lib/feature-libraries/typed-schema/index.js +12 -0
- package/lib/feature-libraries/typed-schema/index.js.map +1 -0
- package/lib/feature-libraries/typed-schema/internal.d.ts +7 -0
- package/lib/feature-libraries/typed-schema/internal.d.ts.map +1 -0
- package/lib/feature-libraries/typed-schema/internal.js +6 -0
- package/lib/feature-libraries/typed-schema/internal.js.map +1 -0
- package/lib/feature-libraries/typed-schema/schemaCollection.d.ts +67 -0
- package/lib/feature-libraries/typed-schema/schemaCollection.d.ts.map +1 -0
- package/lib/feature-libraries/typed-schema/schemaCollection.js +199 -0
- package/lib/feature-libraries/typed-schema/schemaCollection.js.map +1 -0
- package/lib/feature-libraries/typed-schema/typeUtils.d.ts +22 -0
- package/lib/feature-libraries/typed-schema/typeUtils.d.ts.map +1 -0
- package/lib/feature-libraries/typed-schema/typeUtils.js +10 -0
- package/lib/feature-libraries/typed-schema/typeUtils.js.map +1 -0
- package/lib/feature-libraries/typed-schema/typedTreeSchema.d.ts +294 -0
- package/lib/feature-libraries/typed-schema/typedTreeSchema.d.ts.map +1 -0
- package/lib/feature-libraries/typed-schema/typedTreeSchema.js +316 -0
- package/lib/feature-libraries/typed-schema/typedTreeSchema.js.map +1 -0
- package/lib/feature-libraries/typed-schema/view.d.ts +55 -0
- package/lib/feature-libraries/typed-schema/view.d.ts.map +1 -0
- package/lib/feature-libraries/typed-schema/view.js +113 -0
- package/lib/feature-libraries/typed-schema/view.js.map +1 -0
- package/lib/feature-libraries/utils.d.ts +9 -0
- package/lib/feature-libraries/utils.d.ts.map +1 -0
- package/lib/feature-libraries/utils.js +23 -0
- package/lib/feature-libraries/utils.js.map +1 -0
- package/lib/feature-libraries/valueUtilities.d.ts +21 -0
- package/lib/feature-libraries/valueUtilities.d.ts.map +1 -0
- package/lib/feature-libraries/valueUtilities.js +62 -0
- package/lib/feature-libraries/valueUtilities.js.map +1 -0
- package/lib/feature-libraries/versioned/codec.d.ts +11 -0
- package/lib/feature-libraries/versioned/codec.d.ts.map +1 -0
- package/lib/feature-libraries/versioned/codec.js +26 -0
- package/lib/feature-libraries/versioned/codec.js.map +1 -0
- package/lib/feature-libraries/versioned/format.d.ts +10 -0
- package/lib/feature-libraries/versioned/format.d.ts.map +1 -0
- package/lib/feature-libraries/versioned/format.js +9 -0
- package/lib/feature-libraries/versioned/format.js.map +1 -0
- package/lib/feature-libraries/versioned/index.d.ts +7 -0
- package/lib/feature-libraries/versioned/index.d.ts.map +1 -0
- package/lib/feature-libraries/versioned/index.js +7 -0
- package/lib/feature-libraries/versioned/index.js.map +1 -0
- package/lib/index.d.ts +21 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +26 -0
- package/lib/index.js.map +1 -0
- package/lib/internal.d.ts +8 -0
- package/lib/internal.d.ts.map +1 -0
- package/lib/internal.js +6 -0
- package/lib/internal.js.map +1 -0
- package/lib/shared-tree/index.d.ts +10 -0
- package/lib/shared-tree/index.d.ts.map +1 -0
- package/lib/shared-tree/index.js +9 -0
- package/lib/shared-tree/index.js.map +1 -0
- package/lib/shared-tree/schematizedTree.d.ts +94 -0
- package/lib/shared-tree/schematizedTree.d.ts.map +1 -0
- package/lib/shared-tree/schematizedTree.js +151 -0
- package/lib/shared-tree/schematizedTree.js.map +1 -0
- package/lib/shared-tree/sharedTree.d.ts +143 -0
- package/lib/shared-tree/sharedTree.d.ts.map +1 -0
- package/lib/shared-tree/sharedTree.js +215 -0
- package/lib/shared-tree/sharedTree.js.map +1 -0
- package/lib/shared-tree/sharedTreeChangeCodecs.d.ts +11 -0
- package/lib/shared-tree/sharedTreeChangeCodecs.d.ts.map +1 -0
- package/lib/shared-tree/sharedTreeChangeCodecs.js +54 -0
- package/lib/shared-tree/sharedTreeChangeCodecs.js.map +1 -0
- package/lib/shared-tree/sharedTreeChangeFamily.d.ts +25 -0
- package/lib/shared-tree/sharedTreeChangeFamily.d.ts.map +1 -0
- package/lib/shared-tree/sharedTreeChangeFamily.js +116 -0
- package/lib/shared-tree/sharedTreeChangeFamily.js.map +1 -0
- package/lib/shared-tree/sharedTreeChangeFormat.d.ts +178 -0
- package/lib/shared-tree/sharedTreeChangeFormat.d.ts.map +1 -0
- package/lib/shared-tree/sharedTreeChangeFormat.js +12 -0
- package/lib/shared-tree/sharedTreeChangeFormat.js.map +1 -0
- package/lib/shared-tree/sharedTreeChangeTypes.d.ts +26 -0
- package/lib/shared-tree/sharedTreeChangeTypes.d.ts.map +1 -0
- package/lib/shared-tree/sharedTreeChangeTypes.js +6 -0
- package/lib/shared-tree/sharedTreeChangeTypes.js.map +1 -0
- package/lib/shared-tree/sharedTreeEditBuilder.d.ts +42 -0
- package/lib/shared-tree/sharedTreeEditBuilder.d.ts.map +1 -0
- package/lib/shared-tree/sharedTreeEditBuilder.js +30 -0
- package/lib/shared-tree/sharedTreeEditBuilder.js.map +1 -0
- package/lib/shared-tree/treeCheckout.d.ts +228 -0
- package/lib/shared-tree/treeCheckout.d.ts.map +1 -0
- package/lib/shared-tree/treeCheckout.js +184 -0
- package/lib/shared-tree/treeCheckout.js.map +1 -0
- package/lib/shared-tree/treeView.d.ts +66 -0
- package/lib/shared-tree/treeView.d.ts.map +1 -0
- package/lib/shared-tree/treeView.js +29 -0
- package/lib/shared-tree/treeView.js.map +1 -0
- package/lib/shared-tree-core/branch.d.ts +199 -0
- package/lib/shared-tree-core/branch.d.ts.map +1 -0
- package/lib/shared-tree-core/branch.js +407 -0
- package/lib/shared-tree-core/branch.js.map +1 -0
- package/lib/shared-tree-core/editManager.d.ts +126 -0
- package/lib/shared-tree-core/editManager.d.ts.map +1 -0
- package/lib/shared-tree-core/editManager.js +428 -0
- package/lib/shared-tree-core/editManager.js.map +1 -0
- package/lib/shared-tree-core/editManagerCodecs.d.ts +9 -0
- package/lib/shared-tree-core/editManagerCodecs.d.ts.map +1 -0
- package/lib/shared-tree-core/editManagerCodecs.js +48 -0
- package/lib/shared-tree-core/editManagerCodecs.js.map +1 -0
- package/lib/shared-tree-core/editManagerFormat.d.ts +68 -0
- package/lib/shared-tree-core/editManagerFormat.d.ts.map +1 -0
- package/lib/shared-tree-core/editManagerFormat.js +49 -0
- package/lib/shared-tree-core/editManagerFormat.js.map +1 -0
- package/lib/shared-tree-core/editManagerSummarizer.d.ts +25 -0
- package/lib/shared-tree-core/editManagerSummarizer.d.ts.map +1 -0
- package/lib/shared-tree-core/editManagerSummarizer.js +52 -0
- package/lib/shared-tree-core/editManagerSummarizer.js.map +1 -0
- package/lib/shared-tree-core/index.d.ts +13 -0
- package/lib/shared-tree-core/index.d.ts.map +1 -0
- package/lib/shared-tree-core/index.js +12 -0
- package/lib/shared-tree-core/index.js.map +1 -0
- package/lib/shared-tree-core/messageCodecs.d.ts +9 -0
- package/lib/shared-tree-core/messageCodecs.d.ts.map +1 -0
- package/lib/shared-tree-core/messageCodecs.js +31 -0
- package/lib/shared-tree-core/messageCodecs.js.map +1 -0
- package/lib/shared-tree-core/messageFormat.d.ts +30 -0
- package/lib/shared-tree-core/messageFormat.d.ts.map +1 -0
- package/lib/shared-tree-core/messageFormat.js +12 -0
- package/lib/shared-tree-core/messageFormat.js.map +1 -0
- package/lib/shared-tree-core/messageTypes.d.ts +10 -0
- package/lib/shared-tree-core/messageTypes.d.ts.map +1 -0
- package/lib/shared-tree-core/messageTypes.js +6 -0
- package/lib/shared-tree-core/messageTypes.js.map +1 -0
- package/lib/shared-tree-core/revisionTagCodecs.d.ts +11 -0
- package/lib/shared-tree-core/revisionTagCodecs.d.ts.map +1 -0
- package/lib/shared-tree-core/revisionTagCodecs.js +13 -0
- package/lib/shared-tree-core/revisionTagCodecs.js.map +1 -0
- package/lib/shared-tree-core/sharedTreeCore.d.ts +112 -0
- package/lib/shared-tree-core/sharedTreeCore.d.ts.map +1 -0
- package/lib/shared-tree-core/sharedTreeCore.js +193 -0
- package/lib/shared-tree-core/sharedTreeCore.js.map +1 -0
- package/lib/shared-tree-core/transactionStack.d.ts +30 -0
- package/lib/shared-tree-core/transactionStack.d.ts.map +1 -0
- package/lib/shared-tree-core/transactionStack.js +38 -0
- package/lib/shared-tree-core/transactionStack.js.map +1 -0
- package/lib/simple-tree/flexNode.d.ts +34 -0
- package/lib/simple-tree/flexNode.d.ts.map +1 -0
- package/lib/simple-tree/flexNode.js +50 -0
- package/lib/simple-tree/flexNode.js.map +1 -0
- package/lib/simple-tree/index.d.ts +10 -0
- package/lib/simple-tree/index.d.ts.map +1 -0
- package/lib/simple-tree/index.js +9 -0
- package/lib/simple-tree/index.js.map +1 -0
- package/lib/simple-tree/insertable.d.ts +44 -0
- package/lib/simple-tree/insertable.d.ts.map +1 -0
- package/lib/simple-tree/insertable.js +6 -0
- package/lib/simple-tree/insertable.js.map +1 -0
- package/lib/simple-tree/objectFactory.d.ts +30 -0
- package/lib/simple-tree/objectFactory.d.ts.map +1 -0
- package/lib/simple-tree/objectFactory.js +16 -0
- package/lib/simple-tree/objectFactory.js.map +1 -0
- package/lib/simple-tree/proxies.d.ts +112 -0
- package/lib/simple-tree/proxies.d.ts.map +1 -0
- package/lib/simple-tree/proxies.js +800 -0
- package/lib/simple-tree/proxies.js.map +1 -0
- package/lib/simple-tree/rawNode.d.ts +96 -0
- package/lib/simple-tree/rawNode.d.ts.map +1 -0
- package/lib/simple-tree/rawNode.js +132 -0
- package/lib/simple-tree/rawNode.js.map +1 -0
- package/lib/simple-tree/toMapTree.d.ts +101 -0
- package/lib/simple-tree/toMapTree.d.ts.map +1 -0
- package/lib/simple-tree/toMapTree.js +291 -0
- package/lib/simple-tree/toMapTree.js.map +1 -0
- package/lib/simple-tree/treeListNode.d.ts +60 -0
- package/lib/simple-tree/treeListNode.d.ts.map +1 -0
- package/lib/simple-tree/treeListNode.js +49 -0
- package/lib/simple-tree/treeListNode.js.map +1 -0
- package/lib/simple-tree/types.d.ts +243 -0
- package/lib/simple-tree/types.d.ts.map +1 -0
- package/lib/simple-tree/types.js +17 -0
- package/lib/simple-tree/types.js.map +1 -0
- package/lib/treeFactory.d.ts +55 -0
- package/lib/treeFactory.d.ts.map +1 -0
- package/lib/treeFactory.js +80 -0
- package/lib/treeFactory.js.map +1 -0
- package/lib/util/brand.d.ts +179 -0
- package/lib/util/brand.d.ts.map +1 -0
- package/lib/util/brand.js +118 -0
- package/lib/util/brand.js.map +1 -0
- package/lib/util/brandedMap.d.ts +46 -0
- package/lib/util/brandedMap.d.ts.map +1 -0
- package/lib/util/brandedMap.js +27 -0
- package/lib/util/brandedMap.js.map +1 -0
- package/lib/util/idAllocator.d.ts +29 -0
- package/lib/util/idAllocator.d.ts.map +1 -0
- package/lib/util/idAllocator.js +29 -0
- package/lib/util/idAllocator.js.map +1 -0
- package/lib/util/index.d.ts +18 -0
- package/lib/util/index.d.ts.map +1 -0
- package/lib/util/index.js +16 -0
- package/lib/util/index.js.map +1 -0
- package/lib/util/nestedMap.d.ts +129 -0
- package/lib/util/nestedMap.d.ts.map +1 -0
- package/lib/util/nestedMap.js +224 -0
- package/lib/util/nestedMap.js.map +1 -0
- package/lib/util/nestedSet.d.ts +9 -0
- package/lib/util/nestedSet.d.ts.map +1 -0
- package/lib/util/nestedSet.js +12 -0
- package/lib/util/nestedSet.js.map +1 -0
- package/lib/util/offsetList.d.ts +22 -0
- package/lib/util/offsetList.d.ts.map +1 -0
- package/lib/util/offsetList.js +40 -0
- package/lib/util/offsetList.js.map +1 -0
- package/lib/util/rangeMap.d.ts +40 -0
- package/lib/util/rangeMap.d.ts.map +1 -0
- package/lib/util/rangeMap.js +97 -0
- package/lib/util/rangeMap.js.map +1 -0
- package/lib/util/referenceCounting.d.ts +30 -0
- package/lib/util/referenceCounting.d.ts.map +1 -0
- package/lib/util/referenceCounting.js +30 -0
- package/lib/util/referenceCounting.js.map +1 -0
- package/lib/util/stackyIterator.d.ts +20 -0
- package/lib/util/stackyIterator.d.ts.map +1 -0
- package/lib/util/stackyIterator.js +45 -0
- package/lib/util/stackyIterator.js.map +1 -0
- package/lib/util/transactionResult.d.ts +20 -0
- package/lib/util/transactionResult.d.ts.map +1 -0
- package/lib/util/transactionResult.js +21 -0
- package/lib/util/transactionResult.js.map +1 -0
- package/lib/util/typeCheck.d.ts +183 -0
- package/lib/util/typeCheck.d.ts.map +1 -0
- package/lib/util/typeCheck.js +6 -0
- package/lib/util/typeCheck.js.map +1 -0
- package/lib/util/typeCheckTests.d.ts +60 -0
- package/lib/util/typeCheckTests.d.ts.map +1 -0
- package/lib/util/typeCheckTests.js +6 -0
- package/lib/util/typeCheckTests.js.map +1 -0
- package/lib/util/typeUtils.d.ts +129 -0
- package/lib/util/typeUtils.d.ts.map +1 -0
- package/lib/util/typeUtils.js +10 -0
- package/lib/util/typeUtils.js.map +1 -0
- package/lib/util/utils.d.ts +287 -0
- package/lib/util/utils.d.ts.map +1 -0
- package/lib/util/utils.js +346 -0
- package/lib/util/utils.js.map +1 -0
- package/package.json +129 -0
- package/prettier.config.cjs +8 -0
- package/src/class-tree/README.md +67 -0
- package/src/class-tree/index.ts +43 -0
- package/src/class-tree/integerIndexable.ts +120 -0
- package/src/class-tree/internal.ts +20 -0
- package/src/class-tree/schemaCreationUtilities.ts +178 -0
- package/src/class-tree/schemaFactory.ts +685 -0
- package/src/class-tree/schemaFactoryRecursive.ts +95 -0
- package/src/class-tree/schemaTypes.ts +334 -0
- package/src/class-tree/testRecursiveDomain.ts +47 -0
- package/src/class-tree/toFlexSchema.ts +279 -0
- package/src/class-tree/tree.ts +123 -0
- package/src/class-tree/treeApi.ts +147 -0
- package/src/codec/README.md +15 -0
- package/src/codec/codec.ts +346 -0
- package/src/codec/discriminatedUnions.ts +114 -0
- package/src/codec/index.ts +23 -0
- package/src/codec/noopValidator.ts +17 -0
- package/src/core/README.md +9 -0
- package/src/core/change-family/README.md +14 -0
- package/src/core/change-family/changeFamily.ts +36 -0
- package/src/core/change-family/editBuilder.ts +25 -0
- package/src/core/change-family/index.ts +7 -0
- package/src/core/forest/README.md +11 -0
- package/src/core/forest/editableForest.ts +81 -0
- package/src/core/forest/forest.ts +263 -0
- package/src/core/forest/index.ts +22 -0
- package/src/core/index.ts +193 -0
- package/src/core/rebase/README.md +5 -0
- package/src/core/rebase/changeRebaser.ts +169 -0
- package/src/core/rebase/index.ts +51 -0
- package/src/core/rebase/types.ts +129 -0
- package/src/core/rebase/utils.ts +538 -0
- package/src/core/rebase/verifyChangeRebaser.ts +385 -0
- package/src/core/revertible/index.ts +6 -0
- package/src/core/revertible/revertible.ts +75 -0
- package/src/core/schema-stored/README.md +11 -0
- package/src/core/schema-stored/format.ts +115 -0
- package/src/core/schema-stored/index.ts +36 -0
- package/src/core/schema-stored/schema.ts +313 -0
- package/src/core/schema-stored/storedSchemaRepository.ts +136 -0
- package/src/core/schema-view/README.md +9 -0
- package/src/core/schema-view/index.ts +6 -0
- package/src/core/schema-view/view.ts +76 -0
- package/src/core/tree/README.md +15 -0
- package/src/core/tree/anchorSet.ts +1219 -0
- package/src/core/tree/cursor.ts +486 -0
- package/src/core/tree/delta.ts +255 -0
- package/src/core/tree/deltaUtil.ts +102 -0
- package/src/core/tree/detachedFieldIndex.ts +170 -0
- package/src/core/tree/detachedFieldIndexCodec.ts +59 -0
- package/src/core/tree/detachedFieldIndexFormat.ts +35 -0
- package/src/core/tree/detachedFieldIndexTypes.ts +15 -0
- package/src/core/tree/index.ts +114 -0
- package/src/core/tree/mapTree.ts +37 -0
- package/src/core/tree/pathTree.ts +228 -0
- package/src/core/tree/persistedTreeTextFormat.ts +93 -0
- package/src/core/tree/sparseTree.ts +160 -0
- package/src/core/tree/treeTextFormat.ts +179 -0
- package/src/core/tree/types.ts +170 -0
- package/src/core/tree/visitDelta.ts +482 -0
- package/src/core/tree/visitPath.ts +125 -0
- package/src/core/tree/visitorUtils.ts +106 -0
- package/src/domains/README.md +6 -0
- package/src/domains/fence.json +5 -0
- package/src/domains/index.ts +18 -0
- package/src/domains/json/fence.json +5 -0
- package/src/domains/json/index.ts +7 -0
- package/src/domains/json/jsonCursor.ts +137 -0
- package/src/domains/json/jsonDomainSchema.ts +49 -0
- package/src/domains/leafDomain.ts +98 -0
- package/src/domains/nodeKey/fence.json +5 -0
- package/src/domains/nodeKey/index.ts +6 -0
- package/src/domains/nodeKey/nodeKeySchema.ts +43 -0
- package/src/domains/schemaBuilder.ts +392 -0
- package/src/domains/testRecursiveDomain.ts +56 -0
- package/src/events/README.md +3 -0
- package/src/events/events.ts +282 -0
- package/src/events/fence.json +5 -0
- package/src/events/index.ts +17 -0
- package/src/external-utilities/README.md +5 -0
- package/src/external-utilities/fence.json +5 -0
- package/src/external-utilities/index.ts +6 -0
- package/src/external-utilities/typeboxValidator.ts +30 -0
- package/src/feature-libraries/README.md +140 -0
- package/src/feature-libraries/chunked-forest/README.md +13 -0
- package/src/feature-libraries/chunked-forest/basicChunk.ts +564 -0
- package/src/feature-libraries/chunked-forest/chunk.ts +109 -0
- package/src/feature-libraries/chunked-forest/chunkTree.ts +506 -0
- package/src/feature-libraries/chunked-forest/chunkedForest.ts +443 -0
- package/src/feature-libraries/chunked-forest/codec/README.md +55 -0
- package/src/feature-libraries/chunked-forest/codec/chunkCodecUtilities.ts +183 -0
- package/src/feature-libraries/chunked-forest/codec/chunkDecoding.ts +274 -0
- package/src/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.ts +72 -0
- package/src/feature-libraries/chunked-forest/codec/chunkEncodingGeneric.ts +179 -0
- package/src/feature-libraries/chunked-forest/codec/codecs.ts +101 -0
- package/src/feature-libraries/chunked-forest/codec/compressedEncode.ts +486 -0
- package/src/feature-libraries/chunked-forest/codec/fieldBatch.ts +12 -0
- package/src/feature-libraries/chunked-forest/codec/format.ts +171 -0
- package/src/feature-libraries/chunked-forest/codec/formatGeneric.ts +63 -0
- package/src/feature-libraries/chunked-forest/codec/index.ts +8 -0
- package/src/feature-libraries/chunked-forest/codec/nodeShape.ts +148 -0
- package/src/feature-libraries/chunked-forest/codec/schemaBasedEncoding.ts +148 -0
- package/src/feature-libraries/chunked-forest/codec/uncompressedEncode.ts +65 -0
- package/src/feature-libraries/chunked-forest/emptyChunk.ts +114 -0
- package/src/feature-libraries/chunked-forest/index.ts +23 -0
- package/src/feature-libraries/chunked-forest/sequenceChunk.ts +62 -0
- package/src/feature-libraries/chunked-forest/uniformChunk.ts +524 -0
- package/src/feature-libraries/contextuallyTyped.ts +583 -0
- package/src/feature-libraries/default-schema/README.md +3 -0
- package/src/feature-libraries/default-schema/defaultEditBuilder.ts +428 -0
- package/src/feature-libraries/default-schema/defaultFieldKinds.ts +218 -0
- package/src/feature-libraries/default-schema/defaultSchema.ts +15 -0
- package/src/feature-libraries/default-schema/index.ts +28 -0
- package/src/feature-libraries/deltaUtils.ts +152 -0
- package/src/feature-libraries/detachedFieldIndexSummarizer.ts +68 -0
- package/src/feature-libraries/editableTreeBinder.ts +1018 -0
- package/src/feature-libraries/fieldGenerator.ts +49 -0
- package/src/feature-libraries/flex-tree/README.md +132 -0
- package/src/feature-libraries/flex-tree/context.ts +163 -0
- package/src/feature-libraries/flex-tree/flexTreeTypes.ts +1035 -0
- package/src/feature-libraries/flex-tree/index.ts +59 -0
- package/src/feature-libraries/flex-tree/lazyEntity.ts +152 -0
- package/src/feature-libraries/flex-tree/lazyField.ts +598 -0
- package/src/feature-libraries/flex-tree/lazyNode.ts +690 -0
- package/src/feature-libraries/flex-tree/navigation.ts +121 -0
- package/src/feature-libraries/flex-tree/nodeKeys.ts +51 -0
- package/src/feature-libraries/flex-tree/treeEvents.ts +117 -0
- package/src/feature-libraries/flex-tree/unboxed.ts +77 -0
- package/src/feature-libraries/flex-tree/utilities.ts +74 -0
- package/src/feature-libraries/forest-summary/codec.ts +50 -0
- package/src/feature-libraries/forest-summary/forestSummarizer.ts +176 -0
- package/src/feature-libraries/forest-summary/format.ts +21 -0
- package/src/feature-libraries/forest-summary/index.ts +6 -0
- package/src/feature-libraries/incrementalSummarizationUtils.ts +20 -0
- package/src/feature-libraries/index.ts +299 -0
- package/src/feature-libraries/mapTreeCursor.ts +75 -0
- package/src/feature-libraries/memoizedIdRangeAllocator.ts +120 -0
- package/src/feature-libraries/mitigatedChangeFamily.ts +71 -0
- package/src/feature-libraries/modular-schema/README.md +22 -0
- package/src/feature-libraries/modular-schema/comparison.ts +307 -0
- package/src/feature-libraries/modular-schema/crossFieldQueries.ts +85 -0
- package/src/feature-libraries/modular-schema/fieldChangeHandler.ts +226 -0
- package/src/feature-libraries/modular-schema/fieldKind.ts +149 -0
- package/src/feature-libraries/modular-schema/genericFieldKind.ts +231 -0
- package/src/feature-libraries/modular-schema/genericFieldKindCodecs.ts +39 -0
- package/src/feature-libraries/modular-schema/genericFieldKindFormat.ts +45 -0
- package/src/feature-libraries/modular-schema/genericFieldKindTypes.ts +25 -0
- package/src/feature-libraries/modular-schema/index.ts +65 -0
- package/src/feature-libraries/modular-schema/modularChangeCodecs.ts +284 -0
- package/src/feature-libraries/modular-schema/modularChangeFamily.ts +1359 -0
- package/src/feature-libraries/modular-schema/modularChangeFormat.ts +147 -0
- package/src/feature-libraries/modular-schema/modularChangeTypes.ts +85 -0
- package/src/feature-libraries/multiplicity.ts +54 -0
- package/src/feature-libraries/node-key/README.md +11 -0
- package/src/feature-libraries/node-key/index.ts +16 -0
- package/src/feature-libraries/node-key/nodeKey.ts +58 -0
- package/src/feature-libraries/node-key/nodeKeyIndex.ts +125 -0
- package/src/feature-libraries/node-key/nodeKeyManager.ts +107 -0
- package/src/feature-libraries/object-forest/README.md +7 -0
- package/src/feature-libraries/object-forest/index.ts +6 -0
- package/src/feature-libraries/object-forest/objectForest.ts +505 -0
- package/src/feature-libraries/optional-field/README.md +3 -0
- package/src/feature-libraries/optional-field/index.ts +13 -0
- package/src/feature-libraries/optional-field/optionalField.ts +619 -0
- package/src/feature-libraries/optional-field/optionalFieldChangeFormat.ts +40 -0
- package/src/feature-libraries/optional-field/optionalFieldChangeTypes.ts +59 -0
- package/src/feature-libraries/optional-field/optionalFieldCodecs.ts +114 -0
- package/src/feature-libraries/schema-aware/README.md +19 -0
- package/src/feature-libraries/schema-aware/index.ts +17 -0
- package/src/feature-libraries/schema-aware/schemaAware.ts +123 -0
- package/src/feature-libraries/schema-edits/index.ts +8 -0
- package/src/feature-libraries/schema-edits/schemaChangeCodecs.ts +32 -0
- package/src/feature-libraries/schema-edits/schemaChangeFormat.ts +14 -0
- package/src/feature-libraries/schema-edits/schemaChangeTypes.ts +16 -0
- package/src/feature-libraries/schema-index/codec.ts +68 -0
- package/src/feature-libraries/schema-index/format.ts +45 -0
- package/src/feature-libraries/schema-index/index.ts +8 -0
- package/src/feature-libraries/schema-index/schemaSummarizer.ts +138 -0
- package/src/feature-libraries/schemaBuilder.ts +44 -0
- package/src/feature-libraries/schemaBuilderBase.ts +425 -0
- package/src/feature-libraries/sequence-field/README.md +6 -0
- package/src/feature-libraries/sequence-field/compose.ts +745 -0
- package/src/feature-libraries/sequence-field/format.ts +146 -0
- package/src/feature-libraries/sequence-field/helperTypes.ts +57 -0
- package/src/feature-libraries/sequence-field/index.ts +56 -0
- package/src/feature-libraries/sequence-field/invert.ts +370 -0
- package/src/feature-libraries/sequence-field/markListFactory.ts +55 -0
- package/src/feature-libraries/sequence-field/markQueue.ts +90 -0
- package/src/feature-libraries/sequence-field/moveEffectTable.ts +500 -0
- package/src/feature-libraries/sequence-field/prune.ts +28 -0
- package/src/feature-libraries/sequence-field/rebase.ts +1058 -0
- package/src/feature-libraries/sequence-field/relevantRemovedRoots.ts +58 -0
- package/src/feature-libraries/sequence-field/sequenceFieldChangeHandler.ts +24 -0
- package/src/feature-libraries/sequence-field/sequenceFieldChangeRebaser.ts +21 -0
- package/src/feature-libraries/sequence-field/sequenceFieldCodecs.ts +280 -0
- package/src/feature-libraries/sequence-field/sequenceFieldEditor.ts +181 -0
- package/src/feature-libraries/sequence-field/sequenceFieldToDelta.ts +198 -0
- package/src/feature-libraries/sequence-field/types.ts +210 -0
- package/src/feature-libraries/sequence-field/utils.ts +1238 -0
- package/src/feature-libraries/storedToViewSchema.ts +105 -0
- package/src/feature-libraries/treeCompressionUtils.ts +23 -0
- package/src/feature-libraries/treeCursorUtils.ts +489 -0
- package/src/feature-libraries/treeTextCursor.ts +125 -0
- package/src/feature-libraries/typed-schema/README.md +6 -0
- package/src/feature-libraries/typed-schema/flexList.ts +167 -0
- package/src/feature-libraries/typed-schema/index.ts +51 -0
- package/src/feature-libraries/typed-schema/internal.ts +10 -0
- package/src/feature-libraries/typed-schema/schemaCollection.ts +309 -0
- package/src/feature-libraries/typed-schema/typeUtils.ts +39 -0
- package/src/feature-libraries/typed-schema/typedTreeSchema.ts +594 -0
- package/src/feature-libraries/typed-schema/view.ts +157 -0
- package/src/feature-libraries/utils.ts +35 -0
- package/src/feature-libraries/valueUtilities.ts +93 -0
- package/src/feature-libraries/versioned/codec.ts +62 -0
- package/src/feature-libraries/versioned/format.ts +11 -0
- package/src/feature-libraries/versioned/index.ts +7 -0
- package/src/index.ts +341 -0
- package/src/internal.ts +17 -0
- package/src/shared-tree/README.md +10 -0
- package/src/shared-tree/index.ts +34 -0
- package/src/shared-tree/schematizedTree.ts +272 -0
- package/src/shared-tree/sharedTree.ts +443 -0
- package/src/shared-tree/sharedTreeChangeCodecs.ts +79 -0
- package/src/shared-tree/sharedTreeChangeFamily.ts +170 -0
- package/src/shared-tree/sharedTreeChangeFormat.ts +18 -0
- package/src/shared-tree/sharedTreeChangeTypes.ts +24 -0
- package/src/shared-tree/sharedTreeEditBuilder.ts +70 -0
- package/src/shared-tree/treeCheckout.ts +451 -0
- package/src/shared-tree/treeView.ts +107 -0
- package/src/shared-tree-core/README.md +19 -0
- package/src/shared-tree-core/branch.ts +612 -0
- package/src/shared-tree-core/editManager.ts +655 -0
- package/src/shared-tree-core/editManagerCodecs.ts +63 -0
- package/src/shared-tree-core/editManagerFormat.ts +119 -0
- package/src/shared-tree-core/editManagerSummarizer.ts +103 -0
- package/src/shared-tree-core/index.ts +32 -0
- package/src/shared-tree-core/messageCodecs.ts +43 -0
- package/src/shared-tree-core/messageFormat.ts +33 -0
- package/src/shared-tree-core/messageTypes.ts +11 -0
- package/src/shared-tree-core/revisionTagCodecs.ts +16 -0
- package/src/shared-tree-core/sharedTreeCore.ts +365 -0
- package/src/shared-tree-core/transactionStack.ts +46 -0
- package/src/simple-tree/README.md +3 -0
- package/src/simple-tree/flexNode.ts +88 -0
- package/src/simple-tree/index.ts +30 -0
- package/src/simple-tree/insertable.ts +106 -0
- package/src/simple-tree/objectFactory.ts +46 -0
- package/src/simple-tree/proxies.ts +1165 -0
- package/src/simple-tree/rawNode.ts +276 -0
- package/src/simple-tree/toMapTree.ts +464 -0
- package/src/simple-tree/treeListNode.ts +81 -0
- package/src/simple-tree/types.ts +346 -0
- package/src/treeFactory.ts +149 -0
- package/src/util/README.md +9 -0
- package/src/util/brand.ts +248 -0
- package/src/util/brandedMap.ts +73 -0
- package/src/util/idAllocator.ts +52 -0
- package/src/util/index.ts +131 -0
- package/src/util/nestedMap.ts +297 -0
- package/src/util/nestedSet.ts +24 -0
- package/src/util/offsetList.ts +45 -0
- package/src/util/rangeMap.ts +149 -0
- package/src/util/referenceCounting.ts +51 -0
- package/src/util/stackyIterator.ts +53 -0
- package/src/util/transactionResult.ts +20 -0
- package/src/util/typeCheck.ts +208 -0
- package/src/util/typeCheckTests.ts +237 -0
- package/src/util/typeUtils.ts +168 -0
- package/src/util/utils.ts +538 -0
- package/tsconfig.esnext.json +7 -0
- package/tsconfig.json +17 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/feature-libraries/sequence-field/utils.ts"],"names":[],"mappings":"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","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { assert, unreachableCase } from \"@fluidframework/core-utils\";\nimport {\n\tChangeAtomId,\n\tChangesetLocalId,\n\tRevisionMetadataSource,\n\tRevisionTag,\n\tTaggedChange,\n\tareEqualChangeAtomIds,\n} from \"../../core\";\nimport { brand, fail, getFromRangeMap, getOrAddEmptyToMap, RangeMap } from \"../../util\";\nimport {\n\taddCrossFieldQuery,\n\tCrossFieldManager,\n\tCrossFieldQuerySet,\n\tCrossFieldTarget,\n\tgetIntention,\n\tsetInCrossFieldMap,\n} from \"../modular-schema\";\nimport {\n\tAttach,\n\tDetach,\n\tHasRevisionTag,\n\tInsert,\n\tLineageEvent,\n\tMark,\n\tMoveIn,\n\tMoveOut,\n\tNoopMark,\n\tChangeset,\n\tMoveId,\n\tDelete,\n\tNoopMarkType,\n\tHasMarkFields,\n\tCellId,\n\tCellMark,\n\tAttachAndDetach,\n\tMarkEffect,\n\tRedetachFields,\n\tIdRange,\n} from \"./types\";\nimport { MarkListFactory } from \"./markListFactory\";\nimport { isMoveMark, MoveEffectTable } from \"./moveEffectTable\";\nimport {\n\tEmptyInputCellMark,\n\tDetachedCellMark,\n\tMoveMarkEffect,\n\tDetachOfRemovedNodes,\n\tCellRename,\n\tVestigialEndpoint,\n\tisVestigialEndpoint,\n} from \"./helperTypes\";\n\nexport function isEmpty<T>(change: Changeset<T>): boolean {\n\treturn change.length === 0;\n}\n\nexport function isNewAttach(mark: Mark<unknown>, revision?: RevisionTag): boolean {\n\treturn isNewAttachEffect(mark, mark.cellId, revision);\n}\n\nexport function isNewAttachEffect(\n\teffect: MarkEffect,\n\tcellId: CellId | undefined,\n\trevision?: RevisionTag,\n): boolean {\n\treturn (\n\t\t(isAttach(effect) &&\n\t\t\tcellId !== undefined &&\n\t\t\t(effect.revision ?? revision) === (cellId.revision ?? revision)) ||\n\t\t(isAttachAndDetachEffect(effect) && isNewAttachEffect(effect.attach, cellId, revision))\n\t);\n}\n\nexport function isInsert(mark: MarkEffect): mark is Insert {\n\treturn mark.type === \"Insert\";\n}\n\nexport function isAttach(effect: MarkEffect): effect is Attach {\n\treturn effect.type === \"Insert\" || effect.type === \"MoveIn\";\n}\n\nexport function isReattach(mark: Mark<unknown>): boolean {\n\treturn isReattachEffect(mark, mark.cellId);\n}\n\nexport function isReattachEffect(effect: MarkEffect, cellId: CellId | undefined): boolean {\n\treturn isAttach(effect) && !isNewAttachEffect(effect, cellId);\n}\n\nexport function isActiveReattach<T>(\n\tmark: Mark<T>,\n): mark is CellMark<Insert, T> & { conflictsWith?: undefined } {\n\treturn isAttach(mark) && isReattachEffect(mark, mark.cellId) && mark.cellId !== undefined;\n}\n\nexport function areEqualCellIds(a: CellId | undefined, b: CellId | undefined): boolean {\n\tif (a === undefined || b === undefined) {\n\t\treturn a === b;\n\t}\n\treturn areEqualChangeAtomIds(a, b) && areSameLineage(a.lineage, b.lineage);\n}\n\nexport function getInputCellId(\n\tmark: Mark<unknown>,\n\trevision: RevisionTag | undefined,\n\tmetadata: RevisionMetadataSource | undefined,\n): CellId | undefined {\n\tconst cellId = mark.cellId;\n\tif (cellId === undefined) {\n\t\treturn undefined;\n\t}\n\n\tif (cellId.revision !== undefined) {\n\t\treturn cellId;\n\t}\n\n\tlet markRevision: RevisionTag | undefined;\n\tif (isAttachAndDetachEffect(mark)) {\n\t\tmarkRevision = mark.attach.revision;\n\t} else if (!isNoopMark(mark)) {\n\t\tmarkRevision = mark.revision;\n\t}\n\n\treturn {\n\t\t...cellId,\n\t\trevision: getIntentionIfMetadataProvided(markRevision ?? revision, metadata),\n\t};\n}\n\nexport function getOutputCellId(\n\tmark: Mark<unknown>,\n\trevision: RevisionTag | undefined,\n\tmetadata: RevisionMetadataSource | undefined,\n): CellId | undefined {\n\tif (isDetach(mark)) {\n\t\treturn getDetachOutputId(mark, revision, metadata);\n\t} else if (markFillsCells(mark)) {\n\t\treturn undefined;\n\t} else if (isAttachAndDetachEffect(mark)) {\n\t\treturn getDetachOutputId(mark.detach, revision, metadata);\n\t}\n\n\treturn getInputCellId(mark, revision, metadata);\n}\n\nexport function getDetachOutputId(\n\tmark: Detach,\n\trevision: RevisionTag | undefined,\n\tmetadata: RevisionMetadataSource | undefined,\n): ChangeAtomId {\n\treturn (\n\t\tmark.redetachId ?? {\n\t\t\trevision: getIntentionIfMetadataProvided(mark.revision ?? revision, metadata),\n\t\t\tlocalId: mark.id,\n\t\t}\n\t);\n}\n\nfunction getIntentionIfMetadataProvided(\n\trevision: RevisionTag | undefined,\n\tmetadata: RevisionMetadataSource | undefined,\n): RevisionTag | undefined {\n\treturn metadata === undefined ? revision : getIntention(revision, metadata);\n}\n\n/**\n * Preserves the semantics of the given `mark` but repackages it into a `DetachOfRemovedNodes` when possible.\n */\nexport function normalizeCellRename<TNodeChange>(\n\tmark: CellMark<AttachAndDetach, TNodeChange>,\n\tnodeChange?: TNodeChange,\n): CellMark<AttachAndDetach | DetachOfRemovedNodes, TNodeChange> {\n\tassert(mark.cellId !== undefined, 0x823 /* AttachAndDetach marks should have a cell ID */);\n\tif (mark.attach.type !== \"Insert\" || isNewAttachEffect(mark.attach, mark.cellId)) {\n\t\treturn withNodeChange(mark, nodeChange);\n\t}\n\t// Normalization: when the attach is a revive, we rely on the implicit reviving semantics of the\n\t// detach instead of using an explicit revive effect in an AttachAndDetach mark.\n\treturn withNodeChange(\n\t\t{\n\t\t\t...mark.detach,\n\t\t\tcount: mark.count,\n\t\t\tcellId: mark.cellId,\n\t\t},\n\t\tnodeChange ?? mark.changes,\n\t);\n}\n\n/**\n * Preserves the semantics of the given `mark` but repackages it into an `AttachAndDetach` mark if it is not already one.\n */\nexport function asAttachAndDetach<TNodeChange>(\n\tmark: CellMark<CellRename, TNodeChange>,\n): CellMark<AttachAndDetach, TNodeChange> {\n\tif (mark.type === \"AttachAndDetach\") {\n\t\treturn mark;\n\t}\n\tconst { cellId, count, changes, revision, ...effect } = mark;\n\tconst attachAndDetach: CellMark<AttachAndDetach | Detach, TNodeChange> = {\n\t\ttype: \"AttachAndDetach\",\n\t\tcount,\n\t\tcellId,\n\t\tattach: {\n\t\t\ttype: \"Insert\",\n\t\t\tid: mark.id,\n\t\t},\n\t\tdetach: effect,\n\t};\n\tif (changes !== undefined) {\n\t\tattachAndDetach.changes = changes;\n\t}\n\tif (revision !== undefined) {\n\t\tattachAndDetach.attach.revision = revision;\n\t\tattachAndDetach.detach.revision = revision;\n\t}\n\treturn attachAndDetach;\n}\n\nexport function cloneMark<TMark extends Mark<TNodeChange>, TNodeChange>(mark: TMark): TMark {\n\tconst clone: TMark = { ...cloneMarkEffect(mark), count: mark.count };\n\n\tif (mark.cellId !== undefined) {\n\t\tclone.cellId = cloneCellId(mark.cellId);\n\t}\n\treturn clone;\n}\n\nexport function cloneMarkEffect<TEffect extends MarkEffect>(effect: TEffect): TEffect {\n\tconst clone = { ...effect };\n\tif (clone.type === \"AttachAndDetach\") {\n\t\tclone.attach = cloneMarkEffect(clone.attach);\n\t\tclone.detach = cloneMarkEffect(clone.detach);\n\t}\n\treturn clone;\n}\n\nexport function cloneCellId(id: CellId): CellId {\n\tconst cloned = { ...id };\n\tif (cloned.lineage !== undefined) {\n\t\tcloned.lineage = [...cloned.lineage];\n\t}\n\treturn cloned;\n}\n\nfunction areSameLineage(\n\tlineage1: LineageEvent[] | undefined,\n\tlineage2: LineageEvent[] | undefined,\n): boolean {\n\tif (lineage1 === undefined && lineage2 === undefined) {\n\t\treturn true;\n\t}\n\n\tif (lineage1 === undefined || lineage2 === undefined) {\n\t\treturn false;\n\t}\n\n\tif (lineage1.length !== lineage2.length) {\n\t\treturn false;\n\t}\n\n\tfor (let i = 0; i < lineage1.length; i++) {\n\t\tconst event1 = lineage1[i];\n\t\tconst event2 = lineage2[i];\n\t\tif (event1.revision !== event2.revision || event1.offset !== event2.offset) {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\treturn true;\n}\n\n/**\n * @param mark - The mark to get the length of.\n * @param ignorePairing - When true, the length of a paired mark (e.g. MoveIn/MoveOut) whose matching mark is not active\n * will be treated the same as if the matching mark were active.\n * @returns The number of nodes within the output context of the mark.\n */\nexport function getOutputLength(mark: Mark<unknown>, ignorePairing: boolean = false): number {\n\treturn areOutputCellsEmpty(mark) ? 0 : mark.count;\n}\n\n/**\n * @param mark - The mark to get the length of.\n * @returns The number of nodes within the input context of the mark.\n */\nexport function getInputLength(mark: Mark<unknown>): number {\n\treturn areInputCellsEmpty(mark) ? 0 : mark.count;\n}\n\nexport function markEmptiesCells(mark: Mark<unknown>): boolean {\n\treturn !areInputCellsEmpty(mark) && areOutputCellsEmpty(mark);\n}\n\nexport function markFillsCells(mark: Mark<unknown>): boolean {\n\treturn areInputCellsEmpty(mark) && !areOutputCellsEmpty(mark);\n}\n\nexport function markHasCellEffect(mark: Mark<unknown>): boolean {\n\treturn areInputCellsEmpty(mark) !== areOutputCellsEmpty(mark);\n}\n\nexport function isAttachAndDetachEffect(effect: MarkEffect): effect is AttachAndDetach {\n\treturn effect.type === \"AttachAndDetach\";\n}\n\nexport function isDetachOfRemovedNodes(\n\tmark: Mark<unknown>,\n): mark is CellMark<DetachOfRemovedNodes, unknown> {\n\treturn isDetach(mark) && mark.cellId !== undefined;\n}\n\nexport function isImpactfulCellRename(\n\tmark: Mark<unknown>,\n\trevision: RevisionTag | undefined,\n\trevisionMetadata: RevisionMetadataSource,\n): mark is CellMark<CellRename, unknown> {\n\treturn (\n\t\t(isAttachAndDetachEffect(mark) || isDetachOfRemovedNodes(mark)) &&\n\t\tisImpactful(mark, revision, revisionMetadata)\n\t);\n}\n\nexport function areInputCellsEmpty<T>(mark: Mark<T>): mark is EmptyInputCellMark<T> {\n\treturn mark.cellId !== undefined;\n}\n\nexport function areOutputCellsEmpty(mark: Mark<unknown>): boolean {\n\tconst type = mark.type;\n\tswitch (type) {\n\t\tcase NoopMarkType:\n\t\t\treturn mark.cellId !== undefined;\n\t\tcase \"Delete\":\n\t\tcase \"MoveOut\":\n\t\tcase \"AttachAndDetach\":\n\t\t\treturn true;\n\t\tcase \"MoveIn\":\n\t\tcase \"Insert\":\n\t\t\treturn false;\n\t\tdefault:\n\t\t\tunreachableCase(type);\n\t}\n}\n\n/**\n * Creates a mark that is equivalent to the given `mark` but with effects removed if those have no impact in the input\n * context of that mark.\n *\n * @param mark - The mark to settle. Never mutated.\n * @param revision - The revision associated with the mark.\n * @param revisionMetadata - Metadata source for the revision associated with the mark.\n * @returns either the original mark or a shallow clone of it with effects stripped out.\n */\nexport function settleMark<TChildChange>(\n\tmark: Mark<TChildChange>,\n\trevision: RevisionTag | undefined,\n\trevisionMetadata: RevisionMetadataSource,\n): Mark<TChildChange> {\n\tif (isImpactful(mark, revision, revisionMetadata)) {\n\t\treturn mark;\n\t}\n\treturn omitMarkEffect(mark);\n}\n\n/**\n * @returns true, iff the given `mark` would have impact on the field when applied.\n * Ignores the impact of nested changes.\n * CellRename effects are considered impactful if they actually change the ID of the cells.\n */\nexport function isImpactful(\n\tmark: Mark<unknown>,\n\trevision: RevisionTag | undefined,\n\trevisionMetadata: RevisionMetadataSource,\n): boolean {\n\tconst type = mark.type;\n\tswitch (type) {\n\t\tcase NoopMarkType:\n\t\t\treturn false;\n\t\tcase \"Delete\": {\n\t\t\tconst inputId = getInputCellId(mark, revision, revisionMetadata);\n\t\t\tif (inputId === undefined) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\tconst outputId = getOutputCellId(mark, revision, revisionMetadata);\n\t\t\tassert(outputId !== undefined, 0x824 /* Delete marks must have an output cell ID */);\n\t\t\treturn !areEqualChangeAtomIds(inputId, outputId);\n\t\t}\n\t\tcase \"AttachAndDetach\":\n\t\tcase \"MoveOut\":\n\t\t\treturn true;\n\t\tcase \"MoveIn\":\n\t\t\t// MoveIn marks always target an empty cell.\n\t\t\tassert(mark.cellId !== undefined, 0x825 /* MoveIn marks should target empty cells */);\n\t\t\treturn true;\n\t\tcase \"Insert\":\n\t\t\t// A Revive has no impact if the nodes are already in the document.\n\t\t\treturn mark.cellId !== undefined;\n\t\tdefault:\n\t\t\tunreachableCase(type);\n\t}\n}\n\nexport function isNoopMark<T>(mark: Mark<T>): mark is CellMark<NoopMark, T> {\n\treturn mark.type === NoopMarkType;\n}\n\n/**\n * @returns The number of cells in the range which come before the position described by `lineage`.\n */\nexport function getOffsetInCellRange(\n\tlineage: LineageEvent[] | undefined,\n\trevision: RevisionTag | undefined,\n\tid: ChangesetLocalId,\n\tcount: number,\n): number | undefined {\n\tif (lineage === undefined || revision === undefined) {\n\t\treturn undefined;\n\t}\n\n\tfor (const event of lineage) {\n\t\tif (\n\t\t\tevent.revision === revision &&\n\t\t\tareOverlappingIdRanges(id, count, event.id, event.count)\n\t\t) {\n\t\t\treturn (event.id as number) + event.offset - id;\n\t\t}\n\t}\n\n\treturn undefined;\n}\n\nexport function areOverlappingIdRanges(\n\tid1: ChangesetLocalId,\n\tcount1: number,\n\tid2: ChangesetLocalId,\n\tcount2: number,\n): boolean {\n\tconst lastId1 = (id1 as number) + count1 - 1;\n\tconst lastId2 = (id2 as number) + count2 - 1;\n\treturn (id2 <= id1 && id1 <= lastId2) || (id1 <= id2 && id2 <= lastId1);\n}\n\nexport function compareCellsFromSameRevision(\n\tcell1: CellId,\n\tcount1: number,\n\tcell2: CellId,\n\tcount2: number,\n): number | undefined {\n\tassert(cell1.revision === cell2.revision, 0x85b /* Expected cells to have the same revision */);\n\tif (areOverlappingIdRanges(cell1.localId, count1, cell2.localId, count2)) {\n\t\treturn cell1.localId - cell2.localId;\n\t}\n\n\t// Both cells should have the same `adjacentCells`.\n\tconst adjacentCells = cell1.adjacentCells;\n\tif (adjacentCells !== undefined) {\n\t\treturn (\n\t\t\tgetPositionAmongAdjacentCells(adjacentCells, cell1.localId) -\n\t\t\tgetPositionAmongAdjacentCells(adjacentCells, cell2.localId)\n\t\t);\n\t}\n\n\treturn undefined;\n}\n\nfunction getPositionAmongAdjacentCells(adjacentCells: IdRange[], id: ChangesetLocalId): number {\n\tlet priorCells = 0;\n\tfor (const range of adjacentCells) {\n\t\tif (areOverlappingIdRanges(range.id, range.count, id, 1)) {\n\t\t\treturn priorCells + (id - range.id);\n\t\t}\n\n\t\tpriorCells += range.count;\n\t}\n\n\tfail(\"Could not find id in adjacentCells\");\n}\n\nexport function isDetach(mark: MarkEffect | undefined): mark is Detach {\n\tconst type = mark?.type;\n\treturn type === \"Delete\" || type === \"MoveOut\";\n}\n\nexport function isDeleteMark<TNodeChange>(\n\tmark: Mark<TNodeChange> | undefined,\n): mark is CellMark<Delete, TNodeChange> {\n\treturn mark?.type === \"Delete\";\n}\n\nfunction areMergeableChangeAtoms(\n\tlhs: ChangeAtomId | undefined,\n\tlhsCount: number,\n\trhs: ChangeAtomId | undefined,\n): boolean {\n\tif (lhs === undefined || rhs === undefined) {\n\t\treturn lhs === undefined && rhs === undefined;\n\t}\n\n\treturn lhs.revision === rhs.revision && areAdjacentIdRanges(lhs.localId, lhsCount, rhs.localId);\n}\n\nfunction areAdjacentIdRanges(\n\tfirstStart: ChangesetLocalId,\n\tfirstLength: number,\n\tsecondStart: ChangesetLocalId,\n): boolean {\n\treturn (firstStart as number) + firstLength === secondStart;\n}\n\nfunction haveMergeableIdOverrides(\n\tlhs: RedetachFields,\n\tlhsCount: number,\n\trhs: RedetachFields,\n): boolean {\n\treturn areMergeableChangeAtoms(lhs.redetachId, lhsCount, rhs.redetachId);\n}\n\nfunction areMergeableCellIds(\n\tlhs: CellId | undefined,\n\tlhsCount: number,\n\trhs: CellId | undefined,\n): boolean {\n\treturn (\n\t\tareMergeableChangeAtoms(lhs, lhsCount, rhs) && areSameLineage(lhs?.lineage, rhs?.lineage)\n\t);\n}\n\n/**\n * Attempts to extend `lhs` to include the effects of `rhs`.\n * @param lhs - The mark to extend.\n * @param rhs - The effect so extend `rhs` with.\n * @returns `lhs` iff the function was able to mutate `lhs` to include the effects of `rhs`.\n * When `undefined` is returned, `lhs` is left untouched.\n */\nexport function tryMergeMarks<T>(\n\tlhs: Mark<T> & Partial<VestigialEndpoint>,\n\trhs: Readonly<Mark<T> & Partial<VestigialEndpoint>>,\n): (Mark<T> & Partial<VestigialEndpoint>) | undefined {\n\tif (rhs.type !== lhs.type) {\n\t\treturn undefined;\n\t}\n\n\tif (!areMergeableCellIds(lhs.cellId, lhs.count, rhs.cellId)) {\n\t\treturn undefined;\n\t}\n\n\tif (rhs.changes !== undefined || lhs.changes !== undefined) {\n\t\treturn undefined;\n\t}\n\n\tif (isVestigialEndpoint(lhs)) {\n\t\tif (isVestigialEndpoint(rhs)) {\n\t\t\tif (!areMergeableChangeAtoms(lhs.vestigialEndpoint, lhs.count, rhs.vestigialEndpoint)) {\n\t\t\t\treturn undefined;\n\t\t\t}\n\t\t} else {\n\t\t\treturn undefined;\n\t\t}\n\t} else if (isVestigialEndpoint(rhs)) {\n\t\treturn undefined;\n\t}\n\n\tconst mergedEffect = tryMergeEffects(lhs, rhs, lhs.count);\n\tif (mergedEffect === undefined) {\n\t\treturn undefined;\n\t}\n\n\treturn { ...lhs, ...mergedEffect, count: lhs.count + rhs.count };\n}\n\nfunction tryMergeEffects(\n\tlhs: MarkEffect,\n\trhs: MarkEffect,\n\tlhsCount: number,\n): MarkEffect | undefined {\n\tif (lhs.type !== rhs.type) {\n\t\treturn undefined;\n\t}\n\n\tif (rhs.type === NoopMarkType) {\n\t\treturn lhs;\n\t}\n\n\tif (rhs.type === \"AttachAndDetach\") {\n\t\tconst lhsAttachAndDetach = lhs as AttachAndDetach;\n\t\tconst attach = tryMergeEffects(lhsAttachAndDetach.attach, rhs.attach, lhsCount);\n\t\tconst detach = tryMergeEffects(lhsAttachAndDetach.detach, rhs.detach, lhsCount);\n\t\tif (attach === undefined || detach === undefined) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tassert(\n\t\t\tisAttach(attach) && isDetach(detach),\n\t\t\t0x826 /* Merged marks should be same type as input marks */,\n\t\t);\n\t\treturn { ...lhsAttachAndDetach, attach, detach };\n\t}\n\n\tif ((lhs as HasRevisionTag).revision !== rhs.revision) {\n\t\treturn undefined;\n\t}\n\n\tif (\n\t\tisDetach(lhs) &&\n\t\tisDetach(rhs) &&\n\t\t!areMergeableCellIds(lhs.redetachId, lhsCount, rhs.redetachId)\n\t) {\n\t\treturn undefined;\n\t}\n\n\tconst type = rhs.type;\n\tswitch (type) {\n\t\tcase \"MoveIn\": {\n\t\t\tconst lhsMoveIn = lhs as MoveIn;\n\t\t\tif (\n\t\t\t\t(lhsMoveIn.id as number) + lhsCount === rhs.id &&\n\t\t\t\tareMergeableChangeAtoms(lhsMoveIn.finalEndpoint, lhsCount, rhs.finalEndpoint)\n\t\t\t) {\n\t\t\t\treturn lhsMoveIn;\n\t\t\t}\n\t\t\tbreak;\n\t\t}\n\t\tcase \"Delete\": {\n\t\t\tconst lhsDetach = lhs as Delete;\n\t\t\tif (\n\t\t\t\t(lhsDetach.id as number) + lhsCount === rhs.id &&\n\t\t\t\thaveMergeableIdOverrides(lhsDetach, lhsCount, rhs)\n\t\t\t) {\n\t\t\t\treturn lhsDetach;\n\t\t\t}\n\t\t\tbreak;\n\t\t}\n\t\tcase \"MoveOut\": {\n\t\t\tconst lhsMoveOut = lhs as MoveOut;\n\t\t\tif (\n\t\t\t\t(lhsMoveOut.id as number) + lhsCount === rhs.id &&\n\t\t\t\thaveMergeableIdOverrides(lhsMoveOut, lhsCount, rhs) &&\n\t\t\t\tareMergeableChangeAtoms(lhsMoveOut.finalEndpoint, lhsCount, rhs.finalEndpoint)\n\t\t\t) {\n\t\t\t\treturn lhsMoveOut;\n\t\t\t}\n\t\t\tbreak;\n\t\t}\n\t\tcase \"Insert\": {\n\t\t\tconst lhsInsert = lhs as Insert;\n\t\t\tif ((lhsInsert.id as number) + lhsCount === rhs.id) {\n\t\t\t\treturn lhsInsert;\n\t\t\t}\n\t\t\tbreak;\n\t\t}\n\t\tdefault:\n\t\t\tunreachableCase(type);\n\t}\n\n\treturn undefined;\n}\n\n/**\n * Keeps track of the different ways detached nodes may be referred to.\n * Allows updating changesets so they refer to a detached node by the details\n * of the last detach that affected them.\n *\n * WARNING: this code consumes O(N) space and time for marks that affect N nodes.\n * This is code is currently meant for usage in tests.\n * It should be tested and made more efficient before production use.\n */\nexport class DetachedNodeTracker {\n\t// Maps the index for a node to its last characterization as a reattached node.\n\tprivate nodes: Map<number, CellId> = new Map();\n\tprivate readonly equivalences: { old: CellId; new: CellId }[] = [];\n\n\tpublic constructor() {}\n\n\t/**\n\t * Updates the internals of this instance to account for `change` having been applied.\n\t * @param change - The change that is being applied. Not mutated.\n\t * Must be applicable (i.e., `isApplicable(change)` must be true).\n\t */\n\tpublic apply(change: TaggedChange<Changeset<unknown>>): void {\n\t\tlet index = 0;\n\t\tfor (const mark of change.change) {\n\t\t\tconst inputLength: number = getInputLength(mark);\n\t\t\tif (markEmptiesCells(mark)) {\n\t\t\t\tassert(isDetach(mark), 0x70d /* Only detach marks should empty cells */);\n\t\t\t\tconst newNodes: Map<number, CellId> = new Map();\n\t\t\t\tconst after = index + inputLength;\n\t\t\t\tfor (const [k, v] of this.nodes) {\n\t\t\t\t\tif (k >= index) {\n\t\t\t\t\t\tif (k >= after) {\n\t\t\t\t\t\t\tnewNodes.set(k - inputLength, v);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t// The node is removed\n\t\t\t\t\t\t\tthis.equivalences.push({\n\t\t\t\t\t\t\t\told: v,\n\t\t\t\t\t\t\t\tnew: {\n\t\t\t\t\t\t\t\t\trevision:\n\t\t\t\t\t\t\t\t\t\tchange.rollbackOf ??\n\t\t\t\t\t\t\t\t\t\tmark.revision ??\n\t\t\t\t\t\t\t\t\t\tchange.revision ??\n\t\t\t\t\t\t\t\t\t\tfail(\"Unable to track detached nodes\"),\n\t\t\t\t\t\t\t\t\tlocalId: brand((mark.id as number) + (k - index)),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tnewNodes.set(k, v);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tthis.nodes = newNodes;\n\t\t\t}\n\t\t\tindex += inputLength;\n\t\t}\n\t\tindex = 0;\n\t\tfor (const mark of change.change) {\n\t\t\tconst inputLength: number = getInputLength(mark);\n\t\t\tif (isActiveReattach(mark)) {\n\t\t\t\tconst newNodes: Map<number, CellId> = new Map();\n\t\t\t\tfor (const [k, v] of this.nodes) {\n\t\t\t\t\tif (k >= index) {\n\t\t\t\t\t\tnewNodes.set(k + inputLength, v);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tnewNodes.set(k, v);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tconst detachEvent = mark.cellId ?? fail(\"Unable to track detached nodes\");\n\t\t\t\tfor (let i = 0; i < mark.count; ++i) {\n\t\t\t\t\tnewNodes.set(index + i, {\n\t\t\t\t\t\trevision: detachEvent.revision,\n\t\t\t\t\t\tlocalId: brand((detachEvent.localId as number) + i),\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\tthis.nodes = newNodes;\n\t\t\t}\n\t\t\tif (!markEmptiesCells(mark)) {\n\t\t\t\tindex += inputLength;\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Checks whether the given `change` is applicable based on previous changes.\n\t * @param change - The change to verify the applicability of. Not mutated.\n\t * @returns false iff `change`'s description of detached nodes is inconsistent with that of changes applied\n\t * earlier. Returns true otherwise.\n\t */\n\tpublic isApplicable(change: Changeset<unknown>): boolean {\n\t\tfor (const mark of change) {\n\t\t\tif (isActiveReattach(mark)) {\n\t\t\t\tconst detachEvent = mark.cellId ?? fail(\"Unable to track detached nodes\");\n\t\t\t\tconst revision = detachEvent.revision;\n\t\t\t\tfor (let i = 0; i < mark.count; ++i) {\n\t\t\t\t\tconst localId = brand<ChangesetLocalId>((detachEvent.localId as number) + i);\n\t\t\t\t\tconst original: CellId = { revision, localId };\n\t\t\t\t\tconst updated = this.getUpdatedDetach(original);\n\t\t\t\t\tfor (const detached of this.nodes.values()) {\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\tupdated.revision === detached.revision &&\n\t\t\t\t\t\t\tupdated.localId === detached.localId\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t// The new change is attempting to reattach nodes in a location that has already been\n\t\t\t\t\t\t\t// filled by a prior reattach.\n\t\t\t\t\t\t\treturn false;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t}\n\n\t/**\n\t * Creates an updated representation of the given `change` so that it refers to detached nodes using the revision\n\t * that last detached them.\n\t * @param change - The change to update. Not mutated.\n\t * Must be applicable (i.e., `isApplicable(change)` must be true).\n\t * @param genId - An ID allocator that produces ID unique within this changeset.\n\t * @returns A change equivalent to `change` that refers to detached nodes using the revision that last detached\n\t * them. May reuse parts of the input `change` structure.\n\t */\n\tpublic update<T>(change: TaggedChange<Changeset<T>>): TaggedChange<Changeset<T>> {\n\t\tconst factory = new MarkListFactory<T>();\n\t\tfor (const mark of change.change) {\n\t\t\tconst cloned = cloneMark(mark);\n\t\t\tif (areInputCellsEmpty(cloned) && !isNewAttach(cloned)) {\n\t\t\t\tlet remainder = cloned;\n\t\t\t\twhile (remainder.count > 1) {\n\t\t\t\t\tconst [head, tail] = splitMark(remainder, 1);\n\t\t\t\t\tthis.updateMark(head);\n\t\t\t\t\tfactory.push(head);\n\t\t\t\t\tremainder = tail;\n\t\t\t\t}\n\t\t\t\tthis.updateMark(remainder);\n\t\t\t\tfactory.push(remainder);\n\t\t\t} else {\n\t\t\t\tfactory.push(cloned);\n\t\t\t}\n\t\t}\n\n\t\treturn {\n\t\t\t...change,\n\t\t\tchange: factory.list,\n\t\t};\n\t}\n\n\tprivate updateMark(mark: HasMarkFields & DetachedCellMark): void {\n\t\tconst detachEvent = mark.cellId;\n\t\tconst original = { revision: detachEvent.revision, localId: detachEvent.localId };\n\t\tconst updated = this.getUpdatedDetach(original);\n\t\tif (updated.revision !== original.revision || updated.localId !== original.localId) {\n\t\t\tmark.cellId = { ...updated };\n\t\t}\n\t}\n\n\tprivate getUpdatedDetach(detach: CellId): CellId {\n\t\tlet curr = detach;\n\t\tfor (const eq of this.equivalences) {\n\t\t\tif (curr.revision === eq.old.revision && curr.localId === eq.old.localId) {\n\t\t\t\tcurr = eq.new;\n\t\t\t}\n\t\t}\n\t\treturn curr;\n\t}\n}\n\n/**\n * Checks whether `branch` changeset is consistent with a `target` changeset that is may be rebased over.\n *\n * WARNING: this code consumes O(N) space and time for marks that affect N nodes.\n * This is code is currently meant for usage in tests.\n * It should be tested and made more efficient before production use.\n *\n * @param branch - The changeset that would be rebased over `target`.\n * @param target - The changeset that `branch` would be rebased over.\n * @returns false iff `branch`'s description of detached nodes is inconsistent with that of `target`.\n * Returns true otherwise.\n */\nexport function areRebasable(branch: Changeset<unknown>, target: Changeset<unknown>): boolean {\n\tconst indexToReattach: Map<number, string[]> = new Map();\n\tconst reattachToIndex: Map<string, number> = new Map();\n\tlet index = 0;\n\tfor (const mark of branch) {\n\t\tif (isActiveReattach(mark)) {\n\t\t\tconst list = getOrAddEmptyToMap(indexToReattach, index);\n\t\t\tfor (let i = 0; i < mark.count; ++i) {\n\t\t\t\tconst detachEvent = mark.cellId ?? fail(\"Unable to track detached nodes\");\n\t\t\t\tconst entry: CellId = {\n\t\t\t\t\t...detachEvent,\n\t\t\t\t\tlocalId: brand((detachEvent.localId as number) + i),\n\t\t\t\t};\n\t\t\t\tconst key = `${entry.revision}|${entry.localId}`;\n\t\t\t\tassert(\n\t\t\t\t\t!reattachToIndex.has(key),\n\t\t\t\t\t0x506 /* First changeset as inconsistent characterization of detached nodes */,\n\t\t\t\t);\n\t\t\t\tlist.push(key);\n\t\t\t\treattachToIndex.set(key, index);\n\t\t\t}\n\t\t}\n\t\tindex += getInputLength(mark);\n\t}\n\tindex = 0;\n\tlet listIndex = 0;\n\tfor (const mark of target) {\n\t\tif (isActiveReattach(mark)) {\n\t\t\tconst list = getOrAddEmptyToMap(indexToReattach, index);\n\t\t\tfor (let i = 0; i < mark.count; ++i) {\n\t\t\t\tconst detachEvent = mark.cellId ?? fail(\"Unable to track detached nodes\");\n\t\t\t\tconst entry: CellId = {\n\t\t\t\t\t...detachEvent,\n\t\t\t\t\tlocalId: brand((detachEvent.localId as number) + i),\n\t\t\t\t};\n\t\t\t\tconst key = `${entry.revision}|${entry.localId}`;\n\t\t\t\tconst indexInA = reattachToIndex.get(key);\n\t\t\t\tif (indexInA !== undefined && indexInA !== index) {\n\t\t\t\t\t// change b tries to reattach the same content as change a but in a different location\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\tif (list.includes(key)) {\n\t\t\t\t\twhile (list[listIndex] !== undefined && list[listIndex] !== key) {\n\t\t\t\t\t\t++listIndex;\n\t\t\t\t\t}\n\t\t\t\t\tif (list.slice(0, listIndex).includes(key)) {\n\t\t\t\t\t\t// change b tries to reattach the same content as change a but in a different order\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tconst inputLength = getInputLength(mark);\n\t\tif (inputLength > 0) {\n\t\t\tlistIndex = 0;\n\t\t}\n\t\tindex += inputLength;\n\t}\n\treturn true;\n}\n\n/**\n * Checks whether sequential changesets are consistent.\n *\n * WARNING: this code consumes O(N) space and time for marks that affect N nodes.\n * This is code is currently meant for usage in tests.\n * It should be tested and made more efficient before production use.\n *\n * @param changes - The changesets that would be composed together.\n * @returns false iff the changesets in `changes` are inconsistent/incompatible in their description of detached nodes.\n * Returns true otherwise.\n */\nexport function areComposable(changes: TaggedChange<Changeset<unknown>>[]): boolean {\n\tconst tracker = new DetachedNodeTracker();\n\tfor (const change of changes) {\n\t\tif (!tracker.isApplicable(change.change)) {\n\t\t\treturn false;\n\t\t}\n\t\ttracker.apply(change);\n\t}\n\treturn true;\n}\n\n/**\n * @internal\n */\nexport interface CrossFieldTable<T = unknown> extends CrossFieldManager<T> {\n\tsrcQueries: CrossFieldQuerySet;\n\tdstQueries: CrossFieldQuerySet;\n\tisInvalidated: boolean;\n\tmapSrc: Map<RevisionTag | undefined, RangeMap<T>>;\n\tmapDst: Map<RevisionTag | undefined, RangeMap<T>>;\n\treset: () => void;\n}\n\n/**\n * @internal\n */\nexport function newCrossFieldTable<T = unknown>(): CrossFieldTable<T> {\n\tconst srcQueries: CrossFieldQuerySet = new Map();\n\tconst dstQueries: CrossFieldQuerySet = new Map();\n\tconst mapSrc: Map<RevisionTag | undefined, RangeMap<T>> = new Map();\n\tconst mapDst: Map<RevisionTag | undefined, RangeMap<T>> = new Map();\n\n\tconst getMap = (target: CrossFieldTarget) =>\n\t\ttarget === CrossFieldTarget.Source ? mapSrc : mapDst;\n\n\tconst getQueries = (target: CrossFieldTarget) =>\n\t\ttarget === CrossFieldTarget.Source ? srcQueries : dstQueries;\n\n\tconst table = {\n\t\tsrcQueries,\n\t\tdstQueries,\n\t\tisInvalidated: false,\n\t\tmapSrc,\n\t\tmapDst,\n\n\t\tget: (\n\t\t\ttarget: CrossFieldTarget,\n\t\t\trevision: RevisionTag | undefined,\n\t\t\tid: MoveId,\n\t\t\tcount: number,\n\t\t\taddDependency: boolean,\n\t\t) => {\n\t\t\tif (addDependency) {\n\t\t\t\taddCrossFieldQuery(getQueries(target), revision, id, count);\n\t\t\t}\n\t\t\treturn getFromRangeMap(getMap(target).get(revision) ?? [], id, count);\n\t\t},\n\t\tset: (\n\t\t\ttarget: CrossFieldTarget,\n\t\t\trevision: RevisionTag | undefined,\n\t\t\tid: MoveId,\n\t\t\tcount: number,\n\t\t\tvalue: T,\n\t\t\tinvalidateDependents: boolean,\n\t\t) => {\n\t\t\tif (\n\t\t\t\tinvalidateDependents &&\n\t\t\t\tgetFromRangeMap(getQueries(target).get(revision) ?? [], id, count) !== undefined\n\t\t\t) {\n\t\t\t\ttable.isInvalidated = true;\n\t\t\t}\n\t\t\tsetInCrossFieldMap(getMap(target), revision, id, count, value);\n\t\t},\n\n\t\treset: () => {\n\t\t\ttable.isInvalidated = false;\n\t\t\ttable.srcQueries.clear();\n\t\t\ttable.dstQueries.clear();\n\t\t},\n\t};\n\n\treturn table;\n}\n\n/**\n * @internal\n */\nexport function newMoveEffectTable<T>(): MoveEffectTable<T> {\n\treturn newCrossFieldTable();\n}\n\n/**\n * Splits the `mark` into two marks such that the first returned mark has length `length`.\n * @param mark - The mark to split.\n * @param revision - The revision of the changeset the mark is part of.\n * @param length - The desired length for the first of the two returned marks.\n * @param genId - An ID allocator\n * @param moveEffects - The table in which to record splitting of move marks\n * @param recordMoveEffect - Whether when splitting a move an entry should be added to `moveEffects` indicating that the mark should be split (in case we process this mark again).\n * An entry is always added to `moveEffects` indicating that the opposite end of the move should be split.\n * @returns A pair of marks equivalent to the original `mark`\n * such that the first returned mark has input length `length`.\n */\nexport function splitMark<T, TMark extends Mark<T> & Partial<VestigialEndpoint>>(\n\tmark: TMark,\n\tlength: number,\n): [TMark, TMark] {\n\tconst markLength = mark.count;\n\tconst remainder = markLength - length;\n\tif (length < 1 || remainder < 1) {\n\t\tfail(\"Unable to split mark due to lengths\");\n\t}\n\n\tconst [effect1, effect2] = splitMarkEffect(mark, length);\n\tconst mark1 = { ...mark, ...effect1, count: length };\n\tconst mark2 = { ...mark, ...effect2, count: remainder };\n\tif (mark2.cellId !== undefined) {\n\t\tmark2.cellId = splitDetachEvent(mark2.cellId, length);\n\t}\n\tif (isVestigialEndpoint(mark2)) {\n\t\tmark2.vestigialEndpoint = splitDetachEvent(mark2.vestigialEndpoint, length);\n\t}\n\n\treturn [mark1, mark2];\n}\n\nfunction splitMarkEffect<TEffect extends MarkEffect>(\n\teffect: TEffect,\n\tlength: number,\n): [TEffect, TEffect] {\n\tconst type = effect.type;\n\tswitch (type) {\n\t\tcase NoopMarkType:\n\t\t\treturn [effect, effect];\n\t\tcase \"Insert\": {\n\t\t\tconst effect1: TEffect = {\n\t\t\t\t...effect,\n\t\t\t};\n\t\t\tconst effect2: TEffect = {\n\t\t\t\t...effect,\n\t\t\t\tid: (effect.id as number) + length,\n\t\t\t};\n\t\t\treturn [effect1, effect2];\n\t\t}\n\t\tcase \"MoveIn\": {\n\t\t\tconst effect2: TEffect = { ...effect, id: (effect.id as number) + length };\n\t\t\tconst move2 = effect2 as MoveIn;\n\t\t\tif (move2.finalEndpoint !== undefined) {\n\t\t\t\tmove2.finalEndpoint = splitDetachEvent(move2.finalEndpoint, length);\n\t\t\t}\n\t\t\treturn [effect, effect2];\n\t\t}\n\t\tcase \"Delete\": {\n\t\t\tconst effect1 = { ...effect };\n\t\t\tconst id2: ChangesetLocalId = brand((effect.id as number) + length);\n\t\t\tconst effect2 = { ...effect, id: id2 };\n\t\t\tconst effect2Delete = effect2 as Delete;\n\t\t\tif (effect2Delete.redetachId !== undefined) {\n\t\t\t\teffect2Delete.redetachId = splitDetachEvent(effect2Delete.redetachId, length);\n\t\t\t}\n\t\t\treturn [effect1, effect2];\n\t\t}\n\t\tcase \"MoveOut\": {\n\t\t\tconst effect2 = {\n\t\t\t\t...effect,\n\t\t\t\tid: (effect.id as number) + length,\n\t\t\t};\n\n\t\t\tconst return2 = effect2 as MoveOut;\n\n\t\t\tif (return2.redetachId !== undefined) {\n\t\t\t\treturn2.redetachId = splitDetachEvent(return2.redetachId, length);\n\t\t\t}\n\n\t\t\tif (return2.finalEndpoint !== undefined) {\n\t\t\t\treturn2.finalEndpoint = splitDetachEvent(return2.finalEndpoint, length);\n\t\t\t}\n\t\t\treturn [effect, effect2];\n\t\t}\n\t\tcase \"AttachAndDetach\": {\n\t\t\tconst [attach1, attach2] = splitMarkEffect(effect.attach, length);\n\t\t\tconst [detach1, detach2] = splitMarkEffect(effect.detach, length);\n\t\t\tconst effect1 = {\n\t\t\t\t...effect,\n\t\t\t\tattach: attach1,\n\t\t\t\tdetach: detach1,\n\t\t\t};\n\n\t\t\tconst effect2 = {\n\t\t\t\t...effect,\n\t\t\t\tattach: attach2,\n\t\t\t\tdetach: detach2,\n\t\t\t};\n\n\t\t\treturn [effect1, effect2];\n\t\t}\n\t\tdefault:\n\t\t\tunreachableCase(type);\n\t}\n}\n\nfunction splitDetachEvent(detachEvent: CellId, length: number): CellId {\n\treturn { ...detachEvent, localId: brand((detachEvent.localId as number) + length) };\n}\n\n/**\n * @returns -1 if the lineage indicates that cell1 is earlier in the field than cell2.\n * Returns 1 if cell2 is earlier in the field.\n * Returns 0 if the order cannot be determined from the lineage.\n */\nexport function compareLineages(cell1: CellId, cell2: CellId): number {\n\tconst cell1Events = new Map<RevisionTag, LineageEvent>();\n\tfor (const event of cell1.lineage ?? []) {\n\t\t// TODO: Are we guaranteed to only have one distinct lineage event per revision?\n\t\tcell1Events.set(event.revision, event);\n\t}\n\n\tconst lineage2 = cell2.lineage ?? [];\n\tfor (let i = lineage2.length - 1; i >= 0; i--) {\n\t\tconst event = lineage2[i];\n\t\tconst offset1 = cell1Events.get(event.revision)?.offset;\n\t\tif (offset1 !== undefined) {\n\t\t\tconst offset2 = event.offset;\n\t\t\tcell1Events.delete(event.revision);\n\t\t\tif (offset1 < offset2) {\n\t\t\t\treturn -1;\n\t\t\t} else if (offset1 > offset2) {\n\t\t\t\treturn 1;\n\t\t\t}\n\t\t}\n\t}\n\treturn 0;\n}\n\n// TODO: Refactor MarkEffect into a field of CellMark so this function isn't necessary.\nexport function extractMarkEffect<TEffect extends MarkEffect>(\n\tmark: CellMark<TEffect, unknown>,\n): TEffect {\n\tconst { cellId: _cellId, count: _count, changes: _changes, ...effect } = mark;\n\treturn effect as unknown as TEffect;\n}\n\n// TODO: Refactor MarkEffect into a field of CellMark so this function isn't necessary.\nexport function omitMarkEffect<TChildChange>(\n\tmark: CellMark<unknown, TChildChange>,\n): CellMark<NoopMark, TChildChange> {\n\tconst { cellId, count, changes } = mark;\n\tconst noopMark: CellMark<NoopMark, TChildChange> = { count };\n\tif (cellId !== undefined) {\n\t\tnoopMark.cellId = cellId;\n\t}\n\tif (changes !== undefined) {\n\t\tnoopMark.changes = changes;\n\t}\n\treturn noopMark;\n}\n\nexport function withNodeChange<\n\tTMark extends CellMark<TKind, TNodeChange>,\n\tTKind extends MarkEffect,\n\tTNodeChange,\n>(mark: TMark, changes: TNodeChange | undefined): TMark {\n\tconst newMark = { ...mark };\n\tif (changes !== undefined) {\n\t\tassert(\n\t\t\tmark.type !== \"MoveIn\",\n\t\t\t0x6a7 /* Cannot have a node change on a MoveIn or ReturnTo mark */,\n\t\t);\n\t\tnewMark.changes = changes;\n\t} else {\n\t\tdelete newMark.changes;\n\t}\n\treturn newMark;\n}\n\nexport function withRevision<TMark extends Mark<unknown>>(\n\tmark: TMark,\n\trevision: RevisionTag | undefined,\n): TMark {\n\tconst cloned = cloneMark(mark);\n\taddRevision(cloned, revision);\n\treturn cloned;\n}\n\nexport function addRevision(effect: MarkEffect, revision: RevisionTag | undefined): void {\n\tif (revision === undefined) {\n\t\treturn;\n\t}\n\n\tif (effect.type === NoopMarkType) {\n\t\treturn;\n\t}\n\n\tif (effect.type === \"AttachAndDetach\") {\n\t\taddRevision(effect.attach, revision);\n\t\taddRevision(effect.detach, revision);\n\t\treturn;\n\t}\n\n\tassert(\n\t\teffect.revision === undefined || effect.revision === revision,\n\t\t0x829 /* Should not overwrite mark revision */,\n\t);\n\teffect.revision = revision;\n}\n\nexport function getMarkMoveId(mark: Mark<unknown>): MoveId | undefined {\n\tif (isMoveMark(mark)) {\n\t\treturn mark.id;\n\t}\n\n\treturn undefined;\n}\n\nexport function getEndpoint(\n\teffect: MoveMarkEffect,\n\trevision: RevisionTag | undefined,\n): ChangeAtomId {\n\tconst effectRevision = effect.revision ?? revision;\n\treturn effect.finalEndpoint !== undefined\n\t\t? {\n\t\t\t\t...effect.finalEndpoint,\n\t\t\t\trevision: effect.finalEndpoint.revision ?? effectRevision,\n\t\t }\n\t\t: { revision: effectRevision, localId: effect.id };\n}\n"]}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright (c) Microsoft Corporation and contributors. All rights reserved.
|
|
3
|
+
* Licensed under the MIT License.
|
|
4
|
+
*/
|
|
5
|
+
import { TreeStoredSchema, TreeNodeSchemaIdentifier, TreeFieldStoredSchema } from "../core";
|
|
6
|
+
import { FlexTreeSchema, TreeNodeSchema, TreeFieldSchema } from "./typed-schema";
|
|
7
|
+
/**
|
|
8
|
+
* Creates a new view schema using the stored schema.
|
|
9
|
+
* @remarks
|
|
10
|
+
* This is really only suitable for use with code that happens to need access to things which require a view schema, but isn't actually schema aware.
|
|
11
|
+
* If the input schema came from a view schema, it will not return the same view schema, and will not be compatible:
|
|
12
|
+
* the returned TreeSchema is simply one which schematize will not object to.
|
|
13
|
+
* Assumes the schema uses the default field kinds.
|
|
14
|
+
* @internal
|
|
15
|
+
*/
|
|
16
|
+
export declare function treeSchemaFromStoredSchema(schema: TreeStoredSchema): FlexTreeSchema;
|
|
17
|
+
export declare function fieldSchemaFromStoredSchema(schema: TreeFieldStoredSchema, map: ReadonlyMap<TreeNodeSchemaIdentifier, TreeNodeSchema>): TreeFieldSchema;
|
|
18
|
+
//# sourceMappingURL=storedToViewSchema.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"storedToViewSchema.d.ts","sourceRoot":"","sources":["../../src/feature-libraries/storedToViewSchema.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EACN,gBAAgB,EAChB,wBAAwB,EACxB,qBAAqB,EAIrB,MAAM,SAAS,CAAC;AAGjB,OAAO,EACN,cAAc,EACd,cAAc,EAEd,eAAe,EAMf,MAAM,gBAAgB,CAAC;AAExB;;;;;;;;GAQG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,gBAAgB,GAAG,cAAc,CAwCnF;AAgBD,wBAAgB,2BAA2B,CAC1C,MAAM,EAAE,qBAAqB,EAC7B,GAAG,EAAE,WAAW,CAAC,wBAAwB,EAAE,cAAc,CAAC,GACxD,eAAe,CAQjB"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/*!
|
|
3
|
+
* Copyright (c) Microsoft Corporation and contributors. All rights reserved.
|
|
4
|
+
* Licensed under the MIT License.
|
|
5
|
+
*/
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.fieldSchemaFromStoredSchema = exports.treeSchemaFromStoredSchema = void 0;
|
|
8
|
+
const core_utils_1 = require("@fluidframework/core-utils");
|
|
9
|
+
const core_1 = require("../core");
|
|
10
|
+
const util_1 = require("../util");
|
|
11
|
+
const default_schema_1 = require("./default-schema");
|
|
12
|
+
const typed_schema_1 = require("./typed-schema");
|
|
13
|
+
/**
|
|
14
|
+
* Creates a new view schema using the stored schema.
|
|
15
|
+
* @remarks
|
|
16
|
+
* This is really only suitable for use with code that happens to need access to things which require a view schema, but isn't actually schema aware.
|
|
17
|
+
* If the input schema came from a view schema, it will not return the same view schema, and will not be compatible:
|
|
18
|
+
* the returned TreeSchema is simply one which schematize will not object to.
|
|
19
|
+
* Assumes the schema uses the default field kinds.
|
|
20
|
+
* @internal
|
|
21
|
+
*/
|
|
22
|
+
function treeSchemaFromStoredSchema(schema) {
|
|
23
|
+
const map = new Map();
|
|
24
|
+
for (const [identifier, innerSchema] of schema.nodeSchema) {
|
|
25
|
+
if (innerSchema instanceof core_1.LeafNodeStoredSchema) {
|
|
26
|
+
map.set(identifier, typed_schema_1.LeafNodeSchema.create({ name: "intoTypedSchema" }, identifier, innerSchema.leafValue));
|
|
27
|
+
}
|
|
28
|
+
else if (innerSchema instanceof core_1.MapNodeStoredSchema) {
|
|
29
|
+
map.set(identifier, typed_schema_1.MapNodeSchema.create({ name: "intoTypedSchema" }, identifier, fieldSchemaFromStoredSchema(innerSchema.mapFields, map)));
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
(0, core_utils_1.assert)(innerSchema instanceof core_1.ObjectNodeStoredSchema, "unsupported node kind");
|
|
33
|
+
const fields = new Map();
|
|
34
|
+
for (const [key, field] of innerSchema.objectNodeFields) {
|
|
35
|
+
fields.set(key, fieldSchemaFromStoredSchema(field, map));
|
|
36
|
+
}
|
|
37
|
+
const fieldsObject = mapToObject(fields);
|
|
38
|
+
map.set(identifier, typed_schema_1.ObjectNodeSchema.create({ name: "intoTypedSchema" }, identifier, fieldsObject));
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
return {
|
|
42
|
+
adapters: {},
|
|
43
|
+
policy: default_schema_1.defaultSchemaPolicy,
|
|
44
|
+
rootFieldSchema: fieldSchemaFromStoredSchema(schema.rootFieldSchema, map),
|
|
45
|
+
nodeSchema: map,
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
exports.treeSchemaFromStoredSchema = treeSchemaFromStoredSchema;
|
|
49
|
+
function mapToObject(map) {
|
|
50
|
+
const objectMap = Object.create(null);
|
|
51
|
+
for (const [key, value] of map.entries()) {
|
|
52
|
+
// This code has to be careful to avoid assigned to __proto__ or similar built in fields.
|
|
53
|
+
Object.defineProperty(objectMap, key, {
|
|
54
|
+
enumerable: true,
|
|
55
|
+
configurable: false,
|
|
56
|
+
writable: false,
|
|
57
|
+
value,
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
return objectMap;
|
|
61
|
+
}
|
|
62
|
+
function fieldSchemaFromStoredSchema(schema, map) {
|
|
63
|
+
const kind = default_schema_1.defaultSchemaPolicy.fieldKinds.get(schema.kind.identifier) ?? (0, util_1.fail)("missing field kind");
|
|
64
|
+
const types = schema.types === undefined
|
|
65
|
+
? [typed_schema_1.Any]
|
|
66
|
+
: Array.from(schema.types, (v) => () => map.get(v) ?? (0, util_1.fail)("missing schema"));
|
|
67
|
+
return typed_schema_1.TreeFieldSchema.create(kind, types);
|
|
68
|
+
}
|
|
69
|
+
exports.fieldSchemaFromStoredSchema = fieldSchemaFromStoredSchema;
|
|
70
|
+
//# sourceMappingURL=storedToViewSchema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"storedToViewSchema.js","sourceRoot":"","sources":["../../src/feature-libraries/storedToViewSchema.ts"],"names":[],"mappings":"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","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { assert } from \"@fluidframework/core-utils\";\nimport {\n\tTreeStoredSchema,\n\tTreeNodeSchemaIdentifier,\n\tTreeFieldStoredSchema,\n\tLeafNodeStoredSchema,\n\tMapNodeStoredSchema,\n\tObjectNodeStoredSchema,\n} from \"../core\";\nimport { fail } from \"../util\";\nimport { defaultSchemaPolicy } from \"./default-schema\";\nimport {\n\tFlexTreeSchema,\n\tTreeNodeSchema,\n\tMapFieldSchema,\n\tTreeFieldSchema,\n\tAllowedTypes,\n\tAny,\n\tLeafNodeSchema,\n\tMapNodeSchema,\n\tObjectNodeSchema,\n} from \"./typed-schema\";\n\n/**\n * Creates a new view schema using the stored schema.\n * @remarks\n * This is really only suitable for use with code that happens to need access to things which require a view schema, but isn't actually schema aware.\n * If the input schema came from a view schema, it will not return the same view schema, and will not be compatible:\n * the returned TreeSchema is simply one which schematize will not object to.\n * Assumes the schema uses the default field kinds.\n * @internal\n */\nexport function treeSchemaFromStoredSchema(schema: TreeStoredSchema): FlexTreeSchema {\n\tconst map: Map<TreeNodeSchemaIdentifier, TreeNodeSchema> = new Map();\n\tfor (const [identifier, innerSchema] of schema.nodeSchema) {\n\t\tif (innerSchema instanceof LeafNodeStoredSchema) {\n\t\t\tmap.set(\n\t\t\t\tidentifier,\n\t\t\t\tLeafNodeSchema.create(\n\t\t\t\t\t{ name: \"intoTypedSchema\" },\n\t\t\t\t\tidentifier,\n\t\t\t\t\tinnerSchema.leafValue,\n\t\t\t\t),\n\t\t\t);\n\t\t} else if (innerSchema instanceof MapNodeStoredSchema) {\n\t\t\tmap.set(\n\t\t\t\tidentifier,\n\t\t\t\tMapNodeSchema.create(\n\t\t\t\t\t{ name: \"intoTypedSchema\" },\n\t\t\t\t\tidentifier,\n\t\t\t\t\tfieldSchemaFromStoredSchema(innerSchema.mapFields, map) as MapFieldSchema,\n\t\t\t\t),\n\t\t\t);\n\t\t} else {\n\t\t\tassert(innerSchema instanceof ObjectNodeStoredSchema, \"unsupported node kind\");\n\t\t\tconst fields = new Map<string, TreeFieldSchema>();\n\t\t\tfor (const [key, field] of innerSchema.objectNodeFields) {\n\t\t\t\tfields.set(key, fieldSchemaFromStoredSchema(field, map));\n\t\t\t}\n\t\t\tconst fieldsObject = mapToObject(fields);\n\t\t\tmap.set(\n\t\t\t\tidentifier,\n\t\t\t\tObjectNodeSchema.create({ name: \"intoTypedSchema\" }, identifier, fieldsObject),\n\t\t\t);\n\t\t}\n\t}\n\treturn {\n\t\tadapters: {},\n\t\tpolicy: defaultSchemaPolicy,\n\t\trootFieldSchema: fieldSchemaFromStoredSchema(schema.rootFieldSchema, map),\n\t\tnodeSchema: map,\n\t};\n}\n\nfunction mapToObject<MapValue>(map: Map<string, MapValue>): Record<string, MapValue> {\n\tconst objectMap: Record<string, MapValue> = Object.create(null);\n\tfor (const [key, value] of map.entries()) {\n\t\t// This code has to be careful to avoid assigned to __proto__ or similar built in fields.\n\t\tObject.defineProperty(objectMap, key, {\n\t\t\tenumerable: true,\n\t\t\tconfigurable: false,\n\t\t\twritable: false,\n\t\t\tvalue,\n\t\t});\n\t}\n\treturn objectMap;\n}\n\nexport function fieldSchemaFromStoredSchema(\n\tschema: TreeFieldStoredSchema,\n\tmap: ReadonlyMap<TreeNodeSchemaIdentifier, TreeNodeSchema>,\n): TreeFieldSchema {\n\tconst kind =\n\t\tdefaultSchemaPolicy.fieldKinds.get(schema.kind.identifier) ?? fail(\"missing field kind\");\n\tconst types: AllowedTypes =\n\t\tschema.types === undefined\n\t\t\t? [Any]\n\t\t\t: Array.from(schema.types, (v) => () => map.get(v) ?? fail(\"missing schema\"));\n\treturn TreeFieldSchema.create(kind, types);\n}\n"]}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright (c) Microsoft Corporation and contributors. All rights reserved.
|
|
3
|
+
* Licensed under the MIT License.
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Selects which heuristics to use when encoding tree content.
|
|
7
|
+
* All encoding options here are compatible with the same decoder:
|
|
8
|
+
* the selection here does not impact compatibility.
|
|
9
|
+
* @internal
|
|
10
|
+
*/
|
|
11
|
+
export declare enum TreeCompressionStrategy {
|
|
12
|
+
/**
|
|
13
|
+
* Optimized for encoded size.
|
|
14
|
+
* Use this in production to reduce bandwidth and storage use.
|
|
15
|
+
*/
|
|
16
|
+
Compressed = 0,
|
|
17
|
+
/**
|
|
18
|
+
* Optimized for human readability.
|
|
19
|
+
* Use this when debugging or testing and needing to inspect encoded tree content.
|
|
20
|
+
*/
|
|
21
|
+
Uncompressed = 1
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=treeCompressionUtils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"treeCompressionUtils.d.ts","sourceRoot":"","sources":["../../src/feature-libraries/treeCompressionUtils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;GAKG;AACH,oBAAY,uBAAuB;IAClC;;;OAGG;IACH,UAAU,IAAI;IACd;;;OAGG;IACH,YAAY,IAAI;CAChB"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/*!
|
|
3
|
+
* Copyright (c) Microsoft Corporation and contributors. All rights reserved.
|
|
4
|
+
* Licensed under the MIT License.
|
|
5
|
+
*/
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.TreeCompressionStrategy = void 0;
|
|
8
|
+
/**
|
|
9
|
+
* Selects which heuristics to use when encoding tree content.
|
|
10
|
+
* All encoding options here are compatible with the same decoder:
|
|
11
|
+
* the selection here does not impact compatibility.
|
|
12
|
+
* @internal
|
|
13
|
+
*/
|
|
14
|
+
var TreeCompressionStrategy;
|
|
15
|
+
(function (TreeCompressionStrategy) {
|
|
16
|
+
/**
|
|
17
|
+
* Optimized for encoded size.
|
|
18
|
+
* Use this in production to reduce bandwidth and storage use.
|
|
19
|
+
*/
|
|
20
|
+
TreeCompressionStrategy[TreeCompressionStrategy["Compressed"] = 0] = "Compressed";
|
|
21
|
+
/**
|
|
22
|
+
* Optimized for human readability.
|
|
23
|
+
* Use this when debugging or testing and needing to inspect encoded tree content.
|
|
24
|
+
*/
|
|
25
|
+
TreeCompressionStrategy[TreeCompressionStrategy["Uncompressed"] = 1] = "Uncompressed";
|
|
26
|
+
})(TreeCompressionStrategy || (exports.TreeCompressionStrategy = TreeCompressionStrategy = {}));
|
|
27
|
+
//# sourceMappingURL=treeCompressionUtils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"treeCompressionUtils.js","sourceRoot":"","sources":["../../src/feature-libraries/treeCompressionUtils.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH;;;;;GAKG;AACH,IAAY,uBAWX;AAXD,WAAY,uBAAuB;IAClC;;;OAGG;IACH,iFAAc,CAAA;IACd;;;OAGG;IACH,qFAAgB,CAAA;AACjB,CAAC,EAXW,uBAAuB,uCAAvB,uBAAuB,QAWlC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\n/**\n * Selects which heuristics to use when encoding tree content.\n * All encoding options here are compatible with the same decoder:\n * the selection here does not impact compatibility.\n * @internal\n */\nexport enum TreeCompressionStrategy {\n\t/**\n\t * Optimized for encoded size.\n\t * Use this in production to reduce bandwidth and storage use.\n\t */\n\tCompressed = 0,\n\t/**\n\t * Optimized for human readability.\n\t * Use this when debugging or testing and needing to inspect encoded tree content.\n\t */\n\tUncompressed = 1,\n}\n"]}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright (c) Microsoft Corporation and contributors. All rights reserved.
|
|
3
|
+
* Licensed under the MIT License.
|
|
4
|
+
*/
|
|
5
|
+
import { FieldKey, TreeType, UpPath, ITreeCursorSynchronous, Value, FieldUpPath, PathRootPrefix, CursorMarker, DetachedField } from "../core";
|
|
6
|
+
/**
|
|
7
|
+
* {@link ITreeCursorSynchronous} that can return the underlying node objects.
|
|
8
|
+
* @internal
|
|
9
|
+
*/
|
|
10
|
+
export interface CursorWithNode<TNode> extends ITreeCursorSynchronous {
|
|
11
|
+
/**
|
|
12
|
+
* Gets the underlying object for the current node.
|
|
13
|
+
*
|
|
14
|
+
* Only valid when `mode` is `Nodes`.
|
|
15
|
+
*/
|
|
16
|
+
getNode(): TNode;
|
|
17
|
+
/**
|
|
18
|
+
* Create a copy of this cursor which navigates independently,
|
|
19
|
+
* and is initially located at the same place as this one.
|
|
20
|
+
*
|
|
21
|
+
* Depending on the cursor implementation this may be significantly faster
|
|
22
|
+
* than other ways to copy the cursor
|
|
23
|
+
* (such as creating a new one and walking the path from this one).
|
|
24
|
+
*/
|
|
25
|
+
fork(): CursorWithNode<TNode>;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Create a cursor, in `nodes` mode at the root of the provided tree.
|
|
29
|
+
*
|
|
30
|
+
* @returns an {@link ITreeCursorSynchronous} for a single root in `nodes` mode.
|
|
31
|
+
* @internal
|
|
32
|
+
*/
|
|
33
|
+
export declare function stackTreeNodeCursor<TNode>(adapter: CursorAdapter<TNode>, root: TNode): CursorWithNode<TNode>;
|
|
34
|
+
/**
|
|
35
|
+
* Create a cursor, in `fields` mode at the `detachedField` under the provided `root`.
|
|
36
|
+
*
|
|
37
|
+
* @returns an {@link ITreeCursorSynchronous} for `detachedField` of `root` in `fields` mode.
|
|
38
|
+
* @internal
|
|
39
|
+
*/
|
|
40
|
+
export declare function stackTreeFieldCursor<TNode>(adapter: CursorAdapter<TNode>, root: TNode, detachedField?: DetachedField): CursorWithNode<TNode>;
|
|
41
|
+
/**
|
|
42
|
+
* Provides functionality to allow a {@link stackTreeNodeCursor} and {@link stackTreeFieldCursor} to implement cursors.
|
|
43
|
+
* @internal
|
|
44
|
+
*/
|
|
45
|
+
export interface CursorAdapter<TNode> {
|
|
46
|
+
/**
|
|
47
|
+
* @returns the value of the given node.
|
|
48
|
+
*/
|
|
49
|
+
value(node: TNode): Value;
|
|
50
|
+
/**
|
|
51
|
+
* @returns the type of the given node.
|
|
52
|
+
*/
|
|
53
|
+
type(node: TNode): TreeType;
|
|
54
|
+
/**
|
|
55
|
+
* @returns the keys for non-empty fields on the given node.
|
|
56
|
+
*/
|
|
57
|
+
keysFromNode(node: TNode): readonly FieldKey[];
|
|
58
|
+
/**
|
|
59
|
+
* @returns the child nodes for the given node and key.
|
|
60
|
+
*/
|
|
61
|
+
getFieldFromNode(node: TNode, key: FieldKey): readonly TNode[];
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* A class that satisfies part of the ITreeCursorSynchronous implementation.
|
|
65
|
+
*/
|
|
66
|
+
export declare abstract class SynchronousCursor {
|
|
67
|
+
readonly [CursorMarker] = true;
|
|
68
|
+
readonly pending = false;
|
|
69
|
+
skipPendingFields(): boolean;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Apply `prefix` to `path`.
|
|
73
|
+
* @internal
|
|
74
|
+
*/
|
|
75
|
+
export declare function prefixPath(prefix: PathRootPrefix | undefined, path: UpPath | undefined): UpPath | undefined;
|
|
76
|
+
/**
|
|
77
|
+
* Apply `prefix` to `path`.
|
|
78
|
+
* @internal
|
|
79
|
+
*/
|
|
80
|
+
export declare function prefixFieldPath(prefix: PathRootPrefix | undefined, path: FieldUpPath): FieldUpPath;
|
|
81
|
+
/**
|
|
82
|
+
* Compose two prefixes together.
|
|
83
|
+
* `prefixFieldPath(root, prefixFieldPath(inner, path))` should be the same as `prefixFieldPath(prefixPathPrefix(root, inner), path))`
|
|
84
|
+
*
|
|
85
|
+
* TODO: tests for this.
|
|
86
|
+
*/
|
|
87
|
+
export declare function prefixPathPrefix(root: PathRootPrefix, inner: PathRootPrefix): PathRootPrefix;
|
|
88
|
+
/**
|
|
89
|
+
* Wrapper around a path that adds a prefix to the root.
|
|
90
|
+
*
|
|
91
|
+
* Exported for testing: use `prefixPath` and `prefixFieldPath` to construct.
|
|
92
|
+
*/
|
|
93
|
+
export declare class PrefixedPath implements UpPath {
|
|
94
|
+
readonly prefix: PathRootPrefix;
|
|
95
|
+
readonly path: UpPath;
|
|
96
|
+
readonly parentField: FieldKey;
|
|
97
|
+
readonly parentIndex: number;
|
|
98
|
+
constructor(prefix: PathRootPrefix, path: UpPath);
|
|
99
|
+
get parent(): UpPath | undefined;
|
|
100
|
+
}
|
|
101
|
+
//# sourceMappingURL=treeCursorUtils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"treeCursorUtils.d.ts","sourceRoot":"","sources":["../../src/feature-libraries/treeCursorUtils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EACN,QAAQ,EACR,QAAQ,EACR,MAAM,EAEN,sBAAsB,EACtB,KAAK,EACL,WAAW,EACX,cAAc,EACd,YAAY,EACZ,aAAa,EAGb,MAAM,SAAS,CAAC;AAGjB;;;GAGG;AACH,MAAM,WAAW,cAAc,CAAC,KAAK,CAAE,SAAQ,sBAAsB;IACpE;;;;OAIG;IACH,OAAO,IAAI,KAAK,CAAC;IAEjB;;;;;;;OAOG;IACH,IAAI,IAAI,cAAc,CAAC,KAAK,CAAC,CAAC;CAC9B;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EACxC,OAAO,EAAE,aAAa,CAAC,KAAK,CAAC,EAC7B,IAAI,EAAE,KAAK,GACT,cAAc,CAAC,KAAK,CAAC,CAEvB;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EACzC,OAAO,EAAE,aAAa,CAAC,KAAK,CAAC,EAC7B,IAAI,EAAE,KAAK,EACX,aAAa,GAAE,aAAyB,GACtC,cAAc,CAAC,KAAK,CAAC,CAMvB;AAED;;;GAGG;AACH,MAAM,WAAW,aAAa,CAAC,KAAK;IACnC;;OAEG;IACH,KAAK,CAAC,IAAI,EAAE,KAAK,GAAG,KAAK,CAAC;IAC1B;;OAEG;IACH,IAAI,CAAC,IAAI,EAAE,KAAK,GAAG,QAAQ,CAAC;IAC5B;;OAEG;IACH,YAAY,CAAC,IAAI,EAAE,KAAK,GAAG,SAAS,QAAQ,EAAE,CAAC;IAC/C;;OAEG;IACH,gBAAgB,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,GAAG,SAAS,KAAK,EAAE,CAAC;CAC/D;AAID;;GAEG;AACH,8BAAsB,iBAAiB;IACtC,SAAgB,CAAC,YAAY,CAAC,QAAQ;IACtC,SAAgB,OAAO,SAAS;IAEzB,iBAAiB,IAAI,OAAO;CAGnC;AA+QD;;;GAGG;AACH,wBAAgB,UAAU,CACzB,MAAM,EAAE,cAAc,GAAG,SAAS,EAClC,IAAI,EAAE,MAAM,GAAG,SAAS,GACtB,MAAM,GAAG,SAAS,CAYpB;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAC9B,MAAM,EAAE,cAAc,GAAG,SAAS,EAClC,IAAI,EAAE,WAAW,GACf,WAAW,CAeb;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,cAAc,GAAG,cAAc,CAgB5F;AAgBD;;;;GAIG;AACH,qBAAa,YAAa,YAAW,MAAM;aAIzB,MAAM,EAAE,cAAc;aACtB,IAAI,EAAE,MAAM;IAJ7B,SAAgB,WAAW,EAAE,QAAQ,CAAC;IACtC,SAAgB,WAAW,EAAE,MAAM,CAAC;gBAEnB,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,MAAM;IAU7B,IAAW,MAAM,IAAI,MAAM,GAAG,SAAS,CAEtC;CACD"}
|