Sergey 2 жил өмнө
parent
commit
62d3eae5e1

+ 1 - 13
Chat/Models/Room.swift

@@ -5,19 +5,7 @@
 //  Created by Sergey Tarasov on 17.08.2022.
 //
 
-import Foundation
-import XMPPFramework
-import XMPPFrameworkSwift
-
 struct Room {
-    let jidString: String
+    let id: String
     let name: String
-    var messages: [XMPPMessage] = []
-}
-
-extension Room {
-    var jid: XMPPJID {
-        guard let jid = XMPPJID(string: jidString) else { return XMPPJID() }
-        return jid
-    }
 }

+ 1 - 12
Chat/Models/User.swift

@@ -5,18 +5,7 @@
 //  Created by Sergey Tarasov on 17.08.2022.
 //
 
-import Foundation
-import XMPPFramework
-import XMPPFrameworkSwift
-
 struct User {
-    let jidString: String
+    let id: String
     let nickname: String
 }
-
-extension User {
-    var jid: XMPPJID {
-        guard let jid = XMPPJID(string: jidString) else { return XMPPJID() }
-        return jid
-    }
-}

+ 1 - 1
Chat/UI/ChatList/ChatListView.swift

@@ -20,7 +20,7 @@ struct ChatListView: View {
 				List(viewModel.users.indices, id: \.self) { index in
 					ChatListCellView(
 						nickname: viewModel.nicknames[index],
-						jid: viewModel.users[index].jidString
+						jid: viewModel.users[index].id
 					)
 				}
 				.listStyle(.plain)

+ 2 - 2
Chat/UI/ChatList/ChatListViewModel.swift

@@ -13,7 +13,7 @@ final class ChatListViewModel: NSObject, ObservableObject {
     @Published var users: [User] = []
 
     var nicknames: [String] {
-        return users.map({ $0.nickname.isEmpty ? $0.jidString : $0.nickname })
+        return users.map({ $0.nickname.isEmpty ? $0.id : $0.nickname })
     }
 
     override init() {
@@ -23,7 +23,7 @@ final class ChatListViewModel: NSObject, ObservableObject {
     public func fetchChatList() {
 		let xmppUsers = XMPPController.shared.xmppRosterStorage.sortedUsersByAvailabilityName() as? [XMPPUser]
 		guard let users = xmppUsers?.compactMap({
-			User(jidString: $0.jid.bare, nickname: $0.nickname.isEmpty ? $0.jid.bare : $0.nickname)
+			User(id: $0.jid.bare, nickname: $0.nickname.isEmpty ? $0.jid.bare : $0.nickname)
 		}) else {
 			return
 		}

+ 8 - 8
Chat/UI/Rooms/RoomsListView.swift

@@ -17,7 +17,7 @@ struct RoomsListView: View {
 			} else {
 				List(viewModel.rooms.indices, id: \.self) { index in
 					RoomsListCellView(
-						roomID: viewModel.rooms[index].jidString,
+						roomID: viewModel.rooms[index].id,
 						title: viewModel.rooms[index].name,
 						lastMessage: "Сообщение \(index)",
 						lastMessageTime: "14:\(Int.random(in: 10...50))",
@@ -41,13 +41,13 @@ struct RoomsListView_Previews: PreviewProvider {
 			RoomsListView(viewModel: viewModel)
 				.onAppear {
 					viewModel.rooms = [
-						.init(jidString: "Jid", name: "Room title 1"),
-						.init(jidString: "Jid", name: "Room title 2"),
-						.init(jidString: "Jid", name: "Room title 3"),
-						.init(jidString: "Jid", name: "Room title 4"),
-						.init(jidString: "Jid", name: "Room title 5"),
-						.init(jidString: "Jid", name: "Room title 6"),
-						.init(jidString: "Jid", name: "Room title 7")
+						.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")
 					]
 				}
 		}

+ 1 - 1
Chat/UI/Rooms/RoomsListViewModel.swift

@@ -29,6 +29,6 @@ final class RoomsListViewModel: NSObject, ObservableObject {
 extension RoomsListViewModel: XMPPMUCLightDelegate {
 	func xmppMUCLight(_ sender: XMPPMUCLight, didDiscoverRooms rooms: [DDXMLElement], forServiceNamed serviceName: String) {
 		debugPrint(rooms)
-		self.rooms = rooms.map({ Room(jidString: $0.attributeStringValue(forName: "jid") ?? "", name: $0.attributeStringValue(forName: "name") ?? "") })
+		self.rooms = rooms.map({ Room(id: $0.attributeStringValue(forName: "jid") ?? "", name: $0.attributeStringValue(forName: "name") ?? "") })
 	}
 }