Commit Graph
144 Commits
Author SHA1 Message Date
Antoine ClausseandCopybot 33e63d79fc Merge pull request #28584 from overleaf/ac-some-web-esm-migration-5
[web] Convert some Features files to ES modules (part 5)

GitOrigin-RevId: 0cad67f9afe0095e2b066bf2f4d3717c00540dab
2025-10-08 08:06:15 +00:00
Eric Mc SweenandCopybot 9d7943209e Migrate inviteToProject to zod
GitOrigin-RevId: 9c755d0f922bbef44b6f95a06ec448eb8d2c1840
2025-09-23 08:06:30 +00:00
Eric Mc SweenandCopybot 2b13dabf6f Migrate transferOwnership to zod
GitOrigin-RevId: 406886fcf721091e084ed76ca59ef2ded76ab9d2
2025-09-23 08:06:26 +00:00
Eric Mc SweenandCopybot c0bb6bd6bc Migrate setCollaboratorInfo to zod
GitOrigin-RevId: e65bb6e17115362e7521f3e234757aa812aa89bc
2025-09-23 08:06:21 +00:00
Antoine ClausseandCopybot 71f0b28a84 [web] Convert some Features files to ES modules (part 3) (#28494)
* Rename files to mjs

* Rename test files to mjs

* Update CODEOWNERS

* Update files to ESM

* Update test files to ESM

* Update RestoreManager.test.mjs

* Remove unused `AdminAuthorizationHelper` mock and stub

* Remove unnecessary return

GitOrigin-RevId: 2b9ef126de1d8964afbc6e5641cca36712655866
2025-09-17 08:05:02 +00:00
Tim DownandCopybot 36cbe840dd Merge pull request #28246 from overleaf/td-ts-project-dashboard-jsdoc
Working JSDoc type annotations on project list controller

GitOrigin-RevId: b26833affb0fc2ecd38e869c2523e914eabe6548
2025-09-09 08:06:26 +00:00
Antoine ClausseandCopybot 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
Domagoj KriskovicandCopybot 8c3fe3bd31 [web] change the order when creating a memebers list in permissions checks (#28063)
GitOrigin-RevId: 73fd9218841d189dc95edec86f09d451005e6189
2025-08-26 08:05:13 +00:00
f5dbbadf79 add option to disable link sharing (#27626)
* add option to remove link-sharing from backend

* restrict make link-sharing in the frontend based on capability

* extend e2e project-sharing tests to cover OVERLEAF_DISABLE_LINK_SHARING=true

* throw an error when link sharing is disabled in TokenAccessHandler

* throw errors when attempting to add users to projects with link sharing disabled

* Update server-ce/test/project-sharing.spec.ts

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

* add tests for existing access when link sharing is disabled

* update tests to specify access restrictions for read-only and read-write link shared projects

* [web] block access to legacy public project with link-sharing disabled

---------

Co-authored-by: Jakob Ackermann <jakob.ackermann@overleaf.com>
GitOrigin-RevId: 5f194dbcb790e973e427c58a3a4a738a5dd74cb4
2025-08-20 08:05:33 +00:00
Jakob AckermannandCopybot 6a92acf542 Merge pull request #27476 from overleaf/jpa-transfer-all
[web] add script for transferring all of a users projects in Server Pro

GitOrigin-RevId: 3aad2b624e1da2af83fec0715c2e5e08eff43695
2025-07-30 08:06:51 +00:00
Eric Mc SweenandCopybot 7219043c6b Merge pull request #26918 from overleaf/em-transfer-to-reviewer
Support ownership transfer to reviewer

GitOrigin-RevId: 1e97439e720a2125028a1776525f5c3766a289ef
2025-07-10 08:06:50 +00:00
Jakob AckermannandCopybot 886bad1071 [web] remove runtime migration for fixing collaborator lists on projects (#26581)
GitOrigin-RevId: f6a4c142e010e168c79b59cb96dddb147093d4a0
2025-06-26 08:04:54 +00:00
Jakob AckermannandCopybot 87de73333a Merge pull request #26575 from overleaf/jpa-archived-state
[web] remove runtime migration for project.archived/trashed state

GitOrigin-RevId: 69064878f3dfdcde3727a4e3eb555deb75c70588
2025-06-26 08:04:50 +00:00
Domagoj KriskovicandCopybot 3a1ef872cd Check for existing reviewers when adding user to a project (#26463)
GitOrigin-RevId: 935335345461133fb8b08fa95f960f801b8775a7
2025-06-19 08:05:27 +00:00
0aae5c48b4 [web] skip fetching members and invites for restricted users (#25673)
* [web] hide sensitive data from joinProject when building project view

* [web] skip fetching members and invites for restricted users

* [web] fix owner features in joinProject view

* [web] separate invited members from owner

* [web] skip fetching users with empty members  list

* [web] split await chain

Co-authored-by: Antoine Clausse <antoine.clausse@overleaf.com>

* [web] remove spurious parentheses

* [web] remove dead code

Co-authored-by: Antoine Clausse <antoine.clausse@overleaf.com>

---------

Co-authored-by: Antoine Clausse <antoine.clausse@overleaf.com>
GitOrigin-RevId: 5b4d874f974971e9c14d7412620805f8ebf63541
2025-06-03 08:06:22 +00:00
6cbacc8cb7 [web] fetch project once for joinProject (#25667)
* [web] fetch project once for joinProject

* [web] await all the nested helpers for getting privilege levels

Co-authored-by: Mathias Jakobsen <mathias.jakobsen@overleaf.com>

---------

Co-authored-by: Mathias Jakobsen <mathias.jakobsen@overleaf.com>
GitOrigin-RevId: f0280c36ef995b417ccdab15014f05954e18c5f0
2025-06-03 08:06:13 +00:00
Jakob AckermannandCopybot 2e50e0ffa1 [web] add ProjectAccess helper class (#25663)
* [web] add ProjectAccess helper class

* [web] remove ts-ignore for calling OError.tag with try/catch error

GitOrigin-RevId: e097a95b4d929a3927a3eeb70635590680c93007
2025-06-03 08:06:01 +00:00
Mathias JakobsenandCopybot 86e13b088a Merge pull request #25938 from overleaf/mj-core-pug-teardown
[web] Tear down core-pug-bs5 feature flag

GitOrigin-RevId: 875417ca02d8212940b4782bc3016778344116ba
2025-06-03 08:05:39 +00:00
Jakob AckermannandCopybot e3e8d944b2 [web] fetch project members in a single db query (#25662)
* [web] fetch project members in a single db query

GitOrigin-RevId: ca749327d4783c67a3ad81f611cd7d3e7fa84028
2025-05-19 08:05:12 +00:00
Tim DownandCopybot d9587e8b06 Merge pull request #25264 from overleaf/bg-td-account-deletion-logging
Add logging for each stage of user deletion

GitOrigin-RevId: 13f9575012fcd8f166c4b14eba2ee5910658072e
2025-05-05 08:05:36 +00:00
Mathias JakobsenandCopybot d7bd665bee Merge pull request #25060 from overleaf/mj-core-pug-bs5
[web] Convert various pug pages to BS5

GitOrigin-RevId: f42de89eca778db19d5faa8a19fa8a210c7a749b
2025-04-29 08:06:01 +00:00
roo huttonandCopybot fc6df69e41 Merge pull request #24630 from overleaf/rh-null-editor-fix
Coerce null reviewer_refs to empty array

GitOrigin-RevId: dd1931b306e22fc4b7dbd3709dfac786a2475724
2025-04-04 08:04:44 +00:00
roo huttonandCopybot 0c6c61b654 Merge pull request #24618 from overleaf/rh-null-pending-reviewer
Handle null readOnly_refs in CollaboratorsHandler

GitOrigin-RevId: b718c4a1b5216a42920909615a0f3c2fe0a16bdb
2025-04-02 08:05:10 +00:00
roo huttonandCopybot c52b23af57 Merge pull request #24614 from overleaf/rh-pending-reviewer-pull
Set null pendingReviewer_refs to empty array in removeUserFromProject

GitOrigin-RevId: b21dd3f2febdb59dfafb45347960e375daeac463
2025-04-01 08:04:42 +00:00
Eric Mc SweenandCopybot f46fd6f2d5 Merge pull request #24433 from overleaf/em-pending-reviewers
Support reviewers in the collaborator limit enforcement logic

GitOrigin-RevId: f11a8e37ca6ef36f9894233803c6ee8363bf0ff8
2025-03-27 14:16:48 +00:00
Eric Mc SweenandCopybot 1fb94dee18 Merge pull request #24357 from overleaf/em-reviewers-limit
Count reviewers towards the collaborator limit in the backend

GitOrigin-RevId: 352fa37023ffbb032e23a474a81897ca871fee69
2025-03-24 10:51:14 +00:00
Domagoj KriskovicandCopybot 19852ed180 Update project-joined event to include role, mode, ownerId, and source (#23677)
* Update project-joined event to include role, mode, ownerId, and source

* fix test

GitOrigin-RevId: 67c428a80f5791b69a57b6719ec795399e2a98ef
2025-03-24 10:47:11 +00:00
Brian GoughandCopybot a04d3198a8 Merge pull request #24181 from overleaf/bg-Project-Audit-Log-Transfer-ownership-is-missing-the-IP-address
add missing ip adress to audit log for transfer ownership

GitOrigin-RevId: c14494efce25efa92a6cd81bcf197d8f897571bb
2025-03-11 09:06:43 +00:00
Alf EatonandCopybot c5f4fb5762 Show reviewers in the admin list of collaborators for a project (#23777)
GitOrigin-RevId: 6d7e5debc5619dab5b696ab8aab26496931e38b1
2025-02-24 09:05:11 +00:00
Domagoj KriskovicandCopybot d8b850f740 Convert track changes to proper format when reviewer role is enabled (#23683)
GitOrigin-RevId: 2ac696804491f61e52b4645dff7f64339c47afc5
2025-02-24 09:04:41 +00:00
Jakob AckermannandCopybot 0be79e846c [server-pro] tests: make project invite tests more reliable (#23732)
* [web] wait for sending project invite notification, send email detached

Errors from sending the notification or email are still logged only.
Wait up-to ~one second for notification to be sent (API timeout is 1s).

* [server-pro] tests: wait for invite action to complete

GitOrigin-RevId: e6998e6134b5267c91b47785d616a46e9651b996
2025-02-21 09:05:30 +00:00
Domagoj KriskovicandCopybot 8183c0785c Validate privilege levels when sending /invite request (#23533)
* Validate privilege levels when sending /invite request

* add acceptance tests

GitOrigin-RevId: 4ccd0ad3504c3c5770f5ee2b2f6d34ef746d1430
2025-02-14 09:03:37 +00:00
KristinaandCopybot 229cae771e Merge pull request #23259 from overleaf/kh-rm-dead-manager-code
[web] remove unused functions to support legacy read/write link sharing

GitOrigin-RevId: 504c1eb721caa7131ed685b1e0fa5e0d0b460888
2025-02-04 09:04:29 +00:00
KristinaandCopybot e3fdcdd601 Merge pull request #23131 from overleaf/kh-teardown-link-sharing-split-tests
[web] tear down link sharing split tests

GitOrigin-RevId: 449e9f368405aea1500035269428e7ae0c37d8fb
2025-02-04 09:04:25 +00:00
Antoine ClausseandCopybot b9fb636f0b [web] Remove promises exports from Controller modules (#22242)
* Remove promises object from CollaboratorsInviteController.mjs

* Define functions at root

* Remove mentions of undefined `revokeInviteForUser`

* Remove unused `doLogout`

* Remove promises object from UserController.js

* Remove unused `makeChangePreview`

* Remove promises object from SubscriptionController.js (`getRecommendedCurrency` and `getLatamCountryBannerDetails`)

* Remove promises object from CollabratecController.mjs

* Remove promises object from SSOController.mjs

* Remove promises object from ReferencesApiController.mjs

* Remove promises object from MetricsEmailController.mjs

* Remove promises object from InstitutionHubsController.mjs

* Remove promises object from DocumentUpdaterController.mjs

* Remove promises object from SubscriptionAdminController.mjs

* Fixup unit tests

* Add expects that controllers don't error

* Promisify `ensureAffiliationMiddleware`

GitOrigin-RevId: 311c8afa7d5c8e4f051408d305b6b4147a020edc
2025-01-17 09:05:36 +00:00
Domagoj KriskovicandCopybot 2d57e347aa Ensure track changes is enabled for reviewers when switching roles (#22645)
* Ensure track changes is enabled for reviewers when switching roles

* update track_changes.${userId} if track_changes is an object

GitOrigin-RevId: 3e803f4d475dbb67ff85b30095307ea58a07b2bc
2025-01-10 09:04:51 +00:00
Domagoj KriskovicandCopybot 71a0b48a68 Set track changes state permissions for reviewer role (#22345) (#22436)
* Support for adding reviewer role

* added collaboratorsGetter tests

* emit toggle-track-changes when reviewer is added

* Add reviewer in change privilege level handler

GitOrigin-RevId: 88ec39f2b760b5d1ca6dc3a363df31c087268972
2024-12-12 09:04:46 +00:00
Domagoj KriskovicandCopybot a038f451d4 Revert "Set track changes state permissions for reviewer role (#22345)" (#22431)
This reverts commit 6a03d2355b3fb7d7b755ed1d3ab1a080126cd2dc.

GitOrigin-RevId: 4e962bd9a547a9d6205460c9a8e9a0e835442be4
2024-12-10 13:09:42 +00:00
Domagoj KriskovicandCopybot db9dba4b7a List projects where user is added as reviewer (#22347)
* Support for adding reviewer role

* added collaboratorsGetter tests

* emit toggle-track-changes when reviewer is added

* List projects where user is added as reviewer

GitOrigin-RevId: 8ec9e59e4c0b65167705b0a56be3e309ef6af3e7
2024-12-10 13:09:19 +00:00
Domagoj KriskovicandCopybot 53dc5fbafe Set track changes state permissions for reviewer role (#22345)
* Support for adding reviewer role

* added collaboratorsGetter tests

* emit toggle-track-changes when reviewer is added

* Add reviewer in change privilege level handler

GitOrigin-RevId: 6a03d2355b3fb7d7b755ed1d3ab1a080126cd2dc
2024-12-10 13:09:14 +00:00
Domagoj KriskovicandCopybot f39ca200b9 Support for adding reviewer role (#22314)
* Support for adding reviewer role

* added collaboratorsGetter tests

* emit toggle-track-changes when reviewer is added

GitOrigin-RevId: 5b831102d561f5dbc4b23ab9f6dc63e3a87ea103
2024-12-10 09:04:47 +00:00
Domagoj KriskovicandCopybot 511fe60a9c Revert "Support for adding reviewer role (#22137)" (#22293)
This reverts commit 54064a7f961fe06f188ab449cd469cdaaf01b20a.

GitOrigin-RevId: 1dabc635756aff465d2fe9aa0d18121b081df3b0
2024-12-04 09:05:12 +00:00
Domagoj KriskovicandCopybot f676eca2b8 Support for adding reviewer role (#22137)
* Support for adding reviewer role

* show reviewer in track changes user list

* added "review" in assertClientCanViewProject

* test if reviewer can read project

* added collaboratorsGetter tests

* eit toggle-track-changes when track changes changes

* Support for changing privilege to reviewers for invited users (#22159)

* Add reviewer in change privilege level handler

* added reviewer translation

* added acceptance tests

* fix tests

* Set track changes state permissions for reviewer role (#22167)

* Add reviewer in change privilege level handler

* added reviewer translation

* added acceptance tests

* fix tests

* Set track changes state permissions for reviewer role

* added authorization helper tests

* added ensureUserCanReviewProjectContent middleware

* allow changing track changes only with write permissions

* removed canUserReviewProjectContent

* List projects where user is added as a reviewer (#22249)

* List projects where user is added as reviewer

* list projects in /user/projects

* fix tests

GitOrigin-RevId: 54064a7f961fe06f188ab449cd469cdaaf01b20a
2024-12-04 09:05:00 +00:00
Antoine ClausseandCopybot eea27a36a4 [web] Add prefer-node-protocol ESLint rule (#21523)
* Add `unicorn/prefer-node-protocol`

* Revert non-web changes

* Run `npm run lint:fix` (prefer-node-protocol)

GitOrigin-RevId: c3cdd88ff9e6b3de6a4397d45935c4d026c1c1ed
2024-11-05 09:04:33 +00:00
Andrew RumbleandCopybot c6c62088cc Migrate Features to ES modules
GitOrigin-RevId: 4e9d3176b4b5a5504afc102e569a27d7788864a3
2024-10-17 08:06:08 +00:00
roo huttonandCopybot 7d53b3e4a8 Merge pull request #20561 from overleaf/rh-duplicate-invite
[web] Revoke invite after joining project via link sharing

GitOrigin-RevId: 5071c9fbb226e5eef8c3e5c82991da73529d7396
2024-10-14 11:08:00 +00:00
roo huttonandCopybot d8221e5b91 Merge pull request #20306 from overleaf/rh-change-owner-viewer
[web] Allow project ownership to be transferred to Viewers

GitOrigin-RevId: 061d6e7b10c5c15212419e0736d0bfac39b65e96
2024-09-16 08:04:33 +00:00
ThomasandCopybot abf04c5d6c Merge pull request #20036 from overleaf/tm-collab-limit-link-sharing
Enforce collaborator limit for link sharing

GitOrigin-RevId: b724dca0c616ef15e5bd6d07e9d898d34dd46acd
2024-08-22 14:01:34 +00:00
ThomasandCopybot 98a914bb94 Merge pull request #20034 from overleaf/tm-collab-limit-edit-invites
Enforce collaborator limit when accepting project invites

GitOrigin-RevId: 94f281113fe7c7b6d0a5ef43e11ab579400d9e56
2024-08-22 14:01:30 +00:00
5e2662adc4 [web] Enforce collaborator limit (#19619)
* Enables collaborator limit enforcement

* Add pendingEditor_refs for editors downgraded during limit enforcement

* Add isPendingEditor to useEditorContext

---------

Co-authored-by: Thomas Mees <thomas.mees@overleaf.com>
GitOrigin-RevId: b622213f6282ccd8ee85a23ceb29b8c6f8ff6a96
2024-08-22 14:01:25 +00:00