123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271 |
- import React from 'react';
- import { Platform } from 'react-native';
-
- import {
- Icon,
- IconHelp,
- IconHome,
- IconInfo,
- IconSettings
- } from '../../base/icons';
- import BaseTheme from '../../base/ui/components/BaseTheme.native';
-
- import { goBack } from './components/conference/ConferenceNavigationContainerRef';
- import { goBack as goBackToLobbyScreen } from './components/lobby/LobbyNavigationContainerRef';
- import { screenHeaderCloseButton } from './functions';
-
-
- /**
- * Navigation container theme.
- */
- export const navigationContainerTheme = {
- colors: {
- background: BaseTheme.palette.uiBackground
- }
- };
-
- /**
- * Drawer navigator screens options and transition types.
- */
- export const drawerNavigatorScreenOptions = {
- animation: 'default',
- gestureEnabled: true,
- headerShown: false
- };
-
-
- /**
- * Drawer screen options and transition types.
- */
- export const drawerScreenOptions = {
- animation: 'default',
- gestureEnabled: true,
- headerShown: true,
- headerStyle: {
- backgroundColor: BaseTheme.palette.screen02Header
- },
- orientation: Platform.select({
- ios: 'default',
- android: 'all'
- })
- };
-
- /**
- * Drawer content options.
- */
- export const drawerContentOptions = {
- drawerActiveBackgroundColor: BaseTheme.palette.uiBackground,
- drawerActiveTintColor: BaseTheme.palette.screen01Header,
- drawerInactiveTintColor: BaseTheme.palette.text02,
- drawerLabelStyle: {
- marginLeft: BaseTheme.spacing[2]
- },
- drawerStyle: {
- backgroundColor: BaseTheme.palette.uiBackground,
- maxWidth: 400,
- width: '75%'
- }
- };
-
- /**
- * Screen options for welcome page.
- */
- export const welcomeScreenOptions = {
- ...drawerScreenOptions,
- drawerIcon: ({ focused }) => (
- <Icon
- color = { focused ? BaseTheme.palette.screen01Header : BaseTheme.palette.icon02 }
- size = { 20 }
- src = { IconHome } />
- ),
- headerStyle: {
- backgroundColor: BaseTheme.palette.screen01Header
- },
- // eslint-disable-next-line no-empty-function
- headerTitle: () => {}
- };
-
- /**
- * Screen options for settings screen.
- */
- export const settingsScreenOptions = {
- ...drawerScreenOptions,
- drawerIcon: ({ focused }) => (
- <Icon
- color = { focused ? BaseTheme.palette.screen01Header : BaseTheme.palette.icon02 }
- size = { 20 }
- src = { IconSettings } />
- ),
- headerTitleStyle: {
- color: BaseTheme.palette.text01
- }
- };
-
- /**
- * Screen options for terms/privacy screens.
- */
- export const termsAndPrivacyScreenOptions = {
- ...drawerScreenOptions,
- drawerIcon: ({ focused }) => (
- <Icon
- color = { focused ? BaseTheme.palette.screen01Header : BaseTheme.palette.icon02 }
- size = { 20 }
- src = { IconInfo } />
- ),
- headerTitleStyle: {
- color: BaseTheme.palette.text01
- }
- };
-
- /**
- * Screen options for help screen.
- */
- export const helpScreenOptions = {
- ...drawerScreenOptions,
- drawerIcon: ({ focused }) => (
- <Icon
- color = { focused ? BaseTheme.palette.screen01Header : BaseTheme.palette.icon02 }
- size = { 20 }
- src = { IconHelp } />
- ),
- headerTitleStyle: {
- color: BaseTheme.palette.text01
- }
- };
-
- /**
- * Screen options for conference.
- */
- export const conferenceScreenOptions = {
- animation: 'default',
- gestureEnabled: false,
- headerShown: false,
- orientation: Platform.select({
- ios: 'default',
- android: 'all'
- })
- };
-
- /**
- * Tab bar options for chat screen.
- */
- export const chatTabBarOptions = {
- tabBarActiveTintColor: BaseTheme.palette.screen01Header,
- tabBarLabelStyle: {
- fontSize: BaseTheme.typography.labelRegular.fontSize
- },
- tabBarInactiveTintColor: BaseTheme.palette.text01,
- tabBarIndicatorStyle: {
- backgroundColor: BaseTheme.palette.screen01Header
- }
- };
-
- /**
- * Screen options for presentation type modals.
- */
- export const presentationScreenOptions = {
- animation: 'slide_from_right',
- headerBackTitleVisible: false,
- headerLeft: () => screenHeaderCloseButton(goBack),
- headerStatusBarHeight: 0,
- headerStyle: {
- backgroundColor: BaseTheme.palette.screen02Header
- },
- headerTitleStyle: {
- color: BaseTheme.palette.text01
- },
- orientation: Platform.select({
- ios: 'default',
- android: 'all'
- })
- };
-
- /**
- * Screen options for car mode.
- */
- export const carmodeScreenOptions = presentationScreenOptions;
-
- /**
- * Screen options for chat.
- */
- export const chatScreenOptions = presentationScreenOptions;
-
- /**
- * Dial-IN Info screen options and transition types.
- */
- export const dialInSummaryScreenOptions = {
- ...presentationScreenOptions,
- headerLeft: undefined
- };
-
- /**
- * Screen options for invite modal.
- */
- export const inviteScreenOptions = presentationScreenOptions;
-
- /**
- * Screen options for participants modal.
- */
- export const participantsScreenOptions = presentationScreenOptions;
-
- /**
- * Screen options for speaker stats modal.
- */
- export const speakerStatsScreenOptions = presentationScreenOptions;
-
- /**
- * Screen options for security options modal.
- */
- export const securityScreenOptions = presentationScreenOptions;
-
- /**
- * Screen options for recording modal.
- */
- export const recordingScreenOptions = presentationScreenOptions;
-
- /**
- * Screen options for live stream modal.
- */
- export const liveStreamScreenOptions = presentationScreenOptions;
-
- /**
- * Screen options for lobby modal.
- */
- export const lobbyScreenOptions = presentationScreenOptions;
-
- /**
- * Screen options for lobby chat modal.
- */
- export const lobbyChatScreenOptions = {
- ...presentationScreenOptions,
- headerLeft: () => screenHeaderCloseButton(goBackToLobbyScreen)
- };
-
- /**
- * Screen options for salesforce link modal.
- */
- export const salesforceScreenOptions = presentationScreenOptions;
-
- /**
- * Screen options for GIPHY integration modal.
- */
- export const gifsMenuOptions = presentationScreenOptions;
-
- /**
- * Screen options for shared document.
- */
- export const sharedDocumentScreenOptions = {
- animation: 'slide_from_right',
- headerBackTitleVisible: false,
- headerShown: true,
- headerStyle: {
- backgroundColor: BaseTheme.palette.screen02Header
- },
- headerTitleStyle: {
- color: BaseTheme.palette.text01
- },
- orientation: Platform.select({
- ios: 'default',
- android: 'all'
- })
- };
|