These sources will be converted to be more flexible with JavaScript in the future. The source catalog is populated by adding a source list in settings then installing a source from the catalog. Sources can be enabled or disabled when using Ferrite. Signed-off-by: kingbri <bdashore3@gmail.com>
36 lines
1.1 KiB
Swift
36 lines
1.1 KiB
Swift
//
|
|
// FerriteApp.swift
|
|
// Ferrite
|
|
//
|
|
// Created by Brian Dashore on 7/1/22.
|
|
//
|
|
|
|
import SwiftUI
|
|
|
|
@main
|
|
struct FerriteApp: App {
|
|
let persistenceController = PersistenceController.shared
|
|
|
|
@StateObject var scrapingModel: ScrapingViewModel = .init()
|
|
@StateObject var toastModel: ToastViewModel = .init()
|
|
@StateObject var debridManager: DebridManager = .init()
|
|
@StateObject var navigationModel: NavigationViewModel = .init()
|
|
@StateObject var sourceManager: SourceManager = .init()
|
|
|
|
var body: some Scene {
|
|
WindowGroup {
|
|
MainView()
|
|
.onAppear {
|
|
scrapingModel.toastModel = toastModel
|
|
debridManager.toastModel = toastModel
|
|
sourceManager.toastModel = toastModel
|
|
}
|
|
.environmentObject(debridManager)
|
|
.environmentObject(scrapingModel)
|
|
.environmentObject(toastModel)
|
|
.environmentObject(navigationModel)
|
|
.environmentObject(sourceManager)
|
|
.environment(\.managedObjectContext, persistenceController.container.viewContext)
|
|
}
|
|
}
|
|
}
|