Skip to content

Commit 2489199

Browse files
committed
Merge branch 'trunk' into issue/7853-retrieval-and-view-jitm-analytics
# Conflicts: # WooCommerce/WooCommerceTests/ViewRelated/Dashboard/DashboardViewModelTests.swift
2 parents 80e41d5 + b5234ea commit 2489199

File tree

26 files changed

+213
-85
lines changed

26 files changed

+213
-85
lines changed

Experiments/Experiments/ABTest.swift

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,10 @@ public enum ABTest: String, CaseIterable {
1616
/// Experiment ref: pbxNRc-1S0-p2
1717
case aaTestLoggedOut = "woocommerceios_explat_aa_test_logged_out_202211"
1818

19+
/// A/B test for the Products Onboarding banner on the My Store dashboard.
20+
/// Experiment ref: pbxNRc-26F-p2
21+
case productsOnboardingBanner = "woocommerceios_products_onboarding_first_product_banner"
22+
1923
/// Returns a variation for the given experiment
2024
public var variation: Variation {
2125
ExPlat.shared?.experiment(rawValue) ?? .control
@@ -26,7 +30,7 @@ public enum ABTest: String, CaseIterable {
2630
/// When adding a new experiment, add it to the appropriate case depending on its context (logged-in or logged-out experience).
2731
public var context: ExperimentContext {
2832
switch self {
29-
case .aaTestLoggedIn202210:
33+
case .aaTestLoggedIn202210, .productsOnboardingBanner:
3034
return .loggedIn
3135
case .aaTestLoggedOut:
3236
return .loggedOut

Experiments/Experiments/DefaultFeatureFlagService.swift

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ public struct DefaultFeatureFlagService: FeatureFlagService {
1818
case .shippingLabelsOnboardingM1:
1919
return buildConfig == .localDeveloper || buildConfig == .alpha
2020
case .newToWooCommerceLinkInLoginPrologue:
21-
return true
21+
return false
2222
case .loginPrologueOnboarding:
2323
return true
2424
case .loginErrorNotifications:
@@ -33,8 +33,6 @@ public struct DefaultFeatureFlagService: FeatureFlagService {
3333
return true
3434
case .searchProductsBySKU:
3535
return true
36-
case .orderCreationSearchCustomers:
37-
return buildConfig == .localDeveloper || buildConfig == .alpha
3836
case .wpcomSignup:
3937
guard isFeatureFlagEnabled(.simplifiedLoginFlowI1) else {
4038
return buildConfig == .localDeveloper || buildConfig == .alpha

Experiments/Experiments/FeatureFlag.swift

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -70,10 +70,6 @@ public enum FeatureFlag: Int {
7070
///
7171
case searchProductsBySKU
7272

73-
/// Enables the Search Customers functionality in the Order Creation screen
74-
///
75-
case orderCreationSearchCustomers
76-
7773
/// Enables signing up for a WP.com account.
7874
///
7975
case wpcomSignup

Podfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,8 +65,8 @@ target 'WooCommerce' do
6565
pod 'Gridicons', '~> 1.2.0'
6666

6767
# To allow pod to pick up beta versions use -beta. E.g., 1.1.7-beta.1
68-
pod 'WordPressAuthenticator', '~> 4.0.0'
69-
# pod 'WordPressAuthenticator', :git => 'https://github.com/wordpress-mobile/WordPressAuthenticator-iOS.git', :commit => ''
68+
pod 'WordPressAuthenticator', '~> 4.1.0-beta.1'
69+
# pod 'WordPressAuthenticator', :git => 'https://github.com/wordpress-mobile/WordPressAuthenticator-iOS.git', :commit => 'f24fd9c6dbc73cfee583a7eba16fa81e2948fa43'
7070
# pod 'WordPressAuthenticator', :git => 'https://github.com/wordpress-mobile/WordPressAuthenticator-iOS.git', :branch => ''
7171
# pod 'WordPressAuthenticator', :path => '../WordPressAuthenticator-iOS'
7272

Podfile.lock

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ PODS:
4242
- WordPress-Aztec-iOS (1.11.0)
4343
- WordPress-Editor-iOS (1.11.0):
4444
- WordPress-Aztec-iOS (= 1.11.0)
45-
- WordPressAuthenticator (4.0.0):
45+
- WordPressAuthenticator (4.1.0-beta.1):
4646
- CocoaLumberjack (~> 3.5)
4747
- GoogleSignIn (~> 6.0.1)
4848
- Gridicons (~> 1.0)
@@ -91,7 +91,7 @@ DEPENDENCIES:
9191
- Sourcery (~> 1.0.3)
9292
- StripeTerminal (~> 2.7)
9393
- WordPress-Editor-iOS (~> 1.11.0)
94-
- WordPressAuthenticator (~> 4.0.0)
94+
- WordPressAuthenticator (~> 4.1.0-beta.1)
9595
- WordPressKit (~> 4.49.0)
9696
- WordPressShared (~> 1.15)
9797
- WordPressUI (~> 1.12.5)
@@ -101,6 +101,8 @@ DEPENDENCIES:
101101
- ZendeskSupportSDK (~> 5.0)
102102

103103
SPEC REPOS:
104+
https://github.com/wordpress-mobile/cocoapods-specs.git:
105+
- WordPressAuthenticator
104106
trunk:
105107
- Alamofire
106108
- AppAuth
@@ -123,7 +125,6 @@ SPEC REPOS:
123125
- UIDeviceIdentifier
124126
- WordPress-Aztec-iOS
125127
- WordPress-Editor-iOS
126-
- WordPressAuthenticator
127128
- WordPressKit
128129
- WordPressShared
129130
- WordPressUI
@@ -161,7 +162,7 @@ SPEC CHECKSUMS:
161162
UIDeviceIdentifier: af4e11e25a2ea670078e2bd677bb0e8144f9f063
162163
WordPress-Aztec-iOS: 050b34d4c3adfb7c60363849049b13d60683b348
163164
WordPress-Editor-iOS: 304098424f1051cb271546c99f906aac296b1b81
164-
WordPressAuthenticator: c0bdeec612e4e80d76ac7849f89d8405c1d43654
165+
WordPressAuthenticator: 1f3dabd0f7e95afca4efdd3b528417419b66250b
165166
WordPressKit: 96deb6ba37ea5eaec4ddcaa53eca04d653246152
166167
WordPressShared: 5477f179c7fe03b5d574f91adda66f67d131827e
167168
WordPressUI: c5be816f6c7b3392224ac21de9e521e89fa108ac
@@ -177,6 +178,6 @@ SPEC CHECKSUMS:
177178
ZendeskSupportProvidersSDK: 2bdf8544f7cd0fd4c002546f5704b813845beb2a
178179
ZendeskSupportSDK: 3a8e508ab1d9dd22dc038df6c694466414e037ba
179180

180-
PODFILE CHECKSUM: 56e66ae89d30a0b6cfc246d43c71ba38eff01e0d
181+
PODFILE CHECKSUM: 4286e3bac570110f96d064f4359aec6a46b2406a
181182

182183
COCOAPODS: 1.11.3

RELEASE-NOTES.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
11.1
44
-----
5-
5+
- [**] You can now search customers when creating or editing an order. [https://github.com/woocommerce/woocommerce-ios/issues/7741]
66

77
11.0
88
-----

WooCommerce/Classes/Analytics/WooAnalyticsEvent.swift

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1720,6 +1720,15 @@ extension WooAnalyticsEvent {
17201720
//
17211721
extension WooAnalyticsEvent {
17221722
enum ProductsOnboarding {
1723+
enum Keys: String {
1724+
case type
1725+
}
1726+
1727+
enum CreationType: String {
1728+
case manual
1729+
case template
1730+
}
1731+
17231732
/// Tracks when a store is eligible for products onboarding
17241733
///
17251734
static func storeIsEligible() -> WooAnalyticsEvent {
@@ -1731,5 +1740,11 @@ extension WooAnalyticsEvent {
17311740
static func bannerCTATapped() -> WooAnalyticsEvent {
17321741
WooAnalyticsEvent(statName: .productsOnboardingCTATapped, properties: [:])
17331742
}
1743+
1744+
/// Trackas when the merchants selects a product creation type.
1745+
///
1746+
static func productCreationTypeSelected(type: CreationType) -> WooAnalyticsEvent {
1747+
WooAnalyticsEvent(statName: .addProductCreationTypeSelected, properties: [Keys.type.rawValue: type.rawValue])
1748+
}
17341749
}
17351750
}

WooCommerce/Classes/Analytics/WooAnalyticsStat.swift

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -265,6 +265,8 @@ public enum WooAnalyticsStat: String {
265265
case orderCreateButtonTapped = "order_create_button_tapped"
266266
case orderCreationSuccess = "order_creation_success"
267267
case orderCreationFailed = "order_creation_failed"
268+
case orderCreationCustomerAdded = "order_creation_customer_added"
269+
case orderCreationCustomerSearch = "order_creation_customer_search"
268270
case orderContactAction = "order_contact_action"
269271
case orderCustomerAdd = "order_customer_add"
270272
case orderEditButtonTapped = "order_edit_button_tapped"
@@ -424,6 +426,7 @@ public enum WooAnalyticsStat: String {
424426

425427
// MARK: Add Product Events
426428
//
429+
case addProductCreationTypeSelected = "add_product_creation_type_selected"
427430
case addProductTypeSelected = "add_product_product_type_selected"
428431
case addProductPublishTapped = "add_product_publish_tapped"
429432
case addProductSaveAsDraftTapped = "add_product_save_as_draft_tapped"

WooCommerce/Classes/Authentication/AuthenticationConstants.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -121,10 +121,10 @@ struct AuthenticationConstants {
121121
comment: "Legal disclaimer for signing up. The underscores _..._ denote underline."
122122
)
123123

124-
/// Create a Store button in Simplified login flow
124+
/// Get Started button in Simplified login flow
125125
///
126126
static let createSiteButtonTitle = NSLocalizedString(
127-
"Create a Store",
127+
"Get Started",
128128
comment: "Button displayed on the prologue screen of the simplified login flow to create a new store"
129129
)
130130

WooCommerce/Classes/Authentication/AuthenticationManager.swift

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -55,9 +55,6 @@ class AuthenticationManager: Authentication {
5555
func initialize(loggedOutAppSettings: LoggedOutAppSettingsProtocol) {
5656
let isWPComMagicLinkPreferredToPassword = ServiceLocator.featureFlagService.isFeatureFlagEnabled(.loginMagicLinkEmphasis)
5757
let isWPComMagicLinkShownAsSecondaryActionOnPasswordScreen = ServiceLocator.featureFlagService.isFeatureFlagEnabled(.loginMagicLinkEmphasisM2)
58-
let isFeatureCarouselShown = ServiceLocator.featureFlagService.isFeatureFlagEnabled(.loginPrologueOnboarding) == false
59-
|| (loggedOutAppSettings.hasFinishedOnboarding == true &&
60-
ServiceLocator.featureFlagService.isFeatureFlagEnabled(.simplifiedLoginFlowI1) == false)
6158
let isSimplifiedLoginI1Enabled = ServiceLocator.featureFlagService.isFeatureFlagEnabled(.simplifiedLoginFlowI1)
6259
let isStoreCreationMVPEnabled = ServiceLocator.featureFlagService.isFeatureFlagEnabled(.storeCreationMVP)
6360
let configuration = WordPressAuthenticatorConfiguration(wpcomClientId: ApiCredentials.dotcomAppId,
@@ -117,7 +114,7 @@ class AuthenticationManager: Authentication {
117114
navBarBadgeColor: .primary,
118115
navBarBackgroundColor: .appBar,
119116
prologueTopContainerChildViewController:
120-
LoginPrologueViewController(isFeatureCarouselShown: isFeatureCarouselShown),
117+
LoginPrologueViewController(isFeatureCarouselShown: false),
121118
statusBarStyle: .default)
122119

123120
let getStartedInstructions = isSimplifiedLoginI1Enabled ?

0 commit comments

Comments
 (0)