Merge pull request #25910 from overleaf/em-track-changes-sharejs

Track changes in the history OT sharejs doc

GitOrigin-RevId: 17365219f24a25790eac611dbde9681eb73d0961
This commit is contained in:
Eric Mc Sween
2025-06-04 08:07:50 +00:00
committed by Copybot
parent d173bdf8e2
commit f11ea06c1a
12 changed files with 578 additions and 103 deletions
@@ -1,4 +1,4 @@
import { ShareDoc } from '../../../../../types/share-doc'
import { ShareLatexOTShareDoc } from '../../../../../types/share-doc'
import { EventEmitter } from 'events'
export const docId = 'test-doc'
@@ -36,6 +36,9 @@ const defaultContent = mockDocContent(contentLines.join('\n'))
const MAX_DOC_LENGTH = 2 * 1024 * 1024 // ol-maxDocLength
class MockShareDoc extends EventEmitter {
otType = 'sharejs-text-ot' as const
snapshot = ''
constructor(public text: string) {
super()
}
@@ -51,16 +54,21 @@ class MockShareDoc extends EventEmitter {
del() {
// do nothing
}
submitOp() {
// do nothing
}
}
export const mockDoc = (
content = defaultContent,
{ rangesOptions = {} } = {}
) => {
const mockShareJSDoc: ShareDoc = new MockShareDoc(content)
const mockShareJSDoc: ShareLatexOTShareDoc = new MockShareDoc(content)
return {
doc_id: docId,
getType: () => 'sharejs-text-ot',
getSnapshot: () => {
return content
},
@@ -101,7 +109,7 @@ export const mockDoc = (
submitOp: (op: any) => {},
setTrackChangesIdSeeds: () => {},
getTrackingChanges: () => true,
setTrackingChanges: () => {},
setTrackChangesUserId: () => {},
getInflightOp: () => null,
getPendingOp: () => null,
hasBufferedOps: () => false,