45 lines
1.1 KiB
Swift
45 lines
1.1 KiB
Swift
//
|
|
// MainView.swift
|
|
// AutoCat2SUI
|
|
//
|
|
// Created by Selim Mustafaev on 24.07.2022.
|
|
//
|
|
|
|
import SwiftUI
|
|
import AutoCatCore
|
|
import RealmSwift
|
|
|
|
struct MainView: View {
|
|
|
|
@State private var searchText = ""
|
|
@State var columnVisibility = NavigationSplitViewVisibility.all
|
|
@State var selectedFilter: Filter?
|
|
@State var selectedVehicle: Vehicle?
|
|
|
|
var body: some View {
|
|
NavigationSplitView(columnVisibility: $columnVisibility) {
|
|
SidebarView(selectedFilter: $selectedFilter)
|
|
} content: {
|
|
if let filter = selectedFilter {
|
|
VehiclesListView(filter: filter, selection: $selectedVehicle)
|
|
} else {
|
|
EmptyView()
|
|
}
|
|
} detail: {
|
|
if let vehicle = selectedVehicle {
|
|
VehicleDetailView(vehicle: vehicle)
|
|
.searchable(text: $searchText, placement: .toolbar)
|
|
} else {
|
|
EmptyView()
|
|
}
|
|
}
|
|
.navigationSplitViewStyle(.balanced)
|
|
}
|
|
}
|
|
|
|
struct MainView_Previews: PreviewProvider {
|
|
static var previews: some View {
|
|
MainView()
|
|
}
|
|
}
|