diff --git a/lib/shared/keyserver-utils.js b/lib/shared/keyserver-utils.js --- a/lib/shared/keyserver-utils.js +++ b/lib/shared/keyserver-utils.js @@ -76,12 +76,16 @@ state: KeyserverStore, actionPayload: SetSessionPayload, ): KeyserverInfo { - const { keyserverID, urlPrefix } = actionPayload; + const { keyserverID, urlPrefix, temporary } = actionPayload; let baseInfo = state.keyserverInfos[keyserverID]; if (!baseInfo) { baseInfo = { ...defaultKeyserverInfo, urlPrefix, + connection: { + ...defaultKeyserverInfo.connection, + connectionIssue: temporary ? 'temporarily_connected' : undefined, + }, }; } return baseInfo; diff --git a/lib/types/session-types.js b/lib/types/session-types.js --- a/lib/types/session-types.js +++ b/lib/types/session-types.js @@ -84,6 +84,7 @@ +logInActionSource: ?LogInActionSource, +keyserverID: string, +urlPrefix: string, + +temporary?: boolean, }; export type SessionState = { diff --git a/lib/types/socket-types.js b/lib/types/socket-types.js --- a/lib/types/socket-types.js +++ b/lib/types/socket-types.js @@ -489,7 +489,8 @@ export type ConnectionIssue = | 'policy_acknowledgement_socket_crash_loop' - | 'not_logged_in_error'; + | 'not_logged_in_error' + | 'temporarily_connected'; export type ConnectionInfo = { +status: ConnectionStatus,