* Update Reconfirm Affiliation (Pug) in Portal page
Change the notification so it directs users to the settings page instead of triggering an email confirmation with token-link
* Update Reconfirm Affiliation (React) in Settings page
Update the component so it sends the 6-digits code and opens the modal to enter it
* Update Reconfirm Affiliation (React) in Projects page
Update the component so it sends the 6-digits code and opens the modal to enter it
* `cleanup_unused_locales`
* `bin/run web npm run extract-translations`
* Update tests
* Minor updates in tests
* Update Pug notifications with the notification mixin
* De-center the "reconfirmed notification"
* Update "Learn more" links to "Learn more about institutional email reconfirmation"
* Update tests
GitOrigin-RevId: cb65623e209217614786eec56f7f5d28b9e8cec5
* Pull email context outside of `ResendConfirmationCodeModal`
* Use `loading` prop of button instead of deprecated Icon
* Swap notification order to clarify priority (no change in behaviour)
* Replace confirmation link action by confirmationCodeModal, and simplify code
* Change to secondary button variant in the Notification
* Display errors within the modal
* Increase ratelimit for resend-confirmation
* Copy changes
* Add stories on email confirmation notifications
* Fix other Notification stories
* Update tests
* Update services/web/frontend/js/features/settings/components/emails/confirm-email-form.tsx
Co-authored-by: Rebeka Dekany <50901361+rebekadekany@users.noreply.github.com>
* Remove placeholder on 6-digit code input
---------
Co-authored-by: Rebeka Dekany <50901361+rebekadekany@users.noreply.github.com>
GitOrigin-RevId: dad8bfd79505a2e7d065fd48791fd57c8a31e071
* Improve announced button and link labels for screen reader users
* Improve labels for integration widgets and update test
* Make integration widget IDs to be required
GitOrigin-RevId: 1e0124ef63a91fb63dffd79881c60794bccb9d27
* 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
* Convert event-tracking to TypeScript
* Convert local-storage to TypeScript
* Convert mapSeries to TypeScript
* Convert SessionStorage to TypeScript
* Convert account-upgrade to TypeScript
* Convert isValidTeXFile to TypeScript
* Convert date functions to TypeScript
* Convert EventEmitter to TypeScript
* Convert isNetworkError to TypeScript
* Convert webpack-public-path to TypeScript
* Convert displayNameForUser to TypeScript
GitOrigin-RevId: 79c5a2d1101fcd520f3116f0f4af29d974189d94
* Edited notification copy for user with affilation that ha commons account
* edited translation key to have overleaf professional appear in bold and switched to using trans component
* changed anchor tag to button and added additional check to ensure affiliation exists before accessing institution name
* add tests for commons user confirmation notification
* edit user email context test to facilitate test data changes
* edit license in fake test data
* edit test to check text of notification for non commons user
GitOrigin-RevId: 6700ceaa066f099ce593283887fa81d72ad624b6