feat(*): add sender to files pack result

This commit is contained in:
ksenia312
2024-02-04 22:25:57 +01:00
parent a1ac4488ca
commit d6840a4313
25 changed files with 199 additions and 152 deletions
+25 -11
View File
@@ -6,18 +6,19 @@
//
import Foundation
import MultipeerConnectivity
class NearbyFilesStore {
static let instance = NearbyFilesStore()
private var paths : [String] = []
private var id: String? = nil
private var senderName: String? = nil
private var maxCount: Int = 0
private var count: Int = 0
func startReceiving(command: NearbyStartCommand) {
self.paths.removeAll()
self.id = command.id
self.senderName = command.senderName
self.maxCount = command.filesCount
self.count = 0
}
@@ -31,16 +32,29 @@ class NearbyFilesStore {
return maxCount <= count
}
func toDartFormat() -> String? {
let pathsObject = paths.map { ["path": $0]}
do {
let jsonData = try JSONSerialization.data(withJSONObject: pathsObject)
if let jsonString = String(data: jsonData, encoding: .utf8) {
return jsonString
func clear() {
self.paths.removeAll()
self.senderName = nil
self.maxCount = 0
self.count = 0
}
func toDartFormat(peerID: MCPeerID) -> String? {
if (senderName != nil) {
let object = [
"files": paths.map { ["path": $0]},
"sender": ["id": peerID.displayName, "displayName": senderName!]
] as [String : Any]
do {
let jsonData = try JSONSerialization.data(withJSONObject: object)
if let jsonString = String(data: jsonData, encoding: .utf8) {
return jsonString
}
} catch {
return nil
}
} catch {
return "[]"
return nil
}
return "[]"
return nil
}
}