@fluid-experimental/tree 2.10.0 → 2.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +8 -0
- package/api-report/experimental-tree.alpha.api.md +18 -0
- package/dist/UndoRedoHandler.d.ts +32 -0
- package/dist/UndoRedoHandler.d.ts.map +1 -1
- package/dist/UndoRedoHandler.js +10 -0
- package/dist/UndoRedoHandler.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/lib/UndoRedoHandler.d.ts +32 -0
- package/lib/UndoRedoHandler.d.ts.map +1 -1
- package/lib/UndoRedoHandler.js +10 -0
- package/lib/UndoRedoHandler.js.map +1 -1
- package/lib/index.d.ts +1 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +1 -0
- package/lib/index.js.map +1 -1
- package/package.json +25 -25
- package/src/UndoRedoHandler.ts +34 -0
- package/src/index.ts +2 -0
package/CHANGELOG.md
CHANGED
|
@@ -419,6 +419,12 @@ export interface InternalizedChange {
|
|
|
419
419
|
InternalChangeBrand: '2cae1045-61cf-4ef7-a6a3-8ad920cb7ab3';
|
|
420
420
|
}
|
|
421
421
|
|
|
422
|
+
// @alpha
|
|
423
|
+
export interface IRevertible {
|
|
424
|
+
discard(): any;
|
|
425
|
+
revert(): any;
|
|
426
|
+
}
|
|
427
|
+
|
|
422
428
|
// @alpha
|
|
423
429
|
export interface ISharedTreeEvents extends ISharedObjectEvents {
|
|
424
430
|
// (undocumented)
|
|
@@ -427,6 +433,11 @@ export interface ISharedTreeEvents extends ISharedObjectEvents {
|
|
|
427
433
|
(event: 'appliedSequencedEdit', listener: SequencedEditAppliedHandler): any;
|
|
428
434
|
}
|
|
429
435
|
|
|
436
|
+
// @alpha
|
|
437
|
+
export interface IUndoConsumer {
|
|
438
|
+
pushToCurrentOperation(revertible: IRevertible): any;
|
|
439
|
+
}
|
|
440
|
+
|
|
430
441
|
// @alpha
|
|
431
442
|
export type LocalCompressedId = number & {
|
|
432
443
|
readonly LocalCompressedId: '6fccb42f-e2a4-4243-bd29-f13d12b9c6d1';
|
|
@@ -721,6 +732,13 @@ export interface SharedTreeSummaryBase {
|
|
|
721
732
|
readonly version: WriteFormat;
|
|
722
733
|
}
|
|
723
734
|
|
|
735
|
+
// @alpha
|
|
736
|
+
export class SharedTreeUndoRedoHandler {
|
|
737
|
+
constructor(stackManager: IUndoConsumer);
|
|
738
|
+
attachTree(tree: SharedTree): void;
|
|
739
|
+
detachTree(tree: SharedTree): void;
|
|
740
|
+
}
|
|
741
|
+
|
|
724
742
|
// @alpha
|
|
725
743
|
export enum Side {
|
|
726
744
|
// (undocumented)
|
|
@@ -4,21 +4,53 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import { EditId } from './Identifiers.js';
|
|
6
6
|
import { SharedTree } from './SharedTree.js';
|
|
7
|
+
/**
|
|
8
|
+
* A revertible change
|
|
9
|
+
*
|
|
10
|
+
* @alpha
|
|
11
|
+
*/
|
|
7
12
|
export interface IRevertible {
|
|
13
|
+
/**
|
|
14
|
+
* Revert the change
|
|
15
|
+
*/
|
|
8
16
|
revert(): any;
|
|
17
|
+
/**
|
|
18
|
+
* Discard the change, freeing any associated resources.
|
|
19
|
+
*/
|
|
9
20
|
discard(): any;
|
|
10
21
|
}
|
|
22
|
+
/**
|
|
23
|
+
* A consumer of revertible changes.
|
|
24
|
+
*
|
|
25
|
+
* This interface is typically implemented by a stack which may optionally aggregate multiple
|
|
26
|
+
* changes into one operation.
|
|
27
|
+
*
|
|
28
|
+
* @alpha
|
|
29
|
+
*/
|
|
11
30
|
export interface IUndoConsumer {
|
|
31
|
+
/**
|
|
32
|
+
* Push a revertible to the current operation. Invoked for each change on undo consumers subscribed to a SharedTree.
|
|
33
|
+
*/
|
|
12
34
|
pushToCurrentOperation(revertible: IRevertible): any;
|
|
13
35
|
}
|
|
14
36
|
/**
|
|
15
37
|
* A shared tree undo redo handler that will add revertible local tree changes to the provided
|
|
16
38
|
* undo redo stack manager
|
|
39
|
+
*
|
|
40
|
+
* @alpha
|
|
17
41
|
*/
|
|
18
42
|
export declare class SharedTreeUndoRedoHandler {
|
|
19
43
|
private readonly stackManager;
|
|
20
44
|
constructor(stackManager: IUndoConsumer);
|
|
45
|
+
/**
|
|
46
|
+
* Attach a shared tree to this handler. Each edit from the tree will invoke `this.stackManager`'s
|
|
47
|
+
* {@link IUndoConsumer.pushToCurrentOperation} method with an associated {@link IRevertible}.
|
|
48
|
+
*/
|
|
21
49
|
attachTree(tree: SharedTree): void;
|
|
50
|
+
/**
|
|
51
|
+
* Detach a shared tree from this handler. Edits from the tree will no longer cause `this.stackManager`'s
|
|
52
|
+
* {@link IUndoConsumer.pushToCurrentOperation} to be called.
|
|
53
|
+
*/
|
|
22
54
|
detachTree(tree: SharedTree): void;
|
|
23
55
|
private readonly treeDeltaHandler;
|
|
24
56
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UndoRedoHandler.d.ts","sourceRoot":"","sources":["../src/UndoRedoHandler.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAA+B,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAK1E,MAAM,WAAW,WAAW;IAC3B,MAAM,QAAG;
|
|
1
|
+
{"version":3,"file":"UndoRedoHandler.d.ts","sourceRoot":"","sources":["../src/UndoRedoHandler.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAA+B,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAK1E;;;;GAIG;AACH,MAAM,WAAW,WAAW;IAC3B;;OAEG;IACH,MAAM,QAAG;IAET;;OAEG;IACH,OAAO,QAAG;CACV;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,aAAa;IAC7B;;OAEG;IACH,sBAAsB,CAAC,UAAU,EAAE,WAAW,OAAE;CAChD;AAED;;;;;GAKG;AACH,qBAAa,yBAAyB;IACzB,OAAO,CAAC,QAAQ,CAAC,YAAY;gBAAZ,YAAY,EAAE,aAAa;IAExD;;;OAGG;IACI,UAAU,CAAC,IAAI,EAAE,UAAU;IAIlC;;;OAGG;IACI,UAAU,CAAC,IAAI,EAAE,UAAU;IAIlC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAc/B;CACF;AAED;;GAEG;AACH,qBAAa,oBAAqB,YAAW,WAAW;IAEtD,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,IAAI;gBADJ,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,UAAU;IAG3B,MAAM;IAIN,OAAO;CAGd"}
|
package/dist/UndoRedoHandler.js
CHANGED
|
@@ -10,6 +10,8 @@ const EventTypes_js_1 = require("./EventTypes.js");
|
|
|
10
10
|
/**
|
|
11
11
|
* A shared tree undo redo handler that will add revertible local tree changes to the provided
|
|
12
12
|
* undo redo stack manager
|
|
13
|
+
*
|
|
14
|
+
* @alpha
|
|
13
15
|
*/
|
|
14
16
|
class SharedTreeUndoRedoHandler {
|
|
15
17
|
constructor(stackManager) {
|
|
@@ -21,9 +23,17 @@ class SharedTreeUndoRedoHandler {
|
|
|
21
23
|
}
|
|
22
24
|
};
|
|
23
25
|
}
|
|
26
|
+
/**
|
|
27
|
+
* Attach a shared tree to this handler. Each edit from the tree will invoke `this.stackManager`'s
|
|
28
|
+
* {@link IUndoConsumer.pushToCurrentOperation} method with an associated {@link IRevertible}.
|
|
29
|
+
*/
|
|
24
30
|
attachTree(tree) {
|
|
25
31
|
tree.on(EventTypes_js_1.SharedTreeEvent.EditCommitted, this.treeDeltaHandler);
|
|
26
32
|
}
|
|
33
|
+
/**
|
|
34
|
+
* Detach a shared tree from this handler. Edits from the tree will no longer cause `this.stackManager`'s
|
|
35
|
+
* {@link IUndoConsumer.pushToCurrentOperation} to be called.
|
|
36
|
+
*/
|
|
27
37
|
detachTree(tree) {
|
|
28
38
|
tree.off(EventTypes_js_1.SharedTreeEvent.EditCommitted, this.treeDeltaHandler);
|
|
29
39
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UndoRedoHandler.js","sourceRoot":"","sources":["../src/UndoRedoHandler.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,2CAAiD;AACjD,mDAAkD;
|
|
1
|
+
{"version":3,"file":"UndoRedoHandler.js","sourceRoot":"","sources":["../src/UndoRedoHandler.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,2CAAiD;AACjD,mDAAkD;AAuClD;;;;;GAKG;AACH,MAAa,yBAAyB;IACrC,YAA6B,YAA2B;QAA3B,iBAAY,GAAZ,YAAY,CAAe;QAkBvC,qBAAgB,GAAG,CAAC,cAA2C,EAAE,EAAE;YACnF,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,cAAc,CAAC;YAE/C,IAAI,KAAK,EAAE,CAAC;gBACX,IAAI,CAAC,YAAY,CAAC,sBAAsB,CACvC,IAAI,oBAAoB,CACvB,MAAM,EACN,IAAA,8BAAkB,EACjB,IAAI,EACJ,sGAAsG,CACtG,CACD,CACD,CAAC;YACH,CAAC;QACF,CAAC,CAAC;IAhCyD,CAAC;IAE5D;;;OAGG;IACI,UAAU,CAAC,IAAgB;QACjC,IAAI,CAAC,EAAE,CAAC,+BAAe,CAAC,aAAa,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC/D,CAAC;IAED;;;OAGG;IACI,UAAU,CAAC,IAAgB;QACjC,IAAI,CAAC,GAAG,CAAC,+BAAe,CAAC,aAAa,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAChE,CAAC;CAiBD;AAlCD,8DAkCC;AAED;;GAEG;AACH,MAAa,oBAAoB;IAChC,YACkB,MAAc,EACd,IAAgB;QADhB,WAAM,GAAN,MAAM,CAAQ;QACd,SAAI,GAAJ,IAAI,CAAY;IAC/B,CAAC;IAEG,MAAM;QACZ,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC/B,CAAC;IAEM,OAAO;QACb,OAAO;IACR,CAAC;CACD;AAbD,oDAaC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { assertNotUndefined } from './Common.js';\nimport { SharedTreeEvent } from './EventTypes.js';\nimport { EditId } from './Identifiers.js';\nimport { EditCommittedEventArguments, SharedTree } from './SharedTree.js';\n\n// TODO: We temporarily duplicate these contracts from 'framework/undo-redo' to unblock development\n// while we decide on the correct layering for undo.\n\n/**\n * A revertible change\n *\n * @alpha\n */\nexport interface IRevertible {\n\t/**\n\t * Revert the change\n\t */\n\trevert();\n\n\t/**\n\t * Discard the change, freeing any associated resources.\n\t */\n\tdiscard();\n}\n\n/**\n * A consumer of revertible changes.\n *\n * This interface is typically implemented by a stack which may optionally aggregate multiple\n * changes into one operation.\n *\n * @alpha\n */\nexport interface IUndoConsumer {\n\t/**\n\t * Push a revertible to the current operation. Invoked for each change on undo consumers subscribed to a SharedTree.\n\t */\n\tpushToCurrentOperation(revertible: IRevertible);\n}\n\n/**\n * A shared tree undo redo handler that will add revertible local tree changes to the provided\n * undo redo stack manager\n *\n * @alpha\n */\nexport class SharedTreeUndoRedoHandler {\n\tconstructor(private readonly stackManager: IUndoConsumer) {}\n\n\t/**\n\t * Attach a shared tree to this handler. Each edit from the tree will invoke `this.stackManager`'s\n\t * {@link IUndoConsumer.pushToCurrentOperation} method with an associated {@link IRevertible}.\n\t */\n\tpublic attachTree(tree: SharedTree) {\n\t\ttree.on(SharedTreeEvent.EditCommitted, this.treeDeltaHandler);\n\t}\n\n\t/**\n\t * Detach a shared tree from this handler. Edits from the tree will no longer cause `this.stackManager`'s\n\t * {@link IUndoConsumer.pushToCurrentOperation} to be called.\n\t */\n\tpublic detachTree(tree: SharedTree) {\n\t\ttree.off(SharedTreeEvent.EditCommitted, this.treeDeltaHandler);\n\t}\n\n\tprivate readonly treeDeltaHandler = (eventArguments: EditCommittedEventArguments) => {\n\t\tconst { editId, local, tree } = eventArguments;\n\n\t\tif (local) {\n\t\t\tthis.stackManager.pushToCurrentOperation(\n\t\t\t\tnew SharedTreeRevertible(\n\t\t\t\t\teditId,\n\t\t\t\t\tassertNotUndefined(\n\t\t\t\t\t\ttree,\n\t\t\t\t\t\t'An edit committed event for a revertible edit should include the target SharedTree in its arguments.'\n\t\t\t\t\t)\n\t\t\t\t)\n\t\t\t);\n\t\t}\n\t};\n}\n\n/**\n * Tracks a change on a shared tree and allows reverting it\n */\nexport class SharedTreeRevertible implements IRevertible {\n\tconstructor(\n\t\tprivate readonly editId: EditId,\n\t\tprivate readonly tree: SharedTree\n\t) {}\n\n\tpublic revert() {\n\t\tthis.tree.revert(this.editId);\n\t}\n\n\tpublic discard() {\n\t\treturn;\n\t}\n}\n"]}
|
package/dist/index.d.ts
CHANGED
|
@@ -43,4 +43,5 @@ export { Transaction, TransactionEvent, TransactionEvents } from './Transaction.
|
|
|
43
43
|
export { TransactionInternal, GenericTransaction, GenericTransactionPolicy, EditingResult, EditingResultBase, FailedEditingResult, ValidEditingResult, TransactionState, TransactionFailure, SucceedingTransactionState, FailingTransactionState, ChangeResult, } from './TransactionInternal.js';
|
|
44
44
|
export { NodeInTrait, PlaceIndex, TreeViewNode, TreeView, TraitNodeIndex, TreeViewPlace, TreeViewRange, TraitLocation, } from './TreeView.js';
|
|
45
45
|
export { type IMigrationEvent, type IShim, MigrationShim, MigrationShimFactory, SharedTreeShim, SharedTreeShimFactory, } from './migration-shim/index.js';
|
|
46
|
+
export { IRevertible, IUndoConsumer, SharedTreeUndoRedoHandler } from './UndoRedoHandler.js';
|
|
46
47
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
7
|
exports.SharedTreeShim = exports.MigrationShimFactory = exports.MigrationShim = exports.TreeView = exports.GenericTransaction = exports.TransactionInternal = exports.TransactionEvent = exports.Transaction = exports.getSerializedUploadedEditChunkContents = exports.getUploadedEditChunkContents = exports.SharedTree = exports.SharedTreeFactory = exports.rangeFromStableRange = exports.placeFromStablePlace = exports.getTraitLocationOfRange = exports.TreeNodeHandle = exports.TransactionView = exports.RevisionView = exports.StableRangeInternal = exports.StablePlaceInternal = exports.WriteFormat = exports.ChangeTypeInternal = exports.ChangeInternal = exports.ConstraintEffect = exports.EditStatus = exports.Side = exports.comparePayloads = exports.useFailedSequencedEditTelemetry = exports.SharedTreeMergeHealthTelemetryHeartbeat = exports.LazyCheckout = exports.initialTree = exports.isDetachedSequenceId = exports.Forest = exports.SharedTreeEvent = exports.SharedTreeDiagnosticEvent = exports.RangeValidationResultKind = exports.PlaceValidationResult = exports.areRevisionViewsSemanticallyEqual = exports.setTrait = exports.EagerCheckout = exports.Result = exports.sharedTreeAssertionErrorType = exports.isSharedTreeEvent = exports.EditValidationResult = exports.CheckoutEvent = exports.Checkout = exports.StableRange = exports.StablePlace = exports.ChangeType = exports.Change = void 0;
|
|
8
|
-
exports.SharedTreeShimFactory = void 0;
|
|
8
|
+
exports.SharedTreeUndoRedoHandler = exports.SharedTreeShimFactory = void 0;
|
|
9
9
|
/**
|
|
10
10
|
* Fluid DDS storing a tree.
|
|
11
11
|
*
|
|
@@ -92,4 +92,6 @@ Object.defineProperty(exports, "MigrationShim", { enumerable: true, get: functio
|
|
|
92
92
|
Object.defineProperty(exports, "MigrationShimFactory", { enumerable: true, get: function () { return index_js_2.MigrationShimFactory; } });
|
|
93
93
|
Object.defineProperty(exports, "SharedTreeShim", { enumerable: true, get: function () { return index_js_2.SharedTreeShim; } });
|
|
94
94
|
Object.defineProperty(exports, "SharedTreeShimFactory", { enumerable: true, get: function () { return index_js_2.SharedTreeShimFactory; } });
|
|
95
|
+
var UndoRedoHandler_js_1 = require("./UndoRedoHandler.js");
|
|
96
|
+
Object.defineProperty(exports, "SharedTreeUndoRedoHandler", { enumerable: true, get: function () { return UndoRedoHandler_js_1.SharedTreeUndoRedoHandler; } });
|
|
95
97
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;AAEH;;;;GAIG;AAEH;;;GAGG;AAEH,cAAc;AAEd,mDAa0B;AATzB,wGAAA,MAAM,OAAA;AACN,4GAAA,UAAU,OAAA;AAMV,6GAAA,WAAW,OAAA;AACX,6GAAA,WAAW,OAAA;AAEZ,6CAA+F;AAAtF,uGAAA,QAAQ,OAAA;AAAE,4GAAA,aAAa,OAAA;AAAmB,mHAAA,oBAAoB,OAAA;AACvE,yCAAsF;AAA7E,8GAAA,iBAAiB,OAAA;AAAE,yHAAA,4BAA4B,OAAA;AAAE,mGAAA,MAAM,OAAA;AAChE,uDAAmD;AAA1C,iHAAA,aAAa,OAAA;AAEtB,uDAQ4B;AAP3B,4GAAA,QAAQ,OAAA;AACR,qIAAA,iCAAiC,OAAA;AAGjC,yHAAA,qBAAqB,OAAA;AAErB,6HAAA,yBAAyB,OAAA;AAE1B,iDAA6E;AAApE,0HAAA,yBAAyB,OAAA;AAAE,gHAAA,eAAe,OAAA;AACnD,yCAAoE;AAApD,mGAAA,MAAM,OAAA;AAkBtB,mDAAwD;AAA/C,sHAAA,oBAAoB,OAAA;AAC7B,mDAA+C;AAAtC,6GAAA,WAAW,OAAA;AACpB,qDAAiD;AAAxC,+GAAA,YAAY,OAAA;AAGrB,mDAI0B;AAFzB,yIAAA,uCAAuC,OAAA;AACvC,iIAAA,+BAA+B,OAAA;AAEhC,6DAAwD;AAA/C,sHAAA,eAAe,OAAA;AACxB,uDAyCoC;AAxCnC,gGAAA,IAAI,OAAA;AACJ,sGAAA,UAAU,OAAA;AAIV,4GAAA,gBAAgB,OAAA;AAEhB,0GAAA,cAAc,OAAA;AAqBd,8GAAA,kBAAkB,OAAA;AAElB,uGAAA,WAAW,OAAA;AAEX,+GAAA,mBAAmB,OAAA;AACnB,+GAAA,mBAAmB,OAAA;AAcpB,qDAAkE;AAAzD,+GAAA,YAAY,OAAA;AAAE,kHAAA,eAAe,OAAA;AACtC,yDAAqD;AAA5C,mHAAA,cAAc,OAAA;AACvB,+DAIgC;AAH/B,+HAAA,uBAAuB,OAAA;AACvB,4HAAA,oBAAoB,OAAA;AACpB,4HAAA,oBAAoB,OAAA;AAErB,iDAeyB;AATxB,kHAAA,iBAAiB,OAAA;AACjB,2GAAA,UAAU,OAAA;AAWX;;GAEG;AACH,qEAGmC;AAFlC,uIAAA,sCAAsC,OAAgC;AACtE,iJAAA,sCAAsC,OAAA;AAGvC,mDAAoF;AAA3E,6GAAA,WAAW,OAAA;AAAE,kHAAA,gBAAgB,OAAA;AACtC,mEAakC;AAZjC,6HAAA,mBAAmB,OAAA;AACnB,4HAAA,kBAAkB,OAAA;AAYnB,6CASuB;AALtB,uGAAA,QAAQ,OAAA;AAOT,sDAOmC;AAJlC,yGAAA,aAAa,OAAA;AACb,gHAAA,oBAAoB,OAAA;AACpB,0GAAA,cAAc,OAAA;AACd,iHAAA,qBAAqB,OAAA","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\n/**\n * Fluid DDS storing a tree.\n *\n * @packageDocumentation\n */\n\n/**\n * This file represents the public API. Consumers of this library will not see exported modules unless they are enumerated here.\n * Removing / editing existing exports here will often indicate a breaking change, so please be cognizant of changes made here.\n */\n\n// API Exports\n\nexport {\n\tBuild,\n\tBuildNode,\n\tBuildTreeNode,\n\tChange,\n\tChangeType,\n\tConstraint,\n\tDetach,\n\tHasVariadicTraits,\n\tInsert,\n\tSetValue,\n\tStablePlace,\n\tStableRange,\n} from './ChangeTypes.js';\nexport { Checkout, CheckoutEvent, ICheckoutEvents, EditValidationResult } from './Checkout.js';\nexport { isSharedTreeEvent, sharedTreeAssertionErrorType, Result } from './Common.js';\nexport { EagerCheckout } from './EagerCheckout.js';\nexport type { OrderedEditSet, EditHandle } from './EditLog.js';\nexport {\n\tsetTrait,\n\tareRevisionViewsSemanticallyEqual,\n\tBadPlaceValidationResult,\n\tBadRangeValidationResult,\n\tPlaceValidationResult,\n\tRangeValidationResult,\n\tRangeValidationResultKind,\n} from './EditUtilities.js';\nexport { SharedTreeDiagnosticEvent, SharedTreeEvent } from './EventTypes.js';\nexport { Delta, Forest, ForestNode, ParentData } from './Forest.js';\nexport type {\n\tCompressedId,\n\tDefinition,\n\tDetachedSequenceId,\n\tEditId,\n\tInternedStringId,\n\tFinalCompressedId,\n\tLocalCompressedId,\n\tNodeId,\n\tNodeIdBrand,\n\tStableNodeId,\n\tSessionSpaceCompressedId,\n\tSessionUnique,\n\tTraitLabel,\n\tUuidString,\n\tAttributionId,\n} from './Identifiers.js';\nexport { isDetachedSequenceId } from './Identifiers.js';\nexport { initialTree } from './InitialTree.js';\nexport { LazyCheckout } from './LazyCheckout.js';\nexport { LogViewer } from './LogViewer.js';\nexport { NodeIdContext, NodeIdGenerator, NodeIdConverter } from './NodeIdUtilities.js';\nexport {\n\tMergeHealthStats,\n\tSharedTreeMergeHealthTelemetryHeartbeat,\n\tuseFailedSequencedEditTelemetry,\n} from './MergeHealth.js';\nexport { comparePayloads } from './PayloadUtilities.js';\nexport {\n\tSide,\n\tEditStatus,\n\tTreeNode,\n\tTreeNodeSequence,\n\tPayload,\n\tConstraintEffect,\n\tEdit,\n\tChangeInternal,\n\tInternalizedChange,\n\tChangeNode,\n\tChangeNode_0_0_2,\n\tEditLogSummary,\n\tFluidEditHandle,\n\tSharedTreeSummaryBase,\n\tEditWithoutId,\n\tPlaceholderTree,\n\tEditBase,\n\tHasTraits,\n\tInsertInternal,\n\tDetachInternal,\n\tBuildInternal,\n\tSetValueInternal,\n\tConstraintInternal,\n\tBuildNodeInternal,\n\tStablePlaceInternal_0_0_2,\n\tStableRangeInternal_0_0_2,\n\tNodeData,\n\tTraitMap,\n\tChangeTypeInternal,\n\tTraitLocationInternal_0_0_2,\n\tWriteFormat,\n\tConstraintInternal_0_0_2,\n\tStablePlaceInternal,\n\tStableRangeInternal,\n\tBuildNodeInternal_0_0_2,\n\tBuildInternal_0_0_2,\n\tInsertInternal_0_0_2,\n\tDetachInternal_0_0_2,\n\tSetValueInternal_0_0_2,\n\tTraitLocationInternal,\n} from './persisted-types/index.js';\nexport {\n\tReconciliationChange,\n\tReconciliationEdit,\n\tReconciliationPath,\n} from './ReconciliationPath.js';\nexport { Revision } from './RevisionValueCache.js';\nexport { RevisionView, TransactionView } from './RevisionView.js';\nexport { TreeNodeHandle } from './TreeNodeHandle.js';\nexport {\n\tgetTraitLocationOfRange,\n\tplaceFromStablePlace,\n\trangeFromStableRange,\n} from './TreeViewUtilities.js';\nexport {\n\tSharedTreeArgs,\n\tSharedTreeOptions,\n\tSharedTreeBaseOptions,\n\tSharedTreeOptions_0_0_2,\n\tSharedTreeOptions_0_1_1,\n\tSharedTreeFactory,\n\tSharedTree,\n\tEditCommittedHandler,\n\tSequencedEditAppliedHandler,\n\tEditCommittedEventArguments,\n\tSequencedEditAppliedEventArguments,\n\tEditApplicationOutcome,\n\tISharedTreeEvents,\n\tStashedLocalOpMetadata,\n} from './SharedTree.js';\nexport { StringInterner } from './StringInterner.js';\n\n/**\n * TODO:#61413: Publish test utilities from a separate test package\n */\nexport {\n\tgetSerializedUploadedEditChunkContents as getUploadedEditChunkContents,\n\tgetSerializedUploadedEditChunkContents,\n} from './SummaryTestUtilities.js';\n\nexport { Transaction, TransactionEvent, TransactionEvents } from './Transaction.js';\nexport {\n\tTransactionInternal,\n\tGenericTransaction,\n\tGenericTransactionPolicy,\n\tEditingResult,\n\tEditingResultBase,\n\tFailedEditingResult,\n\tValidEditingResult,\n\tTransactionState,\n\tTransactionFailure,\n\tSucceedingTransactionState,\n\tFailingTransactionState,\n\tChangeResult,\n} from './TransactionInternal.js';\nexport {\n\tNodeInTrait,\n\tPlaceIndex,\n\tTreeViewNode,\n\tTreeView,\n\tTraitNodeIndex,\n\tTreeViewPlace,\n\tTreeViewRange,\n\tTraitLocation,\n} from './TreeView.js';\n\nexport {\n\ttype IMigrationEvent,\n\ttype IShim,\n\tMigrationShim,\n\tMigrationShimFactory,\n\tSharedTreeShim,\n\tSharedTreeShimFactory,\n} from './migration-shim/index.js';\n"]}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;AAEH;;;;GAIG;AAEH;;;GAGG;AAEH,cAAc;AAEd,mDAa0B;AATzB,wGAAA,MAAM,OAAA;AACN,4GAAA,UAAU,OAAA;AAMV,6GAAA,WAAW,OAAA;AACX,6GAAA,WAAW,OAAA;AAEZ,6CAA+F;AAAtF,uGAAA,QAAQ,OAAA;AAAE,4GAAA,aAAa,OAAA;AAAmB,mHAAA,oBAAoB,OAAA;AACvE,yCAAsF;AAA7E,8GAAA,iBAAiB,OAAA;AAAE,yHAAA,4BAA4B,OAAA;AAAE,mGAAA,MAAM,OAAA;AAChE,uDAAmD;AAA1C,iHAAA,aAAa,OAAA;AAEtB,uDAQ4B;AAP3B,4GAAA,QAAQ,OAAA;AACR,qIAAA,iCAAiC,OAAA;AAGjC,yHAAA,qBAAqB,OAAA;AAErB,6HAAA,yBAAyB,OAAA;AAE1B,iDAA6E;AAApE,0HAAA,yBAAyB,OAAA;AAAE,gHAAA,eAAe,OAAA;AACnD,yCAAoE;AAApD,mGAAA,MAAM,OAAA;AAkBtB,mDAAwD;AAA/C,sHAAA,oBAAoB,OAAA;AAC7B,mDAA+C;AAAtC,6GAAA,WAAW,OAAA;AACpB,qDAAiD;AAAxC,+GAAA,YAAY,OAAA;AAGrB,mDAI0B;AAFzB,yIAAA,uCAAuC,OAAA;AACvC,iIAAA,+BAA+B,OAAA;AAEhC,6DAAwD;AAA/C,sHAAA,eAAe,OAAA;AACxB,uDAyCoC;AAxCnC,gGAAA,IAAI,OAAA;AACJ,sGAAA,UAAU,OAAA;AAIV,4GAAA,gBAAgB,OAAA;AAEhB,0GAAA,cAAc,OAAA;AAqBd,8GAAA,kBAAkB,OAAA;AAElB,uGAAA,WAAW,OAAA;AAEX,+GAAA,mBAAmB,OAAA;AACnB,+GAAA,mBAAmB,OAAA;AAcpB,qDAAkE;AAAzD,+GAAA,YAAY,OAAA;AAAE,kHAAA,eAAe,OAAA;AACtC,yDAAqD;AAA5C,mHAAA,cAAc,OAAA;AACvB,+DAIgC;AAH/B,+HAAA,uBAAuB,OAAA;AACvB,4HAAA,oBAAoB,OAAA;AACpB,4HAAA,oBAAoB,OAAA;AAErB,iDAeyB;AATxB,kHAAA,iBAAiB,OAAA;AACjB,2GAAA,UAAU,OAAA;AAWX;;GAEG;AACH,qEAGmC;AAFlC,uIAAA,sCAAsC,OAAgC;AACtE,iJAAA,sCAAsC,OAAA;AAGvC,mDAAoF;AAA3E,6GAAA,WAAW,OAAA;AAAE,kHAAA,gBAAgB,OAAA;AACtC,mEAakC;AAZjC,6HAAA,mBAAmB,OAAA;AACnB,4HAAA,kBAAkB,OAAA;AAYnB,6CASuB;AALtB,uGAAA,QAAQ,OAAA;AAOT,sDAOmC;AAJlC,yGAAA,aAAa,OAAA;AACb,gHAAA,oBAAoB,OAAA;AACpB,0GAAA,cAAc,OAAA;AACd,iHAAA,qBAAqB,OAAA;AAGtB,2DAA6F;AAAxD,+HAAA,yBAAyB,OAAA","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\n/**\n * Fluid DDS storing a tree.\n *\n * @packageDocumentation\n */\n\n/**\n * This file represents the public API. Consumers of this library will not see exported modules unless they are enumerated here.\n * Removing / editing existing exports here will often indicate a breaking change, so please be cognizant of changes made here.\n */\n\n// API Exports\n\nexport {\n\tBuild,\n\tBuildNode,\n\tBuildTreeNode,\n\tChange,\n\tChangeType,\n\tConstraint,\n\tDetach,\n\tHasVariadicTraits,\n\tInsert,\n\tSetValue,\n\tStablePlace,\n\tStableRange,\n} from './ChangeTypes.js';\nexport { Checkout, CheckoutEvent, ICheckoutEvents, EditValidationResult } from './Checkout.js';\nexport { isSharedTreeEvent, sharedTreeAssertionErrorType, Result } from './Common.js';\nexport { EagerCheckout } from './EagerCheckout.js';\nexport type { OrderedEditSet, EditHandle } from './EditLog.js';\nexport {\n\tsetTrait,\n\tareRevisionViewsSemanticallyEqual,\n\tBadPlaceValidationResult,\n\tBadRangeValidationResult,\n\tPlaceValidationResult,\n\tRangeValidationResult,\n\tRangeValidationResultKind,\n} from './EditUtilities.js';\nexport { SharedTreeDiagnosticEvent, SharedTreeEvent } from './EventTypes.js';\nexport { Delta, Forest, ForestNode, ParentData } from './Forest.js';\nexport type {\n\tCompressedId,\n\tDefinition,\n\tDetachedSequenceId,\n\tEditId,\n\tInternedStringId,\n\tFinalCompressedId,\n\tLocalCompressedId,\n\tNodeId,\n\tNodeIdBrand,\n\tStableNodeId,\n\tSessionSpaceCompressedId,\n\tSessionUnique,\n\tTraitLabel,\n\tUuidString,\n\tAttributionId,\n} from './Identifiers.js';\nexport { isDetachedSequenceId } from './Identifiers.js';\nexport { initialTree } from './InitialTree.js';\nexport { LazyCheckout } from './LazyCheckout.js';\nexport { LogViewer } from './LogViewer.js';\nexport { NodeIdContext, NodeIdGenerator, NodeIdConverter } from './NodeIdUtilities.js';\nexport {\n\tMergeHealthStats,\n\tSharedTreeMergeHealthTelemetryHeartbeat,\n\tuseFailedSequencedEditTelemetry,\n} from './MergeHealth.js';\nexport { comparePayloads } from './PayloadUtilities.js';\nexport {\n\tSide,\n\tEditStatus,\n\tTreeNode,\n\tTreeNodeSequence,\n\tPayload,\n\tConstraintEffect,\n\tEdit,\n\tChangeInternal,\n\tInternalizedChange,\n\tChangeNode,\n\tChangeNode_0_0_2,\n\tEditLogSummary,\n\tFluidEditHandle,\n\tSharedTreeSummaryBase,\n\tEditWithoutId,\n\tPlaceholderTree,\n\tEditBase,\n\tHasTraits,\n\tInsertInternal,\n\tDetachInternal,\n\tBuildInternal,\n\tSetValueInternal,\n\tConstraintInternal,\n\tBuildNodeInternal,\n\tStablePlaceInternal_0_0_2,\n\tStableRangeInternal_0_0_2,\n\tNodeData,\n\tTraitMap,\n\tChangeTypeInternal,\n\tTraitLocationInternal_0_0_2,\n\tWriteFormat,\n\tConstraintInternal_0_0_2,\n\tStablePlaceInternal,\n\tStableRangeInternal,\n\tBuildNodeInternal_0_0_2,\n\tBuildInternal_0_0_2,\n\tInsertInternal_0_0_2,\n\tDetachInternal_0_0_2,\n\tSetValueInternal_0_0_2,\n\tTraitLocationInternal,\n} from './persisted-types/index.js';\nexport {\n\tReconciliationChange,\n\tReconciliationEdit,\n\tReconciliationPath,\n} from './ReconciliationPath.js';\nexport { Revision } from './RevisionValueCache.js';\nexport { RevisionView, TransactionView } from './RevisionView.js';\nexport { TreeNodeHandle } from './TreeNodeHandle.js';\nexport {\n\tgetTraitLocationOfRange,\n\tplaceFromStablePlace,\n\trangeFromStableRange,\n} from './TreeViewUtilities.js';\nexport {\n\tSharedTreeArgs,\n\tSharedTreeOptions,\n\tSharedTreeBaseOptions,\n\tSharedTreeOptions_0_0_2,\n\tSharedTreeOptions_0_1_1,\n\tSharedTreeFactory,\n\tSharedTree,\n\tEditCommittedHandler,\n\tSequencedEditAppliedHandler,\n\tEditCommittedEventArguments,\n\tSequencedEditAppliedEventArguments,\n\tEditApplicationOutcome,\n\tISharedTreeEvents,\n\tStashedLocalOpMetadata,\n} from './SharedTree.js';\nexport { StringInterner } from './StringInterner.js';\n\n/**\n * TODO:#61413: Publish test utilities from a separate test package\n */\nexport {\n\tgetSerializedUploadedEditChunkContents as getUploadedEditChunkContents,\n\tgetSerializedUploadedEditChunkContents,\n} from './SummaryTestUtilities.js';\n\nexport { Transaction, TransactionEvent, TransactionEvents } from './Transaction.js';\nexport {\n\tTransactionInternal,\n\tGenericTransaction,\n\tGenericTransactionPolicy,\n\tEditingResult,\n\tEditingResultBase,\n\tFailedEditingResult,\n\tValidEditingResult,\n\tTransactionState,\n\tTransactionFailure,\n\tSucceedingTransactionState,\n\tFailingTransactionState,\n\tChangeResult,\n} from './TransactionInternal.js';\nexport {\n\tNodeInTrait,\n\tPlaceIndex,\n\tTreeViewNode,\n\tTreeView,\n\tTraitNodeIndex,\n\tTreeViewPlace,\n\tTreeViewRange,\n\tTraitLocation,\n} from './TreeView.js';\n\nexport {\n\ttype IMigrationEvent,\n\ttype IShim,\n\tMigrationShim,\n\tMigrationShimFactory,\n\tSharedTreeShim,\n\tSharedTreeShimFactory,\n} from './migration-shim/index.js';\n\nexport { IRevertible, IUndoConsumer, SharedTreeUndoRedoHandler } from './UndoRedoHandler.js';\n"]}
|
package/lib/UndoRedoHandler.d.ts
CHANGED
|
@@ -4,21 +4,53 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import { EditId } from './Identifiers.js';
|
|
6
6
|
import { SharedTree } from './SharedTree.js';
|
|
7
|
+
/**
|
|
8
|
+
* A revertible change
|
|
9
|
+
*
|
|
10
|
+
* @alpha
|
|
11
|
+
*/
|
|
7
12
|
export interface IRevertible {
|
|
13
|
+
/**
|
|
14
|
+
* Revert the change
|
|
15
|
+
*/
|
|
8
16
|
revert(): any;
|
|
17
|
+
/**
|
|
18
|
+
* Discard the change, freeing any associated resources.
|
|
19
|
+
*/
|
|
9
20
|
discard(): any;
|
|
10
21
|
}
|
|
22
|
+
/**
|
|
23
|
+
* A consumer of revertible changes.
|
|
24
|
+
*
|
|
25
|
+
* This interface is typically implemented by a stack which may optionally aggregate multiple
|
|
26
|
+
* changes into one operation.
|
|
27
|
+
*
|
|
28
|
+
* @alpha
|
|
29
|
+
*/
|
|
11
30
|
export interface IUndoConsumer {
|
|
31
|
+
/**
|
|
32
|
+
* Push a revertible to the current operation. Invoked for each change on undo consumers subscribed to a SharedTree.
|
|
33
|
+
*/
|
|
12
34
|
pushToCurrentOperation(revertible: IRevertible): any;
|
|
13
35
|
}
|
|
14
36
|
/**
|
|
15
37
|
* A shared tree undo redo handler that will add revertible local tree changes to the provided
|
|
16
38
|
* undo redo stack manager
|
|
39
|
+
*
|
|
40
|
+
* @alpha
|
|
17
41
|
*/
|
|
18
42
|
export declare class SharedTreeUndoRedoHandler {
|
|
19
43
|
private readonly stackManager;
|
|
20
44
|
constructor(stackManager: IUndoConsumer);
|
|
45
|
+
/**
|
|
46
|
+
* Attach a shared tree to this handler. Each edit from the tree will invoke `this.stackManager`'s
|
|
47
|
+
* {@link IUndoConsumer.pushToCurrentOperation} method with an associated {@link IRevertible}.
|
|
48
|
+
*/
|
|
21
49
|
attachTree(tree: SharedTree): void;
|
|
50
|
+
/**
|
|
51
|
+
* Detach a shared tree from this handler. Edits from the tree will no longer cause `this.stackManager`'s
|
|
52
|
+
* {@link IUndoConsumer.pushToCurrentOperation} to be called.
|
|
53
|
+
*/
|
|
22
54
|
detachTree(tree: SharedTree): void;
|
|
23
55
|
private readonly treeDeltaHandler;
|
|
24
56
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UndoRedoHandler.d.ts","sourceRoot":"","sources":["../src/UndoRedoHandler.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAA+B,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAK1E,MAAM,WAAW,WAAW;IAC3B,MAAM,QAAG;
|
|
1
|
+
{"version":3,"file":"UndoRedoHandler.d.ts","sourceRoot":"","sources":["../src/UndoRedoHandler.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAA+B,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAK1E;;;;GAIG;AACH,MAAM,WAAW,WAAW;IAC3B;;OAEG;IACH,MAAM,QAAG;IAET;;OAEG;IACH,OAAO,QAAG;CACV;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,aAAa;IAC7B;;OAEG;IACH,sBAAsB,CAAC,UAAU,EAAE,WAAW,OAAE;CAChD;AAED;;;;;GAKG;AACH,qBAAa,yBAAyB;IACzB,OAAO,CAAC,QAAQ,CAAC,YAAY;gBAAZ,YAAY,EAAE,aAAa;IAExD;;;OAGG;IACI,UAAU,CAAC,IAAI,EAAE,UAAU;IAIlC;;;OAGG;IACI,UAAU,CAAC,IAAI,EAAE,UAAU;IAIlC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAc/B;CACF;AAED;;GAEG;AACH,qBAAa,oBAAqB,YAAW,WAAW;IAEtD,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,IAAI;gBADJ,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,UAAU;IAG3B,MAAM;IAIN,OAAO;CAGd"}
|
package/lib/UndoRedoHandler.js
CHANGED
|
@@ -7,6 +7,8 @@ import { SharedTreeEvent } from './EventTypes.js';
|
|
|
7
7
|
/**
|
|
8
8
|
* A shared tree undo redo handler that will add revertible local tree changes to the provided
|
|
9
9
|
* undo redo stack manager
|
|
10
|
+
*
|
|
11
|
+
* @alpha
|
|
10
12
|
*/
|
|
11
13
|
export class SharedTreeUndoRedoHandler {
|
|
12
14
|
constructor(stackManager) {
|
|
@@ -18,9 +20,17 @@ export class SharedTreeUndoRedoHandler {
|
|
|
18
20
|
}
|
|
19
21
|
};
|
|
20
22
|
}
|
|
23
|
+
/**
|
|
24
|
+
* Attach a shared tree to this handler. Each edit from the tree will invoke `this.stackManager`'s
|
|
25
|
+
* {@link IUndoConsumer.pushToCurrentOperation} method with an associated {@link IRevertible}.
|
|
26
|
+
*/
|
|
21
27
|
attachTree(tree) {
|
|
22
28
|
tree.on(SharedTreeEvent.EditCommitted, this.treeDeltaHandler);
|
|
23
29
|
}
|
|
30
|
+
/**
|
|
31
|
+
* Detach a shared tree from this handler. Edits from the tree will no longer cause `this.stackManager`'s
|
|
32
|
+
* {@link IUndoConsumer.pushToCurrentOperation} to be called.
|
|
33
|
+
*/
|
|
24
34
|
detachTree(tree) {
|
|
25
35
|
tree.off(SharedTreeEvent.EditCommitted, this.treeDeltaHandler);
|
|
26
36
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UndoRedoHandler.js","sourceRoot":"","sources":["../src/UndoRedoHandler.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"UndoRedoHandler.js","sourceRoot":"","sources":["../src/UndoRedoHandler.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAuClD;;;;;GAKG;AACH,MAAM,OAAO,yBAAyB;IACrC,YAA6B,YAA2B;QAA3B,iBAAY,GAAZ,YAAY,CAAe;QAkBvC,qBAAgB,GAAG,CAAC,cAA2C,EAAE,EAAE;YACnF,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,cAAc,CAAC;YAE/C,IAAI,KAAK,EAAE,CAAC;gBACX,IAAI,CAAC,YAAY,CAAC,sBAAsB,CACvC,IAAI,oBAAoB,CACvB,MAAM,EACN,kBAAkB,CACjB,IAAI,EACJ,sGAAsG,CACtG,CACD,CACD,CAAC;YACH,CAAC;QACF,CAAC,CAAC;IAhCyD,CAAC;IAE5D;;;OAGG;IACI,UAAU,CAAC,IAAgB;QACjC,IAAI,CAAC,EAAE,CAAC,eAAe,CAAC,aAAa,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC/D,CAAC;IAED;;;OAGG;IACI,UAAU,CAAC,IAAgB;QACjC,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,aAAa,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAChE,CAAC;CAiBD;AAED;;GAEG;AACH,MAAM,OAAO,oBAAoB;IAChC,YACkB,MAAc,EACd,IAAgB;QADhB,WAAM,GAAN,MAAM,CAAQ;QACd,SAAI,GAAJ,IAAI,CAAY;IAC/B,CAAC;IAEG,MAAM;QACZ,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC/B,CAAC;IAEM,OAAO;QACb,OAAO;IACR,CAAC;CACD","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { assertNotUndefined } from './Common.js';\nimport { SharedTreeEvent } from './EventTypes.js';\nimport { EditId } from './Identifiers.js';\nimport { EditCommittedEventArguments, SharedTree } from './SharedTree.js';\n\n// TODO: We temporarily duplicate these contracts from 'framework/undo-redo' to unblock development\n// while we decide on the correct layering for undo.\n\n/**\n * A revertible change\n *\n * @alpha\n */\nexport interface IRevertible {\n\t/**\n\t * Revert the change\n\t */\n\trevert();\n\n\t/**\n\t * Discard the change, freeing any associated resources.\n\t */\n\tdiscard();\n}\n\n/**\n * A consumer of revertible changes.\n *\n * This interface is typically implemented by a stack which may optionally aggregate multiple\n * changes into one operation.\n *\n * @alpha\n */\nexport interface IUndoConsumer {\n\t/**\n\t * Push a revertible to the current operation. Invoked for each change on undo consumers subscribed to a SharedTree.\n\t */\n\tpushToCurrentOperation(revertible: IRevertible);\n}\n\n/**\n * A shared tree undo redo handler that will add revertible local tree changes to the provided\n * undo redo stack manager\n *\n * @alpha\n */\nexport class SharedTreeUndoRedoHandler {\n\tconstructor(private readonly stackManager: IUndoConsumer) {}\n\n\t/**\n\t * Attach a shared tree to this handler. Each edit from the tree will invoke `this.stackManager`'s\n\t * {@link IUndoConsumer.pushToCurrentOperation} method with an associated {@link IRevertible}.\n\t */\n\tpublic attachTree(tree: SharedTree) {\n\t\ttree.on(SharedTreeEvent.EditCommitted, this.treeDeltaHandler);\n\t}\n\n\t/**\n\t * Detach a shared tree from this handler. Edits from the tree will no longer cause `this.stackManager`'s\n\t * {@link IUndoConsumer.pushToCurrentOperation} to be called.\n\t */\n\tpublic detachTree(tree: SharedTree) {\n\t\ttree.off(SharedTreeEvent.EditCommitted, this.treeDeltaHandler);\n\t}\n\n\tprivate readonly treeDeltaHandler = (eventArguments: EditCommittedEventArguments) => {\n\t\tconst { editId, local, tree } = eventArguments;\n\n\t\tif (local) {\n\t\t\tthis.stackManager.pushToCurrentOperation(\n\t\t\t\tnew SharedTreeRevertible(\n\t\t\t\t\teditId,\n\t\t\t\t\tassertNotUndefined(\n\t\t\t\t\t\ttree,\n\t\t\t\t\t\t'An edit committed event for a revertible edit should include the target SharedTree in its arguments.'\n\t\t\t\t\t)\n\t\t\t\t)\n\t\t\t);\n\t\t}\n\t};\n}\n\n/**\n * Tracks a change on a shared tree and allows reverting it\n */\nexport class SharedTreeRevertible implements IRevertible {\n\tconstructor(\n\t\tprivate readonly editId: EditId,\n\t\tprivate readonly tree: SharedTree\n\t) {}\n\n\tpublic revert() {\n\t\tthis.tree.revert(this.editId);\n\t}\n\n\tpublic discard() {\n\t\treturn;\n\t}\n}\n"]}
|
package/lib/index.d.ts
CHANGED
|
@@ -43,4 +43,5 @@ export { Transaction, TransactionEvent, TransactionEvents } from './Transaction.
|
|
|
43
43
|
export { TransactionInternal, GenericTransaction, GenericTransactionPolicy, EditingResult, EditingResultBase, FailedEditingResult, ValidEditingResult, TransactionState, TransactionFailure, SucceedingTransactionState, FailingTransactionState, ChangeResult, } from './TransactionInternal.js';
|
|
44
44
|
export { NodeInTrait, PlaceIndex, TreeViewNode, TreeView, TraitNodeIndex, TreeViewPlace, TreeViewRange, TraitLocation, } from './TreeView.js';
|
|
45
45
|
export { type IMigrationEvent, type IShim, MigrationShim, MigrationShimFactory, SharedTreeShim, SharedTreeShimFactory, } from './migration-shim/index.js';
|
|
46
|
+
export { IRevertible, IUndoConsumer, SharedTreeUndoRedoHandler } from './UndoRedoHandler.js';
|
|
46
47
|
//# sourceMappingURL=index.d.ts.map
|
package/lib/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/lib/index.js
CHANGED
|
@@ -37,4 +37,5 @@ export { Transaction, TransactionEvent } from './Transaction.js';
|
|
|
37
37
|
export { TransactionInternal, GenericTransaction, } from './TransactionInternal.js';
|
|
38
38
|
export { TreeView, } from './TreeView.js';
|
|
39
39
|
export { MigrationShim, MigrationShimFactory, SharedTreeShim, SharedTreeShimFactory, } from './migration-shim/index.js';
|
|
40
|
+
export { SharedTreeUndoRedoHandler } from './UndoRedoHandler.js';
|
|
40
41
|
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;GAIG;AAEH;;;GAGG;AAEH,cAAc;AAEd,OAAO,EAIN,MAAM,EACN,UAAU,EAMV,WAAW,EACX,WAAW,GACX,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAmB,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAC/F,OAAO,EAAE,iBAAiB,EAAE,4BAA4B,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACtF,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,OAAO,EACN,QAAQ,EACR,iCAAiC,EAGjC,qBAAqB,EAErB,yBAAyB,GACzB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,yBAAyB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAC7E,OAAO,EAAS,MAAM,EAA0B,MAAM,aAAa,CAAC;AAkBpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGjD,OAAO,EAEN,uCAAuC,EACvC,+BAA+B,GAC/B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EACN,IAAI,EACJ,UAAU,EAIV,gBAAgB,EAEhB,cAAc,EAqBd,kBAAkB,EAElB,WAAW,EAEX,mBAAmB,EACnB,mBAAmB,GAOnB,MAAM,4BAA4B,CAAC;AAOpC,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EACN,uBAAuB,EACvB,oBAAoB,EACpB,oBAAoB,GACpB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAMN,iBAAiB,EACjB,UAAU,GAQV,MAAM,iBAAiB,CAAC;AAGzB;;GAEG;AACH,OAAO,EACN,sCAAsC,IAAI,4BAA4B,EACtE,sCAAsC,GACtC,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAqB,MAAM,kBAAkB,CAAC;AACpF,OAAO,EACN,mBAAmB,EACnB,kBAAkB,GAWlB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAIN,QAAQ,GAKR,MAAM,eAAe,CAAC;AAEvB,OAAO,EAGN,aAAa,EACb,oBAAoB,EACpB,cAAc,EACd,qBAAqB,GACrB,MAAM,2BAA2B,CAAC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\n/**\n * Fluid DDS storing a tree.\n *\n * @packageDocumentation\n */\n\n/**\n * This file represents the public API. Consumers of this library will not see exported modules unless they are enumerated here.\n * Removing / editing existing exports here will often indicate a breaking change, so please be cognizant of changes made here.\n */\n\n// API Exports\n\nexport {\n\tBuild,\n\tBuildNode,\n\tBuildTreeNode,\n\tChange,\n\tChangeType,\n\tConstraint,\n\tDetach,\n\tHasVariadicTraits,\n\tInsert,\n\tSetValue,\n\tStablePlace,\n\tStableRange,\n} from './ChangeTypes.js';\nexport { Checkout, CheckoutEvent, ICheckoutEvents, EditValidationResult } from './Checkout.js';\nexport { isSharedTreeEvent, sharedTreeAssertionErrorType, Result } from './Common.js';\nexport { EagerCheckout } from './EagerCheckout.js';\nexport type { OrderedEditSet, EditHandle } from './EditLog.js';\nexport {\n\tsetTrait,\n\tareRevisionViewsSemanticallyEqual,\n\tBadPlaceValidationResult,\n\tBadRangeValidationResult,\n\tPlaceValidationResult,\n\tRangeValidationResult,\n\tRangeValidationResultKind,\n} from './EditUtilities.js';\nexport { SharedTreeDiagnosticEvent, SharedTreeEvent } from './EventTypes.js';\nexport { Delta, Forest, ForestNode, ParentData } from './Forest.js';\nexport type {\n\tCompressedId,\n\tDefinition,\n\tDetachedSequenceId,\n\tEditId,\n\tInternedStringId,\n\tFinalCompressedId,\n\tLocalCompressedId,\n\tNodeId,\n\tNodeIdBrand,\n\tStableNodeId,\n\tSessionSpaceCompressedId,\n\tSessionUnique,\n\tTraitLabel,\n\tUuidString,\n\tAttributionId,\n} from './Identifiers.js';\nexport { isDetachedSequenceId } from './Identifiers.js';\nexport { initialTree } from './InitialTree.js';\nexport { LazyCheckout } from './LazyCheckout.js';\nexport { LogViewer } from './LogViewer.js';\nexport { NodeIdContext, NodeIdGenerator, NodeIdConverter } from './NodeIdUtilities.js';\nexport {\n\tMergeHealthStats,\n\tSharedTreeMergeHealthTelemetryHeartbeat,\n\tuseFailedSequencedEditTelemetry,\n} from './MergeHealth.js';\nexport { comparePayloads } from './PayloadUtilities.js';\nexport {\n\tSide,\n\tEditStatus,\n\tTreeNode,\n\tTreeNodeSequence,\n\tPayload,\n\tConstraintEffect,\n\tEdit,\n\tChangeInternal,\n\tInternalizedChange,\n\tChangeNode,\n\tChangeNode_0_0_2,\n\tEditLogSummary,\n\tFluidEditHandle,\n\tSharedTreeSummaryBase,\n\tEditWithoutId,\n\tPlaceholderTree,\n\tEditBase,\n\tHasTraits,\n\tInsertInternal,\n\tDetachInternal,\n\tBuildInternal,\n\tSetValueInternal,\n\tConstraintInternal,\n\tBuildNodeInternal,\n\tStablePlaceInternal_0_0_2,\n\tStableRangeInternal_0_0_2,\n\tNodeData,\n\tTraitMap,\n\tChangeTypeInternal,\n\tTraitLocationInternal_0_0_2,\n\tWriteFormat,\n\tConstraintInternal_0_0_2,\n\tStablePlaceInternal,\n\tStableRangeInternal,\n\tBuildNodeInternal_0_0_2,\n\tBuildInternal_0_0_2,\n\tInsertInternal_0_0_2,\n\tDetachInternal_0_0_2,\n\tSetValueInternal_0_0_2,\n\tTraitLocationInternal,\n} from './persisted-types/index.js';\nexport {\n\tReconciliationChange,\n\tReconciliationEdit,\n\tReconciliationPath,\n} from './ReconciliationPath.js';\nexport { Revision } from './RevisionValueCache.js';\nexport { RevisionView, TransactionView } from './RevisionView.js';\nexport { TreeNodeHandle } from './TreeNodeHandle.js';\nexport {\n\tgetTraitLocationOfRange,\n\tplaceFromStablePlace,\n\trangeFromStableRange,\n} from './TreeViewUtilities.js';\nexport {\n\tSharedTreeArgs,\n\tSharedTreeOptions,\n\tSharedTreeBaseOptions,\n\tSharedTreeOptions_0_0_2,\n\tSharedTreeOptions_0_1_1,\n\tSharedTreeFactory,\n\tSharedTree,\n\tEditCommittedHandler,\n\tSequencedEditAppliedHandler,\n\tEditCommittedEventArguments,\n\tSequencedEditAppliedEventArguments,\n\tEditApplicationOutcome,\n\tISharedTreeEvents,\n\tStashedLocalOpMetadata,\n} from './SharedTree.js';\nexport { StringInterner } from './StringInterner.js';\n\n/**\n * TODO:#61413: Publish test utilities from a separate test package\n */\nexport {\n\tgetSerializedUploadedEditChunkContents as getUploadedEditChunkContents,\n\tgetSerializedUploadedEditChunkContents,\n} from './SummaryTestUtilities.js';\n\nexport { Transaction, TransactionEvent, TransactionEvents } from './Transaction.js';\nexport {\n\tTransactionInternal,\n\tGenericTransaction,\n\tGenericTransactionPolicy,\n\tEditingResult,\n\tEditingResultBase,\n\tFailedEditingResult,\n\tValidEditingResult,\n\tTransactionState,\n\tTransactionFailure,\n\tSucceedingTransactionState,\n\tFailingTransactionState,\n\tChangeResult,\n} from './TransactionInternal.js';\nexport {\n\tNodeInTrait,\n\tPlaceIndex,\n\tTreeViewNode,\n\tTreeView,\n\tTraitNodeIndex,\n\tTreeViewPlace,\n\tTreeViewRange,\n\tTraitLocation,\n} from './TreeView.js';\n\nexport {\n\ttype IMigrationEvent,\n\ttype IShim,\n\tMigrationShim,\n\tMigrationShimFactory,\n\tSharedTreeShim,\n\tSharedTreeShimFactory,\n} from './migration-shim/index.js';\n"]}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;GAIG;AAEH;;;GAGG;AAEH,cAAc;AAEd,OAAO,EAIN,MAAM,EACN,UAAU,EAMV,WAAW,EACX,WAAW,GACX,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAmB,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAC/F,OAAO,EAAE,iBAAiB,EAAE,4BAA4B,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACtF,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,OAAO,EACN,QAAQ,EACR,iCAAiC,EAGjC,qBAAqB,EAErB,yBAAyB,GACzB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,yBAAyB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAC7E,OAAO,EAAS,MAAM,EAA0B,MAAM,aAAa,CAAC;AAkBpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGjD,OAAO,EAEN,uCAAuC,EACvC,+BAA+B,GAC/B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EACN,IAAI,EACJ,UAAU,EAIV,gBAAgB,EAEhB,cAAc,EAqBd,kBAAkB,EAElB,WAAW,EAEX,mBAAmB,EACnB,mBAAmB,GAOnB,MAAM,4BAA4B,CAAC;AAOpC,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EACN,uBAAuB,EACvB,oBAAoB,EACpB,oBAAoB,GACpB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAMN,iBAAiB,EACjB,UAAU,GAQV,MAAM,iBAAiB,CAAC;AAGzB;;GAEG;AACH,OAAO,EACN,sCAAsC,IAAI,4BAA4B,EACtE,sCAAsC,GACtC,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAqB,MAAM,kBAAkB,CAAC;AACpF,OAAO,EACN,mBAAmB,EACnB,kBAAkB,GAWlB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAIN,QAAQ,GAKR,MAAM,eAAe,CAAC;AAEvB,OAAO,EAGN,aAAa,EACb,oBAAoB,EACpB,cAAc,EACd,qBAAqB,GACrB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAA8B,yBAAyB,EAAE,MAAM,sBAAsB,CAAC","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\n/**\n * Fluid DDS storing a tree.\n *\n * @packageDocumentation\n */\n\n/**\n * This file represents the public API. Consumers of this library will not see exported modules unless they are enumerated here.\n * Removing / editing existing exports here will often indicate a breaking change, so please be cognizant of changes made here.\n */\n\n// API Exports\n\nexport {\n\tBuild,\n\tBuildNode,\n\tBuildTreeNode,\n\tChange,\n\tChangeType,\n\tConstraint,\n\tDetach,\n\tHasVariadicTraits,\n\tInsert,\n\tSetValue,\n\tStablePlace,\n\tStableRange,\n} from './ChangeTypes.js';\nexport { Checkout, CheckoutEvent, ICheckoutEvents, EditValidationResult } from './Checkout.js';\nexport { isSharedTreeEvent, sharedTreeAssertionErrorType, Result } from './Common.js';\nexport { EagerCheckout } from './EagerCheckout.js';\nexport type { OrderedEditSet, EditHandle } from './EditLog.js';\nexport {\n\tsetTrait,\n\tareRevisionViewsSemanticallyEqual,\n\tBadPlaceValidationResult,\n\tBadRangeValidationResult,\n\tPlaceValidationResult,\n\tRangeValidationResult,\n\tRangeValidationResultKind,\n} from './EditUtilities.js';\nexport { SharedTreeDiagnosticEvent, SharedTreeEvent } from './EventTypes.js';\nexport { Delta, Forest, ForestNode, ParentData } from './Forest.js';\nexport type {\n\tCompressedId,\n\tDefinition,\n\tDetachedSequenceId,\n\tEditId,\n\tInternedStringId,\n\tFinalCompressedId,\n\tLocalCompressedId,\n\tNodeId,\n\tNodeIdBrand,\n\tStableNodeId,\n\tSessionSpaceCompressedId,\n\tSessionUnique,\n\tTraitLabel,\n\tUuidString,\n\tAttributionId,\n} from './Identifiers.js';\nexport { isDetachedSequenceId } from './Identifiers.js';\nexport { initialTree } from './InitialTree.js';\nexport { LazyCheckout } from './LazyCheckout.js';\nexport { LogViewer } from './LogViewer.js';\nexport { NodeIdContext, NodeIdGenerator, NodeIdConverter } from './NodeIdUtilities.js';\nexport {\n\tMergeHealthStats,\n\tSharedTreeMergeHealthTelemetryHeartbeat,\n\tuseFailedSequencedEditTelemetry,\n} from './MergeHealth.js';\nexport { comparePayloads } from './PayloadUtilities.js';\nexport {\n\tSide,\n\tEditStatus,\n\tTreeNode,\n\tTreeNodeSequence,\n\tPayload,\n\tConstraintEffect,\n\tEdit,\n\tChangeInternal,\n\tInternalizedChange,\n\tChangeNode,\n\tChangeNode_0_0_2,\n\tEditLogSummary,\n\tFluidEditHandle,\n\tSharedTreeSummaryBase,\n\tEditWithoutId,\n\tPlaceholderTree,\n\tEditBase,\n\tHasTraits,\n\tInsertInternal,\n\tDetachInternal,\n\tBuildInternal,\n\tSetValueInternal,\n\tConstraintInternal,\n\tBuildNodeInternal,\n\tStablePlaceInternal_0_0_2,\n\tStableRangeInternal_0_0_2,\n\tNodeData,\n\tTraitMap,\n\tChangeTypeInternal,\n\tTraitLocationInternal_0_0_2,\n\tWriteFormat,\n\tConstraintInternal_0_0_2,\n\tStablePlaceInternal,\n\tStableRangeInternal,\n\tBuildNodeInternal_0_0_2,\n\tBuildInternal_0_0_2,\n\tInsertInternal_0_0_2,\n\tDetachInternal_0_0_2,\n\tSetValueInternal_0_0_2,\n\tTraitLocationInternal,\n} from './persisted-types/index.js';\nexport {\n\tReconciliationChange,\n\tReconciliationEdit,\n\tReconciliationPath,\n} from './ReconciliationPath.js';\nexport { Revision } from './RevisionValueCache.js';\nexport { RevisionView, TransactionView } from './RevisionView.js';\nexport { TreeNodeHandle } from './TreeNodeHandle.js';\nexport {\n\tgetTraitLocationOfRange,\n\tplaceFromStablePlace,\n\trangeFromStableRange,\n} from './TreeViewUtilities.js';\nexport {\n\tSharedTreeArgs,\n\tSharedTreeOptions,\n\tSharedTreeBaseOptions,\n\tSharedTreeOptions_0_0_2,\n\tSharedTreeOptions_0_1_1,\n\tSharedTreeFactory,\n\tSharedTree,\n\tEditCommittedHandler,\n\tSequencedEditAppliedHandler,\n\tEditCommittedEventArguments,\n\tSequencedEditAppliedEventArguments,\n\tEditApplicationOutcome,\n\tISharedTreeEvents,\n\tStashedLocalOpMetadata,\n} from './SharedTree.js';\nexport { StringInterner } from './StringInterner.js';\n\n/**\n * TODO:#61413: Publish test utilities from a separate test package\n */\nexport {\n\tgetSerializedUploadedEditChunkContents as getUploadedEditChunkContents,\n\tgetSerializedUploadedEditChunkContents,\n} from './SummaryTestUtilities.js';\n\nexport { Transaction, TransactionEvent, TransactionEvents } from './Transaction.js';\nexport {\n\tTransactionInternal,\n\tGenericTransaction,\n\tGenericTransactionPolicy,\n\tEditingResult,\n\tEditingResultBase,\n\tFailedEditingResult,\n\tValidEditingResult,\n\tTransactionState,\n\tTransactionFailure,\n\tSucceedingTransactionState,\n\tFailingTransactionState,\n\tChangeResult,\n} from './TransactionInternal.js';\nexport {\n\tNodeInTrait,\n\tPlaceIndex,\n\tTreeViewNode,\n\tTreeView,\n\tTraitNodeIndex,\n\tTreeViewPlace,\n\tTreeViewRange,\n\tTraitLocation,\n} from './TreeView.js';\n\nexport {\n\ttype IMigrationEvent,\n\ttype IShim,\n\tMigrationShim,\n\tMigrationShimFactory,\n\tSharedTreeShim,\n\tSharedTreeShimFactory,\n} from './migration-shim/index.js';\n\nexport { IRevertible, IUndoConsumer, SharedTreeUndoRedoHandler } from './UndoRedoHandler.js';\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fluid-experimental/tree",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.12.0",
|
|
4
4
|
"description": "Distributed tree",
|
|
5
5
|
"homepage": "https://fluidframework.com",
|
|
6
6
|
"repository": {
|
|
@@ -37,18 +37,18 @@
|
|
|
37
37
|
"main": "lib/index.js",
|
|
38
38
|
"types": "lib/index.d.ts",
|
|
39
39
|
"dependencies": {
|
|
40
|
-
"@fluid-internal/client-utils": "~2.
|
|
41
|
-
"@fluidframework/container-definitions": "~2.
|
|
42
|
-
"@fluidframework/core-interfaces": "~2.
|
|
43
|
-
"@fluidframework/core-utils": "~2.
|
|
44
|
-
"@fluidframework/datastore-definitions": "~2.
|
|
45
|
-
"@fluidframework/driver-definitions": "~2.
|
|
46
|
-
"@fluidframework/id-compressor": "~2.
|
|
47
|
-
"@fluidframework/runtime-definitions": "~2.
|
|
48
|
-
"@fluidframework/runtime-utils": "~2.
|
|
49
|
-
"@fluidframework/shared-object-base": "~2.
|
|
50
|
-
"@fluidframework/telemetry-utils": "~2.
|
|
51
|
-
"@fluidframework/tree": "~2.
|
|
40
|
+
"@fluid-internal/client-utils": "~2.12.0",
|
|
41
|
+
"@fluidframework/container-definitions": "~2.12.0",
|
|
42
|
+
"@fluidframework/core-interfaces": "~2.12.0",
|
|
43
|
+
"@fluidframework/core-utils": "~2.12.0",
|
|
44
|
+
"@fluidframework/datastore-definitions": "~2.12.0",
|
|
45
|
+
"@fluidframework/driver-definitions": "~2.12.0",
|
|
46
|
+
"@fluidframework/id-compressor": "~2.12.0",
|
|
47
|
+
"@fluidframework/runtime-definitions": "~2.12.0",
|
|
48
|
+
"@fluidframework/runtime-utils": "~2.12.0",
|
|
49
|
+
"@fluidframework/shared-object-base": "~2.12.0",
|
|
50
|
+
"@fluidframework/telemetry-utils": "~2.12.0",
|
|
51
|
+
"@fluidframework/tree": "~2.12.0",
|
|
52
52
|
"@tylerbu/sorted-btree-es6": "^1.8.0",
|
|
53
53
|
"buffer": "^6.0.3",
|
|
54
54
|
"denque": "^1.5.1",
|
|
@@ -56,22 +56,22 @@
|
|
|
56
56
|
"uuid": "^9.0.0"
|
|
57
57
|
},
|
|
58
58
|
"devDependencies": {
|
|
59
|
-
"@arethetypeswrong/cli": "^0.
|
|
59
|
+
"@arethetypeswrong/cli": "^0.17.1",
|
|
60
60
|
"@biomejs/biome": "~1.9.3",
|
|
61
|
-
"@fluid-internal/mocha-test-setup": "~2.
|
|
62
|
-
"@fluid-private/stochastic-test-utils": "~2.
|
|
63
|
-
"@fluid-private/test-drivers": "~2.
|
|
61
|
+
"@fluid-internal/mocha-test-setup": "~2.12.0",
|
|
62
|
+
"@fluid-private/stochastic-test-utils": "~2.12.0",
|
|
63
|
+
"@fluid-private/test-drivers": "~2.12.0",
|
|
64
64
|
"@fluid-tools/benchmark": "^0.50.0",
|
|
65
65
|
"@fluidframework/build-common": "^2.0.3",
|
|
66
66
|
"@fluidframework/build-tools": "^0.51.0",
|
|
67
|
-
"@fluidframework/container-definitions": "~2.
|
|
68
|
-
"@fluidframework/container-loader": "~2.
|
|
69
|
-
"@fluidframework/container-runtime": "~2.
|
|
70
|
-
"@fluidframework/eslint-config-fluid": "^5.
|
|
71
|
-
"@fluidframework/runtime-utils": "~2.
|
|
72
|
-
"@fluidframework/test-runtime-utils": "~2.
|
|
73
|
-
"@fluidframework/test-utils": "~2.
|
|
74
|
-
"@fluidframework/undo-redo": "~2.
|
|
67
|
+
"@fluidframework/container-definitions": "~2.12.0",
|
|
68
|
+
"@fluidframework/container-loader": "~2.12.0",
|
|
69
|
+
"@fluidframework/container-runtime": "~2.12.0",
|
|
70
|
+
"@fluidframework/eslint-config-fluid": "^5.6.0",
|
|
71
|
+
"@fluidframework/runtime-utils": "~2.12.0",
|
|
72
|
+
"@fluidframework/test-runtime-utils": "~2.12.0",
|
|
73
|
+
"@fluidframework/test-utils": "~2.12.0",
|
|
74
|
+
"@fluidframework/undo-redo": "~2.12.0",
|
|
75
75
|
"@microsoft/api-extractor": "7.47.8",
|
|
76
76
|
"@types/chai": "^4.0.0",
|
|
77
77
|
"@types/lru-cache": "^5.1.0",
|
package/src/UndoRedoHandler.ts
CHANGED
|
@@ -11,25 +11,59 @@ import { EditCommittedEventArguments, SharedTree } from './SharedTree.js';
|
|
|
11
11
|
// TODO: We temporarily duplicate these contracts from 'framework/undo-redo' to unblock development
|
|
12
12
|
// while we decide on the correct layering for undo.
|
|
13
13
|
|
|
14
|
+
/**
|
|
15
|
+
* A revertible change
|
|
16
|
+
*
|
|
17
|
+
* @alpha
|
|
18
|
+
*/
|
|
14
19
|
export interface IRevertible {
|
|
20
|
+
/**
|
|
21
|
+
* Revert the change
|
|
22
|
+
*/
|
|
15
23
|
revert();
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* Discard the change, freeing any associated resources.
|
|
27
|
+
*/
|
|
16
28
|
discard();
|
|
17
29
|
}
|
|
18
30
|
|
|
31
|
+
/**
|
|
32
|
+
* A consumer of revertible changes.
|
|
33
|
+
*
|
|
34
|
+
* This interface is typically implemented by a stack which may optionally aggregate multiple
|
|
35
|
+
* changes into one operation.
|
|
36
|
+
*
|
|
37
|
+
* @alpha
|
|
38
|
+
*/
|
|
19
39
|
export interface IUndoConsumer {
|
|
40
|
+
/**
|
|
41
|
+
* Push a revertible to the current operation. Invoked for each change on undo consumers subscribed to a SharedTree.
|
|
42
|
+
*/
|
|
20
43
|
pushToCurrentOperation(revertible: IRevertible);
|
|
21
44
|
}
|
|
22
45
|
|
|
23
46
|
/**
|
|
24
47
|
* A shared tree undo redo handler that will add revertible local tree changes to the provided
|
|
25
48
|
* undo redo stack manager
|
|
49
|
+
*
|
|
50
|
+
* @alpha
|
|
26
51
|
*/
|
|
27
52
|
export class SharedTreeUndoRedoHandler {
|
|
28
53
|
constructor(private readonly stackManager: IUndoConsumer) {}
|
|
29
54
|
|
|
55
|
+
/**
|
|
56
|
+
* Attach a shared tree to this handler. Each edit from the tree will invoke `this.stackManager`'s
|
|
57
|
+
* {@link IUndoConsumer.pushToCurrentOperation} method with an associated {@link IRevertible}.
|
|
58
|
+
*/
|
|
30
59
|
public attachTree(tree: SharedTree) {
|
|
31
60
|
tree.on(SharedTreeEvent.EditCommitted, this.treeDeltaHandler);
|
|
32
61
|
}
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* Detach a shared tree from this handler. Edits from the tree will no longer cause `this.stackManager`'s
|
|
65
|
+
* {@link IUndoConsumer.pushToCurrentOperation} to be called.
|
|
66
|
+
*/
|
|
33
67
|
public detachTree(tree: SharedTree) {
|
|
34
68
|
tree.off(SharedTreeEvent.EditCommitted, this.treeDeltaHandler);
|
|
35
69
|
}
|