* [docstore] add endpoint for getting a projects comment thread ids
* [web] let docstore determine a projects comment thread ids
Also fetch the comment thread ids once when reverting project.
GitOrigin-RevId: c3ebab976821509c9627962e58918f9c6ebb0e1d
* Preserve resolve state in history when doing a restore
* added comment why is resovled property deleted
GitOrigin-RevId: fb1011cf98a658b302c6eef1da83fb1006bb2052
* AI assist plans section
* fix merge issues, add tests
* translate img alt
* startInterval only if there are images found
* update casing for TeXGPT
* update mobile price font
* small design tweaks
GitOrigin-RevId: 87d993bb5da1929f99ab3b4721316961d78a46f5
* Add permissions checks for AI assist when trying to buy the addon
* more explicit check for DuplicateAddOnError
* remove useCapabilities()
GitOrigin-RevId: 1979e27410981e2ef020cecc731e228483d3315a
* [docstore] add endpoint for getting user ids of tracked changes
* [web] let docstore determine user ids of tracked changes
GitOrigin-RevId: 8d0a131555aa827f7ff80690fedc1aca26cf0817
* [web] skip db query when getting empty list of users
* [web] fetch token users in a single db query per access mode
GitOrigin-RevId: fa5d9edcb761bd5d5e5ea07d137a5a86efdbdd5c
[web] Bypass country requirement for Stripe if user is on staging or dev environment to ease the testing process
GitOrigin-RevId: 0924a57d3a1b7b530a3822fb8f9056a1dd7119e9
[web] Make user able to sync their email address in subscription dashboard for Stripe subscription
GitOrigin-RevId: 9abdc0e18ebea29b18c2041130946b9e50fa43db
* Revert me! Temporarily update code to test updates
* Update layout-no-js.pug to use BS5
* Migrate pages to BS5
* Revert "Revert me! Temporarily update code to test updates"
This reverts commit 03d980939dcbdc3f73ddf1e673acbc3fbfdfe2ec.
* Use `.error-container` class instead of BS5 utility
* Fix breakbpoints
* Use `.error-container` instead of utility class
GitOrigin-RevId: fd39c4f7278f175bbdeee24826f7a2226b1d7c70
* Remove `data-ol-auto-submit`, to test the page
* Migrate post-gateway.pug to BS5
* Revert "Remove `data-ol-auto-submit`, to test the page"
This reverts commit ee728b0bdda80d739bd09b2e4e9419303f7053db.
* Fix breakbpoints
* Use `layout-marketing`
GitOrigin-RevId: 73aa4da1e4ddae03d9c8e6671c6a8ccb89ecf0b0
* [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
* handle 3DS challenges on the subscription dashboard
* add `/user/subscription/sync` endpoint
* upgrade `stripe-js` & rm `react-stripe-js`
* group related unit tests together
* add modules `SubscriptionController` unit tests and convert to async/await
* add `StripeClient` unit tests for 3DS failure
GitOrigin-RevId: 9da4758703f6ef4ec08248b328abddbbdd8e44ad
* feat: add ability to set restore point for subscriptions
* feat: update recurly client with ability to get past due invoices and fail invoices
* utility to retrieve last valid subscription
* create revert requests and fail invoices, revert subscriptions to previous valid states on failed upgrade payments
* add restore point and call to revert plans on failed payments
* code style for PaymentProviderEntities
* moving subs restore point check to SubscriptionController, and removing unecessary error
* adding ability to stop sub restores without a deploy
* ensure that subs restore point is set before changing plan
* changing reverted flag on subscription to count, and only reverting automatic invoices
* updating tests with restorepoint functions
* rethrow error after voiding restore point, and ensure that recurly failed_payment always gets a 200 response
* only void restore point if the changeRequest fails
GitOrigin-RevId: cf3074c13db22d1cf680b59c4d57817c390db23e