Retours sur la structure du code
Some checks failed
gitea-openium/resgen.swift/pipeline/head There was a failure building this commit

This commit is contained in:
2023-12-08 17:37:21 +01:00
parent 6f8e3b6664
commit ee5055efa5
13 changed files with 177 additions and 143 deletions

View File

@ -10,13 +10,13 @@ import ToolCore
import CoreVideo
class AnalyticsGenerator {
static var targets: [Analytics.TargetType] = []
static var targets: [TrackerType] = []
static func writeExtensionFiles(sections: [AnalyticsCategory], target: String, tags: [String], staticVar: Bool, extensionName: String, extensionFilePath: String) {
// Get target type from enum
let targetsString: [String] = target.components(separatedBy: " ")
Analytics.TargetType.allCases.forEach { enumTarget in
TrackerType.allCases.forEach { enumTarget in
if targetsString.contains(enumTarget.value) {
targets.append(enumTarget)
}
@ -58,7 +58,7 @@ class AnalyticsGenerator {
\(Self.getImport())
\(Self.getAnalytics())
\(Self.getAnalyticsProtocol())
// MARK: - Manager
class AnalyticsManager {
@ -91,10 +91,10 @@ class AnalyticsGenerator {
private static func getImport() -> String {
var result: [String] = []
if targets.contains(Analytics.TargetType.matomo) {
if targets.contains(TrackerType.matomo) {
result.append("import MatomoTracker")
}
if targets.contains(Analytics.TargetType.firebase) {
if targets.contains(TrackerType.firebase) {
result.append("import FirebaseAnalytics")
}
@ -136,13 +136,13 @@ class AnalyticsGenerator {
var content: [String] = []
let footer = " }"
if targets.contains(Analytics.TargetType.matomo) {
if targets.contains(TrackerType.matomo) {
header = "func configure(siteId: String, url: String) {"
} else if targets.contains(Analytics.TargetType.firebase) {
} else if targets.contains(TrackerType.firebase) {
header = "func configure() {"
}
if targets.contains(Analytics.TargetType.matomo) {
if targets.contains(TrackerType.matomo) {
content.append("""
managers.append(
MatomoAnalyticsManager(
@ -152,7 +152,7 @@ class AnalyticsGenerator {
)
""")
}
if targets.contains(Analytics.TargetType.firebase) {
if targets.contains(TrackerType.firebase) {
content.append(" managers.append(FirebaseAnalyticsManager())")
}
@ -164,7 +164,7 @@ class AnalyticsGenerator {
.joined(separator: "\n")
}
private static func getAnalytics() -> String {
private static func getAnalyticsProtocol() -> String {
let proto = """
// MARK: - Protocol
@ -182,12 +182,12 @@ class AnalyticsGenerator {
var result: [String] = [proto]
if targets.contains(Analytics.TargetType.matomo) {
result.append(MatomoGenerator.service.content)
if targets.contains(TrackerType.matomo) {
result.append(MatomoGenerator.service)
}
if targets.contains(Analytics.TargetType.firebase) {
result.append(FirebaseGenerator.service.content)
if targets.contains(TrackerType.firebase) {
result.append(FirebaseGenerator.service)
}
return result.joined(separator: "\n")

View File

@ -8,19 +8,20 @@
import Foundation
enum FirebaseGenerator {
case service
var content: String {
static var service: String {
[
FirebaseGenerator.service.header,
FirebaseGenerator.service.logScreen,
FirebaseGenerator.service.logEvent,
FirebaseGenerator.service.footer
FirebaseGenerator.header,
FirebaseGenerator.logScreen,
FirebaseGenerator.logEvent,
FirebaseGenerator.footer
]
.joined(separator: "\n")
}
private var header: String {
// MARK: - Private vars
private static var header: String {
"""
// MARK: - Firebase
@ -28,7 +29,7 @@ enum FirebaseGenerator {
"""
}
private var logScreen: String {
private static var logScreen: String {
"""
func logScreen(name: String, path: String) {
var parameters = [
@ -44,7 +45,7 @@ enum FirebaseGenerator {
"""
}
private var logEvent: String {
private static var logEvent: String {
"""
func logEvent(
name: String,
@ -71,7 +72,7 @@ enum FirebaseGenerator {
"""
}
private var footer: String {
private static var footer: String {
"""
}

View File

@ -8,20 +8,21 @@
import Foundation
enum MatomoGenerator {
case service
var content: String {
static var service: String {
[
MatomoGenerator.service.header,
MatomoGenerator.service.setup,
MatomoGenerator.service.logScreen,
MatomoGenerator.service.logEvent,
MatomoGenerator.service.footer
MatomoGenerator.header,
MatomoGenerator.setup,
MatomoGenerator.logScreen,
MatomoGenerator.logEvent,
MatomoGenerator.footer
]
.joined(separator: "\n")
}
private var header: String {
// MARK: - Private vars
private static var header: String {
"""
// MARK: - Matomo
@ -34,7 +35,7 @@ enum MatomoGenerator {
"""
}
private var setup: String {
private static var setup: String {
"""
// MARK: - Init
@ -63,7 +64,7 @@ enum MatomoGenerator {
"""
}
private var logScreen: String {
private static var logScreen: String {
"""
func logScreen(name: String, path: String) {
guard !tracker.isOptedOut else { return }
@ -79,7 +80,7 @@ enum MatomoGenerator {
"""
}
private var logEvent: String {
private static var logEvent: String {
"""
func logEvent(
name: String,
@ -100,7 +101,7 @@ enum MatomoGenerator {
"""
}
private var footer: String {
private static var footer: String {
"""
}