metatext-app-ios-iphone-ipad/Shared/MetatextApp.swift

36 lines
943 B
Swift

// Copyright © 2020 Metabolist. All rights reserved.
import SwiftUI
@main
struct MetatextApp: App {
private let environment: AppEnvironment
init() {
let identityDatabase: IdentityDatabase
do {
try identityDatabase = IdentityDatabase()
} catch {
fatalError("Failed to initialize identity database")
}
environment = AppEnvironment(
URLSessionConfiguration: .default,
identityDatabase: identityDatabase,
defaults: Defaults(userDefaults: .standard),
keychainService: KeychainService(serviceName: Self.keychainServiceName),
webAuthSessionType: WebAuthSession.self)
}
var body: some Scene {
WindowGroup {
RootView(viewModel: RootViewModel(environment: environment))
}
}
}
private extension MetatextApp {
static let keychainServiceName = "com.metabolist.metatext"
}