mirror of https://git.lenooby09.tech/LeNooby09/social-app.git
1export type TrackEvent = (
2 event: keyof TrackPropertiesMap,
3 properties?: TrackPropertiesMap[keyof TrackPropertiesMap],
4) => Promise<void>
5
6export type ScreenEvent = (
7 name: keyof ScreenPropertiesMap,
8 properties?: ScreenPropertiesMap[keyof ScreenPropertiesMap],
9) => Promise<void>
10interface TrackPropertiesMap {
11 // LOGIN / SIGN UP events
12 'Sign In': {resumedSession: boolean} // CAN BE SERVER
13 'Create Account': {} // CAN BE SERVER
14 'Try Create Account': {}
15 'Create Account Successfully': {}
16 'Signin:PressedForgotPassword': {}
17 'Signin:PressedSelectService': {}
18 // COMPOSER / CREATE POST events
19 'Create Post': {imageCount: string} // CAN BE SERVER
20 'Composer:PastedPhotos': {}
21 'Composer:CameraOpened': {}
22 'Composer:GalleryOpened': {}
23 'HomeScreen:PressCompose': {}
24 'ProfileScreen:PressCompose': {}
25 // EDIT PROFILE events
26 'EditHandle:ViewCustomForm': {}
27 'EditHandle:ViewProvidedForm': {}
28 'EditHandle:SetNewHandle': {}
29 'EditProfile:AvatarSelected': {}
30 'EditProfile:BannerSelected': {}
31 'EditProfile:Save': {} // CAN BE SERVER
32 // FEED events
33 'Feed:onRefresh': {}
34 'Feed:onEndReached': {}
35 // POST events
36 'Post:Like': {} // CAN BE SERVER
37 'Post:Unlike': {} // CAN BE SERVER
38 'Post:Repost': {} // CAN BE SERVER
39 'Post:Unrepost': {} // CAN BE SERVER
40 'Post:Delete': {} // CAN BE SERVER
41 'Post:ThreadMute': {} // CAN BE SERVER
42 'Post:ThreadUnmute': {} // CAN BE SERVER
43 'Post:Reply': {} // CAN BE SERVER
44 // FEED ITEM events
45 'FeedItem:PostReply': {} // CAN BE SERVER
46 'FeedItem:PostRepost': {} // CAN BE SERVER
47 'FeedItem:PostLike': {} // CAN BE SERVER
48 'FeedItem:PostDelete': {} // CAN BE SERVER
49 'FeedItem:ThreadMute': {} // CAN BE SERVER
50 // PROFILE events
51 'Profile:Follow': {
52 username: string
53 }
54 'Profile:Unfollow': {
55 username: string
56 }
57 // PROFILE HEADER events
58 'ProfileHeader:EditProfileButtonClicked': {}
59 'ProfileHeader:FollowersButtonClicked': {
60 handle: string
61 }
62 'ProfileHeader:FollowsButtonClicked': {
63 handle: string
64 }
65 'ProfileHeader:ShareButtonClicked': {}
66 'ProfileHeader:MuteAccountButtonClicked': {}
67 'ProfileHeader:UnmuteAccountButtonClicked': {}
68 'ProfileHeader:ReportAccountButtonClicked': {}
69 'ProfileHeader:AddToListsButtonClicked': {}
70 'ProfileHeader:BlockAccountButtonClicked': {}
71 'ProfileHeader:UnblockAccountButtonClicked': {}
72 'ProfileHeader:FollowButtonClicked': {}
73 'ProfileHeader:UnfollowButtonClicked': {}
74 'ProfileHeader:SuggestedFollowsOpened': {}
75 'ProfileHeader:SuggestedFollowFollowed': {}
76 'ViewHeader:MenuButtonClicked': {}
77 // SETTINGS events
78 'Settings:SwitchAccountButtonClicked': {}
79 'Settings:AddAccountButtonClicked': {}
80 'Settings:ChangeHandleButtonClicked': {}
81 'Settings:InvitecodesButtonClicked': {}
82 'Settings:ContentfilteringButtonClicked': {}
83 'Settings:SignOutButtonClicked': {}
84 'Settings:ContentlanguagesButtonClicked': {}
85 // MENU events
86 'Menu:ItemClicked': {url: string}
87 'Menu:FeedbackClicked': {}
88 'Menu:HelpClicked': {}
89 // MOBILE SHELL events
90 'MobileShell:MyProfileButtonPressed': {}
91 'MobileShell:HomeButtonPressed': {}
92 'MobileShell:SearchButtonPressed': {}
93 'MobileShell:NotificationsButtonPressed': {}
94 'MobileShell:FeedsButtonPressed': {}
95 // NOTIFICATIONS events
96 'Notificatons:OpenApp': {}
97 // LISTS events
98 'Lists:onRefresh': {}
99 'Lists:onEndReached': {}
100 'CreateMuteList:AvatarSelected': {}
101 'CreateMuteList:Save': {} // CAN BE SERVER
102 'Lists:Subscribe': {} // CAN BE SERVER
103 'Lists:Unsubscribe': {} // CAN BE SERVER
104 // CUSTOM FEED events
105 'CustomFeed:Save': {}
106 'CustomFeed:Unsave': {}
107 'CustomFeed:Like': {}
108 'CustomFeed:Unlike': {}
109 'CustomFeed:Share': {}
110 'CustomFeed:Pin': {
111 uri: string
112 name: string
113 }
114 'CustomFeed:Unpin': {
115 uri: string
116 name: string
117 }
118 'CustomFeed:Reorder': {
119 uri: string
120 name: string
121 index: number
122 }
123 'CustomFeed:LoadMore': {}
124 'MultiFeed:onEndReached': {}
125 'MultiFeed:onRefresh': {}
126 // MODERATION events
127 'Moderation:ContentfilteringButtonClicked': {}
128 // ONBOARDING events
129 'Onboarding:Begin': {}
130 'Onboarding:Complete': {}
131 'Onboarding:Skipped': {}
132 'Onboarding:Reset': {}
133 'Onboarding:SuggestedFollowFollowed': {}
134}
135
136interface ScreenPropertiesMap {
137 Login: {}
138 CreateAccount: {}
139 'Choose Account': {}
140 'Signin:ForgotPassword': {}
141 'Signin:SetNewPasswordForm': {}
142 'Signin:PasswordUpdatedForm': {}
143 Feed: {}
144 Notifications: {}
145 Profile: {}
146 'Profile:Preview': {}
147 Settings: {}
148 AppPasswords: {}
149 Moderation: {}
150 BlockedAccounts: {}
151 MutedAccounts: {}
152 SavedFeeds: {}
153}