Commit graph

27 commits

Author SHA1 Message Date
Jakob Ackermann
dda94cdfbc [web] ensure that only a single socket.io transport is connected (#24422)
GitOrigin-RevId: 9397b0c85f0a889385d4761945e976ada7aa537b
2025-03-27 09:05:14 +00:00
Miguel Serrano
d59afb21be Merge pull request #24327 from overleaf/msm-update-max-reconnect-gracefully-interval
[web] Make `maxReconnectGracefullyIntervalMs` configurable

GitOrigin-RevId: 18846b050e76ec86d00bc0dd7e07ab09d552bed7
2025-03-26 09:04:56 +00:00
Jakob Ackermann
6916e22b09 [real-time] log transport and clientId in both directions of serverPing (#24084)
GitOrigin-RevId: dabd8db6949498ef1a6252864cef94cd4329e3c0
2025-03-07 09:04:40 +00:00
Jakob Ackermann
04c42f03e1 [web] editor connection tweaks for connection attempts when offline (#23864)
* [web] only flag errors originating from WebSocket connect as ws failure

* [web] slow down reconnecting when potentially offline

GitOrigin-RevId: 7c587d52dfe8092c45e2152f929e05e814db98f4
2025-02-26 09:04:47 +00:00
Jakob Ackermann
8138c76c1d [web] restrict external heartbeat/server ping to websocket transport (#23830)
Co-authored-by: Alf Eaton <alf.eaton@overleaf.com>
GitOrigin-RevId: c03a78e2c05cd380b705bd14652060980682cb39
2025-02-25 09:05:02 +00:00
Jakob Ackermann
4d857b7937 [web] editor connection fixes (#23807)
* [haproxy] add support for xhr-polling in real-time

* [web] try 3 WebSockets then fallback to xhr-polling when (re-)connecting

* [web] ensure old socket.io transport has been closed when reconnecting

* [web] close xhr-polling transport before leaving the page

This will de-register the client, leave the project and clean up the
connected clients tracking ASAP.

* [web] rename constant to avoid confusion

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

---------

Co-authored-by: Alf Eaton <alf.eaton@overleaf.com>
GitOrigin-RevId: 55e500c341145947e5589875438fc796394b6ae4
2025-02-25 09:04:58 +00:00
Jakob Ackermann
8df7f6772c [web] close connection permanently when opening out-of-sync modal (#23148)
* [web] close connection permanently when opening out-of-sync modal

* [web] disable generic forceDisconnected behavior for out-of-sync modal

* [web] hide "disconnected" banner when displaying out of sync modal

GitOrigin-RevId: 133b3e24d94279917298ce7fd5d0a76da2265512
2025-02-03 09:05:34 +00:00
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
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
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
1e1a8c0bb3 Add translated messages for more connection error states (#19392)
GitOrigin-RevId: 981de624f3964ebe3ff1f0c751fcef9158864d5e
2024-07-15 09:32:55 +00:00
Jakob Ackermann
4087345a2a Merge pull request #18941 from overleaf/jpa-fix-some-ts-ignore
[web] fix a few ts-ignore statements

GitOrigin-RevId: 447a070a8268cffa6ef298b0fe158232c3f6fe8f
2024-06-19 08:04:07 +00:00
Alf Eaton
81559967f2 Ensure that onTimeoutHandler is called when there are unacknowledged edits (#18340)
GitOrigin-RevId: aa6430d7e32f6e27b67f92b187dbb13349fc6a40
2024-05-17 08:04:37 +00:00
Andrew Rumble
6100954635 Merge pull request #17863 from overleaf/ar-set-socket-disconnect-timeout-to-match-wire-value
Set socket disconnect timeout to match wire value

GitOrigin-RevId: b3bfc460090b872500b55b0d5e2167b828ef31f4
2024-04-16 08:04:22 +00:00
Jakob Ackermann
82cde31619 Merge pull request #16808 from overleaf/jpa-wsUrl
[web] move wsUrl into meta tag

GitOrigin-RevId: c94638759b79b8090b8b3cfa81baa718a69839e1
2024-02-02 09:03:35 +00:00
Alf Eaton
9804ebe12c Replace strict-event-emitter with EventTarget (#16374)
GitOrigin-RevId: 3b0afc3cd7bf3d11f35a3de23cb94061d2d6c69b
2024-01-08 09:05:22 +00:00
Alf Eaton
eb3e5037f8 Merge pull request #16335 from overleaf/ae-real-time-down
[ide-react] Improve handling of lost connection

GitOrigin-RevId: 89b641b2beca4f9de65551e6873b3c8c11bb1695
2024-01-04 09:03:05 +00:00
Alf Eaton
1ce16dd09f [ide-react] Handle failed socket.io loading (#16265)
GitOrigin-RevId: 3a460e1f53387e7012f994f6e8ea9ce764eb0fd2
2023-12-18 09:04:31 +00:00
Alf Eaton
56d70a18ae [ide-react] Avoid showing disconnected message if leaving page (#16263)
GitOrigin-RevId: bda7ed207a66b0f051d284cd9b31a20b2c93edca
2023-12-18 09:04:27 +00:00
ilkin-overleaf
e4f5afc0c0 Merge pull request #15829 from overleaf/ii-ide-page-prototype-permissions
[web] React ide page permissions

GitOrigin-RevId: 727d33e0654d4bfefe5e710e553895f793cacb82
2023-11-24 09:04:27 +00:00
Tim Down
5ddcdfbe2b Merge pull request #15747 from overleaf/td-ide-page-on-online
React IDE page: prevent error from connection manager when user comes online

GitOrigin-RevId: 8548b8db4cfb32598916eb423af737b36b4eadf5
2023-11-14 09:04:27 +00:00
Tim Down
c3afce73c1 Merge pull request #15592 from overleaf/td-ide-page-more-modals
React IDE page: add out-of-sync modal and project deleted modal

GitOrigin-RevId: 6081a40c3009e8ebc5b3f9752c4059af3d52966d
2023-11-07 09:04:44 +00:00
Tim Down
01439641ca Merge pull request #15376 from overleaf/td-ide-page-working-editor
React IDE page: working editor

GitOrigin-RevId: 3ba8cb787a6f7f8435686d8962adb7444d09acb5
2023-10-27 08:03:07 +00:00
Tim Down
537673cdf6 Merge pull request #15415 from overleaf/td-scope-store-and-emitter-fixed
IDE scope store and emitter with fixed PDF URLs

GitOrigin-RevId: 9d33bad8a006bb55714878332f78932538dd8921
2023-10-25 08:05:07 +00:00
Jakob Ackermann
74c6085c55 Merge pull request #15412 from overleaf/revert-15280-td-scope-store-and-emitter
Revert "IDE scope store and emitter"

GitOrigin-RevId: bb764c66830e5e30806609b2834f918cf7784dd7
2023-10-25 08:04:17 +00:00
Tim Down
92a38e1311 Merge pull request #15280 from overleaf/td-scope-store-and-emitter
IDE scope store and emitter

GitOrigin-RevId: 9835d684db791937cd0bbc657228cb9112089b47
2023-10-25 08:03:55 +00:00
Tim Down
719da5fbd8 Merge pull request #15056 from overleaf/td-ide-connection-load
IDE page: connection manager and loading screen

GitOrigin-RevId: 2cbc8c09aeb36a14eae66da78b267c7a830fb71a
2023-10-17 08:03:13 +00:00