Commit Graph

335 Commits

Author SHA1 Message Date
Liangjun Song
fd9be80bb3 Merge pull request #28781 from overleaf/ls-handle-business-details-on-backend
Handle Stripe business details on backend

GitOrigin-RevId: 32608ba4913da493a09341b8880cd5b639066462
2025-10-09 08:08:19 +00:00
jmescuderowritefull
f0f7899de4 Fix duplicated sign in event (#28777)
GitOrigin-RevId: 92e81160b34207a215113a2af93206ca623adb52
2025-10-01 08:06:33 +00:00
jmescuderowritefull
360c7c1d33 Clean extension checks and old feature flags in Writefull (#28713)
GitOrigin-RevId: c1949019f1f51add7fd036a1ad0e2946ccab5382
2025-10-01 08:06:07 +00:00
David
1b5887d97f Merge pull request #28675 from overleaf/dp-pdf-preview-output-files-typescript-2
Convert output-files.js to typescript

GitOrigin-RevId: 32eb509f491cfd53de7f1b21b97861ba421566a5
2025-09-30 08:05:45 +00:00
Kristina
e9fd1311a7 Merge pull request #28639 from overleaf/kh-analytics-for-custom-checkout-part-2
[web] support `payment-page-form-*` events for Stripe custom checkout

GitOrigin-RevId: cff1206fe0e9e03fa1c822f02ecca18f7ca27f59
2025-09-29 08:07:09 +00:00
Liangjun Song
9153130c4f Merge pull request #28586 from overleaf/ls-dropdown-to-select-segment
Add dropdown in admin panel for finance to set customer segment

GitOrigin-RevId: 3f730bc71b839ed97fa6ce867a25d44c06e60e2f
2025-09-29 08:05:57 +00:00
Jimmy Domagala-Tang
07166bff73 feat: add in-editor notification when rolling image has updated (#28529)
GitOrigin-RevId: 771773ba1914ef609b6ac84799bdda2d7ae4affa
2025-09-25 08:05:39 +00:00
Davinder Singh
1a29026023 Onboarding Data Collection - Adding new translations text (#28587)
* adding new translations

* removing the .

* adding the correft quote ’

* changing an e2e test

* changing translation key

GitOrigin-RevId: 099a633dca177ea1d14d055109a24eaa71ba0994
2025-09-23 08:05:48 +00:00
Kristina
da76a61646 Merge pull request #28572 from overleaf/kh-analytics-for-custom-checkout
[web] add `payment-page-view`, `payment-page-toggle-payment`, `payment-page-toggle-country` events to Stripe custom checkout

GitOrigin-RevId: a576ee706909e1e363e9ca256e2303a8fd9e1aa7
2025-09-23 08:05:29 +00:00
Kristina
4b3554a350 [web] update webhook event handlers for Stripe custom checkout (#28526)
* do not emit subscription-started when status is incomplete
* emit subscription-started when incomplete subscription transitions to active
* do not emit subscription-expired when status is incomplete_expired
* do not sync incomplete or incomplete_expired Stripe subscriptions
* allow `incomplete*` status to better guard against syncing

GitOrigin-RevId: 4e851f654dcb4bf356280197dd158e834175df12
2025-09-23 08:05:23 +00:00
Jimmy Domagala-Tang
d5f11f54be Revert "Revert "Rolling TexLive builds experiment"" (#28603)
* Revert "Revert "Rolling TexLive builds experiment""

* adding rolling image to allowed ones in staging (#28588)

GitOrigin-RevId: f377cacd6e4811a4bd9116c793ecbb29a7b72c33
2025-09-22 08:05:53 +00:00
Brian Gough
aaa62b2dbc Merge pull request #28589 from overleaf/revert-28283-jdt-monthly-tl-experiment
Revert "Rolling TexLive builds experiment"

GitOrigin-RevId: c3c6833dca7ef0d207f854c93bf0bb03bd814694
2025-09-19 08:08:15 +00:00
Jimmy Domagala-Tang
aaafb86fe2 Rolling TexLive builds experiment (#28283)
* feat: allow for monthly tl builds experiment

* feat: show correct image when user doesnt have access to current image in compiler settings (#28282)

* adding packer space for extra rolling image

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
GitOrigin-RevId: db909e1a85f36f1567236a2c4d5790b565dda76d
2025-09-19 08:08:10 +00:00
Borja
22cfe179e1 Writefull codebase migration (#27077)
GitOrigin-RevId: 48ff40d0b141d5bf7c70eaba8beacba7e64f237a
2025-09-18 08:05:57 +00:00
Liangjun Song
aaeacb52b7 Merge pull request #28388 from overleaf/ls-set-and-use-user-id-on-customer-object
Set and use userId on customer object

GitOrigin-RevId: 44749df8135154348fbf099db3c680d3d3212ff3
2025-09-17 08:05:52 +00:00
Kristina
c79cc52fcf Merge pull request #28270 from overleaf/kh-add-stripe-payment-context
[web] add stripe payment context

GitOrigin-RevId: 79dfbb1da0dd6b1d36c68c86debffc1edb169961
2025-09-16 08:05:45 +00:00
Kristina
7b3c2b838d Merge pull request #28263 from overleaf/kh-add-create-complete-stripe-subscription
[web] add API endpoints for creating & completing Stripe custom checkout subscriptions

GitOrigin-RevId: 70add674e4a622d409c26e40f64b57812284191c
2025-09-16 08:05:41 +00:00
David
75030aa410 Merge pull request #27928 from overleaf/dp-pdf-caching-typescript-2
Convert pdf-caching file to typescript

GitOrigin-RevId: 9acd2fc0697490008d82abfad0994df362814bad
2025-09-09 08:06:57 +00:00
Liangjun Song
b678b545f7 Merge pull request #28202 from overleaf/ls-remove-user-features-for-past-due-stripe-subscriptions
Remove paid user features for past due Stripe subscriptions

GitOrigin-RevId: 07a97f90312db7f6e91cbf15201f71cbdeb2e33c
2025-09-09 08:06:52 +00:00
Tim Down
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 Clausse
86e74b9228 [web] Update admin permissions to view/modify project contents (#28162)
* Split capability definitions `modify-project`/`view-project` into `modify-project-content`/`modify-project-setting`/`view-project-content`/`view-project-setting`

* Add admin capabilities check in AuthorizationManager

* Update checks in router

* Update frontend checks

* Remove UI elements for admins without `view-project-content`

* Update tests

* Remove `modify-project-content` from the roles' capabilities

* Update tests

* Add "with admin roles" tests in AuthorizationTests.mjs

GitOrigin-RevId: 3311bcb2da792968927b5b3703b24e069d0baf5b
2025-09-05 08:05:08 +00:00
Andrew Rumble
065cabb2be Add view-group-manager capability
GitOrigin-RevId: 107519e790bb4bb58ce39a4475a6e380826f2d87
2025-09-02 08:05:09 +00:00
roo hutton
4ec437db9e Merge pull request #28003 from overleaf/rh-b2c-js-ts
Migrate B2C js to typescript: contact form, form helpers, and algolia

GitOrigin-RevId: b9ec423cdc551123a5b471e4a4c1a482b6a02e16
2025-08-29 08:06:21 +00:00
Antoine Clausse
6a53fedb36 [web] Add modify-user-account-status admin permission check on critical user operations (#27976)
* Require `modify-login-status` on `DELETE /admin/user/:user_id`

* Require `modify-login-status` on `DELETE /admin/user/:user_id/overleaf` (V1)

* Require `modify-login-status` on `DELETE /admin/user/:user_id/generate_password_reset_url`

* Require `modify-login-status` on `DELETE /admin/deleted-user/recover/:user_id`

* Update tests

* Add `ol-adminCapabilities` to deleted-user-show.pug

* Remove user-list checkboxes for admins without `modify-login-status`

* Update tests

* Rename 'modify-login-status' to 'modify-user-account-status'

GitOrigin-RevId: d3c2d0d96b79150f32cb58bfdf65042d7d447636
2025-08-28 08:05:26 +00:00
Antoine Clausse
af44f478b9 [web] Add admin permission modify-group-manager (#27642)
* Add capacity `modify-group-manager`

* Check `modify-group-manager` (backend)

* Check `modify-group-manager` (frontend)

* Update tests

* Rename AdminPermissions to mjs

* Add `ol-adminCapabilities` in frontend tests

* Allow modifying group managers if `adminRolesEnabled` is false

* Add `adminPrivilegeAvailable` check

* Update: set `ol-canModify` boolean instead of `ol-adminCapabilities`

* Mock `hasAnyAccess`

* Use `hasAdminCapability` helper

* Add `ol-canModify` to types

* Remove `isAdminMiddleware` as we don't want to relax the permissions for now

* Fix: pass `res` to `hasAnyAccess` (!!)

* * Check `hasWriteAccess` (`hasAdminCapability('modify-group-manager')` or `staffAccess.groupManagement`) in the Pug file
* Fix: Check `hasWriteAccess` in the publisher and institution pug files (!)
* Revert `hasAnyAccess` changes
* Rename `ol-canModify` to `ol-hasWriteAccess` for consistency with other variables

* Remove redundant file AdminPermissions.mjs

* Update unit test

* Revert changes to UserMembershipController.test.mjs

* Rename to `requireGroupManagersWriteAccess`

GitOrigin-RevId: f3f0b1b17abd1d2f0c363688e87d9063de886e3c
2025-08-21 08:05:07 +00:00
David
0b76174936 Merge pull request #27989 from overleaf/dp-pdf-caching-transport
Re-convert pdf-caching-transport to typescript

GitOrigin-RevId: f0033afd5d46bc1da00a0d815b946225a804ca19
2025-08-20 08:05:38 +00:00
David
016fcffd56 Merge pull request #27987 from overleaf/dp-pdf-caching-revert
Revert "Merge pull request #27892 from overleaf/dp-pdf-caching-typescript"

GitOrigin-RevId: 036a05cfe5db754d1f1050bd58d2cd605550bc18
2025-08-19 08:05:42 +00:00
David
9f7c1f7a69 Merge pull request #27892 from overleaf/dp-pdf-caching-typescript
Convert pdf-caching-transport to typescript

GitOrigin-RevId: 161cac41eebd9d92804fad6bce85a863573b133e
2025-08-19 08:05:31 +00:00
Simon Gardner
ccd770f433 Merge pull request #27851 from overleaf/slg-group-member-pricing-js-to-ts
[web] Migrate group-member-pricing.jsx to tsx

GitOrigin-RevId: f5fd95939f6af5dfaedb1fafeecec04ceb6612f6
2025-08-19 08:05:18 +00:00
Domagoj Kriskovic
eac4a5cb13 Show Recurly's line items breakdown in subscription change preview (#27809)
* Show Recurly's line items breakdown in subscription change preview

* fix rounding, filter items that cancel each other out

GitOrigin-RevId: 0f5d71b3917ce8a52ff36608a6ec6280fe7d38ce
2025-08-19 08:05:02 +00:00
Rebeka Dekany
532f9b6549 Remove Bootstrap 3 related types (#27959)
* Remove bootstrap-5 folder and move tokens to foundations

* Remove unused `BsStyle` and `BsSize`

* Fix the size prop of the reference search modal

GitOrigin-RevId: 566ee519c50a39dd80bda475af40383ef8154a2c
2025-08-19 08:04:54 +00:00
Antoine Clausse
40772ef819 [web] Add admin permissions modify-group-member and modify-managed-group-member (#27665)
* Add capability `modify-managed-group-member` & `modify-group-member`

* Check `modify-managed-group-member` & `modify-group-member` (backend)

* Check `modify-managed-group-member` & `modify-group-member` (frontend)

* Update tests

* Update with `ol-hasWriteAccess` flag

* Update tests

* Move functions to AdminAuthorizationHelper.js

* Update import to fix build error

* Add `ol-hasWriteAccess` to types

* Use `hasAdminAccess()` instead of `req?.user?.isAdmin`

* Add tests on `/manage/groups/:id/invites` depending on admin roles

* Reuse `UserMembershipAuthorization.hasAdminCapability`

* Fix: Add entityAccess check

* Update unit test

* Rename `hasAdminGroupMemberCapability` to `hasModifyGroupMemberCapability`

* Remove useless and redundant `hasWriteAccess` check

* Restore stub in afterEach

GitOrigin-RevId: 4b6d83751121b43d4c19d0dbd82a4833cf7a6f24
2025-08-15 08:05:57 +00:00
Antoine Clausse
d49f0e28e3 [web] Add admin permission modify-group-setting (#27657)
* Add capacity `modify-group-setting`

* Check `modify-group-setting` (backend)

* Check `modify-group-setting` (frontend)

* Update tests

* Fix: Add entityAccess check

* Update unit test

GitOrigin-RevId: 7702fe34762ecb8bd050c2fa2b6e95a9baf90be3
2025-08-15 08:05:52 +00:00
Antoine Clausse
f4d8d29f5b [web] Add admin permission modify-project (#27491)
* Add capability `modify-project`

* Check `modify-project` (frontend)

* Check `modify-project` (backend)

* Update tests

* Allow admin to open project regardless of `modify-project`

* Hide `CurrentHistoryDebug` for admins without `modify-project`

GitOrigin-RevId: 92b9b59a2cafff26ea943209b60cda4e95bd58b0
2025-08-15 08:05:47 +00:00
Liangjun Song
b9fc80f503 Merge pull request #27800 from overleaf/ls-support-create-stripe-customer-from-admin-panel
Support creating Stripe customer from admin panel

GitOrigin-RevId: 3e23008e1f4690e6f3737b5689e20958bf468f82
2025-08-15 08:05:34 +00:00
David
671059fdfc Merge pull request #27878 from overleaf/dp-share-project-modal-utils-typescript
Convert remaining share-project-modal utils to typescript

GitOrigin-RevId: fc3fc7fbf7c8057c57f0aab261e4cedc3f7c602e
2025-08-14 08:06:24 +00:00
David
3c1e14b04a Merge pull request #27871 from overleaf/dp-pdf-preview-typescript-3
Convert pdf-preview metrics to typescript

GitOrigin-RevId: be8f9f97915e0681f9db4f047ed7af27afa080cf
2025-08-14 08:06:16 +00:00
Antoine Clausse
9774d9048c [web] Add admin permissions modify-group & modify-managed-group (#27456)
* 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
2025-08-14 08:05:00 +00:00
Andrew Rumble
a85aff5668 Add new admin capabilities
GitOrigin-RevId: 36cb9da879883a25fe3214e15e4ebb3044137d22
2025-08-13 08:06:43 +00:00
Andrew Rumble
161e9d4362 Add manage-survey capability
GitOrigin-RevId: abc8af69e51009957d644e2aec3c31ba2646c0dc
2025-08-13 08:05:56 +00:00
Antoine Clausse
d145d309be [web] Add admin permission view-script-log (#27463)
* Add capability `view-script-log`

* Check `view-script-log` (frontend)

* Check `view-script-log` (backend)

* Update tests

GitOrigin-RevId: 70fdb94875c9db69772b1450f03802917c4c52d4
2025-08-08 08:07:54 +00:00
Simon Gardner
203e2e914b Merge pull request #27464 from overleaf/slg-filter-group-member-list
add user filter to group member list

GitOrigin-RevId: 0a65ca377979de706e2e43ee024d2cee9261a121
2025-08-06 08:05:05 +00:00
roo hutton
58b8e36739 Merge pull request #27215 from overleaf/rh-stripe-pause-status
Update features and subscription state when Stripe pause starts and ends

GitOrigin-RevId: 368f5d9b046cfe26e996be336189081b96926713
2025-08-06 08:04:57 +00:00
M Fahru
34a47c7767 Merge pull request #27551 from overleaf/kh-fix-failing-webhook-event
[web] prefer metadata over email for invoice.paid events

GitOrigin-RevId: cfb06333b62dfb5018bcdee0f153a812d19ff328
2025-08-01 08:07:10 +00:00
Antoine Clausse
fdef2b2395 [web] Add admin permission view-audit-log (#27402)
* Add capability `view-audit-log`

* Fix: Don't fetch `user.auditLog` twice

* Check `view-audit-log` (frontend)

* Check `view-audit-log` (backend)

* Update tests

GitOrigin-RevId: 7e20f2bdc6387144503490f6aba234d967f84913
2025-08-01 08:06:43 +00:00
Antoine Clausse
8166acf612 [web] Add admin permission modify-feature-override (#27395)
* Add capability `modify-feature-overrides`

* Check `modify-feature-overrides` for create endpoint (frontend)

* Check `modify-feature-overrides` for create endpoint (backend)

* Update tests

* Check `modify-feature-override` for delete endpoint (frontend)

* Check `modify-feature-override` for delete endpoint (backend)

* Update tests

* Fixup test name

Co-authored-by: Andrew Rumble <andrew.rumble@overleaf.com>

---------

Co-authored-by: Andrew Rumble <andrew.rumble@overleaf.com>
GitOrigin-RevId: ebf37e48fed1dd6fda23ca8c7a5baf55af1cde38
2025-08-01 08:06:39 +00:00
Antoine Clausse
084f6becb3 [web] Add admin permission create-recurly-account (#27376)
* Add capability `create-recurly-account`

* Check `create-recurly-account` (frontend)

* Check `create-recurly-account` (backend)

* Update tests

GitOrigin-RevId: f4a66937333fbd101cbf0562d768f185f41c88cf
2025-08-01 08:06:31 +00:00
Antoine Clausse
371ddd286d [web] Add admin permission view-user-additional-info (#27335)
* Add capability `view-user-additional-info`

* Check `view-user-additional-info` (frontend)

* Check `view-user-additional-info` (backend)

* Update tests

* Fix prop type

* Add missing `view-user-additional-info` in `product` role

GitOrigin-RevId: b912b98eac1325b74d42079feaf94d0ec99825c1
2025-08-01 08:06:27 +00:00
ilkin-overleaf
1c5ed10bbb Merge pull request #27276 from overleaf/ii-domain-capture-anaylze-saml-response
[web] Domain capture analyze saml response

GitOrigin-RevId: 5a970968bdf14ab6f52d883a390d420b00cb4d8d
2025-07-30 08:07:30 +00:00
ilkin-overleaf
ca7a8f417f Merge pull request #26902 from overleaf/ii-group-sso-config-email-attribute
[web] Add email attribute to ssoConfig

GitOrigin-RevId: 313ad45987fb408c62ef30575dacaea1041471da
2025-07-30 08:07:16 +00:00