Commit Graph

24711 Commits

Author SHA1 Message Date
Mathias Jakobsen
42f7bca37e Merge pull request #33317 from overleaf/mj-menu-bar-role
[web] Fix aria roles for nested menu bar dropdowns

GitOrigin-RevId: 1c285c2ef8ed0c589bd6b0df6112c054c8662ca4
2026-05-01 08:07:09 +00:00
Olzhas Askar
823f11426b Merge pull request #33109 from overleaf/oa-upgrade-path
[web] Upgrade path

GitOrigin-RevId: 532993e613bdc42cf92a7b10e629aa94596d854e
2026-05-01 08:07:01 +00:00
Davinder Singh
30e0e6adaf adding side menu for download option (#33307)
* adding side menu for download option

* fixing the E2E tests to adapt the new behaviour

GitOrigin-RevId: d96df4906a40006d36ac0ea525d74a1644ec4085
2026-05-01 08:06:57 +00:00
Alex Vizcaino
2ebe0bd513 fix: add unique key to GetPremium component in ReplacementsCard (#33303)
* fix: add unique key to GetPremium component in ReplacementsCard

* fix: update paywall messages for clarity in English and Spanish

GitOrigin-RevId: 3422ef2fbf049fe1c2cc20f6f8d224b4d67374ca
2026-05-01 08:06:49 +00:00
Antoine Clausse
8da6222a89 [web] Fix plans CTA plain-link and edu discount clickable area overflow (#33243)
* Update .plans-cta-plain-link styles so the clickable area doesn't overflow

* Update .plans-educational-discount-label styles so the clickable area doesn't overflow

* Fix lint

GitOrigin-RevId: cedbaa78a079fd4f7cefe2be9b39252d30ba6355
2026-05-01 08:06:45 +00:00
Antoine Clausse
dd44f4e2e8 [web] Remove stale "You already have a subscription" notification (#33187)
* Remove stale "You already have a subscription" notification after cancel/plan change

The notification was derived from a server-rendered meta tag set at page load,
so it persisted through cancel and plan-change flows. Now derived directly from
the URL param on the client; the param is stripped on cancel button click
(replaceState) and before plan-change reloads (location.replace via
reloadWithoutHasSubscription helper).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* Fix format

* Update services/web/test/frontend/features/subscription/components/dashboard/subscription-dashboard.test.tsx

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Fix change-plan tests after location.reload → location.replace migration

reloadWithoutHasSubscription calls location.replace() not location.reload(),
so update assertions accordingly. Also stub toString() to return the jsdom
origin so FlashMessage's replaceState call doesn't throw a SecurityError.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* Guard reloadWithoutHasSubscription against empty URL

When called after component unmount, useLocation's toString() returns '',
causing new URL('') to throw. No-op early to avoid the exception.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* Guard against empty URL in history state replacement for subscription cancellation

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
GitOrigin-RevId: 8408ee971adf038e2d819eae5df060ace62a7e14
2026-05-01 08:06:41 +00:00
Antoine Clausse
353c681d51 [web] Disable AI Assist add-on purchase for plans-2026-phase-1 users (#33178)
Users in the plans-2026-phase-1=enabled split test can no longer
purchase the AI Assist add-on via crafted HTTP requests. The preview
and purchase endpoints return 404/redirect for these users.

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
GitOrigin-RevId: 2c75eb622cf44dc91019a692290ac646b51fd72c
2026-05-01 08:06:37 +00:00
Alf Eaton
e3f88791da Revert "Add Vertex as an AI provider (#32450)" (#33309)
This reverts commit 20d895350ee13a7683f178bc83b87f0e765c7af6.

GitOrigin-RevId: 6be06b0fee0b038c42db45fce2377efd5d5a47dc
2026-05-01 08:06:32 +00:00
Alf Eaton
f00dab5cc0 Add Vertex as an AI provider (#32450)
GitOrigin-RevId: 20d895350ee13a7683f178bc83b87f0e765c7af6
2026-05-01 08:06:25 +00:00
Alf Eaton
94018faafc Ensure tsconfig.json in all modules/*/app/src folders (#33060)
GitOrigin-RevId: 998d9c32bd11d77ee371e8bfd96fa201cf6950b2
2026-05-01 08:06:17 +00:00
Alf Eaton
664cc65ab0 Use CSF Next (#32998)
GitOrigin-RevId: 498e15e3ae44f0a7b85e889e199d71607c420e12
2026-05-01 08:06:13 +00:00
Brian Gough
c19c25d113 Merge pull request #32874 from overleaf/bg-promisify-archive-manager
Promisify ArchiveManager

GitOrigin-RevId: 7a3ee3dfb2f07dc06ee894cfce0a9196622c878e
2026-05-01 08:06:05 +00:00
Brian Gough
8a8679eb78 Merge pull request #33297 from overleaf/bg-fix-acceptance-tests-in-dev-env
fix: update migration commands to use yarn instead of east
GitOrigin-RevId: 9cfcc393cfc1855e1edba6ba90ebb7b3a76ecb6b
2026-05-01 08:06:01 +00:00
Brian Gough
7f7556cf6a Merge pull request #33219 from overleaf/bg-fix-collapsible-panel-flicker
Fix flicker when switching between editor and PDF views

GitOrigin-RevId: 1f6543c0046dc458fa174aa9b54985934a7437fa
2026-05-01 08:05:56 +00:00
Brian Gough
eec3be362b Merge pull request #33172 from overleaf/bg-fix-project-upload-unlinks
fix: use fsPromises ins ProjectUploadController async functions for consistency
GitOrigin-RevId: beb858d9b6cf50431fb14626dfd7cddfaf093882
2026-05-01 08:05:52 +00:00
roo hutton
970bc85b78 Merge pull request #33247 from overleaf/rh-cio-fix-ai-group-enabled
Base group ai enabled cio attribute on group policy

GitOrigin-RevId: 2b2411aec3ffc694d2570e6031e9a876a1575e2c
2026-05-01 08:05:44 +00:00
Mathias Jakobsen
a478c1a829 [web+project-history] Add lastResyncedAt field to projects and set after resync (#33240)
Co-authored-by: Jakob Ackermann <jakob.ackermann@overleaf.com>
GitOrigin-RevId: f679a190b88694a46f7816d51eff96446f338dec
2026-04-30 08:06:43 +00:00
Jakob Ackermann
50abfe8f0c [migrations] add migration for back filling db.users.analyticsId (#33115)
* [migrations] add migration for back filling db.users.analyticsId

Co-authored-by: Davinder Singh <davinder.singh@overleaf.com>

* [web] add acceptance test for backfilling db.users.analyticsId

---------

Co-authored-by: Davinder Singh <davinder.singh@overleaf.com>
GitOrigin-RevId: a0840969ac0c4c84e874c6f00cf0a78857a4bb06
2026-04-30 08:06:38 +00:00
Jakob Ackermann
4e138e6f99 [web] make labs releases available to E2E tests/Codespaces (#33242)
GitOrigin-RevId: a4e6a6bd6ffb7f3e9331aa81daf19e22b894d771
2026-04-30 08:06:34 +00:00
Jimmy Domagala-Tang
41b96ec8d6 feat: ai quotas should reset when a new plan purchase is made or upgraded (#33095)
GitOrigin-RevId: 9034800e067426fc22f8f86f9d7309699797d02e
2026-04-30 08:06:30 +00:00
Jimmy Domagala-Tang
730ff8f0ea feat: add a utilitty script for setting a users AI usage, useful for testing in staging (#33216)
GitOrigin-RevId: 71d4948235ccf37971142a4ed917cff2ef50cea9
2026-04-30 08:06:26 +00:00
Jimmy Domagala-Tang
994932b8e3 [Web + Doc-Updater] Add track changes accepted notification (#32752)
* feat: update doc manager to return a list of contributors to the accepted change

* feat: add new notification type for accepting a tracked change

* update email with tracked changes accepted

* feat: update tests

* fix: feedback on consistent api and returns

* feat: adding new tests

* feat: self accepted changes shouldnt trigger notification, and using existing changesAccepted hook

* Add better subject and activity list for track change accepted (#33094)

* feat: add better activity list entry and subject header for accepted changes, to match other notifications

* feat: updating tests

* feat: updating accepting_user_id to just user_id

* fix: adding users in emailBuilder test to userCache

GitOrigin-RevId: 6114f77916b5f503b7bbbb5ca8fed99e58edc31b
2026-04-30 08:06:19 +00:00
Olzhas Askar
fe59b9cdb5 Merge pull request #33245 from overleaf/oa-faq
[web] 2026 FAQ fixes

GitOrigin-RevId: e70a6080341ea63d3668794f50baf7538f09f55b
2026-04-30 08:06:02 +00:00
jmescuderowritefull
35dc3ab790 Enhance AI usage messaging (#33105)
GitOrigin-RevId: 0bd325d806d945366abb6e7d8cc3cd177cb66ef2
2026-04-30 08:05:57 +00:00
Kate Crichton
20f08ab8c1 Merge pull request #32855 from overleaf/kc-move-token-rendering
[web] move domain verification token rendering to collapsible section

GitOrigin-RevId: c34b0f66f56c4e9942a53c2a2383d7a8cbdfdf7c
2026-04-30 08:05:48 +00:00
Kate Crichton
e7cfcbdc66 Merge pull request #32503 from overleaf/kc-domain-verification-error-messages
[web] domain verification error messages

GitOrigin-RevId: a5a04934a8675741c4dc6a4779c2c90cbf54c04d
2026-04-30 08:05:37 +00:00
Domagoj Kriskovic
117a783f21 [web] Add .py to defaultTextExtensions
GitOrigin-RevId: 0880c01f6e3b4267f6cb790a44c6094738ab2229
2026-04-30 08:05:30 +00:00
Domagoj Kriskovic
9e677a2c1e Use overleaf CDN for loading pyodide packages
GitOrigin-RevId: e17ff3387166421a546a9519786d77ba12cdffc4
2026-04-30 08:05:23 +00:00
Kristina
a46ca0705f [web] update refund policy in zh-CN from 30 days to 14 days (#33236)
GitOrigin-RevId: 27f6b116b2cc344449417e7e32f7b93784919977
2026-04-30 08:05:18 +00:00
Chris Dryden
6c9560cd4e Merge pull request #32943 from overleaf/cd-auto-install-python-packages
Auto-install python packages from the executing python script

GitOrigin-RevId: e343312d61e1804d927688bf4e0de00b2bdb5382
2026-04-30 08:05:14 +00:00
Olzhas Askar
7c0595f9a9 Merge pull request #32063 from overleaf/oa-group-plans
[web] Rename group plans

GitOrigin-RevId: 8a3097dc1724709b5d7b163e0f9d968c21d63831
2026-04-30 08:05:10 +00:00
Mathias Jakobsen
92bbba5e50 Merge pull request #33046 from overleaf/mj-batch-history-resync-script
[web] Add script for batch history resyncs

GitOrigin-RevId: 2409475fa1ba12dadfaae9641a5fafdaa6c88e47
2026-04-29 08:06:12 +00:00
Copilot
e59cbc61cf Merge pull request #33134 from overleaf/copilot/fix-autocomplete-subparagraph
GitOrigin-RevId: 2ca0b9ab5de393b9b0a256c81450f57d933376fc
2026-04-29 08:06:08 +00:00
Andrew Rumble
2f51ad5180 Merge pull request #32782 from overleaf/ar-allow-types-to-pass-through-for-parseReq
[web] fix typing of parseReq

GitOrigin-RevId: 6f10ed8682af7c999497e3a9fbd77a9d25bd7c28
2026-04-29 08:06:04 +00:00
Anna Claire Fields
9f8e5582d5 Fix metrics pages broken by Yarn 4 migration (#33190)
GitOrigin-RevId: 9bb3462248a16bfab425f6ebc884e9210d872b9c
2026-04-29 08:05:49 +00:00
Jakob Ackermann
da11cf2669 [monorepo] fix running tests locally (#33186)
* [monorepo] fix running tests locally

* [web] fix east invocation

* [web] move corepack into entrypoint

* [web] fix running module acceptance tests locally

* [web] fix merged module targets

* [web] remove spurious change

GitOrigin-RevId: 84cf7f8d768d3429c8a98c789acf76f6cecd6e3e
2026-04-29 08:05:42 +00:00
Olzhas Askar
396e158ecd Merge pull request #31991 from overleaf/oa-rename-student-plans
[web] Rename Individual plan names

GitOrigin-RevId: f0133fc4e06542d7c68e0a0211a2ecc32afa733d
2026-04-29 08:05:37 +00:00
Malik Glossop
da027f46cf Merge pull request #32530 from overleaf/mg-stuck-sync-repro
Detect and auto-clear stuck sync states

GitOrigin-RevId: 680861a33e42432dab7d40ad421980b707eb6089
2026-04-29 08:05:33 +00:00
Malik Glossop
ba182f8275 Merge pull request #32710 from overleaf/mg-project-history-metrics
Add diagnostic annotations to LazyStringFileData toEager errors

GitOrigin-RevId: 47575586bb869d65e4eb443cc9f1215b6f245255
2026-04-29 08:05:28 +00:00
Tim Down
6296e7911c Merge pull request #33169 from overleaf/td-pricing-interstitial-fixes
Interstitial 2026: wire up upgrade CTAs and fix card highlights

GitOrigin-RevId: 2feea397846452ff79c7cd01c931627097a03954
2026-04-29 08:05:20 +00:00
Jakob Ackermann
68c41e9b66 [history-v1] fix re-running test_acceptance_run (#33183)
* [history-v1] fix re-running test_acceptance_run

Preserve the contents of the migrations collection. Deleting the entries
does not "undo" the migrations. On re-run east would try applying all
migrations and fail as things were already applied.

* [history-v1] remove guard migration before running tests

GitOrigin-RevId: e6eeafd58215e5148dd70c37c7a87d84e0a12bf3
2026-04-29 08:05:16 +00:00
Jakob Ackermann
f3ec774e6b [github] code spaces: add extra-split-tests.json (#33015)
* [github] code spaces: add extra-split-tests.json

* [github] address review feedback

* [github] add missing bind mount

* [monorepo] mount split test configs with :ro

* [monorepo] only mount backup/split-tests into web

GitOrigin-RevId: 6334a44599a2c8bb79bf1ad698e656c8bee3992b
2026-04-29 08:05:08 +00:00
Anna Claire Fields
0d64a88a46 Yarn 4 Migration (#32253)
Migrates the Overleaf monorepo package manager from npm (v11) to Yarn 4 (v4.9.1) using node-modules linker mode.

GitOrigin-RevId: 50d32ab01955c15e29679eff9e9e9cfb897fab2d
2026-04-28 08:52:37 +00:00
Brian Gough
50648d6ed9 Merge pull request #33138 from overleaf/bg-acf-web-graceful-shutdown
[web] add fast shutdown for development environment on SIGTERM

GitOrigin-RevId: eb82171144bfe4d4f6bafa5e20773a008eeb13af
2026-04-28 08:07:35 +00:00
Brian Gough
18b2308887 Merge pull request #32835 from overleaf/bg-fix-potential-race-condition-in-archive-manager
fix potential race condition in extractZipArchive

GitOrigin-RevId: 6dc77443e8a58172825d2b03645da05a9887e468
2026-04-28 08:07:26 +00:00
l-obrien-overleaf
6b78b42469 visual updates to optional fields in manual bib entry (#33102)
* visual updates to optional fields in manual bib entry

* omitting onClose from button auto complete props

GitOrigin-RevId: 922695e8eaec83702b482123dc4b4483fe957b78
2026-04-28 08:07:21 +00:00
Domagoj Kriskovic
7eee5809bb [pyodide] collect output files from worker and include in RunCodeResult
GitOrigin-RevId: fa9d501933ee32729e3d083183cd2a14ff969e95
2026-04-28 08:07:16 +00:00
l-obrien-overleaf
966a2f9bfe BibTeX editor: add preview screen to "Paste references" dialog (#32928)
* Adding preview panel for bibtex entry

* Removing bibtex-editor module directory and moving tests to library module

* Format fix

* Adding accessibility headers and hardening tests

* Simplfying preview logic for bibtex titles

* Only show author placeholder if no author present

* Fixing build failures

* Fixing broken test

GitOrigin-RevId: 23d2d4ff48fe8135687578cd3efdf8ba9395e411
2026-04-28 08:07:11 +00:00
Domagoj Kriskovic
4e51eee4f8 scss: use content-info variable
GitOrigin-RevId: 925d1ea2dc3496194388b6a347d1c0ab41ced52b
2026-04-28 08:07:02 +00:00
Domagoj Kriskovic
e3a1bce113 Add tests for stderr output handling and execution interruption in PythonOutputPane
GitOrigin-RevId: d383e90dffbabbb597a9cf793a6fabeeff9d6b1a
2026-04-28 08:06:57 +00:00