Add new analytics parameters pathSuffix
Some checks failed
openium/resgen.swift/pipeline/head There was a failure building this commit

This commit is contained in:
2026-01-21 11:39:46 +01:00
parent 7bbb702861
commit b9aac55a76
20 changed files with 216 additions and 70 deletions

View File

@@ -24,7 +24,8 @@ enum AnalyticsGenerator {
tags: [String],
isStatic: Bool,
outputFile: String,
visibility: ExtensionVisibility
visibility: ExtensionVisibility,
pathSuffix: String
) {
// Get target type from enum
let targetsString: [String] = target.components(separatedBy: " ")
@@ -44,7 +45,8 @@ enum AnalyticsGenerator {
sections: sections,
tags: tags,
isStatic: isStatic,
visibility: visibility
visibility: visibility,
pathSuffix: pathSuffix
)
// Write content
@@ -65,13 +67,15 @@ enum AnalyticsGenerator {
sections: [AnalyticsCategory],
tags: [String],
isStatic: Bool,
visibility: ExtensionVisibility
visibility: ExtensionVisibility,
pathSuffix: String
) -> String {
[
getHeader(
targets: targets,
isStatic: isStatic,
visibility: visibility
visibility: visibility,
pathSuffix: pathSuffix
),
getProperties(
sections: sections,
@@ -89,14 +93,15 @@ enum AnalyticsGenerator {
private static func getHeader(
targets: [TrackerType],
isStatic: Bool,
visibility: ExtensionVisibility
visibility: ExtensionVisibility,
pathSuffix: String
) -> String {
"""
// Generated by ResgenSwift.\(Analytics.toolName) \(ResgenSwiftVersion)
\(Self.getImport(targets: targets))
\(Self.getAnalyticsProtocol(targets: targets, visibility: visibility))
\(Self.getAnalyticsProtocol(targets: targets, visibility: visibility, pathSuffix: pathSuffix))
\(Self.getTrackerTypeEnum(targets: targets, visibility: visibility))
@@ -317,7 +322,8 @@ enum AnalyticsGenerator {
private static func getAnalyticsProtocol(
targets: [TrackerType],
visibility: ExtensionVisibility
visibility: ExtensionVisibility,
pathSuffix: String
) -> String {
let proto = """
// MARK: - Protocol
@@ -344,11 +350,11 @@ enum AnalyticsGenerator {
var result: [String] = [proto]
if targets.contains(TrackerType.matomo) {
result.append(MatomoGenerator.service)
result.append(MatomoGenerator.service(pathSuffix: pathSuffix))
}
if targets.contains(TrackerType.firebase) {
result.append(FirebaseGenerator.service)
result.append(FirebaseGenerator.service(pathSuffix: pathSuffix))
}
return result.joined(separator: "\n\n")