Commit Graph

183 Commits

Author SHA1 Message Date
Brian Gough
a6bfbad5bd Merge pull request #23246 from overleaf/bg-real-time-server-ping
add real-time ping-pong messages for debugging lost connections

GitOrigin-RevId: 28feb8c8c7c660a5a23ca394acd0f69ac828c5a3
2025-02-03 09:04:39 +00:00
Domagoj Kriskovic
461818810c Ensure editor decorations for comments are removed in the old review panel (#23239)
GitOrigin-RevId: d41d9b9701fc792c0190f4648ce9c4ddf035a967
2025-01-30 09:05:30 +00:00
David
f523358d08 Merge pull request #23182 from overleaf/dp-pdf-error-state
Add pdf error state for new ide

GitOrigin-RevId: 35fe07744996375db9cb3b860bdc128b509ee438
2025-01-30 09:05:12 +00:00
Mathias Jakobsen
4b46120ec1 Merge pull request #22928 from overleaf/mj-ide-toolbar
[web] Initial editor toolbar

GitOrigin-RevId: 33658d886bf86cbaa22a161f2ff463ef608e5f6b
2025-01-29 09:04:55 +00:00
Alf Eaton
71ab3a41ed Remove ColorManager (#22974)
GitOrigin-RevId: 32cb6fd599345eaf8e474553da5c6d3080575ee8
2025-01-29 09:04:48 +00:00
Alf Eaton
9e040d6946 Select matched text when a file is opened from a full project search result (#23139)
GitOrigin-RevId: bd3b66e89b70c4fa1d77e401d9e5fa755876ce9f
2025-01-29 09:04:33 +00:00
Jakob Ackermann
45a5d090d9 [web] add external 15s heartbeat to socket.io connection (#22853)
* [web] add external 15s heartbeat to socket.io connection

* [web] extend debugging context for client errors

- include performance.now() timestamp for correlating other timings
- include connectionState, especially for new externalHeartbeat detail
- include spellCheckLanguage to check on client-side spelling impact

* [web] remove unnecessary hook dependency

Co-authored-by: Alf Eaton <alf.eaton@overleaf.com>

* Refactor externalHeartbeat

* Add connectionManager to context

* Clear the interval earlier, and on connect

* [web] refactor handling of socket debugging info

* [web] add split-test for external socket heartbeat

* [web] fully remove connectionManager from connection context

---------

Co-authored-by: Alf Eaton <alf.eaton@overleaf.com>
GitOrigin-RevId: fbebe64f8aa207eb4fd4a8f27d522d1cac35f9d4
2025-01-28 09:05:12 +00:00
Alf Eaton
4351805f7c Remove CM6 performance measurement (#22663)
GitOrigin-RevId: 2178f2b66c200005517ed8ff52afadd8b5fda14b
2025-01-28 09:04:50 +00:00
David
f3077599bc Merge pull request #23082 from overleaf/dp-file-outline-typescript
Convert outline components to typescript

GitOrigin-RevId: 9fd057f70d9de7b9b209697a5d33ea72d5d64daa
2025-01-28 09:04:39 +00:00
Alf Eaton
f1e1d55d8c Merge pull request #22964 from overleaf/ae-project-search-flush
Ensure that open docs are flushed before running full project search

GitOrigin-RevId: 6707cf982018908a37957503add73a085c749f61
2025-01-24 09:05:05 +00:00
David
2365d8c199 Merge pull request #22836 from overleaf/dp-filetree-typescript
Convert file-tree util files to typescript

GitOrigin-RevId: bdf8d0655a543a216f028bc8477c3ee47aba5566
2025-01-22 09:04:56 +00:00
Mathias Jakobsen
d34d15242e Merge pull request #22855 from overleaf/mj-ide-settings
[web] Add settings modal skeleton to editor redesign

GitOrigin-RevId: bc2e7f07f7ab737a67965fa615a04c8ee88b1271
2025-01-21 09:05:23 +00:00
Alf Eaton
f069adaf15 Add full project search UI (#22671)
GitOrigin-RevId: f40c85f40f4c16b4b3c26a197924cd9ac9b3db1f
2025-01-16 09:05:45 +00:00
Alf Eaton
2fbb4615f9 Convert utility functions to TypeScript (#22658)
* Convert event-tracking to TypeScript

* Convert local-storage to TypeScript

* Convert mapSeries to TypeScript

* Convert SessionStorage to TypeScript

* Convert account-upgrade to TypeScript

* Convert isValidTeXFile to TypeScript

* Convert date functions to TypeScript

* Convert EventEmitter to TypeScript

* Convert isNetworkError to TypeScript

* Convert webpack-public-path to TypeScript

* Convert displayNameForUser to TypeScript

GitOrigin-RevId: 79c5a2d1101fcd520f3116f0f4af29d974189d94
2025-01-16 09:05:36 +00:00
David
e9e59bbcc9 Merge pull request #22720 from overleaf/dp-editor-redesign
Editor redesign skeleton page

GitOrigin-RevId: 966c88ac3714e4cc7de3e21951e4e1641bfd6852
2025-01-09 09:05:43 +00:00
Alf Eaton
aaeac2cd72 Ensure that all callbacks for useEventListener are wrapped in useCallback (#22618)
GitOrigin-RevId: 4a7c409a9720eab04fc17e5111b6a3aeeac6871d
2025-01-09 09:05:00 +00:00
Alf Eaton
3ac1b48d10 Allow context providers to be overridden in ReactContextRoot (#22631)
* Allow providers to be overridden in ReactContextRoot
* Use ReactContextRoot in EditorProviders
* Use ReactContextRoot in ScopeDecorator

GitOrigin-RevId: bb6dab91f3fca843d7563ed812c4ea6f56fb28bb
2025-01-08 09:05:10 +00:00
David
4a8163b3f3 Add new trackedWrite frontend permission for review panel (#22486)
* Add new trackedWrite frontend permission for review panel

* Fix test lint

* Remove comment

* Fix codemirror tests

* hide file actions for reviewer

---------

Co-authored-by: Domagoj Kriskovic <dom.kriskovic@overleaf.com>
GitOrigin-RevId: 6aab5c662287a02750d81b3960bbdd9c98b325db
2024-12-17 09:04:48 +00:00
Domagoj Kriskovic
f39ca200b9 Support for adding reviewer role (#22314)
* Support for adding reviewer role

* added collaboratorsGetter tests

* emit toggle-track-changes when reviewer is added

GitOrigin-RevId: 5b831102d561f5dbc4b23ab9f6dc63e3a87ea103
2024-12-10 09:04:47 +00:00
Domagoj Kriskovic
511fe60a9c Revert "Support for adding reviewer role (#22137)" (#22293)
This reverts commit 54064a7f961fe06f188ab449cd469cdaaf01b20a.

GitOrigin-RevId: 1dabc635756aff465d2fe9aa0d18121b081df3b0
2024-12-04 09:05:12 +00:00
Domagoj Kriskovic
f676eca2b8 Support for adding reviewer role (#22137)
* Support for adding reviewer role

* show reviewer in track changes user list

* added "review" in assertClientCanViewProject

* test if reviewer can read project

* added collaboratorsGetter tests

* eit toggle-track-changes when track changes changes

* Support for changing privilege to reviewers for invited users (#22159)

* Add reviewer in change privilege level handler

* added reviewer translation

* added acceptance tests

* fix tests

* Set track changes state permissions for reviewer role (#22167)

* Add reviewer in change privilege level handler

* added reviewer translation

* added acceptance tests

* fix tests

* Set track changes state permissions for reviewer role

* added authorization helper tests

* added ensureUserCanReviewProjectContent middleware

* allow changing track changes only with write permissions

* removed canUserReviewProjectContent

* List projects where user is added as a reviewer (#22249)

* List projects where user is added as reviewer

* list projects in /user/projects

* fix tests

GitOrigin-RevId: 54064a7f961fe06f188ab449cd469cdaaf01b20a
2024-12-04 09:05:00 +00:00
Mathias Jakobsen
592e484098 Merge pull request #22087 from overleaf/mj-index-on-wc-rm-entry
[web] Re-index references after adding a RM entry with Write and Cite

GitOrigin-RevId: 6b2a93143486079dfc82af393e2c5621fed7a4ee
2024-11-26 09:05:08 +00:00
Antoine Clausse
485bccebef [web] Update loading spinner in IDE for BS5 (#21970)
* Update `LoadingPane` with `LoadingSpinner`

* Remove unused file no-open-doc-pane.tsx

* Remove translation `open_a_file_on_the_left`

GitOrigin-RevId: 9045443de6aaf19b1d4bf82cd2be3ba91ee53bf1
2024-11-21 09:04:31 +00:00
Domagoj Kriskovic
8a90ffa3fb Add confirm modal on accept/reject selected changes (#21540)
* Add showGenericConfirmModal in ModalsContext

* Add confirm modal on accept/reject selected changes

* plural in translations

* change tooltip to include selected changes

* add _plural to all translated languages

* lowercase title/tooltip

* count replacements as single change

* use new translation key

GitOrigin-RevId: afadbe1eeb2a290688b96f2b5388485f40c958d0
2024-11-12 09:06:01 +00:00
Mathias Jakobsen
cb72799fff [web] Add toast notifications to editor (#21567)
GitOrigin-RevId: 7f7ab83d4615f564c0e79bc2a05ca6cb9e5239fd
2024-11-11 09:05:12 +00:00
Alf Eaton
9352b51d28 Keep PDF preview mounted while not visible (#21270)
GitOrigin-RevId: 266ecbb72a5238e1e977265e56c33880ec1a54be
2024-11-08 09:04:44 +00:00
Mathias Jakobsen
c9ed5f6a79 [web] Add mainBibliographyDocId to projects (#20842)
GitOrigin-RevId: 5358ef5cf0b9aaeadfe360c1bdc575fd1bf7344d
2024-10-29 09:04:42 +00:00
Domagoj Kriskovic
c4b23b4d39 Add "usingNewReviewPanel" flag in store (#21279)
* Revert "Add isUsingNewReviewPanel flag for writefull (#21111)"

This reverts commit 3491e93ca70fa1db0c751872e233dfebdbe81423.

* add usingNewReviewPanel in store

* fix lint error

GitOrigin-RevId: 56d90a428a2cc45708b8b483dc60a62aae233a85
2024-10-24 08:05:03 +00:00
Alf Eaton
d0b5c2f307 Avoid sending ide-open-view-null-once event (#21247)
GitOrigin-RevId: 2f46fe26561bfa2eca36ad605cdd217514aba09d
2024-10-23 08:05:23 +00:00
Rebeka Dekany
f590d6d9a2 Merge pull request #20807 from overleaf/rd-ide-resizer
Migrate the editor resizer and SyncTeX button styles to CSS

GitOrigin-RevId: 94aec89f6f7b9e14d74d1c52111c13075e82ddaa
2024-10-14 11:09:55 +00:00
Rebeka Dekany
5b6bbcb73c Merge pull request #21008 from overleaf/rd-editor-errors
[web] Migrate notifications and error boundaries on the editor page

GitOrigin-RevId: c195ecf0dd9e38ec8326c823174e559e1f192ce1
2024-10-14 11:09:36 +00:00
Antoine Clausse
2e080a3a34 [web] Migrate IDE page loading screen to BS5 (#20896)
* [web] Add `.loading-screen` style

* [web] Add `.loading-screen-error` style

* [web] Nest styles in `.loading-screen`

* [web] Simplify code, make a more valuable Storybook

* [web] Add a reusable bootstrap-switcher argument to loading.stories.tsx

* [web] Make `isBootstrap5()` work in storybook

* [web] Revert unrelated changes around `ConnectionError` type

* [web] Remove comment about unhandled error codes

https://github.com/overleaf/internal/pull/20896/files#r1790572314

* [web] Don't repeat the `errorCode` prop type

* [web] Remove unused CSS and magic padding

* [web] Fixup SCSS division

* [storybook] Revert Storybook changes (moved to another branch)

* [web] Fixup SCSS division again (lint)

* [web] Render with `Boolean(errorCode) && ...` instead of `errorCode && ...`

* [web] Remove importants; use spacing var

Addresses Tim's comments

GitOrigin-RevId: e8b5623f4bb9aa72a255851f46b45b652a0dbb16
2024-10-14 11:07:50 +00:00
Brian Gough
4a32f49b3d add an option to remove chat from server pro (#20445)
* add option to remove chat from backend

* make chat default to enabled

* Check chat is enabled in chat context

---------

Co-authored-by: mserranom <mserranom@gmail.com>
GitOrigin-RevId: 7dda09df4bb74007eb4b1272d4918155b5cddaf6
2024-10-14 11:07:02 +00:00
Alf Eaton
2c6aa3d4a7 Merge pull request #20381 from overleaf/ae-api-settings
Add "settings" object to global scope store

GitOrigin-RevId: 1d5c7c3a1b417be0726c4a5e95e611ded47c13c4
2024-10-14 10:58:59 +00:00
Mathias Jakobsen
edf2c68c51 Merge pull request #20326 from overleaf/mj-filetree-restore-importtime
[web] Use importedAt timestamp for linked files if present

GitOrigin-RevId: 2132dfede83778a018e02fdba3d40180838f37af
2024-09-19 08:04:38 +00:00
Mathias Jakobsen
663e2304f6 Merge pull request #20272 from overleaf/revert-20268-revert-19885-mj-resizeable-panels
[web] Upgrade react-resizable-panels (2nd attempt)

GitOrigin-RevId: 643a90044dac0daf39245fa29267b16550fd6e69
2024-09-06 08:05:28 +00:00
Mathias Jakobsen
99269d3928 Merge pull request #20268 from overleaf/revert-19885-mj-resizeable-panels
Revert "[web] Upgrade react-resizable-panels"

GitOrigin-RevId: 65b6cf9656c1116f77ae5dc3ceec1106e898d6f9
2024-09-05 08:05:03 +00:00
Mathias Jakobsen
2d9e4965f7 Merge pull request #19885 from overleaf/mj-resizeable-panels
[web] Upgrade react-resizable-panels

GitOrigin-RevId: 6b316dfb43ff841e863c83d1393ca88299eeefa2
2024-09-05 08:04:48 +00:00
roo hutton
837b5a4b9b Merge pull request #19914 from overleaf/rh-viewer-comments
[web] Allow Viewers to access chat and view comments/tracked changes

GitOrigin-RevId: 72be0444afdf5e0ad5937bf25718a7566bad001a
2024-08-28 11:35:22 +00:00
roo hutton
db4d23d2df Merge pull request #20080 from overleaf/rh-lost-edit-access-modal
[web] Show modal to pending editors

GitOrigin-RevId: 63dfed45a1483e835978dc7ac76cd0f37b4e1f50
2024-08-28 08:04:34 +00:00
Eric Mc Sween
8b4b454b97 Merge pull request #20052 from overleaf/em-tracked-deletes-limit
Include tracked deletes when limiting document size

GitOrigin-RevId: 9d7b2870001fb942eaa92db78993fee1ddb3937c
2024-08-27 08:04:31 +00:00
Jakob Ackermann
577497b655 Merge pull request #19842 from overleaf/jpa-ro-mirror-on-client
[misc] add readonly mirror of full project content on the client

GitOrigin-RevId: 940bd93bfd587f83ca383d10fc44579b38fc3e88
2024-08-22 08:05:13 +00:00
Mathias Jakobsen
654d96ace6 Merge pull request #19743 from overleaf/mj-restore-project
[web+project-history] Add project version reverting

GitOrigin-RevId: 0f77cec730393187d531c0c6561faaa652bebf29
2024-08-21 08:05:08 +00:00
Alf Eaton
2304536844 Add review panel context providers and components (#19490)
* Tidy up review panel components

* Add ReviewPanel providers

* [web] new design for review panel track change (#19544)

* [web] new design for review panel track change

* fixed mini view

* mini icon style change

* fix icon size

* format date

* useRangesUserContext hook

* remove useRangesUserContext hook

* using full class names

* fix action icons hover

* change wording for tooltips

* added ReviewPanelChangeUser component

* Update header in new review panel

* Extract ReviewPanelTrackChangesMenuButton as a separate component

* Remove wrapper div

* Replace h2 with div for review panel label

* Rename ReviewPanelTools to ReviewPanelHeader

* Rename trackChangesExpanded -> trackChangesMenuExpanded

* Dont break memoisation of ReviewPanelTrackChangesMenuButton

* Fix the width of the track changes arrow icon

* Update how prop types are declared

* Remove new empty state from old review panel

* Add empty state to new review panel

* Add project members and owner to ChangesUsers context (#19624)

---------

Co-authored-by: Alf Eaton <alf.eaton@overleaf.com>

* Redesign comment entry in review panel (#19678)

* Redesign comment entry in review panel

* ReviewPanelCommentOptions component

* remove unused prop

* Tidying

* Add conditional import

* Optional changeManager

* Add more split test compatibility

* More split test compatibility

* Fixes

* Improve overview scrolling

* Fix overview scrolling

* Fix & simplify track changes toggle

* Fix overview scrolling

* Fix current file container

* ExpandableContent component for messages in review panel (#19738)

* ExpandableContent component for messages in review panel

* remove isExpanded dependancy

* Delete comment option for new review panel (#19772)

* Delete comment option for new review panel

* dont show thread warning if there are no replies

* fix hasReplies issue

* Implement initial collapsing overview files

* Fix positioning of overview panel

* Small styling changes

* Add count of unresolved comments and tracked chanegs

* More style adjustments

* Move review-panel-overview styles into css file

* Remove unused var

---------

Co-authored-by: Domagoj Kriskovic <dom.kriskovic@overleaf.com>
Co-authored-by: David Powell <david.powell@overleaf.com>
Co-authored-by: David <33458145+davidmcpowell@users.noreply.github.com>
GitOrigin-RevId: e67463443d541f88445a86eed5e2b6ec6040f9c7
2024-08-13 08:04:20 +00:00
Jakob Ackermann
d2464abc7c Merge pull request #19816 from overleaf/jpa-type-tweaks
[web] minor typescript tweaks

GitOrigin-RevId: df459d2c00652a3d183cae123f39a01dd17c7ec6
2024-08-07 08:05:08 +00:00
Alf Eaton
529555869a Upgrade Prettier to v3.3 (#19756)
GitOrigin-RevId: 86d628d8c2fe55e3b2e4867a8e1f29876d38feab
2024-08-02 08:06:02 +00:00
Domagoj Kriskovic
0766c91079 Default LaTeX beginners to the Visual Editor (#18917)
* open visual code if user havent used latex before

* test tooltip on code editor switch

* firstTimeLoadedEditor

* track editor.codeEditorOpened value

* lastEditorLoadedDate

* odc data loaded from mongo

* fix a typo

* use tutorial to check if it was dissmised

* use getInactiveTutorials fn

* fix test

* check if code editor was opened

* added translations

* pass classname to tooltip

* use signUpDate instead of lastEditorLoadedDate

* refactor visual fallback value

* use tutorial completed data only for tooltip

* set lastUsedMode in odc form

* safer usedLatex check

* getOnboardingDataValue helper function

* move tooltip to a separate component

* move classname to tooltipProps

* usedLatex in meta tag

* codeEdtiorOpened fallback value

* fix release date year

* fix 24 hours criteria for showing the tooltip

* fix tests

* hide tooltip when code editor is opened

* remove setting lastUsedMode in ODC form

* remove empty comment

* change date for checking signUpDate

* fix linting error

GitOrigin-RevId: 0a57ba3f4717492d4546633571117f667d3a05f8
2024-08-02 08:05:10 +00:00
Alf Eaton
4c76667379 Avoid loading ranges twice for overview panel (#19554)
GitOrigin-RevId: da8cc295fe672a97e76b93cc7e88dc1f6d3d044d
2024-07-30 08:04:59 +00:00
Jakob Ackermann
0f0d562786 Merge pull request #19455 from overleaf/jpa-metrics
[misc] add metrics for document processing/broadcasting

GitOrigin-RevId: d81de0dfb7a91863547631580f3c85f569718130
2024-07-19 08:04:34 +00:00
Alf Eaton
66c55b0647 Streamline the project references context provider (#19387)
GitOrigin-RevId: 9af00459ec121a605b84809b349a0bc258896048
2024-07-16 08:04:30 +00:00