feat: Enhance system initialization and mock mode handling with improved UI feedback and error handling

This commit is contained in:
2025-08-06 22:53:59 +02:00
parent c5074bd34d
commit 76453d6c8d
7 changed files with 265 additions and 79 deletions

View File

@@ -33,29 +33,46 @@ export const useSystemStore = create<SystemState>()(
isLoading: false,
error: null,
// Initialize system - called on app startup
// Initialize system - called on app startup
initializeSystem: async () => {
const { isInitialized } = get()
if (isInitialized) return
console.log('Starting system initialization...')
set({ isLoading: true, error: null })
try {
// Fetch system information
console.log('Fetching system info...')
const systemInfo = await api.getSystemInfo()
console.log('System info received:', systemInfo)
// Fetch initial system status
console.log('Fetching system status...')
const systemStatus = await api.getSystemStatus()
console.log('System status received:', systemStatus)
// Check if we're in mock mode based on the system info
const isMockMode = systemInfo.environment === 'mock' || systemStatus.hardware_status === 'disconnected'
console.log('Mock mode detected:', isMockMode)
set({
systemInfo,
systemStatus,
isInitialized: true,
isConnected: !isMockMode, // Set connection status based on mock mode
isLoading: false,
error: null,
})
// Show mock mode warning if applicable
if (isMockMode && systemInfo.environment === 'mock') {
console.info('✅ Running in mock mode - no hardware required')
}
console.log('✅ System initialization completed successfully')
} catch (error) {
console.error('Failed to initialize system:', error)
console.error('Failed to initialize system:', error)
set({
isLoading: false,
error: error instanceof Error ? error.message : 'Failed to initialize system',