@fluidframework/tree 2.110.0 → 2.112.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 +193 -0
- package/api-report/tree.alpha.api.md +96 -36
- package/api-report/tree.beta.api.md +39 -1
- package/api-report/tree.legacy.beta.api.md +39 -1
- package/api-report/tree.legacy.public.api.md +1 -1
- package/api-report/tree.public.api.md +1 -1
- package/dist/componentApi.d.ts +198 -0
- package/dist/componentApi.d.ts.map +1 -0
- package/dist/componentApi.js +138 -0
- package/dist/componentApi.js.map +1 -0
- package/dist/core/change-family/changeFamily.d.ts +3 -10
- package/dist/core/change-family/changeFamily.d.ts.map +1 -1
- package/dist/core/change-family/changeFamily.js.map +1 -1
- package/dist/core/rebase/types.d.ts +2 -2
- package/dist/core/rebase/types.js.map +1 -1
- package/dist/core/schema-stored/storedSchemaRepository.d.ts +2 -2
- package/dist/core/schema-stored/storedSchemaRepository.js.map +1 -1
- package/dist/entrypoints/alpha.d.ts +1 -1
- package/dist/entrypoints/alpha.d.ts.map +1 -1
- package/dist/entrypoints/alpha.js +4 -2
- package/dist/entrypoints/alpha.js.map +1 -1
- package/dist/entrypoints/beta.d.ts +1 -1
- package/dist/entrypoints/beta.d.ts.map +1 -1
- package/dist/entrypoints/beta.js.map +1 -1
- package/dist/entrypoints/legacy.d.ts +1 -1
- package/dist/entrypoints/legacy.d.ts.map +1 -1
- package/dist/entrypoints/legacy.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/chunkDecoding.d.ts +1 -20
- package/dist/feature-libraries/chunked-forest/codec/chunkDecoding.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/chunkDecoding.js +13 -32
- package/dist/feature-libraries/chunked-forest/codec/chunkDecoding.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.d.ts +1 -2
- package/dist/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/codecs.d.ts +73 -28
- package/dist/feature-libraries/chunked-forest/codec/codecs.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/codecs.js +76 -9
- package/dist/feature-libraries/chunked-forest/codec/codecs.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/compressedEncode.d.ts +4 -2
- package/dist/feature-libraries/chunked-forest/codec/compressedEncode.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/compressedEncode.js +11 -0
- package/dist/feature-libraries/chunked-forest/codec/compressedEncode.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/index.d.ts +1 -1
- package/dist/feature-libraries/chunked-forest/codec/index.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/index.js +2 -1
- package/dist/feature-libraries/chunked-forest/codec/index.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/nodeEncoder.d.ts +1 -1
- package/dist/feature-libraries/chunked-forest/codec/nodeEncoder.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/nodeEncoder.js +3 -15
- package/dist/feature-libraries/chunked-forest/codec/nodeEncoder.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/index.d.ts +1 -1
- package/dist/feature-libraries/chunked-forest/index.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/index.js +2 -1
- package/dist/feature-libraries/chunked-forest/index.js.map +1 -1
- package/dist/feature-libraries/forest-summary/codec.d.ts +3 -3
- package/dist/feature-libraries/forest-summary/codec.d.ts.map +1 -1
- package/dist/feature-libraries/forest-summary/codec.js.map +1 -1
- package/dist/feature-libraries/forest-summary/forestSummarizer.d.ts +3 -2
- package/dist/feature-libraries/forest-summary/forestSummarizer.d.ts.map +1 -1
- package/dist/feature-libraries/forest-summary/forestSummarizer.js +4 -6
- package/dist/feature-libraries/forest-summary/forestSummarizer.js.map +1 -1
- package/dist/feature-libraries/index.d.ts +3 -3
- package/dist/feature-libraries/index.d.ts.map +1 -1
- package/dist/feature-libraries/index.js +4 -2
- package/dist/feature-libraries/index.js.map +1 -1
- package/dist/feature-libraries/modular-schema/index.d.ts +1 -0
- package/dist/feature-libraries/modular-schema/index.d.ts.map +1 -1
- package/dist/feature-libraries/modular-schema/index.js +3 -1
- package/dist/feature-libraries/modular-schema/index.js.map +1 -1
- package/dist/feature-libraries/modular-schema/minimizeModularChange.d.ts +25 -0
- package/dist/feature-libraries/modular-schema/minimizeModularChange.d.ts.map +1 -0
- package/dist/feature-libraries/modular-schema/minimizeModularChange.js +29 -0
- package/dist/feature-libraries/modular-schema/minimizeModularChange.js.map +1 -0
- package/dist/feature-libraries/modular-schema/modularChangeCodecV1.d.ts.map +1 -1
- package/dist/feature-libraries/modular-schema/modularChangeCodecV1.js +9 -9
- package/dist/feature-libraries/modular-schema/modularChangeCodecV1.js.map +1 -1
- package/dist/feature-libraries/schemaChecker.d.ts +22 -3
- package/dist/feature-libraries/schemaChecker.d.ts.map +1 -1
- package/dist/feature-libraries/schemaChecker.js +48 -5
- package/dist/feature-libraries/schemaChecker.js.map +1 -1
- package/dist/index.d.ts +4 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -2
- package/dist/index.js.map +1 -1
- package/dist/packageVersion.d.ts +1 -1
- package/dist/packageVersion.js +1 -1
- package/dist/packageVersion.js.map +1 -1
- package/dist/shared-tree/independentView.d.ts +17 -4
- package/dist/shared-tree/independentView.d.ts.map +1 -1
- package/dist/shared-tree/independentView.js +15 -12
- package/dist/shared-tree/independentView.js.map +1 -1
- package/dist/shared-tree/index.d.ts +3 -2
- package/dist/shared-tree/index.d.ts.map +1 -1
- package/dist/shared-tree/index.js +3 -1
- package/dist/shared-tree/index.js.map +1 -1
- package/dist/shared-tree/schematizingTreeView.d.ts +6 -5
- package/dist/shared-tree/schematizingTreeView.d.ts.map +1 -1
- package/dist/shared-tree/schematizingTreeView.js +6 -3
- package/dist/shared-tree/schematizingTreeView.js.map +1 -1
- package/dist/shared-tree/serializedChange.d.ts +41 -0
- package/dist/shared-tree/serializedChange.d.ts.map +1 -0
- package/dist/shared-tree/serializedChange.js +87 -0
- package/dist/shared-tree/serializedChange.js.map +1 -0
- package/dist/shared-tree/sharedTree.d.ts +18 -0
- package/dist/shared-tree/sharedTree.d.ts.map +1 -1
- package/dist/shared-tree/sharedTree.js +9 -4
- package/dist/shared-tree/sharedTree.js.map +1 -1
- package/dist/shared-tree/sharedTreeChangeFamily.d.ts +7 -0
- package/dist/shared-tree/sharedTreeChangeFamily.d.ts.map +1 -1
- package/dist/shared-tree/sharedTreeChangeFamily.js +8 -1
- package/dist/shared-tree/sharedTreeChangeFamily.js.map +1 -1
- package/dist/shared-tree/transactionMinimize.d.ts +35 -0
- package/dist/shared-tree/transactionMinimize.d.ts.map +1 -0
- package/dist/shared-tree/transactionMinimize.js +65 -0
- package/dist/shared-tree/transactionMinimize.js.map +1 -0
- package/dist/shared-tree/transactionPostProcessor.d.ts +28 -0
- package/dist/shared-tree/transactionPostProcessor.d.ts.map +1 -0
- package/dist/shared-tree/transactionPostProcessor.js +28 -0
- package/dist/shared-tree/transactionPostProcessor.js.map +1 -0
- package/dist/shared-tree/treeAlpha.js +3 -3
- package/dist/shared-tree/treeAlpha.js.map +1 -1
- package/dist/shared-tree/treeCheckout.d.ts +19 -13
- package/dist/shared-tree/treeCheckout.d.ts.map +1 -1
- package/dist/shared-tree/treeCheckout.js +54 -71
- package/dist/shared-tree/treeCheckout.js.map +1 -1
- package/dist/shared-tree/unhydratedTreeContext.d.ts +5 -5
- package/dist/shared-tree/unhydratedTreeContext.d.ts.map +1 -1
- package/dist/shared-tree/unhydratedTreeContext.js.map +1 -1
- package/dist/shared-tree-core/editManager.d.ts +6 -3
- package/dist/shared-tree-core/editManager.d.ts.map +1 -1
- package/dist/shared-tree-core/editManager.js +35 -14
- package/dist/shared-tree-core/editManager.js.map +1 -1
- package/dist/shared-tree-core/editManagerCodecs.d.ts +3 -2
- 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/editManagerCodecsCommons.d.ts +3 -9
- package/dist/shared-tree-core/editManagerCodecsCommons.d.ts.map +1 -1
- package/dist/shared-tree-core/editManagerCodecsCommons.js +2 -4
- package/dist/shared-tree-core/editManagerCodecsCommons.js.map +1 -1
- package/dist/shared-tree-core/editManagerCodecsV1toV4.d.ts +3 -3
- package/dist/shared-tree-core/editManagerCodecsV1toV4.d.ts.map +1 -1
- package/dist/shared-tree-core/editManagerCodecsV1toV4.js.map +1 -1
- package/dist/shared-tree-core/editManagerCodecsVSharedBranches.d.ts +3 -3
- package/dist/shared-tree-core/editManagerCodecsVSharedBranches.d.ts.map +1 -1
- package/dist/shared-tree-core/editManagerCodecsVSharedBranches.js.map +1 -1
- package/dist/shared-tree-core/editManagerFormatCommons.d.ts +1 -1
- package/dist/shared-tree-core/editManagerFormatCommons.js +1 -1
- package/dist/shared-tree-core/editManagerFormatCommons.js.map +1 -1
- package/dist/shared-tree-core/editManagerFormatVSharedBranches.d.ts +1 -1
- package/dist/shared-tree-core/editManagerSummarizer.d.ts +5 -9
- package/dist/shared-tree-core/editManagerSummarizer.d.ts.map +1 -1
- package/dist/shared-tree-core/editManagerSummarizer.js +5 -10
- package/dist/shared-tree-core/editManagerSummarizer.js.map +1 -1
- package/dist/shared-tree-core/index.d.ts +1 -1
- package/dist/shared-tree-core/index.d.ts.map +1 -1
- package/dist/shared-tree-core/index.js +3 -2
- package/dist/shared-tree-core/index.js.map +1 -1
- package/dist/shared-tree-core/messageCodecVSharedBranches.d.ts.map +1 -1
- package/dist/shared-tree-core/messageCodecVSharedBranches.js +8 -2
- package/dist/shared-tree-core/messageCodecVSharedBranches.js.map +1 -1
- package/dist/shared-tree-core/messageFormat.d.ts +1 -1
- package/dist/shared-tree-core/messageFormat.js +1 -1
- package/dist/shared-tree-core/messageFormat.js.map +1 -1
- package/dist/shared-tree-core/messageFormatVSharedBranches.d.ts +10 -1
- package/dist/shared-tree-core/messageFormatVSharedBranches.d.ts.map +1 -1
- package/dist/shared-tree-core/messageFormatVSharedBranches.js +1 -0
- package/dist/shared-tree-core/messageFormatVSharedBranches.js.map +1 -1
- package/dist/shared-tree-core/messageTypes.d.ts +1 -0
- package/dist/shared-tree-core/messageTypes.d.ts.map +1 -1
- package/dist/shared-tree-core/messageTypes.js.map +1 -1
- package/dist/shared-tree-core/sharedTreeCore.d.ts +9 -3
- package/dist/shared-tree-core/sharedTreeCore.d.ts.map +1 -1
- package/dist/shared-tree-core/sharedTreeCore.js +27 -12
- package/dist/shared-tree-core/sharedTreeCore.js.map +1 -1
- package/dist/shared-tree-core/transaction.d.ts +84 -9
- package/dist/shared-tree-core/transaction.d.ts.map +1 -1
- package/dist/shared-tree-core/transaction.js +88 -7
- package/dist/shared-tree-core/transaction.js.map +1 -1
- package/dist/simple-tree/api/index.d.ts +2 -2
- package/dist/simple-tree/api/index.d.ts.map +1 -1
- package/dist/simple-tree/api/index.js +2 -2
- package/dist/simple-tree/api/index.js.map +1 -1
- package/dist/simple-tree/api/schemaCompatibilityTester.d.ts +9 -24
- package/dist/simple-tree/api/schemaCompatibilityTester.d.ts.map +1 -1
- package/dist/simple-tree/api/schemaCompatibilityTester.js +31 -44
- package/dist/simple-tree/api/schemaCompatibilityTester.js.map +1 -1
- package/dist/simple-tree/api/schemaCreationUtilities.d.ts +3 -3
- package/dist/simple-tree/api/schemaCreationUtilities.js +3 -3
- package/dist/simple-tree/api/schemaCreationUtilities.js.map +1 -1
- package/dist/simple-tree/api/schemaFactory.d.ts +1 -1
- package/dist/simple-tree/api/schemaFactory.js +2 -2
- package/dist/simple-tree/api/schemaFactory.js.map +1 -1
- package/dist/simple-tree/api/schemaFactoryAlpha.d.ts +56 -15
- package/dist/simple-tree/api/schemaFactoryAlpha.d.ts.map +1 -1
- package/dist/simple-tree/api/schemaFactoryAlpha.js.map +1 -1
- package/dist/simple-tree/api/schemaFactoryBeta.d.ts +0 -3
- package/dist/simple-tree/api/schemaFactoryBeta.d.ts.map +1 -1
- package/dist/simple-tree/api/schemaFactoryBeta.js.map +1 -1
- package/dist/simple-tree/api/snapshotCompatibilityChecker.d.ts +2 -2
- package/dist/simple-tree/api/snapshotCompatibilityChecker.d.ts.map +1 -1
- package/dist/simple-tree/api/snapshotCompatibilityChecker.js +3 -4
- package/dist/simple-tree/api/snapshotCompatibilityChecker.js.map +1 -1
- package/dist/simple-tree/api/storedSchema.d.ts.map +1 -1
- package/dist/simple-tree/api/storedSchema.js +1 -2
- package/dist/simple-tree/api/storedSchema.js.map +1 -1
- package/dist/simple-tree/api/transactionTypes.d.ts +91 -28
- package/dist/simple-tree/api/transactionTypes.d.ts.map +1 -1
- package/dist/simple-tree/api/transactionTypes.js.map +1 -1
- package/dist/simple-tree/api/tree.d.ts +108 -24
- 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.map +1 -1
- package/dist/simple-tree/api/typesUnsafe.d.ts +2 -2
- 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/core/treeNodeSchema.d.ts +7 -7
- package/dist/simple-tree/core/treeNodeSchema.js.map +1 -1
- package/dist/simple-tree/index.d.ts +1 -1
- package/dist/simple-tree/index.d.ts.map +1 -1
- package/dist/simple-tree/index.js +2 -2
- package/dist/simple-tree/index.js.map +1 -1
- package/dist/simple-tree/node-kinds/array/arrayNode.d.ts +83 -4
- package/dist/simple-tree/node-kinds/array/arrayNode.d.ts.map +1 -1
- package/dist/simple-tree/node-kinds/array/arrayNode.js +39 -0
- package/dist/simple-tree/node-kinds/array/arrayNode.js.map +1 -1
- package/dist/simple-tree/simpleSchemaFormatV1.js +1 -1
- package/dist/simple-tree/simpleSchemaFormatV1.js.map +1 -1
- package/dist/text/index.d.ts +1 -0
- package/dist/text/index.d.ts.map +1 -1
- package/dist/text/index.js +3 -1
- package/dist/text/index.js.map +1 -1
- package/dist/text/textDomainFormatted.d.ts +69 -758
- package/dist/text/textDomainFormatted.d.ts.map +1 -1
- package/dist/text/textDomainFormatted.js +275 -322
- package/dist/text/textDomainFormatted.js.map +1 -1
- package/dist/text/textDomainFormattedDefault.d.ts +273 -0
- package/dist/text/textDomainFormattedDefault.d.ts.map +1 -0
- package/dist/text/textDomainFormattedDefault.js +94 -0
- package/dist/text/textDomainFormattedDefault.js.map +1 -0
- package/dist/treeFactory.js +1 -1
- package/dist/treeFactory.js.map +1 -1
- package/dist/util/breakable.d.ts +16 -1
- package/dist/util/breakable.d.ts.map +1 -1
- package/dist/util/breakable.js +9 -1
- package/dist/util/breakable.js.map +1 -1
- package/dist/util/compressedIds.d.ts +185 -0
- package/dist/util/compressedIds.d.ts.map +1 -0
- package/dist/util/compressedIds.js +164 -0
- package/dist/util/compressedIds.js.map +1 -0
- package/dist/util/index.d.ts +2 -1
- package/dist/util/index.d.ts.map +1 -1
- package/dist/util/index.js +10 -2
- package/dist/util/index.js.map +1 -1
- package/dist/util/nestedMap.d.ts.map +1 -1
- package/dist/util/nestedMap.js +16 -3
- package/dist/util/nestedMap.js.map +1 -1
- package/dist/util/nestedSet.d.ts +1 -1
- package/dist/util/nestedSet.d.ts.map +1 -1
- package/dist/util/nestedSet.js.map +1 -1
- package/dist/util/utils.d.ts +0 -6
- package/dist/util/utils.d.ts.map +1 -1
- package/dist/util/utils.js +1 -15
- package/dist/util/utils.js.map +1 -1
- package/lib/componentApi.d.ts +198 -0
- package/lib/componentApi.d.ts.map +1 -0
- package/lib/componentApi.js +135 -0
- package/lib/componentApi.js.map +1 -0
- package/lib/core/change-family/changeFamily.d.ts +3 -10
- package/lib/core/change-family/changeFamily.d.ts.map +1 -1
- package/lib/core/change-family/changeFamily.js.map +1 -1
- package/lib/core/rebase/types.d.ts +2 -2
- package/lib/core/rebase/types.js.map +1 -1
- package/lib/core/schema-stored/storedSchemaRepository.d.ts +2 -2
- package/lib/core/schema-stored/storedSchemaRepository.js.map +1 -1
- package/lib/entrypoints/alpha.d.ts +1 -1
- package/lib/entrypoints/alpha.d.ts.map +1 -1
- package/lib/entrypoints/alpha.js +1 -1
- package/lib/entrypoints/alpha.js.map +1 -1
- package/lib/entrypoints/beta.d.ts +1 -1
- package/lib/entrypoints/beta.d.ts.map +1 -1
- package/lib/entrypoints/beta.js.map +1 -1
- package/lib/entrypoints/legacy.d.ts +1 -1
- package/lib/entrypoints/legacy.d.ts.map +1 -1
- package/lib/entrypoints/legacy.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/chunkDecoding.d.ts +1 -20
- package/lib/feature-libraries/chunked-forest/codec/chunkDecoding.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/chunkDecoding.js +14 -33
- package/lib/feature-libraries/chunked-forest/codec/chunkDecoding.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.d.ts +1 -2
- package/lib/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/codecs.d.ts +73 -28
- package/lib/feature-libraries/chunked-forest/codec/codecs.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/codecs.js +75 -9
- package/lib/feature-libraries/chunked-forest/codec/codecs.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/compressedEncode.d.ts +4 -2
- package/lib/feature-libraries/chunked-forest/codec/compressedEncode.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/compressedEncode.js +12 -1
- package/lib/feature-libraries/chunked-forest/codec/compressedEncode.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/index.d.ts +1 -1
- package/lib/feature-libraries/chunked-forest/codec/index.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/index.js +1 -1
- package/lib/feature-libraries/chunked-forest/codec/index.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/nodeEncoder.d.ts +1 -1
- package/lib/feature-libraries/chunked-forest/codec/nodeEncoder.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/nodeEncoder.js +3 -15
- package/lib/feature-libraries/chunked-forest/codec/nodeEncoder.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/index.d.ts +1 -1
- package/lib/feature-libraries/chunked-forest/index.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/index.js +1 -1
- package/lib/feature-libraries/chunked-forest/index.js.map +1 -1
- package/lib/feature-libraries/forest-summary/codec.d.ts +3 -3
- package/lib/feature-libraries/forest-summary/codec.d.ts.map +1 -1
- package/lib/feature-libraries/forest-summary/codec.js.map +1 -1
- package/lib/feature-libraries/forest-summary/forestSummarizer.d.ts +3 -2
- package/lib/feature-libraries/forest-summary/forestSummarizer.d.ts.map +1 -1
- package/lib/feature-libraries/forest-summary/forestSummarizer.js +4 -6
- package/lib/feature-libraries/forest-summary/forestSummarizer.js.map +1 -1
- package/lib/feature-libraries/index.d.ts +3 -3
- 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/modular-schema/index.d.ts +1 -0
- package/lib/feature-libraries/modular-schema/index.d.ts.map +1 -1
- package/lib/feature-libraries/modular-schema/index.js +1 -0
- package/lib/feature-libraries/modular-schema/index.js.map +1 -1
- package/lib/feature-libraries/modular-schema/minimizeModularChange.d.ts +25 -0
- package/lib/feature-libraries/modular-schema/minimizeModularChange.d.ts.map +1 -0
- package/lib/feature-libraries/modular-schema/minimizeModularChange.js +25 -0
- package/lib/feature-libraries/modular-schema/minimizeModularChange.js.map +1 -0
- package/lib/feature-libraries/modular-schema/modularChangeCodecV1.d.ts.map +1 -1
- package/lib/feature-libraries/modular-schema/modularChangeCodecV1.js +10 -10
- package/lib/feature-libraries/modular-schema/modularChangeCodecV1.js.map +1 -1
- package/lib/feature-libraries/schemaChecker.d.ts +22 -3
- package/lib/feature-libraries/schemaChecker.d.ts.map +1 -1
- package/lib/feature-libraries/schemaChecker.js +48 -5
- package/lib/feature-libraries/schemaChecker.js.map +1 -1
- package/lib/index.d.ts +4 -3
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +3 -2
- package/lib/index.js.map +1 -1
- package/lib/packageVersion.d.ts +1 -1
- package/lib/packageVersion.js +1 -1
- package/lib/packageVersion.js.map +1 -1
- package/lib/shared-tree/independentView.d.ts +17 -4
- package/lib/shared-tree/independentView.d.ts.map +1 -1
- package/lib/shared-tree/independentView.js +13 -10
- package/lib/shared-tree/independentView.js.map +1 -1
- package/lib/shared-tree/index.d.ts +3 -2
- package/lib/shared-tree/index.d.ts.map +1 -1
- package/lib/shared-tree/index.js +1 -0
- package/lib/shared-tree/index.js.map +1 -1
- package/lib/shared-tree/schematizingTreeView.d.ts +6 -5
- package/lib/shared-tree/schematizingTreeView.d.ts.map +1 -1
- package/lib/shared-tree/schematizingTreeView.js +7 -4
- package/lib/shared-tree/schematizingTreeView.js.map +1 -1
- package/lib/shared-tree/serializedChange.d.ts +41 -0
- package/lib/shared-tree/serializedChange.d.ts.map +1 -0
- package/lib/shared-tree/serializedChange.js +84 -0
- package/lib/shared-tree/serializedChange.js.map +1 -0
- package/lib/shared-tree/sharedTree.d.ts +18 -0
- package/lib/shared-tree/sharedTree.d.ts.map +1 -1
- package/lib/shared-tree/sharedTree.js +10 -5
- package/lib/shared-tree/sharedTree.js.map +1 -1
- package/lib/shared-tree/sharedTreeChangeFamily.d.ts +7 -0
- package/lib/shared-tree/sharedTreeChangeFamily.d.ts.map +1 -1
- package/lib/shared-tree/sharedTreeChangeFamily.js +7 -1
- package/lib/shared-tree/sharedTreeChangeFamily.js.map +1 -1
- package/lib/shared-tree/transactionMinimize.d.ts +35 -0
- package/lib/shared-tree/transactionMinimize.d.ts.map +1 -0
- package/lib/shared-tree/transactionMinimize.js +62 -0
- package/lib/shared-tree/transactionMinimize.js.map +1 -0
- package/lib/shared-tree/transactionPostProcessor.d.ts +28 -0
- package/lib/shared-tree/transactionPostProcessor.d.ts.map +1 -0
- package/lib/shared-tree/transactionPostProcessor.js +23 -0
- package/lib/shared-tree/transactionPostProcessor.js.map +1 -0
- package/lib/shared-tree/treeAlpha.js +3 -3
- package/lib/shared-tree/treeAlpha.js.map +1 -1
- package/lib/shared-tree/treeCheckout.d.ts +19 -13
- package/lib/shared-tree/treeCheckout.d.ts.map +1 -1
- package/lib/shared-tree/treeCheckout.js +36 -53
- package/lib/shared-tree/treeCheckout.js.map +1 -1
- package/lib/shared-tree/unhydratedTreeContext.d.ts +5 -5
- package/lib/shared-tree/unhydratedTreeContext.d.ts.map +1 -1
- package/lib/shared-tree/unhydratedTreeContext.js.map +1 -1
- package/lib/shared-tree-core/editManager.d.ts +6 -3
- package/lib/shared-tree-core/editManager.d.ts.map +1 -1
- package/lib/shared-tree-core/editManager.js +36 -15
- package/lib/shared-tree-core/editManager.js.map +1 -1
- package/lib/shared-tree-core/editManagerCodecs.d.ts +3 -2
- 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/editManagerCodecsCommons.d.ts +3 -9
- package/lib/shared-tree-core/editManagerCodecsCommons.d.ts.map +1 -1
- package/lib/shared-tree-core/editManagerCodecsCommons.js +3 -5
- package/lib/shared-tree-core/editManagerCodecsCommons.js.map +1 -1
- package/lib/shared-tree-core/editManagerCodecsV1toV4.d.ts +3 -3
- package/lib/shared-tree-core/editManagerCodecsV1toV4.d.ts.map +1 -1
- package/lib/shared-tree-core/editManagerCodecsV1toV4.js.map +1 -1
- package/lib/shared-tree-core/editManagerCodecsVSharedBranches.d.ts +3 -3
- package/lib/shared-tree-core/editManagerCodecsVSharedBranches.d.ts.map +1 -1
- package/lib/shared-tree-core/editManagerCodecsVSharedBranches.js.map +1 -1
- package/lib/shared-tree-core/editManagerFormatCommons.d.ts +1 -1
- package/lib/shared-tree-core/editManagerFormatCommons.js +1 -1
- package/lib/shared-tree-core/editManagerFormatCommons.js.map +1 -1
- package/lib/shared-tree-core/editManagerFormatVSharedBranches.d.ts +1 -1
- package/lib/shared-tree-core/editManagerSummarizer.d.ts +5 -9
- package/lib/shared-tree-core/editManagerSummarizer.d.ts.map +1 -1
- package/lib/shared-tree-core/editManagerSummarizer.js +5 -10
- package/lib/shared-tree-core/editManagerSummarizer.js.map +1 -1
- package/lib/shared-tree-core/index.d.ts +1 -1
- package/lib/shared-tree-core/index.d.ts.map +1 -1
- package/lib/shared-tree-core/index.js +1 -1
- package/lib/shared-tree-core/index.js.map +1 -1
- package/lib/shared-tree-core/messageCodecVSharedBranches.d.ts.map +1 -1
- package/lib/shared-tree-core/messageCodecVSharedBranches.js +8 -2
- package/lib/shared-tree-core/messageCodecVSharedBranches.js.map +1 -1
- package/lib/shared-tree-core/messageFormat.d.ts +1 -1
- package/lib/shared-tree-core/messageFormat.js +1 -1
- package/lib/shared-tree-core/messageFormat.js.map +1 -1
- package/lib/shared-tree-core/messageFormatVSharedBranches.d.ts +10 -1
- package/lib/shared-tree-core/messageFormatVSharedBranches.d.ts.map +1 -1
- package/lib/shared-tree-core/messageFormatVSharedBranches.js +1 -0
- package/lib/shared-tree-core/messageFormatVSharedBranches.js.map +1 -1
- package/lib/shared-tree-core/messageTypes.d.ts +1 -0
- package/lib/shared-tree-core/messageTypes.d.ts.map +1 -1
- package/lib/shared-tree-core/messageTypes.js.map +1 -1
- package/lib/shared-tree-core/sharedTreeCore.d.ts +9 -3
- package/lib/shared-tree-core/sharedTreeCore.d.ts.map +1 -1
- package/lib/shared-tree-core/sharedTreeCore.js +28 -13
- package/lib/shared-tree-core/sharedTreeCore.js.map +1 -1
- package/lib/shared-tree-core/transaction.d.ts +84 -9
- package/lib/shared-tree-core/transaction.d.ts.map +1 -1
- package/lib/shared-tree-core/transaction.js +87 -6
- package/lib/shared-tree-core/transaction.js.map +1 -1
- package/lib/simple-tree/api/index.d.ts +2 -2
- package/lib/simple-tree/api/index.d.ts.map +1 -1
- package/lib/simple-tree/api/index.js +1 -1
- package/lib/simple-tree/api/index.js.map +1 -1
- package/lib/simple-tree/api/schemaCompatibilityTester.d.ts +9 -24
- package/lib/simple-tree/api/schemaCompatibilityTester.d.ts.map +1 -1
- package/lib/simple-tree/api/schemaCompatibilityTester.js +29 -42
- package/lib/simple-tree/api/schemaCompatibilityTester.js.map +1 -1
- package/lib/simple-tree/api/schemaCreationUtilities.d.ts +3 -3
- package/lib/simple-tree/api/schemaCreationUtilities.js +3 -3
- package/lib/simple-tree/api/schemaCreationUtilities.js.map +1 -1
- package/lib/simple-tree/api/schemaFactory.d.ts +1 -1
- package/lib/simple-tree/api/schemaFactory.js +2 -2
- package/lib/simple-tree/api/schemaFactory.js.map +1 -1
- package/lib/simple-tree/api/schemaFactoryAlpha.d.ts +56 -15
- package/lib/simple-tree/api/schemaFactoryAlpha.d.ts.map +1 -1
- package/lib/simple-tree/api/schemaFactoryAlpha.js.map +1 -1
- package/lib/simple-tree/api/schemaFactoryBeta.d.ts +0 -3
- package/lib/simple-tree/api/schemaFactoryBeta.d.ts.map +1 -1
- package/lib/simple-tree/api/schemaFactoryBeta.js.map +1 -1
- package/lib/simple-tree/api/snapshotCompatibilityChecker.d.ts +2 -2
- package/lib/simple-tree/api/snapshotCompatibilityChecker.d.ts.map +1 -1
- package/lib/simple-tree/api/snapshotCompatibilityChecker.js +4 -5
- package/lib/simple-tree/api/snapshotCompatibilityChecker.js.map +1 -1
- package/lib/simple-tree/api/storedSchema.d.ts.map +1 -1
- package/lib/simple-tree/api/storedSchema.js +2 -3
- package/lib/simple-tree/api/storedSchema.js.map +1 -1
- package/lib/simple-tree/api/transactionTypes.d.ts +91 -28
- package/lib/simple-tree/api/transactionTypes.d.ts.map +1 -1
- package/lib/simple-tree/api/transactionTypes.js.map +1 -1
- package/lib/simple-tree/api/tree.d.ts +108 -24
- 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.map +1 -1
- package/lib/simple-tree/api/typesUnsafe.d.ts +2 -2
- 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/core/treeNodeSchema.d.ts +7 -7
- package/lib/simple-tree/core/treeNodeSchema.js.map +1 -1
- package/lib/simple-tree/index.d.ts +1 -1
- package/lib/simple-tree/index.d.ts.map +1 -1
- package/lib/simple-tree/index.js +1 -1
- package/lib/simple-tree/index.js.map +1 -1
- package/lib/simple-tree/node-kinds/array/arrayNode.d.ts +83 -4
- package/lib/simple-tree/node-kinds/array/arrayNode.d.ts.map +1 -1
- package/lib/simple-tree/node-kinds/array/arrayNode.js +39 -0
- package/lib/simple-tree/node-kinds/array/arrayNode.js.map +1 -1
- package/lib/simple-tree/simpleSchemaFormatV1.js +1 -1
- package/lib/simple-tree/simpleSchemaFormatV1.js.map +1 -1
- package/lib/text/index.d.ts +1 -0
- package/lib/text/index.d.ts.map +1 -1
- package/lib/text/index.js +1 -0
- package/lib/text/index.js.map +1 -1
- package/lib/text/textDomainFormatted.d.ts +69 -758
- package/lib/text/textDomainFormatted.d.ts.map +1 -1
- package/lib/text/textDomainFormatted.js +277 -324
- package/lib/text/textDomainFormatted.js.map +1 -1
- package/lib/text/textDomainFormattedDefault.d.ts +273 -0
- package/lib/text/textDomainFormattedDefault.d.ts.map +1 -0
- package/lib/text/textDomainFormattedDefault.js +91 -0
- package/lib/text/textDomainFormattedDefault.js.map +1 -0
- package/lib/treeFactory.js +1 -1
- package/lib/treeFactory.js.map +1 -1
- package/lib/util/breakable.d.ts +16 -1
- package/lib/util/breakable.d.ts.map +1 -1
- package/lib/util/breakable.js +9 -1
- package/lib/util/breakable.js.map +1 -1
- package/lib/util/compressedIds.d.ts +185 -0
- package/lib/util/compressedIds.d.ts.map +1 -0
- package/lib/util/compressedIds.js +154 -0
- package/lib/util/compressedIds.js.map +1 -0
- package/lib/util/index.d.ts +2 -1
- package/lib/util/index.d.ts.map +1 -1
- package/lib/util/index.js +2 -1
- package/lib/util/index.js.map +1 -1
- package/lib/util/nestedMap.d.ts.map +1 -1
- package/lib/util/nestedMap.js +17 -4
- package/lib/util/nestedMap.js.map +1 -1
- package/lib/util/nestedSet.d.ts +1 -1
- package/lib/util/nestedSet.d.ts.map +1 -1
- package/lib/util/nestedSet.js.map +1 -1
- package/lib/util/utils.d.ts +0 -6
- package/lib/util/utils.d.ts.map +1 -1
- package/lib/util/utils.js +0 -13
- package/lib/util/utils.js.map +1 -1
- package/package.json +23 -23
- package/src/componentApi.ts +354 -0
- package/src/core/change-family/changeFamily.ts +3 -12
- package/src/core/rebase/types.ts +2 -2
- package/src/core/schema-stored/storedSchemaRepository.ts +2 -2
- package/src/entrypoints/alpha.ts +15 -8
- package/src/entrypoints/beta.ts +8 -0
- package/src/entrypoints/legacy.ts +8 -0
- package/src/feature-libraries/chunked-forest/codec/chunkDecoding.ts +22 -72
- package/src/feature-libraries/chunked-forest/codec/chunkDecodingGeneric.ts +1 -2
- package/src/feature-libraries/chunked-forest/codec/codecs.ts +110 -41
- package/src/feature-libraries/chunked-forest/codec/compressedEncode.ts +32 -4
- package/src/feature-libraries/chunked-forest/codec/index.ts +1 -0
- package/src/feature-libraries/chunked-forest/codec/nodeEncoder.ts +7 -19
- package/src/feature-libraries/chunked-forest/index.ts +3 -0
- package/src/feature-libraries/forest-summary/codec.ts +5 -3
- package/src/feature-libraries/forest-summary/forestSummarizer.ts +4 -5
- package/src/feature-libraries/index.ts +5 -0
- package/src/feature-libraries/modular-schema/index.ts +1 -0
- package/src/feature-libraries/modular-schema/minimizeModularChange.ts +33 -0
- package/src/feature-libraries/modular-schema/modularChangeCodecV1.ts +13 -9
- package/src/feature-libraries/schemaChecker.ts +86 -9
- package/src/index.ts +16 -8
- package/src/packageVersion.ts +1 -1
- package/src/shared-tree/independentView.ts +40 -15
- package/src/shared-tree/index.ts +4 -0
- package/src/shared-tree/schematizingTreeView.ts +40 -30
- package/src/shared-tree/serializedChange.ts +127 -0
- package/src/shared-tree/sharedTree.ts +32 -4
- package/src/shared-tree/sharedTreeChangeFamily.ts +7 -1
- package/src/shared-tree/transactionMinimize.ts +74 -0
- package/src/shared-tree/transactionPostProcessor.ts +40 -0
- package/src/shared-tree/treeAlpha.ts +3 -3
- package/src/shared-tree/treeCheckout.ts +103 -101
- package/src/shared-tree/unhydratedTreeContext.ts +18 -15
- package/src/shared-tree-core/editManager.ts +42 -6
- package/src/shared-tree-core/editManagerCodecs.ts +3 -2
- package/src/shared-tree-core/editManagerCodecsCommons.ts +10 -14
- package/src/shared-tree-core/editManagerCodecsV1toV4.ts +3 -2
- package/src/shared-tree-core/editManagerCodecsVSharedBranches.ts +3 -2
- package/src/shared-tree-core/editManagerFormatCommons.ts +1 -1
- package/src/shared-tree-core/editManagerSummarizer.ts +5 -9
- package/src/shared-tree-core/index.ts +8 -5
- package/src/shared-tree-core/messageCodecVSharedBranches.ts +8 -1
- package/src/shared-tree-core/messageFormat.ts +1 -1
- package/src/shared-tree-core/messageFormatVSharedBranches.ts +10 -0
- package/src/shared-tree-core/messageTypes.ts +1 -0
- package/src/shared-tree-core/sharedTreeCore.ts +36 -12
- package/src/shared-tree-core/transaction.ts +165 -18
- package/src/simple-tree/api/index.ts +14 -10
- package/src/simple-tree/api/schemaCompatibilityTester.ts +36 -48
- package/src/simple-tree/api/schemaCreationUtilities.ts +3 -3
- package/src/simple-tree/api/schemaFactory.ts +2 -2
- package/src/simple-tree/api/schemaFactoryAlpha.ts +56 -15
- package/src/simple-tree/api/schemaFactoryBeta.ts +0 -3
- package/src/simple-tree/api/snapshotCompatibilityChecker.ts +4 -5
- package/src/simple-tree/api/storedSchema.ts +2 -3
- package/src/simple-tree/api/transactionTypes.ts +111 -39
- package/src/simple-tree/api/tree.ts +165 -49
- package/src/simple-tree/api/treeBeta.ts +2 -0
- package/src/simple-tree/api/typesUnsafe.ts +2 -1
- package/src/simple-tree/core/treeNodeSchema.ts +7 -7
- package/src/simple-tree/index.ts +13 -9
- package/src/simple-tree/node-kinds/array/arrayNode.ts +168 -4
- package/src/simple-tree/simpleSchemaFormatV1.ts +1 -1
- package/src/text/index.ts +1 -0
- package/src/text/textDomainFormatted.ts +520 -415
- package/src/text/textDomainFormattedDefault.ts +150 -0
- package/src/treeFactory.ts +1 -1
- package/src/util/breakable.ts +8 -1
- package/src/util/compressedIds.ts +304 -0
- package/src/util/index.ts +18 -1
- package/src/util/nestedMap.ts +21 -4
- package/src/util/nestedSet.ts +1 -1
- package/src/util/utils.ts +0 -18
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"treeCheckout.d.ts","sourceRoot":"","sources":["../../src/shared-tree/treeCheckout.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAgB,UAAU,EAAE,MAAM,0CAA0C,CAAC;AAEzF,OAAO,KAAK,EAAE,aAAa,
|
|
1
|
+
{"version":3,"file":"treeCheckout.d.ts","sourceRoot":"","sources":["../../src/shared-tree/treeCheckout.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,8 +8,7 @@ exports.TreeCheckout = exports.assertValidConstraint = exports.addConstraintsToT
|
|
|
8
8
|
const tslib_1 = require("tslib");
|
|
9
9
|
const client_utils_1 = require("@fluid-internal/client-utils");
|
|
10
10
|
const internal_1 = require("@fluidframework/core-utils/internal");
|
|
11
|
-
const internal_2 = require("@fluidframework/
|
|
12
|
-
const internal_3 = require("@fluidframework/telemetry-utils/internal");
|
|
11
|
+
const internal_2 = require("@fluidframework/telemetry-utils/internal");
|
|
13
12
|
const index_js_1 = require("../codec/index.js");
|
|
14
13
|
const index_js_2 = require("../core/index.js");
|
|
15
14
|
const index_js_3 = require("../feature-libraries/index.js");
|
|
@@ -19,6 +18,8 @@ const index_js_6 = require("../util/index.js");
|
|
|
19
18
|
const schematizingTreeView_js_1 = require("./schematizingTreeView.js");
|
|
20
19
|
const sharedTreeChangeEnricher_js_1 = require("./sharedTreeChangeEnricher.js");
|
|
21
20
|
const sharedTreeChangeFamily_js_1 = require("./sharedTreeChangeFamily.js");
|
|
21
|
+
const transactionPostProcessor_js_1 = require("./transactionPostProcessor.js");
|
|
22
|
+
const serializedChange_js_1 = require("./serializedChange.js");
|
|
22
23
|
/**
|
|
23
24
|
* Yields all defined (non-`undefined`) labels from a {@link LabelTree}, depth-first.
|
|
24
25
|
*/
|
|
@@ -68,7 +69,7 @@ function buildLabelsSet(labelTreeNode) {
|
|
|
68
69
|
* and functionality required to implement {@link ITreeCheckout}.
|
|
69
70
|
*/
|
|
70
71
|
function createTreeCheckout(idCompressor, mintRevisionTag, revisionTagCodec, args) {
|
|
71
|
-
const breaker = args?.breaker ?? new index_js_6.Breakable("TreeCheckout");
|
|
72
|
+
const breaker = args?.breaker ?? new index_js_6.Breakable("TreeCheckout", args?.logger);
|
|
72
73
|
const schema = args?.schema ?? new index_js_2.TreeStoredSchemaRepository();
|
|
73
74
|
const forest = args?.forest ?? (0, index_js_3.buildForest)(breaker, schema);
|
|
74
75
|
const defaultCodecOptions = {
|
|
@@ -98,7 +99,7 @@ function getCheckout(context) {
|
|
|
98
99
|
if (context instanceof schematizingTreeView_js_1.SchematizingSimpleTreeView) {
|
|
99
100
|
return context.checkout;
|
|
100
101
|
}
|
|
101
|
-
throw new
|
|
102
|
+
throw new internal_2.UsageError("Unsupported context implementation");
|
|
102
103
|
}
|
|
103
104
|
/**
|
|
104
105
|
* Adds constraints to a `checkout`'s pending transaction.
|
|
@@ -107,7 +108,7 @@ function getCheckout(context) {
|
|
|
107
108
|
* @param constraintsOnRevert - If true, use {@link ISharedTreeEditor.addNodeExistsConstraintOnRevert}.
|
|
108
109
|
* @param constraints - The constraints to add to the transaction.
|
|
109
110
|
*
|
|
110
|
-
* @see {@link
|
|
111
|
+
* @see {@link RunTransactionParamsAlpha.preconditions}.
|
|
111
112
|
*/
|
|
112
113
|
function addConstraintsToTransaction(checkout, constraintsOnRevert, constraints = []) {
|
|
113
114
|
for (const constraint of constraints) {
|
|
@@ -150,7 +151,7 @@ function assertValidConstraint(constraint, onRevert) {
|
|
|
150
151
|
const nodeStatus = (0, index_js_5.getKernel)(constraint.node).getStatus();
|
|
151
152
|
if (nodeStatus !== index_js_3.TreeStatus.InDocument) {
|
|
152
153
|
const revertText = onRevert ? " on revert" : "";
|
|
153
|
-
throw new
|
|
154
|
+
throw new internal_2.UsageError(`Attempted to add a "nodeInDocument" constraint${revertText}, but the node is not currently in the document. Node status: ${nodeStatus}`);
|
|
154
155
|
}
|
|
155
156
|
break;
|
|
156
157
|
}
|
|
@@ -182,7 +183,7 @@ let TreeCheckout = (() => {
|
|
|
182
183
|
/** True if and only if this checkout is for a branch which is persisted and shared with other clients. */
|
|
183
184
|
isSharedBranch, changeFamily, storedSchema, forest, mintRevisionTag, revisionTagCodec, idCompressor, _removedRoots = (0, index_js_2.makeDetachedFieldIndex)("repair", revisionTagCodec, idCompressor),
|
|
184
185
|
/** Optional logger for telemetry. */
|
|
185
|
-
logger, breaker = new index_js_6.Breakable("TreeCheckout")) {
|
|
186
|
+
logger, breaker = new index_js_6.Breakable("TreeCheckout", logger), disposeForksAfterTransaction = true) {
|
|
186
187
|
this.isSharedBranch = (tslib_1.__runInitializers(this, _instanceExtraInitializers), isSharedBranch);
|
|
187
188
|
this.changeFamily = changeFamily;
|
|
188
189
|
this.storedSchema = storedSchema;
|
|
@@ -193,12 +194,13 @@ let TreeCheckout = (() => {
|
|
|
193
194
|
this._removedRoots = _removedRoots;
|
|
194
195
|
this.logger = logger;
|
|
195
196
|
this.breaker = breaker;
|
|
197
|
+
this.disposeForksAfterTransaction = disposeForksAfterTransaction;
|
|
196
198
|
this.disposed = false;
|
|
197
199
|
this.views = new Set();
|
|
198
200
|
/**
|
|
199
|
-
*
|
|
201
|
+
* Revertibles maintained for automatic disposal
|
|
200
202
|
*/
|
|
201
|
-
this.revertibles = new
|
|
203
|
+
this.revertibles = new Map();
|
|
202
204
|
/**
|
|
203
205
|
* Each branch's head commit corresponds to a revertible commit.
|
|
204
206
|
* Maintaining a whole branch ensures the commit graph is not pruned in a way that would prevent the commit from
|
|
@@ -224,14 +226,14 @@ let TreeCheckout = (() => {
|
|
|
224
226
|
? undefined
|
|
225
227
|
: (onRevertibleDisposed) => {
|
|
226
228
|
if (!withinEventContext) {
|
|
227
|
-
throw new
|
|
229
|
+
throw new internal_2.UsageError("Cannot get a revertible outside of the context of a changed event.");
|
|
228
230
|
}
|
|
229
231
|
if (this.revertibleCommitBranches.get(revision) !== undefined) {
|
|
230
|
-
throw new
|
|
232
|
+
throw new internal_2.UsageError("Cannot generate the same revertible more than once. Note that this can happen when multiple changed event listeners are registered.");
|
|
231
233
|
}
|
|
232
234
|
const revertible = this.createRevertible(revision, kind, this, onRevertibleDisposed, commitLabelTree);
|
|
233
235
|
this.revertibleCommitBranches.set(revision, tslib_1.__classPrivateFieldGet(this, _TreeCheckout_transaction, "f").activeBranch.fork(commit));
|
|
234
|
-
this.revertibles.
|
|
236
|
+
this.revertibles.set(revision, revertible);
|
|
235
237
|
return revertible;
|
|
236
238
|
};
|
|
237
239
|
let withinEventContext = true;
|
|
@@ -239,20 +241,8 @@ let TreeCheckout = (() => {
|
|
|
239
241
|
kind,
|
|
240
242
|
isLocal: true,
|
|
241
243
|
getChange: () => {
|
|
242
|
-
const context = {
|
|
243
|
-
idCompressor: this.idCompressor,
|
|
244
|
-
originatorId: this.idCompressor.localSessionId,
|
|
245
|
-
revision,
|
|
246
|
-
isSummary: false,
|
|
247
|
-
};
|
|
248
|
-
const encodedChange = this.changeFamily.codecs.resolve(4).encode(change, context);
|
|
249
244
|
(0, internal_1.assert)(commit.parent !== undefined, 0xca4 /* Expected applied commit to be parented */);
|
|
250
|
-
return
|
|
251
|
-
version: 1,
|
|
252
|
-
revision,
|
|
253
|
-
originatorId: this.idCompressor.localSessionId,
|
|
254
|
-
change: encodedChange,
|
|
255
|
-
};
|
|
245
|
+
return serializedChange_js_1.SerializedChange.V1.encode(this.idCompressor, this.changeFamily, change, revision);
|
|
256
246
|
},
|
|
257
247
|
getRevertible: (onDisposed) => getRevertible?.(onDisposed),
|
|
258
248
|
label: this.labelTreeNode?.label,
|
|
@@ -264,6 +254,12 @@ let TreeCheckout = (() => {
|
|
|
264
254
|
withinEventContext = false;
|
|
265
255
|
}
|
|
266
256
|
}
|
|
257
|
+
else if (event.type === "remove") {
|
|
258
|
+
// Commits that are rolled back should no longer be revertible
|
|
259
|
+
for (const commit of event.removedCommits) {
|
|
260
|
+
this.revertibles.get(commit.revision)?.dispose();
|
|
261
|
+
}
|
|
262
|
+
}
|
|
267
263
|
else if (this.isRemoteChangeEvent(event)) {
|
|
268
264
|
// TODO: figure out how to plumb through commit kind info for remote changes
|
|
269
265
|
this.emitChangedLocked(() => {
|
|
@@ -527,22 +523,9 @@ let TreeCheckout = (() => {
|
|
|
527
523
|
* Applies the given serialized change (as was produced via a `"changed"` event of another checkout) to this checkout.
|
|
528
524
|
*/
|
|
529
525
|
applySerializedChange(serializedChange) {
|
|
530
|
-
|
|
531
|
-
throw new internal_3.UsageError(`Cannot apply change. Invalid serialized change format.`);
|
|
532
|
-
}
|
|
533
|
-
const { revision, originatorId, change } = serializedChange;
|
|
534
|
-
if (originatorId !== this.idCompressor.localSessionId) {
|
|
535
|
-
throw new internal_3.UsageError(`Cannot apply change. A serialized changed must be applied to the same SharedTree as it was created from.`);
|
|
536
|
-
}
|
|
537
|
-
const context = {
|
|
538
|
-
idCompressor: this.idCompressor,
|
|
539
|
-
originatorId: this.idCompressor.localSessionId,
|
|
540
|
-
revision,
|
|
541
|
-
isSummary: false,
|
|
542
|
-
};
|
|
543
|
-
const decodedChange = this.changeFamily.codecs.resolve(4).decode(change, context);
|
|
526
|
+
const change = serializedChange_js_1.SerializedChange.V1.decode(this.idCompressor, this.changeFamily, serializedChange);
|
|
544
527
|
// Apply the change to the branch, but _not_ the `activeBranch` - we do not support squashing serialized commits in a transaction.
|
|
545
|
-
tslib_1.__classPrivateFieldGet(this, _TreeCheckout_transaction, "f").branch.apply(
|
|
528
|
+
tslib_1.__classPrivateFieldGet(this, _TreeCheckout_transaction, "f").branch.apply(change);
|
|
546
529
|
}
|
|
547
530
|
// #region TreeBranchAlpha
|
|
548
531
|
applyChange(change) {
|
|
@@ -576,10 +559,12 @@ let TreeCheckout = (() => {
|
|
|
576
559
|
// `emitChangedLocked`, not something specific to transactions.
|
|
577
560
|
this.editLock.checkUnlocked("Running a transaction");
|
|
578
561
|
if (isAsync && this.transaction.size > 0) {
|
|
579
|
-
throw new
|
|
562
|
+
throw new internal_2.UsageError("An asynchronous transaction cannot be started while another transaction is already in progress.");
|
|
580
563
|
}
|
|
581
564
|
this.pushLabelFrame(params?.label);
|
|
582
|
-
this.transaction.start(
|
|
565
|
+
this.transaction.start({
|
|
566
|
+
postProcessor: (0, transactionPostProcessor_js_1.extractTransactionChangeProcessor)(params?.postProcessor),
|
|
567
|
+
});
|
|
583
568
|
addConstraintsToTransaction(this, false, params?.preconditions);
|
|
584
569
|
}
|
|
585
570
|
unmountTransaction(transactionCallbackStatus, params) {
|
|
@@ -646,7 +631,7 @@ let TreeCheckout = (() => {
|
|
|
646
631
|
this.breaker.use();
|
|
647
632
|
if (this.disposed) {
|
|
648
633
|
if (usageError !== undefined) {
|
|
649
|
-
throw new
|
|
634
|
+
throw new internal_2.UsageError(usageError);
|
|
650
635
|
}
|
|
651
636
|
(0, internal_1.assert)(false, 0x911 /* Invalid operation on a disposed TreeCheckout */);
|
|
652
637
|
}
|
|
@@ -674,7 +659,7 @@ let TreeCheckout = (() => {
|
|
|
674
659
|
},
|
|
675
660
|
revert: (release = true) => {
|
|
676
661
|
if (revertible.status === index_js_2.RevertibleStatus.Disposed) {
|
|
677
|
-
throw new
|
|
662
|
+
throw new internal_2.UsageError("Unable to revert a revertible that has been disposed.");
|
|
678
663
|
}
|
|
679
664
|
const revertMetrics = checkout.revertRevertible(revision, kind, labelTree);
|
|
680
665
|
checkout.logger?.sendTelemetryEvent({
|
|
@@ -690,21 +675,21 @@ let TreeCheckout = (() => {
|
|
|
690
675
|
const targetCheckout = getCheckout(targetBranch);
|
|
691
676
|
const revertibleBranch = this.revertibleCommitBranches.get(revision);
|
|
692
677
|
if (revertibleBranch === undefined) {
|
|
693
|
-
throw new
|
|
678
|
+
throw new internal_2.UsageError("Unable to clone a revertible that has been disposed.");
|
|
694
679
|
}
|
|
695
680
|
const commitToRevert = revertibleBranch.getHead();
|
|
696
681
|
const activeBranchHead = tslib_1.__classPrivateFieldGet(targetCheckout, _TreeCheckout_transaction, "f").activeBranch.getHead();
|
|
697
682
|
if ((0, index_js_2.isAncestor)(commitToRevert, activeBranchHead, true) === false) {
|
|
698
|
-
throw new
|
|
683
|
+
throw new internal_2.UsageError("Cannot clone revertible for a commit that is not present on the given branch.");
|
|
699
684
|
}
|
|
700
685
|
targetCheckout.revertibleCommitBranches.set(revision, revertibleBranch.fork());
|
|
701
686
|
return this.createRevertible(revision, kind, targetCheckout, onRevertibleDisposed, labelTree);
|
|
702
687
|
},
|
|
703
688
|
dispose: () => {
|
|
704
689
|
if (revertible.status === index_js_2.RevertibleStatus.Disposed) {
|
|
705
|
-
throw new
|
|
690
|
+
throw new internal_2.UsageError("Unable to dispose a revertible that has already been disposed.");
|
|
706
691
|
}
|
|
707
|
-
checkout.disposeRevertible(
|
|
692
|
+
checkout.disposeRevertible(revision);
|
|
708
693
|
onRevertibleDisposed?.(revertible);
|
|
709
694
|
},
|
|
710
695
|
};
|
|
@@ -735,11 +720,11 @@ let TreeCheckout = (() => {
|
|
|
735
720
|
this.checkNotDisposed("The parent branch has already been disposed and can no longer create new branches.");
|
|
736
721
|
// Branching after an unfinished transaction would expose the application to a state where its invariants may be violated.
|
|
737
722
|
if (this.transaction.size > 0) {
|
|
738
|
-
throw new
|
|
723
|
+
throw new internal_2.UsageError("A view cannot be forked while it has a pending transaction.");
|
|
739
724
|
}
|
|
740
725
|
const branch = tslib_1.__classPrivateFieldGet(this, _TreeCheckout_transaction, "f").activeBranch.fork();
|
|
741
726
|
const storedSchema = this.storedSchema.clone();
|
|
742
|
-
const forkBreaker = new index_js_6.Breakable("TreeCheckout");
|
|
727
|
+
const forkBreaker = new index_js_6.Breakable("TreeCheckout", this.logger);
|
|
743
728
|
const forest = this.forest.clone(storedSchema, forkBreaker);
|
|
744
729
|
const checkout = new _a(branch, false, this.changeFamily, storedSchema, forest, this.mintRevisionTag, this.revisionTagCodec, this.idCompressor, this._removedRoots.clone(), this.logger, forkBreaker);
|
|
745
730
|
tslib_1.__classPrivateFieldGet(this, _TreeCheckout_events, "f").emit("fork", checkout);
|
|
@@ -763,10 +748,10 @@ let TreeCheckout = (() => {
|
|
|
763
748
|
checkout.checkNotDisposed("The source branch of the rebase has been disposed and cannot be rebased.");
|
|
764
749
|
this.editLock.checkUnlocked("Rebasing");
|
|
765
750
|
if (this.transaction.size > 0) {
|
|
766
|
-
throw new
|
|
751
|
+
throw new internal_2.UsageError("Views cannot be rebased onto a view that has a pending transaction.");
|
|
767
752
|
}
|
|
768
753
|
if (checkout.transaction.size > 0) {
|
|
769
|
-
throw new
|
|
754
|
+
throw new internal_2.UsageError("A view cannot be rebased while it has a pending transaction.");
|
|
770
755
|
}
|
|
771
756
|
(0, internal_1.assert)(!checkout.isSharedBranch, 0xa5d /* Shared branches cannot be rebased onto another branch. */);
|
|
772
757
|
tslib_1.__classPrivateFieldGet(checkout, _TreeCheckout_transaction, "f").activeBranch.rebaseOnto(tslib_1.__classPrivateFieldGet(this, _TreeCheckout_transaction, "f").activeBranch);
|
|
@@ -782,20 +767,29 @@ let TreeCheckout = (() => {
|
|
|
782
767
|
targetPath,
|
|
783
768
|
]);
|
|
784
769
|
if (ancestor === undefined) {
|
|
785
|
-
throw new
|
|
770
|
+
throw new internal_2.UsageError("Branches do not share a common ancestor.");
|
|
786
771
|
}
|
|
787
772
|
return targetPath.length > 0;
|
|
788
773
|
}
|
|
774
|
+
computeNetChangeIfRebasedOnto(branch) {
|
|
775
|
+
const branchCheckout = getCheckout(branch);
|
|
776
|
+
const rebased = (0, index_js_2.rebaseBranch)(this.mintRevisionTag, this.changeFamily.rebaser, tslib_1.__classPrivateFieldGet(this, _TreeCheckout_transaction, "f").branch.getHead(), tslib_1.__classPrivateFieldGet(branchCheckout, _TreeCheckout_transaction, "f").branch.getHead());
|
|
777
|
+
if (rebased.sourceChange === undefined) {
|
|
778
|
+
return undefined;
|
|
779
|
+
}
|
|
780
|
+
const revision = this.mintRevisionTag();
|
|
781
|
+
return serializedChange_js_1.SerializedChange.V1.encode(this.idCompressor, this.changeFamily, rebased.sourceChange, revision, undefined);
|
|
782
|
+
}
|
|
789
783
|
merge(branch, disposeMerged = true) {
|
|
790
784
|
const checkout = getCheckout(branch);
|
|
791
785
|
this.checkNotDisposed("The target branch of the merge has been disposed and cannot be merged.");
|
|
792
786
|
checkout.checkNotDisposed("The source branch of the merge has been disposed and cannot be merged.");
|
|
793
787
|
this.editLock.checkUnlocked("Merging");
|
|
794
788
|
if (this.transaction.size > 0) {
|
|
795
|
-
throw new
|
|
789
|
+
throw new internal_2.UsageError("Views cannot be merged into a view while it has a pending transaction.");
|
|
796
790
|
}
|
|
797
791
|
if (checkout.transaction.size > 0) {
|
|
798
|
-
throw new
|
|
792
|
+
throw new internal_2.UsageError("Views with an open transaction cannot be merged into another view.");
|
|
799
793
|
}
|
|
800
794
|
tslib_1.__classPrivateFieldGet(this, _TreeCheckout_transaction, "f").activeBranch.merge(tslib_1.__classPrivateFieldGet(checkout, _TreeCheckout_transaction, "f").activeBranch);
|
|
801
795
|
if (disposeMerged && !checkout.isSharedBranch) {
|
|
@@ -854,19 +848,19 @@ let TreeCheckout = (() => {
|
|
|
854
848
|
tslib_1.__classPrivateFieldGet(this, _TreeCheckout_events, "f").emit("afterBatch");
|
|
855
849
|
}
|
|
856
850
|
purgeRevertibles() {
|
|
857
|
-
for (const revertible of this.revertibles) {
|
|
851
|
+
for (const revertible of this.revertibles.values()) {
|
|
858
852
|
revertible.dispose();
|
|
859
853
|
}
|
|
860
854
|
}
|
|
861
|
-
disposeRevertible(
|
|
855
|
+
disposeRevertible(revision) {
|
|
862
856
|
this.revertibleCommitBranches.get(revision)?.dispose();
|
|
863
857
|
this.revertibleCommitBranches.delete(revision);
|
|
864
|
-
this.revertibles.delete(
|
|
858
|
+
this.revertibles.delete(revision);
|
|
865
859
|
}
|
|
866
860
|
revertRevertible(revision, kind, labelTree) {
|
|
867
861
|
this.editLock.checkUnlocked("Reverting a commit");
|
|
868
862
|
if (this.transaction.size > 0) {
|
|
869
|
-
throw new
|
|
863
|
+
throw new internal_2.UsageError("Undo is not yet supported during transactions.");
|
|
870
864
|
}
|
|
871
865
|
const revertibleBranch = this.revertibleCommitBranches.get(revision);
|
|
872
866
|
(0, internal_1.assert)(revertibleBranch !== undefined, 0x7cc /* expected to find a revertible commit */);
|
|
@@ -1101,7 +1095,7 @@ class EditLock {
|
|
|
1101
1095
|
*/
|
|
1102
1096
|
checkUnlocked(action) {
|
|
1103
1097
|
if (this.locked) {
|
|
1104
|
-
throw new
|
|
1098
|
+
throw new internal_2.UsageError(`${action} is forbidden during a change event callback`);
|
|
1105
1099
|
}
|
|
1106
1100
|
}
|
|
1107
1101
|
/**
|
|
@@ -1124,17 +1118,6 @@ function verboseFromCursor(reader, schema) {
|
|
|
1124
1118
|
fields: fields,
|
|
1125
1119
|
};
|
|
1126
1120
|
}
|
|
1127
|
-
function isSerializedChange(value) {
|
|
1128
|
-
if (typeof value !== "object" || value === null) {
|
|
1129
|
-
return false;
|
|
1130
|
-
}
|
|
1131
|
-
const change = value;
|
|
1132
|
-
return (change.version === 1 &&
|
|
1133
|
-
(change.revision === "root" || typeof change.revision === "number") &&
|
|
1134
|
-
typeof change.originatorId === "string" &&
|
|
1135
|
-
(0, internal_2.isStableId)(change.originatorId) &&
|
|
1136
|
-
change.change !== undefined);
|
|
1137
|
-
}
|
|
1138
1121
|
/**
|
|
1139
1122
|
* Enumerates through a shared tree change, looking for schema change and field changes that result in visible changes to the tree (e.g. an insert, move, delete).
|
|
1140
1123
|
* This function also considers changes to detached roots to be visible changes, but not renames of roots or builds of new roots.
|