Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Expand Screen with a base set for Mobile. #7

Merged
merged 1 commit into from
Dec 15, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
55 changes: 40 additions & 15 deletions schemas/Screen.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,21 +7,46 @@
},
"screenName": {
"type": "string",
"enum": [
"Home",
"Room",
"RoomDirectory",
"User",
"Group",
"MyGroups",
"WebLoading",
"WebWelcome",
"WebLogin",
"WebRegister",
"WebForgotPassword",
"WebCompleteSecurity",
"WebE2ESetup",
"WebSoftLogout"
"oneOf": [
{"const": "Home", "description": "The Home tab on iOS | possibly the same on Android? | The Home space on Web?"},
{"const": "Room", "description": "The screen that displays the messages and events received in a room."},
{"const": "RoomDetails", "description": "The screen shown when tapping the name of a room from the Room screen."},
{"const": "RoomMembers", "description": "The screen that displays the list of members that are part of a room."},
{"const": "User", "description": "A screen that shows information about a room member."},
{"const": "RoomSearch", "description": "The screen that allows you to search for messages/files in a specific room."},
{"const": "RoomUploads", "description": "The screen that allows you to see all of the files sent in a specific room."},
{"const": "RoomSettings", "description": "The settings screen shown from the Room Details screen."},
{"const": "RoomNotifications", "description": "The notifications settings screen shown from the Room Details screen."},
{"const": "RoomDirectory", "description": "The screen that lists public rooms for you to discover."},
{"const": "StartChat", "description": "The screen shown to create a new (non-direct) room."},
{"const": "CreateRoom", "description": "The screen shown to create a new (non-direct) room."},
{"const": "Settings", "description": "The global settings screen shown in the app."},
{"const": "SettingsSecurity", "description": "The global security settings screen."},
{"const": "SettingsDefaultNotifications", "description": "The settings screen to change the default notification options."},
{"const": "SettingsMentionsAndKeywords", "description": "The settings screen to manage notification mentions and keywords."},
{"const": "DeactivateAccount", "description": "The confirmation screen shown before deactivating an account."},
{"const": "Group", "description": "Legacy: The screen that shows information about a specific group."},
{"const": "MyGroups", "description": "Legacy: The screen that shows all groups/communities you have joined."},

{"const": "MobileSidebar", "description": "The sidebar shown on mobile with spaces, settings etc."},
{"const": "MobileFavourites", "description": "The Favourites tab on mobile that lists your favourite people/rooms."},
{"const": "MobilePeople", "description": "The People tab on mobile that lists all the DM rooms you have joined."},
{"const": "MobileRooms", "description": "The Rooms tab on mobile that lists all the (non-direct) rooms you've joined."},
{"const": "MobileSearchRooms", "description": "The Rooms tab shown in the global search screen on Mobile."},
{"const": "MobileSearchMessages", "description": "The Messages tab shown in the global search screen on Mobile."},
{"const": "MobileSearchPeople", "description": "The People tab shown in the global search screen on Mobile."},
{"const": "MobileSearchFiles", "description": "The Files tab shown in the global search screen on Mobile."},
{"const": "MobileSwitchDirectory", "description": "The screen shown to select which room directory you'd like to use."},
{"const": "MobileInviteFriends", "description": "The screen shown to share a link to download the app."},

{"const": "WebLoading", "description": "?"},
{"const": "WebWelcome", "description": "?"},
{"const": "WebLogin", "description": "?"},
{"const": "WebRegister", "description": "?"},
{"const": "WebForgotPassword", "description": "?"},
{"const": "WebCompleteSecurity", "description": "?"},
{"const": "WebE2ESetup", "description": "?"},
{"const": "WebSoftLogout", "description": "?"}
]
},
"durationMs": {
Expand Down
19 changes: 1 addition & 18 deletions types/kotlin/Screen.kt
Original file line number Diff line number Diff line change
Expand Up @@ -10,26 +10,9 @@ data class Screen (
val durationMS: Long? = null,

val eventName: EventName,
val screenName: ScreenName
val screenName: String
)

enum class EventName {
Screen
}

enum class ScreenName {
Group,
Home,
MyGroups,
Room,
RoomDirectory,
User,
WebCompleteSecurity,
WebE2ESetup,
WebForgotPassword,
WebLoading,
WebLogin,
WebRegister,
WebSoftLogout,
WebWelcome
}
134 changes: 134 additions & 0 deletions types/kotlin2/Screen.kt
Original file line number Diff line number Diff line change
Expand Up @@ -33,19 +33,153 @@ data class Screen(
) : VectorAnalyticsScreen {

enum class ScreenName {
/**
* The screen shown to create a new (non-direct) room.
*/
CreateRoom,
/**
* The confirmation screen shown before deactivating an account.
*/
DeactivateAccount,
/**
* Legacy: The screen that shows information about a specific group.
*/
Group,
/**
* The Home tab on iOS | possibly the same on Android? | The Home space on Web?
*/
Home,
/**
* The Favourites tab on mobile that lists your favourite people/rooms.
*/
MobileFavourites,
/**
* The screen shown to share a link to download the app.
*/
MobileInviteFriends,
/**
* The People tab on mobile that lists all the DM rooms you have joined.
*/
MobilePeople,
/**
* The Rooms tab on mobile that lists all the (non-direct) rooms you've joined.
*/
MobileRooms,
/**
* The Files tab shown in the global search screen on Mobile.
*/
MobileSearchFiles,
/**
* The Messages tab shown in the global search screen on Mobile.
*/
MobileSearchMessages,
/**
* The People tab shown in the global search screen on Mobile.
*/
MobileSearchPeople,
/**
* The Rooms tab shown in the global search screen on Mobile.
*/
MobileSearchRooms,
/**
* The sidebar shown on mobile with spaces, settings etc.
*/
MobileSidebar,
/**
* The screen shown to select which room directory you'd like to use.
*/
MobileSwitchDirectory,
/**
* Legacy: The screen that shows all groups/communities you have joined.
*/
MyGroups,
/**
* The screen that displays the messages and events received in a room.
*/
Room,
/**
* The screen shown when tapping the name of a room from the Room screen.
*/
RoomDetails,
/**
* The screen that lists public rooms for you to discover.
*/
RoomDirectory,
/**
* The screen that displays the list of members that are part of a room.
*/
RoomMembers,
/**
* The notifications settings screen shown from the Room Details screen.
*/
RoomNotifications,
/**
* The screen that allows you to search for messages/files in a specific room.
*/
RoomSearch,
/**
* The settings screen shown from the Room Details screen.
*/
RoomSettings,
/**
* The screen that allows you to see all of the files sent in a specific room.
*/
RoomUploads,
/**
* The global settings screen shown in the app.
*/
Settings,
/**
* The settings screen to change the default notification options.
*/
SettingsDefaultNotifications,
/**
* The settings screen to manage notification mentions and keywords.
*/
SettingsMentionsAndKeywords,
/**
* The global security settings screen.
*/
SettingsSecurity,
/**
* The screen shown to create a new (non-direct) room.
*/
StartChat,
/**
* A screen that shows information about a room member.
*/
User,
/**
* ?
*/
WebCompleteSecurity,
/**
* ?
*/
WebE2ESetup,
/**
* ?
*/
WebForgotPassword,
/**
* ?
*/
WebLoading,
/**
* ?
*/
WebLogin,
/**
* ?
*/
WebRegister,
/**
* ?
*/
WebSoftLogout,
/**
* ?
*/
WebWelcome,
}

Expand Down
60 changes: 60 additions & 0 deletions types/swift/Screen.swift
Original file line number Diff line number Diff line change
Expand Up @@ -33,19 +33,79 @@ extension AnalyticsEvent {
}

public enum ScreenName: String {
/// The screen shown to create a new (non-direct) room.
case CreateRoom
/// The confirmation screen shown before deactivating an account.
case DeactivateAccount
/// Legacy: The screen that shows information about a specific group.
case Group
/// The Home tab on iOS | possibly the same on Android? | The Home space on Web?
case Home
/// The Favourites tab on mobile that lists your favourite people/rooms.
case MobileFavourites
/// The screen shown to share a link to download the app.
case MobileInviteFriends
/// The People tab on mobile that lists all the DM rooms you have joined.
case MobilePeople
/// The Rooms tab on mobile that lists all the (non-direct) rooms you've joined.
case MobileRooms
/// The Files tab shown in the global search screen on Mobile.
case MobileSearchFiles
/// The Messages tab shown in the global search screen on Mobile.
case MobileSearchMessages
/// The People tab shown in the global search screen on Mobile.
case MobileSearchPeople
/// The Rooms tab shown in the global search screen on Mobile.
case MobileSearchRooms
/// The sidebar shown on mobile with spaces, settings etc.
case MobileSidebar
/// The screen shown to select which room directory you'd like to use.
case MobileSwitchDirectory
/// Legacy: The screen that shows all groups/communities you have joined.
case MyGroups
/// The screen that displays the messages and events received in a room.
case Room
/// The screen shown when tapping the name of a room from the Room screen.
case RoomDetails
/// The screen that lists public rooms for you to discover.
case RoomDirectory
/// The screen that displays the list of members that are part of a room.
case RoomMembers
/// The notifications settings screen shown from the Room Details screen.
case RoomNotifications
/// The screen that allows you to search for messages/files in a specific room.
case RoomSearch
/// The settings screen shown from the Room Details screen.
case RoomSettings
/// The screen that allows you to see all of the files sent in a specific room.
case RoomUploads
/// The global settings screen shown in the app.
case Settings
/// The settings screen to change the default notification options.
case SettingsDefaultNotifications
/// The settings screen to manage notification mentions and keywords.
case SettingsMentionsAndKeywords
/// The global security settings screen.
case SettingsSecurity
/// The screen shown to create a new (non-direct) room.
case StartChat
/// A screen that shows information about a room member.
case User
/// ?
case WebCompleteSecurity
/// ?
case WebE2ESetup
/// ?
case WebForgotPassword
/// ?
case WebLoading
/// ?
case WebLogin
/// ?
case WebRegister
/// ?
case WebSoftLogout
/// ?
case WebWelcome
}

Expand Down
31 changes: 28 additions & 3 deletions types/typescript/Screen.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -10,21 +10,46 @@
*/
export interface Screen {
eventName: "Screen";
screenName:
screenName: (
| "Home"
| "Room"
| "RoomDirectory"
| "RoomDetails"
| "RoomMembers"
| "User"
| "RoomSearch"
| "RoomUploads"
| "RoomSettings"
| "RoomNotifications"
| "RoomDirectory"
| "StartChat"
| "CreateRoom"
| "Settings"
| "SettingsSecurity"
| "SettingsDefaultNotifications"
| "SettingsMentionsAndKeywords"
| "DeactivateAccount"
| "Group"
| "MyGroups"
| "MobileSidebar"
| "MobileFavourites"
| "MobilePeople"
| "MobileRooms"
| "MobileSearchRooms"
| "MobileSearchMessages"
| "MobileSearchPeople"
| "MobileSearchFiles"
| "MobileSwitchDirectory"
| "MobileInviteFriends"
| "WebLoading"
| "WebWelcome"
| "WebLogin"
| "WebRegister"
| "WebForgotPassword"
| "WebCompleteSecurity"
| "WebE2ESetup"
| "WebSoftLogout";
| "WebSoftLogout"
) &
string;
/**
* How long the screen was displayed for in milliseconds.
*/
Expand Down