From de4be5ddcfd59e3c9bb1750bbac204d4808e271b Mon Sep 17 00:00:00 2001 From: acvigue Date: Fri, 16 Jul 2021 03:41:09 +0000 Subject: [PATCH] [create-pull-request] automated change --- JellyfinPlayer/SearchBarView.swift | 4 +-- .../ViewModels/LibrarySearchViewModel.swift | 28 +++++++++---------- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/JellyfinPlayer/SearchBarView.swift b/JellyfinPlayer/SearchBarView.swift index 44286628..45418b05 100644 --- a/JellyfinPlayer/SearchBarView.swift +++ b/JellyfinPlayer/SearchBarView.swift @@ -11,9 +11,9 @@ import SwiftUI struct SearchBar: View { @Binding var text: String - + @State private var isEditing = false - + var body: some View { HStack(spacing: 8) { TextField("Search...", text: $text) diff --git a/Shared/ViewModels/LibrarySearchViewModel.swift b/Shared/ViewModels/LibrarySearchViewModel.swift index 6fc8e0fd..77f1cc03 100644 --- a/Shared/ViewModels/LibrarySearchViewModel.swift +++ b/Shared/ViewModels/LibrarySearchViewModel.swift @@ -13,36 +13,36 @@ import Foundation import JellyfinAPI final class LibrarySearchViewModel: ViewModel { - + @Published var supportedItemTypeList = [ItemType]() - + @Published var selectedItemType: ItemType = .movie - + @Published var movieItems = [BaseItemDto]() @Published var showItems = [BaseItemDto]() @Published var episodeItems = [BaseItemDto]() - + @Published var suggestions = [BaseItemDto]() - + var searchQuerySubject = CurrentValueSubject("") var parentID: String? - + init(parentID: String?) { self.parentID = parentID super.init() - + searchQuerySubject .filter { !$0.isEmpty } .debounce(for: 0.25, scheduler: DispatchQueue.main) .sink(receiveValue: search) .store(in: &cancellables) setupPublishersForSupportedItemType() - + requestSuggestions() } - + func setupPublishersForSupportedItemType() { - + let supportedItemTypeListPublishers = Publishers.CombineLatest3($movieItems, $showItems, $episodeItems) .debounce(for: 0.25, scheduler: DispatchQueue.main) .map { arg -> [ItemType] in @@ -58,11 +58,11 @@ final class LibrarySearchViewModel: ViewModel { } return typeList } - + supportedItemTypeListPublishers .assign(to: \.supportedItemTypeList, on: self) .store(in: &cancellables) - + supportedItemTypeListPublishers .withLatestFrom(supportedItemTypeListPublishers, $selectedItemType) .compactMap { typeList, selectedItemType in @@ -75,7 +75,7 @@ final class LibrarySearchViewModel: ViewModel { .assign(to: \.selectedItemType, on: self) .store(in: &cancellables) } - + func requestSuggestions() { ItemsAPI.getItemsByUserId(userId: SessionManager.current.user.user_id!, limit: 20, @@ -92,7 +92,7 @@ final class LibrarySearchViewModel: ViewModel { } .store(in: &cancellables) } - + func search(with query: String) { ItemsAPI.getItemsByUserId(userId: SessionManager.current.user.user_id!, limit: 50, recursive: true, searchTerm: query, sortOrder: [.ascending], parentId: parentID,