* Edited notification copy for user with affilation that ha commons account
* edited translation key to have overleaf professional appear in bold and switched to using trans component
* changed anchor tag to button and added additional check to ensure affiliation exists before accessing institution name
* add tests for commons user confirmation notification
* edit user email context test to facilitate test data changes
* edit license in fake test data
* edit test to check text of notification for non commons user
GitOrigin-RevId: 6700ceaa066f099ce593283887fa81d72ad624b6
* add support for newline character and semicolon seperated emails when sharing with collaborators
* edited existing paste event to check for (and replace) white space, comma, new line and semi colon seperated emails
GitOrigin-RevId: 53eadd0ca662a2f54312294f6779cfcf3f0f2fd7
* [cm6] prefer showing full title in outline for sections
* fix test
* remove fallback
* test rename
GitOrigin-RevId: ac7a2a2c4fa7740a51661710953c85f03394292f
* Revert "Revert "Tw reference manager access""
This reverts commit 55f3512f254e136d8a239bb5d9ca39f0d04720fd.
* added conditional to check whether file linked data exists
* created new translation key for refresh error
* Fix for misleading reference manager access error to ensure users are aware only original importer of reference file can refresh it. If original importer, then user is prompted to relink provider account. Previous PR and conversation #13618.
GitOrigin-RevId: 85232c1559c6d2068effec50e31b8fa30bf53c89
* [cm6] support \textbf in maketitle
* support for emph
* added support for \\textbf
* fix overlapping ignored ranges
* fix overlapping fn, added test
* multiple maketitle cases in the same test
* prettier
* simplify from calculation
* added test cases from #13736
GitOrigin-RevId: 00dcf15d6d62903ae30b387a16929e68dde8ca1b
* [visual] support for multiple titles in /maketitle
* support \and in author name
* using isMatchWith
* fix isMatchWith check
* fix isMatchWith... again
* add tests
* test author text replace and mouse events
* prettier
* don't handle updating node events
* use the arguments order as before
GitOrigin-RevId: 99b3d1c22a2dc1258a5cdf95738852028895f54a
* [cm6] toolbar for source mode
* top:0 for new toolbar
* empty div for extensions
* fix legacy css top pos
* show source toolbar split test
* prettier
* show beta icon in source editor
* dropdown toolbar wip
* fix wrong conflict resolve
* math dropdown, chrome extension fixes
* math dropdown cleanup
* sort en.json
* fix sort en.json
* using isVisual
* getMeta in component, pug update
* using flex grow
* toolbar beta badge
* remove extra whitespace
* has-legacy-toolbar class
* Increase container size
* fix tests
* prettier
* styling fixes, using SplitTestBadge
* only show source toolbar if flag is set
* fix typo
---------
Co-authored-by: Alf Eaton <alf.eaton@overleaf.com>
GitOrigin-RevId: 34b01a9421f4a0d6defc40925c5092901575946e
* [cm6+rt] getParentNode account for commands with arguments
* add explanation comment
* added test
* prettier
* check commandAncestor in same position
* using ancestorOfNodeWithToRange
* function rename
GitOrigin-RevId: bb837d956d029c1026dab03825634f24d5bc3905
* Use lineShift
* Use fromA instead of fromB
* Only check the update doc
* Always use oldDoc
* Copy tests
GitOrigin-RevId: 05e5516b09ee4a25d8ac2b5f2994a034f35c9e82
* Use fork of @codemirror/autocomplete
* Handle multiple selection ranges when applying snippets
GitOrigin-RevId: 04afc087ac127206463ea3d4950284a50308364a
* Implement history view paywall
* Add tests and some CSS fallbacks
* Make additional faded version above paywall non-clickable
* Change isFaded to faded for consistency
* Remove unused import
* Add missing attribute
* SHow all labels in free tier
* Address review comments
* Change Boolean conversion
Co-authored-by: ilkin-overleaf <100852799+ilkin-overleaf@users.noreply.github.com>
* Make adding or deleting a label show up in version list again
* Refactor to use visibleUpdateCount rather than maintaining two separate update arrays
* Removed unused import
* Use data-testid instead on class
* Round gradient values
* Correct test selector
---------
Co-authored-by: ilkin-overleaf <100852799+ilkin-overleaf@users.noreply.github.com>
GitOrigin-RevId: a2b021f3f4d3b9eb1358edb2ee4aa7db1bc7240e
* Use forked @codemirror/search
* Use getPanel to get the search panel
* Remove layer-based highlightSelectionMatches
* Add "within selection" option to the search form
* Add test for "replace all within selection"
* Fix tests
GitOrigin-RevId: 95ce76fd017f96278b04c16a1fd34f785f7504a3
* Add strikethrough to deleted file tree item in history file tree
* Add "restore file" button on toolbar if the selected file have a `removed` operation.
* Implement "restore file" functionality on removed file:
- Refactor the `Selection` object in history context value since we need the `deletedAtV` data which currently is not passed through the state.
- Refactor and clean up file tree type system to support passing through the whole `FileDiff` object for getting the `deletedAtV` data which only appear on `removed` operation
- Implement `postJSON` with file restoration API and pass it on restore file onClick handler at toolbar
* Implement loading behaviour while restoring file is inflight:
- Add `loadingRestoreFile` to `LoadingState`
- Change restore file button to `Restoring...` when in loading state.
* Refactor:
- Rename `DiffOperation` to `FileOperation`
- Extract `isFileRemoved` and `isFileRenamed` to its own file
- Extract `Toolbar` components into small files
GitOrigin-RevId: 2e32ebd2165f73fc6533ff282a9c084162efd682
There are two different UI in this PR: `comparing` and `viewing` mode.
- For `comparing`, the user would be shown two separate date. It uses the `UpdateRange` object and this PR adds a timestamp to both `fromV` and `toV` of the object type.
- For `viewing`, the user would only be shown one date since `viewing` mode means viewing a specific update version.
Some other notable changes:
- Move `diff` state to `diff-view.tsx`, which contains `main.tsx` (main editor history view) and `toolbar.tsx` as its children
- refactor `autoSelectFile` by passing `updateRange.toV` directly
- refactor `updateIsSelected` by passing an object that contains `fromV` and `toV` instead of passing `update
There's also a cypress test for both the `viewing` mode and `comparing` mode in this PR.
GitOrigin-RevId: ba54f073f3479c55a39eb6b2932ea7faff78dddc
* Prevent the duplicated message IDs by filtering them out
* fix: Prevent the duplicated message IDs by filtering them out
GitOrigin-RevId: 6d6c2821e6e29c9949fd323fa3a507016b51aff4