document-model 5.1.0 → 5.2.0-dev.2

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.
Files changed (97) hide show
  1. package/dist/src/core/actions.d.ts +10 -2
  2. package/dist/src/core/actions.d.ts.map +1 -1
  3. package/dist/src/core/actions.js +8 -5
  4. package/dist/src/core/actions.js.map +1 -1
  5. package/dist/src/core/documents.d.ts +21 -3
  6. package/dist/src/core/documents.d.ts.map +1 -1
  7. package/dist/src/core/documents.js +73 -9
  8. package/dist/src/core/documents.js.map +1 -1
  9. package/dist/src/core/errors.d.ts.map +1 -1
  10. package/dist/src/core/errors.js +1 -2
  11. package/dist/src/core/errors.js.map +1 -1
  12. package/dist/src/core/files.js +4 -13
  13. package/dist/src/core/files.js.map +1 -1
  14. package/dist/src/core/header.d.ts +7 -11
  15. package/dist/src/core/header.d.ts.map +1 -1
  16. package/dist/src/core/header.js +45 -54
  17. package/dist/src/core/header.js.map +1 -1
  18. package/dist/src/core/operations.d.ts +16 -0
  19. package/dist/src/core/operations.d.ts.map +1 -1
  20. package/dist/src/core/operations.js +38 -0
  21. package/dist/src/core/operations.js.map +1 -1
  22. package/dist/src/core/ph-types.d.ts +64 -8
  23. package/dist/src/core/ph-types.d.ts.map +1 -1
  24. package/dist/src/core/ph-types.js.map +1 -1
  25. package/dist/src/core/reducer.d.ts +5 -3
  26. package/dist/src/core/reducer.d.ts.map +1 -1
  27. package/dist/src/core/reducer.js +61 -22
  28. package/dist/src/core/reducer.js.map +1 -1
  29. package/dist/src/core/schemas.d.ts +51 -107
  30. package/dist/src/core/schemas.d.ts.map +1 -1
  31. package/dist/src/core/schemas.js.map +1 -1
  32. package/dist/src/core/state.js +1 -1
  33. package/dist/src/core/state.js.map +1 -1
  34. package/dist/src/core/types.d.ts +39 -7
  35. package/dist/src/core/types.d.ts.map +1 -1
  36. package/dist/src/core/utils.d.ts +4 -0
  37. package/dist/src/core/utils.d.ts.map +1 -1
  38. package/dist/src/core/utils.js +8 -0
  39. package/dist/src/core/utils.js.map +1 -1
  40. package/dist/src/document-model/actions.d.ts.map +1 -1
  41. package/dist/src/document-model/actions.js +3 -1
  42. package/dist/src/document-model/actions.js.map +1 -1
  43. package/dist/src/document-model/document-schema.d.ts +32 -226
  44. package/dist/src/document-model/document-schema.d.ts.map +1 -1
  45. package/dist/src/document-model/reducers.d.ts.map +1 -1
  46. package/dist/src/document-model/reducers.js +5 -0
  47. package/dist/src/document-model/reducers.js.map +1 -1
  48. package/dist/src/document-model/schemas.d.ts +132 -392
  49. package/dist/src/document-model/schemas.d.ts.map +1 -1
  50. package/dist/src/document-model/schemas.js +1 -1
  51. package/dist/src/document-model/schemas.js.map +1 -1
  52. package/dist/src/document-model/types.d.ts +2 -0
  53. package/dist/src/document-model/types.d.ts.map +1 -1
  54. package/dist/src/document-model/validation.d.ts +25 -0
  55. package/dist/src/document-model/validation.d.ts.map +1 -1
  56. package/dist/src/document-model/validation.js +64 -3
  57. package/dist/src/document-model/validation.js.map +1 -1
  58. package/dist/src/index.d.ts +1 -1
  59. package/dist/src/index.d.ts.map +1 -1
  60. package/dist/src/index.js +1 -1
  61. package/dist/src/index.js.map +1 -1
  62. package/dist/test/document/crypto.test.js +28 -27
  63. package/dist/test/document/crypto.test.js.map +1 -1
  64. package/dist/test/document/event-vs-command.test.js +4 -1
  65. package/dist/test/document/event-vs-command.test.js.map +1 -1
  66. package/dist/test/document/operation-id.test.js +8 -45
  67. package/dist/test/document/operation-id.test.js.map +1 -1
  68. package/dist/test/document/reducer.test.js +4 -1
  69. package/dist/test/document/reducer.test.js.map +1 -1
  70. package/dist/test/document/skip-operations.test.js +4 -4
  71. package/dist/test/document/skip-operations.test.js.map +1 -1
  72. package/dist/test/document/undo-redo-v2.test.d.ts +2 -0
  73. package/dist/test/document/undo-redo-v2.test.d.ts.map +1 -0
  74. package/dist/test/document/undo-redo-v2.test.js +207 -0
  75. package/dist/test/document/undo-redo-v2.test.js.map +1 -0
  76. package/dist/test/document/undo-redo.test.js +23 -8
  77. package/dist/test/document/undo-redo.test.js.map +1 -1
  78. package/dist/test/document/utils.test.js +37 -22
  79. package/dist/test/document/utils.test.js.map +1 -1
  80. package/dist/test/document-helpers/groupOperationsByScope.test.js +9 -5
  81. package/dist/test/document-helpers/groupOperationsByScope.test.js.map +1 -1
  82. package/dist/test/document-helpers/removeExistingOperations.test.js +46 -31
  83. package/dist/test/document-helpers/removeExistingOperations.test.js.map +1 -1
  84. package/dist/test/document-helpers/skipHeaderOperations.test.js +7 -2
  85. package/dist/test/document-helpers/skipHeaderOperations.test.js.map +1 -1
  86. package/dist/test/document-helpers/utils.d.ts +6 -0
  87. package/dist/test/document-helpers/utils.d.ts.map +1 -1
  88. package/dist/test/document-helpers/utils.js +34 -0
  89. package/dist/test/document-helpers/utils.js.map +1 -1
  90. package/dist/test/document-model/replay.test.js +5 -5
  91. package/dist/test/document-model/replay.test.js.map +1 -1
  92. package/dist/test/document-model/skip-operations.test.js +1 -1
  93. package/dist/test/document-model/skip-operations.test.js.map +1 -1
  94. package/dist/test/document-model/validation.test.js +197 -1
  95. package/dist/test/document-model/validation.test.js.map +1 -1
  96. package/dist/tsconfig.tsbuildinfo +1 -1
  97. package/package.json +2 -2
