import SwiftUI struct SearchSuggestionsView: View { var tags: [BooruTag] @Binding var searchText: String private var lastSearchTag: String { String(searchText.split(separator: " ").last ?? "").lowercased() } private var filteredTags: [BooruTag] { guard !lastSearchTag.isEmpty else { return [] } return tags.filter { $0.name.lowercased().contains(lastSearchTag) } } var body: some View { ForEach( tags.filter { tag in tag.name.lowercased().contains(lastSearchTag) } ) { suggestion in Button { if let range = searchText.range(of: lastSearchTag, options: .backwards) { searchText.replaceSubrange(range, with: suggestion.name) } } label: { Text(suggestion.name) } } } }