feature: add keycard metric events (#21794)
This change adds some metrics events for tracking when keycard users have reached an unavailable feature, when keycard users have successfully logged in, and when keycard users have succeeded or failed to migrate to keycard.
This commit is contained in:
parent
6774271d9a
commit
8878bf096c
|
@ -53,7 +53,13 @@
|
|||
(conj (navigation-event (name view-id)))
|
||||
|
||||
(= :screen/onboarding.syncing-results view-id)
|
||||
(conj (key-value-event "onboarding-completed")))))
|
||||
(conj (key-value-event "onboarding-completed"))
|
||||
|
||||
(= :screen/keycard.migrate.success view-id)
|
||||
(conj (key-value-event "keycard-migration-succeeded"))
|
||||
|
||||
(= :screen/keycard.migrate.fail view-id)
|
||||
(conj (key-value-event "keycard-migration-failed")))))
|
||||
|
||||
(defn navigated-to-collectibles-tab-event
|
||||
[location]
|
||||
|
|
|
@ -30,7 +30,8 @@
|
|||
{:keys [color name images]} (rf/sub [:communities/community id])
|
||||
keycard? (rf/sub [:keycard/keycard-profile?])
|
||||
keycard-feature-unavailable (rn/use-callback
|
||||
#(rf/dispatch [:keycard/feature-unavailable-show]))]
|
||||
#(rf/dispatch [:keycard/feature-unavailable-show
|
||||
{:feature-name :community.request-to-join}]))]
|
||||
[rn/safe-area-view {:flex 1}
|
||||
[gesture/scroll-view {:style style/container}
|
||||
[rn/view style/page-container
|
||||
|
|
|
@ -147,7 +147,8 @@
|
|||
[:show-bottom-sheet {:content token-gated-communities-info}])
|
||||
keycard? (rf/sub [:keycard/keycard-profile?])
|
||||
keycard-feature-unavailable (rn/use-callback
|
||||
#(rf/dispatch [:keycard/feature-unavailable-show]))]
|
||||
#(rf/dispatch [:keycard/feature-unavailable-show
|
||||
{:feature-name :community.request-to-join}]))]
|
||||
|
||||
(cond
|
||||
networks-not-supported?
|
||||
|
|
|
@ -1,12 +1,27 @@
|
|||
(ns status-im.contexts.keycard.feature-unavailable.events
|
||||
(:require
|
||||
[status-im.constants :as constants]
|
||||
[status-im.contexts.keycard.feature-unavailable.view :as feature-unavailable]
|
||||
[utils.re-frame :as rf]))
|
||||
|
||||
(rf/reg-event-fx
|
||||
:keycard/feature-unavailable-upvote
|
||||
(fn [_ [{:keys [feature-name]}]]
|
||||
{:fx [[:dispatch [:open-url constants/mobile-upvote-link]]
|
||||
[:dispatch
|
||||
[:centralized-metrics/track
|
||||
:metric/feature-unavailable-upvote
|
||||
{:feature-name feature-name}]]]}))
|
||||
|
||||
(rf/reg-event-fx
|
||||
:keycard/feature-unavailable-show
|
||||
(fn [_ [options]]
|
||||
(fn [_ [{:keys [feature-name theme] :as options}]]
|
||||
{:fx [[:dispatch
|
||||
[:show-bottom-sheet
|
||||
{:theme (:theme options)
|
||||
:content feature-unavailable/view}]]]}))
|
||||
{:theme theme
|
||||
:content (fn []
|
||||
(feature-unavailable/view options))}]]
|
||||
[:dispatch
|
||||
[:centralized-metrics/track
|
||||
:metric/feature-unavailable
|
||||
{:feature-name feature-name}]]]}))
|
||||
|
|
|
@ -1,16 +1,15 @@
|
|||
(ns status-im.contexts.keycard.feature-unavailable.view
|
||||
(:require
|
||||
[quo.core :as quo]
|
||||
[status-im.constants :as constants]
|
||||
[utils.i18n :as i18n]
|
||||
[utils.re-frame :as rf]))
|
||||
|
||||
(defn on-upvote
|
||||
[]
|
||||
(rf/dispatch [:open-url constants/mobile-upvote-link]))
|
||||
[feature-name]
|
||||
(rf/dispatch [:keycard/feature-unavailable-upvote {:feature-name feature-name}]))
|
||||
|
||||
(defn view
|
||||
[]
|
||||
[{:keys [feature-name]}]
|
||||
[:<>
|
||||
[quo/drawer-top
|
||||
{:title (i18n/label :t/feature-unavailable)
|
||||
|
@ -24,5 +23,5 @@
|
|||
[quo/text
|
||||
{:style {:text-decoration-line :underline}
|
||||
:size :paragraph-2
|
||||
:on-press on-upvote}
|
||||
:on-press #(on-upvote feature-name)}
|
||||
(i18n/label :t/upvote-it)]]]])
|
||||
|
|
|
@ -47,7 +47,8 @@
|
|||
settings
|
||||
{:log-level log-level}))
|
||||
(assoc-in [:activity-center :loading?] true)
|
||||
(dissoc :centralized-metrics/onboarding-enabled?))]
|
||||
(dissoc :centralized-metrics/onboarding-enabled?))
|
||||
keycard? (get-in new-db [:profile/profile :keycard-pairing])]
|
||||
{:db (cond-> new-db
|
||||
pairing-completed? (dissoc :syncing))
|
||||
:fx (into [[:json-rpc/call
|
||||
|
@ -75,8 +76,10 @@
|
|||
[:effects.chat/open-last-chat (:key-uid profile-overview)])
|
||||
|
||||
(when (:centralized-metrics/onboarding-enabled? db)
|
||||
[:dispatch [:profile.settings/toggle-telemetry true]])]
|
||||
[:dispatch [:profile.settings/toggle-telemetry true]])
|
||||
|
||||
(when keycard?
|
||||
[:dispatch [:centralized-metrics/track :metric/keycard-login]])]
|
||||
(cond
|
||||
pairing-completed?
|
||||
[[:dispatch [:update-theme-and-init-root :screen/onboarding.syncing-results]]]
|
||||
|
|
|
@ -10,7 +10,9 @@
|
|||
[button-label theme keycard-profile?]
|
||||
(fn []
|
||||
(if keycard-profile?
|
||||
(rf/dispatch [:keycard/feature-unavailable-show {:theme :dark}])
|
||||
(rf/dispatch [:keycard/feature-unavailable-show
|
||||
{:theme :dark
|
||||
:feature-name :settings.enable-biometrics}])
|
||||
(rf/dispatch
|
||||
[:standard-auth/authorize-with-password
|
||||
{:blur? true
|
||||
|
|
|
@ -41,8 +41,10 @@
|
|||
other-devices)
|
||||
keycard? (rf/sub [:keycard/keycard-profile?])
|
||||
keycard-feature-unavailable (rn/use-callback
|
||||
#(rf/dispatch [:keycard/feature-unavailable-show
|
||||
{:theme :dark}]))]
|
||||
#(rf/dispatch
|
||||
[:keycard/feature-unavailable-show
|
||||
{:theme :dark
|
||||
:feature-name :settings.setup-syncing}]))]
|
||||
[quo/overlay {:type :shell :top-inset? true}
|
||||
[quo/page-nav
|
||||
{:type :no-title
|
||||
|
|
|
@ -48,7 +48,8 @@
|
|||
{:icon-name :i/dapps
|
||||
:on-press #(rf/dispatch
|
||||
(if keycard?
|
||||
[:keycard/feature-unavailable-show]
|
||||
[:keycard/feature-unavailable-show
|
||||
{:feature-name :wallet.show-connected-dapps}]
|
||||
[:navigate-to :screen/wallet.connected-dapps]))})
|
||||
(when-not sending-collectible?
|
||||
{:content-type :account-switcher
|
||||
|
|
|
@ -36,7 +36,9 @@
|
|||
(cond
|
||||
|
||||
keycard?
|
||||
{:fx [[:dispatch [:keycard/feature-unavailable-show]]]}
|
||||
{:fx [[:dispatch
|
||||
[:keycard/feature-unavailable-show
|
||||
{:feature-name :wallet.scan-dapp-connection}]]]}
|
||||
|
||||
(or (not valid-wc-uri?)
|
||||
(not version-supported?)
|
||||
|
|
Loading…
Reference in New Issue