Skip to content

Conversation

@SteRiccio
Copy link
Member

No description provided.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR introduces two-factor authentication (2FA) UX changes to the login flow and adds an (experimental) admin UI for managing user 2FA devices, along with supporting module routing/i18n updates and dependency/lockfile changes.

Changes:

  • Add a 2-step login flow (username/password → 2FA token) backed by new login store state (viewState) and updated login action payload/response handling.
  • Add a new “User Two Factor Device” module under Users (list + details/creation + verification via QR code).
  • Introduce a shared QRCode web component and update QR login dialog to use it; update docs and refresh dependencies/lockfile.

Reviewed changes

Copilot reviewed 27 out of 29 changed files in this pull request and generated 14 comments.

Show a summary per file
File Description
yarn.lock Large dependency resolution updates; adds otplib; switches @openforis/arena-server to a local file reference.
webapp/views/Guest/views/Login/Login.scss Styles for 2FA token description text.
webapp/views/Guest/views/Login/Login.js Adds 2FA token step UI and passes token to login action.
webapp/views/App/views/Users/Users.js Adds conditional (experimental) route to the new 2FA device module.
webapp/views/App/views/Users/UserTwoFactorDevice/useColumns.js Defines columns for the 2FA devices table.
webapp/views/App/views/Users/UserTwoFactorDevice/index.js Exports the module entrypoint.
webapp/views/App/views/Users/UserTwoFactorDevice/Module.js Adds nested routing (list/details) for 2FA devices.
webapp/views/App/views/Users/UserTwoFactorDevice/List.js Implements the 2FA devices list table + row navigation.
webapp/views/App/views/Users/UserTwoFactorDevice/HeaderLeft.js Adds “New” button navigation for creating a device.
webapp/views/App/views/Users/UserTwoFactorDevice/Details.js Implements device creation, QR display, and token verification UX.
webapp/views/App/Header/QRCodeLoginDialog/QRCodeLoginDialog.js Switches to shared QRCode component.
webapp/store/login/state.js Adds viewState + ViewState enum to drive 2FA login step.
webapp/store/login/reducer.js Adds handlers to reset and update login viewState.
webapp/store/login/actions.js Updates login action to send/handle 2FA token and switch view state.
webapp/components/index.js Exports the new QRCode component.
webapp/components/QRCode.js New shared QR code wrapper component.
webapp/app/appModules.js Adds new module paths for 2FA devices and nested submodules.
webapp/app/appErrorsMiddleware.js Ignores global service error dispatching for 2FA verify endpoint.
package.json Switches @openforis/arena-server dependency to ../arena-server.
core/userTwoFactorDevice/userTwoFactorDevice.js Adds core model helpers for 2FA device objects.
core/userTwoFactorDevice/index.js Exports the 2FA device model.
core/i18n/resources/ru/common.js Adds login 2FA token strings (RU).
core/i18n/resources/mn/common.js Adds login 2FA token strings (MN).
core/i18n/resources/es/common.js Adds login 2FA token strings (ES).
core/i18n/resources/en/common.js Adds login 2FA token strings (EN).
core/auth/authorizer.js Adds authorization helper for managing 2FA devices.
README.md Updates PostGIS Docker image version used for local setup.
CONTRIBUTING.md Updates PostGIS Docker image version used for local setup.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 43 out of 45 changed files in this pull request and generated 5 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 50 out of 52 changed files in this pull request and generated 4 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@sonarqubecloud
Copy link

@SteRiccio SteRiccio merged commit 533a304 into master Feb 10, 2026
5 checks passed
@SteRiccio SteRiccio deleted the feat/2fa branch February 10, 2026 13:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant