2fe6b8a6df
Local work on the social.io handoff before merging the claude worktree branch. Includes the full per-spec Sources/Core/Design module (8 files), watchOS target under WatchApp/, Live Activity + widget extension, entitlements, scheme, and asset catalog. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
39 lines
911 B
Swift
39 lines
911 B
Swift
import SwiftUI
|
|
|
|
@main
|
|
struct SocialIOApp: App {
|
|
@State private var model = AppViewModel()
|
|
@AppStorage("sio.theme") private var themeRawValue = ThemePreference.system.rawValue
|
|
|
|
var body: some Scene {
|
|
#if os(macOS)
|
|
WindowGroup {
|
|
rootView
|
|
}
|
|
.defaultSize(width: 1440, height: 900)
|
|
|
|
Settings {
|
|
AppearanceSettingsView()
|
|
.frame(width: 420, height: 300)
|
|
}
|
|
#else
|
|
WindowGroup {
|
|
rootView
|
|
}
|
|
#endif
|
|
}
|
|
|
|
private var themePreference: ThemePreference {
|
|
ThemePreference(rawValue: themeRawValue) ?? .system
|
|
}
|
|
|
|
private var rootView: some View {
|
|
MailRootView(model: model)
|
|
.tint(SIO.tint)
|
|
.preferredColorScheme(themePreference.colorScheme)
|
|
.onOpenURL { url in
|
|
model.apply(url: url)
|
|
}
|
|
}
|
|
}
|