Skip to content
This repository was archived by the owner on Sep 15, 2025. It is now read-only.

Commit 9139c2f

Browse files
committed
Rename StatsSiteMetricsResponse and make Metric public
1 parent 0a0dac0 commit 9139c2f

File tree

5 files changed

+21
-20
lines changed

5 files changed

+21
-20
lines changed

Package.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@ let package = Package(
1111
targets: [
1212
.binaryTarget(
1313
name: "WordPressKit",
14-
url: "https://github.com/user-attachments/files/21328988/WordPressKit.zip",
15-
checksum: "963e7189b0b2e207267c94138f2b08dd2d26d3fc5cbedae8b38d49a2c1e7d72b"
14+
url: "https://github.com/user-attachments/files/21335415/WordPressKit.zip",
15+
checksum: "bed68c5416321ef59721805f4bb31ec5fc198b57f73f35250e9b35a5cb5fbd5e"
1616
),
1717
]
1818
)

Sources/WordPressKit/Models/Stats/Time Interval/StatsSiteStats.swift renamed to Sources/WordPressKit/Models/Stats/Time Interval/StatsSiteMetricsResponse.swift

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
import Foundation
22

3-
public struct StatsSiteStats {
3+
public struct StatsSiteMetricsResponse {
44
public var period: StatsPeriodUnit
55
public var periodEndDate: Date
66
public let data: [PeriodData]
77

8-
enum Metric: String, CaseIterable {
8+
public enum Metric: String, CaseIterable {
99
case views
1010
case visitors
1111
case likes
@@ -15,14 +15,14 @@ public struct StatsSiteStats {
1515

1616
public struct PeriodData {
1717
/// Periods date in the site timezone.
18-
var date: Date
19-
var views: Int?
20-
var visitors: Int?
21-
var likes: Int?
22-
var comments: Int?
23-
var posts: Int?
18+
public var date: Date
19+
public var views: Int?
20+
public var visitors: Int?
21+
public var likes: Int?
22+
public var comments: Int?
23+
public var posts: Int?
2424

25-
subscript(metric: Metric) -> Int? {
25+
public subscript(metric: Metric) -> Int? {
2626
switch metric {
2727
case .views: views
2828
case .visitors: visitors
@@ -34,7 +34,7 @@ public struct StatsSiteStats {
3434
}
3535
}
3636

37-
extension StatsSiteStats: StatsTimeIntervalData {
37+
extension StatsSiteMetricsResponse: StatsTimeIntervalData {
3838
public static var pathComponent: String {
3939
"stats/visits"
4040
}

Sources/WordPressKit/Services/StatsServiceRemoteV2.swift

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -115,13 +115,15 @@ open class StatsServiceRemoteV2: ServiceRemoteWordPressComREST {
115115
let pathComponent = TimeStatsType.pathComponent
116116
let path = self.path(forEndpoint: "sites/\(siteID)/\(pathComponent)/", withVersion: ._1_1)
117117

118+
let dateFormatter = period == .hour ? hourlyDateFormatter : periodDataQueryDateFormatter
119+
118120
var staticProperties = ["period": period.stringValue,
119121
"unit": unit?.stringValue ?? period.stringValue,
120-
"date": periodDataQueryDateFormatter.string(from: endingOn)] as [String: AnyObject]
122+
"date": dateFormatter.string(from: endingOn)] as [String: AnyObject]
121123

122124
if let startDate {
123125
staticProperties["period"] = nil
124-
staticProperties["start_date"] = periodDataQueryDateFormatter.string(from: startDate) as AnyObject
126+
staticProperties["start_date"] = dateFormatter.string(from: startDate) as AnyObject
125127
}
126128

127129
let classProperties = TimeStatsType.queryProperties(with: endingOn, period: unit ?? period, maxCount: limit) as [String: AnyObject]
@@ -130,7 +132,6 @@ open class StatsServiceRemoteV2: ServiceRemoteWordPressComREST {
130132
return val1
131133
}
132134

133-
let dateFormatter = period == .hour ? hourlyDateFormatter : periodDataQueryDateFormatter
134135
wordPressComRESTAPI.get(path, parameters: properties, success: { (response, _) in
135136
guard
136137
let jsonResponse = response as? [String: AnyObject],

Tests/WordPressKitTests/Tests/StatsRemoteV2Tests.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -665,7 +665,7 @@ class StatsRemoteV2Tests: RemoteTestCase, RESTTestable {
665665

666666
let date = Calendar.current.date(from: DateComponents(year: 2025, month: 7, day: 18))!
667667

668-
remote.getData(for: .hour, unit: .hour, startDate: date, endingOn: date) { (stats: StatsSiteStats?, error: Error?) in
668+
remote.getData(for: .hour, unit: .hour, startDate: date, endingOn: date) { (stats: StatsSiteMetricsResponse?, error: Error?) in
669669
XCTAssertNil(error)
670670
XCTAssertNotNil(stats)
671671

WordPressKit.xcodeproj/project.pbxproj

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@
4545
0C938A2B2C416DE0009BA7B2 /* DisplayableImageHelper.m in Sources */ = {isa = PBXBuildFile; fileRef = 0C938A292C416DE0009BA7B2 /* DisplayableImageHelper.m */; };
4646
0C938A2C2C416DE0009BA7B2 /* DisplayableImageHelper.h in Headers */ = {isa = PBXBuildFile; fileRef = 0C938A2A2C416DE0009BA7B2 /* DisplayableImageHelper.h */; settings = {ATTRIBUTES = (Public, ); }; };
4747
0C9CD7992B9A107E0045BE03 /* RemotePostParameters.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0C9CD7982B9A107E0045BE03 /* RemotePostParameters.swift */; };
48-
0CAD70302E2C017500EFD4BC /* StatsSiteStats.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0CAD702F2E2C017500EFD4BC /* StatsSiteStats.swift */; };
48+
0CAD70302E2C017500EFD4BC /* StatsSiteMetricsResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0CAD702F2E2C017500EFD4BC /* StatsSiteMetricsResponse.swift */; };
4949
0CAD70322E2C0AAF00EFD4BC /* stats-visits-hourly.json in Resources */ = {isa = PBXBuildFile; fileRef = 0CAD70312E2C0AAF00EFD4BC /* stats-visits-hourly.json */; };
5050
0CB1905E2A2A5E83004D3E80 /* BlazeCampaign.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0CB1905D2A2A5E83004D3E80 /* BlazeCampaign.swift */; };
5151
0CB190612A2A6A13004D3E80 /* blaze-campaigns-search.json in Resources */ = {isa = PBXBuildFile; fileRef = 0CB1905F2A2A6943004D3E80 /* blaze-campaigns-search.json */; };
@@ -831,7 +831,7 @@
831831
0C938A292C416DE0009BA7B2 /* DisplayableImageHelper.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DisplayableImageHelper.m; sourceTree = "<group>"; };
832832
0C938A2A2C416DE0009BA7B2 /* DisplayableImageHelper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DisplayableImageHelper.h; sourceTree = "<group>"; };
833833
0C9CD7982B9A107E0045BE03 /* RemotePostParameters.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RemotePostParameters.swift; sourceTree = "<group>"; };
834-
0CAD702F2E2C017500EFD4BC /* StatsSiteStats.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StatsSiteStats.swift; sourceTree = "<group>"; };
834+
0CAD702F2E2C017500EFD4BC /* StatsSiteMetricsResponse.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StatsSiteMetricsResponse.swift; sourceTree = "<group>"; };
835835
0CAD70312E2C0AAF00EFD4BC /* stats-visits-hourly.json */ = {isa = PBXFileReference; lastKnownFileType = text.json; path = "stats-visits-hourly.json"; sourceTree = "<group>"; };
836836
0CB1905D2A2A5E83004D3E80 /* BlazeCampaign.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BlazeCampaign.swift; sourceTree = "<group>"; };
837837
0CB1905F2A2A6943004D3E80 /* blaze-campaigns-search.json */ = {isa = PBXFileReference; lastKnownFileType = text.json; path = "blaze-campaigns-search.json"; sourceTree = "<group>"; };
@@ -2278,7 +2278,7 @@
22782278
40819772221E10C900A298E4 /* StatsPublishedPostsTimeIntervalData.swift */,
22792279
404057C4221B30400060250C /* StatsSearchTermTimeIntervalData.swift */,
22802280
40819777221F00E600A298E4 /* StatsSummaryTimeIntervalData.swift */,
2281-
0CAD702F2E2C017500EFD4BC /* StatsSiteStats.swift */,
2281+
0CAD702F2E2C017500EFD4BC /* StatsSiteMetricsResponse.swift */,
22822282
404057C8221B789B0060250C /* StatsTopAuthorsTimeIntervalData.swift */,
22832283
404057D5221C92660060250C /* StatsTopClicksTimeIntervalData.swift */,
22842284
404057D1221C56AB0060250C /* StatsTopCountryTimeIntervalData.swift */,
@@ -3542,7 +3542,7 @@
35423542
0CCD4C5C2C41700B00B53F9A /* UIDevice+Extensions.swift in Sources */,
35433543
74A44DD11F13C64B006CD8F4 /* RemoteNotificationSettings.swift in Sources */,
35443544
FEF7419D28085D89002C4203 /* RemoteBloggingPrompt.swift in Sources */,
3545-
0CAD70302E2C017500EFD4BC /* StatsSiteStats.swift in Sources */,
3545+
0CAD70302E2C017500EFD4BC /* StatsSiteMetricsResponse.swift in Sources */,
35463546
74DA56331F06EAF000FE9BF4 /* MediaServiceRemoteREST.m in Sources */,
35473547
17CD0CC320C58A0D000D9620 /* ReaderSiteSearchServiceRemote.swift in Sources */,
35483548
74DA563B1F06EB3000FE9BF4 /* RemoteMedia.m in Sources */,

0 commit comments

Comments
 (0)