import SwiftUI struct LocalizedPostDetailView: View { @ObservedObject private var item: LocalizedPost init(post: LocalizedPost, showImagePicker: Bool = false) { self.item = post self.showImagePicker = showImagePicker } @State private var showImagePicker = false var body: some View { VStack(alignment: .leading) { Text("Link Preview Title") .font(.headline) OptionalTextField("", text: $item.linkPreviewTitle, prompt: item.title) .textFieldStyle(.roundedBorder) .padding(.bottom) HStack { Text("Link Preview Image") .font(.headline) IconButton(symbol: .squareAndPencilCircleFill, size: 22, color: .blue) { showImagePicker = true } IconButton(symbol: .trashCircleFill, size: 22, color: .red) { item.linkPreviewImage = nil } Spacer() } .buttonStyle(.plain) if let image = item.linkPreviewImage { image.imageToDisplay .resizable() .aspectRatio(contentMode: .fit) .frame(maxWidth: 400, maxHeight: 300) .cornerRadius(8) } Text("Link Preview Description") .font(.headline) .padding(.top) OptionalDescriptionField(text: $item.linkPreviewDescription) .textFieldStyle(.roundedBorder) .padding(.bottom) } .sheet(isPresented: $showImagePicker) { ImagePickerView(showImagePicker: $showImagePicker) { image in item.linkPreviewImage = image } } } }