fix: harden first-run database setup
Release / release (push) Canceled after 0s

This commit is contained in:
Qiufeng
2026-08-17 22:05:10 +08:00
parent 52403c6f95
commit 271eac382e
10 changed files with 429 additions and 50 deletions
+7 -1
View File
@@ -1,8 +1,11 @@
import { request } from '@/utils/request';
const SETUP_COMPLETION_TIMEOUT_MS = 120_000;
export interface SetupStatus {
required: boolean;
locked: boolean;
ready: boolean;
supportedDatabaseTypes: string[];
message: string;
}
@@ -43,6 +46,7 @@ function normalizeStatus(value: SetupStatus): SetupStatus {
return {
required: Boolean(value?.required),
locked: Boolean(value?.locked),
ready: Boolean(value?.ready),
supportedDatabaseTypes: Array.isArray(value?.supportedDatabaseTypes) ? value.supportedDatabaseTypes : [],
message: value?.message || '',
};
@@ -57,5 +61,7 @@ export function testSetupConnection(data: SetupDatabaseRequest) {
}
export function completeSetup(data: SetupCompleteRequest) {
return request.post<SetupCompleted>({ url: '/setup/complete', data }).then((value) => value);
return request
.post<SetupCompleted>({ url: '/setup/complete', data, timeout: SETUP_COMPLETION_TIMEOUT_MS })
.then((value) => value);
}