@@ -56,44 +56,19 @@ describe("Document Operation ID", () => {
56
56
  }
57
57
  }
58
58
  });
59
- it("should not add id field if existing operation does not include it", () => {
60
- document = countReducer(document, increment());
61
- document = countReducer(document, increment());
62
- document = countReducer(document, increment());
63
- document = {
64
- ...document,
65
- operations: {
66
- ...document.operations,
67
- global: document.operations.global.map((op) => {
68
- const { id, ...operation } = op;
69
- return operation;
70
- }),
71
- },
72
- };
73
- document = countReducer(document, increment());
74
- expect(document.operations.global).toHaveLength(4);
75
- for (const operation of document.operations.global) {
76
- if (operation.index === 3) {
77
- expect(operation.id).toBeDefined();
78
- }
79
- else {
80
- expect(operation.id).toBeUndefined();
81
- }
82
- }
83
- });
84
59
  it("should not change operations id when replay deocument", () => {
85
60
  document = countReducer(document, increment());
86
61
  document = countReducer(document, increment());
87
62
  document = countReducer(document, increment());
88
63
  const clearedOperations = garbageCollectDocumentOperations(document.operations);
89
- const replayedDoc = replayOperations(initialState, clearedOperations, baseCountReducer);
64
+ const replayedDoc = replayOperations(initialState, clearedOperations, baseCountReducer, document.header);
90
65
  expect(replayedDoc.operations.global).toHaveLength(3);
91
66
  expect(document.operations.global).toHaveLength(3);
92
67
  for (let i = 0; i < document.operations.global.length; i++) {
93
68
  expect(replayedDoc.operations.global[i].id).toBe(document.operations.global[i].id);
94
69
  }
95
70
  });
