@fluidframework/tree 2.41.0-338401 → 2.41.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/CHANGELOG.md +341 -0
- package/api-report/tree.alpha.api.md +10 -0
- package/dist/alpha.d.ts +1 -0
- package/dist/codec/codec.d.ts +10 -0
- 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/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/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/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.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 +15 -15
- package/dist/feature-libraries/default-schema/schemaChecker.d.ts.map +1 -1
- package/dist/feature-libraries/default-schema/schemaChecker.js +50 -35
- package/dist/feature-libraries/default-schema/schemaChecker.js.map +1 -1
- package/dist/feature-libraries/flex-tree/context.d.ts +18 -2
- 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 +3 -2
- package/dist/feature-libraries/flex-tree/flexTreeTypes.d.ts.map +1 -1
- package/dist/feature-libraries/flex-tree/flexTreeTypes.js +3 -2
- package/dist/feature-libraries/flex-tree/flexTreeTypes.js.map +1 -1
- 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/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 +1 -1
- package/dist/feature-libraries/forest-summary/forestSummarizer.d.ts.map +1 -1
- package/dist/feature-libraries/forest-summary/forestSummarizer.js.map +1 -1
- package/dist/feature-libraries/index.d.ts +2 -2
- package/dist/feature-libraries/index.d.ts.map +1 -1
- package/dist/feature-libraries/index.js +3 -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/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.map +1 -1
- 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.js +2 -2
- 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 +2 -2
- 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 +1 -1
- package/dist/shared-tree/schematizingTreeView.d.ts.map +1 -1
- package/dist/shared-tree/schematizingTreeView.js +1 -1
- package/dist/shared-tree/schematizingTreeView.js.map +1 -1
- package/dist/shared-tree/sharedTree.d.ts +3 -3
- package/dist/shared-tree/sharedTree.d.ts.map +1 -1
- package/dist/shared-tree/sharedTree.js +8 -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.js +1 -1
- package/dist/shared-tree/tree.js.map +1 -1
- package/dist/shared-tree/treeAlpha.d.ts +76 -2
- package/dist/shared-tree/treeAlpha.d.ts.map +1 -1
- package/dist/shared-tree/treeAlpha.js +62 -16
- 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 +3 -2
- 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.js +4 -4
- package/dist/simple-tree/api/configuration.js.map +1 -1
- package/dist/simple-tree/api/create.d.ts +2 -26
- package/dist/simple-tree/api/create.d.ts.map +1 -1
- package/dist/simple-tree/api/create.js +4 -41
- package/dist/simple-tree/api/create.js.map +1 -1
- package/dist/simple-tree/api/customTree.d.ts +1 -1
- package/dist/simple-tree/api/customTree.d.ts.map +1 -1
- package/dist/simple-tree/api/customTree.js +24 -24
- 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 -9
- 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 +5 -5
- package/dist/simple-tree/api/schemaFactory.d.ts.map +1 -1
- package/dist/simple-tree/api/schemaFactory.js +8 -8
- 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 +30 -3
- package/dist/simple-tree/api/treeNodeApi.d.ts.map +1 -1
- package/dist/simple-tree/api/treeNodeApi.js +40 -28
- 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.js +3 -3
- 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.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 +3 -3
- package/dist/simple-tree/core/treeNodeKernel.d.ts.map +1 -1
- package/dist/simple-tree/core/treeNodeKernel.js +2 -2
- 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.map +1 -1
- package/dist/simple-tree/core/unhydratedFlexTree.js +21 -21
- 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 +2 -9
- package/dist/simple-tree/index.d.ts.map +1 -1
- package/dist/simple-tree/index.js +13 -21
- 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} +9 -9
- 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 +26 -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} +8 -8
- 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 +16 -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 +17 -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} +47 -24
- 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.js.map +1 -1
- package/dist/simple-tree/schemaTypes.d.ts +2 -2
- 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/toMapTree.d.ts +1 -16
- package/dist/simple-tree/toMapTree.d.ts.map +1 -1
- package/dist/simple-tree/toMapTree.js +41 -1
- package/dist/simple-tree/toMapTree.js.map +1 -1
- package/dist/simple-tree/toStoredSchema.d.ts.map +1 -1
- package/dist/simple-tree/toStoredSchema.js +1 -1
- 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/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.js +1 -1
- 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/docs/SharedTree Philosophy.md +5 -5
- package/lib/alpha.d.ts +1 -0
- package/lib/codec/codec.d.ts +10 -0
- 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/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/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/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.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 +15 -15
- package/lib/feature-libraries/default-schema/schemaChecker.d.ts.map +1 -1
- package/lib/feature-libraries/default-schema/schemaChecker.js +49 -34
- package/lib/feature-libraries/default-schema/schemaChecker.js.map +1 -1
- package/lib/feature-libraries/flex-tree/context.d.ts +18 -2
- 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 +3 -2
- package/lib/feature-libraries/flex-tree/flexTreeTypes.d.ts.map +1 -1
- package/lib/feature-libraries/flex-tree/flexTreeTypes.js +3 -2
- package/lib/feature-libraries/flex-tree/flexTreeTypes.js.map +1 -1
- 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/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 +1 -1
- package/lib/feature-libraries/forest-summary/forestSummarizer.d.ts.map +1 -1
- package/lib/feature-libraries/forest-summary/forestSummarizer.js.map +1 -1
- package/lib/feature-libraries/index.d.ts +2 -2
- package/lib/feature-libraries/index.d.ts.map +1 -1
- package/lib/feature-libraries/index.js +2 -2
- 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/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.map +1 -1
- 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.js +2 -2
- package/lib/feature-libraries/treeCursorUtils.js.map +1 -1
- package/lib/feature-libraries/treeTextCursor.d.ts +1 -1
- package/lib/feature-libraries/treeTextCursor.js +1 -1
- package/lib/feature-libraries/treeTextCursor.js.map +1 -1
- package/lib/index.d.ts +2 -2
- 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 +1 -1
- package/lib/shared-tree/schematizingTreeView.d.ts.map +1 -1
- package/lib/shared-tree/schematizingTreeView.js +1 -1
- package/lib/shared-tree/schematizingTreeView.js.map +1 -1
- package/lib/shared-tree/sharedTree.d.ts +3 -3
- package/lib/shared-tree/sharedTree.d.ts.map +1 -1
- package/lib/shared-tree/sharedTree.js +10 -10
- 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.js +1 -1
- package/lib/shared-tree/tree.js.map +1 -1
- package/lib/shared-tree/treeAlpha.d.ts +76 -2
- package/lib/shared-tree/treeAlpha.d.ts.map +1 -1
- package/lib/shared-tree/treeAlpha.js +50 -4
- 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 +3 -2
- 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.js +1 -1
- package/lib/simple-tree/api/configuration.js.map +1 -1
- package/lib/simple-tree/api/create.d.ts +2 -26
- package/lib/simple-tree/api/create.d.ts.map +1 -1
- package/lib/simple-tree/api/create.js +2 -37
- package/lib/simple-tree/api/create.js.map +1 -1
- package/lib/simple-tree/api/customTree.d.ts +1 -1
- package/lib/simple-tree/api/customTree.d.ts.map +1 -1
- package/lib/simple-tree/api/customTree.js +3 -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 +5 -5
- package/lib/simple-tree/api/schemaFactory.d.ts.map +1 -1
- package/lib/simple-tree/api/schemaFactory.js +5 -5
- 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 +30 -3
- package/lib/simple-tree/api/treeNodeApi.d.ts.map +1 -1
- package/lib/simple-tree/api/treeNodeApi.js +37 -26
- 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.js +1 -1
- 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.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 +3 -3
- package/lib/simple-tree/core/treeNodeKernel.d.ts.map +1 -1
- package/lib/simple-tree/core/treeNodeKernel.js +2 -2
- 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.map +1 -1
- package/lib/simple-tree/core/unhydratedFlexTree.js +3 -3
- 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 +2 -9
- package/lib/simple-tree/index.d.ts.map +1 -1
- package/lib/simple-tree/index.js +2 -6
- 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} +9 -9
- 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} +8 -8
- 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 +17 -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} +35 -13
- 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.js.map +1 -1
- package/lib/simple-tree/schemaTypes.d.ts +2 -2
- 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/toMapTree.d.ts +1 -16
- package/lib/simple-tree/toMapTree.d.ts.map +1 -1
- package/lib/simple-tree/toMapTree.js +41 -1
- package/lib/simple-tree/toMapTree.js.map +1 -1
- package/lib/simple-tree/toStoredSchema.d.ts.map +1 -1
- package/lib/simple-tree/toStoredSchema.js +1 -1
- 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/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.js +1 -1
- 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/package.json +21 -21
- package/src/codec/codec.ts +13 -3
- 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/pathTree.ts +12 -11
- package/src/core/tree/treeTextFormat.ts +1 -1
- package/src/feature-libraries/chunked-forest/chunkedForest.ts +1 -1
- package/src/feature-libraries/default-schema/defaultEditBuilder.ts +1 -1
- package/src/feature-libraries/default-schema/index.ts +1 -1
- package/src/feature-libraries/default-schema/schemaChecker.ts +44 -29
- package/src/feature-libraries/flex-tree/context.ts +29 -8
- package/src/feature-libraries/flex-tree/flexTreeTypes.ts +3 -2
- package/src/feature-libraries/flex-tree/lazyField.ts +1 -1
- package/src/feature-libraries/flex-tree/utilities.ts +1 -1
- package/src/feature-libraries/forest-summary/forestSummarizer.ts +1 -1
- package/src/feature-libraries/index.ts +1 -2
- package/src/feature-libraries/indexing/anchorTreeIndex.ts +4 -2
- 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 +1 -1
- 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 +2 -2
- package/src/feature-libraries/treeTextCursor.ts +1 -1
- package/src/index.ts +1 -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 +2 -2
- package/src/shared-tree/sharedTree.ts +26 -19
- package/src/shared-tree/sharedTreeChangeFamily.ts +1 -1
- package/src/shared-tree/tree.ts +1 -1
- package/src/shared-tree/treeAlpha.ts +142 -18
- package/src/shared-tree/treeCheckout.ts +3 -2
- 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 +1 -1
- package/src/simple-tree/api/create.ts +3 -80
- package/src/simple-tree/api/customTree.ts +4 -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 +1 -10
- package/src/simple-tree/api/schemaCompatibilityTester.ts +2 -0
- package/src/simple-tree/api/schemaFactory.ts +28 -23
- 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 +89 -40
- package/src/simple-tree/api/typesUnsafe.ts +1 -1
- package/src/simple-tree/api/verboseTree.ts +1 -1
- 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 +2 -1
- package/src/simple-tree/core/treeNode.ts +1 -1
- package/src/simple-tree/core/treeNodeKernel.ts +10 -8
- 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 +4 -3
- 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 +14 -21
- package/src/simple-tree/leafNodeSchema.ts +1 -0
- package/src/simple-tree/{arrayNode.ts → node-kinds/array/arrayNode.ts} +10 -10
- 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 +40 -0
- package/src/simple-tree/node-kinds/map/index.ts +16 -0
- package/src/simple-tree/{mapNode.ts → node-kinds/map/mapNode.ts} +10 -10
- package/src/simple-tree/{mapNodeTypes.ts → node-kinds/map/mapNodeTypes.ts} +3 -3
- package/src/simple-tree/node-kinds/object/index.ts +17 -0
- package/src/simple-tree/{objectNode.ts → node-kinds/object/objectNode.ts} +63 -34
- package/src/simple-tree/{objectNodeTypes.ts → node-kinds/object/objectNodeTypes.ts} +5 -5
- package/src/simple-tree/prepareForInsertion.ts +1 -1
- package/src/simple-tree/schemaTypes.ts +4 -3
- package/src/simple-tree/simpleSchema.ts +1 -0
- package/src/simple-tree/toMapTree.ts +11 -30
- package/src/simple-tree/toStoredSchema.ts +3 -2
- package/src/simple-tree/treeNodeValid.ts +3 -3
- package/src/simple-tree/walkFieldSchema.ts +0 -1
- package/src/treeFactory.ts +1 -1
- package/src/util/bTreeUtils.ts +1 -0
- package/src/util/breakable.ts +19 -4
- 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/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/src/simple-tree/api/testRecursiveDomain.ts +0 -53
|
@@ -9,10 +9,12 @@ import {
|
|
|
9
9
|
type IIdCompressor,
|
|
10
10
|
createIdCompressor,
|
|
11
11
|
} from "@fluidframework/id-compressor/internal";
|
|
12
|
+
|
|
12
13
|
import type { ICodecOptions } from "../codec/index.js";
|
|
13
14
|
import {
|
|
14
15
|
type RevisionTag,
|
|
15
16
|
RevisionTagCodec,
|
|
17
|
+
SchemaVersion,
|
|
16
18
|
TreeStoredSchemaRepository,
|
|
17
19
|
} from "../core/index.js";
|
|
18
20
|
import {
|
|
@@ -23,7 +25,6 @@ import {
|
|
|
23
25
|
defaultSchemaPolicy,
|
|
24
26
|
TreeCompressionStrategy,
|
|
25
27
|
initializeForest,
|
|
26
|
-
SchemaCodecVersion,
|
|
27
28
|
} from "../feature-libraries/index.js";
|
|
28
29
|
// eslint-disable-next-line import/no-internal-modules
|
|
29
30
|
import type { Format } from "../feature-libraries/schema-index/formatV1.js";
|
|
@@ -32,7 +33,7 @@ import type {
|
|
|
32
33
|
ImplicitFieldSchema,
|
|
33
34
|
TreeViewAlpha,
|
|
34
35
|
} from "../simple-tree/index.js";
|
|
35
|
-
import type
|
|
36
|
+
import { type JsonCompatibleReadOnly, type JsonCompatible, Breakable } from "../util/index.js";
|
|
36
37
|
import {
|
|
37
38
|
buildConfiguredForest,
|
|
38
39
|
defaultSharedTreeOptions,
|
|
@@ -54,11 +55,13 @@ export function independentView<const TSchema extends ImplicitFieldSchema>(
|
|
|
54
55
|
config: TreeViewConfiguration<TSchema>,
|
|
55
56
|
options: ForestOptions & { idCompressor?: IIdCompressor | undefined },
|
|
56
57
|
): TreeViewAlpha<TSchema> {
|
|
58
|
+
const breaker = new Breakable("independentView");
|
|
57
59
|
const idCompressor: IIdCompressor = options.idCompressor ?? createIdCompressor();
|
|
58
60
|
const mintRevisionTag = (): RevisionTag => idCompressor.generateCompressedId();
|
|
59
61
|
const revisionTagCodec = new RevisionTagCodec(idCompressor);
|
|
60
62
|
const schema = new TreeStoredSchemaRepository();
|
|
61
63
|
const forest = buildConfiguredForest(
|
|
64
|
+
breaker,
|
|
62
65
|
options.forest ?? defaultSharedTreeOptions.forest,
|
|
63
66
|
schema,
|
|
64
67
|
idCompressor,
|
|
@@ -66,6 +69,7 @@ export function independentView<const TSchema extends ImplicitFieldSchema>(
|
|
|
66
69
|
const checkout = createTreeCheckout(idCompressor, mintRevisionTag, revisionTagCodec, {
|
|
67
70
|
forest,
|
|
68
71
|
schema,
|
|
72
|
+
breaker,
|
|
69
73
|
});
|
|
70
74
|
const out: TreeViewAlpha<TSchema> = new SchematizingSimpleTreeView<TSchema>(
|
|
71
75
|
checkout,
|
|
@@ -88,15 +92,17 @@ export function independentInitializedView<const TSchema extends ImplicitFieldSc
|
|
|
88
92
|
options: ForestOptions & ICodecOptions,
|
|
89
93
|
content: ViewContent,
|
|
90
94
|
): TreeViewAlpha<TSchema> {
|
|
95
|
+
const breaker = new Breakable("independentInitializedView");
|
|
91
96
|
const idCompressor: IIdCompressor = content.idCompressor;
|
|
92
97
|
const mintRevisionTag = (): RevisionTag => idCompressor.generateCompressedId();
|
|
93
98
|
const revisionTagCodec = new RevisionTagCodec(idCompressor);
|
|
94
99
|
|
|
95
100
|
const fieldBatchCodec = makeFieldBatchCodec(options, 1);
|
|
96
|
-
const schemaCodec = makeSchemaCodec(options,
|
|
101
|
+
const schemaCodec = makeSchemaCodec(options, SchemaVersion.v1);
|
|
97
102
|
|
|
98
103
|
const schema = new TreeStoredSchemaRepository(schemaCodec.decode(content.schema as Format));
|
|
99
104
|
const forest = buildConfiguredForest(
|
|
105
|
+
breaker,
|
|
100
106
|
options.forest ?? defaultSharedTreeOptions.forest,
|
|
101
107
|
schema,
|
|
102
108
|
idCompressor,
|
|
@@ -118,6 +124,7 @@ export function independentInitializedView<const TSchema extends ImplicitFieldSc
|
|
|
118
124
|
const checkout = createTreeCheckout(idCompressor, mintRevisionTag, revisionTagCodec, {
|
|
119
125
|
forest,
|
|
120
126
|
schema,
|
|
127
|
+
breaker,
|
|
121
128
|
});
|
|
122
129
|
const out: TreeViewAlpha<TSchema> = new SchematizingSimpleTreeView<TSchema>(
|
|
123
130
|
checkout,
|
package/src/shared-tree/index.ts
CHANGED
|
@@ -50,7 +50,10 @@ export type {
|
|
|
50
50
|
export { Tree } from "./tree.js";
|
|
51
51
|
export type { RunTransaction } from "./tree.js";
|
|
52
52
|
|
|
53
|
-
export {
|
|
53
|
+
export {
|
|
54
|
+
TreeAlpha,
|
|
55
|
+
type TreeIdentifierUtils,
|
|
56
|
+
} from "./treeAlpha.js";
|
|
54
57
|
|
|
55
58
|
export {
|
|
56
59
|
independentInitializedView,
|
|
@@ -19,9 +19,10 @@ import {
|
|
|
19
19
|
defaultSchemaPolicy,
|
|
20
20
|
mapTreeFromCursor,
|
|
21
21
|
} from "../feature-libraries/index.js";
|
|
22
|
+
import type { SchemaCompatibilityTester } from "../simple-tree/index.js";
|
|
22
23
|
import { isReadonlyArray } from "../util/index.js";
|
|
24
|
+
|
|
23
25
|
import type { ITreeCheckout } from "./treeCheckout.js";
|
|
24
|
-
import type { SchemaCompatibilityTester } from "../simple-tree/index.js";
|
|
25
26
|
|
|
26
27
|
/**
|
|
27
28
|
* Modify `storedSchema` and invoke `setInitialTree` when it's time to set the tree content.
|
|
@@ -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
|
|
@@ -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,7 +20,6 @@ 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
24
|
import { type ICodecOptions, noopValidator } from "../codec/index.js";
|
|
25
25
|
import {
|
|
@@ -32,6 +32,7 @@ import {
|
|
|
32
32
|
MapNodeStoredSchema,
|
|
33
33
|
ObjectNodeStoredSchema,
|
|
34
34
|
RevisionTagCodec,
|
|
35
|
+
SchemaVersion,
|
|
35
36
|
type TaggedChange,
|
|
36
37
|
type TreeFieldStoredSchema,
|
|
37
38
|
type TreeNodeSchemaIdentifier,
|
|
@@ -42,12 +43,10 @@ import {
|
|
|
42
43
|
makeDetachedFieldIndex,
|
|
43
44
|
moveToDetachedField,
|
|
44
45
|
} from "../core/index.js";
|
|
45
|
-
|
|
46
46
|
import {
|
|
47
47
|
DetachedFieldIndexSummarizer,
|
|
48
48
|
FieldKinds,
|
|
49
49
|
ForestSummarizer,
|
|
50
|
-
SchemaCodecVersion,
|
|
51
50
|
SchemaSummarizer,
|
|
52
51
|
TreeCompressionStrategy,
|
|
53
52
|
buildChunkedForest,
|
|
@@ -59,6 +58,8 @@ import {
|
|
|
59
58
|
makeSchemaCodec,
|
|
60
59
|
makeTreeChunker,
|
|
61
60
|
} from "../feature-libraries/index.js";
|
|
61
|
+
// eslint-disable-next-line import/no-internal-modules
|
|
62
|
+
import type { Format } from "../feature-libraries/schema-index/index.js";
|
|
62
63
|
import {
|
|
63
64
|
type ClonableSchemaAndPolicy,
|
|
64
65
|
DefaultResubmitMachine,
|
|
@@ -86,6 +87,12 @@ import {
|
|
|
86
87
|
type ITreeAlpha,
|
|
87
88
|
type SimpleObjectFieldSchema,
|
|
88
89
|
} from "../simple-tree/index.js";
|
|
90
|
+
import {
|
|
91
|
+
type Breakable,
|
|
92
|
+
breakingClass,
|
|
93
|
+
type JsonCompatible,
|
|
94
|
+
throwIfBroken,
|
|
95
|
+
} from "../util/index.js";
|
|
89
96
|
|
|
90
97
|
import { SchematizingSimpleTreeView } from "./schematizingTreeView.js";
|
|
91
98
|
import { SharedTreeReadonlyChangeEnricher } from "./sharedTreeChangeEnricher.js";
|
|
@@ -93,14 +100,6 @@ import { SharedTreeChangeFamily } from "./sharedTreeChangeFamily.js";
|
|
|
93
100
|
import type { SharedTreeChange } from "./sharedTreeChangeTypes.js";
|
|
94
101
|
import type { SharedTreeEditBuilder } from "./sharedTreeEditBuilder.js";
|
|
95
102
|
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
103
|
|
|
105
104
|
/**
|
|
106
105
|
* Copy of data from an {@link ITreePrivate} at some point in time.
|
|
@@ -166,7 +165,7 @@ export interface ITreePrivate extends ITreeInternal {
|
|
|
166
165
|
*/
|
|
167
166
|
interface ExplicitCodecVersions extends ExplicitCoreCodecVersions {
|
|
168
167
|
forest: number;
|
|
169
|
-
schema:
|
|
168
|
+
schema: SchemaVersion;
|
|
170
169
|
detachedFieldIndex: number;
|
|
171
170
|
fieldBatch: number;
|
|
172
171
|
}
|
|
@@ -238,7 +237,7 @@ export class SharedTreeKernel
|
|
|
238
237
|
const options = { ...defaultSharedTreeOptions, ...optionsParam };
|
|
239
238
|
const codecVersions = getCodecVersions(options.formatVersion);
|
|
240
239
|
const schema = new TreeStoredSchemaRepository();
|
|
241
|
-
const forest = buildConfiguredForest(options.forest, schema, idCompressor);
|
|
240
|
+
const forest = buildConfiguredForest(breaker, options.forest, schema, idCompressor);
|
|
242
241
|
const revisionTagCodec = new RevisionTagCodec(idCompressor);
|
|
243
242
|
const removedRoots = makeDetachedFieldIndex(
|
|
244
243
|
"repair",
|
|
@@ -506,7 +505,7 @@ export function persistedToSimpleSchema(
|
|
|
506
505
|
persisted: JsonCompatible,
|
|
507
506
|
options: ICodecOptions,
|
|
508
507
|
): SimpleTreeSchema {
|
|
509
|
-
const schemaCodec = makeSchemaCodec(options,
|
|
508
|
+
const schemaCodec = makeSchemaCodec(options, SchemaVersion.v1);
|
|
510
509
|
const stored = schemaCodec.decode(persisted as Format);
|
|
511
510
|
return exportSimpleSchema(stored);
|
|
512
511
|
}
|
|
@@ -646,7 +645,10 @@ export interface ForestType extends ErasedType<"ForestType"> {}
|
|
|
646
645
|
* The "ObjectForest" forest type.
|
|
647
646
|
* @alpha
|
|
648
647
|
*/
|
|
649
|
-
export const ForestTypeReference = toForestType(
|
|
648
|
+
export const ForestTypeReference = toForestType(
|
|
649
|
+
(breaker: Breakable, schema: TreeStoredSchemaSubscription, idCompressor: IIdCompressor) =>
|
|
650
|
+
buildForest(breaker, schema),
|
|
651
|
+
);
|
|
650
652
|
|
|
651
653
|
/**
|
|
652
654
|
* Optimized implementation of forest.
|
|
@@ -658,7 +660,7 @@ export const ForestTypeReference = toForestType(() => buildForest());
|
|
|
658
660
|
* @alpha
|
|
659
661
|
*/
|
|
660
662
|
export const ForestTypeOptimized = toForestType(
|
|
661
|
-
(schema: TreeStoredSchemaSubscription, idCompressor: IIdCompressor) =>
|
|
663
|
+
(breaker: Breakable, schema: TreeStoredSchemaSubscription, idCompressor: IIdCompressor) =>
|
|
662
664
|
buildChunkedForest(makeTreeChunker(schema, defaultSchemaPolicy), undefined, idCompressor),
|
|
663
665
|
);
|
|
664
666
|
|
|
@@ -671,9 +673,13 @@ export const ForestTypeOptimized = toForestType(
|
|
|
671
673
|
* The "ObjectForest" forest type with expensive asserts for debugging.
|
|
672
674
|
* @alpha
|
|
673
675
|
*/
|
|
674
|
-
export const ForestTypeExpensiveDebug = toForestType(
|
|
676
|
+
export const ForestTypeExpensiveDebug = toForestType(
|
|
677
|
+
(breaker: Breakable, schema: TreeStoredSchemaSubscription) =>
|
|
678
|
+
buildForest(breaker, schema, undefined, true),
|
|
679
|
+
);
|
|
675
680
|
|
|
676
681
|
type ForestFactory = (
|
|
682
|
+
breaker: Breakable,
|
|
677
683
|
schema: TreeStoredSchemaSubscription,
|
|
678
684
|
idCompressor: IIdCompressor,
|
|
679
685
|
) => IEditableForest;
|
|
@@ -686,11 +692,12 @@ function toForestType(factory: ForestFactory): ForestType {
|
|
|
686
692
|
* Build and return a forest of the requested type.
|
|
687
693
|
*/
|
|
688
694
|
export function buildConfiguredForest(
|
|
695
|
+
breaker: Breakable,
|
|
689
696
|
factory: ForestType,
|
|
690
697
|
schema: TreeStoredSchemaSubscription,
|
|
691
698
|
idCompressor: IIdCompressor,
|
|
692
699
|
): IEditableForest {
|
|
693
|
-
return (factory as unknown as ForestFactory)(schema, idCompressor);
|
|
700
|
+
return (factory as unknown as ForestFactory)(breaker, schema, idCompressor);
|
|
694
701
|
}
|
|
695
702
|
|
|
696
703
|
export const defaultSharedTreeOptions: Required<SharedTreeOptionsInternal> = {
|
|
@@ -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
|
@@ -18,9 +18,9 @@ import {
|
|
|
18
18
|
type TransactionConstraint,
|
|
19
19
|
} from "../simple-tree/index.js";
|
|
20
20
|
|
|
21
|
+
import { getCheckoutFlexTreeView } from "./checkoutFlexTreeView.js";
|
|
21
22
|
import { SchematizingSimpleTreeView } from "./schematizingTreeView.js";
|
|
22
23
|
import type { ITreeCheckout } from "./treeCheckout.js";
|
|
23
|
-
import { getCheckoutFlexTreeView } from "./checkoutFlexTreeView.js";
|
|
24
24
|
|
|
25
25
|
/**
|
|
26
26
|
* Provides various functions for interacting with {@link TreeNode}s.
|
|
@@ -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,9 +37,10 @@ import {
|
|
|
39
37
|
getStoredKey,
|
|
40
38
|
getPropertyKeyFromStoredKey,
|
|
41
39
|
treeNodeApi,
|
|
40
|
+
getIdentifierFromNode,
|
|
42
41
|
mapTreeFromNodeData,
|
|
43
42
|
} from "../simple-tree/index.js";
|
|
44
|
-
import type
|
|
43
|
+
import { extractFromOpaque, type JsonCompatible } from "../util/index.js";
|
|
45
44
|
import { noopValidator, type FluidClientVersion, type ICodecOptions } from "../codec/index.js";
|
|
46
45
|
import type { ITreeCursorSynchronous } from "../core/index.js";
|
|
47
46
|
import {
|
|
@@ -54,12 +53,124 @@ import {
|
|
|
54
53
|
type FieldBatch,
|
|
55
54
|
type FieldBatchEncodingContext,
|
|
56
55
|
fluidVersionToFieldBatchCodecWriteVersion,
|
|
56
|
+
type LocalNodeIdentifier,
|
|
57
57
|
} from "../feature-libraries/index.js";
|
|
58
58
|
import { independentInitializedView, type ViewContent } from "./independentView.js";
|
|
59
59
|
import { SchematizingSimpleTreeView, ViewSlot } from "./schematizingTreeView.js";
|
|
60
60
|
import { currentVersion } from "../codec/index.js";
|
|
61
61
|
import { createFromMapTree } from "../simple-tree/index.js";
|
|
62
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
|
+
}
|
|
173
|
+
|
|
63
174
|
/**
|
|
64
175
|
* Extensions to {@link (Tree:interface)} and {@link (TreeBeta:interface)} which are not yet stable.
|
|
65
176
|
* @remarks
|
|
@@ -180,7 +291,7 @@ 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,
|
|
@@ -212,6 +323,11 @@ export interface TreeAlpha {
|
|
|
212
323
|
options: { idCompressor?: IIdCompressor } & ICodecOptions,
|
|
213
324
|
): Unhydrated<TreeFieldFromImplicitField<TSchema>>;
|
|
214
325
|
|
|
326
|
+
/**
|
|
327
|
+
* APIs for creating, converting, and retrieving identifiers.
|
|
328
|
+
*/
|
|
329
|
+
readonly identifier: TreeIdentifierUtils;
|
|
330
|
+
|
|
215
331
|
/**
|
|
216
332
|
* The key of the given node under its parent.
|
|
217
333
|
* @remarks
|
|
@@ -270,14 +386,10 @@ export const TreeAlpha: TreeAlpha = {
|
|
|
270
386
|
? TreeFieldFromImplicitField<TSchema>
|
|
271
387
|
: TreeNode | TreeLeafValue | undefined
|
|
272
388
|
> {
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
TSchema extends ImplicitFieldSchema
|
|
278
|
-
? TreeFieldFromImplicitField<TSchema>
|
|
279
|
-
: TreeNode | TreeLeafValue | undefined
|
|
280
|
-
>;
|
|
389
|
+
// `importConcise` does not need to support all the formats that `create` does.
|
|
390
|
+
// Perhaps it should error instead of hydrating nodes for example.
|
|
391
|
+
// For now however, it is a simple wrapper around `create`.
|
|
392
|
+
return this.create(schema, data as InsertableField<TSchema>);
|
|
281
393
|
},
|
|
282
394
|
|
|
283
395
|
importVerbose<const TSchema extends ImplicitFieldSchema>(
|
|
@@ -353,6 +465,8 @@ export const TreeAlpha: TreeAlpha = {
|
|
|
353
465
|
return TreeBeta.clone<TSchema>(view.root);
|
|
354
466
|
},
|
|
355
467
|
|
|
468
|
+
identifier,
|
|
469
|
+
|
|
356
470
|
key2(node: TreeNode): string | number | undefined {
|
|
357
471
|
// If the parent is undefined, then this node is under the root field,
|
|
358
472
|
const parent = treeNodeApi.parent(node);
|
|
@@ -396,25 +510,35 @@ function exportConcise(
|
|
|
396
510
|
);
|
|
397
511
|
}
|
|
398
512
|
|
|
513
|
+
/**
|
|
514
|
+
* Borrow a cursor from a node.
|
|
515
|
+
* @remarks
|
|
516
|
+
* The cursor must be put back to its original location before the node is used again.
|
|
517
|
+
*/
|
|
399
518
|
function borrowCursorFromTreeNodeOrValue(
|
|
400
519
|
node: TreeNode | TreeLeafValue,
|
|
401
520
|
): ITreeCursorSynchronous {
|
|
402
521
|
if (isTreeValue(node)) {
|
|
403
|
-
return
|
|
404
|
-
tryGetSchema(node) ?? fail(0xad0 /* missing schema */),
|
|
405
|
-
node,
|
|
406
|
-
);
|
|
522
|
+
return cursorFromVerbose(node, {});
|
|
407
523
|
}
|
|
408
524
|
const kernel = getKernel(node);
|
|
409
525
|
const cursor = kernel.getOrCreateInnerNode().borrowCursor();
|
|
410
526
|
return cursor;
|
|
411
527
|
}
|
|
412
528
|
|
|
529
|
+
/**
|
|
530
|
+
* Borrow a cursor from a field.
|
|
531
|
+
* @remarks
|
|
532
|
+
* The cursor must be put back to its original location before the node is used again.
|
|
533
|
+
*/
|
|
413
534
|
function borrowFieldCursorFromTreeNodeOrValue(
|
|
414
|
-
node: TreeNode | TreeLeafValue,
|
|
535
|
+
node: TreeNode | TreeLeafValue | undefined,
|
|
415
536
|
): ITreeCursorSynchronous {
|
|
537
|
+
if (node === undefined) {
|
|
538
|
+
return cursorForMapTreeField([]);
|
|
539
|
+
}
|
|
416
540
|
const cursor = borrowCursorFromTreeNodeOrValue(node);
|
|
417
|
-
// TODO: avoid copy
|
|
541
|
+
// TODO: avoid copy: borrow cursor from field instead.
|
|
418
542
|
const mapTree = mapTreeFromCursor(cursor);
|
|
419
543
|
return cursorForMapTreeField([mapTree]);
|
|
420
544
|
}
|
|
@@ -276,8 +276,9 @@ 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 forest = args?.forest ?? buildForest(breaker, schema);
|
|
281
282
|
const defaultCodecOptions = { jsonValidator: noopValidator };
|
|
282
283
|
const defaultFieldBatchVersion = 1;
|
|
283
284
|
const changeFamily =
|
|
@@ -312,7 +313,7 @@ export function createTreeCheckout(
|
|
|
312
313
|
idCompressor,
|
|
313
314
|
args?.removedRoots,
|
|
314
315
|
args?.logger,
|
|
315
|
-
|
|
316
|
+
breaker,
|
|
316
317
|
args?.disposeForksAfterTransaction,
|
|
317
318
|
);
|
|
318
319
|
}
|
|
@@ -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;
|
|
@@ -4,15 +4,17 @@
|
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
import { assert } from "@fluidframework/core-utils/internal";
|
|
7
|
+
|
|
7
8
|
import {
|
|
8
9
|
type ChangeRebaser,
|
|
9
10
|
type GraphCommit,
|
|
10
11
|
replaceChange,
|
|
11
12
|
type RevisionTag,
|
|
12
13
|
} from "../core/index.js";
|
|
14
|
+
|
|
15
|
+
import type { SharedTreeBranchChange } from "./branch.js";
|
|
13
16
|
import type { ChangeEnricherReadonlyCheckout } from "./changeEnricher.js";
|
|
14
17
|
import { TransactionEnricher } from "./transactionEnricher.js";
|
|
15
|
-
import type { SharedTreeBranchChange } from "./branch.js";
|
|
16
18
|
|
|
17
19
|
/**
|
|
18
20
|
* Utility for enriching commits from a {@link Branch} before these commits are applied and submitted.
|
|
@@ -4,8 +4,10 @@
|
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
import { assert, oob } from "@fluidframework/core-utils/internal";
|
|
7
|
+
|
|
7
8
|
import type { GraphCommit, TaggedChange } from "../core/index.js";
|
|
8
9
|
import { disposeSymbol, hasSome } from "../util/index.js";
|
|
10
|
+
|
|
9
11
|
import type { ChangeEnricherReadonlyCheckout, ResubmitMachine } from "./index.js";
|
|
10
12
|
|
|
11
13
|
/**
|
|
@@ -627,8 +627,10 @@ export class EditManager<
|
|
|
627
627
|
}
|
|
628
628
|
|
|
629
629
|
/**
|
|
630
|
-
*
|
|
630
|
+
* Gets the length of the longest branch maintained by this `EditManager`.
|
|
631
631
|
* This may be the length of a peer branch or the local branch.
|
|
632
|
+
*
|
|
633
|
+
* @remarks
|
|
632
634
|
* The length is counted from the lowest common ancestor with the trunk such that a fully sequenced branch would
|
|
633
635
|
* have length zero.
|
|
634
636
|
*/
|
|
@@ -825,7 +827,7 @@ export interface SummaryData<TChangeset> {
|
|
|
825
827
|
}
|
|
826
828
|
|
|
827
829
|
/**
|
|
828
|
-
*
|
|
830
|
+
* Gets the path from the base of a branch to its head.
|
|
829
831
|
*/
|
|
830
832
|
function getPathFromBase<TCommit extends { parent?: TCommit }>(
|
|
831
833
|
branchHead: TCommit,
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
import { bufferToString } from "@fluid-internal/client-utils";
|
|
7
7
|
import { assert } from "@fluidframework/core-utils/internal";
|
|
8
8
|
import type { IChannelStorageService } from "@fluidframework/datastore-definitions/internal";
|
|
9
|
+
import type { IIdCompressor } from "@fluidframework/id-compressor";
|
|
9
10
|
import type {
|
|
10
11
|
ISummaryTreeWithStats,
|
|
11
12
|
ITelemetryContext,
|
|
@@ -23,7 +24,6 @@ import type {
|
|
|
23
24
|
SummaryElementParser,
|
|
24
25
|
SummaryElementStringifier,
|
|
25
26
|
} from "./sharedTreeCore.js";
|
|
26
|
-
import type { IIdCompressor } from "@fluidframework/id-compressor";
|
|
27
27
|
|
|
28
28
|
const stringKey = "String";
|
|
29
29
|
|