Skip to content

Commit 0533c96

Browse files
committed
Add analytics events for package creation
1 parent 95a63c6 commit 0533c96

File tree

3 files changed

+18
-0
lines changed

3 files changed

+18
-0
lines changed

WooCommerce/Classes/Analytics/WooAnalyticsStat.swift

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -233,6 +233,9 @@ public enum WooAnalyticsStat: String {
233233
case shippingLabelAddressSuggestionsEditSelectedAddressButtonTapped = "shipping_label_address_suggestions_edit_selected_address_button_tapped"
234234
case shippingLabelAddressValidationFailed = "shipping_label_address_validation_failed"
235235
case shippingLabelAddressValidationSucceeded = "shipping_label_address_validation_succeeded"
236+
case shippingLabelAddPackageTapped = "shipping_label_add_package_tapped"
237+
case shippingLabelPackageAddedSuccessfully = "shipping_label_package_added_successfully"
238+
case shippingLabelAddPackageFailed = "shipping_label_add_package_failed"
236239

237240
// MARK: Receipt Events
238241
//

WooCommerce/Classes/ViewRelated/Orders/Order Details/Shipping Labels/Create Shipping Label Form/Package Details/Package Selection/Package Creation/ShippingLabelAddNewPackageViewModel.swift

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -135,11 +135,25 @@ private extension ShippingLabelAddNewPackageViewModel {
135135

136136
switch result {
137137
case .success:
138+
if customPackage != nil {
139+
ServiceLocator.analytics.track(.shippingLabelPackageAddedSuccessfully, withProperties: ["type": "custom"])
140+
}
141+
if predefinedOption != nil {
142+
ServiceLocator.analytics.track(.shippingLabelPackageAddedSuccessfully, withProperties: ["type": "predefined"])
143+
}
138144
self.syncPackageDetails() { success in
139145
onCompletion?(success)
140146
}
141147
case .failure(let error):
142148
self.error = error
149+
if customPackage != nil {
150+
ServiceLocator.analytics.track(.shippingLabelAddPackageFailed, withProperties: ["type": "custom",
151+
"error": error.localizedDescription])
152+
}
153+
if predefinedOption != nil {
154+
ServiceLocator.analytics.track(.shippingLabelAddPackageFailed, withProperties: ["type": "predefined",
155+
"error": error.localizedDescription])
156+
}
143157
DDLogError("⛔️ Error creating package: \(error.localizedDescription)")
144158
onCompletion?(false)
145159
}

WooCommerce/Classes/ViewRelated/Orders/Order Details/Shipping Labels/Create Shipping Label Form/Package Details/Package Selection/ShippingLabelPackageList.swift

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,7 @@ struct ShippingLabelPackageList: View {
7070
title: Localization.createPackageButton,
7171
image: .plusImage,
7272
onButtonTapped: {
73+
ServiceLocator.analytics.track(.shippingLabelAddPackageTapped)
7374
self.isShowingNewPackageCreation = true
7475
})
7576
}

0 commit comments

Comments
 (0)