12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- import SwiftUI
- struct RoomsListView: View {
- @StateObject var viewModel: RoomsListViewModel = RoomsListViewModel()
- var body: some View {
- Group {
- if viewModel.rooms.isEmpty {
- ProgressView()
- } else {
- List(viewModel.rooms.indices, id: \.self) { index in
- RoomsListCellView(
- roomID: viewModel.rooms[index].id,
- title: viewModel.rooms[index].name,
- lastMessage: "Сообщение \(index)",
- lastMessageTime: "14:\(Int.random(in: 10...50))",
- unreadMessagesCount: Int.random(in: 1...100)
- )
- }
- .listStyle(.plain)
- }
- }
- .onAppear {
- viewModel.fetchRooms()
- }
- }
- }
- struct RoomsListView_Previews: PreviewProvider {
- static var viewModel: RoomsListViewModel = RoomsListViewModel()
- static var previews: some View {
- NavigationView {
- RoomsListView(viewModel: viewModel)
- .onAppear {
- viewModel.rooms = [
- .init(id: "Jid", name: "Room title 1"),
- .init(id: "Jid", name: "Room title 2"),
- .init(id: "Jid", name: "Room title 3"),
- .init(id: "Jid", name: "Room title 4"),
- .init(id: "Jid", name: "Room title 5"),
- .init(id: "Jid", name: "Room title 6"),
- .init(id: "Jid", name: "Room title 7")
- ]
- }
- }
- }
- }
|