// // VehicleDetailView.swift // AutoCat2SUI // // Created by Selim Mustafaev on 11.09.2022. // import SwiftUI import AutoCatCore struct ReportTextItem: View { let name: String let value: String? var body: some View { HStack { Text(name) Spacer() Text(value ?? "") .foregroundColor(.secondary) } } } struct VehicleDetailView: View { let vehicle: Vehicle var body: some View { Form { Section(header: Text("General")) { ReportTextItem(name: "Year", value: String(vehicle.year ?? 0)) ReportTextItem(name: "Color", value: vehicle.color) ReportTextItem(name: "Category", value: vehicle.category) ReportTextItem(name: "Steering wheel position", value: vehicle.isRightWheel == true ? "Right": "Left") ReportTextItem(name: "Japanese", value: vehicle.isJapanese == true ? "Yes" : "No") } Section(header: Text("Identifiers")) { ReportTextItem(name: "Plate number", value: vehicle.number) ReportTextItem(name: "VIN", value: vehicle.vin1) ReportTextItem(name: "STS", value: vehicle.sts) ReportTextItem(name: "PTS", value: vehicle.pts) } Section(header: Text("Engine")) { ReportTextItem(name: "Number", value: vehicle.engine?.number) ReportTextItem(name: "Fuel type", value: vehicle.engine?.fuelType) ReportTextItem(name: "Volume (cm2)", value: String(vehicle.engine?.volume ?? 0)) ReportTextItem(name: "Power (HP)", value: String(vehicle.engine?.powerHp ?? 0)) ReportTextItem(name: "Power (kw)", value: String(vehicle.engine?.powerKw ?? 0)) } } .formStyle(.grouped) .toolbar { ToolbarItem(placement: .automatic) { Button(action: {}) { Image(systemName: "square.and.arrow.up") } } } .navigationTitle(vehicle.brand?.name?.original ?? "") .navigationSubtitle("\(vehicle.year ?? 0)") } } struct VehicleDetailView_Previews: PreviewProvider { static var previews: some View { let test1 = Vehicle(number: "Н282СН61", brandName: "KIA ОПТИМА", addedDate: Date().timeIntervalSince1970, updatedDate: Date().timeIntervalSince1970) return VehicleDetailView(vehicle: test1) } }