* [history-v1] add endpoint for getting blob stats of projects
* [web] display project history blob size on admin pages
* [web] break down history storage size by text and binary blob
GitOrigin-RevId: bfa4d56cf2c503d03005c13a0f7ac38158156cd2
* [dsmp] Add endpoint to retrieve a single message from chat
* use user:null in case is deleted
GitOrigin-RevId: f42360c2e05cfe93fa11230ac3cc311bdb044c1d
* 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
* [web] reduce noise from CollectPayPalPastDueInvoiceTest
* [web] reduce noise for frontend tests that use Range.getClientRects
* [web] avoid nesting <li> elements in ProjectToolsMoreDropdownButton
RenameProjectMenuItem/CopyProjectMenuItem will return <li> elements.
* [web] avoid clicking on links that navigate away in JSDom
* [web] add mock for location change in JSDom
* [web] add fallback stripe subscription data for test
3.8k lines of log noise!
GitOrigin-RevId: 7adab182487a6c07ac9809c60802e498a0edb0ec
* Add capabilities `modify-group` and `modify-managed-group`
* Fix: Warning: validateDOMNesting(...): <span> cannot appear as a child of <option>
* Add `form-control` to select (fix styles)
* Check if admin can modify the group (frontend)
* Check if admin can modify the group (backend)
* Update tests
* Fix: Set `useSettingsUKAMF` state from `data?.useSettingsUKAMF`
* Add tests: Subscriptions update with adminRolesEnabled
* Use `getAdminCapabilities` helper
* Update `requireModifyGroupPermission` to array
Co-authored-by: Andrew Rumble <andrew.rumble@overleaf.com>
* Rename `canModify` to `canModifySubscription`
Co-authored-by: Andrew Rumble <andrew.rumble@overleaf.com>
* Refactor `requireModifyGroupPermission` stub
Co-authored-by: Andrew Rumble <andrew.rumble@overleaf.com>
* Test with `adminRolesEnabled` in SubscriptionDeletionTests.mjs
* Update test description with `adminRoles`
---------
Co-authored-by: Andrew Rumble <andrew.rumble@overleaf.com>
GitOrigin-RevId: 37b9a2e838fd566a33aa3a70631cebfd01b520ef
* [web] reject upload requests without a file path
* [web] update copy on error message and link to contact form
Co-authored-by: Kamal Arkinstall <kamal.arkinstall@overleaf.com>
* [web] update copy: move dot to the end
---------
Co-authored-by: Kamal Arkinstall <kamal.arkinstall@overleaf.com>
GitOrigin-RevId: ba1ee81a91b046540caeb2f3f3da0e305611b35f
* In tests, post to `/user/emails/secondary` (6-digits) instead of the deprecated `/user/emails` (link-token)
* Update `addEmailAndConfirm` so it calls the right endpoint
* Remove unnecessary `userId` from `confirmEmail` and `addEmailAndConfirm` args
* Use `updateUser` to add unconfirmed email to user
* Confirm, then unconfirm emails, in order to test on unconfirmed emails
* Lowercase emails in `unconfirmSecondaryEmail`, so they get matched correctly
* Update UserEmailsTests.mjs with 6-digits flow, fetch, no `npm:async`
GitOrigin-RevId: 71b9ed65daebea5f22272240559caab375515f0c
* Rename `sendExistingSecondaryEmailConfirmationCode` to `sendExistingEmailConfirmationCode`
* Deduplicate error handling into `throwIfErrorResponse`
* Update `userHelper.confirmEmail` to use the 6-digits flow
GitOrigin-RevId: 91bdf7b185407b58520ca6b2aa1a7c71bdd23bc8
* [web] change status page URL to HTTPS everywhere
Also open all links to the status page or admin email in a new tab.
* [server-ce] explicit protocol matching
Co-authored-by: Brian Gough <brian.gough@overleaf.com>
---------
Co-authored-by: Brian Gough <brian.gough@overleaf.com>
GitOrigin-RevId: d7d12eef4efc737c5d70fc969c862acae9faf14c