* Add `unicorn/prefer-node-protocol`
* Fix `unicorn/prefer-node-protocol` ESLint errors
* Run `npm run format:fix`
* Add sandboxed-module sourceTransformers in mocha setups
Fix `no such file or directory, open 'node:fs'` in `sandboxed-module`
* Remove `node:` in the SandboxedModule requires
* Fix new linting errors with `node:`
GitOrigin-RevId: 68f6e31e2191fcff4cb8058dd0a6914c14f59926
* [web] hide history-resync updates from "All history"
* Revert "[web] hide history-resync updates from "All history""
This reverts commit e9d5e7638eabe2baccf36f8c80bb4cd619e383ea.
* filter history resync update in summarizeUpdates
* used isHistoryResyncUpdate for merging
* remove merging for history-resync
* Revert "remove merging for history-resync"
This reverts commit 6ce48bc3f906867a64c0acc12e2dc61c05436c41.
GitOrigin-RevId: 0335eb9c05815fb66188d453a90dd09531504a55
* Fix history diffs when deleting over many tracked deletes
As we are looping through tracked deletes, the offset between the result
positions and the source positions must be kept constant. Otherwise, the
tracked deletes are translated as we delete text and move the source
cursor.
GitOrigin-RevId: b2417a75219aaa16bf5c61e0ebcb0586cae6aef2
* added getHistoryOpForAcceptedChange in RangesManager
* rename adjustHistoryUpdatesMetadata to be treated as public
* handle retain op in UpdateTranslator and updateCompressor
* send op to project-history in acceptChanges
* use promises.queueOps
* use ranges in getHistoryOpForAcceptedChange
* using rangesWithChangeRemoved
* acceptChanges acceptance test
* using change.op.hpos
* Revert "using change.op.hpos"
This reverts commit f53333b5099c840ab8fb8bb08df198ad6cfa2d84.
* use getHistoryOpForAcceptedChanges
* fix historyDocLength
* Revert "rename adjustHistoryUpdatesMetadata to be treated as public"
This reverts commit 2ba9443fd040a5c953828584285887c00dc40ea6.
* fix typescript issues
* sort changes before creating history updates
* fix tests
* sinon spy RangesManager.getHistoryUpdatesForAcceptedChanges
* added unit tests
* sort deletes before inserts
* use getDocLength function
* fix docLength calculation
* fix typo
* allow all retains
* fix lint error
* refactor RangesTests
* fix ts error
* fix history_doc_length calculation in RangesManager
* remove retain tracking check from UpdateCompressor
* use makeRanges() properly in tests
* refactor acceptance tests
GitOrigin-RevId: ab12ec53c5f52c20d44827c6037335e048f2edb0
* [project-history] fix convertToDiffUpdates
* fix test
* preserve source ranges for applyRetain
* use sourceRanges for applyDelete
* use cursor difference for offset
* move statement to closer to original
* handle deletion before tracked delete
* Revert "handle deletion before tracked delete"
This reverts commit 6f2570f22473bd64516c166b29a34639ec701230.
* using resultCursor and sourceCursor
* refactor, use scanCursor
* skip track delete properly
* prettier
* remove .sort() in applyRetain
* small test fixes
GitOrigin-RevId: 94755c219c90d6fedcdc64284d71137cf56d2442
* [overleaf-editor-core] Restructure TextOperation hierachy
Restructures the hierachy of TextOperations to include a superclass
EditOperation. This superclass will later on contain other classes used
for tracked changes and comments.
* [overleaf-editor-core] Update json format of LazyStringFileData
* [history-v1+project-history] Fix TextOperation.fromJSON calls
* [overleaf-editor-core] Change EditOperationBuilder.fromRaw to fromJSON
* [overleaf-editor-core] Update apply and invert functions to accept FileData
* [overleaf-editor-core] Pass missing argument to store method
* [overleaf-editor-core] Remove unused method
* [overleaf-editor-core] User EditOperationTransformer
* [overleaf-editor-core] Clean up JSDoc comments
* [overleaf-editor-core] Add tests for EditOperation
* [overleaf-editor-core] Update JSDoc types
GitOrigin-RevId: 9c22a3a89b8483bdb87b43f329ddbdd887ffed42