50 lines
1.2 KiB
Swift
50 lines
1.2 KiB
Swift
//
|
|
// VehiclesListView.swift
|
|
// AutoCat2SUI
|
|
//
|
|
// Created by Selim Mustafaev on 28.08.2022.
|
|
//
|
|
|
|
import SwiftUI
|
|
import AutoCatCore
|
|
import RealmSwift
|
|
|
|
struct VehiclesListView: View {
|
|
|
|
var filter: Filter
|
|
@Binding var selection: Vehicle?
|
|
|
|
@ObservedResults(Vehicle.self) var vehicles
|
|
|
|
var body: some View {
|
|
let filtered: [Vehicle] = vehicles.filter(filter.match)
|
|
if filtered.isEmpty {
|
|
PlaceholderView(imageName: filter.iconName)
|
|
} else {
|
|
List(selection: $selection) {
|
|
ForEach(filtered, id: \.self) { vehicle in
|
|
PlateViewItem(vehicle: vehicle)
|
|
}
|
|
}
|
|
.toolbar {
|
|
ToolbarItem {
|
|
Button(action: {}) {
|
|
Image(systemName: "line.3.horizontal.decrease.circle")
|
|
}
|
|
}
|
|
}
|
|
.navigationTitle(filter.name)
|
|
.navigationSubtitle("\(filtered.count) vehicles")
|
|
}
|
|
}
|
|
}
|
|
|
|
struct VehiclesListView_Previews: PreviewProvider {
|
|
|
|
@State var selection: Vehicle?
|
|
|
|
static var previews: some View {
|
|
VehiclesListView(filter: .allLocal, selection: .constant(nil))
|
|
}
|
|
}
|