xref: /MusicFree/src/entry/index.tsx (revision ab5f994a52bee1ac7c89f2ccf9b6ca60d362890a)
14060c00aS猫头猫import React from 'react';
2bf6e62f2S猫头猫import {NavigationContainer} from '@react-navigation/native';
3bf6e62f2S猫头猫import {createNativeStackNavigator} from '@react-navigation/native-stack';
4bf6e62f2S猫头猫import bootstrap from './bootstrap';
55b5a8d79S猫头猫import {navigationRef, routes} from './router';
6bf6e62f2S猫头猫import {GestureHandlerRootView} from 'react-native-gesture-handler';
7bf6e62f2S猫头猫import Dialogs from '@/components/dialogs';
8bf6e62f2S猫头猫import Panels from '@/components/panels';
919dc08ecS猫头猫import PageBackground from '@/components/base/pageBackground';
101c06c799S猫头猫import {SafeAreaProvider} from 'react-native-safe-area-context';
11ea6d708fS猫头猫import Debug from '@/components/debug';
127a8d024eS猫头猫import {PortalHost} from '@/components/base/portal';
136cfecf1cS猫头猫import globalStyle from '@/constants/globalStyle';
14a27adc20S猫头猫import Theme from '@/core/theme';
1572381fc8S猫头猫import {BootstrapComp} from './useBootstrap';
16b85f12f7S猫头猫import {ToastBaseComponent} from '@/components/base/toast';
1710c78fceS猫头猫import {StatusBar} from 'react-native';
18*ab5f994aSmaotoumaoimport {ReducedMotionConfig, ReduceMotion} from 'react-native-reanimated';
19*ab5f994aSmaotoumao/**
20*ab5f994aSmaotoumao * 字体颜色
21*ab5f994aSmaotoumao */
22bf6e62f2S猫头猫
23bf6e62f2S猫头猫/**
24bf6e62f2S猫头猫 * 字体颜色
25bf6e62f2S猫头猫 */
26bf6e62f2S猫头猫
2710c78fceS猫头猫StatusBar.setBackgroundColor('transparent');
2810c78fceS猫头猫StatusBar.setTranslucent(true);
2910c78fceS猫头猫
30bf6e62f2S猫头猫bootstrap();
31e7fa3837S猫头猫const Stack = createNativeStackNavigator<any>();
32bf6e62f2S猫头猫
33bf6e62f2S猫头猫export default function Pages() {
34a27adc20S猫头猫    const theme = Theme.useTheme();
35cf2d630eS猫头猫
36bf6e62f2S猫头猫    return (
3772381fc8S猫头猫        <>
3872381fc8S猫头猫            <BootstrapComp />
39*ab5f994aSmaotoumao            <ReducedMotionConfig mode={ReduceMotion.Never} />
406cfecf1cS猫头猫            <GestureHandlerRootView style={globalStyle.flex1}>
411c06c799S猫头猫                <SafeAreaProvider>
425b5a8d79S猫头猫                    <NavigationContainer theme={theme} ref={navigationRef}>
434060c00aS猫头猫                        <PageBackground />
44bf6e62f2S猫头猫                        <Stack.Navigator
45bf6e62f2S猫头猫                            initialRouteName={routes[0].path}
46bf6e62f2S猫头猫                            screenOptions={{
47bf6e62f2S猫头猫                                headerShown: false,
48bf6e62f2S猫头猫                                animation: 'slide_from_right',
495f52c604S猫头猫                                animationDuration: 100,
50bf6e62f2S猫头猫                            }}>
51bf6e62f2S猫头猫                            {routes.map(route => (
52bf6e62f2S猫头猫                                <Stack.Screen
53bf6e62f2S猫头猫                                    key={route.path}
54bf6e62f2S猫头猫                                    name={route.path}
554060c00aS猫头猫                                    component={route.component}
564060c00aS猫头猫                                />
57bf6e62f2S猫头猫                            ))}
58bf6e62f2S猫头猫                        </Stack.Navigator>
59bf6e62f2S猫头猫
604060c00aS猫头猫                        <Panels />
614060c00aS猫头猫                        <Dialogs />
62ea6d708fS猫头猫                        <Debug />
637a8d024eS猫头猫                        <PortalHost />
64b85f12f7S猫头猫                        <ToastBaseComponent />
65bf6e62f2S猫头猫                    </NavigationContainer>
661c06c799S猫头猫                </SafeAreaProvider>
67bf6e62f2S猫头猫            </GestureHandlerRootView>
6872381fc8S猫头猫        </>
69bf6e62f2S猫头猫    );
70bf6e62f2S猫头猫}
71