cleanup
This commit is contained in:
parent
1ee02dfcb0
commit
43f03c1c9c
|
@ -11,7 +11,7 @@ import Defaults
|
|||
import JellyfinAPI
|
||||
|
||||
struct SettingsView: View {
|
||||
|
||||
|
||||
@ObservedObject var viewModel: SettingsViewModel
|
||||
|
||||
@Default(.inNetworkBandwidth) var inNetworkStreamBitrate
|
||||
|
|
|
@ -13,7 +13,7 @@ struct ServerDetailView: View {
|
|||
|
||||
@ObservedObject var viewModel: ServerDetailViewModel
|
||||
@State var currentServerURI: String
|
||||
|
||||
|
||||
init(viewModel: ServerDetailViewModel) {
|
||||
self.viewModel = viewModel
|
||||
self.currentServerURI = viewModel.server.currentURI
|
||||
|
|
|
@ -96,7 +96,7 @@ struct UserListView: View {
|
|||
} label: {
|
||||
Image(systemName: "info.circle.fill")
|
||||
}
|
||||
|
||||
|
||||
if !viewModel.users.isEmpty {
|
||||
Button {
|
||||
userListRouter.route(to: \.userSignIn, viewModel.server)
|
||||
|
|
|
@ -69,7 +69,7 @@ final class MainCoordinator: NavigationCoordinatable {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@objc func didChangeServerCurrentURI(_ notification: Notification) {
|
||||
guard let newCurrentServerState = notification.object as? SwiftfinStore.State.Server else { fatalError("Need to have new current login state server") }
|
||||
guard SessionManager.main.currentLogin != nil else { return }
|
||||
|
@ -77,7 +77,7 @@ final class MainCoordinator: NavigationCoordinatable {
|
|||
SessionManager.main.loginUser(server: newCurrentServerState, user: SessionManager.main.currentLogin.user)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
func makeMainTab() -> MainTabCoordinator {
|
||||
MainTabCoordinator()
|
||||
}
|
||||
|
|
|
@ -12,17 +12,17 @@ import Stinsen
|
|||
import SwiftUI
|
||||
|
||||
final class ServerDetailCoordinator: NavigationCoordinatable {
|
||||
|
||||
|
||||
let stack = NavigationStack(initial: \ServerDetailCoordinator.start)
|
||||
|
||||
|
||||
@Root var start = makeStart
|
||||
|
||||
|
||||
let viewModel: ServerDetailViewModel
|
||||
|
||||
|
||||
init(viewModel: ServerDetailViewModel) {
|
||||
self.viewModel = viewModel
|
||||
}
|
||||
|
||||
|
||||
@ViewBuilder func makeStart() -> some View {
|
||||
ServerDetailView(viewModel: viewModel)
|
||||
}
|
||||
|
|
|
@ -120,7 +120,7 @@ final class SessionManager {
|
|||
|
||||
return (editServer, transaction)
|
||||
}
|
||||
.handleEvents(receiveOutput: { (server, transaction) in
|
||||
.handleEvents(receiveOutput: { (_, transaction) in
|
||||
try? transaction.commitAndWait()
|
||||
})
|
||||
.map({ (server, _) in
|
||||
|
@ -149,7 +149,7 @@ final class SessionManager {
|
|||
|
||||
return (editServer, transaction)
|
||||
}
|
||||
.handleEvents(receiveOutput: { (server, transaction) in
|
||||
.handleEvents(receiveOutput: { (_, transaction) in
|
||||
try? transaction.commitAndWait()
|
||||
})
|
||||
.map({ (server, _) in
|
||||
|
|
|
@ -180,9 +180,9 @@ extension SwiftfinStore.Errors: LocalizedError {
|
|||
|
||||
var title: String {
|
||||
switch self {
|
||||
case .existingServer(_):
|
||||
case .existingServer:
|
||||
return "Existing Server"
|
||||
case .existingUser(_):
|
||||
case .existingUser:
|
||||
return "Existing User"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -106,7 +106,7 @@ final class ConnectToServerViewModel: ViewModel {
|
|||
.sink { completion in
|
||||
self.handleAPIRequestError(displayMessage: "Unable to connect to server.", logLevel: .critical, tag: "connectToServer",
|
||||
completion: completion)
|
||||
} receiveValue: { server in
|
||||
} receiveValue: { _ in
|
||||
self.router?.dismissCoordinator()
|
||||
}
|
||||
.store(in: &self.cancellables)
|
||||
|
|
|
@ -25,7 +25,7 @@ final class HomeViewModel: ViewModel {
|
|||
override init() {
|
||||
super.init()
|
||||
refresh()
|
||||
|
||||
|
||||
// Nov. 6, 2021
|
||||
// This is a workaround since Stinsen doesn't have the ability to rebuild a root at the time of writing.
|
||||
// See ServerDetailViewModel.swift for feature request issue
|
||||
|
@ -33,36 +33,36 @@ final class HomeViewModel: ViewModel {
|
|||
nc.addObserver(self, selector: #selector(didSignIn), name: SwiftfinNotificationCenter.Keys.didSignIn, object: nil)
|
||||
nc.addObserver(self, selector: #selector(didSignOut), name: SwiftfinNotificationCenter.Keys.didSignOut, object: nil)
|
||||
}
|
||||
|
||||
|
||||
@objc func didSignIn() {
|
||||
for cancellable in cancellables {
|
||||
cancellable.cancel()
|
||||
}
|
||||
|
||||
|
||||
librariesShowRecentlyAddedIDs = []
|
||||
libraries = []
|
||||
resumeItems = []
|
||||
nextUpItems = []
|
||||
|
||||
|
||||
refresh()
|
||||
}
|
||||
|
||||
|
||||
@objc func didSignOut() {
|
||||
for cancellable in cancellables {
|
||||
cancellable.cancel()
|
||||
}
|
||||
|
||||
|
||||
cancellables.removeAll()
|
||||
}
|
||||
|
||||
func refresh() {
|
||||
func refresh() {
|
||||
LogManager.shared.log.debug("Refresh called.")
|
||||
UserViewsAPI.getUserViews(userId: SessionManager.main.currentLogin.user.id)
|
||||
.trackActivity(loading)
|
||||
.sink(receiveCompletion: { completion in
|
||||
switch completion {
|
||||
case .finished: ()
|
||||
case .failure(_):
|
||||
case .failure:
|
||||
self.libraries = []
|
||||
self.handleAPIRequestError(completion: completion)
|
||||
}
|
||||
|
@ -82,7 +82,7 @@ final class HomeViewModel: ViewModel {
|
|||
.sink(receiveCompletion: { completion in
|
||||
switch completion {
|
||||
case .finished: ()
|
||||
case .failure(_):
|
||||
case .failure:
|
||||
self.libraries = []
|
||||
self.handleAPIRequestError(completion: completion)
|
||||
}
|
||||
|
@ -110,7 +110,7 @@ final class HomeViewModel: ViewModel {
|
|||
.sink(receiveCompletion: { completion in
|
||||
switch completion {
|
||||
case .finished: ()
|
||||
case .failure(_):
|
||||
case .failure:
|
||||
self.resumeItems = []
|
||||
self.handleAPIRequestError(completion: completion)
|
||||
}
|
||||
|
@ -127,7 +127,7 @@ final class HomeViewModel: ViewModel {
|
|||
.sink(receiveCompletion: { completion in
|
||||
switch completion {
|
||||
case .finished: ()
|
||||
case .failure(_):
|
||||
case .failure:
|
||||
self.nextUpItems = []
|
||||
self.handleAPIRequestError(completion: completion)
|
||||
}
|
||||
|
|
|
@ -11,20 +11,20 @@ import Foundation
|
|||
import JellyfinAPI
|
||||
|
||||
class ServerDetailViewModel: ViewModel {
|
||||
|
||||
|
||||
@Published var server: SwiftfinStore.State.Server
|
||||
|
||||
|
||||
init(server: SwiftfinStore.State.Server) {
|
||||
self.server = server
|
||||
}
|
||||
|
||||
|
||||
func setServerCurrentURI(uri: String) {
|
||||
SessionManager.main.setServerCurrentURI(server: server, uri: uri)
|
||||
.sink { c in
|
||||
print(c)
|
||||
} receiveValue: { newServerState in
|
||||
self.server = newServerState
|
||||
|
||||
|
||||
let nc = SwiftfinNotificationCenter.main
|
||||
nc.post(name: SwiftfinNotificationCenter.Keys.didChangeServerCurrentURI, object: newServerState)
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue