SPB Git

spb/zyquo-cloud Public MIT

Native macOS AI chat client for 12 cloud providers — your keys, every cloud model, one beautiful chat.

Swift 97.4% Shell 1.7% Makefile 1%
1.5 KB · 50 lines swift
Raw Blame History
1//2//  MainWindowView.swift3//  Zyquo Cloud4//5//  Author: Simon-Pierre Boucher6//  Mail: contact@spboucher.ai7//8//  Root split view: translucent sidebar + chat area.9//1011import SwiftUI1213struct MainWindowView: View {14    @EnvironmentObject private var store: ConversationStore15    @EnvironmentObject private var appearance: AppearanceStore1617    var body: some View {18        NavigationSplitView {19            SidebarView()20                .navigationSplitViewColumnWidth(21                    min: ZyquoMetrics.sidebarWidth,22                    ideal: ZyquoMetrics.sidebarWidth,23                    max: 36024                )25        } detail: {26            if let id = store.selectedID, store.conversations.contains(where: { $0.id == id }) {27                ChatView(conversationID: id)28                    .id(id)29            } else {30                EmptyStateView(31                    model: store.catalog.defaultModel,32                    onSelectModel: { model in33                        store.newConversation(model: model)34                    },35                    onSuggestion: { prompt in36                        let conversation = store.newConversation()37                        store.send(text: prompt, in: conversation.id)38                    }39                )40            }41        }42        .frame(43            minWidth: ZyquoMetrics.windowMinWidth,44            minHeight: ZyquoMetrics.windowMinHeight45        )46        .preferredColorScheme(appearance.themeMode.colorScheme)47        .tint(appearance.accentColor)48    }49}50