@fluidframework/tree 2.41.0-338401 → 2.42.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.vscode/settings.json +1 -0
- package/CHANGELOG.md +374 -0
- package/api-report/tree.alpha.api.md +21 -7
- package/dist/alpha.d.ts +2 -0
- package/dist/codec/codec.d.ts +33 -3
- package/dist/codec/codec.d.ts.map +1 -1
- package/dist/codec/codec.js +13 -3
- package/dist/codec/codec.js.map +1 -1
- package/dist/codec/index.d.ts +1 -1
- package/dist/codec/index.d.ts.map +1 -1
- package/dist/codec/index.js.map +1 -1
- package/dist/codec/versioned/codec.d.ts +35 -2
- package/dist/codec/versioned/codec.d.ts.map +1 -1
- package/dist/codec/versioned/codec.js +38 -3
- package/dist/codec/versioned/codec.js.map +1 -1
- package/dist/core/index.d.ts +1 -1
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +2 -1
- package/dist/core/index.js.map +1 -1
- package/dist/core/rebase/types.d.ts +2 -2
- package/dist/core/rebase/types.js +2 -2
- package/dist/core/rebase/types.js.map +1 -1
- package/dist/core/rebase/utils.d.ts +0 -2
- package/dist/core/rebase/utils.d.ts.map +1 -1
- package/dist/core/rebase/utils.js +6 -10
- package/dist/core/rebase/utils.js.map +1 -1
- package/dist/core/schema-stored/formatV1.d.ts +0 -1
- package/dist/core/schema-stored/formatV1.d.ts.map +1 -1
- package/dist/core/schema-stored/formatV1.js +1 -2
- package/dist/core/schema-stored/formatV1.js.map +1 -1
- package/dist/core/schema-stored/index.d.ts +1 -1
- package/dist/core/schema-stored/index.d.ts.map +1 -1
- package/dist/core/schema-stored/index.js +2 -1
- package/dist/core/schema-stored/index.js.map +1 -1
- package/dist/core/schema-stored/schema.d.ts +6 -0
- package/dist/core/schema-stored/schema.d.ts.map +1 -1
- package/dist/core/schema-stored/schema.js +8 -1
- package/dist/core/schema-stored/schema.js.map +1 -1
- package/dist/core/tree/anchorSet.d.ts +2 -1
- package/dist/core/tree/anchorSet.d.ts.map +1 -1
- package/dist/core/tree/anchorSet.js +2 -1
- package/dist/core/tree/anchorSet.js.map +1 -1
- package/dist/core/tree/detachedFieldIndex.d.ts +2 -2
- package/dist/core/tree/detachedFieldIndex.d.ts.map +1 -1
- package/dist/core/tree/detachedFieldIndex.js +5 -1
- package/dist/core/tree/detachedFieldIndex.js.map +1 -1
- package/dist/core/tree/mapTree.d.ts +2 -1
- package/dist/core/tree/mapTree.d.ts.map +1 -1
- package/dist/core/tree/mapTree.js +11 -5
- package/dist/core/tree/mapTree.js.map +1 -1
- package/dist/core/tree/pathTree.d.ts +12 -11
- package/dist/core/tree/pathTree.d.ts.map +1 -1
- package/dist/core/tree/pathTree.js +8 -7
- package/dist/core/tree/pathTree.js.map +1 -1
- package/dist/core/tree/treeTextFormat.d.ts +1 -1
- package/dist/core/tree/treeTextFormat.js +1 -1
- package/dist/core/tree/treeTextFormat.js.map +1 -1
- package/dist/core/tree/visitorUtils.d.ts +2 -2
- package/dist/core/tree/visitorUtils.d.ts.map +1 -1
- package/dist/core/tree/visitorUtils.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/chunkedForest.d.ts +1 -1
- package/dist/feature-libraries/chunked-forest/chunkedForest.js +1 -1
- package/dist/feature-libraries/chunked-forest/chunkedForest.js.map +1 -1
- package/dist/feature-libraries/default-schema/defaultEditBuilder.d.ts +3 -2
- package/dist/feature-libraries/default-schema/defaultEditBuilder.d.ts.map +1 -1
- package/dist/feature-libraries/default-schema/defaultEditBuilder.js +1 -1
- package/dist/feature-libraries/default-schema/defaultEditBuilder.js.map +1 -1
- package/dist/feature-libraries/default-schema/index.d.ts +1 -1
- package/dist/feature-libraries/default-schema/index.d.ts.map +1 -1
- package/dist/feature-libraries/default-schema/index.js +2 -2
- package/dist/feature-libraries/default-schema/index.js.map +1 -1
- package/dist/feature-libraries/default-schema/schemaChecker.d.ts +17 -16
- package/dist/feature-libraries/default-schema/schemaChecker.d.ts.map +1 -1
- package/dist/feature-libraries/default-schema/schemaChecker.js +54 -38
- package/dist/feature-libraries/default-schema/schemaChecker.js.map +1 -1
- package/dist/feature-libraries/flex-tree/context.d.ts +32 -8
- package/dist/feature-libraries/flex-tree/context.d.ts.map +1 -1
- package/dist/feature-libraries/flex-tree/context.js +22 -6
- package/dist/feature-libraries/flex-tree/context.js.map +1 -1
- package/dist/feature-libraries/flex-tree/flexTreeTypes.d.ts +37 -16
- package/dist/feature-libraries/flex-tree/flexTreeTypes.d.ts.map +1 -1
- package/dist/feature-libraries/flex-tree/flexTreeTypes.js +7 -2
- package/dist/feature-libraries/flex-tree/flexTreeTypes.js.map +1 -1
- package/dist/feature-libraries/flex-tree/index.d.ts +2 -2
- package/dist/feature-libraries/flex-tree/index.d.ts.map +1 -1
- package/dist/feature-libraries/flex-tree/index.js.map +1 -1
- package/dist/feature-libraries/flex-tree/lazyField.d.ts +6 -6
- package/dist/feature-libraries/flex-tree/lazyField.d.ts.map +1 -1
- package/dist/feature-libraries/flex-tree/lazyField.js +1 -1
- package/dist/feature-libraries/flex-tree/lazyField.js.map +1 -1
- package/dist/feature-libraries/flex-tree/lazyNode.d.ts +3 -2
- package/dist/feature-libraries/flex-tree/lazyNode.d.ts.map +1 -1
- package/dist/feature-libraries/flex-tree/lazyNode.js +3 -0
- package/dist/feature-libraries/flex-tree/lazyNode.js.map +1 -1
- package/dist/feature-libraries/flex-tree/utilities.d.ts.map +1 -1
- package/dist/feature-libraries/flex-tree/utilities.js.map +1 -1
- package/dist/feature-libraries/forest-summary/forestSummarizer.d.ts +3 -3
- package/dist/feature-libraries/forest-summary/forestSummarizer.d.ts.map +1 -1
- package/dist/feature-libraries/forest-summary/forestSummarizer.js +7 -7
- package/dist/feature-libraries/forest-summary/forestSummarizer.js.map +1 -1
- package/dist/feature-libraries/index.d.ts +4 -4
- package/dist/feature-libraries/index.d.ts.map +1 -1
- package/dist/feature-libraries/index.js +5 -4
- package/dist/feature-libraries/index.js.map +1 -1
- package/dist/feature-libraries/indexing/anchorTreeIndex.d.ts +2 -2
- package/dist/feature-libraries/indexing/anchorTreeIndex.d.ts.map +1 -1
- package/dist/feature-libraries/indexing/anchorTreeIndex.js +15 -15
- package/dist/feature-libraries/indexing/anchorTreeIndex.js.map +1 -1
- package/dist/feature-libraries/mapTreeCursor.d.ts +39 -3
- package/dist/feature-libraries/mapTreeCursor.d.ts.map +1 -1
- package/dist/feature-libraries/mapTreeCursor.js +45 -7
- package/dist/feature-libraries/mapTreeCursor.js.map +1 -1
- package/dist/feature-libraries/modular-schema/crossFieldQueries.d.ts.map +1 -1
- package/dist/feature-libraries/modular-schema/crossFieldQueries.js.map +1 -1
- package/dist/feature-libraries/modular-schema/fieldChangeHandler.d.ts +1 -1
- package/dist/feature-libraries/modular-schema/fieldChangeHandler.d.ts.map +1 -1
- package/dist/feature-libraries/modular-schema/fieldChangeHandler.js.map +1 -1
- package/dist/feature-libraries/modular-schema/fieldKindWithEditor.d.ts +1 -1
- package/dist/feature-libraries/modular-schema/fieldKindWithEditor.js +1 -1
- package/dist/feature-libraries/modular-schema/fieldKindWithEditor.js.map +1 -1
- package/dist/feature-libraries/modular-schema/genericFieldKind.d.ts.map +1 -1
- package/dist/feature-libraries/modular-schema/genericFieldKind.js +2 -2
- package/dist/feature-libraries/modular-schema/genericFieldKind.js.map +1 -1
- package/dist/feature-libraries/modular-schema/genericFieldKindCodecs.d.ts.map +1 -1
- package/dist/feature-libraries/modular-schema/genericFieldKindCodecs.js.map +1 -1
- package/dist/feature-libraries/modular-schema/genericFieldKindTypes.d.ts.map +1 -1
- package/dist/feature-libraries/modular-schema/genericFieldKindTypes.js.map +1 -1
- package/dist/feature-libraries/modular-schema/isNeverTree.d.ts +0 -2
- package/dist/feature-libraries/modular-schema/isNeverTree.d.ts.map +1 -1
- package/dist/feature-libraries/modular-schema/isNeverTree.js +0 -2
- package/dist/feature-libraries/modular-schema/isNeverTree.js.map +1 -1
- package/dist/feature-libraries/modular-schema/modularChangeCodecs.d.ts +1 -1
- package/dist/feature-libraries/modular-schema/modularChangeCodecs.d.ts.map +1 -1
- package/dist/feature-libraries/modular-schema/modularChangeCodecs.js +5 -5
- package/dist/feature-libraries/modular-schema/modularChangeCodecs.js.map +1 -1
- package/dist/feature-libraries/modular-schema/modularChangeFamily.d.ts +2 -0
- package/dist/feature-libraries/modular-schema/modularChangeFamily.d.ts.map +1 -1
- package/dist/feature-libraries/modular-schema/modularChangeFamily.js +2 -0
- package/dist/feature-libraries/modular-schema/modularChangeFamily.js.map +1 -1
- package/dist/feature-libraries/modular-schema/modularChangeTypes.d.ts.map +1 -1
- package/dist/feature-libraries/modular-schema/modularChangeTypes.js.map +1 -1
- package/dist/feature-libraries/node-identifier/mockNodeIdentifierManager.d.ts.map +1 -1
- package/dist/feature-libraries/node-identifier/mockNodeIdentifierManager.js +8 -3
- package/dist/feature-libraries/node-identifier/mockNodeIdentifierManager.js.map +1 -1
- package/dist/feature-libraries/object-forest/objectForest.d.ts +22 -5
- package/dist/feature-libraries/object-forest/objectForest.d.ts.map +1 -1
- package/dist/feature-libraries/object-forest/objectForest.js +296 -207
- package/dist/feature-libraries/object-forest/objectForest.js.map +1 -1
- package/dist/feature-libraries/schema-edits/schemaChangeCodecs.d.ts +2 -2
- package/dist/feature-libraries/schema-edits/schemaChangeCodecs.d.ts.map +1 -1
- package/dist/feature-libraries/schema-edits/schemaChangeCodecs.js +3 -2
- package/dist/feature-libraries/schema-edits/schemaChangeCodecs.js.map +1 -1
- package/dist/feature-libraries/schema-edits/schemaChangeFormat.d.ts +2 -2
- package/dist/feature-libraries/schema-index/codec.d.ts +6 -12
- package/dist/feature-libraries/schema-index/codec.d.ts.map +1 -1
- package/dist/feature-libraries/schema-index/codec.js +8 -15
- package/dist/feature-libraries/schema-index/codec.js.map +1 -1
- package/dist/feature-libraries/schema-index/formatV1.d.ts +2 -2
- package/dist/feature-libraries/schema-index/formatV1.d.ts.map +1 -1
- package/dist/feature-libraries/schema-index/formatV1.js +1 -1
- package/dist/feature-libraries/schema-index/formatV1.js.map +1 -1
- package/dist/feature-libraries/schema-index/index.d.ts +1 -1
- package/dist/feature-libraries/schema-index/index.d.ts.map +1 -1
- package/dist/feature-libraries/schema-index/index.js +1 -2
- package/dist/feature-libraries/schema-index/index.js.map +1 -1
- package/dist/feature-libraries/schema-index/schemaSummarizer.d.ts +1 -1
- package/dist/feature-libraries/schema-index/schemaSummarizer.d.ts.map +1 -1
- package/dist/feature-libraries/schema-index/schemaSummarizer.js.map +1 -1
- package/dist/feature-libraries/sequence-field/formatV3.d.ts.map +1 -1
- package/dist/feature-libraries/sequence-field/formatV3.js.map +1 -1
- package/dist/feature-libraries/sequence-field/markQueue.d.ts.map +1 -1
- package/dist/feature-libraries/sequence-field/markQueue.js.map +1 -1
- package/dist/feature-libraries/sequence-field/prune.d.ts.map +1 -1
- package/dist/feature-libraries/sequence-field/prune.js.map +1 -1
- package/dist/feature-libraries/sequence-field/rebase.js +1 -1
- package/dist/feature-libraries/sequence-field/rebase.js.map +1 -1
- package/dist/feature-libraries/sequence-field/relevantRemovedRoots.d.ts +1 -1
- package/dist/feature-libraries/sequence-field/relevantRemovedRoots.d.ts.map +1 -1
- package/dist/feature-libraries/sequence-field/relevantRemovedRoots.js.map +1 -1
- package/dist/feature-libraries/sequence-field/replaceRevisions.d.ts.map +1 -1
- package/dist/feature-libraries/sequence-field/replaceRevisions.js.map +1 -1
- package/dist/feature-libraries/sequence-field/sequenceFieldCodecV1.d.ts +1 -1
- package/dist/feature-libraries/sequence-field/sequenceFieldCodecV1.d.ts.map +1 -1
- package/dist/feature-libraries/sequence-field/sequenceFieldCodecV1.js +1 -1
- package/dist/feature-libraries/sequence-field/sequenceFieldCodecV1.js.map +1 -1
- package/dist/feature-libraries/sequence-field/sequenceFieldCodecV2.d.ts +2 -2
- package/dist/feature-libraries/sequence-field/sequenceFieldCodecV2.d.ts.map +1 -1
- package/dist/feature-libraries/sequence-field/sequenceFieldCodecV2.js +1 -1
- package/dist/feature-libraries/sequence-field/sequenceFieldCodecV2.js.map +1 -1
- package/dist/feature-libraries/sequence-field/sequenceFieldCodecV3.d.ts +1 -1
- package/dist/feature-libraries/sequence-field/sequenceFieldCodecV3.d.ts.map +1 -1
- package/dist/feature-libraries/sequence-field/sequenceFieldCodecV3.js +2 -2
- package/dist/feature-libraries/sequence-field/sequenceFieldCodecV3.js.map +1 -1
- package/dist/feature-libraries/sequence-field/sequenceFieldCodecs.d.ts +1 -1
- package/dist/feature-libraries/sequence-field/sequenceFieldCodecs.d.ts.map +1 -1
- package/dist/feature-libraries/sequence-field/sequenceFieldCodecs.js.map +1 -1
- package/dist/feature-libraries/sequence-field/sequenceFieldToDelta.d.ts +1 -1
- package/dist/feature-libraries/sequence-field/sequenceFieldToDelta.d.ts.map +1 -1
- package/dist/feature-libraries/sequence-field/sequenceFieldToDelta.js.map +1 -1
- package/dist/feature-libraries/sequence-field/utils.d.ts +7 -5
- package/dist/feature-libraries/sequence-field/utils.d.ts.map +1 -1
- package/dist/feature-libraries/sequence-field/utils.js +7 -5
- package/dist/feature-libraries/sequence-field/utils.js.map +1 -1
- package/dist/feature-libraries/treeCursorUtils.d.ts +5 -1
- package/dist/feature-libraries/treeCursorUtils.d.ts.map +1 -1
- package/dist/feature-libraries/treeCursorUtils.js +10 -4
- package/dist/feature-libraries/treeCursorUtils.js.map +1 -1
- package/dist/feature-libraries/treeTextCursor.d.ts +1 -1
- package/dist/feature-libraries/treeTextCursor.js +1 -1
- package/dist/feature-libraries/treeTextCursor.js.map +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -6
- package/dist/index.js.map +1 -1
- package/dist/packageVersion.d.ts +1 -1
- package/dist/packageVersion.d.ts.map +1 -1
- package/dist/packageVersion.js +1 -1
- package/dist/packageVersion.js.map +1 -1
- package/dist/shared-tree/checkoutFlexTreeView.d.ts.map +1 -1
- package/dist/shared-tree/checkoutFlexTreeView.js.map +1 -1
- package/dist/shared-tree/independentView.d.ts +1 -1
- package/dist/shared-tree/independentView.d.ts.map +1 -1
- package/dist/shared-tree/independentView.js +8 -3
- package/dist/shared-tree/independentView.js.map +1 -1
- package/dist/shared-tree/index.d.ts +1 -1
- package/dist/shared-tree/index.d.ts.map +1 -1
- package/dist/shared-tree/index.js.map +1 -1
- package/dist/shared-tree/schematizeTree.d.ts +1 -1
- package/dist/shared-tree/schematizeTree.d.ts.map +1 -1
- package/dist/shared-tree/schematizeTree.js.map +1 -1
- package/dist/shared-tree/schematizingTreeView.d.ts +12 -2
- package/dist/shared-tree/schematizingTreeView.d.ts.map +1 -1
- package/dist/shared-tree/schematizingTreeView.js +37 -23
- package/dist/shared-tree/schematizingTreeView.js.map +1 -1
- package/dist/shared-tree/sharedTree.d.ts +6 -6
- package/dist/shared-tree/sharedTree.d.ts.map +1 -1
- package/dist/shared-tree/sharedTree.js +9 -8
- package/dist/shared-tree/sharedTree.js.map +1 -1
- package/dist/shared-tree/sharedTreeChangeFamily.d.ts +1 -1
- package/dist/shared-tree/sharedTreeChangeFamily.d.ts.map +1 -1
- package/dist/shared-tree/sharedTreeChangeFamily.js.map +1 -1
- package/dist/shared-tree/tree.d.ts.map +1 -1
- package/dist/shared-tree/tree.js +9 -25
- package/dist/shared-tree/tree.js.map +1 -1
- package/dist/shared-tree/treeAlpha.d.ts +78 -5
- package/dist/shared-tree/treeAlpha.d.ts.map +1 -1
- package/dist/shared-tree/treeAlpha.js +52 -8
- package/dist/shared-tree/treeAlpha.js.map +1 -1
- package/dist/shared-tree/treeCheckout.d.ts.map +1 -1
- package/dist/shared-tree/treeCheckout.js +8 -4
- package/dist/shared-tree/treeCheckout.js.map +1 -1
- package/dist/shared-tree-core/branch.d.ts +2 -2
- package/dist/shared-tree-core/branch.d.ts.map +1 -1
- package/dist/shared-tree-core/branch.js +2 -2
- package/dist/shared-tree-core/branch.js.map +1 -1
- package/dist/shared-tree-core/branchCommitEnricher.d.ts +1 -1
- package/dist/shared-tree-core/branchCommitEnricher.d.ts.map +1 -1
- package/dist/shared-tree-core/branchCommitEnricher.js.map +1 -1
- package/dist/shared-tree-core/defaultResubmitMachine.d.ts.map +1 -1
- package/dist/shared-tree-core/defaultResubmitMachine.js.map +1 -1
- package/dist/shared-tree-core/editManager.d.ts +3 -1
- package/dist/shared-tree-core/editManager.d.ts.map +1 -1
- package/dist/shared-tree-core/editManager.js +4 -2
- package/dist/shared-tree-core/editManager.js.map +1 -1
- package/dist/shared-tree-core/editManagerCodecs.d.ts.map +1 -1
- package/dist/shared-tree-core/editManagerCodecs.js.map +1 -1
- package/dist/shared-tree-core/editManagerSummarizer.d.ts +1 -1
- package/dist/shared-tree-core/editManagerSummarizer.d.ts.map +1 -1
- package/dist/shared-tree-core/editManagerSummarizer.js.map +1 -1
- package/dist/shared-tree-core/messageCodecs.d.ts +1 -1
- package/dist/shared-tree-core/messageCodecs.js +1 -1
- package/dist/shared-tree-core/messageCodecs.js.map +1 -1
- package/dist/shared-tree-core/sequenceIdUtils.d.ts.map +1 -1
- package/dist/shared-tree-core/sequenceIdUtils.js.map +1 -1
- package/dist/shared-tree-core/sharedTreeCore.d.ts +2 -2
- package/dist/shared-tree-core/sharedTreeCore.d.ts.map +1 -1
- package/dist/shared-tree-core/sharedTreeCore.js +4 -4
- package/dist/shared-tree-core/sharedTreeCore.js.map +1 -1
- package/dist/shared-tree-core/transaction.d.ts.map +1 -1
- package/dist/shared-tree-core/transaction.js +1 -1
- package/dist/shared-tree-core/transaction.js.map +1 -1
- package/dist/shared-tree-core/transactionEnricher.d.ts.map +1 -1
- package/dist/shared-tree-core/transactionEnricher.js.map +1 -1
- package/dist/simple-tree/api/conciseTree.d.ts.map +1 -1
- package/dist/simple-tree/api/conciseTree.js +1 -1
- package/dist/simple-tree/api/conciseTree.js.map +1 -1
- package/dist/simple-tree/api/configuration.d.ts +2 -2
- package/dist/simple-tree/api/configuration.js +5 -5
- package/dist/simple-tree/api/configuration.js.map +1 -1
- package/dist/simple-tree/api/create.d.ts +10 -29
- package/dist/simple-tree/api/create.d.ts.map +1 -1
- package/dist/simple-tree/api/create.js +27 -51
- package/dist/simple-tree/api/create.js.map +1 -1
- package/dist/simple-tree/api/customTree.d.ts +5 -1
- package/dist/simple-tree/api/customTree.d.ts.map +1 -1
- package/dist/simple-tree/api/customTree.js +33 -25
- package/dist/simple-tree/api/customTree.js.map +1 -1
- package/dist/simple-tree/api/getSimpleSchema.d.ts.map +1 -1
- package/dist/simple-tree/api/getSimpleSchema.js.map +1 -1
- package/dist/simple-tree/api/identifierIndex.js +2 -2
- package/dist/simple-tree/api/identifierIndex.js.map +1 -1
- package/dist/simple-tree/api/index.d.ts +2 -3
- package/dist/simple-tree/api/index.d.ts.map +1 -1
- package/dist/simple-tree/api/index.js +2 -10
- package/dist/simple-tree/api/index.js.map +1 -1
- package/dist/simple-tree/api/schemaCompatibilityTester.d.ts.map +1 -1
- package/dist/simple-tree/api/schemaCompatibilityTester.js.map +1 -1
- package/dist/simple-tree/api/schemaFactory.d.ts +14 -6
- package/dist/simple-tree/api/schemaFactory.d.ts.map +1 -1
- package/dist/simple-tree/api/schemaFactory.js +45 -16
- package/dist/simple-tree/api/schemaFactory.js.map +1 -1
- package/dist/simple-tree/api/schemaFactoryAlpha.d.ts +1 -3
- package/dist/simple-tree/api/schemaFactoryAlpha.d.ts.map +1 -1
- package/dist/simple-tree/api/schemaFactoryAlpha.js +4 -6
- package/dist/simple-tree/api/schemaFactoryAlpha.js.map +1 -1
- package/dist/simple-tree/api/schemaFactoryRecursive.d.ts +2 -2
- package/dist/simple-tree/api/schemaFactoryRecursive.d.ts.map +1 -1
- package/dist/simple-tree/api/schemaFactoryRecursive.js.map +1 -1
- package/dist/simple-tree/api/schemaFromSimple.d.ts.map +1 -1
- package/dist/simple-tree/api/schemaFromSimple.js.map +1 -1
- package/dist/simple-tree/api/simpleSchemaToJsonSchema.d.ts +1 -1
- package/dist/simple-tree/api/simpleSchemaToJsonSchema.d.ts.map +1 -1
- package/dist/simple-tree/api/simpleSchemaToJsonSchema.js +4 -6
- package/dist/simple-tree/api/simpleSchemaToJsonSchema.js.map +1 -1
- package/dist/simple-tree/api/storedSchema.d.ts +1 -1
- package/dist/simple-tree/api/storedSchema.d.ts.map +1 -1
- package/dist/simple-tree/api/storedSchema.js +7 -6
- package/dist/simple-tree/api/storedSchema.js.map +1 -1
- package/dist/simple-tree/api/tree.d.ts +2 -2
- package/dist/simple-tree/api/tree.d.ts.map +1 -1
- package/dist/simple-tree/api/tree.js.map +1 -1
- package/dist/simple-tree/api/treeBeta.d.ts.map +1 -1
- package/dist/simple-tree/api/treeBeta.js +1 -1
- package/dist/simple-tree/api/treeBeta.js.map +1 -1
- package/dist/simple-tree/api/treeNodeApi.d.ts +44 -6
- package/dist/simple-tree/api/treeNodeApi.d.ts.map +1 -1
- package/dist/simple-tree/api/treeNodeApi.js +56 -29
- package/dist/simple-tree/api/treeNodeApi.js.map +1 -1
- package/dist/simple-tree/api/typesUnsafe.d.ts +1 -1
- package/dist/simple-tree/api/typesUnsafe.d.ts.map +1 -1
- package/dist/simple-tree/api/typesUnsafe.js.map +1 -1
- package/dist/simple-tree/api/verboseTree.d.ts.map +1 -1
- package/dist/simple-tree/api/verboseTree.js +15 -12
- package/dist/simple-tree/api/verboseTree.js.map +1 -1
- package/dist/simple-tree/api/viewSchemaToSimpleSchema.d.ts.map +1 -1
- package/dist/simple-tree/api/viewSchemaToSimpleSchema.js +4 -6
- package/dist/simple-tree/api/viewSchemaToSimpleSchema.js.map +1 -1
- package/dist/simple-tree/core/context.d.ts.map +1 -1
- package/dist/simple-tree/core/context.js.map +1 -1
- package/dist/simple-tree/core/getOrCreateNode.d.ts +1 -1
- package/dist/simple-tree/core/getOrCreateNode.d.ts.map +1 -1
- package/dist/simple-tree/core/getOrCreateNode.js +2 -1
- package/dist/simple-tree/core/getOrCreateNode.js.map +1 -1
- package/dist/simple-tree/core/index.d.ts +2 -2
- package/dist/simple-tree/core/index.d.ts.map +1 -1
- package/dist/simple-tree/core/index.js +3 -4
- package/dist/simple-tree/core/index.js.map +1 -1
- package/dist/simple-tree/core/treeNode.d.ts.map +1 -1
- package/dist/simple-tree/core/treeNode.js +1 -1
- package/dist/simple-tree/core/treeNode.js.map +1 -1
- package/dist/simple-tree/core/treeNodeKernel.d.ts +18 -28
- package/dist/simple-tree/core/treeNodeKernel.d.ts.map +1 -1
- package/dist/simple-tree/core/treeNodeKernel.js +28 -35
- package/dist/simple-tree/core/treeNodeKernel.js.map +1 -1
- package/dist/simple-tree/core/treeNodeSchema.d.ts.map +1 -1
- package/dist/simple-tree/core/treeNodeSchema.js.map +1 -1
- package/dist/simple-tree/core/types.d.ts.map +1 -1
- package/dist/simple-tree/core/types.js.map +1 -1
- package/dist/simple-tree/core/unhydratedFlexTree.d.ts +128 -59
- package/dist/simple-tree/core/unhydratedFlexTree.d.ts.map +1 -1
- package/dist/simple-tree/core/unhydratedFlexTree.js +180 -193
- package/dist/simple-tree/core/unhydratedFlexTree.js.map +1 -1
- package/dist/simple-tree/core/withType.d.ts +1 -1
- package/dist/simple-tree/core/withType.d.ts.map +1 -1
- package/dist/simple-tree/core/withType.js.map +1 -1
- package/dist/simple-tree/createContext.d.ts.map +1 -1
- package/dist/simple-tree/createContext.js.map +1 -1
- package/dist/simple-tree/getTreeNodeForField.d.ts.map +1 -1
- package/dist/simple-tree/getTreeNodeForField.js.map +1 -1
- package/dist/simple-tree/index.d.ts +4 -11
- package/dist/simple-tree/index.d.ts.map +1 -1
- package/dist/simple-tree/index.js +16 -24
- package/dist/simple-tree/index.js.map +1 -1
- package/dist/simple-tree/leafNodeSchema.d.ts.map +1 -1
- package/dist/simple-tree/leafNodeSchema.js.map +1 -1
- package/dist/simple-tree/{arrayNode.d.ts → node-kinds/array/arrayNode.d.ts} +3 -3
- package/dist/simple-tree/node-kinds/array/arrayNode.d.ts.map +1 -0
- package/dist/simple-tree/{arrayNode.js → node-kinds/array/arrayNode.js} +12 -13
- package/dist/simple-tree/node-kinds/array/arrayNode.js.map +1 -0
- package/dist/simple-tree/{arrayNodeTypes.d.ts → node-kinds/array/arrayNodeTypes.d.ts} +3 -3
- package/dist/simple-tree/node-kinds/array/arrayNodeTypes.d.ts.map +1 -0
- package/dist/simple-tree/{arrayNodeTypes.js → node-kinds/array/arrayNodeTypes.js} +1 -1
- package/dist/simple-tree/node-kinds/array/arrayNodeTypes.js.map +1 -0
- package/dist/simple-tree/node-kinds/array/index.d.ts +7 -0
- package/dist/simple-tree/node-kinds/array/index.d.ts.map +1 -0
- package/dist/simple-tree/node-kinds/array/index.js +16 -0
- package/dist/simple-tree/node-kinds/array/index.js.map +1 -0
- package/dist/simple-tree/node-kinds/index.d.ts +8 -0
- package/dist/simple-tree/node-kinds/index.d.ts.map +1 -0
- package/dist/simple-tree/node-kinds/index.js +25 -0
- package/dist/simple-tree/node-kinds/index.js.map +1 -0
- package/dist/simple-tree/node-kinds/map/index.d.ts +7 -0
- package/dist/simple-tree/node-kinds/map/index.d.ts.map +1 -0
- package/dist/simple-tree/node-kinds/map/index.js +13 -0
- package/dist/simple-tree/node-kinds/map/index.js.map +1 -0
- package/{lib/simple-tree → dist/simple-tree/node-kinds/map}/mapNode.d.ts +3 -3
- package/dist/simple-tree/node-kinds/map/mapNode.d.ts.map +1 -0
- package/dist/simple-tree/{mapNode.js → node-kinds/map/mapNode.js} +9 -9
- package/dist/simple-tree/node-kinds/map/mapNode.js.map +1 -0
- package/dist/simple-tree/{mapNodeTypes.d.ts → node-kinds/map/mapNodeTypes.d.ts} +3 -3
- package/dist/simple-tree/node-kinds/map/mapNodeTypes.d.ts.map +1 -0
- package/dist/simple-tree/{mapNodeTypes.js → node-kinds/map/mapNodeTypes.js} +1 -1
- package/dist/simple-tree/node-kinds/map/mapNodeTypes.js.map +1 -0
- package/dist/simple-tree/node-kinds/object/index.d.ts +7 -0
- package/dist/simple-tree/node-kinds/object/index.d.ts.map +1 -0
- package/dist/simple-tree/node-kinds/object/index.js +15 -0
- package/dist/simple-tree/node-kinds/object/index.js.map +1 -0
- package/{lib/simple-tree → dist/simple-tree/node-kinds/object}/objectNode.d.ts +6 -6
- package/dist/simple-tree/node-kinds/object/objectNode.d.ts.map +1 -0
- package/dist/simple-tree/{objectNode.js → node-kinds/object/objectNode.js} +9 -17
- package/dist/simple-tree/node-kinds/object/objectNode.js.map +1 -0
- package/{lib/simple-tree → dist/simple-tree/node-kinds/object}/objectNodeTypes.d.ts +5 -5
- package/dist/simple-tree/node-kinds/object/objectNodeTypes.d.ts.map +1 -0
- package/dist/simple-tree/{objectNodeTypes.js → node-kinds/object/objectNodeTypes.js} +1 -1
- package/dist/simple-tree/node-kinds/object/objectNodeTypes.js.map +1 -0
- package/dist/simple-tree/prepareForInsertion.d.ts +20 -6
- package/dist/simple-tree/prepareForInsertion.d.ts.map +1 -1
- package/dist/simple-tree/prepareForInsertion.js +26 -19
- package/dist/simple-tree/prepareForInsertion.js.map +1 -1
- package/dist/simple-tree/schemaTypes.d.ts +9 -9
- package/dist/simple-tree/schemaTypes.d.ts.map +1 -1
- package/dist/simple-tree/schemaTypes.js.map +1 -1
- package/dist/simple-tree/simpleSchema.d.ts.map +1 -1
- package/dist/simple-tree/simpleSchema.js.map +1 -1
- package/dist/simple-tree/toStoredSchema.d.ts +6 -1
- package/dist/simple-tree/toStoredSchema.d.ts.map +1 -1
- package/dist/simple-tree/toStoredSchema.js +7 -4
- package/dist/simple-tree/toStoredSchema.js.map +1 -1
- package/dist/simple-tree/treeNodeValid.d.ts +1 -1
- package/dist/simple-tree/treeNodeValid.d.ts.map +1 -1
- package/dist/simple-tree/treeNodeValid.js +10 -10
- package/dist/simple-tree/treeNodeValid.js.map +1 -1
- package/dist/simple-tree/unhydratedFlexTreeFromInsertable.d.ts +72 -0
- package/dist/simple-tree/unhydratedFlexTreeFromInsertable.d.ts.map +1 -0
- package/dist/simple-tree/{toMapTree.js → unhydratedFlexTreeFromInsertable.js} +136 -178
- package/dist/simple-tree/unhydratedFlexTreeFromInsertable.js.map +1 -0
- package/dist/simple-tree/walkFieldSchema.d.ts.map +1 -1
- package/dist/simple-tree/walkFieldSchema.js.map +1 -1
- package/dist/tableSchema.d.ts +10 -10
- package/dist/treeFactory.d.ts +1 -1
- package/dist/treeFactory.d.ts.map +1 -1
- package/dist/treeFactory.js +7 -2
- package/dist/treeFactory.js.map +1 -1
- package/dist/util/bTreeUtils.d.ts.map +1 -1
- package/dist/util/bTreeUtils.js.map +1 -1
- package/dist/util/breakable.d.ts +23 -4
- package/dist/util/breakable.d.ts.map +1 -1
- package/dist/util/breakable.js +12 -3
- package/dist/util/breakable.js.map +1 -1
- package/dist/util/index.d.ts +1 -1
- package/dist/util/index.d.ts.map +1 -1
- package/dist/util/index.js +2 -1
- package/dist/util/index.js.map +1 -1
- package/dist/util/utils.d.ts +4 -0
- package/dist/util/utils.d.ts.map +1 -1
- package/dist/util/utils.js +8 -1
- package/dist/util/utils.js.map +1 -1
- package/docs/SharedTree Philosophy.md +5 -5
- package/docs/user-facing/schema-evolution.md +1 -1
- package/lib/alpha.d.ts +2 -0
- package/lib/codec/codec.d.ts +33 -3
- package/lib/codec/codec.d.ts.map +1 -1
- package/lib/codec/codec.js +13 -3
- package/lib/codec/codec.js.map +1 -1
- package/lib/codec/index.d.ts +1 -1
- package/lib/codec/index.d.ts.map +1 -1
- package/lib/codec/index.js.map +1 -1
- package/lib/codec/versioned/codec.d.ts +35 -2
- package/lib/codec/versioned/codec.d.ts.map +1 -1
- package/lib/codec/versioned/codec.js +36 -2
- package/lib/codec/versioned/codec.js.map +1 -1
- package/lib/core/index.d.ts +1 -1
- package/lib/core/index.d.ts.map +1 -1
- package/lib/core/index.js +1 -1
- package/lib/core/index.js.map +1 -1
- package/lib/core/rebase/types.d.ts +2 -2
- package/lib/core/rebase/types.js +2 -2
- package/lib/core/rebase/types.js.map +1 -1
- package/lib/core/rebase/utils.d.ts +0 -2
- package/lib/core/rebase/utils.d.ts.map +1 -1
- package/lib/core/rebase/utils.js +6 -10
- package/lib/core/rebase/utils.js.map +1 -1
- package/lib/core/schema-stored/formatV1.d.ts +0 -1
- package/lib/core/schema-stored/formatV1.d.ts.map +1 -1
- package/lib/core/schema-stored/formatV1.js +0 -1
- package/lib/core/schema-stored/formatV1.js.map +1 -1
- package/lib/core/schema-stored/index.d.ts +1 -1
- package/lib/core/schema-stored/index.d.ts.map +1 -1
- package/lib/core/schema-stored/index.js +1 -1
- package/lib/core/schema-stored/index.js.map +1 -1
- package/lib/core/schema-stored/schema.d.ts +6 -0
- package/lib/core/schema-stored/schema.d.ts.map +1 -1
- package/lib/core/schema-stored/schema.js +7 -0
- package/lib/core/schema-stored/schema.js.map +1 -1
- package/lib/core/tree/anchorSet.d.ts +2 -1
- package/lib/core/tree/anchorSet.d.ts.map +1 -1
- package/lib/core/tree/anchorSet.js +2 -1
- package/lib/core/tree/anchorSet.js.map +1 -1
- package/lib/core/tree/detachedFieldIndex.d.ts +2 -2
- package/lib/core/tree/detachedFieldIndex.d.ts.map +1 -1
- package/lib/core/tree/detachedFieldIndex.js +6 -2
- package/lib/core/tree/detachedFieldIndex.js.map +1 -1
- package/lib/core/tree/mapTree.d.ts +2 -1
- package/lib/core/tree/mapTree.d.ts.map +1 -1
- package/lib/core/tree/mapTree.js +11 -5
- package/lib/core/tree/mapTree.js.map +1 -1
- package/lib/core/tree/pathTree.d.ts +12 -11
- package/lib/core/tree/pathTree.d.ts.map +1 -1
- package/lib/core/tree/pathTree.js +8 -7
- package/lib/core/tree/pathTree.js.map +1 -1
- package/lib/core/tree/treeTextFormat.d.ts +1 -1
- package/lib/core/tree/treeTextFormat.js +1 -1
- package/lib/core/tree/treeTextFormat.js.map +1 -1
- package/lib/core/tree/visitorUtils.d.ts +2 -2
- package/lib/core/tree/visitorUtils.d.ts.map +1 -1
- package/lib/core/tree/visitorUtils.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/chunkedForest.d.ts +1 -1
- package/lib/feature-libraries/chunked-forest/chunkedForest.js +1 -1
- package/lib/feature-libraries/chunked-forest/chunkedForest.js.map +1 -1
- package/lib/feature-libraries/default-schema/defaultEditBuilder.d.ts +3 -2
- package/lib/feature-libraries/default-schema/defaultEditBuilder.d.ts.map +1 -1
- package/lib/feature-libraries/default-schema/defaultEditBuilder.js +1 -1
- package/lib/feature-libraries/default-schema/defaultEditBuilder.js.map +1 -1
- package/lib/feature-libraries/default-schema/index.d.ts +1 -1
- package/lib/feature-libraries/default-schema/index.d.ts.map +1 -1
- package/lib/feature-libraries/default-schema/index.js +1 -1
- package/lib/feature-libraries/default-schema/index.js.map +1 -1
- package/lib/feature-libraries/default-schema/schemaChecker.d.ts +17 -16
- package/lib/feature-libraries/default-schema/schemaChecker.d.ts.map +1 -1
- package/lib/feature-libraries/default-schema/schemaChecker.js +53 -37
- package/lib/feature-libraries/default-schema/schemaChecker.js.map +1 -1
- package/lib/feature-libraries/flex-tree/context.d.ts +32 -8
- package/lib/feature-libraries/flex-tree/context.d.ts.map +1 -1
- package/lib/feature-libraries/flex-tree/context.js +23 -7
- package/lib/feature-libraries/flex-tree/context.js.map +1 -1
- package/lib/feature-libraries/flex-tree/flexTreeTypes.d.ts +37 -16
- package/lib/feature-libraries/flex-tree/flexTreeTypes.d.ts.map +1 -1
- package/lib/feature-libraries/flex-tree/flexTreeTypes.js +7 -2
- package/lib/feature-libraries/flex-tree/flexTreeTypes.js.map +1 -1
- package/lib/feature-libraries/flex-tree/index.d.ts +2 -2
- package/lib/feature-libraries/flex-tree/index.d.ts.map +1 -1
- package/lib/feature-libraries/flex-tree/index.js.map +1 -1
- package/lib/feature-libraries/flex-tree/lazyField.d.ts +6 -6
- package/lib/feature-libraries/flex-tree/lazyField.d.ts.map +1 -1
- package/lib/feature-libraries/flex-tree/lazyField.js +1 -1
- package/lib/feature-libraries/flex-tree/lazyField.js.map +1 -1
- package/lib/feature-libraries/flex-tree/lazyNode.d.ts +3 -2
- package/lib/feature-libraries/flex-tree/lazyNode.d.ts.map +1 -1
- package/lib/feature-libraries/flex-tree/lazyNode.js +3 -0
- package/lib/feature-libraries/flex-tree/lazyNode.js.map +1 -1
- package/lib/feature-libraries/flex-tree/utilities.d.ts.map +1 -1
- package/lib/feature-libraries/flex-tree/utilities.js.map +1 -1
- package/lib/feature-libraries/forest-summary/forestSummarizer.d.ts +3 -3
- package/lib/feature-libraries/forest-summary/forestSummarizer.d.ts.map +1 -1
- package/lib/feature-libraries/forest-summary/forestSummarizer.js +2 -2
- package/lib/feature-libraries/forest-summary/forestSummarizer.js.map +1 -1
- package/lib/feature-libraries/index.d.ts +4 -4
- package/lib/feature-libraries/index.d.ts.map +1 -1
- package/lib/feature-libraries/index.js +3 -3
- package/lib/feature-libraries/index.js.map +1 -1
- package/lib/feature-libraries/indexing/anchorTreeIndex.d.ts +2 -2
- package/lib/feature-libraries/indexing/anchorTreeIndex.d.ts.map +1 -1
- package/lib/feature-libraries/indexing/anchorTreeIndex.js +1 -1
- package/lib/feature-libraries/indexing/anchorTreeIndex.js.map +1 -1
- package/lib/feature-libraries/mapTreeCursor.d.ts +39 -3
- package/lib/feature-libraries/mapTreeCursor.d.ts.map +1 -1
- package/lib/feature-libraries/mapTreeCursor.js +43 -7
- package/lib/feature-libraries/mapTreeCursor.js.map +1 -1
- package/lib/feature-libraries/modular-schema/crossFieldQueries.d.ts.map +1 -1
- package/lib/feature-libraries/modular-schema/crossFieldQueries.js.map +1 -1
- package/lib/feature-libraries/modular-schema/fieldChangeHandler.d.ts +1 -1
- package/lib/feature-libraries/modular-schema/fieldChangeHandler.d.ts.map +1 -1
- package/lib/feature-libraries/modular-schema/fieldChangeHandler.js.map +1 -1
- package/lib/feature-libraries/modular-schema/fieldKindWithEditor.d.ts +1 -1
- package/lib/feature-libraries/modular-schema/fieldKindWithEditor.js +1 -1
- package/lib/feature-libraries/modular-schema/fieldKindWithEditor.js.map +1 -1
- package/lib/feature-libraries/modular-schema/genericFieldKind.d.ts.map +1 -1
- package/lib/feature-libraries/modular-schema/genericFieldKind.js +2 -2
- package/lib/feature-libraries/modular-schema/genericFieldKind.js.map +1 -1
- package/lib/feature-libraries/modular-schema/genericFieldKindCodecs.d.ts.map +1 -1
- package/lib/feature-libraries/modular-schema/genericFieldKindCodecs.js.map +1 -1
- package/lib/feature-libraries/modular-schema/genericFieldKindTypes.d.ts.map +1 -1
- package/lib/feature-libraries/modular-schema/genericFieldKindTypes.js.map +1 -1
- package/lib/feature-libraries/modular-schema/isNeverTree.d.ts +0 -2
- package/lib/feature-libraries/modular-schema/isNeverTree.d.ts.map +1 -1
- package/lib/feature-libraries/modular-schema/isNeverTree.js +0 -2
- package/lib/feature-libraries/modular-schema/isNeverTree.js.map +1 -1
- package/lib/feature-libraries/modular-schema/modularChangeCodecs.d.ts +1 -1
- package/lib/feature-libraries/modular-schema/modularChangeCodecs.d.ts.map +1 -1
- package/lib/feature-libraries/modular-schema/modularChangeCodecs.js +5 -5
- package/lib/feature-libraries/modular-schema/modularChangeCodecs.js.map +1 -1
- package/lib/feature-libraries/modular-schema/modularChangeFamily.d.ts +2 -0
- package/lib/feature-libraries/modular-schema/modularChangeFamily.d.ts.map +1 -1
- package/lib/feature-libraries/modular-schema/modularChangeFamily.js +2 -0
- package/lib/feature-libraries/modular-schema/modularChangeFamily.js.map +1 -1
- package/lib/feature-libraries/modular-schema/modularChangeTypes.d.ts.map +1 -1
- package/lib/feature-libraries/modular-schema/modularChangeTypes.js.map +1 -1
- package/lib/feature-libraries/node-identifier/mockNodeIdentifierManager.d.ts.map +1 -1
- package/lib/feature-libraries/node-identifier/mockNodeIdentifierManager.js +8 -3
- package/lib/feature-libraries/node-identifier/mockNodeIdentifierManager.js.map +1 -1
- package/lib/feature-libraries/object-forest/objectForest.d.ts +22 -5
- package/lib/feature-libraries/object-forest/objectForest.d.ts.map +1 -1
- package/lib/feature-libraries/object-forest/objectForest.js +299 -209
- package/lib/feature-libraries/object-forest/objectForest.js.map +1 -1
- package/lib/feature-libraries/schema-edits/schemaChangeCodecs.d.ts +2 -2
- package/lib/feature-libraries/schema-edits/schemaChangeCodecs.d.ts.map +1 -1
- package/lib/feature-libraries/schema-edits/schemaChangeCodecs.js +4 -3
- package/lib/feature-libraries/schema-edits/schemaChangeCodecs.js.map +1 -1
- package/lib/feature-libraries/schema-edits/schemaChangeFormat.d.ts +2 -2
- package/lib/feature-libraries/schema-index/codec.d.ts +6 -12
- package/lib/feature-libraries/schema-index/codec.d.ts.map +1 -1
- package/lib/feature-libraries/schema-index/codec.js +8 -15
- package/lib/feature-libraries/schema-index/codec.js.map +1 -1
- package/lib/feature-libraries/schema-index/formatV1.d.ts +2 -2
- package/lib/feature-libraries/schema-index/formatV1.d.ts.map +1 -1
- package/lib/feature-libraries/schema-index/formatV1.js +2 -2
- package/lib/feature-libraries/schema-index/formatV1.js.map +1 -1
- package/lib/feature-libraries/schema-index/index.d.ts +1 -1
- package/lib/feature-libraries/schema-index/index.d.ts.map +1 -1
- package/lib/feature-libraries/schema-index/index.js +1 -1
- package/lib/feature-libraries/schema-index/index.js.map +1 -1
- package/lib/feature-libraries/schema-index/schemaSummarizer.d.ts +1 -1
- package/lib/feature-libraries/schema-index/schemaSummarizer.d.ts.map +1 -1
- package/lib/feature-libraries/schema-index/schemaSummarizer.js.map +1 -1
- package/lib/feature-libraries/sequence-field/formatV3.d.ts.map +1 -1
- package/lib/feature-libraries/sequence-field/formatV3.js.map +1 -1
- package/lib/feature-libraries/sequence-field/markQueue.d.ts.map +1 -1
- package/lib/feature-libraries/sequence-field/markQueue.js.map +1 -1
- package/lib/feature-libraries/sequence-field/prune.d.ts.map +1 -1
- package/lib/feature-libraries/sequence-field/prune.js.map +1 -1
- package/lib/feature-libraries/sequence-field/rebase.js +1 -1
- package/lib/feature-libraries/sequence-field/rebase.js.map +1 -1
- package/lib/feature-libraries/sequence-field/relevantRemovedRoots.d.ts +1 -1
- package/lib/feature-libraries/sequence-field/relevantRemovedRoots.d.ts.map +1 -1
- package/lib/feature-libraries/sequence-field/relevantRemovedRoots.js.map +1 -1
- package/lib/feature-libraries/sequence-field/replaceRevisions.d.ts.map +1 -1
- package/lib/feature-libraries/sequence-field/replaceRevisions.js.map +1 -1
- package/lib/feature-libraries/sequence-field/sequenceFieldCodecV1.d.ts +1 -1
- package/lib/feature-libraries/sequence-field/sequenceFieldCodecV1.d.ts.map +1 -1
- package/lib/feature-libraries/sequence-field/sequenceFieldCodecV1.js +1 -1
- package/lib/feature-libraries/sequence-field/sequenceFieldCodecV1.js.map +1 -1
- package/lib/feature-libraries/sequence-field/sequenceFieldCodecV2.d.ts +2 -2
- package/lib/feature-libraries/sequence-field/sequenceFieldCodecV2.d.ts.map +1 -1
- package/lib/feature-libraries/sequence-field/sequenceFieldCodecV2.js +1 -1
- package/lib/feature-libraries/sequence-field/sequenceFieldCodecV2.js.map +1 -1
- package/lib/feature-libraries/sequence-field/sequenceFieldCodecV3.d.ts +1 -1
- package/lib/feature-libraries/sequence-field/sequenceFieldCodecV3.d.ts.map +1 -1
- package/lib/feature-libraries/sequence-field/sequenceFieldCodecV3.js +2 -2
- package/lib/feature-libraries/sequence-field/sequenceFieldCodecV3.js.map +1 -1
- package/lib/feature-libraries/sequence-field/sequenceFieldCodecs.d.ts +1 -1
- package/lib/feature-libraries/sequence-field/sequenceFieldCodecs.d.ts.map +1 -1
- package/lib/feature-libraries/sequence-field/sequenceFieldCodecs.js.map +1 -1
- package/lib/feature-libraries/sequence-field/sequenceFieldToDelta.d.ts +1 -1
- package/lib/feature-libraries/sequence-field/sequenceFieldToDelta.d.ts.map +1 -1
- package/lib/feature-libraries/sequence-field/sequenceFieldToDelta.js.map +1 -1
- package/lib/feature-libraries/sequence-field/utils.d.ts +7 -5
- package/lib/feature-libraries/sequence-field/utils.d.ts.map +1 -1
- package/lib/feature-libraries/sequence-field/utils.js +7 -5
- package/lib/feature-libraries/sequence-field/utils.js.map +1 -1
- package/lib/feature-libraries/treeCursorUtils.d.ts +5 -1
- package/lib/feature-libraries/treeCursorUtils.d.ts.map +1 -1
- package/lib/feature-libraries/treeCursorUtils.js +10 -4
- package/lib/feature-libraries/treeCursorUtils.js.map +1 -1
- package/lib/feature-libraries/treeTextCursor.d.ts +1 -1
- package/lib/feature-libraries/treeTextCursor.js +1 -1
- package/lib/feature-libraries/treeTextCursor.js.map +1 -1
- package/lib/index.d.ts +3 -3
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +0 -2
- package/lib/index.js.map +1 -1
- package/lib/packageVersion.d.ts +1 -1
- package/lib/packageVersion.d.ts.map +1 -1
- package/lib/packageVersion.js +1 -1
- package/lib/packageVersion.js.map +1 -1
- package/lib/shared-tree/checkoutFlexTreeView.d.ts.map +1 -1
- package/lib/shared-tree/checkoutFlexTreeView.js.map +1 -1
- package/lib/shared-tree/independentView.d.ts +1 -1
- package/lib/shared-tree/independentView.d.ts.map +1 -1
- package/lib/shared-tree/independentView.js +10 -5
- package/lib/shared-tree/independentView.js.map +1 -1
- package/lib/shared-tree/index.d.ts +1 -1
- package/lib/shared-tree/index.d.ts.map +1 -1
- package/lib/shared-tree/index.js +1 -1
- package/lib/shared-tree/index.js.map +1 -1
- package/lib/shared-tree/schematizeTree.d.ts +1 -1
- package/lib/shared-tree/schematizeTree.d.ts.map +1 -1
- package/lib/shared-tree/schematizeTree.js.map +1 -1
- package/lib/shared-tree/schematizingTreeView.d.ts +12 -2
- package/lib/shared-tree/schematizingTreeView.d.ts.map +1 -1
- package/lib/shared-tree/schematizingTreeView.js +35 -22
- package/lib/shared-tree/schematizingTreeView.js.map +1 -1
- package/lib/shared-tree/sharedTree.d.ts +6 -6
- package/lib/shared-tree/sharedTree.d.ts.map +1 -1
- package/lib/shared-tree/sharedTree.js +12 -11
- package/lib/shared-tree/sharedTree.js.map +1 -1
- package/lib/shared-tree/sharedTreeChangeFamily.d.ts +1 -1
- package/lib/shared-tree/sharedTreeChangeFamily.d.ts.map +1 -1
- package/lib/shared-tree/sharedTreeChangeFamily.js.map +1 -1
- package/lib/shared-tree/tree.d.ts.map +1 -1
- package/lib/shared-tree/tree.js +2 -18
- package/lib/shared-tree/tree.js.map +1 -1
- package/lib/shared-tree/treeAlpha.d.ts +78 -5
- package/lib/shared-tree/treeAlpha.d.ts.map +1 -1
- package/lib/shared-tree/treeAlpha.js +53 -9
- package/lib/shared-tree/treeAlpha.js.map +1 -1
- package/lib/shared-tree/treeCheckout.d.ts.map +1 -1
- package/lib/shared-tree/treeCheckout.js +9 -5
- package/lib/shared-tree/treeCheckout.js.map +1 -1
- package/lib/shared-tree-core/branch.d.ts +2 -2
- package/lib/shared-tree-core/branch.d.ts.map +1 -1
- package/lib/shared-tree-core/branch.js +2 -2
- package/lib/shared-tree-core/branch.js.map +1 -1
- package/lib/shared-tree-core/branchCommitEnricher.d.ts +1 -1
- package/lib/shared-tree-core/branchCommitEnricher.d.ts.map +1 -1
- package/lib/shared-tree-core/branchCommitEnricher.js.map +1 -1
- package/lib/shared-tree-core/defaultResubmitMachine.d.ts.map +1 -1
- package/lib/shared-tree-core/defaultResubmitMachine.js.map +1 -1
- package/lib/shared-tree-core/editManager.d.ts +3 -1
- package/lib/shared-tree-core/editManager.d.ts.map +1 -1
- package/lib/shared-tree-core/editManager.js +4 -2
- package/lib/shared-tree-core/editManager.js.map +1 -1
- package/lib/shared-tree-core/editManagerCodecs.d.ts.map +1 -1
- package/lib/shared-tree-core/editManagerCodecs.js.map +1 -1
- package/lib/shared-tree-core/editManagerSummarizer.d.ts +1 -1
- package/lib/shared-tree-core/editManagerSummarizer.d.ts.map +1 -1
- package/lib/shared-tree-core/editManagerSummarizer.js.map +1 -1
- package/lib/shared-tree-core/messageCodecs.d.ts +1 -1
- package/lib/shared-tree-core/messageCodecs.js +1 -1
- package/lib/shared-tree-core/messageCodecs.js.map +1 -1
- package/lib/shared-tree-core/sequenceIdUtils.d.ts.map +1 -1
- package/lib/shared-tree-core/sequenceIdUtils.js.map +1 -1
- package/lib/shared-tree-core/sharedTreeCore.d.ts +2 -2
- package/lib/shared-tree-core/sharedTreeCore.d.ts.map +1 -1
- package/lib/shared-tree-core/sharedTreeCore.js +4 -4
- package/lib/shared-tree-core/sharedTreeCore.js.map +1 -1
- package/lib/shared-tree-core/transaction.d.ts.map +1 -1
- package/lib/shared-tree-core/transaction.js +1 -1
- package/lib/shared-tree-core/transaction.js.map +1 -1
- package/lib/shared-tree-core/transactionEnricher.d.ts.map +1 -1
- package/lib/shared-tree-core/transactionEnricher.js.map +1 -1
- package/lib/simple-tree/api/conciseTree.d.ts.map +1 -1
- package/lib/simple-tree/api/conciseTree.js +1 -1
- package/lib/simple-tree/api/conciseTree.js.map +1 -1
- package/lib/simple-tree/api/configuration.d.ts +2 -2
- package/lib/simple-tree/api/configuration.js +2 -2
- package/lib/simple-tree/api/configuration.js.map +1 -1
- package/lib/simple-tree/api/create.d.ts +10 -29
- package/lib/simple-tree/api/create.d.ts.map +1 -1
- package/lib/simple-tree/api/create.js +23 -45
- package/lib/simple-tree/api/create.js.map +1 -1
- package/lib/simple-tree/api/customTree.d.ts +5 -1
- package/lib/simple-tree/api/customTree.d.ts.map +1 -1
- package/lib/simple-tree/api/customTree.js +10 -3
- package/lib/simple-tree/api/customTree.js.map +1 -1
- package/lib/simple-tree/api/getSimpleSchema.d.ts.map +1 -1
- package/lib/simple-tree/api/getSimpleSchema.js.map +1 -1
- package/lib/simple-tree/api/identifierIndex.js +1 -1
- package/lib/simple-tree/api/identifierIndex.js.map +1 -1
- package/lib/simple-tree/api/index.d.ts +2 -3
- package/lib/simple-tree/api/index.d.ts.map +1 -1
- package/lib/simple-tree/api/index.js +2 -5
- package/lib/simple-tree/api/index.js.map +1 -1
- package/lib/simple-tree/api/schemaCompatibilityTester.d.ts.map +1 -1
- package/lib/simple-tree/api/schemaCompatibilityTester.js.map +1 -1
- package/lib/simple-tree/api/schemaFactory.d.ts +14 -6
- package/lib/simple-tree/api/schemaFactory.d.ts.map +1 -1
- package/lib/simple-tree/api/schemaFactory.js +44 -15
- package/lib/simple-tree/api/schemaFactory.js.map +1 -1
- package/lib/simple-tree/api/schemaFactoryAlpha.d.ts +1 -3
- package/lib/simple-tree/api/schemaFactoryAlpha.d.ts.map +1 -1
- package/lib/simple-tree/api/schemaFactoryAlpha.js +1 -3
- package/lib/simple-tree/api/schemaFactoryAlpha.js.map +1 -1
- package/lib/simple-tree/api/schemaFactoryRecursive.d.ts +2 -2
- package/lib/simple-tree/api/schemaFactoryRecursive.d.ts.map +1 -1
- package/lib/simple-tree/api/schemaFactoryRecursive.js.map +1 -1
- package/lib/simple-tree/api/schemaFromSimple.d.ts.map +1 -1
- package/lib/simple-tree/api/schemaFromSimple.js.map +1 -1
- package/lib/simple-tree/api/simpleSchemaToJsonSchema.d.ts +1 -1
- package/lib/simple-tree/api/simpleSchemaToJsonSchema.d.ts.map +1 -1
- package/lib/simple-tree/api/simpleSchemaToJsonSchema.js +1 -3
- package/lib/simple-tree/api/simpleSchemaToJsonSchema.js.map +1 -1
- package/lib/simple-tree/api/storedSchema.d.ts +1 -1
- package/lib/simple-tree/api/storedSchema.d.ts.map +1 -1
- package/lib/simple-tree/api/storedSchema.js +3 -2
- package/lib/simple-tree/api/storedSchema.js.map +1 -1
- package/lib/simple-tree/api/tree.d.ts +2 -2
- package/lib/simple-tree/api/tree.d.ts.map +1 -1
- package/lib/simple-tree/api/tree.js.map +1 -1
- package/lib/simple-tree/api/treeBeta.d.ts.map +1 -1
- package/lib/simple-tree/api/treeBeta.js +1 -1
- package/lib/simple-tree/api/treeBeta.js.map +1 -1
- package/lib/simple-tree/api/treeNodeApi.d.ts +44 -6
- package/lib/simple-tree/api/treeNodeApi.d.ts.map +1 -1
- package/lib/simple-tree/api/treeNodeApi.js +55 -29
- package/lib/simple-tree/api/treeNodeApi.js.map +1 -1
- package/lib/simple-tree/api/typesUnsafe.d.ts +1 -1
- package/lib/simple-tree/api/typesUnsafe.d.ts.map +1 -1
- package/lib/simple-tree/api/typesUnsafe.js.map +1 -1
- package/lib/simple-tree/api/verboseTree.d.ts.map +1 -1
- package/lib/simple-tree/api/verboseTree.js +14 -11
- package/lib/simple-tree/api/verboseTree.js.map +1 -1
- package/lib/simple-tree/api/viewSchemaToSimpleSchema.d.ts.map +1 -1
- package/lib/simple-tree/api/viewSchemaToSimpleSchema.js +1 -3
- package/lib/simple-tree/api/viewSchemaToSimpleSchema.js.map +1 -1
- package/lib/simple-tree/core/context.d.ts.map +1 -1
- package/lib/simple-tree/core/context.js.map +1 -1
- package/lib/simple-tree/core/getOrCreateNode.d.ts +1 -1
- package/lib/simple-tree/core/getOrCreateNode.d.ts.map +1 -1
- package/lib/simple-tree/core/getOrCreateNode.js +3 -2
- package/lib/simple-tree/core/getOrCreateNode.js.map +1 -1
- package/lib/simple-tree/core/index.d.ts +2 -2
- package/lib/simple-tree/core/index.d.ts.map +1 -1
- package/lib/simple-tree/core/index.js +2 -2
- package/lib/simple-tree/core/index.js.map +1 -1
- package/lib/simple-tree/core/treeNode.d.ts.map +1 -1
- package/lib/simple-tree/core/treeNode.js +1 -1
- package/lib/simple-tree/core/treeNode.js.map +1 -1
- package/lib/simple-tree/core/treeNodeKernel.d.ts +18 -28
- package/lib/simple-tree/core/treeNodeKernel.d.ts.map +1 -1
- package/lib/simple-tree/core/treeNodeKernel.js +26 -34
- package/lib/simple-tree/core/treeNodeKernel.js.map +1 -1
- package/lib/simple-tree/core/treeNodeSchema.d.ts.map +1 -1
- package/lib/simple-tree/core/treeNodeSchema.js.map +1 -1
- package/lib/simple-tree/core/types.d.ts.map +1 -1
- package/lib/simple-tree/core/types.js.map +1 -1
- package/lib/simple-tree/core/unhydratedFlexTree.d.ts +128 -59
- package/lib/simple-tree/core/unhydratedFlexTree.d.ts.map +1 -1
- package/lib/simple-tree/core/unhydratedFlexTree.js +167 -182
- package/lib/simple-tree/core/unhydratedFlexTree.js.map +1 -1
- package/lib/simple-tree/core/withType.d.ts +1 -1
- package/lib/simple-tree/core/withType.d.ts.map +1 -1
- package/lib/simple-tree/core/withType.js.map +1 -1
- package/lib/simple-tree/createContext.d.ts.map +1 -1
- package/lib/simple-tree/createContext.js.map +1 -1
- package/lib/simple-tree/getTreeNodeForField.d.ts.map +1 -1
- package/lib/simple-tree/getTreeNodeForField.js.map +1 -1
- package/lib/simple-tree/index.d.ts +4 -11
- package/lib/simple-tree/index.d.ts.map +1 -1
- package/lib/simple-tree/index.js +4 -8
- package/lib/simple-tree/index.js.map +1 -1
- package/lib/simple-tree/leafNodeSchema.d.ts.map +1 -1
- package/lib/simple-tree/leafNodeSchema.js.map +1 -1
- package/lib/simple-tree/{arrayNode.d.ts → node-kinds/array/arrayNode.d.ts} +3 -3
- package/lib/simple-tree/node-kinds/array/arrayNode.d.ts.map +1 -0
- package/lib/simple-tree/{arrayNode.js → node-kinds/array/arrayNode.js} +10 -11
- package/lib/simple-tree/node-kinds/array/arrayNode.js.map +1 -0
- package/lib/simple-tree/{arrayNodeTypes.d.ts → node-kinds/array/arrayNodeTypes.d.ts} +3 -3
- package/lib/simple-tree/node-kinds/array/arrayNodeTypes.d.ts.map +1 -0
- package/lib/simple-tree/{arrayNodeTypes.js → node-kinds/array/arrayNodeTypes.js} +1 -1
- package/{dist/simple-tree → lib/simple-tree/node-kinds/array}/arrayNodeTypes.js.map +1 -1
- package/lib/simple-tree/node-kinds/array/index.d.ts +7 -0
- package/lib/simple-tree/node-kinds/array/index.d.ts.map +1 -0
- package/lib/simple-tree/node-kinds/array/index.js +7 -0
- package/lib/simple-tree/node-kinds/array/index.js.map +1 -0
- package/lib/simple-tree/node-kinds/index.d.ts +8 -0
- package/lib/simple-tree/node-kinds/index.d.ts.map +1 -0
- package/lib/simple-tree/node-kinds/index.js +8 -0
- package/lib/simple-tree/node-kinds/index.js.map +1 -0
- package/lib/simple-tree/node-kinds/map/index.d.ts +7 -0
- package/lib/simple-tree/node-kinds/map/index.d.ts.map +1 -0
- package/lib/simple-tree/node-kinds/map/index.js +7 -0
- package/lib/simple-tree/node-kinds/map/index.js.map +1 -0
- package/{dist/simple-tree → lib/simple-tree/node-kinds/map}/mapNode.d.ts +3 -3
- package/lib/simple-tree/node-kinds/map/mapNode.d.ts.map +1 -0
- package/lib/simple-tree/{mapNode.js → node-kinds/map/mapNode.js} +9 -9
- package/lib/simple-tree/node-kinds/map/mapNode.js.map +1 -0
- package/lib/simple-tree/{mapNodeTypes.d.ts → node-kinds/map/mapNodeTypes.d.ts} +3 -3
- package/lib/simple-tree/node-kinds/map/mapNodeTypes.d.ts.map +1 -0
- package/lib/simple-tree/{mapNodeTypes.js → node-kinds/map/mapNodeTypes.js} +1 -1
- package/lib/simple-tree/node-kinds/map/mapNodeTypes.js.map +1 -0
- package/lib/simple-tree/node-kinds/object/index.d.ts +7 -0
- package/lib/simple-tree/node-kinds/object/index.d.ts.map +1 -0
- package/lib/simple-tree/node-kinds/object/index.js +7 -0
- package/lib/simple-tree/node-kinds/object/index.js.map +1 -0
- package/{dist/simple-tree → lib/simple-tree/node-kinds/object}/objectNode.d.ts +6 -6
- package/lib/simple-tree/node-kinds/object/objectNode.d.ts.map +1 -0
- package/lib/simple-tree/{objectNode.js → node-kinds/object/objectNode.js} +9 -17
- package/lib/simple-tree/node-kinds/object/objectNode.js.map +1 -0
- package/{dist/simple-tree → lib/simple-tree/node-kinds/object}/objectNodeTypes.d.ts +5 -5
- package/lib/simple-tree/node-kinds/object/objectNodeTypes.d.ts.map +1 -0
- package/lib/simple-tree/{objectNodeTypes.js → node-kinds/object/objectNodeTypes.js} +1 -1
- package/lib/simple-tree/node-kinds/object/objectNodeTypes.js.map +1 -0
- package/lib/simple-tree/prepareForInsertion.d.ts +20 -6
- package/lib/simple-tree/prepareForInsertion.d.ts.map +1 -1
- package/lib/simple-tree/prepareForInsertion.js +25 -19
- package/lib/simple-tree/prepareForInsertion.js.map +1 -1
- package/lib/simple-tree/schemaTypes.d.ts +9 -9
- package/lib/simple-tree/schemaTypes.d.ts.map +1 -1
- package/lib/simple-tree/schemaTypes.js.map +1 -1
- package/lib/simple-tree/simpleSchema.d.ts.map +1 -1
- package/lib/simple-tree/simpleSchema.js.map +1 -1
- package/lib/simple-tree/toStoredSchema.d.ts +6 -1
- package/lib/simple-tree/toStoredSchema.d.ts.map +1 -1
- package/lib/simple-tree/toStoredSchema.js +5 -2
- package/lib/simple-tree/toStoredSchema.js.map +1 -1
- package/lib/simple-tree/treeNodeValid.d.ts +1 -1
- package/lib/simple-tree/treeNodeValid.d.ts.map +1 -1
- package/lib/simple-tree/treeNodeValid.js +2 -2
- package/lib/simple-tree/treeNodeValid.js.map +1 -1
- package/lib/simple-tree/unhydratedFlexTreeFromInsertable.d.ts +72 -0
- package/lib/simple-tree/unhydratedFlexTreeFromInsertable.d.ts.map +1 -0
- package/lib/simple-tree/{toMapTree.js → unhydratedFlexTreeFromInsertable.js} +138 -179
- package/lib/simple-tree/unhydratedFlexTreeFromInsertable.js.map +1 -0
- package/lib/simple-tree/walkFieldSchema.d.ts.map +1 -1
- package/lib/simple-tree/walkFieldSchema.js.map +1 -1
- package/lib/tableSchema.d.ts +10 -10
- package/lib/treeFactory.d.ts +1 -1
- package/lib/treeFactory.d.ts.map +1 -1
- package/lib/treeFactory.js +7 -2
- package/lib/treeFactory.js.map +1 -1
- package/lib/util/bTreeUtils.d.ts.map +1 -1
- package/lib/util/bTreeUtils.js.map +1 -1
- package/lib/util/breakable.d.ts +23 -4
- package/lib/util/breakable.d.ts.map +1 -1
- package/lib/util/breakable.js +12 -3
- package/lib/util/breakable.js.map +1 -1
- package/lib/util/index.d.ts +1 -1
- package/lib/util/index.d.ts.map +1 -1
- package/lib/util/index.js +1 -1
- package/lib/util/index.js.map +1 -1
- package/lib/util/utils.d.ts +4 -0
- package/lib/util/utils.d.ts.map +1 -1
- package/lib/util/utils.js +6 -0
- package/lib/util/utils.js.map +1 -1
- package/package.json +22 -22
- package/src/codec/codec.ts +37 -6
- package/src/codec/index.ts +1 -0
- package/src/codec/versioned/codec.ts +42 -5
- package/src/core/index.ts +1 -0
- package/src/core/rebase/types.ts +2 -2
- package/src/core/rebase/utils.ts +10 -10
- package/src/core/schema-stored/formatV1.ts +0 -2
- package/src/core/schema-stored/index.ts +1 -0
- package/src/core/schema-stored/schema.ts +7 -0
- package/src/core/tree/anchorSet.ts +2 -1
- package/src/core/tree/detachedFieldIndex.ts +13 -4
- package/src/core/tree/mapTree.ts +22 -7
- package/src/core/tree/pathTree.ts +12 -11
- package/src/core/tree/treeTextFormat.ts +1 -1
- package/src/core/tree/visitorUtils.ts +2 -2
- package/src/feature-libraries/chunked-forest/chunkedForest.ts +1 -1
- package/src/feature-libraries/default-schema/defaultEditBuilder.ts +4 -3
- package/src/feature-libraries/default-schema/index.ts +1 -1
- package/src/feature-libraries/default-schema/schemaChecker.ts +51 -35
- package/src/feature-libraries/flex-tree/context.ts +46 -15
- package/src/feature-libraries/flex-tree/flexTreeTypes.ts +39 -17
- package/src/feature-libraries/flex-tree/index.ts +4 -0
- package/src/feature-libraries/flex-tree/lazyField.ts +9 -7
- package/src/feature-libraries/flex-tree/lazyNode.ts +6 -2
- package/src/feature-libraries/flex-tree/utilities.ts +1 -1
- package/src/feature-libraries/forest-summary/forestSummarizer.ts +4 -3
- package/src/feature-libraries/index.ts +10 -2
- package/src/feature-libraries/indexing/anchorTreeIndex.ts +4 -2
- package/src/feature-libraries/mapTreeCursor.ts +103 -16
- package/src/feature-libraries/modular-schema/crossFieldQueries.ts +1 -0
- package/src/feature-libraries/modular-schema/fieldChangeHandler.ts +1 -1
- package/src/feature-libraries/modular-schema/fieldKindWithEditor.ts +1 -1
- package/src/feature-libraries/modular-schema/genericFieldKind.ts +4 -2
- package/src/feature-libraries/modular-schema/genericFieldKindCodecs.ts +1 -0
- package/src/feature-libraries/modular-schema/genericFieldKindTypes.ts +1 -0
- package/src/feature-libraries/modular-schema/isNeverTree.ts +0 -2
- package/src/feature-libraries/modular-schema/modularChangeCodecs.ts +10 -6
- package/src/feature-libraries/modular-schema/modularChangeFamily.ts +2 -0
- package/src/feature-libraries/modular-schema/modularChangeTypes.ts +1 -0
- package/src/feature-libraries/node-identifier/mockNodeIdentifierManager.ts +11 -5
- package/src/feature-libraries/object-forest/objectForest.ts +65 -7
- package/src/feature-libraries/schema-edits/schemaChangeCodecs.ts +5 -8
- package/src/feature-libraries/schema-index/codec.ts +13 -21
- package/src/feature-libraries/schema-index/formatV1.ts +2 -2
- package/src/feature-libraries/schema-index/index.ts +0 -1
- package/src/feature-libraries/schema-index/schemaSummarizer.ts +1 -1
- package/src/feature-libraries/sequence-field/formatV3.ts +1 -0
- package/src/feature-libraries/sequence-field/markQueue.ts +1 -0
- package/src/feature-libraries/sequence-field/prune.ts +1 -0
- package/src/feature-libraries/sequence-field/rebase.ts +1 -1
- package/src/feature-libraries/sequence-field/relevantRemovedRoots.ts +1 -1
- package/src/feature-libraries/sequence-field/replaceRevisions.ts +3 -1
- package/src/feature-libraries/sequence-field/sequenceFieldCodecV1.ts +2 -2
- package/src/feature-libraries/sequence-field/sequenceFieldCodecV2.ts +3 -3
- package/src/feature-libraries/sequence-field/sequenceFieldCodecV3.ts +3 -3
- package/src/feature-libraries/sequence-field/sequenceFieldCodecs.ts +2 -2
- package/src/feature-libraries/sequence-field/sequenceFieldToDelta.ts +1 -1
- package/src/feature-libraries/sequence-field/utils.ts +7 -5
- package/src/feature-libraries/treeCursorUtils.ts +23 -12
- package/src/feature-libraries/treeTextCursor.ts +1 -1
- package/src/index.ts +2 -4
- package/src/packageVersion.ts +1 -1
- package/src/shared-tree/checkoutFlexTreeView.ts +1 -0
- package/src/shared-tree/independentView.ts +10 -3
- package/src/shared-tree/index.ts +4 -1
- package/src/shared-tree/schematizeTree.ts +2 -1
- package/src/shared-tree/schematizingTreeView.ts +42 -24
- package/src/shared-tree/sharedTree.ts +35 -22
- package/src/shared-tree/sharedTreeChangeFamily.ts +1 -1
- package/src/shared-tree/tree.ts +6 -21
- package/src/shared-tree/treeAlpha.ts +159 -29
- package/src/shared-tree/treeCheckout.ts +9 -5
- package/src/shared-tree-core/branch.ts +3 -4
- package/src/shared-tree-core/branchCommitEnricher.ts +3 -1
- package/src/shared-tree-core/defaultResubmitMachine.ts +2 -0
- package/src/shared-tree-core/editManager.ts +4 -2
- package/src/shared-tree-core/editManagerCodecs.ts +1 -0
- package/src/shared-tree-core/editManagerSummarizer.ts +1 -1
- package/src/shared-tree-core/messageCodecs.ts +1 -1
- package/src/shared-tree-core/sequenceIdUtils.ts +1 -0
- package/src/shared-tree-core/sharedTreeCore.ts +5 -5
- package/src/shared-tree-core/transaction.ts +4 -2
- package/src/shared-tree-core/transactionEnricher.ts +2 -0
- package/src/simple-tree/api/conciseTree.ts +3 -2
- package/src/simple-tree/api/configuration.ts +4 -4
- package/src/simple-tree/api/create.ts +52 -99
- package/src/simple-tree/api/customTree.ts +14 -4
- package/src/simple-tree/api/getSimpleSchema.ts +1 -0
- package/src/simple-tree/api/identifierIndex.ts +1 -1
- package/src/simple-tree/api/index.ts +2 -14
- package/src/simple-tree/api/schemaCompatibilityTester.ts +2 -0
- package/src/simple-tree/api/schemaFactory.ts +89 -35
- package/src/simple-tree/api/schemaFactoryAlpha.ts +8 -6
- package/src/simple-tree/api/schemaFactoryRecursive.ts +3 -3
- package/src/simple-tree/api/schemaFromSimple.ts +3 -1
- package/src/simple-tree/api/simpleSchemaToJsonSchema.ts +1 -3
- package/src/simple-tree/api/storedSchema.ts +5 -4
- package/src/simple-tree/api/tree.ts +3 -4
- package/src/simple-tree/api/treeBeta.ts +3 -2
- package/src/simple-tree/api/treeNodeApi.ts +115 -45
- package/src/simple-tree/api/typesUnsafe.ts +1 -1
- package/src/simple-tree/api/verboseTree.ts +16 -13
- package/src/simple-tree/api/viewSchemaToSimpleSchema.ts +1 -3
- package/src/simple-tree/core/context.ts +1 -0
- package/src/simple-tree/core/getOrCreateNode.ts +6 -3
- package/src/simple-tree/core/index.ts +2 -3
- package/src/simple-tree/core/treeNode.ts +1 -1
- package/src/simple-tree/core/treeNodeKernel.ts +47 -62
- package/src/simple-tree/core/treeNodeSchema.ts +1 -0
- package/src/simple-tree/core/types.ts +1 -1
- package/src/simple-tree/core/unhydratedFlexTree.ts +224 -262
- package/src/simple-tree/core/withType.ts +1 -1
- package/src/simple-tree/createContext.ts +1 -0
- package/src/simple-tree/getTreeNodeForField.ts +2 -0
- package/src/simple-tree/index.ts +17 -24
- package/src/simple-tree/leafNodeSchema.ts +1 -0
- package/src/simple-tree/{arrayNode.ts → node-kinds/array/arrayNode.ts} +18 -19
- package/src/simple-tree/{arrayNodeTypes.ts → node-kinds/array/arrayNodeTypes.ts} +3 -3
- package/src/simple-tree/node-kinds/array/index.ts +18 -0
- package/src/simple-tree/node-kinds/index.ts +39 -0
- package/src/simple-tree/node-kinds/map/index.ts +16 -0
- package/src/simple-tree/{mapNode.ts → node-kinds/map/mapNode.ts} +14 -17
- package/src/simple-tree/{mapNodeTypes.ts → node-kinds/map/mapNodeTypes.ts} +3 -3
- package/src/simple-tree/node-kinds/object/index.ts +16 -0
- package/src/simple-tree/{objectNode.ts → node-kinds/object/objectNode.ts} +32 -45
- package/src/simple-tree/{objectNodeTypes.ts → node-kinds/object/objectNodeTypes.ts} +5 -5
- package/src/simple-tree/prepareForInsertion.ts +50 -43
- package/src/simple-tree/schemaTypes.ts +12 -10
- package/src/simple-tree/simpleSchema.ts +1 -0
- package/src/simple-tree/toStoredSchema.ts +10 -3
- package/src/simple-tree/treeNodeValid.ts +3 -3
- package/src/simple-tree/{toMapTree.ts → unhydratedFlexTreeFromInsertable.ts} +138 -249
- package/src/simple-tree/walkFieldSchema.ts +0 -1
- package/src/treeFactory.ts +7 -2
- package/src/util/bTreeUtils.ts +1 -0
- package/src/util/breakable.ts +19 -4
- package/src/util/index.ts +1 -0
- package/src/util/utils.ts +7 -0
- package/dist/simple-tree/api/testRecursiveDomain.d.ts +0 -62
- package/dist/simple-tree/api/testRecursiveDomain.d.ts.map +0 -1
- package/dist/simple-tree/api/testRecursiveDomain.js +0 -45
- package/dist/simple-tree/api/testRecursiveDomain.js.map +0 -1
- package/dist/simple-tree/arrayNode.d.ts.map +0 -1
- package/dist/simple-tree/arrayNode.js.map +0 -1
- package/dist/simple-tree/arrayNodeTypes.d.ts.map +0 -1
- package/dist/simple-tree/mapNode.d.ts.map +0 -1
- package/dist/simple-tree/mapNode.js.map +0 -1
- package/dist/simple-tree/mapNodeTypes.d.ts.map +0 -1
- package/dist/simple-tree/mapNodeTypes.js.map +0 -1
- package/dist/simple-tree/objectNode.d.ts.map +0 -1
- package/dist/simple-tree/objectNode.js.map +0 -1
- package/dist/simple-tree/objectNodeTypes.d.ts.map +0 -1
- package/dist/simple-tree/objectNodeTypes.js.map +0 -1
- package/dist/simple-tree/toMapTree.d.ts +0 -98
- package/dist/simple-tree/toMapTree.d.ts.map +0 -1
- package/dist/simple-tree/toMapTree.js.map +0 -1
- package/lib/simple-tree/api/testRecursiveDomain.d.ts +0 -62
- package/lib/simple-tree/api/testRecursiveDomain.d.ts.map +0 -1
- package/lib/simple-tree/api/testRecursiveDomain.js +0 -41
- package/lib/simple-tree/api/testRecursiveDomain.js.map +0 -1
- package/lib/simple-tree/arrayNode.d.ts.map +0 -1
- package/lib/simple-tree/arrayNode.js.map +0 -1
- package/lib/simple-tree/arrayNodeTypes.d.ts.map +0 -1
- package/lib/simple-tree/arrayNodeTypes.js.map +0 -1
- package/lib/simple-tree/mapNode.d.ts.map +0 -1
- package/lib/simple-tree/mapNode.js.map +0 -1
- package/lib/simple-tree/mapNodeTypes.d.ts.map +0 -1
- package/lib/simple-tree/mapNodeTypes.js.map +0 -1
- package/lib/simple-tree/objectNode.d.ts.map +0 -1
- package/lib/simple-tree/objectNode.js.map +0 -1
- package/lib/simple-tree/objectNodeTypes.d.ts.map +0 -1
- package/lib/simple-tree/objectNodeTypes.js.map +0 -1
- package/lib/simple-tree/toMapTree.d.ts +0 -98
- package/lib/simple-tree/toMapTree.d.ts.map +0 -1
- package/lib/simple-tree/toMapTree.js.map +0 -1
- package/src/simple-tree/api/testRecursiveDomain.ts +0 -53
|
@@ -3,12 +3,12 @@
|
|
|
3
3
|
* Licensed under the MIT License.
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
+
import { createEmitter } from "@fluid-internal/client-utils";
|
|
6
7
|
import type {
|
|
7
8
|
HasListeners,
|
|
8
9
|
IEmitter,
|
|
9
10
|
Listenable,
|
|
10
11
|
} from "@fluidframework/core-interfaces/internal";
|
|
11
|
-
import { createEmitter } from "@fluid-internal/client-utils";
|
|
12
12
|
import { assert, unreachableCase } from "@fluidframework/core-utils/internal";
|
|
13
13
|
import { UsageError } from "@fluidframework/telemetry-utils/internal";
|
|
14
14
|
|
|
@@ -61,9 +61,9 @@ import {
|
|
|
61
61
|
type WithBreakable,
|
|
62
62
|
} from "../util/index.js";
|
|
63
63
|
|
|
64
|
+
import { CheckoutFlexTreeView } from "./checkoutFlexTreeView.js";
|
|
64
65
|
import { canInitialize, ensureSchema, initialize } from "./schematizeTree.js";
|
|
65
66
|
import type { ITreeCheckout, TreeCheckout } from "./treeCheckout.js";
|
|
66
|
-
import { CheckoutFlexTreeView } from "./checkoutFlexTreeView.js";
|
|
67
67
|
|
|
68
68
|
/**
|
|
69
69
|
* Creating multiple tree views from the same checkout is not supported. This slot is used to detect if one already
|
|
@@ -247,28 +247,7 @@ export class SchematizingSimpleTreeView<
|
|
|
247
247
|
constraintsOnRevert: boolean,
|
|
248
248
|
constraints: readonly TransactionConstraint[] = [],
|
|
249
249
|
): void => {
|
|
250
|
-
|
|
251
|
-
switch (constraint.type) {
|
|
252
|
-
case "nodeInDocument": {
|
|
253
|
-
const node = getOrCreateInnerNode(constraint.node);
|
|
254
|
-
const nodeStatus = getKernel(constraint.node).getStatus();
|
|
255
|
-
if (nodeStatus !== TreeStatus.InDocument) {
|
|
256
|
-
const revertText = constraintsOnRevert ? " on revert" : "";
|
|
257
|
-
throw new UsageError(
|
|
258
|
-
`Attempted to add a "nodeInDocument" constraint${revertText}, but the node is not currently in the document. Node status: ${nodeStatus}`,
|
|
259
|
-
);
|
|
260
|
-
}
|
|
261
|
-
if (constraintsOnRevert) {
|
|
262
|
-
this.checkout.editor.addNodeExistsConstraintOnRevert(node.anchorNode);
|
|
263
|
-
} else {
|
|
264
|
-
this.checkout.editor.addNodeExistsConstraint(node.anchorNode);
|
|
265
|
-
}
|
|
266
|
-
break;
|
|
267
|
-
}
|
|
268
|
-
default:
|
|
269
|
-
unreachableCase(constraint.type);
|
|
270
|
-
}
|
|
271
|
-
}
|
|
250
|
+
addConstraintsToTransaction(this.checkout, constraintsOnRevert, constraints);
|
|
272
251
|
};
|
|
273
252
|
|
|
274
253
|
this.checkout.transaction.start();
|
|
@@ -520,3 +499,42 @@ export function requireSchema(
|
|
|
520
499
|
|
|
521
500
|
return view;
|
|
522
501
|
}
|
|
502
|
+
|
|
503
|
+
/**
|
|
504
|
+
* Adds constraints to a `checkout`'s pending transaction.
|
|
505
|
+
*
|
|
506
|
+
* @param checkout - The checkout's who's transaction will have the constraints added to it.
|
|
507
|
+
* @param constraintsOnRevert - If true, use {@link ISharedTreeEditor.addNodeExistsConstraintOnRevert}.
|
|
508
|
+
* @param constraints - The constraints to add to the transaction.
|
|
509
|
+
*
|
|
510
|
+
* @see {@link RunTransactionParams.preconditions}.
|
|
511
|
+
*/
|
|
512
|
+
export function addConstraintsToTransaction(
|
|
513
|
+
checkout: ITreeCheckout,
|
|
514
|
+
constraintsOnRevert: boolean,
|
|
515
|
+
constraints: readonly TransactionConstraint[] = [],
|
|
516
|
+
): void {
|
|
517
|
+
for (const constraint of constraints) {
|
|
518
|
+
switch (constraint.type) {
|
|
519
|
+
case "nodeInDocument": {
|
|
520
|
+
const node = getOrCreateInnerNode(constraint.node);
|
|
521
|
+
const nodeStatus = getKernel(constraint.node).getStatus();
|
|
522
|
+
if (nodeStatus !== TreeStatus.InDocument) {
|
|
523
|
+
const revertText = constraintsOnRevert ? " on revert" : "";
|
|
524
|
+
throw new UsageError(
|
|
525
|
+
`Attempted to add a "nodeInDocument" constraint${revertText}, but the node is not currently in the document. Node status: ${nodeStatus}`,
|
|
526
|
+
);
|
|
527
|
+
}
|
|
528
|
+
assert(node.isHydrated(), "In document node must be hydrated.");
|
|
529
|
+
if (constraintsOnRevert) {
|
|
530
|
+
checkout.editor.addNodeExistsConstraintOnRevert(node.anchorNode);
|
|
531
|
+
} else {
|
|
532
|
+
checkout.editor.addNodeExistsConstraint(node.anchorNode);
|
|
533
|
+
}
|
|
534
|
+
break;
|
|
535
|
+
}
|
|
536
|
+
default:
|
|
537
|
+
unreachableCase(constraint.type);
|
|
538
|
+
}
|
|
539
|
+
}
|
|
540
|
+
}
|
|
@@ -3,13 +3,14 @@
|
|
|
3
3
|
* Licensed under the MIT License.
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
-
import { assert, fail } from "@fluidframework/core-utils/internal";
|
|
7
6
|
import type {
|
|
8
7
|
ErasedType,
|
|
9
8
|
IFluidHandle,
|
|
10
9
|
IFluidLoadable,
|
|
11
10
|
} from "@fluidframework/core-interfaces/internal";
|
|
11
|
+
import { assert, fail } from "@fluidframework/core-utils/internal";
|
|
12
12
|
import type { IChannelStorageService } from "@fluidframework/datastore-definitions/internal";
|
|
13
|
+
import type { IIdCompressor } from "@fluidframework/id-compressor";
|
|
13
14
|
import type {
|
|
14
15
|
IChannelView,
|
|
15
16
|
IFluidSerializer,
|
|
@@ -19,9 +20,13 @@ import {
|
|
|
19
20
|
UsageError,
|
|
20
21
|
type ITelemetryLoggerExt,
|
|
21
22
|
} from "@fluidframework/telemetry-utils/internal";
|
|
22
|
-
import type { IIdCompressor } from "@fluidframework/id-compressor";
|
|
23
23
|
|
|
24
|
-
import {
|
|
24
|
+
import {
|
|
25
|
+
type CodecWriteOptions,
|
|
26
|
+
FluidClientVersion,
|
|
27
|
+
type ICodecOptions,
|
|
28
|
+
noopValidator,
|
|
29
|
+
} from "../codec/index.js";
|
|
25
30
|
import {
|
|
26
31
|
type FieldKey,
|
|
27
32
|
type GraphCommit,
|
|
@@ -32,6 +37,7 @@ import {
|
|
|
32
37
|
MapNodeStoredSchema,
|
|
33
38
|
ObjectNodeStoredSchema,
|
|
34
39
|
RevisionTagCodec,
|
|
40
|
+
SchemaVersion,
|
|
35
41
|
type TaggedChange,
|
|
36
42
|
type TreeFieldStoredSchema,
|
|
37
43
|
type TreeNodeSchemaIdentifier,
|
|
@@ -42,12 +48,10 @@ import {
|
|
|
42
48
|
makeDetachedFieldIndex,
|
|
43
49
|
moveToDetachedField,
|
|
44
50
|
} from "../core/index.js";
|
|
45
|
-
|
|
46
51
|
import {
|
|
47
52
|
DetachedFieldIndexSummarizer,
|
|
48
53
|
FieldKinds,
|
|
49
54
|
ForestSummarizer,
|
|
50
|
-
SchemaCodecVersion,
|
|
51
55
|
SchemaSummarizer,
|
|
52
56
|
TreeCompressionStrategy,
|
|
53
57
|
buildChunkedForest,
|
|
@@ -59,6 +63,8 @@ import {
|
|
|
59
63
|
makeSchemaCodec,
|
|
60
64
|
makeTreeChunker,
|
|
61
65
|
} from "../feature-libraries/index.js";
|
|
66
|
+
// eslint-disable-next-line import/no-internal-modules
|
|
67
|
+
import type { Format } from "../feature-libraries/schema-index/index.js";
|
|
62
68
|
import {
|
|
63
69
|
type ClonableSchemaAndPolicy,
|
|
64
70
|
DefaultResubmitMachine,
|
|
@@ -86,6 +92,12 @@ import {
|
|
|
86
92
|
type ITreeAlpha,
|
|
87
93
|
type SimpleObjectFieldSchema,
|
|
88
94
|
} from "../simple-tree/index.js";
|
|
95
|
+
import {
|
|
96
|
+
type Breakable,
|
|
97
|
+
breakingClass,
|
|
98
|
+
type JsonCompatible,
|
|
99
|
+
throwIfBroken,
|
|
100
|
+
} from "../util/index.js";
|
|
89
101
|
|
|
90
102
|
import { SchematizingSimpleTreeView } from "./schematizingTreeView.js";
|
|
91
103
|
import { SharedTreeReadonlyChangeEnricher } from "./sharedTreeChangeEnricher.js";
|
|
@@ -93,14 +105,6 @@ import { SharedTreeChangeFamily } from "./sharedTreeChangeFamily.js";
|
|
|
93
105
|
import type { SharedTreeChange } from "./sharedTreeChangeTypes.js";
|
|
94
106
|
import type { SharedTreeEditBuilder } from "./sharedTreeEditBuilder.js";
|
|
95
107
|
import { type TreeCheckout, type BranchableTree, createTreeCheckout } from "./treeCheckout.js";
|
|
96
|
-
import {
|
|
97
|
-
type Breakable,
|
|
98
|
-
breakingClass,
|
|
99
|
-
type JsonCompatible,
|
|
100
|
-
throwIfBroken,
|
|
101
|
-
} from "../util/index.js";
|
|
102
|
-
// eslint-disable-next-line import/no-internal-modules
|
|
103
|
-
import type { Format } from "../feature-libraries/schema-index/index.js";
|
|
104
108
|
|
|
105
109
|
/**
|
|
106
110
|
* Copy of data from an {@link ITreePrivate} at some point in time.
|
|
@@ -166,7 +170,7 @@ export interface ITreePrivate extends ITreeInternal {
|
|
|
166
170
|
*/
|
|
167
171
|
interface ExplicitCodecVersions extends ExplicitCoreCodecVersions {
|
|
168
172
|
forest: number;
|
|
169
|
-
schema:
|
|
173
|
+
schema: SchemaVersion;
|
|
170
174
|
detachedFieldIndex: number;
|
|
171
175
|
fieldBatch: number;
|
|
172
176
|
}
|
|
@@ -238,7 +242,7 @@ export class SharedTreeKernel
|
|
|
238
242
|
const options = { ...defaultSharedTreeOptions, ...optionsParam };
|
|
239
243
|
const codecVersions = getCodecVersions(options.formatVersion);
|
|
240
244
|
const schema = new TreeStoredSchemaRepository();
|
|
241
|
-
const forest = buildConfiguredForest(options.forest, schema, idCompressor);
|
|
245
|
+
const forest = buildConfiguredForest(breaker, options.forest, schema, idCompressor);
|
|
242
246
|
const revisionTagCodec = new RevisionTagCodec(idCompressor);
|
|
243
247
|
const removedRoots = makeDetachedFieldIndex(
|
|
244
248
|
"repair",
|
|
@@ -506,7 +510,7 @@ export function persistedToSimpleSchema(
|
|
|
506
510
|
persisted: JsonCompatible,
|
|
507
511
|
options: ICodecOptions,
|
|
508
512
|
): SimpleTreeSchema {
|
|
509
|
-
const schemaCodec = makeSchemaCodec(options,
|
|
513
|
+
const schemaCodec = makeSchemaCodec(options, SchemaVersion.v1);
|
|
510
514
|
const stored = schemaCodec.decode(persisted as Format);
|
|
511
515
|
return exportSimpleSchema(stored);
|
|
512
516
|
}
|
|
@@ -586,9 +590,9 @@ export type SharedTreeFormatVersion = typeof SharedTreeFormatVersion;
|
|
|
586
590
|
|
|
587
591
|
/**
|
|
588
592
|
* Configuration options for SharedTree.
|
|
589
|
-
* @alpha
|
|
593
|
+
* @alpha @input
|
|
590
594
|
*/
|
|
591
|
-
export type SharedTreeOptions = Partial<
|
|
595
|
+
export type SharedTreeOptions = Partial<CodecWriteOptions> &
|
|
592
596
|
Partial<SharedTreeFormatOptions> &
|
|
593
597
|
ForestOptions;
|
|
594
598
|
|
|
@@ -646,7 +650,10 @@ export interface ForestType extends ErasedType<"ForestType"> {}
|
|
|
646
650
|
* The "ObjectForest" forest type.
|
|
647
651
|
* @alpha
|
|
648
652
|
*/
|
|
649
|
-
export const ForestTypeReference = toForestType(
|
|
653
|
+
export const ForestTypeReference = toForestType(
|
|
654
|
+
(breaker: Breakable, schema: TreeStoredSchemaSubscription, idCompressor: IIdCompressor) =>
|
|
655
|
+
buildForest(breaker, schema),
|
|
656
|
+
);
|
|
650
657
|
|
|
651
658
|
/**
|
|
652
659
|
* Optimized implementation of forest.
|
|
@@ -658,7 +665,7 @@ export const ForestTypeReference = toForestType(() => buildForest());
|
|
|
658
665
|
* @alpha
|
|
659
666
|
*/
|
|
660
667
|
export const ForestTypeOptimized = toForestType(
|
|
661
|
-
(schema: TreeStoredSchemaSubscription, idCompressor: IIdCompressor) =>
|
|
668
|
+
(breaker: Breakable, schema: TreeStoredSchemaSubscription, idCompressor: IIdCompressor) =>
|
|
662
669
|
buildChunkedForest(makeTreeChunker(schema, defaultSchemaPolicy), undefined, idCompressor),
|
|
663
670
|
);
|
|
664
671
|
|
|
@@ -671,9 +678,13 @@ export const ForestTypeOptimized = toForestType(
|
|
|
671
678
|
* The "ObjectForest" forest type with expensive asserts for debugging.
|
|
672
679
|
* @alpha
|
|
673
680
|
*/
|
|
674
|
-
export const ForestTypeExpensiveDebug = toForestType(
|
|
681
|
+
export const ForestTypeExpensiveDebug = toForestType(
|
|
682
|
+
(breaker: Breakable, schema: TreeStoredSchemaSubscription) =>
|
|
683
|
+
buildForest(breaker, schema, undefined, true),
|
|
684
|
+
);
|
|
675
685
|
|
|
676
686
|
type ForestFactory = (
|
|
687
|
+
breaker: Breakable,
|
|
677
688
|
schema: TreeStoredSchemaSubscription,
|
|
678
689
|
idCompressor: IIdCompressor,
|
|
679
690
|
) => IEditableForest;
|
|
@@ -686,15 +697,17 @@ function toForestType(factory: ForestFactory): ForestType {
|
|
|
686
697
|
* Build and return a forest of the requested type.
|
|
687
698
|
*/
|
|
688
699
|
export function buildConfiguredForest(
|
|
700
|
+
breaker: Breakable,
|
|
689
701
|
factory: ForestType,
|
|
690
702
|
schema: TreeStoredSchemaSubscription,
|
|
691
703
|
idCompressor: IIdCompressor,
|
|
692
704
|
): IEditableForest {
|
|
693
|
-
return (factory as unknown as ForestFactory)(schema, idCompressor);
|
|
705
|
+
return (factory as unknown as ForestFactory)(breaker, schema, idCompressor);
|
|
694
706
|
}
|
|
695
707
|
|
|
696
708
|
export const defaultSharedTreeOptions: Required<SharedTreeOptionsInternal> = {
|
|
697
709
|
jsonValidator: noopValidator,
|
|
710
|
+
oldestCompatibleClient: FluidClientVersion.v2_0,
|
|
698
711
|
forest: ForestTypeReference,
|
|
699
712
|
treeEncodeType: TreeCompressionStrategy.Compressed,
|
|
700
713
|
formatVersion: SharedTreeFormatVersion.v3,
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
import { assert, fail } from "@fluidframework/core-utils/internal";
|
|
7
|
+
import type { IIdCompressor } from "@fluidframework/id-compressor";
|
|
7
8
|
|
|
8
9
|
import type { ICodecFamily, ICodecOptions } from "../codec/index.js";
|
|
9
10
|
import {
|
|
@@ -38,7 +39,6 @@ import {
|
|
|
38
39
|
import { makeSharedTreeChangeCodecFamily } from "./sharedTreeChangeCodecs.js";
|
|
39
40
|
import type { SharedTreeChange } from "./sharedTreeChangeTypes.js";
|
|
40
41
|
import { SharedTreeEditBuilder } from "./sharedTreeEditBuilder.js";
|
|
41
|
-
import type { IIdCompressor } from "@fluidframework/id-compressor";
|
|
42
42
|
|
|
43
43
|
/**
|
|
44
44
|
* Implementation of {@link ChangeFamily} that combines edits to fields and schema changes.
|
package/src/shared-tree/tree.ts
CHANGED
|
@@ -3,10 +3,8 @@
|
|
|
3
3
|
* Licensed under the MIT License.
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
-
import { unreachableCase } from "@fluidframework/core-utils/internal";
|
|
7
6
|
import { UsageError } from "@fluidframework/telemetry-utils/internal";
|
|
8
7
|
|
|
9
|
-
import { TreeStatus } from "../feature-libraries/index.js";
|
|
10
8
|
import {
|
|
11
9
|
type ImplicitFieldSchema,
|
|
12
10
|
type TreeNode,
|
|
@@ -18,9 +16,12 @@ import {
|
|
|
18
16
|
type TransactionConstraint,
|
|
19
17
|
} from "../simple-tree/index.js";
|
|
20
18
|
|
|
21
|
-
import { SchematizingSimpleTreeView } from "./schematizingTreeView.js";
|
|
22
|
-
import type { ITreeCheckout } from "./treeCheckout.js";
|
|
23
19
|
import { getCheckoutFlexTreeView } from "./checkoutFlexTreeView.js";
|
|
20
|
+
import {
|
|
21
|
+
addConstraintsToTransaction,
|
|
22
|
+
SchematizingSimpleTreeView,
|
|
23
|
+
} from "./schematizingTreeView.js";
|
|
24
|
+
import type { ITreeCheckout } from "./treeCheckout.js";
|
|
24
25
|
|
|
25
26
|
/**
|
|
26
27
|
* Provides various functions for interacting with {@link TreeNode}s.
|
|
@@ -463,23 +464,7 @@ function runTransactionInCheckout<TResult>(
|
|
|
463
464
|
preconditions: readonly TransactionConstraint[],
|
|
464
465
|
): TResult | typeof rollback {
|
|
465
466
|
checkout.transaction.start();
|
|
466
|
-
|
|
467
|
-
switch (constraint.type) {
|
|
468
|
-
case "nodeInDocument": {
|
|
469
|
-
const node = getOrCreateInnerNode(constraint.node);
|
|
470
|
-
const nodeStatus = Tree.status(constraint.node);
|
|
471
|
-
if (nodeStatus !== TreeStatus.InDocument) {
|
|
472
|
-
throw new UsageError(
|
|
473
|
-
`Attempted to add a "nodeInDocument" constraint, but the node is not currently in the document. Node status: ${nodeStatus}`,
|
|
474
|
-
);
|
|
475
|
-
}
|
|
476
|
-
checkout.editor.addNodeExistsConstraint(node.anchorNode);
|
|
477
|
-
break;
|
|
478
|
-
}
|
|
479
|
-
default:
|
|
480
|
-
unreachableCase(constraint.type);
|
|
481
|
-
}
|
|
482
|
-
}
|
|
467
|
+
addConstraintsToTransaction(checkout, false, preconditions);
|
|
483
468
|
|
|
484
469
|
let result: ReturnType<typeof transaction>;
|
|
485
470
|
try {
|
|
@@ -16,8 +16,6 @@ import {
|
|
|
16
16
|
TreeBeta,
|
|
17
17
|
tryGetSchema,
|
|
18
18
|
createFromCursor,
|
|
19
|
-
createFromInsertable,
|
|
20
|
-
cursorFromInsertable,
|
|
21
19
|
FieldKind,
|
|
22
20
|
normalizeFieldSchema,
|
|
23
21
|
type ImplicitFieldSchema,
|
|
@@ -39,10 +37,12 @@ import {
|
|
|
39
37
|
getStoredKey,
|
|
40
38
|
getPropertyKeyFromStoredKey,
|
|
41
39
|
treeNodeApi,
|
|
42
|
-
|
|
40
|
+
getIdentifierFromNode,
|
|
41
|
+
unhydratedFlexTreeFromInsertable,
|
|
42
|
+
getOrCreateNodeFromInnerNode,
|
|
43
43
|
} from "../simple-tree/index.js";
|
|
44
|
-
import type
|
|
45
|
-
import {
|
|
44
|
+
import { extractFromOpaque, type JsonCompatible } from "../util/index.js";
|
|
45
|
+
import type { CodecWriteOptions, ICodecOptions } from "../codec/index.js";
|
|
46
46
|
import type { ITreeCursorSynchronous } from "../core/index.js";
|
|
47
47
|
import {
|
|
48
48
|
cursorForMapTreeField,
|
|
@@ -54,11 +54,122 @@ import {
|
|
|
54
54
|
type FieldBatch,
|
|
55
55
|
type FieldBatchEncodingContext,
|
|
56
56
|
fluidVersionToFieldBatchCodecWriteVersion,
|
|
57
|
+
type LocalNodeIdentifier,
|
|
57
58
|
} from "../feature-libraries/index.js";
|
|
58
59
|
import { independentInitializedView, type ViewContent } from "./independentView.js";
|
|
59
60
|
import { SchematizingSimpleTreeView, ViewSlot } from "./schematizingTreeView.js";
|
|
60
|
-
import { currentVersion } from "../codec/index.js";
|
|
61
|
-
|
|
61
|
+
import { currentVersion, noopValidator } from "../codec/index.js";
|
|
62
|
+
|
|
63
|
+
const identifier: TreeIdentifierUtils = (node: TreeNode): string | undefined => {
|
|
64
|
+
const nodeIdentifier = getIdentifierFromNode(node, "uncompressed");
|
|
65
|
+
if (typeof nodeIdentifier === "number") {
|
|
66
|
+
throw new TypeError("identifier should be uncompressed.");
|
|
67
|
+
}
|
|
68
|
+
return nodeIdentifier;
|
|
69
|
+
};
|
|
70
|
+
|
|
71
|
+
identifier.shorten = (branch: TreeBranch, nodeIdentifier: string): number | undefined => {
|
|
72
|
+
const nodeKeyManager = (branch as SchematizingSimpleTreeView<ImplicitFieldSchema>)
|
|
73
|
+
.nodeKeyManager;
|
|
74
|
+
const localNodeKey = nodeKeyManager.tryLocalizeNodeIdentifier(nodeIdentifier);
|
|
75
|
+
return localNodeKey !== undefined ? extractFromOpaque(localNodeKey) : undefined;
|
|
76
|
+
};
|
|
77
|
+
|
|
78
|
+
identifier.lengthen = (branch: TreeBranch, nodeIdentifier: number): string => {
|
|
79
|
+
const nodeKeyManager = (branch as SchematizingSimpleTreeView<ImplicitFieldSchema>)
|
|
80
|
+
.nodeKeyManager;
|
|
81
|
+
return nodeKeyManager.stabilizeNodeIdentifier(
|
|
82
|
+
nodeIdentifier as unknown as LocalNodeIdentifier,
|
|
83
|
+
);
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
identifier.getShort = (node: TreeNode): number | undefined => {
|
|
87
|
+
const shortIdentifier = getIdentifierFromNode(node, "compressed");
|
|
88
|
+
return typeof shortIdentifier === "number" ? shortIdentifier : undefined;
|
|
89
|
+
};
|
|
90
|
+
|
|
91
|
+
identifier.create = (branch: TreeBranch): string => {
|
|
92
|
+
const nodeKeyManager = (branch as SchematizingSimpleTreeView<ImplicitFieldSchema>)
|
|
93
|
+
.nodeKeyManager;
|
|
94
|
+
return nodeKeyManager.stabilizeNodeIdentifier(nodeKeyManager.generateLocalNodeIdentifier());
|
|
95
|
+
};
|
|
96
|
+
|
|
97
|
+
Object.freeze(identifier);
|
|
98
|
+
|
|
99
|
+
/**
|
|
100
|
+
* A utility interface for retrieving or converting node identifiers.
|
|
101
|
+
*
|
|
102
|
+
* @remarks
|
|
103
|
+
* This provides methods to:
|
|
104
|
+
*
|
|
105
|
+
* - Retrieve long or short identifiers from nodes
|
|
106
|
+
*
|
|
107
|
+
* - Convert between long identifiers and short identifiers
|
|
108
|
+
*
|
|
109
|
+
* - Generates long identifiers
|
|
110
|
+
*
|
|
111
|
+
* @alpha @sealed
|
|
112
|
+
*/
|
|
113
|
+
export interface TreeIdentifierUtils {
|
|
114
|
+
/**
|
|
115
|
+
* Returns the contents of a node's {@link SchemaFactory.identifier} field as a stable identifier.
|
|
116
|
+
* If the identifier field does not exist, returns undefined.
|
|
117
|
+
*
|
|
118
|
+
* @param node - The TreeNode you want to get the identifier from,
|
|
119
|
+
*/
|
|
120
|
+
(node: TreeNode): string | undefined;
|
|
121
|
+
|
|
122
|
+
/**
|
|
123
|
+
* Returns the shortened identifier as a number given long identifier known by the id compressor on the branch if possible.
|
|
124
|
+
* Otherwise, it will return the original string identifier provided.
|
|
125
|
+
* If the id does not exist, or is unknown by the id compressor, it returns undefined.
|
|
126
|
+
*
|
|
127
|
+
* This method is the inverse of {@link TreeIdentifierUtils.lengthen}. If you shorten an identifier
|
|
128
|
+
* and then immediately pass it to {@link TreeIdentifierUtils.lengthen}, you will get the original string back.
|
|
129
|
+
*
|
|
130
|
+
* @param branch - TreeBranch from where you get the idCompressor to do the decompression.
|
|
131
|
+
* @param nodeIdentifier - the stable identifier that needs to be shortened.
|
|
132
|
+
*/
|
|
133
|
+
shorten(branch: TreeBranch, nodeIdentifier: string): number | undefined;
|
|
134
|
+
|
|
135
|
+
/**
|
|
136
|
+
* Returns the stable id as a string if the identifier is decompressible and known by the id compressor. Otherwise, it will throw an error.
|
|
137
|
+
*
|
|
138
|
+
* This method is the inverse of {@link TreeIdentifierUtils.shorten}. If you lengthen an identifier
|
|
139
|
+
* and then immediately pass it to {@link TreeIdentifierUtils.shorten}, you will get the original short identifier back.
|
|
140
|
+
*
|
|
141
|
+
* @param branch - TreeBranch from where you want to get the id compressor to do the decompression.
|
|
142
|
+
* @param nodeIdentifier - The local identifier that needs to be expanded.
|
|
143
|
+
*/
|
|
144
|
+
lengthen(branch: TreeBranch, nodeIdentifier: number): string;
|
|
145
|
+
|
|
146
|
+
/**
|
|
147
|
+
* Returns the {@link SchemaFactory.identifier | identifier} of the given node in the most compressed form possible.
|
|
148
|
+
* @remarks
|
|
149
|
+
* If the node is {@link Unhydrated | hydrated} and its identifier is a valid UUID that was automatically generated by the SharedTree it is part of (or something else using the same {@link @fluidframework/id-compressor#IIdCompressor}), then this will return a process-unique integer corresponding to that identifier.
|
|
150
|
+
* This is useful for performance-sensitive scenarios involving many nodes with identifiers that need to be compactly retained in memory or used for efficient lookup.
|
|
151
|
+
* Note that automatically generated identifiers that were accessed before the node was hydrated will return the generated UUID, not the process-unique integer.
|
|
152
|
+
*
|
|
153
|
+
* If the node's identifier is any other user-provided string, then this will return undefined.
|
|
154
|
+
*
|
|
155
|
+
* If the node has no identifier (that is, it has no {@link SchemaFactory.identifier | identifier} field), then this returns `undefined`.
|
|
156
|
+
*
|
|
157
|
+
* If the node has more than one identifier, then this will throw an error.
|
|
158
|
+
*
|
|
159
|
+
* The returned integer should not be serialized or preserved outside of the current process.
|
|
160
|
+
* Its lifetime is that of the current in-memory instance of the FF container for this client, and it is not guaranteed to be unique or stable outside of that context.
|
|
161
|
+
* The same node's identifier may, for example, be different across multiple sessions for the same client and document, or different across two clients in the same session.
|
|
162
|
+
*/
|
|
163
|
+
getShort(node: TreeNode): number | undefined;
|
|
164
|
+
|
|
165
|
+
/**
|
|
166
|
+
* Creates and returns a long identifier.
|
|
167
|
+
* The long identifier is a compressible, stable identifier generated by the tree's ID compressor.
|
|
168
|
+
*
|
|
169
|
+
* @param branch - TreeBranch from where you want to get the id compressor to generate the identifier from.
|
|
170
|
+
*/
|
|
171
|
+
create(branch: TreeBranch): string;
|
|
172
|
+
}
|
|
62
173
|
|
|
63
174
|
/**
|
|
64
175
|
* Extensions to {@link (Tree:interface)} and {@link (TreeBeta:interface)} which are not yet stable.
|
|
@@ -180,11 +291,14 @@ export interface TreeAlpha {
|
|
|
180
291
|
* Additionally using `createIdCompressor` to make an idCompressor is `@legacy` and thus not intended for use in this API surface.
|
|
181
292
|
* It would probably make more sense if we provided a way to get an idCompressor from the context of a node,
|
|
182
293
|
* which could be optional (and settable if missing) for un0hydrated nodes and required for hydrated ones.
|
|
183
|
-
* Add in a stable public
|
|
294
|
+
* Add in a stable public API for creating idCompressors, and a way to get them from a tree (without view schema), and that should address the anticipated use-cases.
|
|
184
295
|
*/
|
|
185
296
|
exportCompressed(
|
|
186
297
|
tree: TreeNode | TreeLeafValue,
|
|
187
|
-
options: {
|
|
298
|
+
options: { idCompressor?: IIdCompressor } & Pick<
|
|
299
|
+
CodecWriteOptions,
|
|
300
|
+
"oldestCompatibleClient"
|
|
301
|
+
>,
|
|
188
302
|
): JsonCompatible<IFluidHandle>;
|
|
189
303
|
|
|
190
304
|
/**
|
|
@@ -212,6 +326,11 @@ export interface TreeAlpha {
|
|
|
212
326
|
options: { idCompressor?: IIdCompressor } & ICodecOptions,
|
|
213
327
|
): Unhydrated<TreeFieldFromImplicitField<TSchema>>;
|
|
214
328
|
|
|
329
|
+
/**
|
|
330
|
+
* APIs for creating, converting, and retrieving identifiers.
|
|
331
|
+
*/
|
|
332
|
+
readonly identifier: TreeIdentifierUtils;
|
|
333
|
+
|
|
215
334
|
/**
|
|
216
335
|
* The key of the given node under its parent.
|
|
217
336
|
* @remarks
|
|
@@ -251,8 +370,11 @@ export const TreeAlpha: TreeAlpha = {
|
|
|
251
370
|
? TreeFieldFromImplicitField<TSchema>
|
|
252
371
|
: TreeNode | TreeLeafValue | undefined
|
|
253
372
|
> {
|
|
254
|
-
const mapTree =
|
|
255
|
-
|
|
373
|
+
const mapTree = unhydratedFlexTreeFromInsertable(
|
|
374
|
+
data as InsertableField<UnsafeUnknownSchema>,
|
|
375
|
+
schema,
|
|
376
|
+
);
|
|
377
|
+
const result = mapTree === undefined ? undefined : getOrCreateNodeFromInnerNode(mapTree);
|
|
256
378
|
return result as Unhydrated<
|
|
257
379
|
TSchema extends ImplicitFieldSchema
|
|
258
380
|
? TreeFieldFromImplicitField<TSchema>
|
|
@@ -270,14 +392,10 @@ export const TreeAlpha: TreeAlpha = {
|
|
|
270
392
|
? TreeFieldFromImplicitField<TSchema>
|
|
271
393
|
: TreeNode | TreeLeafValue | undefined
|
|
272
394
|
> {
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
TSchema extends ImplicitFieldSchema
|
|
278
|
-
? TreeFieldFromImplicitField<TSchema>
|
|
279
|
-
: TreeNode | TreeLeafValue | undefined
|
|
280
|
-
>;
|
|
395
|
+
// `importConcise` does not need to support all the formats that `create` does.
|
|
396
|
+
// Perhaps it should error instead of hydrating nodes for example.
|
|
397
|
+
// For now however, it is a simple wrapper around `create`.
|
|
398
|
+
return this.create(schema, data as InsertableField<TSchema>);
|
|
281
399
|
},
|
|
282
400
|
|
|
283
401
|
importVerbose<const TSchema extends ImplicitFieldSchema>(
|
|
@@ -314,10 +432,10 @@ export const TreeAlpha: TreeAlpha = {
|
|
|
314
432
|
|
|
315
433
|
exportCompressed(
|
|
316
434
|
node: TreeNode | TreeLeafValue,
|
|
317
|
-
options: {
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
435
|
+
options: { idCompressor?: IIdCompressor } & Pick<
|
|
436
|
+
CodecWriteOptions,
|
|
437
|
+
"oldestCompatibleClient"
|
|
438
|
+
>,
|
|
321
439
|
): JsonCompatible<IFluidHandle> {
|
|
322
440
|
const schema = tryGetSchema(node) ?? fail(0xacf /* invalid input */);
|
|
323
441
|
const format = fluidVersionToFieldBatchCodecWriteVersion(options.oldestCompatibleClient);
|
|
@@ -353,6 +471,8 @@ export const TreeAlpha: TreeAlpha = {
|
|
|
353
471
|
return TreeBeta.clone<TSchema>(view.root);
|
|
354
472
|
},
|
|
355
473
|
|
|
474
|
+
identifier,
|
|
475
|
+
|
|
356
476
|
key2(node: TreeNode): string | number | undefined {
|
|
357
477
|
// If the parent is undefined, then this node is under the root field,
|
|
358
478
|
const parent = treeNodeApi.parent(node);
|
|
@@ -396,25 +516,35 @@ function exportConcise(
|
|
|
396
516
|
);
|
|
397
517
|
}
|
|
398
518
|
|
|
519
|
+
/**
|
|
520
|
+
* Borrow a cursor from a node.
|
|
521
|
+
* @remarks
|
|
522
|
+
* The cursor must be put back to its original location before the node is used again.
|
|
523
|
+
*/
|
|
399
524
|
function borrowCursorFromTreeNodeOrValue(
|
|
400
525
|
node: TreeNode | TreeLeafValue,
|
|
401
526
|
): ITreeCursorSynchronous {
|
|
402
527
|
if (isTreeValue(node)) {
|
|
403
|
-
return
|
|
404
|
-
tryGetSchema(node) ?? fail(0xad0 /* missing schema */),
|
|
405
|
-
node,
|
|
406
|
-
);
|
|
528
|
+
return cursorFromVerbose(node, {});
|
|
407
529
|
}
|
|
408
530
|
const kernel = getKernel(node);
|
|
409
531
|
const cursor = kernel.getOrCreateInnerNode().borrowCursor();
|
|
410
532
|
return cursor;
|
|
411
533
|
}
|
|
412
534
|
|
|
535
|
+
/**
|
|
536
|
+
* Borrow a cursor from a field.
|
|
537
|
+
* @remarks
|
|
538
|
+
* The cursor must be put back to its original location before the node is used again.
|
|
539
|
+
*/
|
|
413
540
|
function borrowFieldCursorFromTreeNodeOrValue(
|
|
414
|
-
node: TreeNode | TreeLeafValue,
|
|
541
|
+
node: TreeNode | TreeLeafValue | undefined,
|
|
415
542
|
): ITreeCursorSynchronous {
|
|
543
|
+
if (node === undefined) {
|
|
544
|
+
return cursorForMapTreeField([]);
|
|
545
|
+
}
|
|
416
546
|
const cursor = borrowCursorFromTreeNodeOrValue(node);
|
|
417
|
-
// TODO: avoid copy
|
|
547
|
+
// TODO: avoid copy: borrow cursor from field instead.
|
|
418
548
|
const mapTree = mapTreeFromCursor(cursor);
|
|
419
549
|
return cursorForMapTreeField([mapTree]);
|
|
420
550
|
}
|
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
UsageError,
|
|
12
12
|
type ITelemetryLoggerExt,
|
|
13
13
|
} from "@fluidframework/telemetry-utils/internal";
|
|
14
|
-
import { noopValidator } from "../codec/index.js";
|
|
14
|
+
import { FluidClientVersion, noopValidator } from "../codec/index.js";
|
|
15
15
|
import {
|
|
16
16
|
type Anchor,
|
|
17
17
|
type AnchorLocator,
|
|
@@ -276,9 +276,13 @@ export function createTreeCheckout(
|
|
|
276
276
|
disposeForksAfterTransaction?: boolean;
|
|
277
277
|
},
|
|
278
278
|
): TreeCheckout {
|
|
279
|
-
const
|
|
279
|
+
const breaker = args?.breaker ?? new Breakable("TreeCheckout");
|
|
280
280
|
const schema = args?.schema ?? new TreeStoredSchemaRepository();
|
|
281
|
-
const
|
|
281
|
+
const forest = args?.forest ?? buildForest(breaker, schema);
|
|
282
|
+
const defaultCodecOptions = {
|
|
283
|
+
jsonValidator: noopValidator,
|
|
284
|
+
oldestCompatibleClient: FluidClientVersion.v2_0,
|
|
285
|
+
};
|
|
282
286
|
const defaultFieldBatchVersion = 1;
|
|
283
287
|
const changeFamily =
|
|
284
288
|
args?.changeFamily ??
|
|
@@ -286,7 +290,7 @@ export function createTreeCheckout(
|
|
|
286
290
|
revisionTagCodec,
|
|
287
291
|
args?.fieldBatchCodec ??
|
|
288
292
|
makeFieldBatchCodec(defaultCodecOptions, defaultFieldBatchVersion),
|
|
289
|
-
|
|
293
|
+
defaultCodecOptions,
|
|
290
294
|
args?.chunkCompressionStrategy,
|
|
291
295
|
idCompressor,
|
|
292
296
|
);
|
|
@@ -312,7 +316,7 @@ export function createTreeCheckout(
|
|
|
312
316
|
idCompressor,
|
|
313
317
|
args?.removedRoots,
|
|
314
318
|
args?.logger,
|
|
315
|
-
|
|
319
|
+
breaker,
|
|
316
320
|
args?.disposeForksAfterTransaction,
|
|
317
321
|
);
|
|
318
322
|
}
|
|
@@ -3,6 +3,8 @@
|
|
|
3
3
|
* Licensed under the MIT License.
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
+
import { createEmitter } from "@fluid-internal/client-utils";
|
|
7
|
+
import type { Listenable } from "@fluidframework/core-interfaces";
|
|
6
8
|
import { assert } from "@fluidframework/core-utils/internal";
|
|
7
9
|
import { type TelemetryEventBatcher, measure } from "@fluidframework/telemetry-utils/internal";
|
|
8
10
|
|
|
@@ -21,9 +23,6 @@ import {
|
|
|
21
23
|
tagRollbackInverse,
|
|
22
24
|
type RebaseStatsWithDuration,
|
|
23
25
|
} from "../core/index.js";
|
|
24
|
-
import type { Listenable } from "@fluidframework/core-interfaces";
|
|
25
|
-
import { createEmitter } from "@fluid-internal/client-utils";
|
|
26
|
-
|
|
27
26
|
import { hasSome, defineLazyCachedProperty } from "../util/index.js";
|
|
28
27
|
|
|
29
28
|
/**
|
|
@@ -171,7 +170,7 @@ export class SharedTreeBranch<TEditor extends ChangeFamilyEditor, TChange> {
|
|
|
171
170
|
}
|
|
172
171
|
|
|
173
172
|
/**
|
|
174
|
-
*
|
|
173
|
+
* Gets the commit at the head of this branch.
|
|
175
174
|
*/
|
|
176
175
|
public getHead(): GraphCommit<TChange> {
|
|
177
176
|
return this.head;
|