feat: implement three-mode UI system (Easy / Pro / Chat)
Add switchable UI modes with conditional rendering: - Easy mode: goal-based interface with 7 guided workflows - Pro mode: current technical interface preserved with Quick Start Goals - Chat mode: AIUI placeholder for future integration New components: ModeSwitcher, EasyHome, GoalDetail wizard, Chat placeholder New stores: uiMode (mode persistence), goals (progress tracking) New data: goal definitions catalog, helpTree goals section Modified: Dashboard (reactive nav), Home (mode dispatcher), Settings (mode picker), Router (goal/chat routes), Spotlight (goal search integration) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -28,11 +28,14 @@ export interface StatusInfo {
|
||||
'update-progress': number | null
|
||||
}
|
||||
|
||||
export type UIMode = 'gamer' | 'easy' | 'chat'
|
||||
|
||||
export interface UIData {
|
||||
name: string | null
|
||||
'ack-welcome': string
|
||||
marketplace: UIMarketplaceData
|
||||
theme: string
|
||||
mode?: UIMode
|
||||
}
|
||||
|
||||
export interface UIMarketplaceData {
|
||||
|
||||
32
neode-ui/src/types/goals.ts
Normal file
32
neode-ui/src/types/goals.ts
Normal file
@@ -0,0 +1,32 @@
|
||||
// Goal-based workflow types for Easy mode
|
||||
|
||||
export interface GoalDefinition {
|
||||
id: string
|
||||
title: string
|
||||
subtitle: string
|
||||
icon: string
|
||||
category: 'commerce' | 'payments' | 'storage' | 'identity' | 'network' | 'backup'
|
||||
requiredApps: string[]
|
||||
steps: GoalStep[]
|
||||
estimatedTime: string
|
||||
difficulty: 'beginner' | 'intermediate'
|
||||
}
|
||||
|
||||
export interface GoalStep {
|
||||
id: string
|
||||
title: string
|
||||
description: string
|
||||
appId?: string
|
||||
action: 'install' | 'configure' | 'verify' | 'info'
|
||||
isAutomatic: boolean
|
||||
}
|
||||
|
||||
export type GoalStatus = 'not-started' | 'in-progress' | 'completed' | 'error'
|
||||
|
||||
export interface GoalProgress {
|
||||
goalId: string
|
||||
status: GoalStatus
|
||||
currentStepIndex: number
|
||||
completedSteps: string[]
|
||||
startedAt?: number
|
||||
}
|
||||
Reference in New Issue
Block a user