chatwoot/app/javascript/shared/helpers/specs
Tanmay Deep Sharma 4014a846f0
feat: Add the frontend support for MFA (#12372)
FE support for https://github.com/chatwoot/chatwoot/pull/12290
## Linear:
- https://github.com/chatwoot/chatwoot/issues/486

## Description
This PR implements Multi-Factor Authentication (MFA) support for user
accounts, enhancing security by requiring a second form of verification
during login. The feature adds TOTP (Time-based One-Time Password)
authentication with QR code generation and backup codes for account
recovery.

## Type of change

- [ ] New feature (non-breaking change which adds functionality)

## How Has This Been Tested?

- Added comprehensive RSpec tests for MFA controller functionality
- Tested MFA setup flow with QR code generation
- Verified OTP validation and backup code generation
- Tested login flow with MFA enabled/disabled

## Checklist:

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented on my code, particularly in hard-to-understand
areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged and published in downstream
modules

---------

Co-authored-by: Pranav <pranav@chatwoot.com>
Co-authored-by: iamsivin <iamsivin@gmail.com>
Co-authored-by: Sivin Varghese <64252451+iamsivin@users.noreply.github.com>
Co-authored-by: Muhsin Keloth <muhsinkeramam@gmail.com>
Co-authored-by: Sojan Jose <sojan@pepalo.com>
2025-09-18 21:16:06 +05:30
..
cache.spec.js chore: Add cache to improve widget performance (#11163) 2025-03-24 16:04:49 -07:00
clipboard.spec.js feat: Add the frontend support for MFA (#12372) 2025-09-18 21:16:06 +05:30
colorHelper.spec.js feat: Update public portal colors with new design (#8230) 2023-11-23 08:16:52 +05:30
CustomErrors.spec.js feat: Use vitest instead of jest, run all the specs anywhere in app/ folder in the CI (#9722) 2024-07-10 08:32:16 -07:00
CustomEventHelper.spec.js feat: Use vitest instead of jest, run all the specs anywhere in app/ folder in the CI (#9722) 2024-07-10 08:32:16 -07:00
DateHelper.spec.js chore: Remove older UI (#11720) 2025-07-01 09:43:44 +05:30
documentHelper.spec.js feat: add FE changes for captain pdf support for faq generation (#12115) 2025-09-02 19:01:16 +05:30
Emoji.spec.js fix: Avatar renders an incorrect symbol if it has emoji (#5184) 2022-08-03 14:11:33 +05:30
FileHelper.spec.js feat: Add ability to paste file/image from clipboard (#5627) 2022-10-25 13:35:11 +05:30
KeyboardHelpers.spec.js refactor: handling keyboard shortcuts (#9242) 2024-04-26 15:41:02 +05:30
localStorage.spec.js feat: Implement reply to for reply editor (#8063) 2023-10-10 19:13:12 +05:30
MessageFormatter.spec.js fix: Prevent template variables from becoming links (#10725) 2025-01-23 18:18:14 +05:30
MessageTypeHelper.spec.js Chore: View form responses as user messages (#876) 2020-05-17 22:49:45 +05:30
mitt.spec.js feat: Use vitest instead of jest, run all the specs anywhere in app/ folder in the CI (#9722) 2024-07-10 08:32:16 -07:00
portalHelper.spec.js feat: Sync Popular Articles locale with widget locale (#11754) 2025-06-24 19:52:44 +05:30
ReportsDataHelper.spec.js feat: update tool-chain to latest (#7975) 2023-09-27 14:02:34 +05:30
sanitizeData.spec.js feat: multiple UX improvements to labels (#7358) 2023-06-25 18:49:49 +05:30
sessionStorage.spec.js feat: Prevent saving preferences and status when impersonating (#11164) 2025-05-20 17:34:30 -07:00
timeHelper.spec.js feat: Retry failed messages within 24h (#12436) 2025-09-16 21:00:15 +05:30
ValidatorsHelper.spec.js fix: Handle slug validation errors in Help Center (#11368) 2025-04-24 16:58:05 +05:30