@fluidframework/tree 2.70.0-361092 → 2.70.0-361788
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/api-report/tree.alpha.api.md +36 -17
- package/api-report/tree.beta.api.md +70 -2
- package/api-report/tree.legacy.beta.api.md +70 -2
- package/dist/alpha.d.ts +15 -11
- package/dist/api.d.ts +6 -1
- package/dist/api.d.ts.map +1 -1
- package/dist/api.js +9 -1
- package/dist/api.js.map +1 -1
- package/dist/beta.d.ts +13 -0
- package/dist/codec/codec.d.ts +3 -3
- package/dist/codec/codec.js.map +1 -1
- package/dist/core/forest/forest.d.ts +3 -4
- package/dist/core/forest/forest.d.ts.map +1 -1
- package/dist/core/forest/forest.js.map +1 -1
- package/dist/core/rebase/changeRebaser.d.ts +1 -1
- package/dist/core/rebase/changeRebaser.js.map +1 -1
- package/dist/core/tree/detachedFieldIndex.d.ts.map +1 -1
- package/dist/core/tree/detachedFieldIndex.js +4 -1
- package/dist/core/tree/detachedFieldIndex.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/chunkTree.d.ts +6 -0
- package/dist/feature-libraries/chunked-forest/chunkTree.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/chunkTree.js +11 -2
- package/dist/feature-libraries/chunked-forest/chunkTree.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/chunkedForest.d.ts +1 -1
- package/dist/feature-libraries/chunked-forest/chunkedForest.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/chunkedForest.js +1 -1
- package/dist/feature-libraries/chunked-forest/chunkedForest.js.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/compressedEncode.d.ts +21 -20
- package/dist/feature-libraries/chunked-forest/codec/compressedEncode.d.ts.map +1 -1
- package/dist/feature-libraries/chunked-forest/codec/compressedEncode.js +17 -43
- package/dist/feature-libraries/chunked-forest/codec/compressedEncode.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/flex-tree/lazyField.d.ts.map +1 -1
- package/dist/feature-libraries/flex-tree/lazyField.js +2 -1
- package/dist/feature-libraries/flex-tree/lazyField.js.map +1 -1
- package/dist/feature-libraries/flex-tree/utilities.d.ts +1 -1
- package/dist/feature-libraries/flex-tree/utilities.js +1 -1
- package/dist/feature-libraries/flex-tree/utilities.js.map +1 -1
- package/dist/feature-libraries/forest-summary/incrementalSummaryBuilder.d.ts +1 -1
- package/dist/feature-libraries/forest-summary/incrementalSummaryBuilder.d.ts.map +1 -1
- package/dist/feature-libraries/forest-summary/incrementalSummaryBuilder.js +42 -47
- package/dist/feature-libraries/forest-summary/incrementalSummaryBuilder.js.map +1 -1
- package/dist/feature-libraries/incrementalSummarizationUtils.d.ts +1 -1
- package/dist/feature-libraries/incrementalSummarizationUtils.js.map +1 -1
- package/dist/feature-libraries/index.d.ts +1 -1
- package/dist/feature-libraries/index.d.ts.map +1 -1
- package/dist/feature-libraries/index.js +2 -1
- package/dist/feature-libraries/index.js.map +1 -1
- package/dist/feature-libraries/modular-schema/modularChangeFamily.d.ts +1 -1
- package/dist/feature-libraries/modular-schema/modularChangeFamily.js +1 -1
- package/dist/feature-libraries/modular-schema/modularChangeFamily.js.map +1 -1
- package/dist/feature-libraries/object-forest/objectForest.d.ts +1 -1
- package/dist/feature-libraries/object-forest/objectForest.d.ts.map +1 -1
- package/dist/feature-libraries/object-forest/objectForest.js +1 -1
- package/dist/feature-libraries/object-forest/objectForest.js.map +1 -1
- package/dist/feature-libraries/sequence-field/formatV1.d.ts +1 -1
- package/dist/feature-libraries/sequence-field/formatV1.js.map +1 -1
- package/dist/feature-libraries/sequence-field/formatV2.d.ts +1 -1
- package/dist/feature-libraries/sequence-field/formatV2.js.map +1 -1
- package/dist/feature-libraries/sequence-field/formatV3.d.ts +1 -1
- package/dist/feature-libraries/sequence-field/formatV3.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -2
- package/dist/index.js.map +1 -1
- package/dist/legacy.d.ts +13 -0
- 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.map +1 -1
- package/dist/shared-tree/independentView.js +2 -1
- package/dist/shared-tree/independentView.js.map +1 -1
- package/dist/shared-tree/schematizingTreeView.d.ts +4 -3
- package/dist/shared-tree/schematizingTreeView.d.ts.map +1 -1
- package/dist/shared-tree/schematizingTreeView.js +1 -1
- package/dist/shared-tree/schematizingTreeView.js.map +1 -1
- package/dist/shared-tree/sharedTree.d.ts +1 -1
- package/dist/shared-tree/sharedTree.js +1 -1
- package/dist/shared-tree/sharedTree.js.map +1 -1
- package/dist/shared-tree/treeAlpha.d.ts +28 -2
- package/dist/shared-tree/treeAlpha.d.ts.map +1 -1
- package/dist/shared-tree/treeAlpha.js +12 -0
- package/dist/shared-tree/treeAlpha.js.map +1 -1
- package/dist/shared-tree/treeCheckout.d.ts +1 -1
- package/dist/shared-tree/treeCheckout.js +1 -1
- package/dist/shared-tree/treeCheckout.js.map +1 -1
- package/dist/shared-tree-core/sharedTreeCore.js +1 -1
- package/dist/shared-tree-core/sharedTreeCore.js.map +1 -1
- package/dist/shared-tree-core/transaction.d.ts +2 -2
- package/dist/shared-tree-core/transaction.js.map +1 -1
- package/dist/simple-tree/api/incrementalAllowedTypes.d.ts +47 -0
- package/dist/simple-tree/api/incrementalAllowedTypes.d.ts.map +1 -0
- package/dist/simple-tree/api/incrementalAllowedTypes.js +90 -0
- package/dist/simple-tree/api/incrementalAllowedTypes.js.map +1 -0
- package/dist/simple-tree/api/index.d.ts +2 -1
- package/dist/simple-tree/api/index.d.ts.map +1 -1
- package/dist/simple-tree/api/index.js +4 -1
- package/dist/simple-tree/api/index.js.map +1 -1
- package/dist/simple-tree/api/schemaFactoryBeta.d.ts +2 -2
- 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/tree.d.ts +51 -37
- 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/core/allowedTypes.d.ts +10 -11
- package/dist/simple-tree/core/allowedTypes.d.ts.map +1 -1
- package/dist/simple-tree/core/allowedTypes.js +1 -1
- package/dist/simple-tree/core/allowedTypes.js.map +1 -1
- package/dist/simple-tree/core/index.d.ts +1 -1
- package/dist/simple-tree/core/index.d.ts.map +1 -1
- package/dist/simple-tree/core/index.js +2 -1
- package/dist/simple-tree/core/index.js.map +1 -1
- package/dist/simple-tree/core/treeNodeSchema.d.ts +3 -8
- package/dist/simple-tree/core/treeNodeSchema.d.ts.map +1 -1
- package/dist/simple-tree/core/treeNodeSchema.js.map +1 -1
- package/dist/simple-tree/core/treeNodeValid.d.ts +2 -2
- package/dist/simple-tree/core/treeNodeValid.d.ts.map +1 -1
- package/dist/simple-tree/core/treeNodeValid.js +2 -2
- package/dist/simple-tree/core/treeNodeValid.js.map +1 -1
- package/dist/simple-tree/core/walkSchema.d.ts.map +1 -1
- package/dist/simple-tree/core/walkSchema.js +1 -1
- package/dist/simple-tree/core/walkSchema.js.map +1 -1
- package/dist/simple-tree/core/withType.d.ts +20 -0
- package/dist/simple-tree/core/withType.d.ts.map +1 -1
- package/dist/simple-tree/core/withType.js +21 -1
- package/dist/simple-tree/core/withType.js.map +1 -1
- package/dist/simple-tree/createContext.d.ts.map +1 -1
- package/dist/simple-tree/createContext.js +1 -1
- package/dist/simple-tree/createContext.js.map +1 -1
- package/dist/simple-tree/index.d.ts +2 -2
- package/dist/simple-tree/index.d.ts.map +1 -1
- package/dist/simple-tree/index.js +5 -2
- package/dist/simple-tree/index.js.map +1 -1
- package/dist/simple-tree/leafNodeSchema.js +1 -1
- package/dist/simple-tree/leafNodeSchema.js.map +1 -1
- package/dist/simple-tree/node-kinds/array/arrayNode.d.ts.map +1 -1
- package/dist/simple-tree/node-kinds/array/arrayNode.js +1 -1
- package/dist/simple-tree/node-kinds/array/arrayNode.js.map +1 -1
- package/dist/simple-tree/node-kinds/map/mapNode.js +1 -1
- package/dist/simple-tree/node-kinds/map/mapNode.js.map +1 -1
- package/dist/simple-tree/node-kinds/object/objectNode.d.ts.map +1 -1
- package/dist/simple-tree/node-kinds/object/objectNode.js +1 -1
- package/dist/simple-tree/node-kinds/object/objectNode.js.map +1 -1
- package/dist/simple-tree/node-kinds/record/recordNode.js +1 -1
- package/dist/simple-tree/node-kinds/record/recordNode.js.map +1 -1
- package/dist/simple-tree/unhydratedFlexTreeFromInsertable.d.ts +1 -0
- package/dist/simple-tree/unhydratedFlexTreeFromInsertable.d.ts.map +1 -1
- package/dist/simple-tree/unhydratedFlexTreeFromInsertable.js +12 -0
- package/dist/simple-tree/unhydratedFlexTreeFromInsertable.js.map +1 -1
- package/dist/util/nestedMap.d.ts +1 -1
- package/dist/util/nestedMap.js +1 -1
- package/dist/util/nestedMap.js.map +1 -1
- package/dist/util/referenceCounting.d.ts +1 -1
- package/dist/util/referenceCounting.js.map +1 -1
- package/lib/alpha.d.ts +15 -11
- package/lib/api.d.ts +6 -1
- package/lib/api.d.ts.map +1 -1
- package/lib/api.js +7 -0
- package/lib/api.js.map +1 -1
- package/lib/beta.d.ts +13 -0
- package/lib/codec/codec.d.ts +3 -3
- package/lib/codec/codec.js.map +1 -1
- package/lib/core/forest/forest.d.ts +3 -4
- package/lib/core/forest/forest.d.ts.map +1 -1
- package/lib/core/forest/forest.js.map +1 -1
- package/lib/core/rebase/changeRebaser.d.ts +1 -1
- package/lib/core/rebase/changeRebaser.js.map +1 -1
- package/lib/core/tree/detachedFieldIndex.d.ts.map +1 -1
- package/lib/core/tree/detachedFieldIndex.js +4 -1
- package/lib/core/tree/detachedFieldIndex.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/chunkTree.d.ts +6 -0
- package/lib/feature-libraries/chunked-forest/chunkTree.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/chunkTree.js +8 -0
- package/lib/feature-libraries/chunked-forest/chunkTree.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/chunkedForest.d.ts +1 -1
- package/lib/feature-libraries/chunked-forest/chunkedForest.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/chunkedForest.js +2 -2
- package/lib/feature-libraries/chunked-forest/chunkedForest.js.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/compressedEncode.d.ts +21 -20
- package/lib/feature-libraries/chunked-forest/codec/compressedEncode.d.ts.map +1 -1
- package/lib/feature-libraries/chunked-forest/codec/compressedEncode.js +17 -43
- package/lib/feature-libraries/chunked-forest/codec/compressedEncode.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/flex-tree/lazyField.d.ts.map +1 -1
- package/lib/feature-libraries/flex-tree/lazyField.js +2 -1
- package/lib/feature-libraries/flex-tree/lazyField.js.map +1 -1
- package/lib/feature-libraries/flex-tree/utilities.d.ts +1 -1
- package/lib/feature-libraries/flex-tree/utilities.js +1 -1
- package/lib/feature-libraries/flex-tree/utilities.js.map +1 -1
- package/lib/feature-libraries/forest-summary/incrementalSummaryBuilder.d.ts +1 -1
- package/lib/feature-libraries/forest-summary/incrementalSummaryBuilder.d.ts.map +1 -1
- package/lib/feature-libraries/forest-summary/incrementalSummaryBuilder.js +42 -47
- package/lib/feature-libraries/forest-summary/incrementalSummaryBuilder.js.map +1 -1
- package/lib/feature-libraries/incrementalSummarizationUtils.d.ts +1 -1
- package/lib/feature-libraries/incrementalSummarizationUtils.js.map +1 -1
- package/lib/feature-libraries/index.d.ts +1 -1
- package/lib/feature-libraries/index.d.ts.map +1 -1
- package/lib/feature-libraries/index.js +1 -1
- package/lib/feature-libraries/index.js.map +1 -1
- package/lib/feature-libraries/modular-schema/modularChangeFamily.d.ts +1 -1
- package/lib/feature-libraries/modular-schema/modularChangeFamily.js +1 -1
- package/lib/feature-libraries/modular-schema/modularChangeFamily.js.map +1 -1
- package/lib/feature-libraries/object-forest/objectForest.d.ts +1 -1
- package/lib/feature-libraries/object-forest/objectForest.d.ts.map +1 -1
- package/lib/feature-libraries/object-forest/objectForest.js +2 -2
- package/lib/feature-libraries/object-forest/objectForest.js.map +1 -1
- package/lib/feature-libraries/sequence-field/formatV1.d.ts +1 -1
- package/lib/feature-libraries/sequence-field/formatV1.js.map +1 -1
- package/lib/feature-libraries/sequence-field/formatV2.d.ts +1 -1
- package/lib/feature-libraries/sequence-field/formatV2.js.map +1 -1
- package/lib/feature-libraries/sequence-field/formatV3.d.ts +1 -1
- package/lib/feature-libraries/sequence-field/formatV3.js.map +1 -1
- package/lib/index.d.ts +2 -2
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +2 -2
- package/lib/index.js.map +1 -1
- package/lib/legacy.d.ts +13 -0
- 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.map +1 -1
- package/lib/shared-tree/independentView.js +2 -1
- package/lib/shared-tree/independentView.js.map +1 -1
- package/lib/shared-tree/schematizingTreeView.d.ts +4 -3
- package/lib/shared-tree/schematizingTreeView.d.ts.map +1 -1
- package/lib/shared-tree/schematizingTreeView.js +2 -2
- package/lib/shared-tree/schematizingTreeView.js.map +1 -1
- package/lib/shared-tree/sharedTree.d.ts +1 -1
- package/lib/shared-tree/sharedTree.js +1 -1
- package/lib/shared-tree/sharedTree.js.map +1 -1
- package/lib/shared-tree/treeAlpha.d.ts +28 -2
- package/lib/shared-tree/treeAlpha.d.ts.map +1 -1
- package/lib/shared-tree/treeAlpha.js +13 -1
- package/lib/shared-tree/treeAlpha.js.map +1 -1
- package/lib/shared-tree/treeCheckout.d.ts +1 -1
- package/lib/shared-tree/treeCheckout.js +1 -1
- package/lib/shared-tree/treeCheckout.js.map +1 -1
- package/lib/shared-tree-core/sharedTreeCore.js +1 -1
- package/lib/shared-tree-core/sharedTreeCore.js.map +1 -1
- package/lib/shared-tree-core/transaction.d.ts +2 -2
- package/lib/shared-tree-core/transaction.js.map +1 -1
- package/lib/simple-tree/api/incrementalAllowedTypes.d.ts +47 -0
- package/lib/simple-tree/api/incrementalAllowedTypes.d.ts.map +1 -0
- package/lib/simple-tree/api/incrementalAllowedTypes.js +86 -0
- package/lib/simple-tree/api/incrementalAllowedTypes.js.map +1 -0
- package/lib/simple-tree/api/index.d.ts +2 -1
- package/lib/simple-tree/api/index.d.ts.map +1 -1
- package/lib/simple-tree/api/index.js +1 -0
- package/lib/simple-tree/api/index.js.map +1 -1
- package/lib/simple-tree/api/schemaFactoryBeta.d.ts +2 -2
- 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/tree.d.ts +51 -37
- 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/core/allowedTypes.d.ts +10 -11
- package/lib/simple-tree/core/allowedTypes.d.ts.map +1 -1
- package/lib/simple-tree/core/allowedTypes.js +1 -1
- package/lib/simple-tree/core/allowedTypes.js.map +1 -1
- package/lib/simple-tree/core/index.d.ts +1 -1
- package/lib/simple-tree/core/index.d.ts.map +1 -1
- package/lib/simple-tree/core/index.js +1 -1
- package/lib/simple-tree/core/index.js.map +1 -1
- package/lib/simple-tree/core/treeNodeSchema.d.ts +3 -8
- package/lib/simple-tree/core/treeNodeSchema.d.ts.map +1 -1
- package/lib/simple-tree/core/treeNodeSchema.js.map +1 -1
- package/lib/simple-tree/core/treeNodeValid.d.ts +2 -2
- package/lib/simple-tree/core/treeNodeValid.d.ts.map +1 -1
- package/lib/simple-tree/core/treeNodeValid.js +2 -2
- package/lib/simple-tree/core/treeNodeValid.js.map +1 -1
- package/lib/simple-tree/core/walkSchema.d.ts.map +1 -1
- package/lib/simple-tree/core/walkSchema.js +1 -1
- package/lib/simple-tree/core/walkSchema.js.map +1 -1
- package/lib/simple-tree/core/withType.d.ts +20 -0
- package/lib/simple-tree/core/withType.d.ts.map +1 -1
- package/lib/simple-tree/core/withType.js +20 -0
- package/lib/simple-tree/core/withType.js.map +1 -1
- package/lib/simple-tree/createContext.d.ts.map +1 -1
- package/lib/simple-tree/createContext.js +2 -2
- package/lib/simple-tree/createContext.js.map +1 -1
- package/lib/simple-tree/index.d.ts +2 -2
- package/lib/simple-tree/index.d.ts.map +1 -1
- package/lib/simple-tree/index.js +2 -2
- package/lib/simple-tree/index.js.map +1 -1
- package/lib/simple-tree/leafNodeSchema.js +1 -1
- package/lib/simple-tree/leafNodeSchema.js.map +1 -1
- package/lib/simple-tree/node-kinds/array/arrayNode.d.ts.map +1 -1
- package/lib/simple-tree/node-kinds/array/arrayNode.js +1 -1
- package/lib/simple-tree/node-kinds/array/arrayNode.js.map +1 -1
- package/lib/simple-tree/node-kinds/map/mapNode.js +1 -1
- package/lib/simple-tree/node-kinds/map/mapNode.js.map +1 -1
- package/lib/simple-tree/node-kinds/object/objectNode.d.ts.map +1 -1
- package/lib/simple-tree/node-kinds/object/objectNode.js +1 -1
- package/lib/simple-tree/node-kinds/object/objectNode.js.map +1 -1
- package/lib/simple-tree/node-kinds/record/recordNode.js +1 -1
- package/lib/simple-tree/node-kinds/record/recordNode.js.map +1 -1
- package/lib/simple-tree/unhydratedFlexTreeFromInsertable.d.ts +1 -0
- package/lib/simple-tree/unhydratedFlexTreeFromInsertable.d.ts.map +1 -1
- package/lib/simple-tree/unhydratedFlexTreeFromInsertable.js +13 -1
- package/lib/simple-tree/unhydratedFlexTreeFromInsertable.js.map +1 -1
- package/lib/util/nestedMap.d.ts +1 -1
- package/lib/util/nestedMap.js +1 -1
- package/lib/util/nestedMap.js.map +1 -1
- package/lib/util/referenceCounting.d.ts +1 -1
- package/lib/util/referenceCounting.js.map +1 -1
- package/package.json +21 -21
- package/src/api.ts +11 -0
- package/src/codec/codec.ts +3 -3
- package/src/core/forest/forest.ts +3 -4
- package/src/core/rebase/changeRebaser.ts +1 -1
- package/src/core/tree/detachedFieldIndex.ts +4 -1
- package/src/feature-libraries/chunked-forest/chunkTree.ts +9 -0
- package/src/feature-libraries/chunked-forest/chunkedForest.ts +3 -3
- package/src/feature-libraries/chunked-forest/codec/compressedEncode.ts +20 -58
- package/src/feature-libraries/chunked-forest/index.ts +1 -0
- package/src/feature-libraries/flex-tree/lazyField.ts +3 -1
- package/src/feature-libraries/flex-tree/utilities.ts +1 -1
- package/src/feature-libraries/forest-summary/incrementalSummaryBuilder.ts +64 -70
- package/src/feature-libraries/incrementalSummarizationUtils.ts +1 -1
- package/src/feature-libraries/index.ts +1 -0
- package/src/feature-libraries/modular-schema/modularChangeFamily.ts +1 -1
- package/src/feature-libraries/object-forest/objectForest.ts +3 -3
- package/src/feature-libraries/sequence-field/formatV1.ts +1 -1
- package/src/feature-libraries/sequence-field/formatV2.ts +1 -1
- package/src/feature-libraries/sequence-field/formatV3.ts +1 -1
- package/src/index.ts +4 -1
- package/src/packageVersion.ts +1 -1
- package/src/shared-tree/independentView.ts +4 -1
- package/src/shared-tree/schematizingTreeView.ts +10 -5
- package/src/shared-tree/sharedTree.ts +1 -1
- package/src/shared-tree/treeAlpha.ts +50 -2
- package/src/shared-tree/treeCheckout.ts +1 -1
- package/src/shared-tree-core/sharedTreeCore.ts +1 -1
- package/src/shared-tree-core/transaction.ts +2 -2
- package/src/simple-tree/api/incrementalAllowedTypes.ts +107 -0
- package/src/simple-tree/api/index.ts +6 -0
- package/src/simple-tree/api/schemaFactoryBeta.ts +6 -2
- package/src/simple-tree/api/tree.ts +64 -44
- package/src/simple-tree/core/allowedTypes.ts +10 -11
- package/src/simple-tree/core/index.ts +6 -1
- package/src/simple-tree/core/treeNodeSchema.ts +3 -8
- package/src/simple-tree/core/treeNodeValid.ts +3 -3
- package/src/simple-tree/core/walkSchema.ts +1 -2
- package/src/simple-tree/core/withType.ts +24 -0
- package/src/simple-tree/createContext.ts +1 -4
- package/src/simple-tree/index.ts +5 -0
- package/src/simple-tree/leafNodeSchema.ts +1 -1
- package/src/simple-tree/node-kinds/array/arrayNode.ts +5 -2
- package/src/simple-tree/node-kinds/map/mapNode.ts +1 -1
- package/src/simple-tree/node-kinds/object/objectNode.ts +1 -4
- package/src/simple-tree/node-kinds/record/recordNode.ts +1 -1
- package/src/simple-tree/unhydratedFlexTreeFromInsertable.ts +13 -0
- package/src/util/nestedMap.ts +1 -1
- package/src/util/referenceCounting.ts +1 -1
|
@@ -15,7 +15,7 @@ export function adaptEnum<TScope extends string, const TEnum extends Record<stri
|
|
|
15
15
|
}, Record<string, never>, true, Record<string, never>, undefined>; }[keyof TEnum]>;
|
|
16
16
|
};
|
|
17
17
|
|
|
18
|
-
// @
|
|
18
|
+
// @beta @input
|
|
19
19
|
export interface AllowedTypeMetadata {
|
|
20
20
|
readonly custom?: unknown;
|
|
21
21
|
readonly stagedSchemaUpgrade?: SchemaUpgrade;
|
|
@@ -24,13 +24,13 @@ export interface AllowedTypeMetadata {
|
|
|
24
24
|
// @public @system
|
|
25
25
|
export type AllowedTypes = readonly LazyItem<TreeNodeSchema>[];
|
|
26
26
|
|
|
27
|
-
// @
|
|
27
|
+
// @beta @sealed
|
|
28
28
|
export type AllowedTypesFull<T extends readonly AnnotatedAllowedType[] = readonly AnnotatedAllowedType[]> = AnnotatedAllowedTypes<T> & UnannotateAllowedTypesList<T>;
|
|
29
29
|
|
|
30
|
-
// @
|
|
30
|
+
// @beta @sealed
|
|
31
31
|
export type AllowedTypesFullEvaluated = AllowedTypesFull<readonly AnnotatedAllowedType<TreeNodeSchema>[]>;
|
|
32
32
|
|
|
33
|
-
// @
|
|
33
|
+
// @beta @sealed @system
|
|
34
34
|
export type AllowedTypesFullFromMixed<T extends readonly (AnnotatedAllowedType | LazyItem<TreeNodeSchema>)[]> = UnannotateAllowedTypesList<T> & AnnotatedAllowedTypes<AnnotateAllowedTypesList<T>>;
|
|
35
35
|
|
|
36
36
|
// @alpha @sealed @system
|
|
@@ -39,7 +39,7 @@ export type AllowedTypesFullFromMixedUnsafe<T extends readonly Unenforced<Annota
|
|
|
39
39
|
// @alpha @sealed @system
|
|
40
40
|
export type AllowedTypesFullUnsafe<T extends readonly AnnotatedAllowedTypeUnsafe[] = readonly AnnotatedAllowedTypeUnsafe[]> = AnnotatedAllowedTypes<T> & UnannotateAllowedTypesListUnsafe<T>;
|
|
41
41
|
|
|
42
|
-
// @
|
|
42
|
+
// @beta @input
|
|
43
43
|
export interface AllowedTypesMetadata {
|
|
44
44
|
readonly custom?: unknown;
|
|
45
45
|
}
|
|
@@ -47,7 +47,7 @@ export interface AllowedTypesMetadata {
|
|
|
47
47
|
// @alpha
|
|
48
48
|
export function allowUnused<T>(t?: T): void;
|
|
49
49
|
|
|
50
|
-
// @
|
|
50
|
+
// @beta @system
|
|
51
51
|
export type AnnotateAllowedTypesList<T extends readonly (AnnotatedAllowedType | LazyItem<TreeNodeSchema>)[]> = {
|
|
52
52
|
[I in keyof T]: T[I] extends AnnotatedAllowedType<unknown> ? T[I] : AnnotatedAllowedType<T[I]>;
|
|
53
53
|
};
|
|
@@ -57,13 +57,13 @@ export type AnnotateAllowedTypesListUnsafe<T extends readonly Unenforced<Annotat
|
|
|
57
57
|
[I in keyof T]: T[I] extends AnnotatedAllowedTypeUnsafe ? T[I] : AnnotatedAllowedTypeUnsafe<T[I]>;
|
|
58
58
|
};
|
|
59
59
|
|
|
60
|
-
// @
|
|
60
|
+
// @beta @sealed
|
|
61
61
|
export interface AnnotatedAllowedType<T = LazyItem<TreeNodeSchema>> {
|
|
62
62
|
readonly metadata: AllowedTypeMetadata;
|
|
63
63
|
readonly type: T;
|
|
64
64
|
}
|
|
65
65
|
|
|
66
|
-
// @
|
|
66
|
+
// @beta @sealed
|
|
67
67
|
export interface AnnotatedAllowedTypes<T = readonly AnnotatedAllowedType[]> extends ErasedBaseType<"tree.AnnotatedAllowedTypes"> {
|
|
68
68
|
evaluate(): AllowedTypesFullEvaluated;
|
|
69
69
|
evaluateIdentifiers(): ReadonlySet<string>;
|
|
@@ -117,6 +117,9 @@ export const ArrayNodeSchema: {
|
|
|
117
117
|
// @alpha
|
|
118
118
|
export function asAlpha<TSchema extends ImplicitFieldSchema>(view: TreeView<TSchema>): TreeViewAlpha<TSchema>;
|
|
119
119
|
|
|
120
|
+
// @beta
|
|
121
|
+
export function asBeta<TSchema extends ImplicitFieldSchema>(view: TreeView<TSchema>): TreeViewBeta<TSchema>;
|
|
122
|
+
|
|
120
123
|
// @alpha @deprecated
|
|
121
124
|
export function asTreeViewAlpha<TSchema extends ImplicitFieldSchema>(view: TreeView<TSchema>): TreeViewAlpha<TSchema>;
|
|
122
125
|
|
|
@@ -163,6 +166,9 @@ export type ConciseTree<THandle = IFluidHandle> = Exclude<TreeLeafValue, IFluidH
|
|
|
163
166
|
// @beta
|
|
164
167
|
export function configuredSharedTreeBeta(options: SharedTreeOptionsBeta): SharedObjectKind<ITree>;
|
|
165
168
|
|
|
169
|
+
// @alpha
|
|
170
|
+
export const contentSchemaSymbol: unique symbol;
|
|
171
|
+
|
|
166
172
|
// @alpha
|
|
167
173
|
export function createIdentifierIndex<TSchema extends ImplicitFieldSchema>(view: TreeView<TSchema>): IdentifierIndex;
|
|
168
174
|
|
|
@@ -926,9 +932,9 @@ export class SchemaFactoryAlpha<out TScope extends string | undefined = string |
|
|
|
926
932
|
|
|
927
933
|
// @beta
|
|
928
934
|
export class SchemaFactoryBeta<out TScope extends string | undefined = string | undefined, TName extends number | string = string> extends SchemaFactory<TScope, TName> {
|
|
929
|
-
object<const Name extends TName, const T extends RestrictiveStringRecord<ImplicitFieldSchema>, const TCustomMetadata = unknown>(name: Name, fields: T, options?: ObjectSchemaOptions<TCustomMetadata>): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Object, TreeObjectNode<T, ScopedSchemaName<TScope, Name>>, object & InsertableObjectFromSchemaRecord<T>, true, T>;
|
|
935
|
+
object<const Name extends TName, const T extends RestrictiveStringRecord<ImplicitFieldSchema>, const TCustomMetadata = unknown>(name: Name, fields: T, options?: ObjectSchemaOptions<TCustomMetadata>): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Object, TreeObjectNode<T, ScopedSchemaName<TScope, Name>>, object & InsertableObjectFromSchemaRecord<T>, true, T, never, TCustomMetadata>;
|
|
930
936
|
// (undocumented)
|
|
931
|
-
objectRecursive<const Name extends TName, const T extends RestrictiveStringRecord<System_Unsafe.ImplicitFieldSchemaUnsafe>, const TCustomMetadata = unknown>(name: Name, t: T, options?: ObjectSchemaOptions<TCustomMetadata>): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Object, System_Unsafe.TreeObjectNodeUnsafe<T, ScopedSchemaName<TScope, Name>>, object & System_Unsafe.InsertableObjectFromSchemaRecordUnsafe<T>, false, T>;
|
|
937
|
+
objectRecursive<const Name extends TName, const T extends RestrictiveStringRecord<System_Unsafe.ImplicitFieldSchemaUnsafe>, const TCustomMetadata = unknown>(name: Name, t: T, options?: ObjectSchemaOptions<TCustomMetadata>): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Object, System_Unsafe.TreeObjectNodeUnsafe<T, ScopedSchemaName<TScope, Name>>, object & System_Unsafe.InsertableObjectFromSchemaRecordUnsafe<T>, false, T, never, TCustomMetadata>;
|
|
932
938
|
record<const T extends TreeNodeSchema | readonly TreeNodeSchema[]>(allowedTypes: T): TreeNodeSchemaNonClass<ScopedSchemaName<TScope, `Record<${string}>`>, NodeKind.Record, TreeRecordNode<T> & WithType<ScopedSchemaName<TScope, `Record<${string}>`>, NodeKind.Record>, RecordNodeInsertableData<T>, true, T, undefined>;
|
|
933
939
|
record<const Name extends TName, const T extends ImplicitAllowedTypes, const TCustomMetadata = unknown>(name: Name, allowedTypes: T, options?: NodeSchemaOptions<TCustomMetadata>): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Record, TreeRecordNode<T> & WithType<ScopedSchemaName<TScope, Name>, NodeKind.Record>, RecordNodeInsertableData<T>, true, T, undefined, TCustomMetadata>;
|
|
934
940
|
recordRecursive<Name extends TName, const T extends System_Unsafe.ImplicitAllowedTypesUnsafe, const TCustomMetadata = unknown>(name: Name, allowedTypes: T, options?: NodeSchemaOptions<TCustomMetadata>): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Record, TreeRecordNodeUnsafe<T> & WithType<ScopedSchemaName<TScope, Name>, NodeKind.Record, unknown>, {
|
|
@@ -965,7 +971,7 @@ export interface SchemaStaticsAlpha {
|
|
|
965
971
|
readonly typesRecursive: <const T extends readonly Unenforced<AnnotatedAllowedType | LazyItem<TreeNodeSchema>>[]>(t: T, metadata?: AllowedTypesMetadata) => AllowedTypesFullFromMixedUnsafe<T>;
|
|
966
972
|
}
|
|
967
973
|
|
|
968
|
-
// @
|
|
974
|
+
// @beta @sealed
|
|
969
975
|
export class SchemaUpgrade {
|
|
970
976
|
// (undocumented)
|
|
971
977
|
protected _typeCheck: MakeNominal;
|
|
@@ -1344,7 +1350,7 @@ export const Tree: Tree;
|
|
|
1344
1350
|
|
|
1345
1351
|
// @alpha @sealed @system
|
|
1346
1352
|
export interface TreeAlpha {
|
|
1347
|
-
branch(node: TreeNode):
|
|
1353
|
+
branch(node: TreeNode): TreeBranchAlpha | undefined;
|
|
1348
1354
|
child(node: TreeNode, key: string | number): TreeNode | TreeLeafValue | undefined;
|
|
1349
1355
|
children(node: TreeNode): Iterable<[propertyKey: string | number, child: TreeNode | TreeLeafValue]>;
|
|
1350
1356
|
create<const TSchema extends ImplicitFieldSchema | UnsafeUnknownSchema>(schema: UnsafeUnknownSchema extends TSchema ? ImplicitFieldSchema : TSchema & ImplicitFieldSchema, data: InsertableField<TSchema>): Unhydrated<TSchema extends ImplicitFieldSchema ? TreeFieldFromImplicitField<TSchema> : TreeNode | TreeLeafValue | undefined>;
|
|
@@ -1361,6 +1367,7 @@ export interface TreeAlpha {
|
|
|
1361
1367
|
importConcise<const TSchema extends ImplicitFieldSchema | UnsafeUnknownSchema>(schema: UnsafeUnknownSchema extends TSchema ? ImplicitFieldSchema : TSchema & ImplicitFieldSchema, data: ConciseTree | undefined): Unhydrated<TSchema extends ImplicitFieldSchema ? TreeFieldFromImplicitField<TSchema> : TreeNode | TreeLeafValue | undefined>;
|
|
1362
1368
|
importVerbose<const TSchema extends ImplicitFieldSchema>(schema: TSchema, data: VerboseTree | undefined, options?: TreeParsingOptions): Unhydrated<TreeFieldFromImplicitField<TSchema>>;
|
|
1363
1369
|
key2(node: TreeNode): string | number | undefined;
|
|
1370
|
+
tagContentSchema<TSchema extends TreeNodeSchema, TContent extends InsertableField<TSchema>>(schema: TSchema, content: TContent): TContent;
|
|
1364
1371
|
trackObservations<TResult>(onInvalidation: () => void, trackDuring: () => TResult): ObservationResults<TResult>;
|
|
1365
1372
|
trackObservationsOnce<TResult>(onInvalidation: () => void, trackDuring: () => TResult): ObservationResults<TResult>;
|
|
1366
1373
|
}
|
|
@@ -1408,14 +1415,20 @@ export interface TreeBeta {
|
|
|
1408
1415
|
// @beta
|
|
1409
1416
|
export const TreeBeta: TreeBeta;
|
|
1410
1417
|
|
|
1411
|
-
// @
|
|
1418
|
+
// @beta @sealed
|
|
1412
1419
|
export interface TreeBranch extends IDisposable {
|
|
1413
1420
|
dispose(error?: Error): void;
|
|
1414
|
-
readonly events: Listenable_2<TreeBranchEvents>;
|
|
1415
1421
|
fork(): TreeBranch;
|
|
1416
|
-
hasRootSchema<TSchema extends ImplicitFieldSchema>(schema: TSchema): this is TreeViewAlpha<TSchema>;
|
|
1417
1422
|
merge(branch: TreeBranch, disposeMerged?: boolean): void;
|
|
1418
1423
|
rebaseOnto(branch: TreeBranch): void;
|
|
1424
|
+
}
|
|
1425
|
+
|
|
1426
|
+
// @alpha @sealed
|
|
1427
|
+
export interface TreeBranchAlpha extends TreeBranch {
|
|
1428
|
+
readonly events: Listenable_2<TreeBranchEvents>;
|
|
1429
|
+
// (undocumented)
|
|
1430
|
+
fork(): TreeBranchAlpha;
|
|
1431
|
+
hasRootSchema<TSchema extends ImplicitFieldSchema>(schema: TSchema): this is TreeViewAlpha<TSchema>;
|
|
1419
1432
|
runTransaction<TSuccessValue, TFailureValue>(transaction: () => TransactionCallbackStatus<TSuccessValue, TFailureValue>, params?: RunTransactionParams): TransactionResultExt<TSuccessValue, TFailureValue>;
|
|
1420
1433
|
runTransaction(transaction: () => VoidTransactionCallbackStatus | void, params?: RunTransactionParams): TransactionResult;
|
|
1421
1434
|
}
|
|
@@ -1595,7 +1608,7 @@ export interface TreeView<in out TSchema extends ImplicitFieldSchema> extends ID
|
|
|
1595
1608
|
}
|
|
1596
1609
|
|
|
1597
1610
|
// @alpha @sealed
|
|
1598
|
-
export interface TreeViewAlpha<in out TSchema extends ImplicitFieldSchema | UnsafeUnknownSchema> extends Omit<
|
|
1611
|
+
export interface TreeViewAlpha<in out TSchema extends ImplicitFieldSchema | UnsafeUnknownSchema> extends Omit<TreeViewBeta<ReadSchema<TSchema>>, "root" | "initialize" | "fork">, TreeBranchAlpha {
|
|
1599
1612
|
// (undocumented)
|
|
1600
1613
|
readonly events: Listenable_2<TreeViewEvents & TreeBranchEvents>;
|
|
1601
1614
|
// (undocumented)
|
|
@@ -1607,6 +1620,12 @@ export interface TreeViewAlpha<in out TSchema extends ImplicitFieldSchema | Unsa
|
|
|
1607
1620
|
set root(newRoot: InsertableField<TSchema>);
|
|
1608
1621
|
}
|
|
1609
1622
|
|
|
1623
|
+
// @beta @sealed
|
|
1624
|
+
export interface TreeViewBeta<in out TSchema extends ImplicitFieldSchema> extends TreeView<TSchema>, TreeBranch {
|
|
1625
|
+
// (undocumented)
|
|
1626
|
+
fork(): ReturnType<TreeBranch["fork"]> & TreeViewBeta<TSchema>;
|
|
1627
|
+
}
|
|
1628
|
+
|
|
1610
1629
|
// @public @sealed
|
|
1611
1630
|
export class TreeViewConfiguration<const TSchema extends ImplicitFieldSchema = ImplicitFieldSchema> implements Required<ITreeViewConfiguration<TSchema>> {
|
|
1612
1631
|
constructor(props: ITreeViewConfiguration<TSchema>);
|
|
@@ -1638,7 +1657,7 @@ const typeNameSymbol: unique symbol;
|
|
|
1638
1657
|
// @public @system
|
|
1639
1658
|
export const typeSchemaSymbol: unique symbol;
|
|
1640
1659
|
|
|
1641
|
-
// @
|
|
1660
|
+
// @beta @system
|
|
1642
1661
|
export type UnannotateAllowedTypesList<T extends readonly (AnnotatedAllowedType | LazyItem<TreeNodeSchema>)[]> = {
|
|
1643
1662
|
[I in keyof T]: T[I] extends AnnotatedAllowedType<infer X> ? X : T[I];
|
|
1644
1663
|
};
|
|
@@ -15,9 +15,49 @@ export function adaptEnum<TScope extends string, const TEnum extends Record<stri
|
|
|
15
15
|
}, Record<string, never>, true, Record<string, never>, undefined>; }[keyof TEnum]>;
|
|
16
16
|
};
|
|
17
17
|
|
|
18
|
+
// @beta @input
|
|
19
|
+
export interface AllowedTypeMetadata {
|
|
20
|
+
readonly custom?: unknown;
|
|
21
|
+
readonly stagedSchemaUpgrade?: SchemaUpgrade;
|
|
22
|
+
}
|
|
23
|
+
|
|
18
24
|
// @public @system
|
|
19
25
|
export type AllowedTypes = readonly LazyItem<TreeNodeSchema>[];
|
|
20
26
|
|
|
27
|
+
// @beta @sealed
|
|
28
|
+
export type AllowedTypesFull<T extends readonly AnnotatedAllowedType[] = readonly AnnotatedAllowedType[]> = AnnotatedAllowedTypes<T> & UnannotateAllowedTypesList<T>;
|
|
29
|
+
|
|
30
|
+
// @beta @sealed
|
|
31
|
+
export type AllowedTypesFullEvaluated = AllowedTypesFull<readonly AnnotatedAllowedType<TreeNodeSchema>[]>;
|
|
32
|
+
|
|
33
|
+
// @beta @sealed @system
|
|
34
|
+
export type AllowedTypesFullFromMixed<T extends readonly (AnnotatedAllowedType | LazyItem<TreeNodeSchema>)[]> = UnannotateAllowedTypesList<T> & AnnotatedAllowedTypes<AnnotateAllowedTypesList<T>>;
|
|
35
|
+
|
|
36
|
+
// @beta @input
|
|
37
|
+
export interface AllowedTypesMetadata {
|
|
38
|
+
readonly custom?: unknown;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
// @beta @system
|
|
42
|
+
export type AnnotateAllowedTypesList<T extends readonly (AnnotatedAllowedType | LazyItem<TreeNodeSchema>)[]> = {
|
|
43
|
+
[I in keyof T]: T[I] extends AnnotatedAllowedType<unknown> ? T[I] : AnnotatedAllowedType<T[I]>;
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
// @beta @sealed
|
|
47
|
+
export interface AnnotatedAllowedType<T = LazyItem<TreeNodeSchema>> {
|
|
48
|
+
readonly metadata: AllowedTypeMetadata;
|
|
49
|
+
readonly type: T;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
// @beta @sealed
|
|
53
|
+
export interface AnnotatedAllowedTypes<T = readonly AnnotatedAllowedType[]> extends ErasedBaseType<"tree.AnnotatedAllowedTypes"> {
|
|
54
|
+
evaluate(): AllowedTypesFullEvaluated;
|
|
55
|
+
evaluateIdentifiers(): ReadonlySet<string>;
|
|
56
|
+
evaluateSet(): ReadonlySet<TreeNodeSchema>;
|
|
57
|
+
readonly metadata: AllowedTypesMetadata;
|
|
58
|
+
readonly types: T;
|
|
59
|
+
}
|
|
60
|
+
|
|
21
61
|
// @public @system
|
|
22
62
|
type ApplyKind<T, Kind extends FieldKind> = {
|
|
23
63
|
[FieldKind.Required]: T;
|
|
@@ -30,6 +70,9 @@ type ApplyKindInput<T, Kind extends FieldKind, DefaultsAreOptional extends boole
|
|
|
30
70
|
Kind
|
|
31
71
|
] extends [FieldKind.Required] ? T : [Kind] extends [FieldKind.Optional] ? T | undefined : [Kind] extends [FieldKind.Identifier] ? DefaultsAreOptional extends true ? T | undefined : T : never;
|
|
32
72
|
|
|
73
|
+
// @beta
|
|
74
|
+
export function asBeta<TSchema extends ImplicitFieldSchema>(view: TreeView<TSchema>): TreeViewBeta<TSchema>;
|
|
75
|
+
|
|
33
76
|
// @public
|
|
34
77
|
export enum CommitKind {
|
|
35
78
|
Default = 0,
|
|
@@ -443,9 +486,9 @@ export const SchemaFactory_base: SchemaStatics & (new () => SchemaStatics);
|
|
|
443
486
|
|
|
444
487
|
// @beta
|
|
445
488
|
export class SchemaFactoryBeta<out TScope extends string | undefined = string | undefined, TName extends number | string = string> extends SchemaFactory<TScope, TName> {
|
|
446
|
-
object<const Name extends TName, const T extends RestrictiveStringRecord<ImplicitFieldSchema>, const TCustomMetadata = unknown>(name: Name, fields: T, options?: ObjectSchemaOptions<TCustomMetadata>): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Object, TreeObjectNode<T, ScopedSchemaName<TScope, Name>>, object & InsertableObjectFromSchemaRecord<T>, true, T>;
|
|
489
|
+
object<const Name extends TName, const T extends RestrictiveStringRecord<ImplicitFieldSchema>, const TCustomMetadata = unknown>(name: Name, fields: T, options?: ObjectSchemaOptions<TCustomMetadata>): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Object, TreeObjectNode<T, ScopedSchemaName<TScope, Name>>, object & InsertableObjectFromSchemaRecord<T>, true, T, never, TCustomMetadata>;
|
|
447
490
|
// (undocumented)
|
|
448
|
-
objectRecursive<const Name extends TName, const T extends RestrictiveStringRecord<System_Unsafe.ImplicitFieldSchemaUnsafe>, const TCustomMetadata = unknown>(name: Name, t: T, options?: ObjectSchemaOptions<TCustomMetadata>): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Object, System_Unsafe.TreeObjectNodeUnsafe<T, ScopedSchemaName<TScope, Name>>, object & System_Unsafe.InsertableObjectFromSchemaRecordUnsafe<T>, false, T>;
|
|
491
|
+
objectRecursive<const Name extends TName, const T extends RestrictiveStringRecord<System_Unsafe.ImplicitFieldSchemaUnsafe>, const TCustomMetadata = unknown>(name: Name, t: T, options?: ObjectSchemaOptions<TCustomMetadata>): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Object, System_Unsafe.TreeObjectNodeUnsafe<T, ScopedSchemaName<TScope, Name>>, object & System_Unsafe.InsertableObjectFromSchemaRecordUnsafe<T>, false, T, never, TCustomMetadata>;
|
|
449
492
|
record<const T extends TreeNodeSchema | readonly TreeNodeSchema[]>(allowedTypes: T): TreeNodeSchemaNonClass<ScopedSchemaName<TScope, `Record<${string}>`>, NodeKind.Record, TreeRecordNode<T> & WithType<ScopedSchemaName<TScope, `Record<${string}>`>, NodeKind.Record>, RecordNodeInsertableData<T>, true, T, undefined>;
|
|
450
493
|
record<const Name extends TName, const T extends ImplicitAllowedTypes, const TCustomMetadata = unknown>(name: Name, allowedTypes: T, options?: NodeSchemaOptions<TCustomMetadata>): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Record, TreeRecordNode<T> & WithType<ScopedSchemaName<TScope, Name>, NodeKind.Record>, RecordNodeInsertableData<T>, true, T, undefined, TCustomMetadata>;
|
|
451
494
|
recordRecursive<Name extends TName, const T extends System_Unsafe.ImplicitAllowedTypesUnsafe, const TCustomMetadata = unknown>(name: Name, allowedTypes: T, options?: NodeSchemaOptions<TCustomMetadata>): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Record, TreeRecordNodeUnsafe<T> & WithType<ScopedSchemaName<TScope, Name>, NodeKind.Record, unknown>, {
|
|
@@ -474,6 +517,12 @@ export interface SchemaStatics {
|
|
|
474
517
|
readonly string: LeafSchema<"string", string>;
|
|
475
518
|
}
|
|
476
519
|
|
|
520
|
+
// @beta @sealed
|
|
521
|
+
export class SchemaUpgrade {
|
|
522
|
+
// (undocumented)
|
|
523
|
+
protected _typeCheck: MakeNominal;
|
|
524
|
+
}
|
|
525
|
+
|
|
477
526
|
// @public @system
|
|
478
527
|
type ScopedSchemaName<TScope extends string | undefined, TName extends number | string> = TScope extends undefined ? `${TName}` : `${TScope}.${TName}`;
|
|
479
528
|
|
|
@@ -626,6 +675,14 @@ export interface TreeBeta {
|
|
|
626
675
|
// @beta
|
|
627
676
|
export const TreeBeta: TreeBeta;
|
|
628
677
|
|
|
678
|
+
// @beta @sealed
|
|
679
|
+
export interface TreeBranch extends IDisposable {
|
|
680
|
+
dispose(error?: Error): void;
|
|
681
|
+
fork(): TreeBranch;
|
|
682
|
+
merge(branch: TreeBranch, disposeMerged?: boolean): void;
|
|
683
|
+
rebaseOnto(branch: TreeBranch): void;
|
|
684
|
+
}
|
|
685
|
+
|
|
629
686
|
// @public @sealed
|
|
630
687
|
export interface TreeChangeEvents {
|
|
631
688
|
nodeChanged(unstable?: unknown): void;
|
|
@@ -749,6 +806,12 @@ export interface TreeView<in out TSchema extends ImplicitFieldSchema> extends ID
|
|
|
749
806
|
upgradeSchema(): void;
|
|
750
807
|
}
|
|
751
808
|
|
|
809
|
+
// @beta @sealed
|
|
810
|
+
export interface TreeViewBeta<in out TSchema extends ImplicitFieldSchema> extends TreeView<TSchema>, TreeBranch {
|
|
811
|
+
// (undocumented)
|
|
812
|
+
fork(): ReturnType<TreeBranch["fork"]> & TreeViewBeta<TSchema>;
|
|
813
|
+
}
|
|
814
|
+
|
|
752
815
|
// @public @sealed
|
|
753
816
|
export class TreeViewConfiguration<const TSchema extends ImplicitFieldSchema = ImplicitFieldSchema> implements Required<ITreeViewConfiguration<TSchema>> {
|
|
754
817
|
constructor(props: ITreeViewConfiguration<TSchema>);
|
|
@@ -773,6 +836,11 @@ const typeNameSymbol: unique symbol;
|
|
|
773
836
|
// @public @system
|
|
774
837
|
export const typeSchemaSymbol: unique symbol;
|
|
775
838
|
|
|
839
|
+
// @beta @system
|
|
840
|
+
export type UnannotateAllowedTypesList<T extends readonly (AnnotatedAllowedType | LazyItem<TreeNodeSchema>)[]> = {
|
|
841
|
+
[I in keyof T]: T[I] extends AnnotatedAllowedType<infer X> ? X : T[I];
|
|
842
|
+
};
|
|
843
|
+
|
|
776
844
|
// @public
|
|
777
845
|
export type Unenforced<_DesiredExtendsConstraint> = unknown;
|
|
778
846
|
|
|
@@ -15,9 +15,49 @@ export function adaptEnum<TScope extends string, const TEnum extends Record<stri
|
|
|
15
15
|
}, Record<string, never>, true, Record<string, never>, undefined>; }[keyof TEnum]>;
|
|
16
16
|
};
|
|
17
17
|
|
|
18
|
+
// @beta @input
|
|
19
|
+
export interface AllowedTypeMetadata {
|
|
20
|
+
readonly custom?: unknown;
|
|
21
|
+
readonly stagedSchemaUpgrade?: SchemaUpgrade;
|
|
22
|
+
}
|
|
23
|
+
|
|
18
24
|
// @public @system
|
|
19
25
|
export type AllowedTypes = readonly LazyItem<TreeNodeSchema>[];
|
|
20
26
|
|
|
27
|
+
// @beta @sealed
|
|
28
|
+
export type AllowedTypesFull<T extends readonly AnnotatedAllowedType[] = readonly AnnotatedAllowedType[]> = AnnotatedAllowedTypes<T> & UnannotateAllowedTypesList<T>;
|
|
29
|
+
|
|
30
|
+
// @beta @sealed
|
|
31
|
+
export type AllowedTypesFullEvaluated = AllowedTypesFull<readonly AnnotatedAllowedType<TreeNodeSchema>[]>;
|
|
32
|
+
|
|
33
|
+
// @beta @sealed @system
|
|
34
|
+
export type AllowedTypesFullFromMixed<T extends readonly (AnnotatedAllowedType | LazyItem<TreeNodeSchema>)[]> = UnannotateAllowedTypesList<T> & AnnotatedAllowedTypes<AnnotateAllowedTypesList<T>>;
|
|
35
|
+
|
|
36
|
+
// @beta @input
|
|
37
|
+
export interface AllowedTypesMetadata {
|
|
38
|
+
readonly custom?: unknown;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
// @beta @system
|
|
42
|
+
export type AnnotateAllowedTypesList<T extends readonly (AnnotatedAllowedType | LazyItem<TreeNodeSchema>)[]> = {
|
|
43
|
+
[I in keyof T]: T[I] extends AnnotatedAllowedType<unknown> ? T[I] : AnnotatedAllowedType<T[I]>;
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
// @beta @sealed
|
|
47
|
+
export interface AnnotatedAllowedType<T = LazyItem<TreeNodeSchema>> {
|
|
48
|
+
readonly metadata: AllowedTypeMetadata;
|
|
49
|
+
readonly type: T;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
// @beta @sealed
|
|
53
|
+
export interface AnnotatedAllowedTypes<T = readonly AnnotatedAllowedType[]> extends ErasedBaseType<"tree.AnnotatedAllowedTypes"> {
|
|
54
|
+
evaluate(): AllowedTypesFullEvaluated;
|
|
55
|
+
evaluateIdentifiers(): ReadonlySet<string>;
|
|
56
|
+
evaluateSet(): ReadonlySet<TreeNodeSchema>;
|
|
57
|
+
readonly metadata: AllowedTypesMetadata;
|
|
58
|
+
readonly types: T;
|
|
59
|
+
}
|
|
60
|
+
|
|
21
61
|
// @public @system
|
|
22
62
|
type ApplyKind<T, Kind extends FieldKind> = {
|
|
23
63
|
[FieldKind.Required]: T;
|
|
@@ -30,6 +70,9 @@ type ApplyKindInput<T, Kind extends FieldKind, DefaultsAreOptional extends boole
|
|
|
30
70
|
Kind
|
|
31
71
|
] extends [FieldKind.Required] ? T : [Kind] extends [FieldKind.Optional] ? T | undefined : [Kind] extends [FieldKind.Identifier] ? DefaultsAreOptional extends true ? T | undefined : T : never;
|
|
32
72
|
|
|
73
|
+
// @beta
|
|
74
|
+
export function asBeta<TSchema extends ImplicitFieldSchema>(view: TreeView<TSchema>): TreeViewBeta<TSchema>;
|
|
75
|
+
|
|
33
76
|
// @public
|
|
34
77
|
export enum CommitKind {
|
|
35
78
|
Default = 0,
|
|
@@ -446,9 +489,9 @@ export const SchemaFactory_base: SchemaStatics & (new () => SchemaStatics);
|
|
|
446
489
|
|
|
447
490
|
// @beta
|
|
448
491
|
export class SchemaFactoryBeta<out TScope extends string | undefined = string | undefined, TName extends number | string = string> extends SchemaFactory<TScope, TName> {
|
|
449
|
-
object<const Name extends TName, const T extends RestrictiveStringRecord<ImplicitFieldSchema>, const TCustomMetadata = unknown>(name: Name, fields: T, options?: ObjectSchemaOptions<TCustomMetadata>): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Object, TreeObjectNode<T, ScopedSchemaName<TScope, Name>>, object & InsertableObjectFromSchemaRecord<T>, true, T>;
|
|
492
|
+
object<const Name extends TName, const T extends RestrictiveStringRecord<ImplicitFieldSchema>, const TCustomMetadata = unknown>(name: Name, fields: T, options?: ObjectSchemaOptions<TCustomMetadata>): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Object, TreeObjectNode<T, ScopedSchemaName<TScope, Name>>, object & InsertableObjectFromSchemaRecord<T>, true, T, never, TCustomMetadata>;
|
|
450
493
|
// (undocumented)
|
|
451
|
-
objectRecursive<const Name extends TName, const T extends RestrictiveStringRecord<System_Unsafe.ImplicitFieldSchemaUnsafe>, const TCustomMetadata = unknown>(name: Name, t: T, options?: ObjectSchemaOptions<TCustomMetadata>): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Object, System_Unsafe.TreeObjectNodeUnsafe<T, ScopedSchemaName<TScope, Name>>, object & System_Unsafe.InsertableObjectFromSchemaRecordUnsafe<T>, false, T>;
|
|
494
|
+
objectRecursive<const Name extends TName, const T extends RestrictiveStringRecord<System_Unsafe.ImplicitFieldSchemaUnsafe>, const TCustomMetadata = unknown>(name: Name, t: T, options?: ObjectSchemaOptions<TCustomMetadata>): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Object, System_Unsafe.TreeObjectNodeUnsafe<T, ScopedSchemaName<TScope, Name>>, object & System_Unsafe.InsertableObjectFromSchemaRecordUnsafe<T>, false, T, never, TCustomMetadata>;
|
|
452
495
|
record<const T extends TreeNodeSchema | readonly TreeNodeSchema[]>(allowedTypes: T): TreeNodeSchemaNonClass<ScopedSchemaName<TScope, `Record<${string}>`>, NodeKind.Record, TreeRecordNode<T> & WithType<ScopedSchemaName<TScope, `Record<${string}>`>, NodeKind.Record>, RecordNodeInsertableData<T>, true, T, undefined>;
|
|
453
496
|
record<const Name extends TName, const T extends ImplicitAllowedTypes, const TCustomMetadata = unknown>(name: Name, allowedTypes: T, options?: NodeSchemaOptions<TCustomMetadata>): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Record, TreeRecordNode<T> & WithType<ScopedSchemaName<TScope, Name>, NodeKind.Record>, RecordNodeInsertableData<T>, true, T, undefined, TCustomMetadata>;
|
|
454
497
|
recordRecursive<Name extends TName, const T extends System_Unsafe.ImplicitAllowedTypesUnsafe, const TCustomMetadata = unknown>(name: Name, allowedTypes: T, options?: NodeSchemaOptions<TCustomMetadata>): TreeNodeSchemaClass<ScopedSchemaName<TScope, Name>, NodeKind.Record, TreeRecordNodeUnsafe<T> & WithType<ScopedSchemaName<TScope, Name>, NodeKind.Record, unknown>, {
|
|
@@ -477,6 +520,12 @@ export interface SchemaStatics {
|
|
|
477
520
|
readonly string: LeafSchema<"string", string>;
|
|
478
521
|
}
|
|
479
522
|
|
|
523
|
+
// @beta @sealed
|
|
524
|
+
export class SchemaUpgrade {
|
|
525
|
+
// (undocumented)
|
|
526
|
+
protected _typeCheck: MakeNominal;
|
|
527
|
+
}
|
|
528
|
+
|
|
480
529
|
// @public @system
|
|
481
530
|
type ScopedSchemaName<TScope extends string | undefined, TName extends number | string> = TScope extends undefined ? `${TName}` : `${TScope}.${TName}`;
|
|
482
531
|
|
|
@@ -638,6 +687,14 @@ export interface TreeBeta {
|
|
|
638
687
|
// @beta
|
|
639
688
|
export const TreeBeta: TreeBeta;
|
|
640
689
|
|
|
690
|
+
// @beta @sealed
|
|
691
|
+
export interface TreeBranch extends IDisposable {
|
|
692
|
+
dispose(error?: Error): void;
|
|
693
|
+
fork(): TreeBranch;
|
|
694
|
+
merge(branch: TreeBranch, disposeMerged?: boolean): void;
|
|
695
|
+
rebaseOnto(branch: TreeBranch): void;
|
|
696
|
+
}
|
|
697
|
+
|
|
641
698
|
// @public @sealed
|
|
642
699
|
export interface TreeChangeEvents {
|
|
643
700
|
nodeChanged(unstable?: unknown): void;
|
|
@@ -761,6 +818,12 @@ export interface TreeView<in out TSchema extends ImplicitFieldSchema> extends ID
|
|
|
761
818
|
upgradeSchema(): void;
|
|
762
819
|
}
|
|
763
820
|
|
|
821
|
+
// @beta @sealed
|
|
822
|
+
export interface TreeViewBeta<in out TSchema extends ImplicitFieldSchema> extends TreeView<TSchema>, TreeBranch {
|
|
823
|
+
// (undocumented)
|
|
824
|
+
fork(): ReturnType<TreeBranch["fork"]> & TreeViewBeta<TSchema>;
|
|
825
|
+
}
|
|
826
|
+
|
|
764
827
|
// @public @sealed
|
|
765
828
|
export class TreeViewConfiguration<const TSchema extends ImplicitFieldSchema = ImplicitFieldSchema> implements Required<ITreeViewConfiguration<TSchema>> {
|
|
766
829
|
constructor(props: ITreeViewConfiguration<TSchema>);
|
|
@@ -785,6 +848,11 @@ const typeNameSymbol: unique symbol;
|
|
|
785
848
|
// @public @system
|
|
786
849
|
export const typeSchemaSymbol: unique symbol;
|
|
787
850
|
|
|
851
|
+
// @beta @system
|
|
852
|
+
export type UnannotateAllowedTypesList<T extends readonly (AnnotatedAllowedType | LazyItem<TreeNodeSchema>)[]> = {
|
|
853
|
+
[I in keyof T]: T[I] extends AnnotatedAllowedType<infer X> ? X : T[I];
|
|
854
|
+
};
|
|
855
|
+
|
|
788
856
|
// @public
|
|
789
857
|
export type Unenforced<_DesiredExtendsConstraint> = unknown;
|
|
790
858
|
|
package/dist/alpha.d.ts
CHANGED
|
@@ -93,6 +93,14 @@ export {
|
|
|
93
93
|
// #endregion
|
|
94
94
|
|
|
95
95
|
// #region @beta APIs
|
|
96
|
+
AllowedTypeMetadata,
|
|
97
|
+
AllowedTypesFull,
|
|
98
|
+
AllowedTypesFullEvaluated,
|
|
99
|
+
AllowedTypesFullFromMixed,
|
|
100
|
+
AllowedTypesMetadata,
|
|
101
|
+
AnnotateAllowedTypesList,
|
|
102
|
+
AnnotatedAllowedType,
|
|
103
|
+
AnnotatedAllowedTypes,
|
|
96
104
|
ConciseTree,
|
|
97
105
|
FixRecursiveArraySchema,
|
|
98
106
|
FluidSerializableAsTree,
|
|
@@ -109,32 +117,29 @@ export {
|
|
|
109
117
|
PopUnion,
|
|
110
118
|
RecordNodeInsertableData,
|
|
111
119
|
SchemaFactoryBeta,
|
|
120
|
+
SchemaUpgrade,
|
|
112
121
|
SharedTreeOptionsBeta,
|
|
113
122
|
TreeBeta,
|
|
123
|
+
TreeBranch,
|
|
114
124
|
TreeChangeEventsBeta,
|
|
115
125
|
TreeEncodingOptions,
|
|
116
126
|
TreeRecordNode,
|
|
117
127
|
TreeRecordNodeUnsafe,
|
|
128
|
+
TreeViewBeta,
|
|
129
|
+
UnannotateAllowedTypesList,
|
|
118
130
|
UnionToTuple,
|
|
119
131
|
adaptEnum,
|
|
132
|
+
asBeta,
|
|
120
133
|
configuredSharedTreeBeta,
|
|
121
134
|
enumFromStrings,
|
|
122
135
|
singletonSchema,
|
|
123
136
|
// #endregion
|
|
124
137
|
|
|
125
138
|
// #region @alpha APIs
|
|
126
|
-
AllowedTypeMetadata,
|
|
127
|
-
AllowedTypesFull,
|
|
128
|
-
AllowedTypesFullEvaluated,
|
|
129
|
-
AllowedTypesFullFromMixed,
|
|
130
139
|
AllowedTypesFullFromMixedUnsafe,
|
|
131
140
|
AllowedTypesFullUnsafe,
|
|
132
|
-
AllowedTypesMetadata,
|
|
133
|
-
AnnotateAllowedTypesList,
|
|
134
141
|
AnnotateAllowedTypesListUnsafe,
|
|
135
|
-
AnnotatedAllowedType,
|
|
136
142
|
AnnotatedAllowedTypeUnsafe,
|
|
137
|
-
AnnotatedAllowedTypes,
|
|
138
143
|
AnnotatedAllowedTypesUnsafe,
|
|
139
144
|
ArrayNodeCustomizableSchema,
|
|
140
145
|
ArrayNodeCustomizableSchemaUnsafe,
|
|
@@ -196,7 +201,6 @@ export {
|
|
|
196
201
|
RunTransactionParams,
|
|
197
202
|
SchemaFactoryAlpha,
|
|
198
203
|
SchemaStaticsAlpha,
|
|
199
|
-
SchemaUpgrade,
|
|
200
204
|
SharedTreeFormatOptions,
|
|
201
205
|
SharedTreeFormatVersion,
|
|
202
206
|
SharedTreeOptions,
|
|
@@ -219,7 +223,7 @@ export {
|
|
|
219
223
|
TransactionResultFailed,
|
|
220
224
|
TransactionResultSuccess,
|
|
221
225
|
TreeAlpha,
|
|
222
|
-
|
|
226
|
+
TreeBranchAlpha,
|
|
223
227
|
TreeBranchEvents,
|
|
224
228
|
TreeBranchFork,
|
|
225
229
|
TreeCompressionStrategy,
|
|
@@ -233,7 +237,6 @@ export {
|
|
|
233
237
|
TreeViewAlpha,
|
|
234
238
|
TreeViewConfigurationAlpha,
|
|
235
239
|
UnannotateAllowedTypeUnsafe,
|
|
236
|
-
UnannotateAllowedTypesList,
|
|
237
240
|
UnannotateAllowedTypesListUnsafe,
|
|
238
241
|
UnsafeUnknownSchema,
|
|
239
242
|
ValueSchema,
|
|
@@ -246,6 +249,7 @@ export {
|
|
|
246
249
|
asTreeViewAlpha,
|
|
247
250
|
cloneWithReplacements,
|
|
248
251
|
comparePersistedSchema,
|
|
252
|
+
contentSchemaSymbol,
|
|
249
253
|
createIdentifierIndex,
|
|
250
254
|
createSimpleTreeIndex,
|
|
251
255
|
evaluateLazySchema,
|
package/dist/api.d.ts
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Copyright (c) Microsoft Corporation and contributors. All rights reserved.
|
|
3
3
|
* Licensed under the MIT License.
|
|
4
4
|
*/
|
|
5
|
-
import { type TreeView, type TreeViewAlpha, type ImplicitFieldSchema } from "./simple-tree/index.js";
|
|
5
|
+
import { type TreeView, type TreeViewAlpha, type TreeViewBeta, type ImplicitFieldSchema } from "./simple-tree/index.js";
|
|
6
6
|
/**
|
|
7
7
|
* Module entry points for retrieving alternate (alpha/beta) versions of tree APIs.
|
|
8
8
|
* For each API (usually a class) that has an alpha/beta version, add overloads to the function(s) below.
|
|
@@ -14,4 +14,9 @@ import { type TreeView, type TreeViewAlpha, type ImplicitFieldSchema } from "./s
|
|
|
14
14
|
* @alpha
|
|
15
15
|
*/
|
|
16
16
|
export declare function asAlpha<TSchema extends ImplicitFieldSchema>(view: TreeView<TSchema>): TreeViewAlpha<TSchema>;
|
|
17
|
+
/**
|
|
18
|
+
* Retrieve the {@link TreeViewBeta | beta API} for a {@link TreeView}.
|
|
19
|
+
* @beta
|
|
20
|
+
*/
|
|
21
|
+
export declare function asBeta<TSchema extends ImplicitFieldSchema>(view: TreeView<TSchema>): TreeViewBeta<TSchema>;
|
|
17
22
|
//# sourceMappingURL=api.d.ts.map
|
package/dist/api.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACN,KAAK,QAAQ,EACb,KAAK,aAAa,EAClB,KAAK,mBAAmB,EAGxB,MAAM,wBAAwB,CAAC;AAEhC;;;;;GAKG;AAEH;;;GAGG;AACH,wBAAgB,OAAO,CAAC,OAAO,SAAS,mBAAmB,EAC1D,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,GACrB,aAAa,CAAC,OAAO,CAAC,CAGxB"}
|
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACN,KAAK,QAAQ,EACb,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,mBAAmB,EAGxB,MAAM,wBAAwB,CAAC;AAEhC;;;;;GAKG;AAEH;;;GAGG;AACH,wBAAgB,OAAO,CAAC,OAAO,SAAS,mBAAmB,EAC1D,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,GACrB,aAAa,CAAC,OAAO,CAAC,CAGxB;AAED;;;GAGG;AACH,wBAAgB,MAAM,CAAC,OAAO,SAAS,mBAAmB,EACzD,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,GACrB,YAAY,CAAC,OAAO,CAAC,CAEvB"}
|
package/dist/api.js
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Licensed under the MIT License.
|
|
5
5
|
*/
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.asAlpha = void 0;
|
|
7
|
+
exports.asBeta = exports.asAlpha = void 0;
|
|
8
8
|
const index_js_1 = require("./simple-tree/index.js");
|
|
9
9
|
/**
|
|
10
10
|
* Module entry points for retrieving alternate (alpha/beta) versions of tree APIs.
|
|
@@ -21,4 +21,12 @@ function asAlpha(view) {
|
|
|
21
21
|
return (0, index_js_1.asTreeViewAlpha)(view);
|
|
22
22
|
}
|
|
23
23
|
exports.asAlpha = asAlpha;
|
|
24
|
+
/**
|
|
25
|
+
* Retrieve the {@link TreeViewBeta | beta API} for a {@link TreeView}.
|
|
26
|
+
* @beta
|
|
27
|
+
*/
|
|
28
|
+
function asBeta(view) {
|
|
29
|
+
return view;
|
|
30
|
+
}
|
|
31
|
+
exports.asBeta = asBeta;
|
|
24
32
|
//# sourceMappingURL=api.js.map
|
package/dist/api.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,qDAOgC;AAEhC;;;;;GAKG;AAEH;;;GAGG;AACH,SAAgB,OAAO,CACtB,IAAuB;IAEvB,gDAAgD;IAChD,OAAO,IAAA,0BAAe,EAAC,IAAI,CAAC,CAAC;AAC9B,CAAC;AALD,0BAKC;AAED;;;GAGG;AACH,SAAgB,MAAM,CACrB,IAAuB;IAEvB,OAAO,IAA6B,CAAC;AACtC,CAAC;AAJD,wBAIC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport {\n\ttype TreeView,\n\ttype TreeViewAlpha,\n\ttype TreeViewBeta,\n\ttype ImplicitFieldSchema,\n\t// eslint-disable-next-line import/no-deprecated\n\tasTreeViewAlpha,\n} from \"./simple-tree/index.js\";\n\n/**\n * Module entry points for retrieving alternate (alpha/beta) versions of tree APIs.\n * For each API (usually a class) that has an alpha/beta version, add overloads to the function(s) below.\n * In the future, `asBeta` may be added here too.\n * These functions should only be used by external consumers, not referenced internally within the tree package, to avoid circular import dependencies.\n */\n\n/**\n * Retrieve the {@link TreeViewAlpha | alpha API} for a {@link TreeView}.\n * @alpha\n */\nexport function asAlpha<TSchema extends ImplicitFieldSchema>(\n\tview: TreeView<TSchema>,\n): TreeViewAlpha<TSchema> {\n\t// eslint-disable-next-line import/no-deprecated\n\treturn asTreeViewAlpha(view);\n}\n\n/**\n * Retrieve the {@link TreeViewBeta | beta API} for a {@link TreeView}.\n * @beta\n */\nexport function asBeta<TSchema extends ImplicitFieldSchema>(\n\tview: TreeView<TSchema>,\n): TreeViewBeta<TSchema> {\n\treturn view as TreeViewBeta<TSchema>;\n}\n"]}
|
package/dist/beta.d.ts
CHANGED
|
@@ -93,6 +93,14 @@ export {
|
|
|
93
93
|
// #endregion
|
|
94
94
|
|
|
95
95
|
// #region @beta APIs
|
|
96
|
+
AllowedTypeMetadata,
|
|
97
|
+
AllowedTypesFull,
|
|
98
|
+
AllowedTypesFullEvaluated,
|
|
99
|
+
AllowedTypesFullFromMixed,
|
|
100
|
+
AllowedTypesMetadata,
|
|
101
|
+
AnnotateAllowedTypesList,
|
|
102
|
+
AnnotatedAllowedType,
|
|
103
|
+
AnnotatedAllowedTypes,
|
|
96
104
|
ConciseTree,
|
|
97
105
|
FixRecursiveArraySchema,
|
|
98
106
|
FluidSerializableAsTree,
|
|
@@ -109,14 +117,19 @@ export {
|
|
|
109
117
|
PopUnion,
|
|
110
118
|
RecordNodeInsertableData,
|
|
111
119
|
SchemaFactoryBeta,
|
|
120
|
+
SchemaUpgrade,
|
|
112
121
|
SharedTreeOptionsBeta,
|
|
113
122
|
TreeBeta,
|
|
123
|
+
TreeBranch,
|
|
114
124
|
TreeChangeEventsBeta,
|
|
115
125
|
TreeEncodingOptions,
|
|
116
126
|
TreeRecordNode,
|
|
117
127
|
TreeRecordNodeUnsafe,
|
|
128
|
+
TreeViewBeta,
|
|
129
|
+
UnannotateAllowedTypesList,
|
|
118
130
|
UnionToTuple,
|
|
119
131
|
adaptEnum,
|
|
132
|
+
asBeta,
|
|
120
133
|
configuredSharedTreeBeta,
|
|
121
134
|
enumFromStrings,
|
|
122
135
|
singletonSchema
|
package/dist/codec/codec.d.ts
CHANGED
|
@@ -138,7 +138,7 @@ export interface CodecWriteOptions extends ICodecOptions {
|
|
|
138
138
|
* appropriate one, but depending on API layering this might be less ergonomic.
|
|
139
139
|
* - Context for the object currently being encoded, which might enable more efficient encoding. When used in this fashion, the codec author
|
|
140
140
|
* should be careful to include the context somewhere in the encoded data such that decoding can correctly round-trip.
|
|
141
|
-
* For example, a composed set of codecs could implement a form of
|
|
141
|
+
* For example, a composed set of codecs could implement a form of {@link https://en.wikipedia.org/wiki/Dictionary_coder | dictionary coding}
|
|
142
142
|
* using a context map which was created by the top-level codec and passed to the inner codecs.
|
|
143
143
|
* This pattern is used:
|
|
144
144
|
* - To avoid repeatedly encoding session ids on commits (only recording it once at the top level)
|
|
@@ -185,14 +185,14 @@ export interface IMultiFormatCodec<TDecoded, TJsonEncoded extends JsonCompatible
|
|
|
185
185
|
* allows avoiding some duplicate work at encode/decode time, since the vast majority of document usage will not
|
|
186
186
|
* involve mixed format versions.
|
|
187
187
|
*
|
|
188
|
-
* @privateRemarks
|
|
188
|
+
* @privateRemarks This interface currently assumes all codecs in a family require the same encode/decode context,
|
|
189
189
|
* which isn't necessarily true.
|
|
190
190
|
* This may need to be relaxed in the future.
|
|
191
191
|
*/
|
|
192
192
|
export interface ICodecFamily<TDecoded, TContext = void> {
|
|
193
193
|
/**
|
|
194
194
|
* @returns a codec that can be used to encode and decode data in the specified format.
|
|
195
|
-
* @throws
|
|
195
|
+
* @throws if the format version is not supported by this family.
|
|
196
196
|
* @remarks Implementations should typically emit telemetry (either indirectly by throwing a well-known error with
|
|
197
197
|
* logged properties or directly using some logger) when a format version is requested that is not supported.
|
|
198
198
|
* This ensures that applications can diagnose compatibility issues.
|