Spaces:
Sleeping
Sleeping
| import type { Change } from 'diff'; | |
| export type ActionType = 'file' | 'shell' | 'supabase'; | |
| export interface BaseAction { | |
| content: string; | |
| } | |
| export interface FileAction extends BaseAction { | |
| type: 'file'; | |
| filePath: string; | |
| } | |
| export interface ShellAction extends BaseAction { | |
| type: 'shell'; | |
| } | |
| export interface StartAction extends BaseAction { | |
| type: 'start'; | |
| } | |
| export interface BuildAction extends BaseAction { | |
| type: 'build'; | |
| } | |
| export interface SupabaseAction extends BaseAction { | |
| type: 'supabase'; | |
| operation: 'migration' | 'query'; | |
| filePath?: string; | |
| projectId?: string; | |
| } | |
| export type BoltAction = FileAction | ShellAction | StartAction | BuildAction | SupabaseAction; | |
| export type BoltActionData = BoltAction | BaseAction; | |
| export interface ActionAlert { | |
| type: string; | |
| title: string; | |
| description: string; | |
| content: string; | |
| source?: 'terminal' | 'preview'; // Add source to differentiate between terminal and preview errors | |
| } | |
| export interface SupabaseAlert { | |
| type: string; | |
| title: string; | |
| description: string; | |
| content: string; | |
| source?: 'supabase'; | |
| } | |
| export interface DeployAlert { | |
| type: 'success' | 'error' | 'info'; | |
| title: string; | |
| description: string; | |
| content?: string; | |
| url?: string; | |
| stage?: 'building' | 'deploying' | 'complete'; | |
| buildStatus?: 'pending' | 'running' | 'complete' | 'failed'; | |
| deployStatus?: 'pending' | 'running' | 'complete' | 'failed'; | |
| source?: 'vercel' | 'netlify' | 'github'; | |
| } | |
| export interface FileHistory { | |
| originalContent: string; | |
| lastModified: number; | |
| changes: Change[]; | |
| versions: { | |
| timestamp: number; | |
| content: string; | |
| }[]; | |
| // Novo campo para rastrear a origem das mudanças | |
| changeSource?: 'user' | 'auto-save' | 'external'; | |
| } | |