mirror of
https://github.com/status-im/status-desktop.git
synced 2025-02-18 01:27:25 +00:00
fix(@desktop/onboarding): app loading screen displayed forever when creating a new Status account
Fixes: #11454
This commit is contained in:
parent
3b57915155
commit
d550b01e65
@ -8,9 +8,3 @@ export signal_type
|
|||||||
type Signal* = ref object of Args
|
type Signal* = ref object of Args
|
||||||
signalType* {.serializedFieldName("type").}: SignalType
|
signalType* {.serializedFieldName("type").}: SignalType
|
||||||
signalTypeStr*: string
|
signalTypeStr*: string
|
||||||
|
|
||||||
type SignalError* = object
|
|
||||||
error*: string
|
|
||||||
|
|
||||||
type NodeSignal* = ref object of Signal
|
|
||||||
event*: SignalError
|
|
||||||
|
28
src/app/core/signals/remote_signals/node.nim
Normal file
28
src/app/core/signals/remote_signals/node.nim
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
import json
|
||||||
|
|
||||||
|
import base
|
||||||
|
|
||||||
|
import ../../../../app_service/service/accounts/dto/[accounts]
|
||||||
|
import ../../../../app_service/service/settings/dto/[settings]
|
||||||
|
|
||||||
|
type NodeSignal* = ref object of Signal
|
||||||
|
error*: string
|
||||||
|
account*: AccountDto
|
||||||
|
settings*: SettingsDto
|
||||||
|
|
||||||
|
proc fromEvent*(T: type NodeSignal, event: JsonNode): NodeSignal =
|
||||||
|
result = NodeSignal()
|
||||||
|
|
||||||
|
if not event.contains("event") or event["event"].kind == JNull:
|
||||||
|
return
|
||||||
|
|
||||||
|
let e = event["event"]
|
||||||
|
|
||||||
|
if e.contains("error"):
|
||||||
|
result.error = e["error"].getStr
|
||||||
|
|
||||||
|
if e.contains("account") and e["account"].kind != JNull:
|
||||||
|
result.account = e["account"].toAccountDto()
|
||||||
|
|
||||||
|
if e.contains("settings") and e["settings"].kind != JNull:
|
||||||
|
result.settings = e["settings"].toSettingsDto()
|
@ -49,8 +49,8 @@ QtObject:
|
|||||||
return
|
return
|
||||||
|
|
||||||
if(signal.signalType == SignalType.NodeLogin):
|
if(signal.signalType == SignalType.NodeLogin):
|
||||||
if(NodeSignal(signal).event.error != ""):
|
if NodeSignal(signal).error != "":
|
||||||
error "node.login", error=NodeSignal(signal).event.error
|
error "node.login", error=NodeSignal(signal).error
|
||||||
|
|
||||||
if(signal.signalType == SignalType.NodeCrashed):
|
if(signal.signalType == SignalType.NodeCrashed):
|
||||||
error "node.crashed", error=statusSignal
|
error "node.crashed", error=statusSignal
|
||||||
@ -83,7 +83,12 @@ QtObject:
|
|||||||
of SignalType.EnvelopeExpired: EnvelopeExpiredSignal.fromEvent(jsonSignal)
|
of SignalType.EnvelopeExpired: EnvelopeExpiredSignal.fromEvent(jsonSignal)
|
||||||
of SignalType.WhisperFilterAdded: WhisperFilterSignal.fromEvent(jsonSignal)
|
of SignalType.WhisperFilterAdded: WhisperFilterSignal.fromEvent(jsonSignal)
|
||||||
of SignalType.Wallet: WalletSignal.fromEvent(jsonSignal)
|
of SignalType.Wallet: WalletSignal.fromEvent(jsonSignal)
|
||||||
of SignalType.NodeLogin: Json.decode($jsonSignal, NodeSignal)
|
of SignalType.NodeReady,
|
||||||
|
SignalType.NodeCrashed,
|
||||||
|
SignalType.NodeStarted,
|
||||||
|
SignalType.NodeStopped,
|
||||||
|
SignalType.NodeLogin:
|
||||||
|
NodeSignal.fromEvent(jsonSignal)
|
||||||
of SignalType.PeerStats: PeerStatsSignal.fromEvent(jsonSignal)
|
of SignalType.PeerStats: PeerStatsSignal.fromEvent(jsonSignal)
|
||||||
of SignalType.DiscoverySummary: DiscoverySummarySignal.fromEvent(jsonSignal)
|
of SignalType.DiscoverySummary: DiscoverySummarySignal.fromEvent(jsonSignal)
|
||||||
of SignalType.MailserverRequestCompleted: MailserverRequestCompletedSignal.fromEvent(jsonSignal)
|
of SignalType.MailserverRequestCompleted: MailserverRequestCompletedSignal.fromEvent(jsonSignal)
|
||||||
|
@ -3,9 +3,9 @@
|
|||||||
import ./remote_signals/[base, chronicles_logs, community, discovery_summary, envelope, expired, mailserver, messages,
|
import ./remote_signals/[base, chronicles_logs, community, discovery_summary, envelope, expired, mailserver, messages,
|
||||||
peerstats, signal_type, stats, wallet, whisper_filter, update_available, status_updates, waku_backed_up_profile,
|
peerstats, signal_type, stats, wallet, whisper_filter, update_available, status_updates, waku_backed_up_profile,
|
||||||
waku_backed_up_settings, waku_backed_up_keypair, waku_backed_up_watch_only_account,
|
waku_backed_up_settings, waku_backed_up_keypair, waku_backed_up_watch_only_account,
|
||||||
waku_fetching_backup_progress, pairing]
|
waku_fetching_backup_progress, pairing, node]
|
||||||
|
|
||||||
export base, chronicles_logs, community, discovery_summary, envelope, expired, mailserver, messages, peerstats,
|
export base, chronicles_logs, community, discovery_summary, envelope, expired, mailserver, messages, peerstats,
|
||||||
signal_type, stats, wallet, whisper_filter, update_available, status_updates, waku_backed_up_profile,
|
signal_type, stats, wallet, whisper_filter, update_available, status_updates, waku_backed_up_profile,
|
||||||
waku_backed_up_settings, waku_backed_up_keypair, waku_backed_up_watch_only_account,
|
waku_backed_up_settings, waku_backed_up_keypair, waku_backed_up_watch_only_account,
|
||||||
waku_fetching_backup_progress, pairing
|
waku_fetching_backup_progress, pairing, node
|
@ -133,7 +133,7 @@ proc delete*(self: Controller) =
|
|||||||
proc init*(self: Controller) =
|
proc init*(self: Controller) =
|
||||||
var handlerId = self.events.onWithUUID(SignalType.NodeLogin.event) do(e:Args):
|
var handlerId = self.events.onWithUUID(SignalType.NodeLogin.event) do(e:Args):
|
||||||
let signal = NodeSignal(e)
|
let signal = NodeSignal(e)
|
||||||
self.delegate.onNodeLogin(signal.event.error)
|
self.delegate.onNodeLogin(signal.error)
|
||||||
self.cleanTmpData()
|
self.cleanTmpData()
|
||||||
self.connectionIds.add(handlerId)
|
self.connectionIds.add(handlerId)
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user