@fluidframework/tree 2.101.1 → 2.103.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 +8 -0
- package/api-report/tree.alpha.api.md +19 -0
- package/dist/codec/codec.d.ts +22 -53
- package/dist/codec/codec.d.ts.map +1 -1
- package/dist/codec/codec.js +7 -44
- package/dist/codec/codec.js.map +1 -1
- package/dist/codec/index.d.ts +1 -1
- package/dist/codec/index.d.ts.map +1 -1
- package/dist/codec/index.js +2 -2
- package/dist/codec/index.js.map +1 -1
- package/dist/codec/versioned/codec.d.ts +56 -28
- package/dist/codec/versioned/codec.d.ts.map +1 -1
- package/dist/codec/versioned/codec.js +29 -12
- package/dist/codec/versioned/codec.js.map +1 -1
- package/dist/codec/versioned/format.d.ts +5 -4
- package/dist/codec/versioned/format.d.ts.map +1 -1
- package/dist/codec/versioned/format.js +26 -3
- package/dist/codec/versioned/format.js.map +1 -1
- package/dist/codec/versioned/index.d.ts +1 -1
- package/dist/codec/versioned/index.d.ts.map +1 -1
- package/dist/codec/versioned/index.js +2 -2
- package/dist/codec/versioned/index.js.map +1 -1
- package/dist/core/rebase/types.d.ts +4 -3
- package/dist/core/rebase/types.d.ts.map +1 -1
- package/dist/core/rebase/types.js +27 -4
- package/dist/core/rebase/types.js.map +1 -1
- package/dist/core/schema-stored/formatV1.d.ts +16 -15
- package/dist/core/schema-stored/formatV1.d.ts.map +1 -1
- package/dist/core/schema-stored/formatV1.js +31 -8
- package/dist/core/schema-stored/formatV1.js.map +1 -1
- package/dist/core/schema-stored/formatV2.d.ts +29 -28
- package/dist/core/schema-stored/formatV2.d.ts.map +1 -1
- package/dist/core/schema-stored/formatV2.js +33 -10
- package/dist/core/schema-stored/formatV2.js.map +1 -1
- package/dist/core/tree/deltaUtil.d.ts +2 -2
- package/dist/core/tree/deltaUtil.js +2 -2
- package/dist/core/tree/deltaUtil.js.map +1 -1
- package/dist/core/tree/detachedFieldIndexCodecV1.d.ts.map +1 -1
- package/dist/core/tree/detachedFieldIndexCodecV1.js +3 -2
- package/dist/core/tree/detachedFieldIndexCodecV1.js.map +1 -1
- package/dist/core/tree/detachedFieldIndexCodecV2.d.ts.map +1 -1
- package/dist/core/tree/detachedFieldIndexCodecV2.js +4 -2
- package/dist/core/tree/detachedFieldIndexCodecV2.js.map +1 -1
- package/dist/core/tree/detachedFieldIndexCodecs.d.ts +3 -3
- package/dist/core/tree/detachedFieldIndexCodecs.d.ts.map +1 -1
- package/dist/core/tree/detachedFieldIndexCodecs.js +1 -1
- package/dist/core/tree/detachedFieldIndexCodecs.js.map +1 -1
- package/dist/core/tree/detachedFieldIndexFormatCommon.d.ts +11 -10
- package/dist/core/tree/detachedFieldIndexFormatCommon.d.ts.map +1 -1
- package/dist/core/tree/detachedFieldIndexFormatCommon.js +33 -10
- package/dist/core/tree/detachedFieldIndexFormatCommon.js.map +1 -1
- package/dist/core/tree/detachedFieldIndexFormatV2.d.ts +7 -6
- package/dist/core/tree/detachedFieldIndexFormatV2.d.ts.map +1 -1
- package/dist/core/tree/detachedFieldIndexFormatV2.js +25 -2
- package/dist/core/tree/detachedFieldIndexFormatV2.js.map +1 -1
- package/dist/core/tree/persistedTreeTextFormat.d.ts +19 -18
- package/dist/core/tree/persistedTreeTextFormat.d.ts.map +1 -1
- package/dist/core/tree/persistedTreeTextFormat.js +33 -10
- package/dist/core/tree/persistedTreeTextFormat.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/chunkTree.d.ts +38 -1
- package/dist/feature-libraries/chunked-forest/chunkTree.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/chunkTree.js +63 -5
- package/dist/feature-libraries/chunked-forest/chunkTree.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/chunkedForest.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/chunkedForest.js +18 -4
- package/dist/feature-libraries/chunked-forest/chunkedForest.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/chunkDecoding.d.ts +34 -2
- package/dist/feature-libraries/chunked-forest/codec/chunkDecoding.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/chunkDecoding.js +106 -3
- package/dist/feature-libraries/chunked-forest/codec/chunkDecoding.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/codecs.d.ts +5 -5
- package/dist/feature-libraries/chunked-forest/codec/codecs.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/codecs.js +2 -2
- package/dist/feature-libraries/chunked-forest/codec/codecs.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/compressedEncode.d.ts +7 -7
- package/dist/feature-libraries/chunked-forest/codec/compressedEncode.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/compressedEncode.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/format/formatGeneric.d.ts +13 -12
- package/dist/feature-libraries/chunked-forest/codec/format/formatGeneric.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/format/formatGeneric.js +36 -13
- package/dist/feature-libraries/chunked-forest/codec/format/formatGeneric.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/format/formatV1.d.ts +36 -35
- package/dist/feature-libraries/chunked-forest/codec/format/formatV1.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/format/formatV1.js +41 -18
- package/dist/feature-libraries/chunked-forest/codec/format/formatV1.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/format/formatV2.d.ts +35 -14
- package/dist/feature-libraries/chunked-forest/codec/format/formatV2.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/format/formatV2.js +35 -6
- package/dist/feature-libraries/chunked-forest/codec/format/formatV2.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/format/formatVText.d.ts +106 -0
- package/dist/feature-libraries/chunked-forest/codec/format/formatVText.d.ts.map +1 -0
- package/dist/feature-libraries/chunked-forest/codec/format/formatVText.js +67 -0
- package/dist/feature-libraries/chunked-forest/codec/format/formatVText.js.map +1 -0
- package/dist/feature-libraries/chunked-forest/codec/format/index.d.ts +2 -1
- package/dist/feature-libraries/chunked-forest/codec/format/index.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/format/index.js +5 -1
- package/dist/feature-libraries/chunked-forest/codec/format/index.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/format/versions.d.ts +38 -4
- package/dist/feature-libraries/chunked-forest/codec/format/versions.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/format/versions.js +7 -1
- package/dist/feature-libraries/chunked-forest/codec/format/versions.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/nodeEncoder.d.ts +7 -7
- package/dist/feature-libraries/chunked-forest/codec/nodeEncoder.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/nodeEncoder.js +1 -2
- package/dist/feature-libraries/chunked-forest/codec/nodeEncoder.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/uniformChunk.d.ts +66 -14
- package/dist/feature-libraries/chunked-forest/uniformChunk.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/uniformChunk.js +101 -36
- package/dist/feature-libraries/chunked-forest/uniformChunk.js.map +1 -1
- package/dist/feature-libraries/default-schema/defaultEditBuilder.d.ts.map +1 -1
- package/dist/feature-libraries/default-schema/defaultEditBuilder.js +36 -14
- package/dist/feature-libraries/default-schema/defaultEditBuilder.js.map +1 -1
- package/dist/feature-libraries/forest-summary/codec.d.ts +5 -4
- package/dist/feature-libraries/forest-summary/codec.d.ts.map +1 -1
- package/dist/feature-libraries/forest-summary/codec.js +2 -2
- package/dist/feature-libraries/forest-summary/codec.js.map +1 -1
- package/dist/feature-libraries/forest-summary/formatCommon.d.ts +6 -5
- package/dist/feature-libraries/forest-summary/formatCommon.d.ts.map +1 -1
- package/dist/feature-libraries/forest-summary/formatCommon.js +26 -3
- package/dist/feature-libraries/forest-summary/formatCommon.js.map +1 -1
- package/dist/feature-libraries/modular-schema/genericFieldKindFormat.d.ts +4 -3
- package/dist/feature-libraries/modular-schema/genericFieldKindFormat.d.ts.map +1 -1
- package/dist/feature-libraries/modular-schema/genericFieldKindFormat.js +26 -3
- package/dist/feature-libraries/modular-schema/genericFieldKindFormat.js.map +1 -1
- package/dist/feature-libraries/modular-schema/modularChangeFormatV1.d.ts +45 -44
- package/dist/feature-libraries/modular-schema/modularChangeFormatV1.d.ts.map +1 -1
- package/dist/feature-libraries/modular-schema/modularChangeFormatV1.js +48 -25
- package/dist/feature-libraries/modular-schema/modularChangeFormatV1.js.map +1 -1
- package/dist/feature-libraries/modular-schema/modularChangeFormatV2.d.ts +23 -22
- package/dist/feature-libraries/modular-schema/modularChangeFormatV2.d.ts.map +1 -1
- package/dist/feature-libraries/modular-schema/modularChangeFormatV2.js +29 -6
- package/dist/feature-libraries/modular-schema/modularChangeFormatV2.js.map +1 -1
- package/dist/feature-libraries/modular-schema/modularChangeTypes.d.ts +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/optional-field/optionalFieldChangeFormatV1.d.ts +9 -8
- package/dist/feature-libraries/optional-field/optionalFieldChangeFormatV1.d.ts.map +1 -1
- package/dist/feature-libraries/optional-field/optionalFieldChangeFormatV1.js +31 -8
- package/dist/feature-libraries/optional-field/optionalFieldChangeFormatV1.js.map +1 -1
- package/dist/feature-libraries/optional-field/optionalFieldChangeFormatV2.d.ts +14 -13
- package/dist/feature-libraries/optional-field/optionalFieldChangeFormatV2.d.ts.map +1 -1
- package/dist/feature-libraries/optional-field/optionalFieldChangeFormatV2.js +34 -11
- package/dist/feature-libraries/optional-field/optionalFieldChangeFormatV2.js.map +1 -1
- package/dist/feature-libraries/schema-edits/schemaChangeFormat.d.ts +5 -4
- package/dist/feature-libraries/schema-edits/schemaChangeFormat.d.ts.map +1 -1
- package/dist/feature-libraries/schema-edits/schemaChangeFormat.js +25 -2
- package/dist/feature-libraries/schema-edits/schemaChangeFormat.js.map +1 -1
- package/dist/feature-libraries/schema-index/codec.d.ts +2 -2
- package/dist/feature-libraries/schema-index/codec.d.ts.map +1 -1
- package/dist/feature-libraries/schema-index/codec.js +1 -1
- package/dist/feature-libraries/schema-index/codec.js.map +1 -1
- package/dist/feature-libraries/schema-index/formatV1.d.ts +15 -14
- package/dist/feature-libraries/schema-index/formatV1.d.ts.map +1 -1
- package/dist/feature-libraries/schema-index/formatV1.js +27 -4
- package/dist/feature-libraries/schema-index/formatV1.js.map +1 -1
- package/dist/feature-libraries/schema-index/formatV2.d.ts +20 -19
- package/dist/feature-libraries/schema-index/formatV2.d.ts.map +1 -1
- package/dist/feature-libraries/schema-index/formatV2.js +27 -4
- package/dist/feature-libraries/schema-index/formatV2.js.map +1 -1
- package/dist/feature-libraries/sequence-field/compose.d.ts.map +1 -1
- package/dist/feature-libraries/sequence-field/compose.js +1 -3
- package/dist/feature-libraries/sequence-field/compose.js.map +1 -1
- package/dist/feature-libraries/sequence-field/formatV1.d.ts +283 -282
- package/dist/feature-libraries/sequence-field/formatV1.d.ts.map +1 -1
- package/dist/feature-libraries/sequence-field/formatV1.js +63 -40
- package/dist/feature-libraries/sequence-field/formatV1.js.map +1 -1
- package/dist/feature-libraries/sequence-field/formatV2.d.ts +180 -179
- package/dist/feature-libraries/sequence-field/formatV2.d.ts.map +1 -1
- package/dist/feature-libraries/sequence-field/formatV2.js +55 -32
- package/dist/feature-libraries/sequence-field/formatV2.js.map +1 -1
- package/dist/feature-libraries/sequence-field/formatV3.d.ts +126 -125
- package/dist/feature-libraries/sequence-field/formatV3.d.ts.map +1 -1
- package/dist/feature-libraries/sequence-field/formatV3.js +27 -4
- package/dist/feature-libraries/sequence-field/formatV3.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- 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/isAuditableFromOutcome.d.ts +20 -0
- package/dist/shared-tree/isAuditableFromOutcome.d.ts.map +1 -0
- package/dist/shared-tree/isAuditableFromOutcome.js +36 -0
- package/dist/shared-tree/isAuditableFromOutcome.js.map +1 -0
- package/dist/shared-tree/sharedTree.d.ts +2 -2
- package/dist/shared-tree/sharedTree.d.ts.map +1 -1
- package/dist/shared-tree/sharedTree.js.map +1 -1
- package/dist/shared-tree/sharedTreeChangeFormat.d.ts +8 -7
- package/dist/shared-tree/sharedTreeChangeFormat.d.ts.map +1 -1
- package/dist/shared-tree/sharedTreeChangeFormat.js +28 -5
- package/dist/shared-tree/sharedTreeChangeFormat.js.map +1 -1
- package/dist/shared-tree/treeCheckout.d.ts +5 -3
- package/dist/shared-tree/treeCheckout.d.ts.map +1 -1
- package/dist/shared-tree/treeCheckout.js +37 -8
- package/dist/shared-tree/treeCheckout.js.map +1 -1
- package/dist/shared-tree-core/editManager.d.ts +2 -2
- package/dist/shared-tree-core/editManager.d.ts.map +1 -1
- package/dist/shared-tree-core/editManager.js.map +1 -1
- package/dist/shared-tree-core/editManagerCodecs.d.ts +3 -3
- package/dist/shared-tree-core/editManagerCodecs.d.ts.map +1 -1
- package/dist/shared-tree-core/editManagerCodecs.js +2 -2
- package/dist/shared-tree-core/editManagerCodecs.js.map +1 -1
- package/dist/shared-tree-core/editManagerFormatCommons.d.ts +35 -34
- package/dist/shared-tree-core/editManagerFormatCommons.d.ts.map +1 -1
- package/dist/shared-tree-core/editManagerFormatCommons.js +39 -16
- package/dist/shared-tree-core/editManagerFormatCommons.js.map +1 -1
- package/dist/shared-tree-core/editManagerFormatV1toV4.d.ts +15 -15
- package/dist/shared-tree-core/editManagerFormatV1toV4.d.ts.map +1 -1
- package/dist/shared-tree-core/editManagerFormatV1toV4.js +33 -10
- package/dist/shared-tree-core/editManagerFormatV1toV4.js.map +1 -1
- package/dist/shared-tree-core/editManagerFormatVSharedBranches.d.ts +40 -40
- package/dist/shared-tree-core/editManagerFormatVSharedBranches.d.ts.map +1 -1
- package/dist/shared-tree-core/editManagerFormatVSharedBranches.js +27 -4
- package/dist/shared-tree-core/editManagerFormatVSharedBranches.js.map +1 -1
- package/dist/shared-tree-core/messageCodecVSharedBranches.d.ts.map +1 -1
- package/dist/shared-tree-core/messageCodecVSharedBranches.js +25 -2
- package/dist/shared-tree-core/messageCodecVSharedBranches.js.map +1 -1
- package/dist/shared-tree-core/messageCodecs.d.ts +3 -3
- package/dist/shared-tree-core/messageCodecs.d.ts.map +1 -1
- package/dist/shared-tree-core/messageCodecs.js +2 -2
- package/dist/shared-tree-core/messageCodecs.js.map +1 -1
- package/dist/shared-tree-core/messageFormatV1ToV4.d.ts +5 -5
- package/dist/shared-tree-core/messageFormatV1ToV4.d.ts.map +1 -1
- package/dist/shared-tree-core/messageFormatV1ToV4.js +31 -8
- package/dist/shared-tree-core/messageFormatV1ToV4.js.map +1 -1
- package/dist/shared-tree-core/messageFormatVSharedBranches.d.ts +7 -7
- package/dist/shared-tree-core/messageFormatVSharedBranches.d.ts.map +1 -1
- package/dist/shared-tree-core/messageFormatVSharedBranches.js +29 -6
- package/dist/shared-tree-core/messageFormatVSharedBranches.js.map +1 -1
- package/dist/simple-tree/core/treeNodeKernel.d.ts +5 -0
- package/dist/simple-tree/core/treeNodeKernel.d.ts.map +1 -1
- package/dist/simple-tree/core/treeNodeKernel.js +62 -24
- package/dist/simple-tree/core/treeNodeKernel.js.map +1 -1
- package/dist/simple-tree/simpleSchemaFormatV1.d.ts +121 -120
- package/dist/simple-tree/simpleSchemaFormatV1.d.ts.map +1 -1
- package/dist/simple-tree/simpleSchemaFormatV1.js +54 -31
- package/dist/simple-tree/simpleSchemaFormatV1.js.map +1 -1
- package/dist/text/codePointUtils.d.ts +48 -0
- package/dist/text/codePointUtils.d.ts.map +1 -0
- package/dist/text/codePointUtils.js +80 -0
- package/dist/text/codePointUtils.js.map +1 -0
- package/dist/text/index.d.ts +1 -0
- package/dist/text/index.d.ts.map +1 -1
- package/dist/text/index.js +4 -1
- package/dist/text/index.js.map +1 -1
- package/dist/text/textDomain.d.ts +93 -1
- package/dist/text/textDomain.d.ts.map +1 -1
- package/dist/text/textDomain.js +65 -8
- package/dist/text/textDomain.js.map +1 -1
- package/dist/text/textDomainFormatted.d.ts +24 -6
- package/dist/text/textDomainFormatted.d.ts.map +1 -1
- package/dist/text/textDomainFormatted.js +29 -1
- package/dist/text/textDomainFormatted.js.map +1 -1
- package/dist/treeFactory.d.ts.map +1 -1
- package/dist/treeFactory.js +9 -7
- package/dist/treeFactory.js.map +1 -1
- package/dist/util/breakable.d.ts +7 -1
- package/dist/util/breakable.d.ts.map +1 -1
- package/dist/util/breakable.js +18 -4
- package/dist/util/breakable.js.map +1 -1
- package/dist/util/typeboxBrand.d.ts +1 -1
- package/dist/util/typeboxBrand.d.ts.map +1 -1
- package/dist/util/typeboxBrand.js +26 -3
- package/dist/util/typeboxBrand.js.map +1 -1
- package/dist/util/utils.d.ts +2 -2
- package/dist/util/utils.d.ts.map +1 -1
- package/dist/util/utils.js +25 -2
- package/dist/util/utils.js.map +1 -1
- package/eslint.config.mts +44 -0
- package/lib/codec/codec.d.ts +22 -53
- package/lib/codec/codec.d.ts.map +1 -1
- package/lib/codec/codec.js +7 -44
- package/lib/codec/codec.js.map +1 -1
- package/lib/codec/index.d.ts +1 -1
- package/lib/codec/index.d.ts.map +1 -1
- package/lib/codec/index.js +1 -1
- package/lib/codec/index.js.map +1 -1
- package/lib/codec/versioned/codec.d.ts +56 -28
- package/lib/codec/versioned/codec.d.ts.map +1 -1
- package/lib/codec/versioned/codec.js +27 -10
- package/lib/codec/versioned/codec.js.map +1 -1
- package/lib/codec/versioned/format.d.ts +5 -4
- package/lib/codec/versioned/format.d.ts.map +1 -1
- package/lib/codec/versioned/format.js +1 -1
- package/lib/codec/versioned/format.js.map +1 -1
- package/lib/codec/versioned/index.d.ts +1 -1
- package/lib/codec/versioned/index.d.ts.map +1 -1
- package/lib/codec/versioned/index.js +1 -1
- package/lib/codec/versioned/index.js.map +1 -1
- package/lib/core/rebase/types.d.ts +4 -3
- package/lib/core/rebase/types.d.ts.map +1 -1
- package/lib/core/rebase/types.js +1 -1
- package/lib/core/rebase/types.js.map +1 -1
- package/lib/core/schema-stored/formatV1.d.ts +16 -15
- package/lib/core/schema-stored/formatV1.d.ts.map +1 -1
- package/lib/core/schema-stored/formatV1.js +1 -1
- package/lib/core/schema-stored/formatV1.js.map +1 -1
- package/lib/core/schema-stored/formatV2.d.ts +29 -28
- package/lib/core/schema-stored/formatV2.d.ts.map +1 -1
- package/lib/core/schema-stored/formatV2.js +1 -1
- package/lib/core/schema-stored/formatV2.js.map +1 -1
- package/lib/core/tree/deltaUtil.d.ts +2 -2
- package/lib/core/tree/deltaUtil.js +2 -2
- package/lib/core/tree/deltaUtil.js.map +1 -1
- package/lib/core/tree/detachedFieldIndexCodecV1.d.ts.map +1 -1
- package/lib/core/tree/detachedFieldIndexCodecV1.js +3 -2
- package/lib/core/tree/detachedFieldIndexCodecV1.js.map +1 -1
- package/lib/core/tree/detachedFieldIndexCodecV2.d.ts.map +1 -1
- package/lib/core/tree/detachedFieldIndexCodecV2.js +5 -3
- package/lib/core/tree/detachedFieldIndexCodecV2.js.map +1 -1
- package/lib/core/tree/detachedFieldIndexCodecs.d.ts +3 -3
- package/lib/core/tree/detachedFieldIndexCodecs.d.ts.map +1 -1
- package/lib/core/tree/detachedFieldIndexCodecs.js +2 -2
- package/lib/core/tree/detachedFieldIndexCodecs.js.map +1 -1
- package/lib/core/tree/detachedFieldIndexFormatCommon.d.ts +11 -10
- package/lib/core/tree/detachedFieldIndexFormatCommon.d.ts.map +1 -1
- package/lib/core/tree/detachedFieldIndexFormatCommon.js +1 -1
- package/lib/core/tree/detachedFieldIndexFormatCommon.js.map +1 -1
- package/lib/core/tree/detachedFieldIndexFormatV2.d.ts +7 -6
- package/lib/core/tree/detachedFieldIndexFormatV2.d.ts.map +1 -1
- package/lib/core/tree/detachedFieldIndexFormatV2.js +1 -1
- package/lib/core/tree/detachedFieldIndexFormatV2.js.map +1 -1
- package/lib/core/tree/persistedTreeTextFormat.d.ts +19 -18
- package/lib/core/tree/persistedTreeTextFormat.d.ts.map +1 -1
- package/lib/core/tree/persistedTreeTextFormat.js +1 -1
- package/lib/core/tree/persistedTreeTextFormat.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/chunkTree.d.ts +38 -1
- package/lib/feature-libraries/chunked-forest/chunkTree.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/chunkTree.js +62 -5
- package/lib/feature-libraries/chunked-forest/chunkTree.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/chunkedForest.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/chunkedForest.js +20 -6
- package/lib/feature-libraries/chunked-forest/chunkedForest.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/chunkDecoding.d.ts +34 -2
- package/lib/feature-libraries/chunked-forest/codec/chunkDecoding.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/chunkDecoding.js +102 -2
- package/lib/feature-libraries/chunked-forest/codec/chunkDecoding.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/codecs.d.ts +5 -5
- package/lib/feature-libraries/chunked-forest/codec/codecs.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/codecs.js +3 -3
- package/lib/feature-libraries/chunked-forest/codec/codecs.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/compressedEncode.d.ts +7 -7
- package/lib/feature-libraries/chunked-forest/codec/compressedEncode.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/compressedEncode.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/format/formatGeneric.d.ts +13 -12
- package/lib/feature-libraries/chunked-forest/codec/format/formatGeneric.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/format/formatGeneric.js +1 -1
- package/lib/feature-libraries/chunked-forest/codec/format/formatGeneric.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/format/formatV1.d.ts +36 -35
- package/lib/feature-libraries/chunked-forest/codec/format/formatV1.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/format/formatV1.js +1 -1
- package/lib/feature-libraries/chunked-forest/codec/format/formatV1.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/format/formatV2.d.ts +35 -14
- package/lib/feature-libraries/chunked-forest/codec/format/formatV2.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/format/formatV2.js +9 -3
- package/lib/feature-libraries/chunked-forest/codec/format/formatV2.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/format/formatVText.d.ts +106 -0
- package/lib/feature-libraries/chunked-forest/codec/format/formatVText.d.ts.map +1 -0
- package/lib/feature-libraries/chunked-forest/codec/format/formatVText.js +41 -0
- package/lib/feature-libraries/chunked-forest/codec/format/formatVText.js.map +1 -0
- package/lib/feature-libraries/chunked-forest/codec/format/index.d.ts +2 -1
- package/lib/feature-libraries/chunked-forest/codec/format/index.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/format/index.js +2 -1
- package/lib/feature-libraries/chunked-forest/codec/format/index.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/format/versions.d.ts +38 -4
- package/lib/feature-libraries/chunked-forest/codec/format/versions.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/format/versions.js +6 -0
- package/lib/feature-libraries/chunked-forest/codec/format/versions.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/nodeEncoder.d.ts +7 -7
- package/lib/feature-libraries/chunked-forest/codec/nodeEncoder.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/nodeEncoder.js +2 -3
- package/lib/feature-libraries/chunked-forest/codec/nodeEncoder.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/uniformChunk.d.ts +66 -14
- package/lib/feature-libraries/chunked-forest/uniformChunk.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/uniformChunk.js +101 -36
- package/lib/feature-libraries/chunked-forest/uniformChunk.js.map +1 -1
- package/lib/feature-libraries/default-schema/defaultEditBuilder.d.ts.map +1 -1
- package/lib/feature-libraries/default-schema/defaultEditBuilder.js +36 -14
- package/lib/feature-libraries/default-schema/defaultEditBuilder.js.map +1 -1
- package/lib/feature-libraries/forest-summary/codec.d.ts +5 -4
- package/lib/feature-libraries/forest-summary/codec.d.ts.map +1 -1
- package/lib/feature-libraries/forest-summary/codec.js +3 -3
- package/lib/feature-libraries/forest-summary/codec.js.map +1 -1
- package/lib/feature-libraries/forest-summary/formatCommon.d.ts +6 -5
- package/lib/feature-libraries/forest-summary/formatCommon.d.ts.map +1 -1
- package/lib/feature-libraries/forest-summary/formatCommon.js +1 -1
- package/lib/feature-libraries/forest-summary/formatCommon.js.map +1 -1
- package/lib/feature-libraries/modular-schema/genericFieldKindFormat.d.ts +4 -3
- package/lib/feature-libraries/modular-schema/genericFieldKindFormat.d.ts.map +1 -1
- package/lib/feature-libraries/modular-schema/genericFieldKindFormat.js +1 -1
- package/lib/feature-libraries/modular-schema/genericFieldKindFormat.js.map +1 -1
- package/lib/feature-libraries/modular-schema/modularChangeFormatV1.d.ts +45 -44
- package/lib/feature-libraries/modular-schema/modularChangeFormatV1.d.ts.map +1 -1
- package/lib/feature-libraries/modular-schema/modularChangeFormatV1.js +1 -1
- package/lib/feature-libraries/modular-schema/modularChangeFormatV1.js.map +1 -1
- package/lib/feature-libraries/modular-schema/modularChangeFormatV2.d.ts +23 -22
- package/lib/feature-libraries/modular-schema/modularChangeFormatV2.d.ts.map +1 -1
- package/lib/feature-libraries/modular-schema/modularChangeFormatV2.js +1 -1
- package/lib/feature-libraries/modular-schema/modularChangeFormatV2.js.map +1 -1
- package/lib/feature-libraries/modular-schema/modularChangeTypes.d.ts +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/optional-field/optionalFieldChangeFormatV1.d.ts +9 -8
- package/lib/feature-libraries/optional-field/optionalFieldChangeFormatV1.d.ts.map +1 -1
- package/lib/feature-libraries/optional-field/optionalFieldChangeFormatV1.js +1 -1
- package/lib/feature-libraries/optional-field/optionalFieldChangeFormatV1.js.map +1 -1
- package/lib/feature-libraries/optional-field/optionalFieldChangeFormatV2.d.ts +14 -13
- package/lib/feature-libraries/optional-field/optionalFieldChangeFormatV2.d.ts.map +1 -1
- package/lib/feature-libraries/optional-field/optionalFieldChangeFormatV2.js +1 -1
- package/lib/feature-libraries/optional-field/optionalFieldChangeFormatV2.js.map +1 -1
- package/lib/feature-libraries/schema-edits/schemaChangeFormat.d.ts +5 -4
- package/lib/feature-libraries/schema-edits/schemaChangeFormat.d.ts.map +1 -1
- package/lib/feature-libraries/schema-edits/schemaChangeFormat.js +1 -1
- package/lib/feature-libraries/schema-edits/schemaChangeFormat.js.map +1 -1
- package/lib/feature-libraries/schema-index/codec.d.ts +2 -2
- package/lib/feature-libraries/schema-index/codec.d.ts.map +1 -1
- package/lib/feature-libraries/schema-index/codec.js +2 -2
- package/lib/feature-libraries/schema-index/codec.js.map +1 -1
- package/lib/feature-libraries/schema-index/formatV1.d.ts +15 -14
- package/lib/feature-libraries/schema-index/formatV1.d.ts.map +1 -1
- package/lib/feature-libraries/schema-index/formatV1.js +1 -1
- package/lib/feature-libraries/schema-index/formatV1.js.map +1 -1
- package/lib/feature-libraries/schema-index/formatV2.d.ts +20 -19
- package/lib/feature-libraries/schema-index/formatV2.d.ts.map +1 -1
- package/lib/feature-libraries/schema-index/formatV2.js +1 -1
- package/lib/feature-libraries/schema-index/formatV2.js.map +1 -1
- package/lib/feature-libraries/sequence-field/compose.d.ts.map +1 -1
- package/lib/feature-libraries/sequence-field/compose.js +1 -3
- package/lib/feature-libraries/sequence-field/compose.js.map +1 -1
- package/lib/feature-libraries/sequence-field/formatV1.d.ts +283 -282
- package/lib/feature-libraries/sequence-field/formatV1.d.ts.map +1 -1
- package/lib/feature-libraries/sequence-field/formatV1.js +1 -1
- package/lib/feature-libraries/sequence-field/formatV1.js.map +1 -1
- package/lib/feature-libraries/sequence-field/formatV2.d.ts +180 -179
- package/lib/feature-libraries/sequence-field/formatV2.d.ts.map +1 -1
- package/lib/feature-libraries/sequence-field/formatV2.js +1 -1
- package/lib/feature-libraries/sequence-field/formatV2.js.map +1 -1
- package/lib/feature-libraries/sequence-field/formatV3.d.ts +126 -125
- package/lib/feature-libraries/sequence-field/formatV3.d.ts.map +1 -1
- package/lib/feature-libraries/sequence-field/formatV3.js +1 -1
- package/lib/feature-libraries/sequence-field/formatV3.js.map +1 -1
- package/lib/index.d.ts +1 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +1 -1
- 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/isAuditableFromOutcome.d.ts +20 -0
- package/lib/shared-tree/isAuditableFromOutcome.d.ts.map +1 -0
- package/lib/shared-tree/isAuditableFromOutcome.js +32 -0
- package/lib/shared-tree/isAuditableFromOutcome.js.map +1 -0
- package/lib/shared-tree/sharedTree.d.ts +2 -2
- package/lib/shared-tree/sharedTree.d.ts.map +1 -1
- package/lib/shared-tree/sharedTree.js +1 -1
- package/lib/shared-tree/sharedTree.js.map +1 -1
- package/lib/shared-tree/sharedTreeChangeFormat.d.ts +8 -7
- package/lib/shared-tree/sharedTreeChangeFormat.d.ts.map +1 -1
- package/lib/shared-tree/sharedTreeChangeFormat.js +1 -1
- package/lib/shared-tree/sharedTreeChangeFormat.js.map +1 -1
- package/lib/shared-tree/treeCheckout.d.ts +5 -3
- package/lib/shared-tree/treeCheckout.d.ts.map +1 -1
- package/lib/shared-tree/treeCheckout.js +38 -9
- package/lib/shared-tree/treeCheckout.js.map +1 -1
- package/lib/shared-tree-core/editManager.d.ts +2 -2
- package/lib/shared-tree-core/editManager.d.ts.map +1 -1
- package/lib/shared-tree-core/editManager.js.map +1 -1
- package/lib/shared-tree-core/editManagerCodecs.d.ts +3 -3
- package/lib/shared-tree-core/editManagerCodecs.d.ts.map +1 -1
- package/lib/shared-tree-core/editManagerCodecs.js +3 -3
- package/lib/shared-tree-core/editManagerCodecs.js.map +1 -1
- package/lib/shared-tree-core/editManagerFormatCommons.d.ts +35 -34
- package/lib/shared-tree-core/editManagerFormatCommons.d.ts.map +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/editManagerFormatV1toV4.d.ts +15 -15
- package/lib/shared-tree-core/editManagerFormatV1toV4.d.ts.map +1 -1
- package/lib/shared-tree-core/editManagerFormatV1toV4.js +1 -1
- package/lib/shared-tree-core/editManagerFormatV1toV4.js.map +1 -1
- package/lib/shared-tree-core/editManagerFormatVSharedBranches.d.ts +40 -40
- package/lib/shared-tree-core/editManagerFormatVSharedBranches.d.ts.map +1 -1
- package/lib/shared-tree-core/editManagerFormatVSharedBranches.js +1 -1
- package/lib/shared-tree-core/editManagerFormatVSharedBranches.js.map +1 -1
- package/lib/shared-tree-core/messageCodecVSharedBranches.d.ts.map +1 -1
- package/lib/shared-tree-core/messageCodecVSharedBranches.js +1 -1
- package/lib/shared-tree-core/messageCodecVSharedBranches.js.map +1 -1
- package/lib/shared-tree-core/messageCodecs.d.ts +3 -3
- package/lib/shared-tree-core/messageCodecs.d.ts.map +1 -1
- package/lib/shared-tree-core/messageCodecs.js +3 -3
- package/lib/shared-tree-core/messageCodecs.js.map +1 -1
- package/lib/shared-tree-core/messageFormatV1ToV4.d.ts +5 -5
- package/lib/shared-tree-core/messageFormatV1ToV4.d.ts.map +1 -1
- package/lib/shared-tree-core/messageFormatV1ToV4.js +1 -1
- package/lib/shared-tree-core/messageFormatV1ToV4.js.map +1 -1
- package/lib/shared-tree-core/messageFormatVSharedBranches.d.ts +7 -7
- package/lib/shared-tree-core/messageFormatVSharedBranches.d.ts.map +1 -1
- package/lib/shared-tree-core/messageFormatVSharedBranches.js +1 -1
- package/lib/shared-tree-core/messageFormatVSharedBranches.js.map +1 -1
- package/lib/simple-tree/core/treeNodeKernel.d.ts +5 -0
- package/lib/simple-tree/core/treeNodeKernel.d.ts.map +1 -1
- package/lib/simple-tree/core/treeNodeKernel.js +60 -23
- package/lib/simple-tree/core/treeNodeKernel.js.map +1 -1
- package/lib/simple-tree/simpleSchemaFormatV1.d.ts +121 -120
- package/lib/simple-tree/simpleSchemaFormatV1.d.ts.map +1 -1
- package/lib/simple-tree/simpleSchemaFormatV1.js +1 -1
- package/lib/simple-tree/simpleSchemaFormatV1.js.map +1 -1
- package/lib/text/codePointUtils.d.ts +48 -0
- package/lib/text/codePointUtils.d.ts.map +1 -0
- package/lib/text/codePointUtils.js +75 -0
- package/lib/text/codePointUtils.js.map +1 -0
- 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/textDomain.d.ts +93 -1
- package/lib/text/textDomain.d.ts.map +1 -1
- package/lib/text/textDomain.js +56 -0
- package/lib/text/textDomain.js.map +1 -1
- package/lib/text/textDomainFormatted.d.ts +24 -6
- package/lib/text/textDomainFormatted.d.ts.map +1 -1
- package/lib/text/textDomainFormatted.js +30 -2
- package/lib/text/textDomainFormatted.js.map +1 -1
- package/lib/treeFactory.d.ts.map +1 -1
- package/lib/treeFactory.js +2 -0
- package/lib/treeFactory.js.map +1 -1
- package/lib/util/breakable.d.ts +7 -1
- package/lib/util/breakable.d.ts.map +1 -1
- package/lib/util/breakable.js +18 -4
- package/lib/util/breakable.js.map +1 -1
- package/lib/util/typeboxBrand.d.ts +1 -1
- package/lib/util/typeboxBrand.d.ts.map +1 -1
- package/lib/util/typeboxBrand.js +1 -1
- package/lib/util/typeboxBrand.js.map +1 -1
- package/lib/util/utils.d.ts +2 -2
- package/lib/util/utils.d.ts.map +1 -1
- package/lib/util/utils.js +1 -1
- package/lib/util/utils.js.map +1 -1
- package/package.json +24 -24
- package/src/codec/codec.ts +82 -73
- package/src/codec/index.ts +2 -1
- package/src/codec/versioned/codec.ts +173 -73
- package/src/codec/versioned/format.ts +2 -1
- package/src/codec/versioned/index.ts +2 -1
- package/src/core/rebase/types.ts +1 -1
- package/src/core/schema-stored/formatV1.ts +2 -1
- package/src/core/schema-stored/formatV2.ts +2 -1
- package/src/core/tree/deltaUtil.ts +2 -2
- package/src/core/tree/detachedFieldIndexCodecV1.ts +3 -2
- package/src/core/tree/detachedFieldIndexCodecV2.ts +5 -3
- package/src/core/tree/detachedFieldIndexCodecs.ts +2 -2
- package/src/core/tree/detachedFieldIndexFormatCommon.ts +2 -1
- package/src/core/tree/detachedFieldIndexFormatV2.ts +2 -1
- package/src/core/tree/persistedTreeTextFormat.ts +2 -1
- package/src/feature-libraries/chunked-forest/chunkTree.ts +88 -3
- package/src/feature-libraries/chunked-forest/chunkedForest.ts +27 -7
- package/src/feature-libraries/chunked-forest/codec/chunkDecoding.ts +143 -7
- package/src/feature-libraries/chunked-forest/codec/codecs.ts +30 -28
- package/src/feature-libraries/chunked-forest/codec/compressedEncode.ts +7 -7
- package/src/feature-libraries/chunked-forest/codec/format/formatGeneric.ts +2 -1
- package/src/feature-libraries/chunked-forest/codec/format/formatV1.ts +2 -1
- package/src/feature-libraries/chunked-forest/codec/format/formatV2.ts +13 -8
- package/src/feature-libraries/chunked-forest/codec/format/formatVText.ts +84 -0
- package/src/feature-libraries/chunked-forest/codec/format/index.ts +6 -1
- package/src/feature-libraries/chunked-forest/codec/format/versions.ts +25 -4
- package/src/feature-libraries/chunked-forest/codec/nodeEncoder.ts +14 -18
- package/src/feature-libraries/chunked-forest/uniformChunk.ts +131 -44
- package/src/feature-libraries/default-schema/defaultEditBuilder.ts +36 -14
- package/src/feature-libraries/forest-summary/codec.ts +9 -4
- package/src/feature-libraries/forest-summary/formatCommon.ts +2 -1
- package/src/feature-libraries/modular-schema/genericFieldKindFormat.ts +2 -1
- package/src/feature-libraries/modular-schema/modularChangeFormatV1.ts +2 -1
- package/src/feature-libraries/modular-schema/modularChangeFormatV2.ts +2 -1
- package/src/feature-libraries/modular-schema/modularChangeTypes.ts +1 -1
- package/src/feature-libraries/optional-field/optionalFieldChangeFormatV1.ts +2 -1
- package/src/feature-libraries/optional-field/optionalFieldChangeFormatV2.ts +2 -1
- package/src/feature-libraries/schema-edits/schemaChangeFormat.ts +2 -1
- package/src/feature-libraries/schema-index/codec.ts +2 -5
- package/src/feature-libraries/schema-index/formatV1.ts +2 -1
- package/src/feature-libraries/schema-index/formatV2.ts +2 -1
- package/src/feature-libraries/sequence-field/compose.ts +1 -4
- package/src/feature-libraries/sequence-field/formatV1.ts +2 -1
- package/src/feature-libraries/sequence-field/formatV2.ts +2 -1
- package/src/feature-libraries/sequence-field/formatV3.ts +2 -1
- package/src/index.ts +6 -1
- package/src/packageVersion.ts +1 -1
- package/src/shared-tree/isAuditableFromOutcome.ts +34 -0
- package/src/shared-tree/sharedTree.ts +2 -5
- package/src/shared-tree/sharedTreeChangeFormat.ts +2 -1
- package/src/shared-tree/treeCheckout.ts +55 -15
- package/src/shared-tree-core/editManager.ts +2 -2
- package/src/shared-tree-core/editManagerCodecs.ts +4 -6
- package/src/shared-tree-core/editManagerFormatCommons.ts +2 -1
- package/src/shared-tree-core/editManagerFormatV1toV4.ts +2 -1
- package/src/shared-tree-core/editManagerFormatVSharedBranches.ts +2 -1
- package/src/shared-tree-core/messageCodecVSharedBranches.ts +2 -1
- package/src/shared-tree-core/messageCodecs.ts +4 -4
- package/src/shared-tree-core/messageFormatV1ToV4.ts +2 -1
- package/src/shared-tree-core/messageFormatVSharedBranches.ts +2 -1
- package/src/simple-tree/core/treeNodeKernel.ts +66 -28
- package/src/simple-tree/simpleSchemaFormatV1.ts +2 -1
- package/src/text/codePointUtils.ts +81 -0
- package/src/text/index.ts +1 -0
- package/src/text/textDomain.ts +155 -2
- package/src/text/textDomainFormatted.ts +73 -2
- package/src/treeFactory.ts +5 -0
- package/src/util/breakable.ts +27 -6
- package/src/util/typeboxBrand.ts +2 -1
- package/src/util/utils.ts +2 -1
|
@@ -7,9 +7,10 @@ import { assert, oob } from "@fluidframework/core-utils/internal";
|
|
|
7
7
|
import { lowestMinVersionForCollab } from "@fluidframework/runtime-utils/internal";
|
|
8
8
|
|
|
9
9
|
import {
|
|
10
|
-
|
|
10
|
+
VersionDispatchingCodecBuilder,
|
|
11
11
|
type CodecAndSchema,
|
|
12
12
|
type CodecWriteOptions,
|
|
13
|
+
type VersionDispatchingCodec,
|
|
13
14
|
FluidClientVersion,
|
|
14
15
|
} from "../../codec/index.js";
|
|
15
16
|
import type { FieldKey, ITreeCursorSynchronous } from "../../core/index.js";
|
|
@@ -24,7 +25,11 @@ import { ForestFormatVersion, FormatCommon } from "./formatCommon.js";
|
|
|
24
25
|
* Uses field cursors
|
|
25
26
|
*/
|
|
26
27
|
export type FieldSet = ReadonlyMap<FieldKey, ITreeCursorSynchronous>;
|
|
27
|
-
export type ForestCodec =
|
|
28
|
+
export type ForestCodec = VersionDispatchingCodec<
|
|
29
|
+
FieldSet,
|
|
30
|
+
FieldBatchEncodingContext,
|
|
31
|
+
ForestFormatVersion
|
|
32
|
+
>;
|
|
28
33
|
|
|
29
34
|
function makeForestSummarizerCodec(
|
|
30
35
|
options: CodecWriteOptions,
|
|
@@ -64,9 +69,9 @@ function makeForestSummarizerCodec(
|
|
|
64
69
|
}
|
|
65
70
|
|
|
66
71
|
/**
|
|
67
|
-
* {@link
|
|
72
|
+
* {@link VersionDispatchingCodecBuilder} for forest summarizer codecs.
|
|
68
73
|
*/
|
|
69
|
-
export const forestCodecBuilder =
|
|
74
|
+
export const forestCodecBuilder = VersionDispatchingCodecBuilder.build("Forest", [
|
|
70
75
|
{
|
|
71
76
|
minVersionForCollab: lowestMinVersionForCollab,
|
|
72
77
|
formatVersion: ForestFormatVersion.v1,
|
|
@@ -3,7 +3,8 @@
|
|
|
3
3
|
* Licensed under the MIT License.
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
-
import
|
|
6
|
+
import * as Type from "@sinclair/typebox";
|
|
7
|
+
import type { Static } from "@sinclair/typebox";
|
|
7
8
|
|
|
8
9
|
import { versionField } from "../../codec/index.js";
|
|
9
10
|
import { schemaFormatV1 } from "../../core/index.js";
|
|
@@ -6,7 +6,8 @@
|
|
|
6
6
|
// Many of the return types in this module are intentionally derived, rather than explicitly specified.
|
|
7
7
|
/* eslint-disable @typescript-eslint/explicit-function-return-type */
|
|
8
8
|
|
|
9
|
-
import
|
|
9
|
+
import * as Type from "@sinclair/typebox";
|
|
10
|
+
import type { Static, TAnySchema, TSchema } from "@sinclair/typebox";
|
|
10
11
|
|
|
11
12
|
export const EncodedGenericChange = <NodeChangesetSchema extends TSchema>(
|
|
12
13
|
tNodeChangeset: NodeChangesetSchema,
|
|
@@ -3,7 +3,8 @@
|
|
|
3
3
|
* Licensed under the MIT License.
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
-
import
|
|
6
|
+
import * as Type from "@sinclair/typebox";
|
|
7
|
+
import type { ObjectOptions, Static } from "@sinclair/typebox";
|
|
7
8
|
|
|
8
9
|
import { type ChangesetLocalId, RevisionTagSchema, schemaFormatV1 } from "../../core/index.js";
|
|
9
10
|
import {
|
|
@@ -3,7 +3,8 @@
|
|
|
3
3
|
* Licensed under the MIT License.
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
-
import
|
|
6
|
+
import * as Type from "@sinclair/typebox";
|
|
7
|
+
import type { ObjectOptions, Static } from "@sinclair/typebox";
|
|
7
8
|
|
|
8
9
|
import { EncodedModularChangesetV1 } from "./modularChangeFormatV1.js";
|
|
9
10
|
|
|
@@ -17,7 +17,7 @@ import type { TreeChunk } from "../chunked-forest/index.js";
|
|
|
17
17
|
|
|
18
18
|
import type { CrossFieldTarget } from "./crossFieldQueries.js";
|
|
19
19
|
|
|
20
|
-
export interface ModularChangeset extends HasFieldChanges {
|
|
20
|
+
export interface ModularChangeset extends Readonly<HasFieldChanges> {
|
|
21
21
|
/**
|
|
22
22
|
* The numerically highest `ChangesetLocalId` used in this changeset.
|
|
23
23
|
* If undefined then this changeset contains no IDs.
|
|
@@ -3,7 +3,8 @@
|
|
|
3
3
|
* Licensed under the MIT License.
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
-
import
|
|
6
|
+
import * as Type from "@sinclair/typebox";
|
|
7
|
+
import type { ObjectOptions, Static, TSchema } from "@sinclair/typebox";
|
|
7
8
|
|
|
8
9
|
import { EncodedChangeAtomId } from "../modular-schema/index.js";
|
|
9
10
|
|
|
@@ -3,7 +3,8 @@
|
|
|
3
3
|
* Licensed under the MIT License.
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
-
import
|
|
6
|
+
import * as Type from "@sinclair/typebox";
|
|
7
|
+
import type { ObjectOptions, Static, TSchema } from "@sinclair/typebox";
|
|
7
8
|
|
|
8
9
|
import { EncodedChangeAtomId } from "../modular-schema/index.js";
|
|
9
10
|
|
|
@@ -3,7 +3,8 @@
|
|
|
3
3
|
* Licensed under the MIT License.
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
-
import
|
|
6
|
+
import * as Type from "@sinclair/typebox";
|
|
7
|
+
import type { Static } from "@sinclair/typebox";
|
|
7
8
|
|
|
8
9
|
import { JsonCompatibleReadOnlySchema } from "../../util/index.js";
|
|
9
10
|
|
|
@@ -6,10 +6,7 @@
|
|
|
6
6
|
import { fail } from "@fluidframework/core-utils/internal";
|
|
7
7
|
import { lowestMinVersionForCollab } from "@fluidframework/runtime-utils/internal";
|
|
8
8
|
|
|
9
|
-
import {
|
|
10
|
-
ClientVersionDispatchingCodecBuilder,
|
|
11
|
-
FluidClientVersion,
|
|
12
|
-
} from "../../codec/index.js";
|
|
9
|
+
import { VersionDispatchingCodecBuilder, FluidClientVersion } from "../../codec/index.js";
|
|
13
10
|
import {
|
|
14
11
|
SchemaFormatVersion,
|
|
15
12
|
type TreeNodeSchemaIdentifier,
|
|
@@ -100,7 +97,7 @@ function decodeV2(f: FormatV2): TreeStoredSchema {
|
|
|
100
97
|
/**
|
|
101
98
|
* Creates a codec which performs synchronous monolithic encoding of schema content.
|
|
102
99
|
*/
|
|
103
|
-
export const schemaCodecBuilder =
|
|
100
|
+
export const schemaCodecBuilder = VersionDispatchingCodecBuilder.build("Schema", [
|
|
104
101
|
{
|
|
105
102
|
minVersionForCollab: lowestMinVersionForCollab,
|
|
106
103
|
formatVersion: SchemaFormatVersion.v1,
|
|
@@ -3,7 +3,8 @@
|
|
|
3
3
|
* Licensed under the MIT License.
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
-
import
|
|
6
|
+
import * as Type from "@sinclair/typebox";
|
|
7
|
+
import type { ObjectOptions, Static } from "@sinclair/typebox";
|
|
7
8
|
|
|
8
9
|
import { SchemaFormatVersion, schemaFormatV1 } from "../../core/index.js";
|
|
9
10
|
|
|
@@ -3,7 +3,8 @@
|
|
|
3
3
|
* Licensed under the MIT License.
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
-
import
|
|
6
|
+
import * as Type from "@sinclair/typebox";
|
|
7
|
+
import type { ObjectOptions, Static } from "@sinclair/typebox";
|
|
7
8
|
|
|
8
9
|
import { SchemaFormatVersion, schemaFormatV2 } from "../../core/index.js";
|
|
9
10
|
|
|
@@ -473,6 +473,7 @@ function handleNodeChanges(
|
|
|
473
473
|
moveEffects: MoveEffectTable,
|
|
474
474
|
): NodeId | undefined {
|
|
475
475
|
if (newMark.changes !== undefined) {
|
|
476
|
+
moveEffects.onMoveIn(newMark.changes);
|
|
476
477
|
const baseSource = getMoveIn(baseMark);
|
|
477
478
|
|
|
478
479
|
// TODO: Make sure composeChild is not called twice on the node changes.
|
|
@@ -589,10 +590,6 @@ export class ComposeQueue {
|
|
|
589
590
|
private dequeueBase(length: number = Number.POSITIVE_INFINITY): ComposeMarks {
|
|
590
591
|
const baseMark = this.baseMarks.dequeueUpTo(length);
|
|
591
592
|
const movedChanges = getMovedChangesFromMark(this.moveEffects, baseMark);
|
|
592
|
-
if (movedChanges !== undefined) {
|
|
593
|
-
this.moveEffects.onMoveIn(movedChanges);
|
|
594
|
-
}
|
|
595
|
-
|
|
596
593
|
const newMark = createNoopMark(baseMark.count, movedChanges, getOutputCellId(baseMark));
|
|
597
594
|
return { baseMark, newMark };
|
|
598
595
|
}
|
|
@@ -3,7 +3,8 @@
|
|
|
3
3
|
* Licensed under the MIT License.
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
-
import
|
|
6
|
+
import * as Type from "@sinclair/typebox";
|
|
7
|
+
import type { ObjectOptions, Static, TSchema } from "@sinclair/typebox";
|
|
7
8
|
|
|
8
9
|
import { unionOptions } from "../../codec/index.js";
|
|
9
10
|
import { RevisionTagSchema } from "../../core/index.js";
|
|
@@ -3,7 +3,8 @@
|
|
|
3
3
|
* Licensed under the MIT License.
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
-
import
|
|
6
|
+
import * as Type from "@sinclair/typebox";
|
|
7
|
+
import type { ObjectOptions, Static, TSchema } from "@sinclair/typebox";
|
|
7
8
|
|
|
8
9
|
import { unionOptions } from "../../codec/index.js";
|
|
9
10
|
import { RevisionTagSchema } from "../../core/index.js";
|
|
@@ -3,7 +3,8 @@
|
|
|
3
3
|
* Licensed under the MIT License.
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
-
import
|
|
6
|
+
import * as Type from "@sinclair/typebox";
|
|
7
|
+
import type { ObjectOptions, Static, TSchema } from "@sinclair/typebox";
|
|
7
8
|
|
|
8
9
|
import { unionOptions } from "../../codec/index.js";
|
|
9
10
|
|
package/src/index.ts
CHANGED
|
@@ -403,5 +403,10 @@ export { FluidSerializableAsTree } from "./serializableDomainSchema.js";
|
|
|
403
403
|
export { TableSchema, type System_TableSchema } from "./tableSchema.js";
|
|
404
404
|
export { asAlpha, asBeta } from "./api.js";
|
|
405
405
|
|
|
406
|
-
export {
|
|
406
|
+
export {
|
|
407
|
+
TextAsTree,
|
|
408
|
+
FormattedTextAsTree,
|
|
409
|
+
codePointCount,
|
|
410
|
+
utf16LengthForCodePoints,
|
|
411
|
+
} from "./text/index.js";
|
|
407
412
|
export { ExtensibleUnionNode } from "./extensibleUnionNode.js";
|
package/src/packageVersion.ts
CHANGED
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright (c) Microsoft Corporation and contributors. All rights reserved.
|
|
3
|
+
* Licensed under the MIT License.
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
import type { SharedTreeChange } from "./sharedTreeChangeTypes.js";
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Determines whether a {@link SharedTreeChange} is auditable for HitL purposes
|
|
10
|
+
* by inspecting the resulting state after the change is applied.
|
|
11
|
+
*
|
|
12
|
+
* Returns `false` if any of the following is true:
|
|
13
|
+
* - The change contains more than one inner change.
|
|
14
|
+
* - The change contains a schema change.
|
|
15
|
+
* - The change contains a data change with violated constraints.
|
|
16
|
+
*
|
|
17
|
+
* Otherwise returns `true` (including for an empty change, which has nothing
|
|
18
|
+
* a viewer of the post-apply state would be unable to see).
|
|
19
|
+
*
|
|
20
|
+
*/
|
|
21
|
+
export function isAuditableFromOutcome(change: SharedTreeChange): boolean {
|
|
22
|
+
if (change.changes.length > 1) {
|
|
23
|
+
return false;
|
|
24
|
+
}
|
|
25
|
+
for (const inner of change.changes) {
|
|
26
|
+
if (inner.type === "schema") {
|
|
27
|
+
return false;
|
|
28
|
+
}
|
|
29
|
+
if ((inner.innerChange.constraintViolationCount ?? 0) > 0) {
|
|
30
|
+
return false;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
return true;
|
|
34
|
+
}
|
|
@@ -13,10 +13,7 @@ import type {
|
|
|
13
13
|
IFluidSerializer,
|
|
14
14
|
SharedKernel,
|
|
15
15
|
} from "@fluidframework/shared-object-base/internal";
|
|
16
|
-
import {
|
|
17
|
-
UsageError,
|
|
18
|
-
type ITelemetryLoggerExt,
|
|
19
|
-
} from "@fluidframework/telemetry-utils/internal";
|
|
16
|
+
import { UsageError, type TelemetryLoggerExt } from "@fluidframework/telemetry-utils/internal";
|
|
20
17
|
|
|
21
18
|
import {
|
|
22
19
|
type CodecTree,
|
|
@@ -201,7 +198,7 @@ export class SharedTreeKernel
|
|
|
201
198
|
submitLocalMessage: (content: unknown, localOpMetadata?: unknown) => void,
|
|
202
199
|
lastSequenceNumber: () => number | undefined,
|
|
203
200
|
initialSequenceNumber: number,
|
|
204
|
-
private readonly logger:
|
|
201
|
+
private readonly logger: TelemetryLoggerExt | undefined,
|
|
205
202
|
idCompressor: IIdCompressor,
|
|
206
203
|
optionsParam: SharedTreeOptionsInternal,
|
|
207
204
|
) {
|
|
@@ -3,7 +3,8 @@
|
|
|
3
3
|
* Licensed under the MIT License.
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
-
import
|
|
6
|
+
import * as Type from "@sinclair/typebox";
|
|
7
|
+
import type { Static, TSchema } from "@sinclair/typebox";
|
|
7
8
|
|
|
8
9
|
import type { EncodedSchemaChange } from "../feature-libraries/index.js";
|
|
9
10
|
import { JsonCompatibleReadOnlySchema } from "../util/index.js";
|
|
@@ -8,10 +8,7 @@ import type { IFluidHandle, Listenable } from "@fluidframework/core-interfaces/i
|
|
|
8
8
|
import { assert, unreachableCase, fail } from "@fluidframework/core-utils/internal";
|
|
9
9
|
import type { IIdCompressor, SessionId } from "@fluidframework/id-compressor";
|
|
10
10
|
import { isStableId } from "@fluidframework/id-compressor/internal";
|
|
11
|
-
import {
|
|
12
|
-
UsageError,
|
|
13
|
-
type ITelemetryLoggerExt,
|
|
14
|
-
} from "@fluidframework/telemetry-utils/internal";
|
|
11
|
+
import { UsageError, type TelemetryLoggerExt } from "@fluidframework/telemetry-utils/internal";
|
|
15
12
|
|
|
16
13
|
import {
|
|
17
14
|
FluidClientVersion,
|
|
@@ -134,6 +131,20 @@ function* collectTreeLabels(node: LabelTree): IterableIterator<unknown> {
|
|
|
134
131
|
}
|
|
135
132
|
}
|
|
136
133
|
|
|
134
|
+
/**
|
|
135
|
+
* Deep-clones a {@link LabelTree} so the result is independent of the source.
|
|
136
|
+
* @remarks
|
|
137
|
+
* Used when capturing the label tree on a revertible so that subsequent mutations
|
|
138
|
+
* (by the framework or by external listeners reading {@link TransactionLabels.tree})
|
|
139
|
+
* cannot affect the labels the revertible will emit.
|
|
140
|
+
*/
|
|
141
|
+
function cloneLabelTree(tree: LabelTree): LabelTree {
|
|
142
|
+
return {
|
|
143
|
+
label: tree.label,
|
|
144
|
+
sublabels: tree.sublabels.map(cloneLabelTree),
|
|
145
|
+
};
|
|
146
|
+
}
|
|
147
|
+
|
|
137
148
|
/**
|
|
138
149
|
* Builds the labels set for a change event from the label tree.
|
|
139
150
|
* If the tree exists and contains at least one defined label, returns a set of all
|
|
@@ -295,7 +306,7 @@ export function createTreeCheckout(
|
|
|
295
306
|
fieldBatchCodec?: FieldBatchCodec;
|
|
296
307
|
removedRoots?: DetachedFieldIndex;
|
|
297
308
|
chunkCompressionStrategy?: TreeCompressionStrategy;
|
|
298
|
-
logger?:
|
|
309
|
+
logger?: TelemetryLoggerExt;
|
|
299
310
|
breaker?: Breakable;
|
|
300
311
|
disposeForksAfterTransaction?: boolean;
|
|
301
312
|
codecOptions?: Partial<CodecWriteOptions>;
|
|
@@ -514,7 +525,7 @@ export class TreeCheckout implements ITreeCheckout {
|
|
|
514
525
|
idCompressor,
|
|
515
526
|
),
|
|
516
527
|
/** Optional logger for telemetry. */
|
|
517
|
-
private readonly logger?:
|
|
528
|
+
private readonly logger?: TelemetryLoggerExt,
|
|
518
529
|
public readonly breaker: Breakable = new Breakable("TreeCheckout"),
|
|
519
530
|
public readonly disposeForksAfterTransaction = true,
|
|
520
531
|
) {
|
|
@@ -713,6 +724,12 @@ export class TreeCheckout implements ITreeCheckout {
|
|
|
713
724
|
const kind = event.type === "append" ? event.kind : CommitKind.Default;
|
|
714
725
|
const { change, revision } = commit;
|
|
715
726
|
|
|
727
|
+
// Snapshot the label tree for this commit before any listener runs, so the captured
|
|
728
|
+
// value is stable against mutations to `metadata.labels.tree` (which aliases the
|
|
729
|
+
// live `labelTreeNode`).
|
|
730
|
+
const commitLabelTree =
|
|
731
|
+
this.labelTreeNode === undefined ? undefined : cloneLabelTree(this.labelTreeNode);
|
|
732
|
+
|
|
716
733
|
const getRevertible = hasSchemaChange(change)
|
|
717
734
|
? undefined
|
|
718
735
|
: (onRevertibleDisposed?: (revertible: RevertibleAlpha) => void) => {
|
|
@@ -731,6 +748,7 @@ export class TreeCheckout implements ITreeCheckout {
|
|
|
731
748
|
kind,
|
|
732
749
|
this,
|
|
733
750
|
onRevertibleDisposed,
|
|
751
|
+
commitLabelTree,
|
|
734
752
|
);
|
|
735
753
|
this.revertibleCommitBranches.set(
|
|
736
754
|
revision,
|
|
@@ -1010,6 +1028,8 @@ export class TreeCheckout implements ITreeCheckout {
|
|
|
1010
1028
|
* @param kind - The {@link CommitKind} that produced this revertible (e.g., Default, Undo, Redo).
|
|
1011
1029
|
* @param checkout - The {@link TreeCheckout} instance this revertible belongs to.
|
|
1012
1030
|
* @param onRevertibleDisposed - Callback function that will be called when the revertible is disposed.
|
|
1031
|
+
* @param labelTree - The {@link LabelTree} (if any) active when the original commit was produced.
|
|
1032
|
+
* The revert commit inherits these labels so that commits and their reverts can be associated.
|
|
1013
1033
|
* @returns A {@link RevertibleAlpha} object.
|
|
1014
1034
|
*/
|
|
1015
1035
|
private createRevertible(
|
|
@@ -1017,6 +1037,7 @@ export class TreeCheckout implements ITreeCheckout {
|
|
|
1017
1037
|
kind: CommitKind,
|
|
1018
1038
|
checkout: TreeCheckout,
|
|
1019
1039
|
onRevertibleDisposed: ((revertible: RevertibleAlpha) => void) | undefined,
|
|
1040
|
+
labelTree: LabelTree | undefined,
|
|
1020
1041
|
): RevertibleAlpha {
|
|
1021
1042
|
const commitBranches = checkout.revertibleCommitBranches;
|
|
1022
1043
|
|
|
@@ -1032,7 +1053,7 @@ export class TreeCheckout implements ITreeCheckout {
|
|
|
1032
1053
|
throw new UsageError("Unable to revert a revertible that has been disposed.");
|
|
1033
1054
|
}
|
|
1034
1055
|
|
|
1035
|
-
const revertMetrics = checkout.revertRevertible(revision, kind);
|
|
1056
|
+
const revertMetrics = checkout.revertRevertible(revision, kind, labelTree);
|
|
1036
1057
|
checkout.logger?.sendTelemetryEvent({
|
|
1037
1058
|
eventName: TreeCheckout.revertTelemetryEventName,
|
|
1038
1059
|
...revertMetrics,
|
|
@@ -1062,7 +1083,13 @@ export class TreeCheckout implements ITreeCheckout {
|
|
|
1062
1083
|
|
|
1063
1084
|
targetCheckout.revertibleCommitBranches.set(revision, revertibleBranch.fork());
|
|
1064
1085
|
|
|
1065
|
-
return this.createRevertible(
|
|
1086
|
+
return this.createRevertible(
|
|
1087
|
+
revision,
|
|
1088
|
+
kind,
|
|
1089
|
+
targetCheckout,
|
|
1090
|
+
onRevertibleDisposed,
|
|
1091
|
+
labelTree,
|
|
1092
|
+
);
|
|
1066
1093
|
},
|
|
1067
1094
|
dispose: () => {
|
|
1068
1095
|
if (revertible.status === RevertibleStatus.Disposed) {
|
|
@@ -1323,7 +1350,11 @@ export class TreeCheckout implements ITreeCheckout {
|
|
|
1323
1350
|
this.revertibles.delete(revertible);
|
|
1324
1351
|
}
|
|
1325
1352
|
|
|
1326
|
-
private revertRevertible(
|
|
1353
|
+
private revertRevertible(
|
|
1354
|
+
revision: RevisionTag,
|
|
1355
|
+
kind: CommitKind,
|
|
1356
|
+
labelTree: LabelTree | undefined,
|
|
1357
|
+
): RevertMetrics {
|
|
1327
1358
|
this.editLock.checkUnlocked("Reverting a commit");
|
|
1328
1359
|
if (this.transaction.size > 0) {
|
|
1329
1360
|
throw new UsageError("Undo is not yet supported during transactions.");
|
|
@@ -1366,12 +1397,21 @@ export class TreeCheckout implements ITreeCheckout {
|
|
|
1366
1397
|
);
|
|
1367
1398
|
}
|
|
1368
1399
|
|
|
1369
|
-
|
|
1370
|
-
|
|
1371
|
-
|
|
1372
|
-
|
|
1373
|
-
|
|
1374
|
-
|
|
1400
|
+
// Install the original commit's label tree so the revert commit's metadata inherits
|
|
1401
|
+
// the same labels. Reusing the captured tree (rather than wrapping it) ensures
|
|
1402
|
+
// revert-of-revert does not introduce new nesting.
|
|
1403
|
+
const previousLabelTreeNode = this.labelTreeNode;
|
|
1404
|
+
this.labelTreeNode = labelTree;
|
|
1405
|
+
try {
|
|
1406
|
+
this.#transaction.activeBranch.apply(
|
|
1407
|
+
change,
|
|
1408
|
+
kind === CommitKind.Default || kind === CommitKind.Redo
|
|
1409
|
+
? CommitKind.Undo
|
|
1410
|
+
: CommitKind.Redo,
|
|
1411
|
+
);
|
|
1412
|
+
} finally {
|
|
1413
|
+
this.labelTreeNode = previousLabelTreeNode;
|
|
1414
|
+
}
|
|
1375
1415
|
|
|
1376
1416
|
// Derive some stats about the reversion to return to the caller.
|
|
1377
1417
|
let revertAge = 0;
|
|
@@ -9,7 +9,7 @@ import { assert, fail } from "@fluidframework/core-utils/internal";
|
|
|
9
9
|
import type { SessionId } from "@fluidframework/id-compressor";
|
|
10
10
|
import {
|
|
11
11
|
TelemetryEventBatcher,
|
|
12
|
-
type
|
|
12
|
+
type TelemetryLoggerExt,
|
|
13
13
|
} from "@fluidframework/telemetry-utils/internal";
|
|
14
14
|
import { BTree } from "@tylerbu/sorted-btree-es6";
|
|
15
15
|
|
|
@@ -123,7 +123,7 @@ export class EditManager<
|
|
|
123
123
|
public readonly localSessionId: SessionId,
|
|
124
124
|
private readonly mintRevisionTag: () => RevisionTag,
|
|
125
125
|
private readonly onSharedBranchCreated?: (branchId: BranchId) => void,
|
|
126
|
-
logger?:
|
|
126
|
+
logger?: TelemetryLoggerExt,
|
|
127
127
|
) {
|
|
128
128
|
this.trunkBase = {
|
|
129
129
|
revision: rootRevision,
|
|
@@ -8,7 +8,7 @@ import type { MinimumVersionForCollab } from "@fluidframework/runtime-definition
|
|
|
8
8
|
import { lowestMinVersionForCollab } from "@fluidframework/runtime-utils/internal";
|
|
9
9
|
|
|
10
10
|
import {
|
|
11
|
-
|
|
11
|
+
VersionDispatchingCodecBuilder,
|
|
12
12
|
type CodecTree,
|
|
13
13
|
type CodecVersion,
|
|
14
14
|
type DependentFormatVersion,
|
|
@@ -64,11 +64,9 @@ interface EditManagerCodecOptions<TChangeset> extends ICodecOptions {
|
|
|
64
64
|
}
|
|
65
65
|
|
|
66
66
|
/**
|
|
67
|
-
* Creates a {@link
|
|
67
|
+
* Creates a {@link VersionDispatchingCodecBuilder} encoding for {@link SummaryData}.
|
|
68
68
|
*/
|
|
69
|
-
export function makeEditManagerCodecBuilder<
|
|
70
|
-
TChangeset,
|
|
71
|
-
>(): ClientVersionDispatchingCodecBuilder<
|
|
69
|
+
export function makeEditManagerCodecBuilder<TChangeset>(): VersionDispatchingCodecBuilder<
|
|
72
70
|
EditManagerCodecOptions<TChangeset>,
|
|
73
71
|
SummaryData<TChangeset>,
|
|
74
72
|
EditManagerEncodingContext,
|
|
@@ -137,7 +135,7 @@ export function makeEditManagerCodecBuilder<
|
|
|
137
135
|
},
|
|
138
136
|
];
|
|
139
137
|
|
|
140
|
-
return
|
|
138
|
+
return VersionDispatchingCodecBuilder.build(editManagerCodecName, versions);
|
|
141
139
|
}
|
|
142
140
|
|
|
143
141
|
/**
|
|
@@ -4,7 +4,8 @@
|
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
import type { SessionId } from "@fluidframework/id-compressor";
|
|
7
|
-
import
|
|
7
|
+
import * as Type from "@sinclair/typebox";
|
|
8
|
+
import type { ObjectOptions, Static, TSchema } from "@sinclair/typebox";
|
|
8
9
|
|
|
9
10
|
import {
|
|
10
11
|
type EncodedRevisionTag,
|
|
@@ -4,7 +4,8 @@
|
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
import type { SessionId } from "@fluidframework/id-compressor";
|
|
7
|
-
import
|
|
7
|
+
import * as Type from "@sinclair/typebox";
|
|
8
|
+
import type { ObjectOptions, TSchema } from "@sinclair/typebox";
|
|
8
9
|
|
|
9
10
|
import { SessionIdSchema } from "../core/index.js";
|
|
10
11
|
|
|
@@ -4,7 +4,8 @@
|
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
import type { SessionId } from "@fluidframework/id-compressor";
|
|
7
|
-
import
|
|
7
|
+
import * as Type from "@sinclair/typebox";
|
|
8
|
+
import type { ObjectOptions, TSchema } from "@sinclair/typebox";
|
|
8
9
|
|
|
9
10
|
import { SessionIdSchema } from "../core/index.js";
|
|
10
11
|
|
|
@@ -4,7 +4,8 @@
|
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
import { assert, unreachableCase } from "@fluidframework/core-utils/internal";
|
|
7
|
-
import
|
|
7
|
+
import * as Type from "@sinclair/typebox";
|
|
8
|
+
import type { TAnySchema } from "@sinclair/typebox";
|
|
8
9
|
|
|
9
10
|
import type { CodecAndSchema, IJsonCodec, Versioned } from "../codec/index.js";
|
|
10
11
|
import type {
|
|
@@ -8,7 +8,7 @@ import type { MinimumVersionForCollab } from "@fluidframework/runtime-definition
|
|
|
8
8
|
import { lowestMinVersionForCollab } from "@fluidframework/runtime-utils/internal";
|
|
9
9
|
|
|
10
10
|
import {
|
|
11
|
-
|
|
11
|
+
VersionDispatchingCodecBuilder,
|
|
12
12
|
type CodecTree,
|
|
13
13
|
type CodecVersion,
|
|
14
14
|
type DependentFormatVersion,
|
|
@@ -58,9 +58,9 @@ interface MessageCodecBuilderOptions<TChangeset> extends ICodecOptions {
|
|
|
58
58
|
}
|
|
59
59
|
|
|
60
60
|
/**
|
|
61
|
-
* Creates a {@link
|
|
61
|
+
* Creates a {@link VersionDispatchingCodecBuilder} for encoding/decoding messages.
|
|
62
62
|
*/
|
|
63
|
-
export function makeMessageCodecBuilder<TChangeset>():
|
|
63
|
+
export function makeMessageCodecBuilder<TChangeset>(): VersionDispatchingCodecBuilder<
|
|
64
64
|
MessageCodecBuilderOptions<TChangeset>,
|
|
65
65
|
DecodedMessage<TChangeset>,
|
|
66
66
|
MessageEncodingContext,
|
|
@@ -129,7 +129,7 @@ export function makeMessageCodecBuilder<TChangeset>(): ClientVersionDispatchingC
|
|
|
129
129
|
},
|
|
130
130
|
];
|
|
131
131
|
|
|
132
|
-
return
|
|
132
|
+
return VersionDispatchingCodecBuilder.build(messageCodecName, versions);
|
|
133
133
|
}
|
|
134
134
|
|
|
135
135
|
export function getCodecTreeForMessageFormatWithChange(
|
|
@@ -4,7 +4,8 @@
|
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
import type { SessionId } from "@fluidframework/id-compressor";
|
|
7
|
-
import
|
|
7
|
+
import * as Type from "@sinclair/typebox";
|
|
8
|
+
import type { TSchema } from "@sinclair/typebox";
|
|
8
9
|
|
|
9
10
|
import { type EncodedRevisionTag, RevisionTagSchema, SessionIdSchema } from "../core/index.js";
|
|
10
11
|
import type { JsonCompatibleReadOnly } from "../util/index.js";
|
|
@@ -4,7 +4,8 @@
|
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
import type { SessionId } from "@fluidframework/id-compressor";
|
|
7
|
-
import
|
|
7
|
+
import * as Type from "@sinclair/typebox";
|
|
8
|
+
import type { TSchema } from "@sinclair/typebox";
|
|
8
9
|
|
|
9
10
|
import { type EncodedRevisionTag, RevisionTagSchema, SessionIdSchema } from "../core/index.js";
|
|
10
11
|
import type { JsonCompatibleReadOnly } from "../util/index.js";
|