func logResolveDebugURL()

in Sources/Confidence/DebugLogger.swift [23:47]


    func logResolveDebugURL(flagName: String, context: ConfidenceStruct) {
        let ctxNetworkValue: NetworkStruct = TypeMapper.convert(structure: context)
        do {
            let ctxNetworkData = try encoder.encode(ctxNetworkValue)

            let resolveHintData = try [
                "context": JSONSerialization.jsonObject(with: ctxNetworkData, options: []),
                "flag": "flags/\(flagName)",
                "clientKey": clientKey,
            ]
            let jsonData = try JSONSerialization.data(withJSONObject: resolveHintData, options: [])
            if let jsonString = String(data: jsonData, encoding: .utf8) {
                let base64 = Data(jsonString.utf8).base64EncodedString()
                let message = """
                    Check your flag evaluation for \(flagName)
                    by copy pasting the payload to the Resolve tester '\(base64)'
                """
                log(messageLevel: .DEBUG, message: message)
            } else {
                log(messageLevel: .DEBUG, message: "Could not convert JSON data to string")
            }
        } catch {
            log(messageLevel: .DEBUG, message: "Failed to encode resolve hint data: \(error)")
        }
    }