Skip to content

Commit 224eea6

Browse files
committed
Add StatsTimeRange
1 parent 02688a8 commit 224eea6

File tree

2 files changed

+32
-0
lines changed

2 files changed

+32
-0
lines changed
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
/// Represents the time range for an Order Stats v4 model.
2+
/// This is a local property and not in the remote response.
3+
///
4+
/// - today: hourly data starting midnight today until now.
5+
/// - thisWeek: daily data starting Sunday of this week until now.
6+
/// - thisMonth: daily data starting 1st of this month until now.
7+
/// - thisYear: monthly data starting January of this year until now.
8+
enum StatsTimeRange: String {
9+
case today
10+
case thisWeek
11+
case thisMonth
12+
case thisYear
13+
}
14+
15+
extension StatsTimeRange {
16+
init(_ timeRange: IntentTimeRange) {
17+
switch timeRange {
18+
case .unknown, .today:
19+
self = .today
20+
case .thisWeek:
21+
self = .thisWeek
22+
case .thisMonth:
23+
self = .thisMonth
24+
case .thisYear:
25+
self = .thisYear
26+
}
27+
}
28+
}

WooCommerce/WooCommerce.xcodeproj/project.pbxproj

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1148,6 +1148,7 @@
11481148
AEA622B2274669D3002A9B57 /* AddOrderCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = AEA622B1274669D3002A9B57 /* AddOrderCoordinator.swift */; };
11491149
AEA622B427466B78002A9B57 /* BottomSheetOrderType.swift in Sources */ = {isa = PBXBuildFile; fileRef = AEA622B327466B78002A9B57 /* BottomSheetOrderType.swift */; };
11501150
AEA622B727468790002A9B57 /* AddOrderCoordinatorTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = AEA622B627468790002A9B57 /* AddOrderCoordinatorTests.swift */; };
1151+
AEA7840428FEE82A000485FC /* StatsTimeRange.swift in Sources */ = {isa = PBXBuildFile; fileRef = AEA7840328FEE82A000485FC /* StatsTimeRange.swift */; };
11511152
AEACCB6D2785FF4A000D01F0 /* NavigationRow.swift in Sources */ = {isa = PBXBuildFile; fileRef = AEACCB6C2785FF4A000D01F0 /* NavigationRow.swift */; };
11521153
AEB73C0C25CD734200A8454A /* AttributePickerViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = AEB73C0B25CD734200A8454A /* AttributePickerViewModel.swift */; };
11531154
AEB73C1725CD8E5800A8454A /* AttributePickerViewModelTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = AEB73C1625CD8E5800A8454A /* AttributePickerViewModelTests.swift */; };
@@ -3046,6 +3047,7 @@
30463047
AEA622B1274669D3002A9B57 /* AddOrderCoordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AddOrderCoordinator.swift; sourceTree = "<group>"; };
30473048
AEA622B327466B78002A9B57 /* BottomSheetOrderType.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BottomSheetOrderType.swift; sourceTree = "<group>"; };
30483049
AEA622B627468790002A9B57 /* AddOrderCoordinatorTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AddOrderCoordinatorTests.swift; sourceTree = "<group>"; };
3050+
AEA7840328FEE82A000485FC /* StatsTimeRange.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = StatsTimeRange.swift; sourceTree = "<group>"; };
30493051
AEACCB6C2785FF4A000D01F0 /* NavigationRow.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NavigationRow.swift; sourceTree = "<group>"; };
30503052
AEB73C0B25CD734200A8454A /* AttributePickerViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AttributePickerViewModel.swift; sourceTree = "<group>"; };
30513053
AEB73C1625CD8E5800A8454A /* AttributePickerViewModelTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AttributePickerViewModelTests.swift; sourceTree = "<group>"; };
@@ -5378,6 +5380,7 @@
53785380
265C99E028B9BA43005E6117 /* StoreInfoWidget.swift */,
53795381
265C99E328B9C834005E6117 /* StoreInfoProvider.swift */,
53805382
260DE20828CA7CE2009ECD7C /* StoreInfoDataService.swift */,
5383+
AEA7840328FEE82A000485FC /* StatsTimeRange.swift */,
53815384
265C99E528B9CB8E005E6117 /* StoreInfoViewModifiers.swift */,
53825385
3F1FA84728B60125009E246C /* StoreWidgets.intentdefinition */,
53835386
3F1FA84828B60126009E246C /* Assets.xcassets */,
@@ -9395,6 +9398,7 @@
93959398
AED9012D28E5F517002B4572 /* AppLinkWidget.swift in Sources */,
93969399
2608C50728C941D600C9DFC0 /* UserDefaults+Woo.swift in Sources */,
93979400
265C99E628B9CB8E005E6117 /* StoreInfoViewModifiers.swift in Sources */,
9401+
AEA7840428FEE82A000485FC /* StatsTimeRange.swift in Sources */,
93989402
2608C50628C93AB700C9DFC0 /* WooConstants.swift in Sources */,
93999403
260DE20A28CA7CFE009ECD7C /* StoreInfoDataService.swift in Sources */,
94009404
AE56E73428E76CDB00A1292B /* StoreInfoInlineWidget.swift in Sources */,

0 commit comments

Comments
 (0)