feat: implement desktop authorization recovery handling and session management improvements
This commit is contained in:
+14
-1
@@ -9,6 +9,7 @@ import type {
|
||||
DesktopClientUpdateResult,
|
||||
DesktopPublishTaskListResponse,
|
||||
DesktopRuntimeSessionSyncRequest,
|
||||
DesktopTaskInfo,
|
||||
ListDesktopPublishTasksParams,
|
||||
} from '@geo/shared-types'
|
||||
import type { DesktopObservedRequest } from '../shared/network-debug'
|
||||
@@ -75,6 +76,17 @@ declare global {
|
||||
secure: boolean
|
||||
}
|
||||
|
||||
interface DesktopAuthRecoveryRequest {
|
||||
reason: 'desktop-client-token-unauthorized'
|
||||
method: string
|
||||
path: string
|
||||
status: number
|
||||
code?: number
|
||||
message: string
|
||||
requestId: string
|
||||
at: number
|
||||
}
|
||||
|
||||
interface Window {
|
||||
desktopBridge: {
|
||||
app: {
|
||||
@@ -132,7 +144,7 @@ declare global {
|
||||
cleanStorage(): Promise<DesktopStorageCleanupResult>
|
||||
syncRuntimeSession(session: DesktopRuntimeSessionSyncRequest | null): Promise<null>
|
||||
rotateRuntimeClientToken(): Promise<DesktopClientRotateResponse>
|
||||
releaseRuntimeSession(revoke?: boolean): Promise<null>
|
||||
releaseRuntimeSession(revoke?: boolean, options?: { skipRemote?: boolean }): Promise<null>
|
||||
setWindowMode(
|
||||
mode: 'login' | 'main',
|
||||
request?: {
|
||||
@@ -140,6 +152,7 @@ declare global {
|
||||
animate?: boolean
|
||||
},
|
||||
): Promise<null>
|
||||
onAuthRecoveryRequested(listener: (event: DesktopAuthRecoveryRequest) => void): () => void
|
||||
onRuntimeInvalidated(
|
||||
listener: (event: {
|
||||
reason:
|
||||
|
||||
Reference in New Issue
Block a user