xref: /MusicFree/src/pages/setting/index.tsx (revision c446f2b83c1bd26ef7ee96c37926a9cbde29bc16)
1import React from 'react';
2import {StyleSheet} from 'react-native';
3import settingTypes from './settingTypes';
4import {SafeAreaView} from 'react-native-safe-area-context';
5import StatusBar from '@/components/base/statusBar';
6import SimpleAppBar from '@/components/base/simpleAppBar';
7import {useParams} from '@/entry/router';
8
9export default function Setting() {
10    const {type} = useParams<'setting'>();
11    const settingItem = settingTypes[type];
12
13    return (
14        <SafeAreaView edges={['bottom', 'top']} style={style.wrapper}>
15            <StatusBar />
16            {settingItem.showNav === false ? null : (
17                <SimpleAppBar title={settingItem?.title} />
18            )}
19            <SafeAreaView edges={['left', 'right']} style={style.wrapper}>
20                <settingItem.component />
21            </SafeAreaView>
22        </SafeAreaView>
23    );
24}
25
26const style = StyleSheet.create({
27    wrapper: {
28        width: '100%',
29        flex: 1,
30    },
31    appbar: {
32        shadowColor: 'transparent',
33        backgroundColor: '#2b333eaa',
34    },
35    header: {
36        backgroundColor: 'transparent',
37        shadowColor: 'transparent',
38    },
39});
40