-
Notifications
You must be signed in to change notification settings - Fork 48
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.lock
is 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.message
andauthData.signature
are properly sanitized to prevent injection attacks.
44-48
: Verify the correctness of the GraphQL query construction.The query construction looks correct, but ensure the
address
is 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
createMessage
function is correctly implemented and thesignMessageAsync
function handles errors properly.
Line range hint
79-97
:
Ensure proper construction of the SIWE message.The message construction looks correct. Ensure the
getNonce
function is correctly implemented and thecreateSiweMessage
function handles errors properly.web/package.json (1)
120-120
: Verify the package update.The
viem
package version was updated from2.1.0
to2.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.lock
is 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_URI
is 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_URI
is 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_URI
is 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_URI
pointing tohttp://localhost:3000/graphql
is 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_URI
is used in the codebase.The environment variable
REACT_APP_ATLAS_URI
is referenced in the following file:
web/src/utils/authoriseUser.ts
This 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_URI
pointing tohttp://localhost:3000/graphql
is 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_URI
is used appropriately.The variable
REACT_APP_ATLAS_URI
is 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
getNonce
match 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
authoriseUser
match the new return type.Verification successful
Verified: The function usage matches the new return type.
The
authoriseUser
function is correctly handled inEnsureAuth.tsx
, with the returned token being used appropriately.
web/src/components/EnsureAuth.tsx
: TheauthoriseUser
function 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
createMessage
are correctly updated.Verification successful
LGTM! The
createMessage
function usage is correctly updated and self-contained within theEnsureAuth.tsx
file. 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
createMessage
and 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
createMessage
and JWT payload handling are correctly updated. The search results confirm thatcreateMessage
andjwt.decodeJwt
are used correctly inEnsureAuth.tsx
. Additionally,payload
is handled properly in bothEnsureAuth.tsx
andauthMiddleware.ts
.
createMessage
is correctly used inweb/src/components/EnsureAuth.tsx
.- JWT payload handling with
jwt.decodeJwt
andpayload
is correctly implemented inweb/src/components/EnsureAuth.tsx
andweb/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
viem
package 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.sub
in the codebase.The change from
event.auth.id
toevent.auth.sub
aligns with standard practices for using subject claims in authentication tokens.However, ensure that all references to
event.auth.sub
are correctly used throughout the codebase.Verification successful
Usage of
event.auth.sub
is correct and isolated.The change from
event.auth.id
toevent.auth.sub
is consistent with standard practices. The usage is correctly handled in theweb/netlify/functions/fetch-settings.ts
file.
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.sub
in the codebase.The change from
event?.auth?.id
toevent?.auth?.sub
aligns with standard practices for using subject claims in authentication tokens.However, ensure that all references to
event.auth.sub
are correctly used throughout the codebase.Verification successful
The usage of
event.auth.sub
infetch-settings.ts
appears consistent with the change inupdate-settings.ts
. However, to ensure comprehensive verification, we need to check the context of its usage infetch-settings.ts
and look for any other instances in the codebase.
LGTM! The usage of
event.auth.sub
is consistent and correctly handled in the codebase.
web/netlify/functions/fetch-settings.ts
: Theevent.auth.sub
is 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
EnsureAuth
component is exported as a default export from its module.Verification successful
The
EnsureAuth
component is correctly exported as a default export.
- The
EnsureAuth
component 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.sub
instead ofpayload.id
. Ensure that the JWT payload structure consistently usessub
for the subject identifier.
44-44
: Ensure thecreateMessage
function is correctly implemented.Verify that the
createMessage
function is correctly implemented and replaces the previouscreateSiweMessage
function.Verification successful
The
createMessage
function is correctly implemented and relies on thecreateSiweMessage
function from theviem/siwe
module.
- The
createMessage
function is defined inweb/src/components/EnsureAuth.tsx
.- It correctly calls
createSiweMessage
, which is imported from theviem/siwe
module.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 thecreateMessage
function handles all required fields.The
createMessage
function 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
EnsureAuth
component is exported as a default export from its module.Verification successful
Verification successful.
The
EnsureAuth
component 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 inEnsureAuth
module.The import statement for
EnsureAuth
has been changed from a named import to a default import. Ensure thatEnsureAuth
is now being exported as a default export from its module.Verification successful
Verified: The import statement for
EnsureAuth
has 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.tsx
web/src/components/EnsureAuth.tsx
Scripts 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.location
may 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
useAtlasProvider
simplifies 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
AtlasProvider
as 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.lock
is 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
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
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
.sessionStorage
tolocalStorage
inuseSessionStorage
hook.EnsureAuth
component to use context for user state management.AtlasProvider
context for handling user authentication and data fetching.EmailConfirmation
component for handling email verification.FormContactDetails
to manage user settings and email verification.Summary by CodeRabbit
Summary by CodeRabbit
New Features
Bug Fixes
Refactor
Chores