* add RestoreFileOrigin in overleaf-editor-core
* support source to be an object
* use sourceOrOrigin as param
* rename to originOrSource so the priority is more clear
* get timestamp from version
* fix test
* include version and min_count in getUpdatesFromHistory
* extractOriginOrSource util function
* fix RestoreManagerTests
GitOrigin-RevId: 0ace05a6ade2794c753a9d0bffb4f858ecc6899a
* 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