-
Notifications
You must be signed in to change notification settings - Fork 50
Atlas integration for authentication, user settings, email confirmation, uploads #1654
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
Caution Review failedThe pull request is closed. WalkthroughThe recent updates introduce a comprehensive user authentication management system through the implementation of the Changes
Possibly related PRs
Suggested labels
Suggested reviewers
Poem
🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
❌ Deploy Preview for kleros-v2-university failed. Why did it fail? →
|
✅ Deploy Preview for kleros-v2-neo ready!
To edit notification comments on pull requests, go to your Netlify site configuration. |
✅ Deploy Preview for kleros-v2-testnet ready!
To edit notification comments on pull requests, go to your Netlify site configuration. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 2
Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Files ignored due to path filters (1)
yarn.lockis excluded by!**/yarn.lock,!**/*.lock
Files selected for processing (3)
- web/package.json (1 hunks)
- web/src/components/EnsureAuth.tsx (5 hunks)
- web/src/utils/authoriseUser.ts (3 hunks)
Additional comments not posted (5)
web/src/utils/authoriseUser.ts (2)
11-15: Verify the correctness of the GraphQL query construction.The query construction looks correct, but ensure the
authData.messageandauthData.signatureare properly sanitized to prevent injection attacks.
44-48: Verify the correctness of the GraphQL query construction.The query construction looks correct, but ensure the
addressis properly sanitized to prevent injection attacks.web/src/components/EnsureAuth.tsx (2)
Line range hint
44-56:
Ensure proper handling of the sign-in process.The sign-in process looks correct. Ensure the
createMessagefunction is correctly implemented and thesignMessageAsyncfunction handles errors properly.
Line range hint
79-97:
Ensure proper construction of the SIWE message.The message construction looks correct. Ensure the
getNoncefunction is correctly implemented and thecreateSiweMessagefunction handles errors properly.web/package.json (1)
120-120: Verify the package update.The
viempackage version was updated from2.1.0to2.17.3. Ensure there are no compatibility issues with this update.
c755571 to
e985455
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 1
Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Files ignored due to path filters (1)
yarn.lockis excluded by!**/yarn.lock,!**/*.lock
Files selected for processing (10)
- web/.env.devnet-neo.public (1 hunks)
- web/.env.devnet-university.public (1 hunks)
- web/.env.devnet.public (1 hunks)
- web/.env.local.public (1 hunks)
- web/.env.mainnet-neo.public (1 hunks)
- web/.env.testnet.public (1 hunks)
- web/netlify/middleware/authMiddleware.ts (1 hunks)
- web/package.json (1 hunks)
- web/src/components/EnsureAuth.tsx (6 hunks)
- web/src/utils/authoriseUser.ts (2 hunks)
Files skipped from review due to trivial changes (1)
- web/.env.devnet-neo.public
Additional comments not posted (10)
web/.env.local.public (1)
5-5: Ensure consistency and security for environment variables.The new environment variable
REACT_APP_ATLAS_URIis added correctly. Ensure that this variable is documented and follows the project's naming conventions. Verify that it does not expose any sensitive information.web/.env.testnet.public (1)
6-6: Ensure consistency and security for environment variables.The new environment variable
REACT_APP_ATLAS_URIis added correctly. Ensure that this variable is documented and follows the project's naming conventions. Verify that it does not expose any sensitive information.web/.env.devnet.public (1)
7-7: Ensure consistency and security for environment variables.The new environment variable
REACT_APP_ATLAS_URIis added correctly. Ensure that this variable is documented and follows the project's naming conventions. Verify that it does not expose any sensitive information.web/.env.mainnet-neo.public (1)
8-8: New environment variable added for local GraphQL endpoint.The addition of
REACT_APP_ATLAS_URIpointing tohttp://localhost:3000/graphqlis noted. Ensure this variable is used appropriately in the codebase and does not conflict with existing configurations.Verify the usage of this new environment variable in the codebase.
Verification successful
New environment variable
REACT_APP_ATLAS_URIis used in the codebase.The environment variable
REACT_APP_ATLAS_URIis referenced in the following file:
web/src/utils/authoriseUser.tsThis confirms its usage and ensures there are no conflicts with existing configurations.
Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify the usage of the new environment variable `REACT_APP_ATLAS_URI`. # Test: Search for the usage of `REACT_APP_ATLAS_URI`. Expect: Occurrences of the new variable. rg --type js --type ts --type tsx 'REACT_APP_ATLAS_URI'Length of output: 83
Script:
#!/bin/bash # Description: Verify the usage of the new environment variable `REACT_APP_ATLAS_URI`. # Test: Search for the usage of `REACT_APP_ATLAS_URI` in JavaScript, JSX, and TypeScript files. rg --type js --type jsx --type ts 'REACT_APP_ATLAS_URI'Length of output: 83
Script:
#!/bin/bash # Description: Verify the usage of the new environment variable `REACT_APP_ATLAS_URI`. # Test: Search for the usage of `REACT_APP_ATLAS_URI` in JavaScript, JSX, and TypeScript files. rg --glob '*.js' --glob '*.jsx' --glob '*.ts' 'REACT_APP_ATLAS_URI'Length of output: 158
web/.env.devnet-university.public (1)
8-8: New environment variable added for local GraphQL endpoint.The addition of
REACT_APP_ATLAS_URIpointing tohttp://localhost:3000/graphqlis noted. Ensure this variable is used appropriately in the codebase and does not conflict with existing configurations.Verify the usage of this new environment variable in the codebase.
Verification successful
Environment variable
REACT_APP_ATLAS_URIis used appropriately.The variable
REACT_APP_ATLAS_URIis utilized in the codebase withinweb/src/utils/authoriseUser.ts. Ensure this usage aligns with the intended configuration and does not conflict with other settings.
web/src/utils/authoriseUser.ts:const atlasUri = import.meta.env.REACT_APP_ATLAS_URI ?? "";Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify the usage of the new environment variable `REACT_APP_ATLAS_URI`. # Test: Search for the usage of `REACT_APP_ATLAS_URI`. Expect: Occurrences of the new variable. rg --type js --type ts --type tsx 'REACT_APP_ATLAS_URI'Length of output: 83
Script:
#!/bin/bash # Description: Verify the usage of the new environment variable `REACT_APP_ATLAS_URI`. # Test: Search for the usage of `REACT_APP_ATLAS_URI`. Expect: Occurrences of the new variable. rg --type js --type ts --type-add 'tsx:*.{ts,tsx}' 'REACT_APP_ATLAS_URI'Length of output: 163
web/src/utils/authoriseUser.ts (2)
59-85: LGTM! But verify the function usage in the codebase.The code changes are approved.
However, ensure that all function calls to
getNoncematch the new return type.
12-44: LGTM! But verify the function usage in the codebase.The code changes are approved.
However, ensure that all function calls to
authoriseUsermatch the new return type.Verification successful
Verified: The function usage matches the new return type.
The
authoriseUserfunction is correctly handled inEnsureAuth.tsx, with the returned token being used appropriately.
web/src/components/EnsureAuth.tsx: TheauthoriseUserfunction call correctly handles thePromise<string>return type.Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify all function calls to `authoriseUser` match the new return type. # Test: Search for the function usage. Expect: Only occurrences of the new return type. rg --type js -A 5 $'authoriseUser'Length of output: 33
Script:
#!/bin/bash # Description: Verify all function calls to `authoriseUser` match the new return type. # Search for the function usage in JavaScript and TypeScript files. rg --type-add 'ts:*.{ts,tsx}' -A 5 'authoriseUser' # Search for import statements of the function to trace its usage. rg --type-add 'ts:*.{ts,tsx}' -A 5 'import { authoriseUser'Length of output: 1322
Script:
#!/bin/bash # Description: Extract more lines around the function call in EnsureAuth.tsx to verify the handling of the new return type. rg --type-add 'ts:*.{ts,tsx}' -A 10 -B 5 'authoriseUser' web/src/components/EnsureAuth.tsxLength of output: 968
web/src/components/EnsureAuth.tsx (2)
Line range hint
79-97:
LGTM! But verify the function usage in the codebase.The code changes are approved.
However, ensure that all function calls to
createMessageare correctly updated.Verification successful
LGTM! The
createMessagefunction usage is correctly updated and self-contained within theEnsureAuth.tsxfile. No further action required.
web/src/components/EnsureAuth.tsx: Verified the function usage.Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify all function calls to `createMessage` are correctly updated. # Test: Search for the function usage. Expect: Only occurrences of the new function name. rg --type js -A 5 $'createMessage'Length of output: 33
Script:
#!/bin/bash # Description: Verify all function calls to `createMessage` are correctly updated. # Test: Search for the function usage in .ts, .tsx, and .js files. Expect: Only occurrences of the new function name. rg --type-add 'ts:*.{ts,tsx}' --type-add 'js:*.{js,jsx}' -A 10 $'createMessage'Length of output: 1502
Line range hint
4-56:
LGTM! But verify the function usage in the codebase.The code changes are approved.
However, ensure that all function calls to
createMessageand JWT payload handling are correctly updated.Verification successful
Verify function usage in the codebase
The code changes are approved, but ensure that all function calls to
createMessageand JWT payload handling are correctly updated. The search results confirm thatcreateMessageandjwt.decodeJwtare used correctly inEnsureAuth.tsx. Additionally,payloadis handled properly in bothEnsureAuth.tsxandauthMiddleware.ts.
createMessageis correctly used inweb/src/components/EnsureAuth.tsx.- JWT payload handling with
jwt.decodeJwtandpayloadis correctly implemented inweb/src/components/EnsureAuth.tsxandweb/netlify/middleware/authMiddleware.ts.Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify all function calls to `createMessage` and JWT payload handling are correctly updated. # Test: Search for the function usage. Expect: Only occurrences of the new function name and payload property. rg --type js -A 5 $'createMessage' rg --type js -A 5 $'payload.sub'Length of output: 65
Script:
#!/bin/bash # Description: Verify all function calls to `createMessage` and JWT payload handling are correctly updated. # Search for the function usage in all relevant file types rg --type js,ts,tsx -A 5 'createMessage' rg --type js,ts,tsx -A 5 'payload.sub'Length of output: 147
Script:
#!/bin/bash # Description: Verify all function calls to `createMessage` and JWT payload handling are correctly updated. # Search for the function usage in JavaScript, TypeScript, and TSX files separately rg --type js -A 5 'createMessage' rg --type ts -A 5 'createMessage' rg --type tsx -A 5 'createMessage' rg --type js -A 5 'payload.sub' rg --type ts -A 5 'payload.sub' rg --type tsx -A 5 'payload.sub'Length of output: 1127
Script:
#!/bin/bash # Description: Verify JWT payload handling by searching for 'payload.sub' without restricting file types. # Search for 'payload.sub' in all files rg -A 5 'payload.sub'Length of output: 21
Script:
#!/bin/bash # Description: Verify JWT payload handling by searching for 'jwt.decodeJwt' and 'payload' in all files. # Search for 'jwt.decodeJwt' in all files rg -A 5 'jwt.decodeJwt' # Search for 'payload' in all files rg -A 5 'payload'Length of output: 1757
web/package.json (1)
121-121: LGTM! But verify the package usage in the codebase.The version update is approved.
However, ensure that all usages of the
viempackage are compatible with the new version.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Files selected for processing (3)
- web/netlify/functions/fetch-settings.ts (1 hunks)
- web/netlify/functions/update-settings.ts (1 hunks)
- web/netlify/middleware/authMiddleware.ts (2 hunks)
Files skipped from review as they are similar to previous changes (1)
- web/netlify/middleware/authMiddleware.ts
Additional comments not posted (2)
web/netlify/functions/fetch-settings.ts (1)
9-9: LGTM! But verify the usage ofevent.auth.subin the codebase.The change from
event.auth.idtoevent.auth.subaligns with standard practices for using subject claims in authentication tokens.However, ensure that all references to
event.auth.subare correctly used throughout the codebase.Verification successful
Usage of
event.auth.subis correct and isolated.The change from
event.auth.idtoevent.auth.subis consistent with standard practices. The usage is correctly handled in theweb/netlify/functions/fetch-settings.tsfile.
web/netlify/functions/fetch-settings.ts: Correct usage ofevent.auth.sub.Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify all references to `event.auth.sub` in the codebase. # Test: Search for the usage of `event.auth.sub`. Expect: Correct usage in all instances. rg --type js --type ts -A 5 $'event.auth.sub'Length of output: 544
web/netlify/functions/update-settings.ts (1)
66-66: LGTM! But verify the usage ofevent.auth.subin the codebase.The change from
event?.auth?.idtoevent?.auth?.subaligns with standard practices for using subject claims in authentication tokens.However, ensure that all references to
event.auth.subare correctly used throughout the codebase.Verification successful
The usage of
event.auth.subinfetch-settings.tsappears consistent with the change inupdate-settings.ts. However, to ensure comprehensive verification, we need to check the context of its usage infetch-settings.tsand look for any other instances in the codebase.
LGTM! The usage of
event.auth.subis consistent and correctly handled in the codebase.
web/netlify/functions/fetch-settings.ts: Theevent.auth.subis used to fetch user settings from the database, and its usage is correct.Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify all references to `event.auth.sub` in the codebase. # Test: Search for the usage of `event.auth.sub`. Expect: Correct usage in all instances. rg --type js --type ts -A 5 $'event.auth.sub'Length of output: 544
Script:
#!/bin/bash # Description: Verify the context of `event.auth.sub` usage in `fetch-settings.ts` and search for any other instances in the codebase. # Search for the usage of `event.auth.sub` in `fetch-settings.ts` with extended context. rg --type ts -A 10 -B 10 $'event.auth.sub' web/netlify/functions/fetch-settings.ts # Search for any other instances of `event.auth.sub` in the codebase. rg --type js --type ts -A 5 $'event.auth.sub'Length of output: 1281
|
LGTM so far. Ping again when it is out of draft |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 1
Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Files selected for processing (4)
- web/src/components/EnsureAuth.tsx (7 hunks)
- web/src/layout/Header/navbar/Menu/Settings/Notifications/index.tsx (1 hunks)
- web/src/pages/Cases/CaseDetails/Evidence/SubmitEvidenceModal.tsx (1 hunks)
- web/src/pages/Resolver/index.tsx (1 hunks)
Additional comments not posted (6)
web/src/layout/Header/navbar/Menu/Settings/Notifications/index.tsx (1)
8-8: Verify the default export ofEnsureAuth.The import statement has been changed to a default import. Ensure that the
EnsureAuthcomponent is exported as a default export from its module.Verification successful
The
EnsureAuthcomponent is correctly exported as a default export.
- The
EnsureAuthcomponent is exported as a default export fromweb/src/components/EnsureAuth.tsx.Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify that `EnsureAuth` is exported as a default export. # Test: Search for the export statement in the `EnsureAuth` component file. rg --type js --type ts 'export default EnsureAuth' web/src/components/EnsureAuth.tsxLength of output: 113
web/src/components/EnsureAuth.tsx (3)
33-33: Ensure the JWT payload structure is consistent.The validation logic now uses
payload.subinstead ofpayload.id. Ensure that the JWT payload structure consistently usessubfor the subject identifier.
44-44: Ensure thecreateMessagefunction is correctly implemented.Verify that the
createMessagefunction is correctly implemented and replaces the previouscreateSiweMessagefunction.Verification successful
The
createMessagefunction is correctly implemented and relies on thecreateSiweMessagefunction from theviem/siwemodule.
- The
createMessagefunction is defined inweb/src/components/EnsureAuth.tsx.- It correctly calls
createSiweMessage, which is imported from theviem/siwemodule.Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify the implementation of the `createMessage` function. # Test: Search for the implementation of the `createMessage` function. rg --type js --type ts 'async function createMessage'Length of output: 196
Script:
#!/bin/bash # Description: Extract the full implementation of the `createMessage` function and search for the `createSiweMessage` function for comparison. # Extract the full implementation of the `createMessage` function. ast-grep --lang tsx --pattern $'async function createMessage($_, $_, $_) { $$$ }' # Search for the implementation of the `createSiweMessage` function. rg --type js --type ts 'function createSiweMessage'Length of output: 1436
Script:
#!/bin/bash # Search for the definition or import of the `createSiweMessage` function in the codebase. # Search for the definition of `createSiweMessage`. rg --type js --type ts 'function createSiweMessage' # Search for imports of `createSiweMessage`. rg --type js --type ts 'import { createSiweMessage }'Length of output: 229
Script:
#!/bin/bash # Search for the definition or import of the `createSiweMessage` function in the codebase. # Search for the definition of `createSiweMessage`. rg --type js --type ts 'function createSiweMessage' # Search for imports of `createSiweMessage`. rg --type js --type ts 'import { createSiweMessage }' --fixed-stringsLength of output: 206
Line range hint
79-97:
Ensure thecreateMessagefunction handles all required fields.The
createMessagefunction should handle all required fields for the SIWE message. Verify that all necessary fields are included.web/src/pages/Cases/CaseDetails/Evidence/SubmitEvidenceModal.tsx (1)
14-14: Verify the default export ofEnsureAuth.The import statement has been changed to a default import. Ensure that the
EnsureAuthcomponent is exported as a default export from its module.Verification successful
Verification successful.
The
EnsureAuthcomponent is correctly exported as a default export from its module.
web/src/components/EnsureAuth.tsx:export default EnsureAuth;Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify that `EnsureAuth` is exported as a default export. # Test: Search for the export statement in the `EnsureAuth` component file. rg --type js --type ts 'export default EnsureAuth' web/src/components/EnsureAuth.tsxLength of output: 113
web/src/pages/Resolver/index.tsx (1)
12-12: Verify the export change inEnsureAuthmodule.The import statement for
EnsureAuthhas been changed from a named import to a default import. Ensure thatEnsureAuthis now being exported as a default export from its module.Verification successful
Verified: The import statement for
EnsureAuthhas been correctly updated to a default import inweb/src/pages/Resolver/index.tsx, consistent with its default export inweb/src/components/EnsureAuth.tsx.
web/src/pages/Resolver/index.tsxweb/src/components/EnsureAuth.tsxScripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify that EnsureAuth is being exported as a default export from its module. # Test: Search for the export statement of EnsureAuth. Expect: EnsureAuth should be exported as a default export. rg --type js --type ts $'export default EnsureAuth'Length of output: 113
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 4
Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Files selected for processing (7)
- web/src/app.tsx (2 hunks)
- web/src/components/EnsureAuth.tsx (1 hunks)
- web/src/context/AtlasProvider.tsx (1 hunks)
- web/src/utils/atlas/createMessage.ts (1 hunks)
- web/src/utils/atlas/getNonce.ts (1 hunks)
- web/src/utils/atlas/index.ts (1 hunks)
- web/src/utils/atlas/loginUser.ts (1 hunks)
Files skipped from review due to trivial changes (1)
- web/src/utils/atlas/index.ts
Additional comments not posted (3)
web/src/utils/atlas/createMessage.ts (1)
6-7: Verify compatibility with server-side rendering.The use of
window.locationmay cause issues if this function is used in a server-side rendering context.web/src/components/EnsureAuth.tsx (1)
14-30: Refactor improves maintainability and clarity.The refactoring to use
useAtlasProvidersimplifies the component and enhances separation of concerns. The default export is a good practice for component exports.web/src/app.tsx (1)
33-99: Verify the integration ofAtlasProvider.Ensure that the placement of
AtlasProvideras the outermost provider is intentional and that all components requiring its context are correctly wrapped. Verify that there are no unintended side effects on other providers or components.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Files selected for processing (4)
- web/src/context/AtlasProvider.tsx (1 hunks)
- web/src/utils/atlas/createMessage.ts (1 hunks)
- web/src/utils/atlas/getNonce.ts (1 hunks)
- web/src/utils/atlas/loginUser.ts (1 hunks)
Files skipped from review as they are similar to previous changes (4)
- web/src/context/AtlasProvider.tsx
- web/src/utils/atlas/createMessage.ts
- web/src/utils/atlas/getNonce.ts
- web/src/utils/atlas/loginUser.ts
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Files ignored due to path filters (1)
yarn.lockis excluded by!**/yarn.lock,!**/*.lock
Files selected for processing (1)
- web/src/context/AtlasProvider.tsx (1 hunks)
Files skipped from review as they are similar to previous changes (1)
- web/src/context/AtlasProvider.tsx
alcercu
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm
kemuru
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
upload to ipfs works, auth user (signing in) works, fetch settings works, update settings works
e72bd47
|
|
Code Climate has analyzed commit e72bd47 and detected 28 issues on this pull request. Here's the issue category breakdown:
View more on Code Climate. |
|
Hi! ty, should i clone the comment there?
-------- Mensaje original --------
De: TurbanCoder ***@***.***>
Fecha: 21/10/2024 11:34 (GMT-03:00)
A: kleros/kleros-v2 ***@***.***>
CC: Marcos Meneses ***@***.***>, Comment ***@***.***>
Asunto: Re: [kleros/kleros-v2] Atlas integration for authentication, user settings, email confirmation, uploads (PR #1654)
@Harman-singh-waraich commented on this pull request.
________________________________
In web/src/context/AtlasProvider.tsx<#1654 (comment)>:
+ const intervalId = setInterval(() => {
+ setIsVerified(verifySession());
+ }, 5000);
+
+ return () => {
+ clearInterval(intervalId);
+ };
Hello, Thanks for taking time to suggest the strategy. Much appreciated.
We will be tackling this optimization in issue #1717<#1717> . You are welcome to review the applied strategy.
Thanks for the feedback 😊
—
Reply to this email directly, view it on GitHub<#1654 (comment)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/AQOWOZEZPLRF3BQ53U3CQCTZ4UGF7AVCNFSM6AAAAABLCLH5PSVHI2DSMVQWIX3LMV43YUDVNRWFEZLROVSXG5CSMV3GSZLXHMZDGOBSGMYTMNJYGE>.
You are receiving this because you commented.Message ID: ***@***.***>
|
Hey Marcos, yes you can comment there. Would you be interested in addressing this issue? 👀 |



Related to https://github.com/kleros/atlas/pull/57
PR-Codex overview
This PR primarily focuses on refactoring and restructuring the authentication and user management functionalities, with significant changes to various utility functions, environment variables, and component implementations for email confirmation and user settings.
Detailed summary
addUser,updateEmail,confirmEmail,fetchUser,getNonce,loginUser).REACT_APP_ATLAS_URI.sessionStoragetolocalStorageinuseSessionStoragehook.EnsureAuthcomponent to use context for user state management.AtlasProvidercontext for handling user authentication and data fetching.EmailConfirmationcomponent for handling email verification.FormContactDetailsto manage user settings and email verification.Summary by CodeRabbit
Summary by CodeRabbit
New Features
Bug Fixes
Refactor
Chores