Commit graph

4744 commits

Author SHA1 Message Date
M Fahru
ec763c69a7 Merge pull request #24801 from overleaf/mf-swap-trial-cta-tear-down
[web] Tear down `swap-trial-cta` and use the `enabled` variant as the default

GitOrigin-RevId: 2ba2f5c864908871797420aff976918a4e224ad3
2025-04-24 08:06:06 +00:00
David
1cfd5ca948 Merge pull request #24950 from overleaf/dp-writeful-editor-switch
Expose isNewEditor in window.overleaf.unstable.store for use by writefull

GitOrigin-RevId: be68b3bc62ea1bfb631f349475888b1153e47cfd
2025-04-24 08:05:58 +00:00
Kristina
6166a51552 Merge pull request #24922 from overleaf/kh-add-customer-portal-links
[web] add stripe customer portal link

GitOrigin-RevId: 6baaf51d4dd89ef779229ad17603529db06cf396
2025-04-24 08:05:44 +00:00
David
52898ac83b Merge pull request #25031 from overleaf/dp-page-number-color
Fix pdf page number color in safari

GitOrigin-RevId: 14745d50a16df1aa5129b068d5dcf3ae5bc81e8b
2025-04-24 08:05:27 +00:00
Jakob Ackermann
fe1129c2cf [web] avoid accessing the sharejs snapshot directly (#25037)
* [web] avoid accessing the sharejs snapshot directly

* [web] limit API interface for sharejs types

GitOrigin-RevId: faece372128e4580376e32fa93aa8fedf1e02957
2025-04-24 08:05:15 +00:00
Jimmy Domagala-Tang
b225b55e8d Merge pull request #24990 from overleaf/dk-paywall-modal-updates
Updates to AI assist interstitial modal

GitOrigin-RevId: d2365aaf36f1f61a39a0bd52357f4518736e2a7d
2025-04-23 08:05:35 +00:00
Jimmy Domagala-Tang
f95bf41824 Merge pull request #24697 from overleaf/jdt-show-addons-via-wf
Display When Ai Assist Is Granted Via Writefull

GitOrigin-RevId: 91f6e1843e2e1d1f7b3a49d95f31603e838c5545
2025-04-23 08:05:30 +00:00
David
d492512d9e Merge pull request #24878 from overleaf/mj-editor-redesign-experiment
[web] Move editor redesign to labs experiment

GitOrigin-RevId: 5f11ff29a6c392ff6e448a16450e2e65a2574097
2025-04-23 08:05:22 +00:00
David
9d858dcf0f Merge pull request #24961 from overleaf/dp-back-to-editor
Update toolbar in history view to add BackToEditorButton

GitOrigin-RevId: 4c260126a373b1b3a7c31f9f4b44f6ae7fba6f36
2025-04-23 08:05:06 +00:00
David
584db6c301 Merge pull request #24989 from overleaf/mj-ide-redesign-modal-content
[web] Update copy in editor redesign switcher modal

GitOrigin-RevId: 9df3d6d580fec2540d0254e1f3a65b3b059bc63f
2025-04-23 08:05:01 +00:00
Jakob Ackermann
ee2338a33b [web] align criteria for fallback to clsi-cache (#24970)
* [web] rename helper for browser cache bug, avoid confusion w/ clsi-cache

* [web] align criteria for fallback to clsi-cache

Notably, avoid the fallback from inside pdf-caching when disabled.

GitOrigin-RevId: 3fd918de14eef59c45c28cc5b5e256048cb91528
2025-04-18 08:05:25 +00:00
Domagoj Kriskovic
26032d6b77 Add origin for ai assist interstitial modal (#24904)
GitOrigin-RevId: 035edf8791b0afdc8c320598d09d99f5e84acc47
2025-04-18 08:04:55 +00:00
Antoine Clausse
b901bb6c75 [web] Update fetch-mock to version 12 (#24837)
* Update fetch-mock to version 12

* Replace `fetchMock.done` by `fetchMock.callHistory.done`

* Replace `…Mock.called` by `…Mock.callHistory.called`

* Replace `fetchMock.reset` by `fetchMock.hardReset`

* Replace `fetchMock.restore` by `fetchMock.hardReset`

* Replace `fetchMock.resetHistory` by `fetchMock.clearHistory`

* Replace `fetchMock.calls` by `fetchMock.callHistory.calls`

* Replace `fetchMock.flush` by `fetchMock.callHistory.flush`

* Update tests for fetch-mock version 12

See https://www.wheresrhys.co.uk/fetch-mock/docs/Usage/upgrade-guide

* Update stories for fetch-mock version 12

* Remove `overwriteRoutes` option

* Add `fetchMock.spyGlobal()` to storybook

* Remove deprecated `sendAsJson` param

* Replace `fetchMock.hardReset()` by `fetchMock.removeRoutes().clearHistory()`

* Fixup fetch-mock in storybook:

Call `mockGlobal` inside the hook, call `removeRoutes` and `unmockGlobal` on cleanup

Behaviour can be tested by navigating between

https://storybook.dev-overleaf.com/main/?path=/story/editor-ai-error-assistant-compile-log-entries--first-log-entry
https://storybook.dev-overleaf.com/main/?path=/story/editor-ai-error-assistant-compile-log-entries--rate-limited

https://storybook.dev-overleaf.com/main/?path=/story/project-list-notifications--project-invite
https://storybook.dev-overleaf.com/main/?path=/story/project-list-notifications--project-invite-network-error

And clicking the buttons

GitOrigin-RevId: 35611b4430259e4c21c3d819ad18b2e6dab66242
2025-04-17 08:06:24 +00:00
Eric Mc Sween
82c95dd82d Merge pull request #24930 from overleaf/em-ae-jd-full-project-search-launch
Launch full project search from regular search

GitOrigin-RevId: 3ef4f6923a0aeef6ab68768bab79e4be32f09eb0
2025-04-17 08:06:07 +00:00
M Fahru
04d36122bd Merge pull request #24659 from overleaf/mf-init-plans-page-bs5
[web] Migrate plans page and interstitial payment page to bootstrap 5 with feature flag

GitOrigin-RevId: 4491b2205a19b943e8d8bf13f699f92278f5e183
2025-04-17 08:05:54 +00:00
Mathias Jakobsen
dfc00ed8c1 Merge pull request #24949 from overleaf/mj-papers-notification-papers-feature
[web] Show papers notification to users with papers feature

GitOrigin-RevId: 376ed7a43bec28766f89101588ed2546ec3093d2
2025-04-17 08:05:49 +00:00
Jessica Lawshe
262a1d09c6 Add BS3 templates stylesheet back
Still used by portals

GitOrigin-RevId: 0d85d437c3f771fbb6ff76048f9e49654c88cf83
2025-04-17 08:05:45 +00:00
Mathias Jakobsen
fe68930e9a Merge pull request #24733 from overleaf/mj-labs-without-features
[web] Move labs experiments from features to own property

GitOrigin-RevId: 22dee79758e5fa65fc31d9b8d4b155443cd585e7
2025-04-17 08:05:28 +00:00
Mathias Jakobsen
3a0c71175b Merge pull request #24891 from overleaf/mj-ide-redesign-hide-unavailable-menu-options
[web] Editor Redesign: Hide unavailable menu items

GitOrigin-RevId: 4aaee8befb6234a00bd4ec6087dcfd1417878576
2025-04-17 08:05:24 +00:00
Mathias Jakobsen
8fc206073b Merge pull request #24923 from overleaf/dp-mj-papers-notification
Add notification banner for Papers integration marketing

GitOrigin-RevId: 625c3afcc6ca617fd01af58a05a6c85f7126398b
2025-04-17 08:05:19 +00:00
Alf Eaton
34d5564abc Revert "Upgrade PDF.js to v5 (#24646)" (#24946)
This reverts commit 3ef46af6363aab5b5b007b6c9d72decae65a36ab.

GitOrigin-RevId: 9c3671b3ff196bb62ff547210a1138cb603d6791
2025-04-17 08:05:15 +00:00
David
c1fc5b88b3 Merge pull request #24916 from overleaf/dp-git-logo
Use orange version of Git logo in account settings

GitOrigin-RevId: 10067d4190d54ea14183b20620001237090758da
2025-04-17 08:05:03 +00:00
Alf Eaton
a1098a921c Upgrade PDF.js to v5 (#24646)
GitOrigin-RevId: 3ef46af6363aab5b5b007b6c9d72decae65a36ab
2025-04-17 08:04:59 +00:00
Tim Down
34be8b75ad Merge pull request #24936 from overleaf/td-warning-badge-light
Use dark-on-light for warning badge by default

GitOrigin-RevId: 6259ec08c9c31f54dbdad6261a966f638303cc3b
2025-04-17 08:04:46 +00:00
David
35902407b3 Update integration logos in editor redesign (#24902)
* Update git bridge logo based on current theme

* Use GithubLogo black instead of GithubLogo

* Add missing logos

* Update dropbox logo

* Revert default DropboxLogoBlack size

* Remove white background from DropboxLogo

* Rename GitBridgeLogo to GitLogo

GitOrigin-RevId: 00d08716d9ccb0df7912dba39ec0477d672dc56d
2025-04-16 08:05:56 +00:00
Domagoj Kriskovic
1f7bfb4737 "default-visual-for-beginners" split test tear down (#24759)
GitOrigin-RevId: cdd6c8d3ffb60b9ae3e972f2267f1838cf720c83
2025-04-16 08:05:47 +00:00
Jakob Ackermann
39110d9da9 [clsi-cache] check compiler settings before using compile from cache (#24845)
* [web] provide an actual rootFolder from EditorProviders in tests

- Fixup SocketIOMock and ShareJS mocks to provide the complete interface
- Extend SocketIOMock interface to count event listeners
- Fixup test that did not expect to find a working rootDoc

* [web] expose imageName from ProjectContext

* [clsi-cache] check compiler settings before using compile from cache

* [web] avoid fetching initial compile from clsi-cache in PDF detach tab

GitOrigin-RevId: e3c754a7ceca55f03a317e1bc8ae45ed12cc2f02
2025-04-16 08:05:35 +00:00
Tim Down
ef958f97a1 Merge pull request #24644 from overleaf/td-contact-form-react-email-validation
Add validation to email field in React version of contact form

GitOrigin-RevId: 9804af9fd5c4cf8e29e47a8661c50198eb0f6bcf
2025-04-16 08:05:23 +00:00
Tim Down
832028e92d Merge pull request #24718 from overleaf/td-bs5-warning-bg
Fix for form warning text colour

GitOrigin-RevId: 48a6d710548d919a5968a04709b41e4f1b2cd004
2025-04-16 08:05:19 +00:00
David
bc95219bf6 Merge pull request #24862 from overleaf/dp-check-logs
Create openTab utility in rail-context to open rail at specific tab

GitOrigin-RevId: bfac2597fdd66db6dd8280873be97096f2b812dc
2025-04-16 08:05:01 +00:00
David
3e49fd6967 Merge pull request #24860 from overleaf/dp-chat-names-dark
Fix chat message names in dark mode

GitOrigin-RevId: dd919e3398a53b981939add5e3300c6427133b39
2025-04-16 08:04:57 +00:00
David
846ccd3aac Merge pull request #24859 from overleaf/dp-history-file-tree
Always show file tree in history view in new editor

GitOrigin-RevId: e993aae4c1625ef7fb0a716ae5bff8edb0e8d0d0
2025-04-16 08:04:52 +00:00
David
9babb6283b Merge pull request #24866 from overleaf/dp-toolbar-truncation
Add explicit width to codemirror toolbar wrapper to ensure it truncates correctly

GitOrigin-RevId: 458788daa8e634aebcb5f61dc4ce78f871b03913
2025-04-16 08:04:47 +00:00
M Fahru
3a5d24eb7a Merge pull request #24524 from overleaf/mf-gallery-redesign-leftover-remove
[web] Remove leftover gallery redesign split test code

GitOrigin-RevId: 484272bfaae7db5b5329ae19ca556ee8e4a33650
2025-04-15 08:06:05 +00:00
Jimmy Domagala-Tang
0e49a5d9b0 Merge pull request #24391 from overleaf/jdt-move-wf-features-to-ol
Move Writefull table + equation generator to OL toolbar

GitOrigin-RevId: b7bc5b1cde5687360c4f60cb64924da139ccfbe9
2025-04-15 08:05:47 +00:00
Domagoj Kriskovic
b9f1013f37 Update "collaborator-invited" analytics event (#24639)
GitOrigin-RevId: e469c50dadea568032ec825fa99b33b80d0b3964
2025-04-15 08:05:18 +00:00
Domagoj Kriskovic
30c5495b21 Update share modal copy for reviewer role (#24694)
* Update share modal copy for reviewer role

* fix ShareProjectModal test

* use "limited_to_n_collaborators_per_project"

GitOrigin-RevId: f5afcb18a3921a6b1132a4c323af9d8395a7d07b
2025-04-15 08:05:14 +00:00
Liangjun Song
c60ceaf932 Merge pull request #24466 from overleaf/ls-script-runner
Script runner

GitOrigin-RevId: 4cc7004f05177dba2a2151aa6db7e75fb679d11d
2025-04-14 08:04:37 +00:00
M Fahru
14308f4fba Merge pull request #23085 from overleaf/mf-teardown-bs5-register-login
[web] Teardown bs5 login and register page

GitOrigin-RevId: e2335ecbe89212984acd24fbbaa6f9549dc45b96
2025-04-11 08:06:13 +00:00
David
9cd7e49daf Merge pull request #24332 from overleaf/dp-review-panel
Add review panel to new editor

GitOrigin-RevId: 918a29d81fcfaf60bc4af8a20a25545d79c4a3ed
2025-04-11 08:05:31 +00:00
Kristina
9f22564ca3 Merge pull request #24680 from overleaf/kh-rename-recurly-namespace
[web] rename recurly namespace

GitOrigin-RevId: b7cfd26923d47bd7f3de4140be24d2d1ef20f6c8
2025-04-11 08:05:20 +00:00
Mathias Jakobsen
c27c7bbe83 Merge pull request #24720 from overleaf/mj-teardown-write-and-cite-split-tests
[web] Tear down Write and Cite related split tests

GitOrigin-RevId: 0002829f53b0f28d482c79ed2cbf61066690ae02
2025-04-11 08:05:05 +00:00
Jimmy Domagala-Tang
f7f4a03abb Merge pull request #24523 from overleaf/jdt-prevent-bundle-dbl-buys
Redirect bundle purchases when users already have it

GitOrigin-RevId: d8e3c0256db08c08c2be24f38caef91fb26b90e8
2025-04-10 08:06:28 +00:00
Mathias Jakobsen
6207c853ef Merge pull request #24708 from overleaf/mj-rail-element-tooltips
[web] Add tooltips to rail buttons

GitOrigin-RevId: 1b75c48f30b593e9e725bcb9658c4c15c9fe6a66
2025-04-10 08:06:01 +00:00
Mathias Jakobsen
c183176fd3 Merge pull request #24705 from overleaf/mj-ide-rail-hover-state
[web] Editor redesign: Add hover state colors to rail

GitOrigin-RevId: 9b4a19a913963fcd4b76cf24467b8c1ad6fb1fab
2025-04-10 08:05:57 +00:00
Mathias Jakobsen
15663796ad Merge pull request #24703 from overleaf/mj-ide-align-icon
[web] Editor redesign: Align logo and home button with rail tabs

GitOrigin-RevId: 837651bb55348a043ec16afeffb508bc1d723689
2025-04-10 08:05:52 +00:00
Mathias Jakobsen
e670024f5c Merge pull request #24678 from overleaf/mj-ide-view-help-menu
[web] Add remaining options to menu bar

GitOrigin-RevId: cf6cc6c2aaf450e362588c514e1a87e923a611b4
2025-04-10 08:05:48 +00:00
Mathias Jakobsen
bdf0194fc8 [web] Add editor commands to command registry and toolbar (#24538)
* [web] Add editor commands to command registry and toolbar

* [web] Omit empty groups

* [web] Editor redesign: Move toolbar commands to custom hook

* [web] Disable editor commands when editor is not visible

GitOrigin-RevId: be9f4060fc44e51223e16860fdcf6698c927998c
2025-04-10 08:05:43 +00:00
Jakob Ackermann
b831a0b3f7 [clsi-cache] frontend (#24389)
* [clsi-lb] forward ?clsiserverid=cache requests to clsi-cache

* [web] use clsi-cache in frontend

* [web] upgrade compile from cache to full compile when triggered inflight

* [web] fix pdf-js-viewer.spec.tsx tests -- add ?clsiserverid=foo to url

* [web] fix renamed reference after merge

* [web] fix download of other output files and use specific build

* [web] consolidate validation of filename into ClsiCacheHandler

* [web] remove unused projectName from getLatestBuildFromCache

* [web] avoid hitting the same clsi-cache instance first all the time

* [web] update documentation

GitOrigin-RevId: d48265a7ba89d6731092640e1492bc9f103f5c33
2025-04-10 08:05:22 +00:00
Jakob Ackermann
b538d56591 [clsi-cache] backend (#24388)
* [clsi-cache] initial revision of the clsi-cache service

* [clsi] send output files to clsi-cache and import from clsi-cache

* [web] pass editorId to clsi

* [web] clear clsi-cache when clearing clsi cache

* [web] add split-tests for controlling clsi-cache rollout

* [web] populate clsi-cache when cloning/creating project from template

* [clsi-cache] produce less noise when populating cache hits 404

* [clsi-cache] push docker image to AR

* [clsi-cache] push docker image to AR

* [clsi-cache] allow compileGroup in job payload

* [clsi-cache] set X-Zone header from latest endpoint

* [clsi-cache] use method POST for /enqueue endpoint

* [web] populate clsi-cache in zone b with template data

* [clsi-cache] limit number of editors per project/user folder to 10

* [web] clone: populate the clsi-cache unless the TeXLive release changed

* [clsi-cache] keep user folder when clearing cache as anonymous user

* [clsi] download old output.tar.gz when synctex finds empty compile dir

* [web] fix lint

* [clsi-cache] multi-zonal lookup of single build output

* [clsi-cache] add more validation and limits

Co-authored-by: Brian Gough <brian.gough@overleaf.com>

* [clsi] do not include clsi-cache tar-ball in output.zip

* [clsi-cache] fix reference after remaining constant

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

* [web] consolidate validation of filename into ClsiCacheHandler

* [clsi-cache] extend metrics and event tracking

- break down most of the clsi metrics by label
  - compile=initial - new compile dir without previous output files
  - compile=recompile - recompile in existing compile dir
  - compile=from-cache - compile using previous clsi-cache
- extend segmentation on compile-result-backend event
  - isInitialCompile=true - found new compile dir at start of request
  - restoredClsiCache=true - restored compile dir from clsi-cache

* [clsi] rename metrics labels for download of clsi-cache

This is in preparation for synctex changes.

* [clsi] use constant for limit of entries in output.tar.gz

Co-authored-by: Eric Mc Sween <eric.mcsween@overleaf.com>

* [clsi-cache] fix cloning of project cache

---------

Co-authored-by: Brian Gough <brian.gough@overleaf.com>
Co-authored-by: Alf Eaton <alf.eaton@overleaf.com>
Co-authored-by: Eric Mc Sween <eric.mcsween@overleaf.com>
GitOrigin-RevId: 4901a65497af13be1549af7f38ceee3188fcf881
2025-04-10 08:05:17 +00:00