Commit Graph

485 Commits

Author SHA1 Message Date
Copilot
55c3b6b7ea Replace promisifyAll with individual promisify calls in web service (#30931)
* Initial plan

* Replace promisifyAll with individual promisify calls in all 8 files

Co-authored-by: Seinzu <194547+Seinzu@users.noreply.github.com>

* Remove unused promisify imports from V1Api and FileStoreHandler

Co-authored-by: Seinzu <194547+Seinzu@users.noreply.github.com>

* Fix formatting and remove unnecessary .bind() calls

Co-authored-by: Seinzu <194547+Seinzu@users.noreply.github.com>

* Fix formatting: collapse multi-line promisify calls to single lines

Co-authored-by: Seinzu <194547+Seinzu@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Seinzu <194547+Seinzu@users.noreply.github.com>
GitOrigin-RevId: c16a3f3ea48c93c2f62ad32c1f4512cd237882bf
2026-02-12 09:05:28 +00:00
Mathias Jakobsen
ae2d28505b [web] Abstract AiErrorAssistantRateLimiter (#31176)
* [web] Abstract AiErrorAssistantRateLimiter

* [web] Remove AI error assist reference in FeatureUsageRateLimiter

GitOrigin-RevId: cb12ea8b7a5a06576087b937380652fbe1948e95
2026-02-10 09:06:25 +00:00
Anna Claire Fields
ee4b5f515c Handle ERR_STREAM_UNABLE_TO_PIPE alongside ERR_STREAM_PREMATURE_CLOSE (#31174)
GitOrigin-RevId: bbf49237b177d7a58a9b13efc6f38f5eecfb745c
2026-02-03 09:05:50 +00:00
Mathias Jakobsen
2259c915e8 [web+ops+references] Remove references service code (#29699)
GitOrigin-RevId: 76656abe2e7b012355438d053a05e157bb719b0a
2026-01-28 09:06:34 +00:00
Antoine Clausse
b57df2602a [web] Reapply: Make CIAM login notification dismissible (with cookies) (#30829)
* Reapply "[web] Make CIAM login notification dismissible (with cookies) (#30251)"

This reverts commit 7bafafe54b24245c4da88d1c81540a3b1c98231b.

* Add a test `should redirect to /register with a notification`

* Fix destructuring of options in notification mixins

* Remove `data-ol-dismiss-cookie-paths` default, enforce it being set

* Handle the case of standard notifications without the dismiss setup

Co-authored-by: Jakob Ackermann <jakob.ackermann@overleaf.com>

---------

Co-authored-by: Jakob Ackermann <jakob.ackermann@overleaf.com>
GitOrigin-RevId: fbf441c1efe0aa5d80899a31ec3ad51c1dba6d24
2026-01-23 09:06:10 +00:00
ilkin-overleaf
f461dcc913 Merge pull request #30883 from overleaf/ii-domain-capture-url-expiry
[web] Add option to skip expiration checking when decoding JWT

GitOrigin-RevId: bc81b9e0581286ac26b0c31f0cb48e743bca5f9c
2026-01-21 09:05:53 +00:00
Alf Eaton
03a3518aae Merge pull request #30703 from overleaf/ae-prettier
Upgrade Prettier to v3.7.4

GitOrigin-RevId: 0f4434019bc7d12f2d5b7ecbb833ee20570d0706
2026-01-16 09:56:07 +00:00
Tim Down
64da16f0d1 Merge pull request #28670 from overleaf/td-rename-validate-req
Rename validateReq to parseReq

GitOrigin-RevId: a935aaa3f89495e164ce5d10b0bd80436571440f
2026-01-15 09:05:09 +00:00
Jakob Ackermann
425e7b1e5b [web] enable mongo notablescan in CI (#29501)
* [monorepo] record ERROR/FATAL log messages in junit report

* [web] put SaaS specific code behind feature flag

* [web] use split test cache for getting user assignments

The unit tests needed updating as they did not replicate any of the
 mongo filtering. The acceptance tests cover this logic.

* [web] make better use of existing indexes

* [web] avoid col-scan in tests of notifications module

* [web] remove cleanup of empty feedbacks collection

* [web] add assertion for reason of rejected request in launchpad test

* [web] add missing indexes

* [web] enable mongo notablescan

* [web] make emailNotifications tests compatible with notablescan

GitOrigin-RevId: b888f2feeb3a0e915f068ae1c4ea23ec17821221
2026-01-13 09:06:38 +00:00
Antoine Clausse
e0f8aca331 Merge pull request #30613 from overleaf/revert-30251-ac-dismiss-ciam-notification
[web] Revert "Make CIAM login notification dismissible (with cookies)"

GitOrigin-RevId: d7b7fac350dbc5479487341800320d4917f27d1b
2026-01-09 09:07:31 +00:00
Antoine Clausse
31ab47a534 [web] Make CIAM login notification dismissible (with cookies) (#30251)
* Extend notifications so they can be dismissed

The dismissal is stored in a cookie for a year

* Extend CIAM notifications so they can be dismissed

* Make the CIAM notification dismissable

* Style the close button so it is in the corner of the notification

* Add e2e test

* [e2e] Replace 'not.exist' by 'not.be.visible'

* Set cookie with the same pattern as the "cookie-banner cookie"

* Hide notification in the frontend

* Revert "Hide notification in the frontend"

This reverts commit b5d205f3e3a4e2555be038eb3b7561761a2cde59.

* Add `data-ol-dismiss-cookie-paths` to the notification

* Add `data-ol-dismiss-cookie-paths` to the notification (CIAM variant)

* Shorten cookie name

* Revert: remove the .corner class

* Apply design from Figma for CIAM notifications

GitOrigin-RevId: 4070715c6a63d0497b7a41c343c3f943ced4bfef
2026-01-09 09:07:26 +00:00
ilkin-overleaf
7931c7b3eb Merge pull request #30471 from overleaf/ii-linkedin-insight-tag
[web] Add Linkedin Insight tag

GitOrigin-RevId: f01e1908ad945a5db10343a04ee50104efa32c3c
2026-01-09 09:05:38 +00:00
ilkin-overleaf
e0483dd6c3 Merge pull request #30460 from overleaf/ii-await-csrf
[web] Promisify Csrf

GitOrigin-RevId: 00e1d8e3d79c58e4cb614574415cba3a1b21f1f2
2026-01-09 09:05:33 +00:00
Eric Mc Sween
f2a70de6ef Merge pull request #30366 from overleaf/mj-em-package-meta
[web] Add event for package usage

GitOrigin-RevId: e994becf01e7e4c8642cd1815ffe05907a5fd63c
2026-01-08 09:05:53 +00:00
Andrew Rumble
07c827e9fd Merge pull request #29928 from overleaf/ar-last-infrastructure-conversions
[web] last infrastructure conversions

GitOrigin-RevId: ad1aff9b7df0610ed0303157d9e2c8032f32c02b
2025-11-28 09:05:56 +00:00
Andrew Rumble
18f44866e5 Merge pull request #29919 from overleaf/revert-29795-ar-last-infrastructure-conversions
Revert "[web] last infrastructure conversions"

GitOrigin-RevId: 48dc64553012afb5d2db4b2eb9c9898489b7e5ef
2025-11-27 09:05:54 +00:00
Andrew Rumble
d748d8d606 Merge pull request #29795 from overleaf/ar-last-infrastructure-conversions
[web] last infrastructure conversions

GitOrigin-RevId: 68aa11625a9bc6d0d5324ecd95bb5ac52af8ee96
2025-11-27 09:05:30 +00:00
John Lees-Miller
241a4b6b03 Use worker for analytics user export
GitOrigin-RevId: 3e49d483c0d93fa67986332e77e9928889aab7a7
2025-11-25 09:06:16 +00:00
Andrew Rumble
beb6f6d484 Merge pull request #29597 from overleaf/ar-last-features-esm-conversion
[web] last features esm conversion

GitOrigin-RevId: a35ab995bf654f1cdfe0e0062d8806761ecccf2d
2025-11-21 09:05:36 +00:00
Jimmy Domagala-Tang
ff987aa433 Migration for "notificationsPreferences" collection (#29446)
* Implement notifications preferences model

* NotificationPreferences class

* remove index performance tests

* move to unit tests

* use zod

* saving multiple preference values

* set unique:true

* throw error if preferences can't be parsed

* use z.infer

* strict schema when saving preferences

* fix: update notifPreferenceKey type to only contain key values

---------

Co-authored-by: Domagoj Kriskovic <dom.kriskovic@overleaf.com>
GitOrigin-RevId: 20cf3799c91e6a890ab6217667594d181237c791
2025-11-19 09:06:01 +00:00
Andrew Rumble
ee5ff397f8 Remove docHistoryIndex collection from db helpers
GitOrigin-RevId: 02a2c2291e1b7cb92558e2b1091275bd6cd15e5b
2025-11-18 09:05:49 +00:00
Antoine Clausse
f028f21e3c [web] Remove the nocdn fallback (#29311)
* Remove the nocdn fallback

Co-authored-by: Tim Down <tim.down@overleaf.com>

* Remove comment about nocdn query string in ExpressLocals.mjs

Co-authored-by: Tim Down <tim.down@overleaf.com>

* Remove `Frontend` global

---------

Co-authored-by: Tim Down <tim.down@overleaf.com>
GitOrigin-RevId: 74160ed4cf8ba17f8bd9b6793c8baa80883d3361
2025-11-12 09:05:31 +00:00
Domagoj Kriskovic
c84cfc815a Document updater script for notifying web on project updates (#29490)
* Document updater script for notifying web on project updates

* use lua script for deleting keys

* define jobId when adding to queue

* removeOnFail age

* mongo check if collaborator exists

GitOrigin-RevId: f67a79c890a03ccf44fd84243c9a3f380e7afb43
2025-11-11 09:06:04 +00:00
Andrew Rumble
4f02a85aa4 Update paths
GitOrigin-RevId: 399c594dd1bbf739d91874df6be3b70e57fe01e3
2025-11-06 09:05:57 +00:00
Maria Florencia Besteiro Gonzalez
8cd2f6ac46 Merge pull request #29485 from overleaf/mfb-from-joi-to-zod-clsi-cache-revert
Reapply "migrate from joi to zod CLSI-CACHE service"

GitOrigin-RevId: 638b9e21b8cf18c1733f8a01375dab4099fe5d73
2025-11-04 09:06:10 +00:00
Maria Florencia Besteiro Gonzalez
a88c307962 Merge pull request #29471 from overleaf/revert-29369-mfb-from-joi-to-zod-clsi-cache
Revert "migrate from joi to zod CLSI-CACHE service"

GitOrigin-RevId: 1846e5a1d990f7ff22982fc32277e24d69e9d1e0
2025-11-03 09:06:10 +00:00
Maria Florencia Besteiro Gonzalez
1720314726 Merge pull request #29369 from overleaf/mfb-from-joi-to-zod-clsi-cache
migrate from joi to zod CLSI-CACHE service

GitOrigin-RevId: b583431a902a1183235cb91a270f4123a5a7e547
2025-11-03 09:06:05 +00:00
Andrew Rumble
0036ad5f31 Remove docHistory collection from db helper
Co-authored-by: Ilkin Ismailov <ilkin.ismailov@overleaf.com>
GitOrigin-RevId: 788b794ff75564230df99b1b726da87bab468ef9
2025-10-30 09:07:12 +00:00
Andrew Rumble
19f1f6f702 Remove Joi and celebrate
GitOrigin-RevId: 12cf2e0266a2e57d674d13a2e6fe8368c980d2a1
2025-10-30 09:06:49 +00:00
Mathias Jakobsen
1b4719d523 Merge pull request #29310 from overleaf/mj-references-url-config
[web] Remove references url from configuration

GitOrigin-RevId: fd671d0ac1ff9a8bb754ee3136dc29401ba2b186
2025-10-28 09:05:57 +00:00
Andrew Rumble
f02f6475ac Update paths
GitOrigin-RevId: a9474c8f36e8b287de4dd8fda29bc082001444ac
2025-10-23 08:06:10 +00:00
Antoine Clausse
3a1f3af6a4 [web] Migrate some User and UserMembership files to ESM (#29181)
* Rename files to mjs

* Migrate files to ESM

* Fix imports

* Misc. fixes: Fixup InsititutionsAPI import, ObjectId import, ...

* Rename test files to mjs

* Convert test files to ESM

* Fix tests

* Update UserMembershipErrors imports

* Convert some tests: sinon -> vitest

* Fixup UserMembershipHandler.test.mjs

* Convert UserMembershipErrors to ESM

GitOrigin-RevId: 05d34c7e112a567f9c59398740ae0830ef93d32f
2025-10-21 08:06:30 +00:00
Domagoj Kriskovic
71457d74cb Add notifications web module (#28983)
* Add notifications web module

* implement getThreadMessage in chat

* Save comment mention notification

* check if recipient is a real user

* move commentMentionDelay

* use module-hooks types

* remove router

* updated collection name

GitOrigin-RevId: cf8240c88aac7d7e4de4bf51cfe2608b6b7e7918
2025-10-20 08:05:20 +00:00
Andrew Rumble
d5296783a4 Convert to ESM
GitOrigin-RevId: bc407a128b024792a65b62c2eaeacefa48ecfe8d
2025-10-16 08:06:56 +00:00
Andrew Rumble
7987c18350 Rename files
GitOrigin-RevId: 73ecf16aa08d0677661249f09d7be15214d15982
2025-10-16 08:06:51 +00:00
Liangjun Song
2724ebce49 Merge pull request #29045 from overleaf/kh-gracefully-handle-idempotency-errors
[web] fix idemopotency error by delaying backup measure

GitOrigin-RevId: 0a9a62f2a0c559257247d1b720a8668fdb09f6a1
2025-10-15 08:06:15 +00:00
Jakob Ackermann
3913008e02 [web] convert GeoIpLookup to async/await (#28802)
GitOrigin-RevId: 38ad8af970a0674a514bf5ed0dacb8becd7c1f72
2025-10-09 08:06:00 +00:00
Brian Gough
d7cd65d20c Merge pull request #28628 from overleaf/bg-cache-history-size-on-project
Implement project size checks on file uploads

GitOrigin-RevId: 4dffe237e6992b859f07964cffa82ff1c13e91c9
2025-09-24 08:07:37 +00:00
Jessica Lawshe
b06a3e8db3 Merge pull request #28373 from overleaf/jel-testing-session-for-domain-capture
[web] Testing domain capture before enabling

GitOrigin-RevId: 6ac62b39eedad613748a680aa26624126db8e1c1
2025-09-23 08:08:04 +00:00
Andrew Rumble
b1cf8d4e88 Return a formatted JSON error when validation fails
GitOrigin-RevId: 0f2d3d73a6e371aa332dee245be8802250adfb2b
2025-09-23 08:07:37 +00:00
Andrew Rumble
b30740e71c Use validation-tools library in web
GitOrigin-RevId: e10a22f5ad2efe45e12158471ffcc64c79e54125
2025-09-18 08:06:37 +00:00
Tim Down
d2f5cd4e46 Merge pull request #28380 from overleaf/td-zod-history
Migrate history-related web back end to Zod

GitOrigin-RevId: 38ed56927bee4f5670604d7178b096e382c8cb65
2025-09-18 08:05:34 +00:00
Jessica Lawshe
a9a28a13f5 Merge pull request #28402 from overleaf/jel-link-logged-in-async-local-storage
[web] Extend `AsyncLocalStorage` to SAML linking in route, clear `AsyncLocalStorage` on email updates, await analytics helper on email updates,

GitOrigin-RevId: 86a51e6800a4b954ff81a2d977edf1401064dda4
2025-09-17 08:05:30 +00:00
Eric Mc Sween
f1eadd78b7 Merge pull request #28459 from overleaf/em-history-restore-metrics
Add revert file/project timing metrics

GitOrigin-RevId: 5c701f70b8d8dcb9052c6559815e05bc3af9bcad
2025-09-15 08:05:33 +00:00
Antoine Clausse
009bc4463d Merge pull request #28273 from overleaf/ac-some-web-esm-migration
[web] Convert some Features files to ES modules (part 1)

GitOrigin-RevId: d19b024efad315143e022143e2a2683df8071744
2025-09-09 08:06:22 +00:00
Andrew Rumble
c5d6d60963 Allow objectId coercion and fix typing for fetchEntity
Co-authored-by: Eric Mc Sween
<5454374+emcsween@users.noreply.github.com>
GitOrigin-RevId: 1953b7b1378403b6f2fce0608f78232cb39cff88
2025-09-09 08:06:18 +00:00
Jakob Ackermann
bd4130c147 [filestore] remove user files endpoints (#28125)
* [filestore] remove user files endpoints

* [web] remove user files integration for filestore

GitOrigin-RevId: 565fa68a659c07420ee6141d0f276b4e4d2972e0
2025-09-02 08:04:52 +00:00
Andrew Rumble
e2716298cb Add zod helpers to Validation module
Co-authored-by: Eric Mc Sween
<5454374+emcsween@users.noreply.github.com>

Borrowed from a different commit in em-zod

GitOrigin-RevId: bb6ba6f3db35964e95d0b7f44454c4aa19d15b28
2025-08-29 08:06:05 +00:00
Eric Mc Sween
3354300e63 Add zod request validation helper
GitOrigin-RevId: de82d54176a98ff52e95564f1e42fb9314e68912
2025-08-29 08:05:38 +00:00
Andrew Rumble
4779b17ad1 Add email-change queue
GitOrigin-RevId: a5bbb4682223ee00db0c9a4070b8178a60eef83f
2025-08-29 08:05:08 +00:00