aboutsummaryrefslogtreecommitdiff
path: root/iosApp/iosApp/Units/UnitsView.swift
blob: fd673a6d2fb2c60d0b6e5a83d46b689dac276cd6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
//
//  UnitsView.swift
//  iosApp
//
//  Created by Iván on 27/01/22.
//  Copyright © 2022 orgName. All rights reserved.
//

import SwiftUI
import SwiftUIX
import shared

struct UnitsView: View {
    @StateObject var unitsViewModel = UnitsViewModel()
    
    var body: some View {
        NavigationView {
            ZStack {
                switch unitsViewModel.unitsDisplayMode {
                case .list:
                    DevicesView(unitsViewModel: unitsViewModel)
                case .map:
                    MapView(unitsViewModel: unitsViewModel)
                }
            }
            .navigationBarTitleDisplayMode(.inline)
            .navigationSearchBar {
                searchBar()
            }
        }
    }
    
    private func searchBar () -> SearchBar {
        SearchBar(NSLocalizedString("search", comment: ""),
                  text: $unitsViewModel.searchQuery,
                  isEditing: $unitsViewModel.isEditing,
                  onCommit:  {})
            .showsCancelButton(unitsViewModel.isEditing)
            .onCancel {
                unitsViewModel.searchQuery = ""
            }
    }
}