Proyectos de Subversion Iphone Microlearning - Inconcert

Rev

Autoría | Ultima modificación | Ver Log |

import SwiftUI



struct TimeLineView: View {
    @EnvironmentObject private var networkMonitor : NetworkMonitor
    @EnvironmentObject private var appNavigation : AppNavigation

    private let config = [
        GridItem(.flexible())
    ]
    
    private var viewModel : TimeLineViewModel = TimeLineViewModel()

    var body: some View {
        GeometryReader { geometry in
            VStack(spacing: 0) {
                HStack {
                    Image("logo")
                    .resizable()
                    .frame(width: 32, height: 32, alignment: .center)
                    .aspectRatio(contentMode: .fit)
                        .foregroundColor(networkMonitor.status == .disconnected ? Color("color_network_disconnected_foreground") : Color("color_app_bar_foreground"))
                    .padding(.leading, 16)
                 
                    
                    Text(Config.LANG_TAB_BAR_BUTTON_TIME_LINE)
                    .font(Font.custom(Config.FONT_NAME_REGULAR, size: Config.FONT_SIZE_APP_BAR_HEAD1 ))
                        .foregroundColor(networkMonitor.status == .disconnected ? Color("color_network_disconnected_foreground") : Color("color_app_bar_foreground"))
                    .padding(.leading, 4)
                    
                    Spacer()
                    
                }
                .edgesIgnoringSafeArea(.top)
                .frame(height: 50)
                .background(networkMonitor.status == .disconnected ? Color("color_network_disconnected_background") : Color("color_app_bar_background"))
        
                Divider().background(networkMonitor.status == .disconnected ? Color("color_network_disconnected_background") : Color("color_app_bar_background"))
            
                ScrollView {
                    ForEach(0..<self.viewModel.userlogs.count) { i in

                        TimeLinePointView(userLogModel: self.viewModel.userlogs[i], highlight: i == 0 || i == self.viewModel.userlogs.count - 1)
                            .listRowInsets(.init()).frame(width: geometry.size.width, height: 70, alignment: /*@START_MENU_TOKEN@*/.center/*@END_MENU_TOKEN@*/)
                            .background(i == 0 || i == self.viewModel.userlogs.count - 1 ?
                                            
                                            Color("color_timeline_list_item_background_highlight")
                                            :
                                            
                                            Color("color_timeline_list_item_background"))
                    }
                }
                .padding(.top, 5)
                .background(Color("color_app_bar_background"))

            }

        }
    }
}


struct TimeLineView_Previews: PreviewProvider {
    static var previews: some View {
        TimeLineView()
    }
}