refactor: http service (#2233)

This commit is contained in:
Mo
2023-02-28 20:43:25 -06:00
committed by GitHub
parent 6e7618b258
commit e7f1d35341
142 changed files with 1116 additions and 1307 deletions

View File

@@ -1,5 +1,5 @@
import { ViewControllerManager } from '@/Controllers/ViewControllerManager'
import { SNApplication, SessionStrings, UuidString, isNullOrUndefined, RemoteSession } from '@standardnotes/snjs'
import { SNApplication, SessionStrings, UuidString, SessionListEntry, isErrorResponse } from '@standardnotes/snjs'
import { FunctionComponent, useState, useEffect, useRef, useMemo, useCallback } from 'react'
import { Alert } from '@reach/alert'
import { AlertDialog, AlertDialogDescription, AlertDialogLabel } from '@reach/alert-dialog'
@@ -11,7 +11,7 @@ import Icon from '../Icon/Icon'
import Modal, { ModalAction } from '../Modal/Modal'
import ModalOverlay from '../Modal/ModalOverlay'
type Session = RemoteSession & {
type Session = SessionListEntry & {
revoking?: true
}
@@ -26,18 +26,20 @@ function useSessions(
useEffect(() => {
;(async () => {
setRefreshing(true)
const response = await application.getSessions()
if ('error' in response || isNullOrUndefined(response.data)) {
if (response.error?.message) {
setErrorMessage(response.error.message)
if (isErrorResponse(response)) {
if (response.data?.error?.message) {
setErrorMessage(response.data?.error.message)
} else {
setErrorMessage('An unknown error occured while loading sessions.')
}
} else {
const sessions = response.data as RemoteSession[]
const sessions = response.data as SessionListEntry[]
setSessions(sessions)
setErrorMessage('')
}
setRefreshing(false)
})().catch(console.error)
}, [application, lastRefreshDate])
@@ -60,13 +62,11 @@ function useSessions(
setSessions(sessionsDuringRevoke)
const response = await responsePromise
if (isNullOrUndefined(response)) {
if (!response) {
setSessions(sessionsBeforeRevoke)
} else if ('error' in response) {
if (response.error?.message) {
setErrorMessage(response.error?.message)
} else {
setErrorMessage('An unknown error occured while revoking the session.')
} else if (isErrorResponse(response)) {
if (response.data?.error.message) {
setErrorMessage(response.data?.error.message || 'An unknown error occured while revoking the session.')
}
setSessions(sessionsBeforeRevoke)
} else {
@@ -145,7 +145,7 @@ const SessionsModalContent: FunctionComponent<{
<span className="font-bold text-info">Current session</span>
) : (
<>
<p>Signed in on {formatter.format(session.updated_at)}</p>
<p>Signed in on {formatter.format(new Date(session.updated_at))}</p>
<Button
primary
small