[APP-705] Metrics revamp pt2 (#896)

* export track function from analytics.tsx

* fix create account tracking

* fix tracking sign in

* add custom feed events

* fix type errors

* refactor create post event

* add profile follow & unfollow events

* refactor PostsFeedSliceModel into its own file

* refactor PostThreadItemModel into its own file

* reorganize code a lil bit

* refactor post-thread-item to use post-feed-item model under the hood

* add post events

* add post reply tracking

* track custom feed load more

* track list subscribe and unsubscribe
This commit is contained in:
Ansh 2023-06-27 08:11:05 -07:00 committed by GitHub
parent bfaa6d73f3
commit a8bbaa06c7
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
22 changed files with 436 additions and 386 deletions

View file

@ -56,9 +56,10 @@ export const CreateAccount = observer(
} else {
try {
await model.submit()
track('Create Account')
} catch {
// dont need to handle here
} finally {
track('Try Create Account')
}
}
}, [model, track])

View file

@ -327,7 +327,6 @@ const LoginForm = ({
identifier: fullIdent,
password,
})
track('Sign In', {resumedSession: false})
} catch (e: any) {
const errMsg = e.toString()
store.log.warn('Failed to login', e)
@ -341,6 +340,8 @@ const LoginForm = ({
} else {
setError(cleanError(errMsg))
}
} finally {
track('Sign In', {resumedSession: false})
}
}

View file

@ -169,9 +169,6 @@ export const ComposePost = observer(function ComposePost({
knownHandles: autocompleteView.knownHandles,
langs: store.preferences.postLanguages,
})
track('Create Post', {
imageCount: gallery.size,
})
} catch (e: any) {
if (extLink) {
setExtLink({
@ -183,6 +180,11 @@ export const ComposePost = observer(function ComposePost({
setError(cleanError(e.message))
setIsProcessing(false)
return
} finally {
track('Create Post', {
imageCount: gallery.size,
})
if (replyTo && replyTo.uri) track('Post:Reply')
}
if (!replyTo) {
store.me.mainFeed.addPostToTop(createdPost.uri)

View file

@ -9,10 +9,8 @@ import {
} from 'react-native'
import {AppBskyFeedDefs} from '@atproto/api'
import {CenteredView, FlatList} from '../util/Views'
import {
PostThreadModel,
PostThreadItemModel,
} from 'state/models/content/post-thread'
import {PostThreadModel} from 'state/models/content/post-thread'
import {PostThreadItemModel} from 'state/models/content/post-thread-item'
import {
FontAwesomeIcon,
FontAwesomeIconStyle,

View file

@ -7,7 +7,7 @@ import {
FontAwesomeIcon,
FontAwesomeIconStyle,
} from '@fortawesome/react-native-fontawesome'
import {PostThreadItemModel} from 'state/models/content/post-thread'
import {PostThreadItemModel} from 'state/models/content/post-thread-item'
import {Link} from '../util/Link'
import {RichText} from '../util/text/RichText'
import {Text} from '../util/text/Text'

View file

@ -13,10 +13,8 @@ import {observer} from 'mobx-react-lite'
import Clipboard from '@react-native-clipboard/clipboard'
import {AtUri} from '@atproto/api'
import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome'
import {
PostThreadModel,
PostThreadItemModel,
} from 'state/models/content/post-thread'
import {PostThreadModel} from 'state/models/content/post-thread'
import {PostThreadItemModel} from 'state/models/content/post-thread-item'
import {Link} from '../util/Link'
import {UserInfoText} from '../util/UserInfoText'
import {PostMeta} from '../util/PostMeta'

View file

@ -1,6 +1,6 @@
import React from 'react'
import {StyleSheet, View} from 'react-native'
import {PostsFeedSliceModel} from 'state/models/feeds/post'
import {PostsFeedSliceModel} from 'state/models/feeds/posts-slice'
import {AtUri} from '@atproto/api'
import {Link} from '../util/Link'
import {Text} from '../util/text/Text'