RES-75 Ajouter un pretty print pour le dictionnaire des params
This commit is contained in:
@@ -160,6 +160,17 @@ internal class AnalyticsManager {
|
|||||||
|
|
||||||
// MARK: - Private Log Methods
|
// MARK: - Private Log Methods
|
||||||
|
|
||||||
|
private func formattedParams(_ params: [String: Any]?) -> String {
|
||||||
|
guard let params = params, !params.isEmpty else { return "-" }
|
||||||
|
|
||||||
|
let formattedParams = params.map { key, value in
|
||||||
|
" \(key): \(value)"
|
||||||
|
}
|
||||||
|
.joined(separator: "\n")
|
||||||
|
|
||||||
|
return "\n" + formattedParams
|
||||||
|
}
|
||||||
|
|
||||||
private func logScreen(
|
private func logScreen(
|
||||||
name: String,
|
name: String,
|
||||||
path: String,
|
path: String,
|
||||||
@@ -175,7 +186,12 @@ internal class AnalyticsManager {
|
|||||||
managers.values.forEach { manager in
|
managers.values.forEach { manager in
|
||||||
|
|
||||||
if isDebugMode {
|
if isDebugMode {
|
||||||
logger.debug("🖥️ Screen: \(name, privacy: .public) | Path: \(path, privacy: .public) | Params: \(String(describing: params ?? [:]), privacy: .public)")
|
logger.debug("""
|
||||||
|
🖥️ Screen:
|
||||||
|
Name: \(name, privacy: .public)
|
||||||
|
Path: \(path, privacy: .public)
|
||||||
|
Params: \(self.formattedParams(params), privacy: .public)
|
||||||
|
""")
|
||||||
}
|
}
|
||||||
|
|
||||||
manager.logScreen(
|
manager.logScreen(
|
||||||
@@ -202,7 +218,13 @@ internal class AnalyticsManager {
|
|||||||
managers.values.forEach { manager in
|
managers.values.forEach { manager in
|
||||||
|
|
||||||
if isDebugMode {
|
if isDebugMode {
|
||||||
logger.debug("📊 Event: \(name, privacy: .public) | Action: \(action.isEmpty ? "-" : action, privacy: .public) | Category: \(category.isEmpty ? "-" : category, privacy: .public) | Params: \(String(describing: params ?? [:]), privacy: .public)")
|
logger.debug("""
|
||||||
|
📊 Event:
|
||||||
|
Name: \(name, privacy: .public)
|
||||||
|
Action: \(action.isEmpty ? "-" : action, privacy: .public)
|
||||||
|
Category: \(category.isEmpty ? "-" : category, privacy: .public)
|
||||||
|
Params: \(self.formattedParams(params), privacy: .public)
|
||||||
|
""")
|
||||||
}
|
}
|
||||||
|
|
||||||
manager.logEvent(
|
manager.logEvent(
|
||||||
|
|||||||
@@ -38,9 +38,6 @@ struct Analytics: ParsableCommand {
|
|||||||
|
|
||||||
print("[\(Self.toolName)] Will generate analytics")
|
print("[\(Self.toolName)] Will generate analytics")
|
||||||
|
|
||||||
// Check requirements
|
|
||||||
guard checkRequirements() else { return }
|
|
||||||
|
|
||||||
// Parse input file
|
// Parse input file
|
||||||
let sections = AnalyticsFileParser().parse(options.inputFile, target: options.target)
|
let sections = AnalyticsFileParser().parse(options.inputFile, target: options.target)
|
||||||
|
|
||||||
|
|||||||
@@ -199,6 +199,17 @@ enum AnalyticsGenerator {
|
|||||||
"""
|
"""
|
||||||
// MARK: - Private Log Methods
|
// MARK: - Private Log Methods
|
||||||
|
|
||||||
|
private func formattedParams(_ params: [String: Any]?) -> String {
|
||||||
|
guard let params = params, !params.isEmpty else { return "-" }
|
||||||
|
|
||||||
|
let formattedParams = params.map { key, value in
|
||||||
|
" \\(key): \\(value)"
|
||||||
|
}
|
||||||
|
.joined(separator: "\\n")
|
||||||
|
|
||||||
|
return "\\n" + formattedParams
|
||||||
|
}
|
||||||
|
|
||||||
private func logScreen(
|
private func logScreen(
|
||||||
name: String,
|
name: String,
|
||||||
path: String,
|
path: String,
|
||||||
@@ -216,9 +227,9 @@ enum AnalyticsGenerator {
|
|||||||
if isDebugMode {
|
if isDebugMode {
|
||||||
logger.debug(\"""
|
logger.debug(\"""
|
||||||
🖥️ Screen:
|
🖥️ Screen:
|
||||||
Name: \\(name, privacy: .public)
|
Name: \\(name, privacy: .public)
|
||||||
Path: \\(path, privacy: .public)
|
Path: \\(path, privacy: .public)
|
||||||
Params: \\(String(describing: params ?? [:]), privacy: .public)
|
Params: \\(self.formattedParams(params), privacy: .public)
|
||||||
\""")
|
\""")
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -248,10 +259,10 @@ enum AnalyticsGenerator {
|
|||||||
if isDebugMode {
|
if isDebugMode {
|
||||||
logger.debug(\"""
|
logger.debug(\"""
|
||||||
📊 Event:
|
📊 Event:
|
||||||
Name: \\(name, privacy: .public)
|
Name: \\(name, privacy: .public)
|
||||||
Action: \\(action.isEmpty ? "-" : action, privacy: .public)
|
Action: \\(action.isEmpty ? "-" : action, privacy: .public)
|
||||||
Category: \\(category.isEmpty ? "-" : category, privacy: .public)
|
Category: \\(category.isEmpty ? "-" : category, privacy: .public)
|
||||||
Params: \\(String(describing: params ?? [:]), privacy: .public)
|
Params: \\(self.formattedParams(params), privacy: .public)
|
||||||
\""")
|
\""")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user