diff --git a/.eslintrc.js b/.eslintrc.js new file mode 100644 index 0000000..7296f7c --- /dev/null +++ b/.eslintrc.js @@ -0,0 +1,5 @@ +// https://docs.expo.dev/guides/using-eslint/ +module.exports = { + extends: 'expo', + ignorePatterns: ['/dist/*'], +}; diff --git a/App.tsx b/App.tsx new file mode 100644 index 0000000..340497d --- /dev/null +++ b/App.tsx @@ -0,0 +1,18 @@ +import React from "react"; +import {NavigationContainer} from "@react-navigation/native"; + +import {AuthProvider} from "@/src/context/AuthProvider"; +import {ThemeProvider} from "@/src/context/ThemeProvider"; +import AppNavigator from "@/src/core/AppNavigator"; + +export default function App() { + return ( + + + + + + + + ); +} diff --git a/app.json b/app.json index 1dc49c4..931c954 100644 --- a/app.json +++ b/app.json @@ -1,7 +1,7 @@ { "expo": { - "name": "matrix-frontend", - "slug": "matrix-frontend", + "name": "matrix", + "slug": "matrix", "version": "1.0.0", "orientation": "portrait", "icon": "./assets/images/icon.png", @@ -20,11 +20,10 @@ }, "web": { "bundler": "metro", - "output": "static", + "output": "server", "favicon": "./assets/images/favicon.png" }, "plugins": [ - "expo-router", [ "expo-splash-screen", { @@ -33,7 +32,8 @@ "resizeMode": "contain", "backgroundColor": "#ffffff" } - ] + ], + "expo-secure-store" ], "experiments": { "typedRoutes": true diff --git a/app/(tabs)/_layout.tsx b/app/(tabs)/_layout.tsx deleted file mode 100644 index 88ce1ff..0000000 --- a/app/(tabs)/_layout.tsx +++ /dev/null @@ -1,42 +0,0 @@ -import {Tabs} from 'expo-router'; - -import Ionicons from '@expo/vector-icons/Ionicons'; - - -export default function TabLayout() { - return ( - - ( - - ), - }} - /> - ( - - ), - }} - /> - - ); -} diff --git a/app/(tabs)/about.tsx b/app/(tabs)/about.tsx deleted file mode 100644 index 294ef22..0000000 --- a/app/(tabs)/about.tsx +++ /dev/null @@ -1,37 +0,0 @@ -import {StyleSheet, Text, View} from 'react-native'; -import React, {useState} from "react"; -import SpotifyAuthButton from "@/components/SpotifyAuthButton"; -import {Token} from "@/services/RestService"; - -export default function AboutScreen() { - const [token, setToken] = useState(null); - - const handleAuthSuccess = (token: Token) => { - setToken(token); - console.log('Erhaltener Authentifizierungscode:', token); - // Hier kannst du den Code weiterverwenden, um das Access Token zu erhalten - }; - - return ( - - About screen - Willkommen bei der Spotify Authentifizierung - - {token && Erhaltener Code: {token.access_token}} - - - - ); -} - -const styles = StyleSheet.create({ - container: { - flex: 1, - backgroundColor: '#25292e', - justifyContent: 'center', - alignItems: 'center', - }, - text: { - color: '#fff', - }, -}); diff --git a/app/(tabs)/index.tsx b/app/(tabs)/index.tsx deleted file mode 100644 index 0a6bc44..0000000 --- a/app/(tabs)/index.tsx +++ /dev/null @@ -1,65 +0,0 @@ -import {ActivityIndicator, StyleSheet, Text, View} from 'react-native'; -import Button from '@/components/Button'; -import ImageViewer from '@/components/ImageViewer'; -import * as ImagePicker from 'expo-image-picker'; -import {RestService} from '@/services/RestService'; -import useService from '@/hooks/useService'; - -const PlaceholderImage = require('@/assets/images/GarfieldCharakter.webp'); - -import * as WebBrowser from "expo-web-browser"; - -WebBrowser.maybeCompleteAuthSession(); - -export default function Index() { - const {data: usersData, loading: userLoading, error: userError} = useService(RestService.fetchAllUser); - - const pickImageAsync = async () => { - let result = await ImagePicker.launchImageLibraryAsync({ - mediaTypes: ['images'], - allowsEditing: true, - quality: 1, - }); - - if (!result.canceled) { - console.log(result); - } else { - alert('You did not select any image.'); - } - }; - - console.log(usersData); - return ( - - - - - - {userLoading && } - {userError && Error: {userError.message}} - {usersData && ( - - {usersData.users.map((item) => item.name).join('; ')} - - )} -