|
1 | 1 | import SwiftUI |
2 | 2 |
|
3 | 3 | struct ShippingLabelPackageItem: View { |
| 4 | + |
| 5 | + @ObservedObject private var viewModel: ShippingLabelPackageItemViewModel |
| 6 | + @State private var isCollapsed: Bool = false |
| 7 | + @State private var isShowingPackageSelection = false |
| 8 | + |
| 9 | + private let isCollapsible: Bool |
| 10 | + private let packageNumber: Int |
| 11 | + private let safeAreaInsets: EdgeInsets |
| 12 | + |
| 13 | + init(packageNumber: Int, |
| 14 | + isCollapsible: Bool, |
| 15 | + safeAreaInsets: EdgeInsets, |
| 16 | + viewModel: ShippingLabelPackageItemViewModel) { |
| 17 | + self.packageNumber = packageNumber |
| 18 | + self.isCollapsible = isCollapsible |
| 19 | + self.safeAreaInsets = safeAreaInsets |
| 20 | + self.viewModel = viewModel |
| 21 | + self.isCollapsed = packageNumber > 1 |
| 22 | + } |
| 23 | + |
4 | 24 | var body: some View { |
5 | | - Text("Hello, World!") |
| 25 | + CollapsibleView(isCollapsible: isCollapsible, isCollapsed: $isCollapsed, safeAreaInsets: safeAreaInsets) { |
| 26 | + // TODO-4599 - Update view |
| 27 | + ShippingLabelPackageNumberRow(packageNumber: packageNumber, numberOfItems: 1) |
| 28 | + } content: { |
| 29 | + // TODO-4599 - Update view |
| 30 | + EmptyView() |
| 31 | + } |
6 | 32 | } |
7 | 33 | } |
8 | 34 |
|
9 | 35 | struct ShippingLabelPackageItem_Previews: PreviewProvider { |
10 | 36 | static var previews: some View { |
11 | | - ShippingLabelPackageItem() |
| 37 | + let order = ShippingLabelPackageDetailsViewModel.sampleOrder() |
| 38 | + let packageResponse = ShippingLabelPackageDetailsViewModel.samplePackageDetails() |
| 39 | + let viewModel = ShippingLabelPackageItemViewModel(order: order, |
| 40 | + orderItems: order.items, |
| 41 | + packagesResponse: packageResponse, |
| 42 | + selectedPackageID: "Box 1", |
| 43 | + totalWeight: "", |
| 44 | + products: [], |
| 45 | + productVariations: []) |
| 46 | + ShippingLabelPackageItem(packageNumber: 1, isCollapsible: true, safeAreaInsets: .zero, viewModel: viewModel) |
12 | 47 | } |
13 | 48 | } |
0 commit comments