@fluidframework/tree 2.81.1 → 2.82.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 +125 -0
- package/api-report/tree.alpha.api.md +54 -22
- package/api-report/tree.beta.api.md +150 -1
- package/api-report/tree.legacy.beta.api.md +150 -1
- package/api-report/tree.legacy.public.api.md +1 -0
- package/api-report/tree.public.api.md +1 -0
- package/dist/alpha.d.ts +8 -2
- package/dist/beta.d.ts +3 -0
- package/dist/codec/codec.d.ts +17 -8
- package/dist/codec/codec.d.ts.map +1 -1
- package/dist/codec/codec.js +8 -1
- 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 -1
- package/dist/codec/index.js.map +1 -1
- package/dist/codec/versioned/codec.d.ts +1 -1
- package/dist/codec/versioned/codec.d.ts.map +1 -1
- package/dist/codec/versioned/codec.js.map +1 -1
- package/dist/core/index.d.ts +1 -1
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +4 -2
- package/dist/core/index.js.map +1 -1
- package/dist/core/rebase/changeRebaser.d.ts +3 -2
- package/dist/core/rebase/changeRebaser.d.ts.map +1 -1
- package/dist/core/rebase/changeRebaser.js.map +1 -1
- package/dist/core/rebase/index.d.ts +1 -1
- package/dist/core/rebase/index.d.ts.map +1 -1
- package/dist/core/rebase/index.js +4 -2
- package/dist/core/rebase/index.js.map +1 -1
- package/dist/core/rebase/types.d.ts +23 -3
- package/dist/core/rebase/types.d.ts.map +1 -1
- package/dist/core/rebase/types.js +30 -16
- package/dist/core/rebase/types.js.map +1 -1
- package/dist/core/schema-stored/formatV1.d.ts +2 -2
- package/dist/core/schema-stored/formatV1.d.ts.map +1 -1
- package/dist/core/schema-stored/formatV1.js +0 -5
- package/dist/core/schema-stored/formatV1.js.map +1 -1
- package/dist/core/schema-stored/formatV2.d.ts +11 -10
- package/dist/core/schema-stored/formatV2.d.ts.map +1 -1
- package/dist/core/schema-stored/formatV2.js +1 -6
- package/dist/core/schema-stored/formatV2.js.map +1 -1
- package/dist/core/schema-stored/index.d.ts.map +1 -1
- package/dist/core/schema-stored/index.js.map +1 -1
- package/dist/core/schema-stored/schema.d.ts.map +1 -1
- package/dist/core/schema-stored/schema.js.map +1 -1
- package/dist/core/tree/anchorSet.d.ts.map +1 -1
- package/dist/core/tree/anchorSet.js.map +1 -1
- package/dist/core/tree/delta.d.ts +9 -7
- package/dist/core/tree/delta.d.ts.map +1 -1
- package/dist/core/tree/delta.js.map +1 -1
- package/dist/core/tree/deltaUtil.js +1 -1
- package/dist/core/tree/deltaUtil.js.map +1 -1
- package/dist/core/tree/visitDelta.js +2 -2
- package/dist/core/tree/visitDelta.js.map +1 -1
- package/dist/extensibleSchemaUnion.d.ts +72 -0
- package/dist/extensibleSchemaUnion.d.ts.map +1 -0
- package/dist/extensibleSchemaUnion.js +79 -0
- package/dist/extensibleSchemaUnion.js.map +1 -0
- package/dist/feature-libraries/changeAtomIdBTree.d.ts +4 -2
- package/dist/feature-libraries/changeAtomIdBTree.d.ts.map +1 -1
- package/dist/feature-libraries/changeAtomIdBTree.js +9 -1
- package/dist/feature-libraries/changeAtomIdBTree.js.map +1 -1
- package/dist/feature-libraries/default-schema/defaultFieldKinds.d.ts +1 -3
- package/dist/feature-libraries/default-schema/defaultFieldKinds.d.ts.map +1 -1
- package/dist/feature-libraries/default-schema/defaultFieldKinds.js +20 -21
- package/dist/feature-libraries/default-schema/defaultFieldKinds.js.map +1 -1
- package/dist/feature-libraries/default-schema/index.d.ts +1 -1
- package/dist/feature-libraries/default-schema/index.d.ts.map +1 -1
- package/dist/feature-libraries/default-schema/index.js.map +1 -1
- package/dist/feature-libraries/forest-summary/codec.d.ts +2 -1
- package/dist/feature-libraries/forest-summary/codec.d.ts.map +1 -1
- package/dist/feature-libraries/forest-summary/codec.js.map +1 -1
- package/dist/feature-libraries/forest-summary/forestSummarizer.d.ts.map +1 -1
- package/dist/feature-libraries/forest-summary/forestSummarizer.js +5 -2
- package/dist/feature-libraries/forest-summary/forestSummarizer.js.map +1 -1
- package/dist/feature-libraries/forest-summary/formatCommon.d.ts +1 -39
- package/dist/feature-libraries/forest-summary/formatCommon.d.ts.map +1 -1
- package/dist/feature-libraries/forest-summary/formatCommon.js +1 -2
- package/dist/feature-libraries/forest-summary/formatCommon.js.map +1 -1
- package/dist/feature-libraries/forest-summary/formatV1.d.ts +1 -39
- package/dist/feature-libraries/forest-summary/formatV1.d.ts.map +1 -1
- package/dist/feature-libraries/forest-summary/formatV2.d.ts +1 -39
- package/dist/feature-libraries/forest-summary/formatV2.d.ts.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 +1 -1
- package/dist/feature-libraries/forest-summary/incrementalSummaryBuilder.js.map +1 -1
- package/dist/feature-libraries/index.d.ts +3 -3
- package/dist/feature-libraries/index.d.ts.map +1 -1
- package/dist/feature-libraries/index.js +4 -3
- package/dist/feature-libraries/index.js.map +1 -1
- package/dist/feature-libraries/modular-schema/defaultRevisionReplacer.d.ts +2 -2
- package/dist/feature-libraries/modular-schema/defaultRevisionReplacer.d.ts.map +1 -1
- package/dist/feature-libraries/modular-schema/defaultRevisionReplacer.js +42 -22
- package/dist/feature-libraries/modular-schema/defaultRevisionReplacer.js.map +1 -1
- package/dist/feature-libraries/modular-schema/genericFieldKind.js +1 -1
- package/dist/feature-libraries/modular-schema/genericFieldKind.js.map +1 -1
- package/dist/feature-libraries/modular-schema/index.d.ts +1 -1
- package/dist/feature-libraries/modular-schema/index.d.ts.map +1 -1
- package/dist/feature-libraries/modular-schema/index.js +2 -1
- package/dist/feature-libraries/modular-schema/index.js.map +1 -1
- package/dist/feature-libraries/modular-schema/modularChangeCodecV1.d.ts +1 -1
- package/dist/feature-libraries/modular-schema/modularChangeCodecV1.d.ts.map +1 -1
- package/dist/feature-libraries/modular-schema/modularChangeCodecV1.js +9 -5
- package/dist/feature-libraries/modular-schema/modularChangeCodecV1.js.map +1 -1
- package/dist/feature-libraries/modular-schema/modularChangeCodecs.d.ts +11 -1
- package/dist/feature-libraries/modular-schema/modularChangeCodecs.d.ts.map +1 -1
- package/dist/feature-libraries/modular-schema/modularChangeCodecs.js +30 -7
- package/dist/feature-libraries/modular-schema/modularChangeCodecs.js.map +1 -1
- package/dist/feature-libraries/modular-schema/modularChangeFamily.d.ts.map +1 -1
- package/dist/feature-libraries/modular-schema/modularChangeFamily.js +38 -27
- package/dist/feature-libraries/modular-schema/modularChangeFamily.js.map +1 -1
- package/dist/feature-libraries/modular-schema/modularChangeFormatV1.d.ts +10 -127
- package/dist/feature-libraries/modular-schema/modularChangeFormatV1.d.ts.map +1 -1
- package/dist/feature-libraries/modular-schema/modularChangeFormatV1.js +2 -4
- package/dist/feature-libraries/modular-schema/modularChangeFormatV1.js.map +1 -1
- package/dist/feature-libraries/modular-schema/modularChangeFormatV2.d.ts +3 -79
- package/dist/feature-libraries/modular-schema/modularChangeFormatV2.d.ts.map +1 -1
- package/dist/feature-libraries/optional-field/optionalField.js +1 -1
- package/dist/feature-libraries/optional-field/optionalField.js.map +1 -1
- package/dist/feature-libraries/optional-field/requiredField.d.ts.map +1 -1
- package/dist/feature-libraries/optional-field/requiredField.js.map +1 -1
- package/dist/feature-libraries/schema-edits/schemaChangeFormat.d.ts +2 -2
- package/dist/feature-libraries/schema-index/codec.js.map +1 -1
- package/dist/feature-libraries/schema-index/formatV2.d.ts +4 -4
- package/dist/feature-libraries/schema-index/schemaSummarizer.js +1 -1
- package/dist/feature-libraries/schema-index/schemaSummarizer.js.map +1 -1
- package/dist/feature-libraries/sequence-field/invert.js +2 -2
- package/dist/feature-libraries/sequence-field/invert.js.map +1 -1
- package/dist/feature-libraries/sequence-field/replaceRevisions.js +16 -16
- package/dist/feature-libraries/sequence-field/replaceRevisions.js.map +1 -1
- package/dist/feature-libraries/sequence-field/sequenceFieldToDelta.js +1 -1
- package/dist/feature-libraries/sequence-field/sequenceFieldToDelta.js.map +1 -1
- package/dist/index.d.ts +5 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -1
- package/dist/index.js.map +1 -1
- package/dist/legacy.d.ts +3 -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 +36 -13
- package/dist/shared-tree/independentView.d.ts.map +1 -1
- package/dist/shared-tree/independentView.js +1 -0
- package/dist/shared-tree/independentView.js.map +1 -1
- package/dist/shared-tree/index.d.ts +1 -1
- package/dist/shared-tree/index.d.ts.map +1 -1
- package/dist/shared-tree/index.js.map +1 -1
- package/dist/shared-tree/schematizingTreeView.d.ts +10 -0
- package/dist/shared-tree/schematizingTreeView.d.ts.map +1 -1
- package/dist/shared-tree/schematizingTreeView.js +25 -9
- package/dist/shared-tree/schematizingTreeView.js.map +1 -1
- package/dist/shared-tree/sharedTree.d.ts +3 -3
- package/dist/shared-tree/sharedTree.d.ts.map +1 -1
- package/dist/shared-tree/sharedTree.js +8 -32
- package/dist/shared-tree/sharedTree.js.map +1 -1
- package/dist/shared-tree/sharedTreeChangeCodecs.d.ts +11 -3
- package/dist/shared-tree/sharedTreeChangeCodecs.d.ts.map +1 -1
- package/dist/shared-tree/sharedTreeChangeCodecs.js +38 -4
- package/dist/shared-tree/sharedTreeChangeCodecs.js.map +1 -1
- package/dist/shared-tree/sharedTreeChangeFormat.d.ts +4 -4
- package/dist/shared-tree/tree.js +1 -1
- package/dist/shared-tree/tree.js.map +1 -1
- package/dist/shared-tree/treeCheckout.d.ts +20 -0
- package/dist/shared-tree/treeCheckout.d.ts.map +1 -1
- package/dist/shared-tree/treeCheckout.js +39 -3
- package/dist/shared-tree/treeCheckout.js.map +1 -1
- package/dist/shared-tree-core/editManagerSummarizer.js +1 -1
- package/dist/shared-tree-core/editManagerSummarizer.js.map +1 -1
- package/dist/shared-tree-core/messageCodecV1ToV4.d.ts.map +1 -1
- package/dist/shared-tree-core/messageCodecV1ToV4.js +2 -2
- package/dist/shared-tree-core/messageCodecV1ToV4.js.map +1 -1
- package/dist/shared-tree-core/transaction.d.ts +14 -3
- package/dist/shared-tree-core/transaction.d.ts.map +1 -1
- package/dist/shared-tree-core/transaction.js +59 -16
- package/dist/shared-tree-core/transaction.js.map +1 -1
- package/dist/shared-tree-core/versionedSummarizer.d.ts.map +1 -1
- package/dist/shared-tree-core/versionedSummarizer.js +1 -1
- package/dist/shared-tree-core/versionedSummarizer.js.map +1 -1
- package/dist/simple-tree/api/index.d.ts +1 -1
- package/dist/simple-tree/api/index.d.ts.map +1 -1
- package/dist/simple-tree/api/index.js +3 -2
- package/dist/simple-tree/api/index.js.map +1 -1
- package/dist/simple-tree/api/schemaCreationUtilities.d.ts +9 -0
- package/dist/simple-tree/api/schemaCreationUtilities.d.ts.map +1 -1
- package/dist/simple-tree/api/schemaCreationUtilities.js +16 -1
- package/dist/simple-tree/api/schemaCreationUtilities.js.map +1 -1
- package/dist/simple-tree/api/simpleTreeIndex.js.map +1 -1
- package/dist/simple-tree/api/transactionTypes.d.ts +10 -0
- package/dist/simple-tree/api/transactionTypes.d.ts.map +1 -1
- package/dist/simple-tree/api/transactionTypes.js.map +1 -1
- package/dist/simple-tree/api/tree.d.ts +81 -6
- 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/treeNodeSchema.d.ts.map +1 -1
- package/dist/simple-tree/core/treeNodeSchema.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 +4 -2
- package/dist/simple-tree/index.js.map +1 -1
- package/dist/simple-tree/leafNodeSchema.d.ts.map +1 -1
- package/dist/simple-tree/leafNodeSchema.js.map +1 -1
- package/dist/simple-tree/node-kinds/array/arrayNode.d.ts +63 -0
- package/dist/simple-tree/node-kinds/array/arrayNode.d.ts.map +1 -1
- package/dist/simple-tree/node-kinds/array/arrayNode.js +43 -1
- package/dist/simple-tree/node-kinds/array/arrayNode.js.map +1 -1
- package/dist/simple-tree/node-kinds/array/index.d.ts +1 -1
- package/dist/simple-tree/node-kinds/array/index.d.ts.map +1 -1
- package/dist/simple-tree/node-kinds/array/index.js +2 -1
- package/dist/simple-tree/node-kinds/array/index.js.map +1 -1
- package/dist/simple-tree/node-kinds/index.d.ts +1 -1
- package/dist/simple-tree/node-kinds/index.d.ts.map +1 -1
- package/dist/simple-tree/node-kinds/index.js +2 -1
- package/dist/simple-tree/node-kinds/index.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.map +1 -1
- package/dist/tableSchema.d.ts +71 -48
- package/dist/tableSchema.d.ts.map +1 -1
- package/dist/tableSchema.js +200 -98
- package/dist/tableSchema.js.map +1 -1
- package/dist/text/textDomainFormatted.js +1 -1
- package/dist/text/textDomainFormatted.js.map +1 -1
- package/dist/util/bTreeUtils.d.ts +30 -4
- package/dist/util/bTreeUtils.d.ts.map +1 -1
- package/dist/util/bTreeUtils.js +29 -17
- package/dist/util/bTreeUtils.js.map +1 -1
- package/dist/util/brand.d.ts.map +1 -1
- package/dist/util/brand.js.map +1 -1
- package/dist/util/brandedMap.d.ts.map +1 -1
- package/dist/util/brandedMap.js.map +1 -1
- package/dist/util/breakable.d.ts.map +1 -1
- package/dist/util/breakable.js +2 -1
- package/dist/util/breakable.js.map +1 -1
- package/dist/util/index.d.ts +2 -2
- package/dist/util/index.d.ts.map +1 -1
- package/dist/util/index.js +6 -3
- package/dist/util/index.js.map +1 -1
- package/dist/util/opaque.d.ts.map +1 -1
- package/dist/util/opaque.js.map +1 -1
- package/dist/util/rangeMap.d.ts +3 -2
- package/dist/util/rangeMap.d.ts.map +1 -1
- package/dist/util/rangeMap.js +7 -1
- package/dist/util/rangeMap.js.map +1 -1
- package/dist/util/readSnapshotBlob.d.ts +1 -1
- package/dist/util/readSnapshotBlob.d.ts.map +1 -1
- package/dist/util/readSnapshotBlob.js.map +1 -1
- package/dist/util/typeCheck.d.ts.map +1 -1
- package/dist/util/typeCheck.js.map +1 -1
- package/dist/util/utils.d.ts +20 -16
- package/dist/util/utils.d.ts.map +1 -1
- package/dist/util/utils.js +49 -17
- package/dist/util/utils.js.map +1 -1
- package/eslint.config.mts +0 -9
- package/lib/alpha.d.ts +8 -2
- package/lib/beta.d.ts +3 -0
- package/lib/codec/codec.d.ts +17 -8
- package/lib/codec/codec.d.ts.map +1 -1
- package/lib/codec/codec.js +6 -0
- 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 +1 -1
- package/lib/codec/versioned/codec.d.ts.map +1 -1
- package/lib/codec/versioned/codec.js.map +1 -1
- package/lib/core/index.d.ts +1 -1
- package/lib/core/index.d.ts.map +1 -1
- package/lib/core/index.js +1 -1
- package/lib/core/index.js.map +1 -1
- package/lib/core/rebase/changeRebaser.d.ts +3 -2
- package/lib/core/rebase/changeRebaser.d.ts.map +1 -1
- package/lib/core/rebase/changeRebaser.js.map +1 -1
- package/lib/core/rebase/index.d.ts +1 -1
- package/lib/core/rebase/index.d.ts.map +1 -1
- package/lib/core/rebase/index.js +1 -1
- package/lib/core/rebase/index.js.map +1 -1
- package/lib/core/rebase/types.d.ts +23 -3
- package/lib/core/rebase/types.d.ts.map +1 -1
- package/lib/core/rebase/types.js +27 -15
- package/lib/core/rebase/types.js.map +1 -1
- package/lib/core/schema-stored/formatV1.d.ts +2 -2
- package/lib/core/schema-stored/formatV1.d.ts.map +1 -1
- package/lib/core/schema-stored/formatV1.js +0 -5
- package/lib/core/schema-stored/formatV1.js.map +1 -1
- package/lib/core/schema-stored/formatV2.d.ts +11 -10
- package/lib/core/schema-stored/formatV2.d.ts.map +1 -1
- package/lib/core/schema-stored/formatV2.js +1 -6
- package/lib/core/schema-stored/formatV2.js.map +1 -1
- package/lib/core/schema-stored/index.d.ts.map +1 -1
- package/lib/core/schema-stored/index.js +2 -0
- package/lib/core/schema-stored/index.js.map +1 -1
- package/lib/core/schema-stored/schema.d.ts.map +1 -1
- package/lib/core/schema-stored/schema.js.map +1 -1
- package/lib/core/tree/anchorSet.d.ts.map +1 -1
- package/lib/core/tree/anchorSet.js.map +1 -1
- package/lib/core/tree/delta.d.ts +9 -7
- package/lib/core/tree/delta.d.ts.map +1 -1
- package/lib/core/tree/delta.js.map +1 -1
- package/lib/core/tree/deltaUtil.js +1 -1
- package/lib/core/tree/deltaUtil.js.map +1 -1
- package/lib/core/tree/visitDelta.js +2 -2
- package/lib/core/tree/visitDelta.js.map +1 -1
- package/lib/extensibleSchemaUnion.d.ts +72 -0
- package/lib/extensibleSchemaUnion.d.ts.map +1 -0
- package/lib/extensibleSchemaUnion.js +76 -0
- package/lib/extensibleSchemaUnion.js.map +1 -0
- package/lib/feature-libraries/changeAtomIdBTree.d.ts +4 -2
- package/lib/feature-libraries/changeAtomIdBTree.d.ts.map +1 -1
- package/lib/feature-libraries/changeAtomIdBTree.js +7 -0
- package/lib/feature-libraries/changeAtomIdBTree.js.map +1 -1
- package/lib/feature-libraries/default-schema/defaultFieldKinds.d.ts +1 -3
- package/lib/feature-libraries/default-schema/defaultFieldKinds.d.ts.map +1 -1
- package/lib/feature-libraries/default-schema/defaultFieldKinds.js +4 -5
- package/lib/feature-libraries/default-schema/defaultFieldKinds.js.map +1 -1
- package/lib/feature-libraries/default-schema/index.d.ts +1 -1
- package/lib/feature-libraries/default-schema/index.d.ts.map +1 -1
- package/lib/feature-libraries/default-schema/index.js.map +1 -1
- package/lib/feature-libraries/forest-summary/codec.d.ts +2 -1
- package/lib/feature-libraries/forest-summary/codec.d.ts.map +1 -1
- package/lib/feature-libraries/forest-summary/codec.js.map +1 -1
- package/lib/feature-libraries/forest-summary/forestSummarizer.d.ts.map +1 -1
- package/lib/feature-libraries/forest-summary/forestSummarizer.js +6 -3
- package/lib/feature-libraries/forest-summary/forestSummarizer.js.map +1 -1
- package/lib/feature-libraries/forest-summary/formatCommon.d.ts +1 -39
- package/lib/feature-libraries/forest-summary/formatCommon.d.ts.map +1 -1
- package/lib/feature-libraries/forest-summary/formatCommon.js +2 -3
- package/lib/feature-libraries/forest-summary/formatCommon.js.map +1 -1
- package/lib/feature-libraries/forest-summary/formatV1.d.ts +1 -39
- package/lib/feature-libraries/forest-summary/formatV1.d.ts.map +1 -1
- package/lib/feature-libraries/forest-summary/formatV2.d.ts +1 -39
- package/lib/feature-libraries/forest-summary/formatV2.d.ts.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 +1 -1
- package/lib/feature-libraries/forest-summary/incrementalSummaryBuilder.js.map +1 -1
- package/lib/feature-libraries/index.d.ts +3 -3
- package/lib/feature-libraries/index.d.ts.map +1 -1
- package/lib/feature-libraries/index.js +3 -3
- package/lib/feature-libraries/index.js.map +1 -1
- package/lib/feature-libraries/modular-schema/defaultRevisionReplacer.d.ts +2 -2
- package/lib/feature-libraries/modular-schema/defaultRevisionReplacer.d.ts.map +1 -1
- package/lib/feature-libraries/modular-schema/defaultRevisionReplacer.js +41 -21
- package/lib/feature-libraries/modular-schema/defaultRevisionReplacer.js.map +1 -1
- package/lib/feature-libraries/modular-schema/genericFieldKind.js +1 -1
- package/lib/feature-libraries/modular-schema/genericFieldKind.js.map +1 -1
- package/lib/feature-libraries/modular-schema/index.d.ts +1 -1
- package/lib/feature-libraries/modular-schema/index.d.ts.map +1 -1
- package/lib/feature-libraries/modular-schema/index.js +1 -1
- package/lib/feature-libraries/modular-schema/index.js.map +1 -1
- package/lib/feature-libraries/modular-schema/modularChangeCodecV1.d.ts +1 -1
- package/lib/feature-libraries/modular-schema/modularChangeCodecV1.d.ts.map +1 -1
- package/lib/feature-libraries/modular-schema/modularChangeCodecV1.js +10 -6
- package/lib/feature-libraries/modular-schema/modularChangeCodecV1.js.map +1 -1
- package/lib/feature-libraries/modular-schema/modularChangeCodecs.d.ts +11 -1
- package/lib/feature-libraries/modular-schema/modularChangeCodecs.d.ts.map +1 -1
- package/lib/feature-libraries/modular-schema/modularChangeCodecs.js +29 -6
- package/lib/feature-libraries/modular-schema/modularChangeCodecs.js.map +1 -1
- package/lib/feature-libraries/modular-schema/modularChangeFamily.d.ts.map +1 -1
- package/lib/feature-libraries/modular-schema/modularChangeFamily.js +41 -30
- package/lib/feature-libraries/modular-schema/modularChangeFamily.js.map +1 -1
- package/lib/feature-libraries/modular-schema/modularChangeFormatV1.d.ts +10 -127
- package/lib/feature-libraries/modular-schema/modularChangeFormatV1.d.ts.map +1 -1
- package/lib/feature-libraries/modular-schema/modularChangeFormatV1.js +2 -4
- package/lib/feature-libraries/modular-schema/modularChangeFormatV1.js.map +1 -1
- package/lib/feature-libraries/modular-schema/modularChangeFormatV2.d.ts +3 -79
- package/lib/feature-libraries/modular-schema/modularChangeFormatV2.d.ts.map +1 -1
- package/lib/feature-libraries/optional-field/optionalField.js +1 -1
- package/lib/feature-libraries/optional-field/optionalField.js.map +1 -1
- package/lib/feature-libraries/optional-field/requiredField.d.ts.map +1 -1
- package/lib/feature-libraries/optional-field/requiredField.js.map +1 -1
- package/lib/feature-libraries/schema-edits/schemaChangeFormat.d.ts +2 -2
- package/lib/feature-libraries/schema-index/codec.js.map +1 -1
- package/lib/feature-libraries/schema-index/formatV2.d.ts +4 -4
- package/lib/feature-libraries/schema-index/schemaSummarizer.js +1 -1
- package/lib/feature-libraries/schema-index/schemaSummarizer.js.map +1 -1
- package/lib/feature-libraries/sequence-field/invert.js +2 -2
- package/lib/feature-libraries/sequence-field/invert.js.map +1 -1
- package/lib/feature-libraries/sequence-field/replaceRevisions.js +16 -16
- package/lib/feature-libraries/sequence-field/replaceRevisions.js.map +1 -1
- package/lib/feature-libraries/sequence-field/sequenceFieldToDelta.js +1 -1
- package/lib/feature-libraries/sequence-field/sequenceFieldToDelta.js.map +1 -1
- package/lib/index.d.ts +5 -5
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +4 -3
- package/lib/index.js.map +1 -1
- package/lib/legacy.d.ts +3 -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 +36 -13
- package/lib/shared-tree/independentView.d.ts.map +1 -1
- package/lib/shared-tree/independentView.js +1 -0
- package/lib/shared-tree/independentView.js.map +1 -1
- package/lib/shared-tree/index.d.ts +1 -1
- package/lib/shared-tree/index.d.ts.map +1 -1
- package/lib/shared-tree/index.js.map +1 -1
- package/lib/shared-tree/schematizingTreeView.d.ts +10 -0
- package/lib/shared-tree/schematizingTreeView.d.ts.map +1 -1
- package/lib/shared-tree/schematizingTreeView.js +25 -9
- package/lib/shared-tree/schematizingTreeView.js.map +1 -1
- package/lib/shared-tree/sharedTree.d.ts +3 -3
- package/lib/shared-tree/sharedTree.d.ts.map +1 -1
- package/lib/shared-tree/sharedTree.js +10 -34
- package/lib/shared-tree/sharedTree.js.map +1 -1
- package/lib/shared-tree/sharedTreeChangeCodecs.d.ts +11 -3
- package/lib/shared-tree/sharedTreeChangeCodecs.d.ts.map +1 -1
- package/lib/shared-tree/sharedTreeChangeCodecs.js +39 -5
- package/lib/shared-tree/sharedTreeChangeCodecs.js.map +1 -1
- package/lib/shared-tree/sharedTreeChangeFormat.d.ts +4 -4
- package/lib/shared-tree/tree.js +1 -1
- package/lib/shared-tree/tree.js.map +1 -1
- package/lib/shared-tree/treeCheckout.d.ts +20 -0
- package/lib/shared-tree/treeCheckout.d.ts.map +1 -1
- package/lib/shared-tree/treeCheckout.js +39 -3
- package/lib/shared-tree/treeCheckout.js.map +1 -1
- package/lib/shared-tree-core/editManagerSummarizer.js +1 -1
- package/lib/shared-tree-core/editManagerSummarizer.js.map +1 -1
- package/lib/shared-tree-core/messageCodecV1ToV4.d.ts.map +1 -1
- package/lib/shared-tree-core/messageCodecV1ToV4.js +2 -2
- package/lib/shared-tree-core/messageCodecV1ToV4.js.map +1 -1
- package/lib/shared-tree-core/transaction.d.ts +14 -3
- package/lib/shared-tree-core/transaction.d.ts.map +1 -1
- package/lib/shared-tree-core/transaction.js +61 -18
- package/lib/shared-tree-core/transaction.js.map +1 -1
- package/lib/shared-tree-core/versionedSummarizer.d.ts.map +1 -1
- package/lib/shared-tree-core/versionedSummarizer.js +1 -1
- package/lib/shared-tree-core/versionedSummarizer.js.map +1 -1
- package/lib/simple-tree/api/index.d.ts +1 -1
- package/lib/simple-tree/api/index.d.ts.map +1 -1
- package/lib/simple-tree/api/index.js +1 -1
- package/lib/simple-tree/api/index.js.map +1 -1
- package/lib/simple-tree/api/schemaCreationUtilities.d.ts +9 -0
- package/lib/simple-tree/api/schemaCreationUtilities.d.ts.map +1 -1
- package/lib/simple-tree/api/schemaCreationUtilities.js +14 -0
- package/lib/simple-tree/api/schemaCreationUtilities.js.map +1 -1
- package/lib/simple-tree/api/simpleTreeIndex.js.map +1 -1
- package/lib/simple-tree/api/transactionTypes.d.ts +10 -0
- package/lib/simple-tree/api/transactionTypes.d.ts.map +1 -1
- package/lib/simple-tree/api/transactionTypes.js.map +1 -1
- package/lib/simple-tree/api/tree.d.ts +81 -6
- 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/treeNodeSchema.d.ts.map +1 -1
- package/lib/simple-tree/core/treeNodeSchema.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.d.ts.map +1 -1
- package/lib/simple-tree/leafNodeSchema.js.map +1 -1
- package/lib/simple-tree/node-kinds/array/arrayNode.d.ts +63 -0
- package/lib/simple-tree/node-kinds/array/arrayNode.d.ts.map +1 -1
- package/lib/simple-tree/node-kinds/array/arrayNode.js +41 -0
- package/lib/simple-tree/node-kinds/array/arrayNode.js.map +1 -1
- package/lib/simple-tree/node-kinds/array/index.d.ts +1 -1
- package/lib/simple-tree/node-kinds/array/index.d.ts.map +1 -1
- package/lib/simple-tree/node-kinds/array/index.js +1 -1
- package/lib/simple-tree/node-kinds/array/index.js.map +1 -1
- package/lib/simple-tree/node-kinds/index.d.ts +1 -1
- package/lib/simple-tree/node-kinds/index.d.ts.map +1 -1
- package/lib/simple-tree/node-kinds/index.js +1 -1
- package/lib/simple-tree/node-kinds/index.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.map +1 -1
- package/lib/tableSchema.d.ts +71 -48
- package/lib/tableSchema.d.ts.map +1 -1
- package/lib/tableSchema.js +201 -99
- package/lib/tableSchema.js.map +1 -1
- package/lib/text/textDomainFormatted.js +1 -1
- package/lib/text/textDomainFormatted.js.map +1 -1
- package/lib/util/bTreeUtils.d.ts +30 -4
- package/lib/util/bTreeUtils.d.ts.map +1 -1
- package/lib/util/bTreeUtils.js +27 -16
- package/lib/util/bTreeUtils.js.map +1 -1
- package/lib/util/brand.d.ts.map +1 -1
- package/lib/util/brand.js.map +1 -1
- package/lib/util/brandedMap.d.ts.map +1 -1
- package/lib/util/brandedMap.js.map +1 -1
- package/lib/util/breakable.d.ts.map +1 -1
- package/lib/util/breakable.js +2 -1
- package/lib/util/breakable.js.map +1 -1
- package/lib/util/index.d.ts +2 -2
- package/lib/util/index.d.ts.map +1 -1
- package/lib/util/index.js +2 -2
- package/lib/util/index.js.map +1 -1
- package/lib/util/opaque.d.ts.map +1 -1
- package/lib/util/opaque.js.map +1 -1
- package/lib/util/rangeMap.d.ts +3 -2
- package/lib/util/rangeMap.d.ts.map +1 -1
- package/lib/util/rangeMap.js +7 -1
- package/lib/util/rangeMap.js.map +1 -1
- package/lib/util/readSnapshotBlob.d.ts +1 -1
- package/lib/util/readSnapshotBlob.d.ts.map +1 -1
- package/lib/util/readSnapshotBlob.js.map +1 -1
- package/lib/util/typeCheck.d.ts.map +1 -1
- package/lib/util/typeCheck.js.map +1 -1
- package/lib/util/utils.d.ts +20 -16
- package/lib/util/utils.d.ts.map +1 -1
- package/lib/util/utils.js +44 -15
- package/lib/util/utils.js.map +1 -1
- package/package.json +22 -22
- package/src/codec/codec.ts +30 -11
- package/src/codec/index.ts +2 -0
- package/src/codec/versioned/codec.ts +9 -13
- package/src/core/index.ts +3 -1
- package/src/core/rebase/changeRebaser.ts +3 -2
- package/src/core/rebase/index.ts +3 -1
- package/src/core/rebase/types.ts +51 -13
- package/src/core/schema-stored/formatV1.ts +2 -4
- package/src/core/schema-stored/formatV2.ts +9 -7
- package/src/core/schema-stored/index.ts +2 -0
- package/src/core/schema-stored/schema.ts +4 -1
- package/src/core/tree/anchorSet.ts +1 -3
- package/src/core/tree/delta.ts +9 -7
- package/src/core/tree/deltaUtil.ts +1 -1
- package/src/core/tree/visitDelta.ts +2 -2
- package/src/extensibleSchemaUnion.ts +135 -0
- package/src/feature-libraries/changeAtomIdBTree.ts +17 -2
- package/src/feature-libraries/default-schema/defaultFieldKinds.ts +5 -6
- package/src/feature-libraries/default-schema/index.ts +0 -1
- package/src/feature-libraries/forest-summary/codec.ts +7 -2
- package/src/feature-libraries/forest-summary/forestSummarizer.ts +15 -3
- package/src/feature-libraries/forest-summary/formatCommon.ts +2 -3
- package/src/feature-libraries/forest-summary/incrementalSummaryBuilder.ts +4 -5
- package/src/feature-libraries/index.ts +3 -2
- package/src/feature-libraries/modular-schema/defaultRevisionReplacer.ts +57 -31
- package/src/feature-libraries/modular-schema/genericFieldKind.ts +1 -1
- package/src/feature-libraries/modular-schema/index.ts +4 -1
- package/src/feature-libraries/modular-schema/modularChangeCodecV1.ts +7 -6
- package/src/feature-libraries/modular-schema/modularChangeCodecs.ts +32 -7
- package/src/feature-libraries/modular-schema/modularChangeFamily.ts +54 -33
- package/src/feature-libraries/modular-schema/modularChangeFormatV1.ts +2 -4
- package/src/feature-libraries/optional-field/optionalField.ts +1 -1
- package/src/feature-libraries/optional-field/requiredField.ts +2 -4
- package/src/feature-libraries/schema-index/codec.ts +1 -1
- package/src/feature-libraries/schema-index/schemaSummarizer.ts +1 -1
- package/src/feature-libraries/sequence-field/invert.ts +2 -2
- package/src/feature-libraries/sequence-field/replaceRevisions.ts +17 -10
- package/src/feature-libraries/sequence-field/sequenceFieldToDelta.ts +1 -1
- package/src/index.ts +12 -7
- package/src/packageVersion.ts +1 -1
- package/src/shared-tree/independentView.ts +42 -6
- package/src/shared-tree/index.ts +2 -0
- package/src/shared-tree/schematizingTreeView.ts +63 -18
- package/src/shared-tree/sharedTree.ts +19 -37
- package/src/shared-tree/sharedTreeChangeCodecs.ts +43 -9
- package/src/shared-tree/tree.ts +1 -1
- package/src/shared-tree/treeCheckout.ts +50 -3
- package/src/shared-tree-core/editManagerSummarizer.ts +1 -1
- package/src/shared-tree-core/messageCodecV1ToV4.ts +4 -3
- package/src/shared-tree-core/transaction.ts +125 -23
- package/src/shared-tree-core/versionedSummarizer.ts +3 -2
- package/src/simple-tree/api/index.ts +1 -0
- package/src/simple-tree/api/schemaCreationUtilities.ts +35 -5
- package/src/simple-tree/api/simpleTreeIndex.ts +1 -1
- package/src/simple-tree/api/transactionTypes.ts +10 -0
- package/src/simple-tree/api/tree.ts +88 -6
- package/src/simple-tree/core/treeNodeSchema.ts +5 -8
- package/src/simple-tree/index.ts +3 -0
- package/src/simple-tree/leafNodeSchema.ts +3 -2
- package/src/simple-tree/node-kinds/array/arrayNode.ts +86 -0
- package/src/simple-tree/node-kinds/array/index.ts +2 -0
- package/src/simple-tree/node-kinds/index.ts +2 -0
- package/src/simple-tree/node-kinds/object/objectNode.ts +19 -18
- package/src/tableSchema.ts +280 -140
- package/src/text/textDomainFormatted.ts +1 -1
- package/src/util/bTreeUtils.ts +45 -26
- package/src/util/brand.ts +4 -12
- package/src/util/brandedMap.ts +2 -6
- package/src/util/breakable.ts +3 -2
- package/src/util/index.ts +9 -3
- package/src/util/opaque.ts +2 -6
- package/src/util/rangeMap.ts +11 -5
- package/src/util/readSnapshotBlob.ts +3 -3
- package/src/util/typeCheck.ts +11 -9
- package/src/util/utils.ts +57 -28
- package/biome.jsonc +0 -4
package/lib/tableSchema.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tableSchema.d.ts","sourceRoot":"","sources":["../src/tableSchema.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tableSchema.d.ts","sourceRoot":"","sources":["../src/tableSchema.ts"],"names":[],"mappings":"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"}
|
package/lib/tableSchema.js
CHANGED
|
@@ -7,28 +7,12 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
7
7
|
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
8
8
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
9
9
|
};
|
|
10
|
-
/* eslint-disable @typescript-eslint/no-unsafe-member-access -- This file uses intentional `as any` casts to access hidden internal properties (cells, tableSchemaSymbol) */
|
|
11
10
|
import { fail } from "@fluidframework/core-utils/internal";
|
|
12
11
|
import { UsageError } from "@fluidframework/telemetry-utils/internal";
|
|
13
12
|
import { EmptyKey } from "./core/index.js";
|
|
14
13
|
import { TreeAlpha } from "./shared-tree/index.js";
|
|
15
|
-
import {
|
|
14
|
+
import { TreeArrayNode, SchemaFactory, scoped, withBufferedTreeEvents, objectSchema, eraseSchemaDetailsSubclassable, createCustomizedFluidFrameworkScopedFactory, } from "./simple-tree/index.js";
|
|
16
15
|
import { validateIndex, validateIndexRange } from "./util/index.js";
|
|
17
|
-
// Future improvement TODOs:
|
|
18
|
-
// - Omit `cells` property from Row insertion type.
|
|
19
|
-
// - Record-like type parameters / input parameters?
|
|
20
|
-
// - Omit `props` properties from Row and Column schemas when not provided?
|
|
21
|
-
// Longer-term work:
|
|
22
|
-
// - Add constraint APIs to make it possible to avoid situations that could yield "orphaned" cells.
|
|
23
|
-
/**
|
|
24
|
-
* Scope for table schema built-in types.
|
|
25
|
-
* @remarks User-provided factory scoping will be applied as `com.fluidframework.table<user-scope>`.
|
|
26
|
-
*/
|
|
27
|
-
const baseSchemaScope = "com.fluidframework.table";
|
|
28
|
-
/**
|
|
29
|
-
* A private symbol put on table schema to help identify them.
|
|
30
|
-
*/
|
|
31
|
-
const tableSchemaSymbol = Symbol("tableNode");
|
|
32
16
|
/**
|
|
33
17
|
* Not intended for use outside of this package.
|
|
34
18
|
*
|
|
@@ -37,13 +21,20 @@ const tableSchemaSymbol = Symbol("tableNode");
|
|
|
37
21
|
* This namespace should be strictly type-exported by the package.
|
|
38
22
|
* All members should be tagged with `@system`.
|
|
39
23
|
*
|
|
40
|
-
*
|
|
24
|
+
* Orphaned Cells:
|
|
25
|
+
* Without safeguards, it is possible for cells to become "orphaned".
|
|
26
|
+
* An orphaned cell is a cell that does not correspond to a valid row and column.
|
|
27
|
+
* In order to preserve the invariant that all cells must have a valid row and column, table operations
|
|
28
|
+
* (eg, inserting/removing rows/columns, or setting/removing a cell) will automatically include constraints that
|
|
29
|
+
* guard transactions from producing orphaned cells.
|
|
30
|
+
*
|
|
31
|
+
* @system @beta
|
|
41
32
|
*/
|
|
42
33
|
export var System_TableSchema;
|
|
43
34
|
(function (System_TableSchema) {
|
|
44
35
|
/**
|
|
45
36
|
* Factory for creating column schema.
|
|
46
|
-
* @system @
|
|
37
|
+
* @system @beta
|
|
47
38
|
*/
|
|
48
39
|
// eslint-disable-next-line @typescript-eslint/explicit-function-return-type -- Return type is too complex to be reasonable to specify
|
|
49
40
|
function createColumnSchema(inputSchemaFactory, propsSchema) {
|
|
@@ -91,7 +82,7 @@ export var System_TableSchema;
|
|
|
91
82
|
System_TableSchema.createColumnSchema = createColumnSchema;
|
|
92
83
|
/**
|
|
93
84
|
* Factory for creating row schema.
|
|
94
|
-
* @
|
|
85
|
+
* @system @beta
|
|
95
86
|
*/
|
|
96
87
|
// eslint-disable-next-line @typescript-eslint/explicit-function-return-type -- Return type is too complex to be reasonable to specify
|
|
97
88
|
function createRowSchema(inputSchemaFactory, cellSchema, propsSchema) {
|
|
@@ -146,7 +137,7 @@ export var System_TableSchema;
|
|
|
146
137
|
System_TableSchema.createRowSchema = createRowSchema;
|
|
147
138
|
/**
|
|
148
139
|
* Factory for creating table schema.
|
|
149
|
-
* @system @
|
|
140
|
+
* @system @beta
|
|
150
141
|
*/
|
|
151
142
|
// eslint-disable-next-line @typescript-eslint/explicit-function-return-type -- Return type is too complex to be reasonable to specify
|
|
152
143
|
function createTableSchema(inputSchemaFactory, _cellSchema, columnSchema, rowSchema) {
|
|
@@ -251,16 +242,34 @@ export var System_TableSchema;
|
|
|
251
242
|
// Ensure the new columns being inserted are valid
|
|
252
243
|
__classPrivateFieldGet(this, _Table_instances, "m", _Table_validateNewColumns).call(this, columns);
|
|
253
244
|
// #endregion
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
245
|
+
__classPrivateFieldGet(this, _Table_instances, "m", _Table_applyEditsInBatch).call(this, {
|
|
246
|
+
applyEdits: () => {
|
|
247
|
+
// TypeScript is unable to narrow the column type correctly here, hence the casts below.
|
|
248
|
+
// See: https://github.com/microsoft/TypeScript/issues/52144
|
|
249
|
+
if (index === undefined) {
|
|
250
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
251
|
+
this.table.columns.insertAtEnd(TreeArrayNode.spread(columns));
|
|
252
|
+
}
|
|
253
|
+
else {
|
|
254
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
255
|
+
this.table.columns.insertAt(index, TreeArrayNode.spread(columns));
|
|
256
|
+
}
|
|
257
|
+
},
|
|
258
|
+
// Relevant invariant: each cell corresponds to an existing row and column
|
|
259
|
+
// Scenarios that this constraint is intended to prevent:
|
|
260
|
+
// * Client A inserts a column, then client B adds row with a cell for that column, then client A reverts the column insertion.
|
|
261
|
+
// * Client A inserts a column, then client B populates a cell for that column within an existing row, then client A reverts the column insertion.
|
|
262
|
+
// Notes:
|
|
263
|
+
// * In either scenario, A and B may be the same client.
|
|
264
|
+
// * In either scenario, B's edit and the revert may or may not be concurrent.
|
|
265
|
+
// Collateral scenarios that this constraint also prevents:
|
|
266
|
+
// * Any other scenario where client A inserts a column, then client B edits _any_ part of the tree, then client A reverts the column insertion.
|
|
267
|
+
// Future improvements:
|
|
268
|
+
// Use both...
|
|
269
|
+
// * A "no attach on revert" constraint on the row array
|
|
270
|
+
// * A "no shallow change" constraint on every cell that corresponds to the new column in every existing row
|
|
271
|
+
preconditionsOnRevert: [{ type: "noChange" }],
|
|
272
|
+
});
|
|
264
273
|
// Inserting the input nodes into the tree hydrates them, making them usable as nodes.
|
|
265
274
|
return columns;
|
|
266
275
|
}
|
|
@@ -273,16 +282,31 @@ export var System_TableSchema;
|
|
|
273
282
|
// Ensure the new rows being inserted are valid
|
|
274
283
|
__classPrivateFieldGet(this, _Table_instances, "m", _Table_validateNewRows).call(this, rows);
|
|
275
284
|
// #endregion
|
|
276
|
-
//
|
|
277
|
-
//
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
}
|
|
285
|
+
// Relevant invariant: each cell corresponds to an existing row and column
|
|
286
|
+
// Prevents cell leaks from concurrently removed columns.
|
|
287
|
+
// Example scenario: Client A removes a column while concurrently Client B adds a row with cells for those columns (including the one A removed).
|
|
288
|
+
// If client B is sequenced after A, then B's row could have cells that do not correspond to existing columns.
|
|
289
|
+
// This constraint ensures all columns that existed when creating the row still exist when the row insertion is applied.
|
|
290
|
+
// TODO: Replace with "no detach" constraint on the column array when available.
|
|
291
|
+
const columnConstraints = this.table.columns.map((column) => ({
|
|
292
|
+
type: "nodeInDocument",
|
|
293
|
+
node: column,
|
|
294
|
+
}));
|
|
295
|
+
__classPrivateFieldGet(this, _Table_instances, "m", _Table_applyEditsInBatch).call(this, {
|
|
296
|
+
applyEdits: () => {
|
|
297
|
+
// TypeScript is unable to narrow the row type correctly here, hence the casts below.
|
|
298
|
+
// See: https://github.com/microsoft/TypeScript/issues/52144
|
|
299
|
+
if (index === undefined) {
|
|
300
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
301
|
+
this.table.rows.insertAtEnd(TreeArrayNode.spread(rows));
|
|
302
|
+
}
|
|
303
|
+
else {
|
|
304
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
305
|
+
this.table.rows.insertAt(index, TreeArrayNode.spread(rows));
|
|
306
|
+
}
|
|
307
|
+
},
|
|
308
|
+
preconditions: columnConstraints.length > 0 ? columnConstraints : undefined,
|
|
309
|
+
});
|
|
286
310
|
// Inserting the input nodes into the tree hydrates them, making them usable as nodes.
|
|
287
311
|
return rows;
|
|
288
312
|
}
|
|
@@ -290,9 +314,42 @@ export var System_TableSchema;
|
|
|
290
314
|
const { column: columnOrId, row: rowOrId } = key;
|
|
291
315
|
const row = __classPrivateFieldGet(this, _Table_instances, "m", _Table_getRow).call(this, rowOrId);
|
|
292
316
|
const column = __classPrivateFieldGet(this, _Table_instances, "m", _Table_getColumn).call(this, columnOrId);
|
|
293
|
-
|
|
317
|
+
__classPrivateFieldGet(this, _Table_instances, "m", _Table_applyEditsInBatch).call(this, {
|
|
318
|
+
applyEdits: () => {
|
|
319
|
+
row.cells[column.id] = cell;
|
|
320
|
+
},
|
|
321
|
+
// Relevant invariant: each cell corresponds to an existing row and column
|
|
322
|
+
// Prevents cell leaks from concurrently removed columns in earlier-sequenced edits.
|
|
323
|
+
// Example scenario: Client A removes a column, then Client B concurrently sets a cell in that column (sequenced after A's edit).
|
|
324
|
+
// If both edits are applied, B's cell would not correspond to an existing column.
|
|
325
|
+
preconditions: [
|
|
326
|
+
{
|
|
327
|
+
type: "nodeInDocument",
|
|
328
|
+
node: column,
|
|
329
|
+
},
|
|
330
|
+
],
|
|
331
|
+
// Relevant invariant: each cell corresponds to an existing row and column
|
|
332
|
+
// Example scenario: Client A overwrites a populated cell, then Client B removes the column associated with the A's cell (this clears the cell).
|
|
333
|
+
// If Client A then reverts their edit, the overwritten value is restored in the cell despite the absence of column for that cell.
|
|
334
|
+
preconditionsOnRevert: row.cells[column.id] === undefined
|
|
335
|
+
? undefined
|
|
336
|
+
: [
|
|
337
|
+
{
|
|
338
|
+
type: "nodeInDocument",
|
|
339
|
+
node: column,
|
|
340
|
+
},
|
|
341
|
+
],
|
|
342
|
+
});
|
|
294
343
|
}
|
|
295
344
|
removeColumns(indexOrColumns, count = undefined) {
|
|
345
|
+
// Relevant invariant: each cell corresponds to an existing row and column
|
|
346
|
+
// Prevents cell leaks from concurrently added rows in earlier-sequenced edits.
|
|
347
|
+
// Example scenario: Client A adds a row, Client B concurrently removes a column that is populated in A's row.
|
|
348
|
+
// If Client A's edit is sequenced before Client B's edit, then B's removal would orphan the cell in A's row.
|
|
349
|
+
// We have the same problem if Client A populates a cell for one of the columns removed by B
|
|
350
|
+
// This constraint ensures no rows were added.
|
|
351
|
+
// TODO: Replace with "no attach" constraint on the row array when available.
|
|
352
|
+
const preconditions = [{ type: "noChange" }];
|
|
296
353
|
if (typeof indexOrColumns === "number" || indexOrColumns === undefined) {
|
|
297
354
|
let removedColumns;
|
|
298
355
|
const startIndex = indexOrColumns ?? 0;
|
|
@@ -302,15 +359,18 @@ export var System_TableSchema;
|
|
|
302
359
|
return [];
|
|
303
360
|
}
|
|
304
361
|
validateIndexRange(startIndex, endIndex, this.table.columns, "Table.removeColumns");
|
|
305
|
-
__classPrivateFieldGet(this, _Table_instances, "m", _Table_applyEditsInBatch).call(this,
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
362
|
+
__classPrivateFieldGet(this, _Table_instances, "m", _Table_applyEditsInBatch).call(this, {
|
|
363
|
+
applyEdits: () => {
|
|
364
|
+
const columnsToRemove = this.table.columns.slice(startIndex, endIndex);
|
|
365
|
+
// First, remove all cells that correspond to each column from each row:
|
|
366
|
+
for (const column of columnsToRemove) {
|
|
367
|
+
__classPrivateFieldGet(this, _Table_instances, "m", _Table_removeCells).call(this, column);
|
|
368
|
+
}
|
|
369
|
+
// Second, remove the column nodes:
|
|
370
|
+
removeRangeFromArray(startIndex, endIndex, this.table.columns, "Table.removeColumns");
|
|
371
|
+
removedColumns = columnsToRemove;
|
|
372
|
+
},
|
|
373
|
+
preconditions,
|
|
314
374
|
});
|
|
315
375
|
return removedColumns ?? fail(0xc1f /* Transaction did not complete. */);
|
|
316
376
|
}
|
|
@@ -326,35 +386,56 @@ export var System_TableSchema;
|
|
|
326
386
|
for (const columnOrIdToRemove of indexOrColumns) {
|
|
327
387
|
columnsToRemove.push(__classPrivateFieldGet(this, _Table_instances, "m", _Table_getColumn).call(this, columnOrIdToRemove));
|
|
328
388
|
}
|
|
329
|
-
__classPrivateFieldGet(this, _Table_instances, "m", _Table_applyEditsInBatch).call(this,
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
389
|
+
__classPrivateFieldGet(this, _Table_instances, "m", _Table_applyEditsInBatch).call(this, {
|
|
390
|
+
applyEdits: () => {
|
|
391
|
+
// Note, throwing an error within a transaction will abort the entire transaction.
|
|
392
|
+
// So if we throw an error here for any column, no columns will be removed.
|
|
393
|
+
for (const columnToRemove of columnsToRemove) {
|
|
394
|
+
// Remove the corresponding cell from all rows.
|
|
395
|
+
for (const row of this.table.rows) {
|
|
396
|
+
// TypeScript is unable to narrow the row type correctly here, hence the cast.
|
|
397
|
+
// See: https://github.com/microsoft/TypeScript/issues/52144
|
|
398
|
+
this.removeCell({
|
|
399
|
+
column: columnToRemove,
|
|
400
|
+
row: row,
|
|
401
|
+
});
|
|
402
|
+
}
|
|
403
|
+
// We have already validated that all of the columns exist above, so this is safe.
|
|
404
|
+
this.table.columns.removeAt(this.table.columns.indexOf(columnToRemove));
|
|
341
405
|
}
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
}
|
|
406
|
+
},
|
|
407
|
+
preconditions,
|
|
345
408
|
});
|
|
346
409
|
return columnsToRemove;
|
|
347
410
|
}
|
|
348
411
|
}
|
|
349
412
|
removeRows(indexOrRows, count) {
|
|
413
|
+
// Relevant invariant: each cell corresponds to an existing row and column
|
|
414
|
+
// Adding a constraint on columns here to prevent cells being orphaned. The relevant scenario is:
|
|
415
|
+
// Client A removes rows
|
|
416
|
+
// Client B (either concurrently or not, so long as B's edit is sequenced after A's edit) removes a column,
|
|
417
|
+
// Client A reverts the removal of the rows
|
|
418
|
+
// TODO: Replace with "no detach on revert" constraint on the column array when available.
|
|
419
|
+
const columnConstraints = this.table.columns.map((column) => ({
|
|
420
|
+
type: "nodeInDocument",
|
|
421
|
+
node: column,
|
|
422
|
+
}));
|
|
350
423
|
if (typeof indexOrRows === "number" || indexOrRows === undefined) {
|
|
424
|
+
let removedRows;
|
|
351
425
|
const startIndex = indexOrRows ?? 0;
|
|
352
426
|
const endIndex = count === undefined ? this.table.rows.length : startIndex + count;
|
|
353
427
|
// If there are no rows to remove, do nothing
|
|
354
428
|
if (startIndex === endIndex) {
|
|
355
429
|
return [];
|
|
356
430
|
}
|
|
357
|
-
|
|
431
|
+
validateIndexRange(startIndex, endIndex, this.table.rows, "Table.removeRows");
|
|
432
|
+
__classPrivateFieldGet(this, _Table_instances, "m", _Table_applyEditsInBatch).call(this, {
|
|
433
|
+
applyEdits: () => {
|
|
434
|
+
removedRows = removeRangeFromArray(startIndex, endIndex, this.table.rows, "Table.removeRows");
|
|
435
|
+
},
|
|
436
|
+
preconditionsOnRevert: columnConstraints.length > 0 ? columnConstraints : undefined,
|
|
437
|
+
});
|
|
438
|
+
return removedRows ?? fail(0xccd /* Transaction did not complete */);
|
|
358
439
|
}
|
|
359
440
|
// If there are no rows to remove, do nothing
|
|
360
441
|
if (indexOrRows.length === 0) {
|
|
@@ -367,14 +448,17 @@ export var System_TableSchema;
|
|
|
367
448
|
for (const rowToRemove of indexOrRows) {
|
|
368
449
|
rowsToRemove.push(__classPrivateFieldGet(this, _Table_instances, "m", _Table_getRow).call(this, rowToRemove));
|
|
369
450
|
}
|
|
370
|
-
__classPrivateFieldGet(this, _Table_instances, "m", _Table_applyEditsInBatch).call(this,
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
451
|
+
__classPrivateFieldGet(this, _Table_instances, "m", _Table_applyEditsInBatch).call(this, {
|
|
452
|
+
applyEdits: () => {
|
|
453
|
+
// Note, throwing an error within a transaction will abort the entire transaction.
|
|
454
|
+
// So if we throw an error here for any row, no rows will be removed.
|
|
455
|
+
for (const rowToRemove of rowsToRemove) {
|
|
456
|
+
// We have already validated that all of the rows exist above, so this is safe.
|
|
457
|
+
const index = this.table.rows.indexOf(rowToRemove);
|
|
458
|
+
this.table.rows.removeAt(index);
|
|
459
|
+
}
|
|
460
|
+
},
|
|
461
|
+
preconditionsOnRevert: columnConstraints.length > 0 ? columnConstraints : undefined,
|
|
378
462
|
});
|
|
379
463
|
return rowsToRemove;
|
|
380
464
|
}
|
|
@@ -386,8 +470,23 @@ export var System_TableSchema;
|
|
|
386
470
|
if (cell === undefined) {
|
|
387
471
|
return undefined;
|
|
388
472
|
}
|
|
389
|
-
|
|
390
|
-
|
|
473
|
+
__classPrivateFieldGet(this, _Table_instances, "m", _Table_applyEditsInBatch).call(this, {
|
|
474
|
+
applyEdits: () => {
|
|
475
|
+
// eslint-disable-next-line @typescript-eslint/no-dynamic-delete
|
|
476
|
+
delete row.cells[column.id];
|
|
477
|
+
},
|
|
478
|
+
// Relevant invariant: each cell corresponds to an existing row and column
|
|
479
|
+
// Prevents cell leaks from concurrently removed columns in earlier-sequenced edits when this cell removal is reverted.
|
|
480
|
+
// Example scenario: Client A removes a cell, then Client B removes the column for that cell.
|
|
481
|
+
// If A's cell removal is later reverted, the cell would be restored but B's column removal means there's no column for it.
|
|
482
|
+
// This constraint on revert ensures the column still exists, ensuring restored cells correspond to existing columns.
|
|
483
|
+
preconditionsOnRevert: [
|
|
484
|
+
{
|
|
485
|
+
type: "nodeInDocument",
|
|
486
|
+
node: column,
|
|
487
|
+
},
|
|
488
|
+
],
|
|
489
|
+
});
|
|
391
490
|
return cell;
|
|
392
491
|
}
|
|
393
492
|
/**
|
|
@@ -442,9 +541,9 @@ export var System_TableSchema;
|
|
|
442
541
|
// #endregion
|
|
443
542
|
// #region If the row contains cells, verify that the table contains the columns for those cells
|
|
444
543
|
// Note: we intentionally hide `cells` on `IRow` to avoid leaking the internal data representation as much as possible, so we have to cast here.
|
|
445
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
544
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-member-access
|
|
446
545
|
if (newRow.cells !== undefined) {
|
|
447
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
546
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-member-access
|
|
448
547
|
const keys = Object.keys(newRow.cells);
|
|
449
548
|
for (const key of keys) {
|
|
450
549
|
if (!columnIds.has(key)) {
|
|
@@ -477,7 +576,8 @@ export var System_TableSchema;
|
|
|
477
576
|
row: row,
|
|
478
577
|
});
|
|
479
578
|
}
|
|
480
|
-
}, _Table_applyEditsInBatch = function _Table_applyEditsInBatch(
|
|
579
|
+
}, _Table_applyEditsInBatch = function _Table_applyEditsInBatch(options) {
|
|
580
|
+
const { applyEdits, preconditions, preconditionsOnRevert } = options;
|
|
481
581
|
const branch = TreeAlpha.branch(this);
|
|
482
582
|
// Ensure events are paused until all of the edits are applied.
|
|
483
583
|
// This ensures that the user sees the corresponding table-level edit as atomic,
|
|
@@ -492,7 +592,10 @@ export var System_TableSchema;
|
|
|
492
592
|
else {
|
|
493
593
|
branch.runTransaction(() => {
|
|
494
594
|
applyEdits();
|
|
495
|
-
|
|
595
|
+
if (preconditionsOnRevert !== undefined) {
|
|
596
|
+
return { preconditionsOnRevert };
|
|
597
|
+
}
|
|
598
|
+
}, preconditions === undefined ? undefined : { preconditions });
|
|
496
599
|
}
|
|
497
600
|
});
|
|
498
601
|
}, _Table_tryGetColumn = function _Table_tryGetColumn(columnOrIdOrIndex) {
|
|
@@ -552,12 +655,6 @@ export var System_TableSchema;
|
|
|
552
655
|
}, _Table_validateNewRows = function _Table_validateNewRows(newRows) {
|
|
553
656
|
return _a._validateNewRows(newRows, new Set(this.table.rows.map((row) => row.id)), new Set(this.table.columns.map((column) => column.id)));
|
|
554
657
|
};
|
|
555
|
-
// Set a private symbol on the schema class that marks it as having been generated by this factory.
|
|
556
|
-
// Column / Row functionality use this to validate that they are being used in a table.
|
|
557
|
-
// This is effectively a work-around that allows columns and rows to invoke table methods
|
|
558
|
-
// without having to pass the table as a parameter to their construction, which isn't possible.
|
|
559
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
560
|
-
Table[tableSchemaSymbol] = true;
|
|
561
658
|
// Returning SingletonSchema without a type conversion results in TypeScript generating something like `readonly "__#124291@#brand": unknown;`
|
|
562
659
|
// for the private brand field of TreeNode.
|
|
563
660
|
// This numeric id doesn't seem to be stable over incremental builds, and thus causes diffs in the API extractor reports.
|
|
@@ -570,8 +667,13 @@ export var System_TableSchema;
|
|
|
570
667
|
System_TableSchema.createTableSchema = createTableSchema;
|
|
571
668
|
// #endregion
|
|
572
669
|
})(System_TableSchema || (System_TableSchema = {}));
|
|
670
|
+
/**
|
|
671
|
+
* Sets up scope for table schema built-in types.
|
|
672
|
+
* @remarks User-provided factory scoping will be applied as `com.fluidframework.table<user-scope>`.
|
|
673
|
+
*/
|
|
674
|
+
// eslint-disable-next-line @typescript-eslint/explicit-function-return-type
|
|
573
675
|
function createTableScopedFactory(inputSchemaFactory) {
|
|
574
|
-
return
|
|
676
|
+
return createCustomizedFluidFrameworkScopedFactory(inputSchemaFactory, "tableV2");
|
|
575
677
|
}
|
|
576
678
|
/**
|
|
577
679
|
* Removes the specified range of elements from the array.
|
|
@@ -590,10 +692,16 @@ function removeRangeFromArray(startIndex, endIndex, array, methodName) {
|
|
|
590
692
|
*
|
|
591
693
|
* @remarks
|
|
592
694
|
*
|
|
593
|
-
*
|
|
594
|
-
*
|
|
595
|
-
*
|
|
596
|
-
*
|
|
695
|
+
* Note: the APIs produced by this module ensure various tabular data invariants are maintained that the raw, underlying tree structures do not.
|
|
696
|
+
* For example, they ensure that cells always correspond to existing rows and columns (and do not become "orphaned" due to row/column deletion, etc.).
|
|
697
|
+
* For this reason, direct manipulation of the underlying tree structures is not supported.
|
|
698
|
+
* To modify the data, only the APIs provided here may be used.
|
|
699
|
+
*
|
|
700
|
+
* Also note: these APIs leverage `SharedTree` functionality that was added in version `2.80.0`,
|
|
701
|
+
* which is not compatible with previous versions of this library.
|
|
702
|
+
* To ensure safe collaboration, you will need to configure the {@link @fluidframework/runtime-definitions#MinimumVersionForCollab}
|
|
703
|
+
* for the Fluid Runtime and/or `SharedTree` to at least `2.80.0`.
|
|
704
|
+
* To set this minimum version for `SharedTree`, use {@link configuredSharedTreeBeta}.
|
|
597
705
|
*
|
|
598
706
|
* The primary APIs for create tabular data schema are:
|
|
599
707
|
*
|
|
@@ -616,12 +724,6 @@ function removeRangeFromArray(startIndex, endIndex, array, methodName) {
|
|
|
616
724
|
* Column and Row schema created using these APIs are extensible via the `props` field.
|
|
617
725
|
* This allows association of additional properties with column and row nodes.
|
|
618
726
|
*
|
|
619
|
-
* Cells in the table may become "orphaned."
|
|
620
|
-
* That is, it is possible to enter a state where one or more rows contain cells with no corresponding column.
|
|
621
|
-
* To reduce the likelihood of this, you can manually remove corresponding cells when removing columns.
|
|
622
|
-
* Either way, it is possible to enter such a state via the merging of edits.
|
|
623
|
-
* For example: one client might add a row while another concurrently removes a column, orphaning the cell where the column and row intersected.
|
|
624
|
-
*
|
|
625
727
|
* @example Defining a Table schema
|
|
626
728
|
*
|
|
627
729
|
* ```typescript
|
|
@@ -697,7 +799,7 @@ function removeRangeFromArray(startIndex, endIndex, array, methodName) {
|
|
|
697
799
|
* The above examples are backed by tests in `tableSchema.spec.ts`.
|
|
698
800
|
* Those tests and these examples should be kept in-sync to ensure that the examples are correct.
|
|
699
801
|
*
|
|
700
|
-
* @
|
|
802
|
+
* @beta
|
|
701
803
|
*/
|
|
702
804
|
export var TableSchema;
|
|
703
805
|
(function (TableSchema) {
|