96
- it("should not assign an id to existing operations when replay document", () => {
71
+ it("should derive ids for existing operations without ids when replay document", () => {
97
72
  document = countReducer(document, increment());
98
73
  document = countReducer(document, increment());
99
74
  document = countReducer(document, increment());
@@ -109,20 +84,14 @@ describe("Document Operation ID", () => {
109
84
  };
110
85
  document = countReducer(document, increment());
111
86
  const clearedOperations = garbageCollectDocumentOperations(document.operations);
112
- const replayedDoc = replayOperations(initialState, clearedOperations, baseCountReducer);
87
+ const replayedDoc = replayOperations(initialState, clearedOperations, baseCountReducer, document.header);
113
88
  expect(replayedDoc.operations.global).toHaveLength(4);
114
89
  expect(document.operations.global).toHaveLength(4);
115
90
  for (let i = 0; i < document.operations.global.length; i++) {
116
- if (i === 3) {
117
- expect(replayedDoc.operations.global[i].id).toBeDefined();
118
- }
119
- else {
120
- expect(replayedDoc.operations.global[i].id).toBeUndefined();
121
- }
122
- expect(replayedDoc.operations.global[i].id).toBe(document.operations.global[i].id);
91
+ expect(replayedDoc.operations.global[i].id).toBeDefined();
123
92
  }
124
93
  });
125
- it("should not add id if existing operation does not include id field when replay document", () => {
94
+ it("should derive ids for operations missing id field when replay document", () => {
126
95
  document = countReducer(document, increment());
127
96
  document = countReducer(document, increment());
128
97
  document = countReducer(document, increment());
@@ -131,24 +100,18 @@ describe("Document Operation ID", () => {
131
100
  operations: {
132
101
  ...document.operations,
133
102
  global: document.operations.global.map((op) => {
134
- const { id, ...operation } = op;
103
+ const { id: _id, ...operation } = op;
135
104
  return operation;
136
105
  }),
137
106
  },
138
107
  };
139
108
  document = countReducer(document, increment());
140
109
  const clearedOperations = garbageCollectDocumentOperations(document.operations);
141
- const replayedDoc = replayOperations(initialState, clearedOperations, baseCountReducer);
110
+ const replayedDoc = replayOperations(initialState, clearedOperations, baseCountReducer, document.header);
142
111
  expect(replayedDoc.operations.global).toHaveLength(4);
143
112
  expect(document.operations.global).toHaveLength(4);
144
113
  for (let i = 0; i < document.operations.global.length; i++) {
145
- if (i === 3) {
146
- expect(replayedDoc.operations.global[i].id).toBeDefined();
147
- }
148
- else {
149
- expect(replayedDoc.operations.global[i].id).toBeUndefined();
150
- }
151
- expect(replayedDoc.operations.global[i].id).toBe(document.operations.global[i].id);
114
+ expect(replayedDoc.operations.global[i].id).toBeDefined();
152
115
  }
153
116
  });
154
117
  });
@@ -1 +1 @@
1
- {"version":3,"file":"operation-id.test.js","sourceRoot":"","sources":["../../../test/document/operation-id.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"operation-id.test.js","sourceRoot":"","sources":["../../../test/document/operation-id.test.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { setName } from "document-model";
2
- import { baseCreateDocument, createAction, createReducer, generateId, } from "document-model/core";
2
+ import { baseCreateDocument, createAction, createReducer, deriveOperationId, generateId, } from "document-model/core";
3
3
  import { countReducer, createCountDocumentState, defaultPHDocumentCreateState, error, fakeAction, increment, testCreateBaseState, wrappedEmptyReducer, } from "document-model/test";
4
4
  import { beforeAll, describe, expect, it, vi } from "vitest";
5
5
  describe("Base reducer", () => {
@@ -135,6 +135,7 @@ describe("Base reducer", () => {
135
135
  wrappedEmptyReducer(document, action, undefined, {
136
136
  replayOptions: {
137
137
  operation: {
138
+ id: deriveOperationId(document.header.id, "global", document.header.branch, action.id),
138
139
  action,
139
140
  hash: "",
140
141
  timestampUtcMs: action.timestampUtcMs,
@@ -168,6 +169,7 @@ describe("Base reducer", () => {
168
169
  skip: 1,
169
170
  replayOptions: {
170
171
  operation: {
172
+ id: deriveOperationId(document.header.id, "global", document.header.branch, action.id),
171
173
  action,
172
174
  hash: "",
173
175
  timestampUtcMs: action.timestampUtcMs,
@@ -200,6 +202,7 @@ describe("Base reducer", () => {
200
202
  pruneOnSkip: false,
201
203
  replayOptions: {
202
204
  operation: {
205
+ id: deriveOperationId(document.header.id, "global", document.header.branch, action.id),
203
206
  action,
204
207
  skip: 1,
205
208
  index: 3,
@@ -1 +1 @@
1
- {"version":3,"file":"reducer.test.js","sourceRoot":"","sources":["../../../test/document/reducer.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reducer.test.js","sourceRoot":"","sources":["../../../test/document/reducer.test.ts"],"names":[],"mappings":"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"}
@@ -239,7 +239,7 @@ describe("skip operations", () => {
239
239
  // valid operation, skip 1
240
240
  document, increment(), undefined, { skip: 1, ignoreSkipOperations: false });
241
241
  const clearedOperations = garbageCollectDocumentOperations(document.operations);
242
- const replayedDoc = replayOperations(initialState, clearedOperations, baseCountReducer);
242
+ const replayedDoc = replayOperations(initialState, clearedOperations, baseCountReducer, document.header);
243
243
  expect(replayedDoc.header.revision.global).toBe(3);
244
244
  expect(replayedDoc.operations.global.length).toBe(2);
245
245
  expect(replayedDoc.operations.global).toMatchObject([
@@ -266,7 +266,7 @@ describe("skip operations", () => {
266
266
  // valid operation, skip 3
267
267
  document, increment(), undefined, { skip: 3, ignoreSkipOperations: true });
268
268
  const clearedOperations = garbageCollectDocumentOperations(document.operations);
269
- const replayedDoc = replayOperations(initialState, clearedOperations, baseCountReducer);
269
+ const replayedDoc = replayOperations(initialState, clearedOperations, baseCountReducer, document.header);
270
270
  expect(replayedDoc.header.revision.global).toBe(5);
271
271
  expect(replayedDoc.operations.global.length).toBe(2);
272
272
  expect(replayedDoc.operations.global).toMatchObject([
@@ -296,7 +296,7 @@ describe("skip operations", () => {
296
296
  // valid operation, skip 1
297
297
  document, increment(), undefined, { skip: 1, ignoreSkipOperations: true });
298
298
  const clearedOperations = garbageCollectDocumentOperations(document.operations);
299
- const replayedDoc = replayOperations(initialState, clearedOperations, baseCountReducer);
299
+ const replayedDoc = replayOperations(initialState, clearedOperations, baseCountReducer, document.header);
300
300
  expect(replayedDoc.header.revision.global).toBe(6);
301
301
  expect(replayedDoc.operations.global.length).toBe(4);
302
302
  expect(replayedDoc.operations.global).toMatchObject([
@@ -333,7 +333,7 @@ describe("skip operations", () => {
333
333
  // valid operation, skip 4
334
334
  document, increment(), undefined, { skip: 4, ignoreSkipOperations: true });
335
335
  const clearedOperations = garbageCollectDocumentOperations(document.operations);
336
- const replayedDoc = replayOperations(initialState, clearedOperations, baseCountReducer);
336
+ const replayedDoc = replayOperations(initialState, clearedOperations, baseCountReducer, document.header);
337
337
  expect(replayedDoc.header.revision.global).toBe(5);
338
338
  expect(replayedDoc.operations.global.length).toBe(1);
339
339
  expect(replayedDoc.operations.global).toMatchObject([
@@ -1 +1 @@
1
- {"version":3,"file":"skip-operations.test.js","sourceRoot":"","sources":["../../../test/document/skip-operations.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skip-operations.test.js","sourceRoot":"","sources":["../../../test/document/skip-operations.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=undo-redo-v2.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"undo-redo-v2.test.d.ts","sourceRoot":"","sources":["../../../test/document/undo-redo-v2.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,207 @@
1
+ import { baseCreateDocument, processUndoRedo, undo } from "document-model/core";
2
+ import { countReducer, createCountDocumentState, increment, testCreateBaseState, } from "document-model/test";
3
+ import { beforeEach, describe, expect, it } from "vitest";
4
+ describe("UNDO/REDO with protocolVersion: 2", () => {
5
+ let document;
6
+ beforeEach(() => {
7
+ const initialState = testCreateBaseState({ count: 0 }, { name: "" });
8
+ document = baseCreateDocument(createCountDocumentState, initialState);
9
+ document = countReducer(document, increment());
10
+ document = countReducer(document, increment());
11
+ document = countReducer(document, increment());
12
+ });
13
+ describe("processUndoRedo with protocolVersion: 2", () => {
14
+ it("should return reuseLastOperationIndex: false", () => {
15
+ const undoAction = undo();
16
+ const result = processUndoRedo(document, undoAction, 0, 2);
17
+ expect(result.reuseLastOperationIndex).toBe(false);
18
+ });
19
+ it("should always return skip=1 for v2", () => {
20
+ const undoAction = undo();
21
+ const result = processUndoRedo(document, undoAction, 0, 2);
22
+ expect(result.skip).toBe(1);
23
+ expect(result.action.type).toBe("NOOP");
24
+ });
25
+ it("should always return reuseLastOperationIndex: false even after NOOP", () => {
26
+ document = countReducer(document, undo());
27
+ const undoAction = undo();
28
+ const result = processUndoRedo(document, undoAction, 0, 2);
29
+ expect(result.reuseLastOperationIndex).toBe(false);
30
+ });
31
+ });
32
+ describe("comparison: protocolVersion 1 vs 2", () => {
33
+ it("protocolVersion 1 allows index reuse after NOOP", () => {
34
+ document = countReducer(document, undo());
35
+ const undoAction = undo();
36
+ const resultV1 = processUndoRedo(document, undoAction, 0, 1);
37
+ expect(resultV1.reuseLastOperationIndex).toBe(true);
38
+ });
39
+ it("protocolVersion 2 never allows index reuse", () => {
40
+ document = countReducer(document, undo());
41
+ const undoAction = undo();
42
+ const resultV2 = processUndoRedo(document, undoAction, 0, 2);
43
+ expect(resultV2.reuseLastOperationIndex).toBe(false);
44
+ });
45
+ });
46
+ describe("end-to-end with protocolVersion: 2 in reducer", () => {
47
+ it("should create NOOP operations with correct skip value", () => {
48
+ document = countReducer(document, undo(), undefined, {
49
+ protocolVersion: 2,
50
+ });
51
+ const ops = document.operations.global;
52
+ const lastOp = ops[ops.length - 1];
53
+ expect(lastOp.action.type).toBe("NOOP");
54
+ expect(lastOp.skip).toBe(1);
55
+ expect(lastOp.index).toBe(3);
56
+ });
57
+ it("protocolVersion 2 always creates NOOPs with skip=1", () => {
58
+ document = countReducer(document, undo(), undefined, {
59
+ protocolVersion: 2,
60
+ });
61
+ const ops = document.operations.global;
62
+ const noopOp = ops.find((op) => op.action.type === "NOOP");
63
+ expect(noopOp).toBeDefined();
64
+ expect(noopOp.skip).toBe(1);
65
+ });
66
+ it("should correctly undo state with protocolVersion 2", () => {
67
+ expect(document.state.global.count).toBe(3);
68
+ document = countReducer(document, undo(), undefined, {
69
+ protocolVersion: 2,
70
+ });
71
+ expect(document.state.global.count).toBe(2);
72
+ });
73
+ it("consecutive undos should all have skip=1 and incrementing indices", () => {
74
+ // First undo
75
+ document = countReducer(document, undo(), undefined, {
76
+ protocolVersion: 2,
77
+ });
78
+ const ops1 = document.operations.global;
79
+ const noop1 = ops1[ops1.length - 1];
80
+ expect(noop1.action.type).toBe("NOOP");
81
+ expect(noop1.skip).toBe(1);
82
+ expect(noop1.index).toBe(3);
83
+ expect(document.state.global.count).toBe(2);
84
+ // Second undo
85
+ document = countReducer(document, undo(), undefined, {
86
+ protocolVersion: 2,
87
+ });
88
+ const ops2 = document.operations.global;
89
+ const noop2 = ops2[ops2.length - 1];
90
+ expect(noop2.action.type).toBe("NOOP");
91
+ expect(noop2.skip).toBe(1);
92
+ expect(noop2.index).toBe(4); // Should increment, not reuse
93
+ expect(document.state.global.count).toBe(1);
94
+ // Third undo
95
+ document = countReducer(document, undo(), undefined, {
96
+ protocolVersion: 2,
97
+ });
98
+ const ops3 = document.operations.global;
99
+ const noop3 = ops3[ops3.length - 1];
100
+ expect(noop3.action.type).toBe("NOOP");
101
+ expect(noop3.skip).toBe(1);
102
+ expect(noop3.index).toBe(5); // Should increment, not reuse
103
+ expect(document.state.global.count).toBe(0);
104
+ });
105
+ it("should throw when trying to undo more than available", () => {
106
+ // Undo all 3 increments
107
+ document = countReducer(document, undo(), undefined, {
108
+ protocolVersion: 2,
109
+ });
110
+ document = countReducer(document, undo(), undefined, {
111
+ protocolVersion: 2,
112
+ });
113
+ document = countReducer(document, undo(), undefined, {
114
+ protocolVersion: 2,
115
+ });
116
+ expect(document.state.global.count).toBe(0);
117
+ // Try to undo when there's nothing left
118
+ expect(() => countReducer(document, undo(), undefined, {
119
+ protocolVersion: 2,
120
+ })).toThrow("Cannot undo: no more operations to undo in scope history");
121
+ });
122
+ it("operations list should preserve all operations including NOOPs", () => {
123
+ document = countReducer(document, undo(), undefined, {
124
+ protocolVersion: 2,
125
+ });
126
+ document = countReducer(document, undo(), undefined, {
127
+ protocolVersion: 2,
128
+ });
129
+ const ops = document.operations.global;
130
+ // Should have: 3 increments + 2 NOOPs = 5 operations
131
+ expect(ops.length).toBe(5);
132
+ expect(ops.map((op) => op.action.type)).toEqual([
133
+ "INCREMENT",
134
+ "INCREMENT",
135
+ "INCREMENT",
136
+ "NOOP",
137
+ "NOOP",
138
+ ]);
139
+ expect(ops.map((op) => op.index)).toEqual([0, 1, 2, 3, 4]);
140
+ });
141
+ it("should handle undo after new operations added following undos (gapped indices)", () => {
142
+ // This test reproduces the bug where undo fails after:
143
+ // 1. Multiple undos create NOOPs
144
+ // 2. New operations are added after the undos
145
+ // 3. Undo is triggered again
146
+ //
147
+ // The issue is that garbageCollectV2 creates a set of effective operations
148
+ // with gaps in indices (e.g., [0, 5, 6] instead of [0, 1, 2, 3, 4, 5, 6])
149
+ // and the state rebuild fails due to index validation.
150
+ // Initial state: count = 3 with operations [0: INC, 1: INC, 2: INC]
151
+ expect(document.state.global.count).toBe(3);
152
+ // Undo twice: count = 1
153
+ // Operations: [0: INC, 1: INC, 2: INC, 3: NOOP(skip=1), 4: NOOP(skip=1)]
154
+ document = countReducer(document, undo(), undefined, {
155
+ protocolVersion: 2,
156
+ });
157
+ document = countReducer(document, undo(), undefined, {
158
+ protocolVersion: 2,
159
+ });
160
+ expect(document.state.global.count).toBe(1);
161
+ // Add new operations after undos: count = 3
162
+ // Operations: [0: INC, 1: INC, 2: INC, 3: NOOP, 4: NOOP, 5: INC, 6: INC]
163
+ document = countReducer(document, increment(), undefined, {
164
+ protocolVersion: 2,
165
+ });
166
+ document = countReducer(document, increment(), undefined, {
167
+ protocolVersion: 2,
168
+ });
169
+ expect(document.state.global.count).toBe(3);
170
+ const opsBeforeUndo = document.operations.global;
171
+ expect(opsBeforeUndo.map((op) => op.action.type)).toEqual([
172
+ "INCREMENT",
173
+ "INCREMENT",
174
+ "INCREMENT",
175
+ "NOOP",
176
+ "NOOP",
177
+ "INCREMENT",
178
+ "INCREMENT",
179
+ ]);
180
+ expect(opsBeforeUndo.map((op) => op.index)).toEqual([
181
+ 0, 1, 2, 3, 4, 5, 6,
182
+ ]);
183
+ // Now undo - this is where the bug occurs
184
+ // garbageCollectV2 will return effective operations with gapped indices
185
+ // (operations 1, 2 are "undone" by NOOPs at 3, 4)
186
+ // Effective non-NOOP ops: indices [0, 5, 6] - there's a gap!
187
+ document = countReducer(document, undo(), undefined, {
188
+ protocolVersion: 2,
189
+ });
190
+ // Should have undone the last increment
191
+ expect(document.state.global.count).toBe(2);
192
+ const opsAfterUndo = document.operations.global;
193
+ expect(opsAfterUndo.length).toBe(8);
194
+ expect(opsAfterUndo.map((op) => op.action.type)).toEqual([
195
+ "INCREMENT",
196
+ "INCREMENT",
197
+ "INCREMENT",
198
+ "NOOP",
199
+ "NOOP",
200
+ "INCREMENT",
201
+ "INCREMENT",
202
+ "NOOP",
203
+ ]);
204
+ });
205
+ });
206
+ });
207
+ //# sourceMappingURL=undo-redo-v2.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"undo-redo-v2.test.js","sourceRoot":"","sources":["../../../test/document/undo-redo-v2.test.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { baseCreateDocument, noop, processUndoRedo, redo, undo, } from "document-model/core";
1
+ import { baseCreateDocument, deriveOperationId, noop, processUndoRedo, redo, undo, } from "document-model/core";
2
2
  import { countReducer, createCountDocumentState, increment, testCreateBaseState, } from "document-model/test";
3
3
  import { beforeEach, describe, expect, it } from "vitest";
4
4
  describe("UNDO/REDO", () => {
@@ -332,19 +332,34 @@ describe("UNDO/REDO", () => {
332
332
  scope: "global",
333
333
  };
334
334
  const baseOperation = {
335
- id: "noop-2",
335
+ id: undefined,
336
336
  skip: 0,
337
337
  index: 5,
338
338
  hash: "Ki38EB6gkUcnU3ceRsc88njPo3U=",
339
339
  timestampUtcMs: new Date().toISOString(),
340
340
  action: baseAction,
341
341
  };
342
- const action1 = { ...baseAction };
343
- const action2 = { ...baseAction };
344
- const action3 = { ...baseAction };
345
- const op1 = { ...baseOperation, skip: 1 };
346
- const op2 = { ...baseOperation, skip: 2 };
347
- const op3 = { ...baseOperation, skip: 3 };
342
+ const action1 = { ...baseAction, id: "noop-1" };
343
+ const action2 = { ...baseAction, id: "noop-2" };
344
+ const action3 = { ...baseAction, id: "noop-3" };
345
+ const op1 = {
346
+ ...baseOperation,
347
+ id: deriveOperationId(document.header.id, "global", "main", action1.id),
348
+ skip: 1,
349
+ action: action1,
350
+ };
351
+ const op2 = {
352
+ ...baseOperation,
353
+ id: deriveOperationId(document.header.id, "global", "main", action2.id),
354
+ skip: 2,
355
+ action: action2,
356
+ };
357
+ const op3 = {
358
+ ...baseOperation,
359
+ id: deriveOperationId(document.header.id, "global", "main", action3.id),
360
+ skip: 3,
361
+ action: action3,
362
+ };
348
363
  document = countReducer(document, action1, undefined, {
349
364
  pruneOnSkip: true,
350
365
  skip: 1,