From 9eb9b0b880b22ed9029d40e879bc215cc764e8e4 Mon Sep 17 00:00:00 2001 From: bmarty Date: Mon, 11 Apr 2022 00:05:15 +0000 Subject: [PATCH] Sync analytics plan --- .../app/features/analytics/plan/Signup.kt | 84 +++++++++++++++++++ 1 file changed, 84 insertions(+) create mode 100644 vector/src/main/java/im/vector/app/features/analytics/plan/Signup.kt diff --git a/vector/src/main/java/im/vector/app/features/analytics/plan/Signup.kt b/vector/src/main/java/im/vector/app/features/analytics/plan/Signup.kt new file mode 100644 index 0000000000..328340fd2f --- /dev/null +++ b/vector/src/main/java/im/vector/app/features/analytics/plan/Signup.kt @@ -0,0 +1,84 @@ +/* + * Copyright (c) 2021 New Vector Ltd + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package im.vector.app.features.analytics.plan + +import im.vector.app.features.analytics.itf.VectorAnalyticsEvent + +// GENERATED FILE, DO NOT EDIT. FOR MORE INFORMATION VISIT +// https://github.com/matrix-org/matrix-analytics-events/ + +/** + * Triggered once onboarding has completed, but only if the user registered a + * new account. + */ +data class Signup( + /** + * The type of authentication that was used to sign up. + */ + val authenticationType: AuthenticationType, +) : VectorAnalyticsEvent { + + enum class AuthenticationType { + /** + * Social login using Apple. + */ + Apple, + + /** + * Social login using Facebook. + */ + Facebook, + + /** + * Social login using GitHub. + */ + GitHub, + + /** + * Social login using GitLab. + */ + GitLab, + + /** + * Social login using Google. + */ + Google, + + /** + * Registration using some other mechanism such as fallback. + */ + Other, + + /** + * Registration with a username and password. + */ + Password, + + /** + * Registration using another SSO provider. + */ + SSO, + } + + override fun getName() = "Signup" + + override fun getProperties(): Map? { + return mutableMapOf().apply { + put("authenticationType", authenticationType.name) + }.takeIf { it.isNotEmpty() } + } +}