Skip to content

Commit 436c93a

Browse files
committed
feat: code refactoring
Signed-off-by: Gaurav Goel <[email protected]>
1 parent c1193b1 commit 436c93a

File tree

1 file changed

+13
-7
lines changed

1 file changed

+13
-7
lines changed

core/src/main/java/com/web3auth/core/Web3Auth.kt

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -126,6 +126,8 @@ class Web3Auth(web3AuthOptions: Web3AuthOptions, context: Context) : WebViewResu
126126
val initOptionsJson = JSONObject(gson.toJson(initOptions))
127127
val initParamsJson = JSONObject(gson.toJson(initParams))
128128

129+
val sessionId = SessionManager.generateRandomSessionKey()
130+
129131
val paramMap = JSONObject()
130132
paramMap.put(
131133
"options", initOptionsJson
@@ -145,6 +147,11 @@ class Web3Auth(web3AuthOptions: Web3AuthOptions, context: Context) : WebViewResu
145147
existingExtraLoginOptions.login_hint = userInfo?.verifierId
146148
initParamsJson.put("extraLoginOptions", gson.toJson(existingExtraLoginOptions))
147149
initParamsJson.put("mfaLevel", MFALevel.MANDATORY.name.lowercase(Locale.ROOT))
150+
val loginIdObject = mapOf("loginId" to sessionId)
151+
initParamsJson.put(
152+
"appState",
153+
gson.toJson(loginIdObject).toByteArray(Charsets.UTF_8).toBase64URLString()
154+
)
148155
paramMap.put("sessionId", sessionManager.getSessionId())
149156
}
150157
paramMap.put("params", initParamsJson)
@@ -154,7 +161,7 @@ class Web3Auth(web3AuthOptions: Web3AuthOptions, context: Context) : WebViewResu
154161
var paramsString = jsonObject.toString()
155162
paramsString = paramsString.replace("\\/", "/")
156163

157-
val loginIdCf = getLoginId(paramsString)
164+
val loginIdCf = getLoginId(sessionId, paramsString)
158165
loginIdCf.whenComplete { loginId, error ->
159166
if (error == null) {
160167
val jsonObject = mapOf("loginId" to loginId)
@@ -490,10 +497,8 @@ class Web3Auth(web3AuthOptions: Web3AuthOptions, context: Context) : WebViewResu
490497
* @param jsonObject The JSONObject from which to retrieve the login ID.
491498
* @return A CompletableFuture<String> representing the asynchronous operation, containing the login ID.
492499
*/
493-
private fun getLoginId(jsonObject: String): CompletableFuture<String> {
494-
val sessionId = SessionManager.generateRandomSessionKey()
500+
private fun getLoginId(sessionId: String, jsonObject: String): CompletableFuture<String> {
495501
sessionManager.setSessionId(sessionId)
496-
//SessionManager.saveSessionIdToStorage(sessionId)
497502
return sessionManager.createSession(
498503
jsonObject,
499504
baseContext,
@@ -525,8 +530,8 @@ class Web3Auth(web3AuthOptions: Web3AuthOptions, context: Context) : WebViewResu
525530
paramMap.put(
526531
"options", initOptions
527532
)
528-
529-
val loginIdCf = getLoginId(paramMap.toString())
533+
val sessionId = SessionManager.generateRandomSessionKey()
534+
val loginIdCf = getLoginId(sessionId, paramMap.toString())
530535

531536
loginIdCf.whenComplete { loginId, error ->
532537
if (error == null) {
@@ -590,7 +595,8 @@ class Web3Auth(web3AuthOptions: Web3AuthOptions, context: Context) : WebViewResu
590595
"options", initOptions
591596
)
592597

593-
val loginIdCf = getLoginId(paramMap.toString())
598+
val sessionId = SessionManager.generateRandomSessionKey()
599+
val loginIdCf = getLoginId(sessionId, paramMap.toString())
594600

595601
loginIdCf.whenComplete { loginId, error ->
596602
if (error == null) {

0 commit comments

Comments
 (0)