Commit graph

2044 commits

Author SHA1 Message Date
David
a8cb423078 Merge pull request #19030 from overleaf/dp-presentation-mode-flag
Add separate feature flag for presentation mode

GitOrigin-RevId: a996fa313c101dd822ad83109ba77fa95f99f644
2024-06-24 12:04:34 +00:00
Antoine Clausse
2c7df10b9a [web] Refactor ProjectController.loadEditor p-props promises (#18823)
* Move unawaited promises out of `p-props`: `User.updateOne`

* Move unawaited promises out of `p-props`: `sessionMaintenance`

* Move unawaited promises out of `p-props`: `reactivateProjectIfRequired`

* Move unawaited promises out of `p-props`: `markAsOpened`

* Move unawaited promises out of `p-props`: `flushProjectToTpdsIfNeeded`

This was actually awaited, but is it necessary?

* Use `getUserValues`: `user`

* Use `getUserValues`: `learnedWords`

* Use `getUserValues`: `projectTags`

* Use `getUserValues`: `userHasInstitutionLicence`

* Use `getUserValues`: `subscription`

* Use `getUserValues`: `isTokenMember`

* Use `getUserValues`: `isInvitedMember`

* Update `splitTestAssignments` syntax

* Remove `mapValues` in `pProps`

* Await unused promises again: `flushProjectToTpdsIfNeeded` and `reactivateProjectIfRequired`

* Remove error page file committed by mistake 🤦

GitOrigin-RevId: 6529445c364a6af660bc8ab6dfc836a4ddf7a040
2024-06-24 12:04:18 +00:00
Jimmy Domagala-Tang
271700893a Merge pull request #18784 from overleaf/bg-allow-combined-group-policies
allow combined group policies

GitOrigin-RevId: b23fb0454f794e9094e8e15e732b4322a48ac1ee
2024-06-24 12:04:13 +00:00
Jimmy Domagala-Tang
e5aa917f54 Merge pull request #18682 from overleaf/jdt-ai-labs
Re-Release Labs Page for AI Error-Correction

GitOrigin-RevId: 2eef85dd3b5f86bedcf3339559a5fbbae2d4da87
2024-06-24 12:04:08 +00:00
Jakob Ackermann
ac7916fb29 Merge pull request #19023 from overleaf/jpa-issue-19016
[web] lock down legacy endpoint for creating projects from zip

GitOrigin-RevId: 0c6b29d34c601d316b184d50d93e8e17f59bfcfb
2024-06-24 12:04:00 +00:00
ilkin-overleaf
7b47acc486 Merge pull request #18763 from overleaf/ii-bs5-projects-notifications
[web] BS5 notifications in projects and welcome pages

GitOrigin-RevId: 25780bb64660ef41c41c007f94f70df273cac716
2024-06-24 12:03:15 +00:00
ilkin-overleaf
34311ce0dc Merge pull request #18789 from overleaf/ii-invite-token-lookup-by-hmac-token
[web] Lookup project invitations by HMAC token

GitOrigin-RevId: b631445e18f83ddb5e7708388a57a0fac0f73bd2
2024-06-24 12:03:10 +00:00
Eric Mc Sween
8d35177b52 Merge pull request #18985 from overleaf/em-migrate-bulk
Bulk history ranges migration

GitOrigin-RevId: 0d1846b412cfcddead63a7bc15bd06a82fbb47f3
2024-06-20 08:05:05 +00:00
Brian Gough
d43292cfe6 Merge pull request #18146 from overleaf/ab-one-time-assignments
[web] Handle one-time assignments for split tests

GitOrigin-RevId: 2d7ec2a878055fdc96475db2129aad308abb2fff
2024-06-20 08:04:34 +00:00
Miguel Serrano
f181dfe74f Merge pull request #18549 from overleaf/msm-system-messages-redirect
[web] return redirect on admin actions

GitOrigin-RevId: d6273c01d90230c786cc9d0808f866524e57bc19
2024-06-20 08:04:20 +00:00
Eric Mc Sween
e73fdfba63 Merge pull request #18906 from overleaf/em-migrate-existing-histories-2
History ranges migration script - second attempt

GitOrigin-RevId: 60a2c04e2a72e76a58e9e179fefc4186a96fde32
2024-06-19 08:05:02 +00:00
David
c16c806002 Merge pull request #18697 from overleaf/dp-ai-rate-limit
Add a rate limiter for the AI Error Assistant

GitOrigin-RevId: d23abc4b3477d13b1bfd4d69db168458ac8c2e51
2024-06-19 08:04:34 +00:00
Jakob Ackermann
aa480a2663 Merge pull request #18898 from overleaf/jpa-no-window
[web] migrate from window attributes to getMeta

GitOrigin-RevId: 3dcf1ab6b01155e5e4abeb3e78d0fa9053e055bc
2024-06-19 08:04:21 +00:00
Antoine Clausse
aa7839876a [web] Promisify MetricsEmailController and InstitutionHubsController (attempt 2) (#18805)
* Reapply "[web] Promisify MetricsEmailController and InstitutionHubsController …"

This reverts commit ea14df1395f1dc2fa7d41fc7837849f9686425b5.

* Fix changes to node-fetch: `statusCode` -> `status` (!!)

* Update test

* Handle no-content without throwing (!)

Avoid error `Unexpected end of JSON input` when doing `response.json()` on an empty response when status is 204

Related: https://github.com/node-fetch/node-fetch/issues/165

* Also return `204` when no data in departments_data and roles_data

* Revert "Handle no-content without throwing (!)", and return null instead

This reverts commits 3baa779f7a9e64804e54a276faf865ab9252f336 and 51507a3d763d7006c8b01414a7c79bd3f3b6948b.

* Update tests: `assert_nil`

* Fixup: Update tests: assert null

* Use `fetchJSON` in Institution.fetchV1Data

* Proxy errors from server without throwing 500

GitOrigin-RevId: 9c13e293f3fed3abd2accddd1a9060ed02b96ba2
2024-06-19 08:04:02 +00:00
Domagoj Kriskovic
7e8e2b0585 Send origin metadata through docupdater and project-history when restoring files (#18721)
* add RestoreFileOrigin in overleaf-editor-core

* support source to be an object

* use sourceOrOrigin as param

* rename to originOrSource so the priority is more clear

* get timestamp from version

* fix test

* include version and min_count in getUpdatesFromHistory

* extractOriginOrSource util function

* fix RestoreManagerTests

GitOrigin-RevId: 0ace05a6ade2794c753a9d0bffb4f858ecc6899a
2024-06-18 08:04:34 +00:00
Alf Eaton
b9a8a7f7ec Move AI provider usage to the backend (#18562)
GitOrigin-RevId: 4f66c6576571c4fbb7381d8d0e34f2e468d6f34f
2024-06-18 08:04:09 +00:00
Jakob Ackermann
e36de5a62d Merge pull request #18856 from overleaf/jpa-server-ce-shutdown
[server-ce] improve shutdown procedure

GitOrigin-RevId: 5a99868d17f597c366e42625cd39f05146dcb682
2024-06-18 08:04:04 +00:00
ilkin-overleaf
b34be6bea4 Merge pull request #18653 from overleaf/ii-invite-token-create-hmac
[web] Add HMAC tokens for project invitations

GitOrigin-RevId: 02fa01e24790c9a87f57ff9346f5346658d4dd46
2024-06-17 08:04:17 +00:00
andrew rumble
81b0eb7eb5 Remove obsolete comment
GitOrigin-RevId: 73da65c200d19ed4b389423e3d9f983c90ea1885
2024-06-17 08:04:09 +00:00
M Fahru
d80046c757 Delete unused code: planFeatures.js, this config should have been deleted on the first plans page redesign.
This config is superseded by `plansFeatures.js` that is imported by `plansConfig.js` which is directly used in the pug template.

GitOrigin-RevId: ae0a0e1ff7c8a64022ab378d17943fe4a7ed3b35
2024-06-14 08:05:03 +00:00
Davinder Singh
9ff03e9245 Merge pull request #18877 from overleaf/jel-sales-ad
[web] Remove 2 sales ad variants and increase probability of FOMO variant

GitOrigin-RevId: 6045dd4255313ae53f255afa528695583171d55b
2024-06-14 08:04:46 +00:00
Brian Gough
38ac00ba13 Merge pull request #18775 from overleaf/bg-cookie-session-metrics-middleware
add middleware to record session cookie metrics in web

GitOrigin-RevId: f4404455e219d2071d6f0b39e657e9219b7d1c70
2024-06-13 08:04:16 +00:00
M Fahru
d35e11eaef Merge pull request #18720 from overleaf/jel-begin-light-touch-plans
[web] Begin light touch redesign of plans page

GitOrigin-RevId: dda5ab1c0817371400f30f2e4d230f5c3a5728f4
2024-06-12 08:05:19 +00:00
Alf Eaton
7cb0e8c4ea Remove a few remaining references to the ide-page split test (#18735)
GitOrigin-RevId: 4f1c6332f8bf49ed1c3fcee153590d0acf72b26f
2024-06-12 08:04:18 +00:00
Jimmy Domagala-Tang
d3c270369d Merge pull request #18593 from overleaf/jdt-mailchimp-tagging
allow adding and removing tags from users in mailchimp

GitOrigin-RevId: 15e491d3346877e86d55fb6eccb45813daa41e88
2024-06-11 08:05:30 +00:00
andrew rumble
3311066363 Add new fields to mongoose subscription schema
GitOrigin-RevId: 6b28d7464482a8d5729709f99893b333c3d7f9c2
2024-06-11 08:04:55 +00:00
Liangjun Song
0680a91a70 [web] fix incorrect event group-subscription-left (#18757)
GitOrigin-RevId: aa342dc6575eca032834c2b132d4d0144a4faa27
2024-06-11 08:04:35 +00:00
Mathias Jakobsen
c29c151c9f Merge pull request #18803 from overleaf/revert-18801-mj-revert-big-deploy
[web+chat] Redo deploy

GitOrigin-RevId: a056bf20d49a39e71e03db740f57e8506dfc6b71
2024-06-11 08:03:59 +00:00
Mathias Jakobsen
a26e3d3376 Merge pull request #18801 from overleaf/mj-revert-big-deploy
[web+chat] Revert big deploy

GitOrigin-RevId: f4d068cbea7e5f5d59a3d698e2def2f94c9b6322
2024-06-10 08:04:33 +00:00
Mathias Jakobsen
d470093174 Merge pull request #18737 from overleaf/mj-chat-revert-existing-file
[web] Revert existing file by deleting it first

GitOrigin-RevId: ec9ed5c709c2631ff08dbc2e0f3633d303f12836
2024-06-10 08:04:29 +00:00
Mathias Jakobsen
110b83aea0 Merge pull request #18710 from overleaf/mj-web-chat-send-thread-data
[chat+web] Inform frontend when duplicating threads

GitOrigin-RevId: 285afee8f5a016a8e7ac58e9538cc3ec8362681d
2024-06-10 08:04:25 +00:00
Mathias Jakobsen
0f869f9059 Merge pull request #18654 from overleaf/mj-web-duplicate-threads
[web] Ensure single doc pointing to comment when reverting

GitOrigin-RevId: e86e566e1b21eed18bb08b285befcab0e740ec45
2024-06-10 08:04:20 +00:00
Jessica Lawshe
d7b64ef92e Merge pull request #18718 from overleaf/jel-isSplitTestActive-plans-page
[web] New plans page variants only loadable if test is active

GitOrigin-RevId: 2b29dc8a3ecef6dd8f34dd25e59bf48a9724061b
2024-06-06 08:05:05 +00:00
Jessica Lawshe
3948b6ddb3 Merge pull request #18717 from overleaf/jel-isSplitTestActive
[web] Add helper for checking if test is active

GitOrigin-RevId: 1e8987517915e3947812086863da11fad252daf1
2024-06-06 08:05:01 +00:00
Jessica Lawshe
8fe46feffb Merge pull request #18713 from overleaf/jel-group-plan-modal-defaults
[web] Move group modal defaults for plans page to function

GitOrigin-RevId: 0ebce884f9e984b50318742765b7a768f259a8db
2024-06-06 08:04:56 +00:00
Jessica Lawshe
d28e58a2fc Merge pull request #18686 from overleaf/jel-plans-page-currency
[web] Move `currency` check to `_getRecommendedCurrency`

GitOrigin-RevId: afadd492a2e1db9c91fac027eb3c9783194ff169
2024-06-06 08:04:52 +00:00
ilkin-overleaf
dd7970c11d Merge pull request #18644 from overleaf/ii-delete-with-body-teardown-old-routes
[web] Tear down deprecated routes

GitOrigin-RevId: b86e1d9283a30d36f77148eeb782a7f37987854a
2024-06-06 08:04:31 +00:00
Antoine Clausse
e452f1df5b [web] Promisify LdapController (#18500)
* Promisify LdapController

* Update tests LdapControllerTests.js

* Promisify `AuthenticationController.finishLogin`

* Simplify null checks in LdapController

* Fix: don't use spread operator in module.exports

* Make `AuthenticationController.promises.finishLogin` a promise that resolves

* Fixup: `finishLogin` does not call `next` then the promise finishes, it calls it only on errors

* Use `Modules.promises.hooks.fire`

* Revert `processPassportLogin` callback style

* Update error handling: Use `OError.tag` instead of `logger.err`

* Fix unit tests: Rely on callbacks rather than promises

* Fix: Actually call `passport.authenticate` (!!)

* Update test: fixup `passport.authenticate` mocks

This would have caught the bugs that the previous commit is solving

* Remove `.then(() => next())` in `processPassportLogin`

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

---------

Co-authored-by: Eric Mc Sween <eric.mcsween@overleaf.com>
GitOrigin-RevId: a7eab5f5289956aeb8f2418408958daef3511ab7
2024-06-06 08:04:23 +00:00
Alf Eaton
c24ace801b Remove Angular (#17534)
GitOrigin-RevId: 7a0d45e17d9905fa75569e2d19ca59caa4a41565
2024-06-06 08:04:09 +00:00
Jessica Lawshe
22be3928e3 Merge pull request #18614 from overleaf/mf-create-plans-redesign-split-test-config
[web] Create split test configuration for `website-redesign-plans` split test

GitOrigin-RevId: dea88256830897d1ab1f1de64eb21413c823e6ff
2024-06-04 08:04:59 +00:00
Andrew Rumble
d1a58e6b77 Merge pull request #18538 from overleaf/ar-add-download-all-link-in-web
[web] add download all link for output files

GitOrigin-RevId: 3d574d75d53e577cb0f8fd3caa4f757d9e1b7889
2024-06-03 08:04:07 +00:00
Tim Down
1b247347e7 Merge pull request #18590 from overleaf/td-ieee-editor-remove-blue
Disable IEEE stylesheet in IEEE editor based on feature flag

GitOrigin-RevId: 09b203e3220a868d5f0a0e413bdc4d3ff7a1792e
2024-05-31 08:04:41 +00:00
Jessica Lawshe
3a59883e7a Merge pull request #18297 from overleaf/jel-remove-angular-group-invite
[web] Remove Angular version of group invite

GitOrigin-RevId: bd31cd2ed3c105c9042ae9c42894cfe960459a46
2024-05-31 08:04:27 +00:00
Jakob Ackermann
5a1cff55bc Merge pull request #18543 from overleaf/jpa-server-pro-test-templates
[server-pro] tests: add tests for templates feature

GitOrigin-RevId: b36482af924e306207cbdedc1a8d1d548272ee77
2024-05-30 08:05:30 +00:00
David
55e54ce875 Merge pull request #18435 from overleaf/dp-ae-pdf-viewer-controls
Update PDF viewer controls

GitOrigin-RevId: 4e15b7cbd34e878d0175be635369b8d620188203
2024-05-30 08:05:06 +00:00
Antoine Clausse
36f0a3e01a [web] Promisify ProjectController (#18477)
* Create `promiseAuto` util to replace `async.auto`

* Promisify `BrandVariationsHandler.getBrandVariationById`

* Promisify `updateProjectSettings`

* Promisify `updateProjectAdminSettings`

* Promisify `newProject`

* Promisify `deleteProject`

* Promisify `loadEditor`

* Fix brandVariation loading in promise auto

* Promisify `_refreshFeatures`

* Promisify `_injectProjectUsers`

* Fix `no-inner-declarations`

* Promisify `cloneProject`

* Promisify `userProjectsJson`

* Promisify `projectEntitiesJson`

* Promisify `restoreProject`

* Promisify `renameProject`

* Additional warning fix

* Update unit tests

* Fixup `updateProjectSettings`: call jobs inside the Promise.all

* Use `expressify(...)` instead of manually call `next(err)`

https://github.com/overleaf/internal/pull/18477#discussion_r1613611987
https://github.com/overleaf/internal/pull/18477#discussion_r1613621146
https://github.com/overleaf/internal/pull/18477#discussion_r1613634000
...

* Replace Promise.all by sequencial awaits

https://github.com/overleaf/internal/pull/18477#discussion_r1613852746
https://github.com/overleaf/internal/pull/18477#discussion_r1613611987

* Remove manual throws of 500. Let the generic error handler catch them.

https://github.com/overleaf/internal/pull/18477#discussion_r1613623446
https://github.com/overleaf/internal/pull/18477#discussion_r1613628955

* Promisify `untrashProject`

https://github.com/overleaf/internal/pull/18477#discussion_r1613627783

* Promisify `expireDeletedProjectsAfterDuration`

* Promisify `archiveProject`

* Promisify `unarchiveProject`

* Promisify `trashProject`

* Promisify `expireDeletedProject`

* Use async `setTimeout` from `timers/promise`

https://github.com/overleaf/internal/pull/18477#discussion_r1613843085

* Remove unused `_injectProjectUsers`

https://github.com/overleaf/internal/pull/18477#discussion_r1613855766

* Add missing exec in queries (?)

Not sure if that makes a real difference but it's more consistent with the rest of the code

* Catch floating promises

https://github.com/overleaf/internal/pull/18477#discussion_r1613868876

* Replace custom `promiseAuto` by `p-props` from NPM

https://github.com/overleaf/internal/pull/18477#discussion_r1613393294

* Downgrade `p-props` to v4. Later versions require ESM

* Simplify code around `splitTestAssignments`

GitOrigin-RevId: 84d37f7aa9227b5b9acf9eeb5db1b78afc01b6ee
2024-05-30 08:04:36 +00:00
Domagoj Kriskovic
218a4538c1 [web] support for reverting binary files (#18033)
* [web] revert binary file

* use addEntityWithName if file was deleted

* todo comments

* only show Revert file in ui even if deleted

* use _revertBinaryFile function

* emit new ids when reverting

* format:fix

* await emitToRoom calls

* use EditorController.upsertFile

* remove _revertBinaryFile function

* binary file check

* mock importFile method in tests

* move findElementByPath stub

* debug ci error

* resolve with empty object as file

* fix tests

* remove await before expect()

* format:fix

* test when binary file exists and when it does not

* use "file-revert" for source

* [web] revert existing file without ranges support (#18107)

* [web] revert existing file without ranges support

* ignore document_updated_externally if file-revert

* fix test

GitOrigin-RevId: a5e0c83a7635bc7d934dec9debe916bdd4beb51e
2024-05-30 08:04:20 +00:00
Tim Down
3b2e60ece7 Merge pull request #18558 from overleaf/td-bs5-query-string-override
Add a mechanism to hide incomplete Bootstrap 5 pages by default

GitOrigin-RevId: 07cc998bf3a0bed9df2f43d1c04c62d167c9b893
2024-05-30 08:04:15 +00:00
Andrew Rumble
22e0e51796 Merge pull request #18464 from overleaf/ar-pass-analytics-id-to-google-analytics
Add analytics ID to google analytics when configuring

GitOrigin-RevId: e2372f68217583a90df427a853e62513f1535006
2024-05-30 08:04:07 +00:00
Mathias Jakobsen
d95910fc71 [web] Enable history ranges support behind feature flag (#18429)
GitOrigin-RevId: 2f3b2352d2c157248da350eaf7b1784a605ebf20
2024-05-29 08:04:33 +00:00