Commit Graph

628 Commits

Author SHA1 Message Date
Jimmy Domagala-Tang
bb5d90a332 Add usage quota to Workbench (#31782)
* feat: adding usage rate limiting to workbench and aligning editor context values for suggestionsLeft

* feat: prepend word token to headers of token rate limiter to prevent confusion with usage rate limiter

* Shared AI paywalls (#31948)

* feat: renaming hasPremiumSuggestion and adding token limits to editor context and project load

* feat: adding new ai features paywall component

* feat: rename getRemainingFeatureUses to token based naming for token based limiter, removed checking for feature usage on anonymous users, and removed guard on null userId since we shouldnt be calling getRemainingFeatureUses on a nonexistent user

* feat: using token rate limit headers to set token rate values in editor context

* feat: update workbench to be available without refreshing if rate limit reset occurs within session

* fix: move paywall out of inert section

* Hide new paywalls behind FF and open plans page on upgrade attempt (#32023)

* feat: hide new paywalls behind FF

* feat: update ai paywall buttons to navigate to plans page post quota plans change release

* feat: showing a fair limit notificaiton pre-quota change, and updating paywall to not fire if user has premium already (#32056)

GitOrigin-RevId: 565fb128d55543fea34c383bc4abeaa3dd148d09
2026-03-06 09:17:52 +00:00
Davinder Singh
7daaba5af7 Merge pull request #31957 from overleaf/ds-removing-useIsNewEditorEnabled-5
[Part 5] Removing the usage of `useIsNewEditorEnabled` for editor tear down

GitOrigin-RevId: 086183b196a44b393dc0c0f60f7bfbc5738901fc
2026-03-06 09:17:25 +00:00
ilkin-overleaf
6539e26107 Merge pull request #31742 from overleaf/ii-project-sharing-join-project
[web] Join project page redesign

GitOrigin-RevId: d182ec4fb744f384f824c9e63b534da02a9f8e99
2026-03-06 09:17:16 +00:00
Antoine Clausse
d5a65e906f [web] Paywall and other AI text edits (#31993)
* Update Compile timeout copy

* Update Collaborator limit copy

* Update Track changes copy

* Update History copy and "Start free trial" button

* Remove unnecessary children passed to StartFreeTrialButton

* Update Dropbox copy

* Update Github copy

* Update Git copy

* Update Reference managers copy

* Update Symbol palette copy

* Update Onboarding prompt copy

* Update Subscriptions page (on free account) copy

* `bin/run web npm run extract-translations`

* Add split-test assignment in subscription page

* Fix tests

* Update services/web/modules/symbol-palette/frontend/js/components/symbol-palette-overlay.tsx

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

* Update services/web/modules/onboarding/app/views/onboarding/try_premium.pug

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

* Update services/web/modules/onboarding/app/views/onboarding/try_premium.pug

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

* Replace `Github` to `GitHub` in translations

* Update "non Overleaf" to "non-Overleaf"

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
GitOrigin-RevId: 56ee2735899de18f820b229bc226249322ac0c87
2026-03-06 09:17:11 +00:00
l-obrien-overleaf
1be454b95c Initial working version of auto complete button component (#31823)
* Initial working version of auto complete button component

* generalising button auto complete for use in bibtex entry form

* Adding optional fuzzy searching

* Restoring delete optional field

* Removing dropdown specific styling

* Updating item/group interface for autocomplete

* Auto complete allowing full keyboard nav functionality

* Custom class for dropdown-upward

* Adding error validation for duplicate name with standard field

* fixing type errors

* Replacing Fuse with MiniSearch

* Adding clear button and frontend tests for ol-autocomplete

* Adding fuzzysearch option to autocomplete story

* removing unused vars and noddy comment

* Fixing lint failure

* Updating fuzzy search threshold

* Using downshift natural highlight

* Required label for aria compliancy

* changing how create item is handled

* addressing review comments

* Using AutoExpandingTextArea for optional fields and hooking in validation

* Formatting

* Requiring items prop for ol-autocomplete

* Fixing type failure in test

GitOrigin-RevId: 9b8f719fbb2bdd75fc1d5a9076908559040a8a78
2026-03-06 09:16:25 +00:00
Mathias Jakobsen
ada0922988 Merge pull request #31950 from overleaf/mj-themed-project-load
[web] Add themed project loading screen

GitOrigin-RevId: b73d8c825b5ab04ede1c9dde10a6891be63758a4
2026-03-06 09:15:55 +00:00
Davinder Singh
d6e745c156 Merge pull request #31909 from overleaf/ds-removing-useIsNewEditorEnabled-2
[Part 2] Removing the usage of `useIsNewEditorEnabled` for editor tear down

GitOrigin-RevId: 864652da0edcedab4f3b1ba47d8d42fb65260118
2026-03-06 09:15:30 +00:00
Malik Glossop
a293474c0c Merge pull request #31035 from overleaf/mg-context-menu-analytics
Add analytics event for context menu, comment, track changes, and jump to location

GitOrigin-RevId: 8412cc3c8039cd1582ccee20b162b4bef4467dea
2026-03-06 09:14:26 +00:00
Jimmy Domagala-Tang
501e11a42a Move feature rate limiters to shared web folder (#31855)
* feat: remove old assist split test

* feat: moving featue rate limiters to main shared directory for use in multiple modules

* feat: base workbench rate limiter on a token specific base class

* feat: rename aiErrorAssistRateLimiter to AiFeatureUsageRateLimiter to better reflect its for our shared ai usage quota

GitOrigin-RevId: 89464d115b5904f6274756a7169e2b35945e2fc9
2026-03-06 09:13:40 +00:00
Jakob Ackermann
81b7121408 [clsi] initial implementation of compile from history (#31883)
* [clsi] initial implementation of compile from history

* [clsi] copy changes

* [saas-e2e] extend test case with nested folder

* [saas-e2e] add test case for tracked changes

* [web] fix accumulating changes from multiple chunks

* [web] optimize size check for compile request payload

* [clsi] deduplicate globalBlobs

* [clsi] add validation for request body details

* [clsi] add metrics for compile from history

* [clsi] download binary files concurrently

* [clsi] skip download of empty file blob

* [clsi] break down e2e compile time metric by compileFromHistory

GitOrigin-RevId: 0dadef93e89d8a172c35cb130a1042d9d1bec42a
2026-03-06 09:12:07 +00:00
Jimmy Domagala-Tang
f96d37b7e3 Revert "Revert "[Web] Enable Quota System for AI Features"" (#31771)
* Revert "Revert "[Web] Enable Quota System for AI Features (#31544)" (#31767)"

This reverts commit f6589bdbf0ac7e71313739e3e3f4fb5bedd48c22.

* Update writefull entitlement syncing for commons (#31774)

* feat: update wf entitlement syncing logic

* feat: remove unused env variable, and parse quota tier as string for analytics

GitOrigin-RevId: 37ae7522a249501719a64327e2b6aaff01a3cc0b
2026-03-06 09:07:15 +00:00
Davinder Singh
b7f5344859 Tearing down of old Editor (Integrations panel) and other files (#31701)
* moving files from ide-redesign/components/editor-tour to features/editor-tour

moving files from ide-redesign/components/integrations-panel to features/integrations-panel

fixing imports

Revert "moving files from ide-redesign/components/editor-tour to features/editor-tour"

This reverts commit 9e4dcd4e001ffa4bfdb1053fb8824c1e8521ab10.

* moving files from ide-redesign/components/help -> ide-react/components/rail

* ide-redesign/components/breadcrumbs → features/source-editor/extensions

* ide-redesign/components/editor.tsx → ide-react/components/layout

* ide-redesign/components/full-project-search-panel.tsx → ide-react/components/rail/full-project-search-panel.tsx

* removing old-editor-warning-tooltip

* ide-redesign/components/tooltip-promo.tsx → shared/components/tooltip-promo.tsx

make cleanup_unused_locales

* extract-translations

GitOrigin-RevId: b9f44c4820bb4e0a7eef4f6f9a58ff96fd007bf9
2026-03-06 09:06:48 +00:00
Jimmy Domagala-Tang
892047fcf6 Revert "[Web] Enable Quota System for AI Features (#31544)" (#31767)
This reverts commit 17763447965aae5777053b783d2601517bfe6b12.

GitOrigin-RevId: f6589bdbf0ac7e71313739e3e3f4fb5bedd48c22
2026-02-24 09:07:06 +00:00
Jimmy Domagala-Tang
92463fb3e2 [Web] Enable Quota System for AI Features (#31544)
* feat: migrate from aiErrorAssist naming for disabling AI features to aiFeatures.enabled to avoid confusion

feat: keep aiErrorAssistant as setting on user object until migration is run

* feat: migrate writefull.enabled unset to instead use promotionSet false

* feat: updating to use quota based system for AI usage

* feat: hide relevant sections of quota system behind split test

* feat: ship onAiFreeTrial instead of free quota amount to project meta

* fix: renaming splitTestEnabledForUser to featureFlagEnabledForUser

* fix: v1_personal should have free trial amount of ai quota

* fix: onAiFreeTrial in projectController should account for anonymous users with no features

* feat: fixing marketing exports for ai quotas

* feat: update features epoch

* feat: move to quota tiers, and map tier to numeric allowance within rateLimiters

GitOrigin-RevId: 17763447965aae5777053b783d2601517bfe6b12
2026-02-24 09:06:31 +00:00
Eric Mc Sween
c3b43d92b0 Merge pull request #31618 from overleaf/em-bibtex-editor-design-review
Apply current BibTeX editor designs

GitOrigin-RevId: 3c51a2dd084fe45ba598091f7447d215e5a0739d
2026-02-23 09:05:25 +00:00
Domagoj Kriskovic
4603722288 [web] Add button style for copy to clipboard component
GitOrigin-RevId: e387f79c829c903660638d3781839c44da10db07
2026-02-19 09:05:37 +00:00
Anna Claire Fields
f33c3ba4cb replace utc helper function with local date (#31421)
GitOrigin-RevId: 03d8502bfe105574f8eb1ad65356a334edf44cd0
2026-02-18 09:05:54 +00:00
Mathias Jakobsen
08f2597948 Merge pull request #31372 from overleaf/mj-tutorial-cleanup
[web] Stop manually checking inactiveTutorials

GitOrigin-RevId: c2d14d8633ff58c1dc0b0544c890090d8beb64e2
2026-02-16 09:06:15 +00:00
Mathias Jakobsen
6890f1bb3c Merge pull request #31038 from overleaf/jdt-mj-rm-chat-ide-redesign
Editor Redesign Cleanup: Chat

GitOrigin-RevId: 98f969ee84a86761466de182787443b8c9bacefd
2026-02-16 09:06:05 +00:00
Mathias Jakobsen
498c89c6ed Merge pull request #31329 from overleaf/mj-dark-mode-notification
[web] Introduce notification for dashboard dark mode

GitOrigin-RevId: da5045d412ddc87a4b18823a4a5fa3192fe15c89
2026-02-12 09:05:36 +00:00
Mathias Jakobsen
cc1dedca7d Merge pull request #31397 from overleaf/mj-old-editor-toolbar-teardown
[web] Tear down old editor toolbar

GitOrigin-RevId: 8ba74abcc56e7bd476a9d6cae72f38486168c2ed
2026-02-11 09:07:14 +00:00
Alf Eaton
07d39f631a Add Cypress tests for code check (#30781)
GitOrigin-RevId: 6ff1314542c3042d40054e5173ea85e14719d8a2
2026-02-06 09:05:40 +00:00
Mathias Jakobsen
30b09bfdcc Merge pull request #31220 from overleaf/mg-workbench-ai-assist-release
Update workbench to be for AI Assist users

GitOrigin-RevId: a53c52344cae7d27fc0e1e13f3956e00df421503
2026-02-04 09:07:15 +00:00
Jimmy Domagala-Tang
fc8d564320 Editor Redesign Cleanup: main layout, toolbar, and rail (#31031)
* feat: integrate  main layout, toolbar, and rail from redesign into main ide-react folder

* feat: remove additional files no longer used after ide redesign

GitOrigin-RevId: 8fd77f63cb9c67be91995a9dde13b0fe2376d80f
2026-02-03 09:06:37 +00:00
Jakob Ackermann
5829a7fe43 [web] integrate clsi-cache into download pdf from project dashboard (#31138)
* [monorepo] fix downloads from non-sharded clsi-cache

* [web] check some compile from cache options server-side

* [web] integrate clsi-cache into download pdf from project dashboard

* [web] remove frontend tests for server-side validation

* [web] remove unused fetch mock

* [web] use helper that adds polyfill for AbortSignal.any()

* [web] upgrade fetch-mock to fix leaking AbortSignal

* [web] do not add an extra timeout to clsi-cache request

The web backend service has a low timeout already.

GitOrigin-RevId: a90984b92f5d4f24005db5a09f2c5d2424436886
2026-02-02 09:06:13 +00:00
Chris Dryden
a054938414 Merge pull request #30983 from overleaf/cd-close-modal-select-menus-on-click
Ensure select menus in Modals close on modal click

GitOrigin-RevId: 4a07f16146ac99e6fb1fdf09d222e6832cc93079
2026-01-30 09:05:19 +00:00
Rebeka Dekany
c4cdacc702 Align subscription, login, restricted, and invite pages with website redesign (#31045)
* Replace the black Overleaf logo to the green one

* Move subscription, login, restricted, invite views to website-redesign layout

* Remove the Storybook showcase of all the layouts

---------

Co-authored-by: Antoine Clausse <antoine.clausse@overleaf.com>
GitOrigin-RevId: b07581834921750c9c6de44f05beb0dd9eafba23
2026-01-29 09:06:03 +00:00
Malik Glossop
5d47879865 Merge pull request #30884 from overleaf/mg-upgrade-modal-tracked-changes
Show modal when user initiates tracked changes from context menu

GitOrigin-RevId: 09ce0aef3eea113cc0b8fc83db00cb8607a6ef9a
2026-01-26 09:06:07 +00:00
David
3d18d02846 Add a dark version of the checkbox component (#30213)
* Add a dark version of the checkbox component

* Add theming to storybook

* Fix storybook

* adding correct border colors

---------

Co-authored-by: davibaweja <davibaweja@gmail.com>
GitOrigin-RevId: e350ab7a0800edd960d99bb892e527b97106b17d
2026-01-26 09:05:48 +00:00
Jimmy Domagala-Tang
f7b42d212a feat: adding dark mode footer (#30772)
* feat: adding dark mode footer

* Update services/web/frontend/stylesheets/components/footer.scss

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

* feat: update linkedin logo to correct color, and enforce specific colors on socials logos

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
GitOrigin-RevId: 841317846dfbee04c1a00565054d7e9428805796
2026-01-23 09:06:44 +00:00
Malik Glossop
723da5c28a Merge pull request #30490 from overleaf/mg-context-menu-a11y
[web] Add a11y support for context menu

GitOrigin-RevId: 3cbe66ee3ee8345dd0e89f89561928889832a50d
2026-01-20 09:06:32 +00:00
Antoine Clausse
e36b12ea1b Merge pull request #30641 from overleaf/ac-uniaccessphase1-teardown
[web] Tear down split-test `uniaccessphase1`

GitOrigin-RevId: ef1726034362c7a0e95fb881d398fe39156713a5
2026-01-19 09:05:55 +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
Malik Glossop
f087d125c1 Merge pull request #30168 from overleaf/mg-context-menu
Add context menu (right click) to editor

GitOrigin-RevId: f2e567b51b04170ba1a46b0ab4659f3481b05bfe
2026-01-15 14:18:58 +00:00
Alf Eaton
5badb39259 Avoid closing nested menu on click (#30479)
GitOrigin-RevId: 0f966b53ee5bfd8b4bacdf7b259f3e8cab2858c8
2026-01-09 09:06:12 +00:00
Alf Eaton
ce5f66c21b Add keyboard shortcuts for Layout actions (#30494)
GitOrigin-RevId: 7978a579e719c4cd593c02662406e364b19f87e0
2026-01-09 09:05:56 +00:00
Alf Eaton
953eba1d0d Avoid beta badge focus when word count modal is opened (#30281)
GitOrigin-RevId: 570002a4dade41d393c66508e36c2863840f57f6
2025-12-15 09:06:06 +00:00
Alf Eaton
f941cbab5f Update workbench events (#30254)
GitOrigin-RevId: 7434483ce125676f1d7d76dfcb09d6691f9dadef
2025-12-12 09:05:19 +00:00
Mathias Jakobsen
b554b0cfcc Merge pull request #28497 from overleaf/mj-system-editor-theme-dark-light-split
[web] Split editor theme into two when using system overall theme

GitOrigin-RevId: 1efa5553fdff8a17de634017882feb2ede614cd6
2025-12-12 09:05:10 +00:00
Tim Down
427419e6a5 Merge pull request #30233 from overleaf/td-select-check-icon
Fix regression with select check icon

GitOrigin-RevId: c76e126c26395429cd3d41ac4e6ee36259062224
2025-12-11 09:05:33 +00:00
Antoine Clausse
d0d0776d25 [web] Misc. CIAM fixes (#30196)
* Remove focused style from the stepper

* Reduce spacing between password input and password policy

* Make input validation icon larger

* Make animated-tick.svg faster

* Move notification to below h1

* Move notification to below h1

* Fix: Warning: Invalid DOM property `autocomplete`. Did you mean `autoComplete`?

* Wrap form-text in a span so it's displayed correctly and not altered by flex

* Remove "Please request a new password reset email and follow the link." text after the email is entered

* Remove (unnecessary?) flex property on .ciam-form-text-icon

* Rename `messageTextNode` to `messageTextSpan`

* Revert changes to input-validator.ts

GitOrigin-RevId: ad83c92a59b9dbc872cf4e49362b0baec9fb5b93
2025-12-10 09:07:13 +00:00
Alf Eaton
b811da0695 [workbench] Improve asynchronous tool use (#30184)
GitOrigin-RevId: d1bd33469b557c29968049af99b9c3c85731151d
2025-12-10 09:06:43 +00:00
Malik Glossop
96141d7abe Merge pull request #30195 from overleaf/mj-svg-path-id-clash
[web] Resolve id clash for svg paths

GitOrigin-RevId: 911d44a4b1549d8de0cae39658f05660e75c180f
2025-12-10 09:05:54 +00:00
Antoine Clausse
549840f3a3 [web] Add unified-access-footer-click event (#30189)
* Add event `unified-access-footer-click`

* Remove redundant `page` segmentation

Co-authored-by: @copilot
GitOrigin-RevId: 81ba64d09e29466fb73f200859805b6e17990dca
2025-12-10 09:05:35 +00:00
Tim Down
f8e87929e1 Merge pull request #30150 from overleaf/td-ciam-welcome-storybook
Add CIAM welcome interstitial page

GitOrigin-RevId: 6d333b4d3256e6af2604fbf6363bce7079c4c1ab
2025-12-09 09:06:28 +00:00
Tim Down
452d854d5b Merge pull request #29972 from overleaf/td-ciam-onboarding
Unified access onboarding data collection pages

GitOrigin-RevId: c56a3d52f749883eeb2302e22aaf6bdf1239160c
2025-12-08 09:04:54 +00:00
Mathias Jakobsen
ff8e9394f3 Merge pull request #30078 from overleaf/ae-workbench-code-blocks
Update code block styles

GitOrigin-RevId: b8a871ba7eb429bb5a359c823d5da0ed6717c021
2025-12-04 09:06:50 +00:00
Tim Down
5bbc5b2e58 Merge pull request #29900 from overleaf/td-ciam-login
Implement unified access login page

GitOrigin-RevId: 9973565099e1e88dd9d6b232d8f5c545dc73e6f7
2025-12-04 09:06:11 +00:00
Mathias Jakobsen
0c07e5ff40 Merge pull request #30001 from overleaf/mj-workbench-consent-screen
[web] Add consent screen to workbench

GitOrigin-RevId: 7640154e9c02d340eb9c782e276a84cd961ad755
2025-12-04 09:05:42 +00:00
Mathias Jakobsen
c4d02f4571 Merge pull request #30042 from overleaf/mj-workbench-update-labs-widget
[web] Update look of labs experiment and tweak workbench labs content

GitOrigin-RevId: f7f693f778fb659ccf10a0c440c5c7487705d98e
2025-12-04 09:05:37 +00:00