* [web] provide an actual rootFolder from EditorProviders in tests
- Fixup SocketIOMock and ShareJS mocks to provide the complete interface
- Extend SocketIOMock interface to count event listeners
- Fixup test that did not expect to find a working rootDoc
* [web] expose imageName from ProjectContext
* [clsi-cache] check compiler settings before using compile from cache
* [web] avoid fetching initial compile from clsi-cache in PDF detach tab
GitOrigin-RevId: e3c754a7ceca55f03a317e1bc8ae45ed12cc2f02
* Update share modal copy for reviewer role
* fix ShareProjectModal test
* use "limited_to_n_collaborators_per_project"
GitOrigin-RevId: f5afcb18a3921a6b1132a4c323af9d8395a7d07b
* [clsi-lb] forward ?clsiserverid=cache requests to clsi-cache
* [web] use clsi-cache in frontend
* [web] upgrade compile from cache to full compile when triggered inflight
* [web] fix pdf-js-viewer.spec.tsx tests -- add ?clsiserverid=foo to url
* [web] fix renamed reference after merge
* [web] fix download of other output files and use specific build
* [web] consolidate validation of filename into ClsiCacheHandler
* [web] remove unused projectName from getLatestBuildFromCache
* [web] avoid hitting the same clsi-cache instance first all the time
* [web] update documentation
GitOrigin-RevId: d48265a7ba89d6731092640e1492bc9f103f5c33
* Update collaborator select dropdown with a description for reviewers in free project
* Update share-project-modal test
* Fix saas-e2e tests
* fix server pro tests
* fix cypress multiple inputs selection
* fix testid case
GitOrigin-RevId: 5369828334596d80988aba168385f0a51eea998f
* Remove the Bootstrap 5 version utilities
* Remove Account settings LESS stylesheet and unused styles
* Prefer using the OLFormText wrapper component instead of FormText
* Remove the Bootstrap 3 version stories
* Replace Font Awesome icons to Material icons
* Fix the heading hierarchy
* Cleanup unused translation
* Restore ellipsis to the text of two loading spinners
* Add loading button tests back and add some button loading labels
---------
Co-authored-by: Tim Down <158919+timdown@users.noreply.github.com>
GitOrigin-RevId: 283a9167c8c78bf0fe5062840ded6917dcd6263b
* Rename `checkSecondaryEmailConfirmationCode` to `checkAddSecondaryEmailConfirmationCode`
* Create function `sendCodeAndStoreInSession`
* Create function `sendExistingSecondaryEmailConfirmationCode`
* Create function `_checkConfirmationCode`
* Create function `checkExistingEmailConfirmationCode`
* Rename `resendSecondaryEmailConfirmationCode` to `resendAddSecondaryEmailConfirmationCode`
* Create function `_resendConfirmationCode`
* Create function `resendExistingSecondaryEmailConfirmationCode`
* Add `ResendConfirmationCodeModal`
* Remove `ResendConfirmationEmailButton`
* `bin/run web npm run extract-translations`
* Update frontend test
* Fix: don't throw on render when send-confirmation-code fails!
* Update phrasing in the UI
Per https://docs.google.com/document/d/1PE1vlZWQN--PjmXpyHR9rV2YPd7OIPIsUbnZaHj0cDI/edit?usp=sharing
* Add unit test
* Don't share the "send-confirmation" and "resend-confirmation" rate-limits
* Update frontend test after copy change
* Rename `checkAddSecondaryEmailConfirmationCode` to `checkNewSecondaryEmailConfirmationCode` and `resendAddSecondaryEmailConfirmationCode` to `resendNewSecondaryEmailConfirmationCode`
* Rename `cb` to `beforeConfirmEmail`
Co-authored-by: Jakob Ackermann <jakob.ackermann@overleaf.com>
* Return `422` on missing session data
Co-authored-by: Jakob Ackermann <jakob.ackermann@overleaf.com>
* Add `userId` to log
* Replace `isSecondary` param by `welcomeUser`
Co-authored-by: Jakob Ackermann <jakob.ackermann@overleaf.com>
* Rename `resend-confirm-email-code`'s `existingEmail` to `email`
* Remove "secondary" from rate-limiters
Co-authored-by: Jakob Ackermann <jakob.ackermann@overleaf.com>
* Remove unnecessary `userId` check behind `AuthenticationController.requireLogin()`
* Only open the modal if the code was sent successfully
---------
Co-authored-by: Jakob Ackermann <jakob.ackermann@overleaf.com>
GitOrigin-RevId: df892064641d9f722785699777383b2d863124e1
* Show an aggressive dashboard notification for unconfirmed emails
Show a persistent dashboard notification for untrusted secondary emails
* For emails before the cutoffDate, start displaying the notification on the deletionDate and show the notification for 90 days
* Update the email deletion logic for displaying the email notification and update test
* Update test
GitOrigin-RevId: 1b0e44f79592292d428c634dc1ec4df9e6ceaeb4
* removing the group size 50
* removing the if condition for 20/50 groups
* running make cleanup_unused_locales
* removing instances of sizesForHighDenominationCurrencies and the related if conditions
* removing the price related to group size of 50 in different currencies
* fixing the test
* changing the 50 to 20 under faqs
* changing the remaining 50 to 20
* cleaning of variables
* removing extra variable
GitOrigin-RevId: 68f5d7df1eab29360e9c806ad844f1c900341c19
* Reapply "[web] Show DS Navigation for all SAAS users regardless of feature fla…"
This reverts commit 8d4096a7e4b6a7894b1bef14290548225deebd57.
* Fix: `hasDsNav` should check `isOverleaf` !!!
* Change `hasDsNav` from a boolean to a function call for dynamic evaluation
GitOrigin-RevId: 17463ac113a4278ed344622552d83da93b208b4d
* Remove `sidebar-navigation-ui-update` as true from analytics events
* Hide "ds-nav" survey for users who have the feature flag
* Replace `useIsDsNav()` by `isOverleaf`
* Rename former `hideDsSurvey` to `hideDsSurvey`, and set `hasDsNav = isOverleaf` variable
so the intent is clearer.
* Update frontend tests
GitOrigin-RevId: 2be9f88a10da430c0429de15d777d98104327f9f
* Remove uses of `useIsDsNav`
* Remove `sidebar-navigation-ui-update` as true from analytics events
* Hide "ds-nav" survey for users who have the feature flag
* `make cleanup_unused_locales` & `bin/run web npm run extract-translations`
* Update frontend tests
GitOrigin-RevId: 83f429d81ca1b46e9eab4fc667a921026a85912f