Skip to content

Commit 8244653

Browse files
committed
Add a root view for the analytics hub
1 parent 7cfa850 commit 8244653

File tree

3 files changed

+35
-1
lines changed

3 files changed

+35
-1
lines changed
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
import SwiftUI
2+
import Yosemite
3+
4+
final class AnalyticsHubHostingViewController: UIHostingController<AnalyticsHubView> {
5+
init(timeRange: StatsTimeRangeV4) {
6+
super.init(rootView: AnalyticsHubView(timeRange: timeRange))
7+
}
8+
9+
@available(*, unavailable)
10+
required dynamic init?(coder aDecoder: NSCoder) {
11+
fatalError("init(coder:) has not been implemented")
12+
}
13+
}
14+
15+
struct AnalyticsHubView: View {
16+
let timeRange: StatsTimeRangeV4
17+
18+
var body: some View {
19+
Text("Selected time range: \(timeRange.rawValue)")
20+
}
21+
}

WooCommerce/Classes/ViewRelated/Dashboard/Stats v4/StoreStatsAndTopPerformersPeriodViewController.swift

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -357,7 +357,8 @@ private extension StoreStatsAndTopPerformersPeriodViewController {
357357
}
358358

359359
@objc func seeMoreButtonTapped() {
360-
// TODO: navigate to analytics hub view
360+
let analyticsHubVC = AnalyticsHubHostingViewController(timeRange: timeRange)
361+
show(analyticsHubVC, sender: self)
361362
}
362363
}
363364

WooCommerce/WooCommerce.xcodeproj/project.pbxproj

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1159,6 +1159,7 @@
11591159
ABC35528D2D6BE6F516E5CEF /* InPersonPaymentsOnboardingError.swift in Sources */ = {isa = PBXBuildFile; fileRef = ABC35A4B736A0B2D8348DD08 /* InPersonPaymentsOnboardingError.swift */; };
11601160
ABC35F18E744C5576B986CB3 /* InPersonPaymentsUnavailableView.swift in Sources */ = {isa = PBXBuildFile; fileRef = ABC35055F8AC8C8EB649F421 /* InPersonPaymentsUnavailableView.swift */; };
11611161
AE1CC33829129A010021C8EF /* LinkBehavior.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE1CC33729129A010021C8EF /* LinkBehavior.swift */; };
1162+
AE2EA1142927F87B000392B6 /* AnalyticsHubView.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE2EA1132927F87B000392B6 /* AnalyticsHubView.swift */; };
11621163
AE3AA889290C303B00BE422D /* WebKitViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE3AA888290C303B00BE422D /* WebKitViewController.swift */; };
11631164
AE3AA88B290C30B900BE422D /* WebViewControllerConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE3AA88A290C30B900BE422D /* WebViewControllerConfiguration.swift */; };
11641165
AE3AA88D290C30E800BE422D /* WebProgressView.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE3AA88C290C30E800BE422D /* WebProgressView.swift */; };
@@ -3110,6 +3111,7 @@
31103111
ABC353433EABC5F0EC796222 /* CardReaderSettingsSearchingViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CardReaderSettingsSearchingViewController.swift; sourceTree = "<group>"; };
31113112
ABC35A4B736A0B2D8348DD08 /* InPersonPaymentsOnboardingError.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = InPersonPaymentsOnboardingError.swift; sourceTree = "<group>"; };
31123113
AE1CC33729129A010021C8EF /* LinkBehavior.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LinkBehavior.swift; sourceTree = "<group>"; };
3114+
AE2EA1132927F87B000392B6 /* AnalyticsHubView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AnalyticsHubView.swift; sourceTree = "<group>"; };
31133115
AE3AA888290C303B00BE422D /* WebKitViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WebKitViewController.swift; sourceTree = "<group>"; };
31143116
AE3AA88A290C30B900BE422D /* WebViewControllerConfiguration.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WebViewControllerConfiguration.swift; sourceTree = "<group>"; };
31153117
AE3AA88C290C30E800BE422D /* WebProgressView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WebProgressView.swift; sourceTree = "<group>"; };
@@ -6680,6 +6682,14 @@
66806682
path = FlowCoordinator;
66816683
sourceTree = "<group>";
66826684
};
6685+
AE2EA1122927F86C000392B6 /* AnalyticsHub */ = {
6686+
isa = PBXGroup;
6687+
children = (
6688+
AE2EA1132927F87B000392B6 /* AnalyticsHubView.swift */,
6689+
);
6690+
path = AnalyticsHub;
6691+
sourceTree = "<group>";
6692+
};
66836693
AE9E04732776034B003FA09E /* CustomerSection */ = {
66846694
isa = PBXGroup;
66856695
children = (
@@ -8047,6 +8057,7 @@
80478057
CE85FD5120F677460080B73E /* Dashboard */ = {
80488058
isa = PBXGroup;
80498059
children = (
8060+
AE2EA1122927F86C000392B6 /* AnalyticsHub */,
80508061
DE23CFF827462CD2003BE54E /* JetpackInstall */,
80518062
02F843D8273646190017FE12 /* JetpackConnectionPackageSites */,
80528063
028BAC4322F3AE3B008BB4AF /* Stats v4 */,
@@ -10193,6 +10204,7 @@
1019310204
CC254F2D26C17AB5005F3C82 /* BottomButtonView.swift in Sources */,
1019410205
DEF36DE92898D3CF00178AC2 /* AuthenticatedWebViewController.swift in Sources */,
1019510206
74334F36214AB130006D6AC5 /* ProductTableViewCell.swift in Sources */,
10207+
AE2EA1142927F87B000392B6 /* AnalyticsHubView.swift in Sources */,
1019610208
D8610D762570AE1F00A5DF27 /* NotWPErrorViewModel.swift in Sources */,
1019710209
0245465B24EE7637004F531C /* ProductFormEventLoggerProtocol.swift in Sources */,
1019810210
02C1853D27FF153A00ABD764 /* CardPresentRefundOrchestrator.swift in Sources */,

0 commit comments

Comments
 (0)