func eventsFrom()

in Sources/Confidence/EventStorage.swift [73:93]


    func eventsFrom(id: String) throws -> [ConfidenceEvent] {
        try storageQueue.sync {
            let decoder = JSONDecoder()
            let fileUrl = folderURL.appendingPathComponent(id)
            let data = try Data(contentsOf: fileUrl)
            if let dataString = String(data: data, encoding: .utf8) {
                return try dataString.components(separatedBy: "\n")
                    .filter { events in
                        !events.isEmpty
                    }
                    .compactMap { eventString in
                        guard let stringData = eventString.data(using: .utf8) else {
                            return nil
                        }
                        return try decoder.decode(ConfidenceEvent.self, from: stringData)
                    }
            } else {
                return []
            }
        }
    }