Changeset View
Changeset View
Standalone View
Standalone View
native/root.react.js
Show First 20 Lines • Show All 77 Lines • ▼ Show 20 Lines | |||||
import { RootContext } from './root-context.js'; | import { RootContext } from './root-context.js'; | ||||
import { MessageSearchProvider } from './search/search-provider.react.js'; | import { MessageSearchProvider } from './search/search-provider.react.js'; | ||||
import Socket from './socket.react.js'; | import Socket from './socket.react.js'; | ||||
import { useLoadCommFonts } from './themes/fonts.js'; | import { useLoadCommFonts } from './themes/fonts.js'; | ||||
import { DarkTheme, LightTheme } from './themes/navigation.js'; | import { DarkTheme, LightTheme } from './themes/navigation.js'; | ||||
import ThemeHandler from './themes/theme-handler.react.js'; | import ThemeHandler from './themes/theme-handler.react.js'; | ||||
import { provider } from './utils/ethers-utils.js'; | import { provider } from './utils/ethers-utils.js'; | ||||
import { neynarKey } from './utils/neynar-utils.js'; | import { neynarKey } from './utils/neynar-utils.js'; | ||||
import { useTunnelbrokerInitMessage } from './utils/tunnelbroker-utils.js'; | |||||
// Add custom items to expo-dev-menu | // Add custom items to expo-dev-menu | ||||
import './dev-menu.js'; | import './dev-menu.js'; | ||||
import './types/message-types-validator.js'; | import './types/message-types-validator.js'; | ||||
if (Platform.OS === 'android') { | if (Platform.OS === 'android') { | ||||
UIManager.setLayoutAnimationEnabledExperimental && | UIManager.setLayoutAnimationEnabledExperimental && | ||||
UIManager.setLayoutAnimationEnabledExperimental(true); | UIManager.setLayoutAnimationEnabledExperimental(true); | ||||
▲ Show 20 Lines • Show All 165 Lines • ▼ Show 20 Lines | const theme = (() => { | ||||
if (activeTheme === 'light') { | if (activeTheme === 'light') { | ||||
return LightTheme; | return LightTheme; | ||||
} else if (activeTheme === 'dark') { | } else if (activeTheme === 'dark') { | ||||
return DarkTheme; | return DarkTheme; | ||||
} | } | ||||
return undefined; | return undefined; | ||||
})(); | })(); | ||||
const tunnelbrokerInitMessage = useTunnelbrokerInitMessage(); | |||||
const gated: React.Node = ( | const gated: React.Node = ( | ||||
<> | <> | ||||
<LifecycleHandler /> | <LifecycleHandler /> | ||||
<KeyserverReachabilityHandler /> | <KeyserverReachabilityHandler /> | ||||
<DimensionsUpdater /> | <DimensionsUpdater /> | ||||
<ConnectivityUpdater /> | <ConnectivityUpdater /> | ||||
<ThemeHandler /> | <ThemeHandler /> | ||||
<OrientationHandler /> | <OrientationHandler /> | ||||
Show All 23 Lines | navigation = ( | ||||
</BottomSheetModalProvider> | </BottomSheetModalProvider> | ||||
</NavigationContainer> | </NavigationContainer> | ||||
); | ); | ||||
} | } | ||||
return ( | return ( | ||||
<GestureHandlerRootView style={styles.app}> | <GestureHandlerRootView style={styles.app}> | ||||
<StaffContextProvider> | <StaffContextProvider> | ||||
<IdentityServiceContextProvider> | <IdentityServiceContextProvider> | ||||
<TunnelbrokerProvider initMessage={tunnelbrokerInitMessage}> | <TunnelbrokerProvider> | ||||
<IdentitySearchProvider> | <IdentitySearchProvider> | ||||
<FeatureFlagsProvider> | <FeatureFlagsProvider> | ||||
<NavContext.Provider value={navContext}> | <NavContext.Provider value={navContext}> | ||||
<RootContext.Provider value={rootContext}> | <RootContext.Provider value={rootContext}> | ||||
<InputStateContainer> | <InputStateContainer> | ||||
<MessageEditingContextProvider> | <MessageEditingContextProvider> | ||||
<SafeAreaProvider initialMetrics={initialWindowMetrics}> | <SafeAreaProvider initialMetrics={initialWindowMetrics}> | ||||
<ActionSheetProvider> | <ActionSheetProvider> | ||||
▲ Show 20 Lines • Show All 74 Lines • Show Last 20 Lines |