frontend: reorganize sample/initial components/folders
Parents:
9c4943c13 file(s) changed
- frontend/app.json +0 -7
- frontend/app/(tabs)/_layout.tsx +1 -1
- frontend/app/(tabs)/explore.tsx +4 -4
- frontend/app/(tabs)/index.tsx +3 -3
- frontend/app/modal.tsx +2 -2
- frontend/components/misc/external-link.tsx +0 -0
- frontend/components/misc/haptic-tab.tsx +0 -0
- frontend/components/misc/parallax-scroll-view.tsx +1 -1
- frontend/components/misc/themed-text.tsx +0 -0
- frontend/components/misc/themed-view.tsx +0 -0
- frontend/components/ui/buttons.tsx +6 -0
- frontend/components/ui/collapsible.tsx +2 -2
- frontend/hooks/use-color-scheme.web.ts +0 -21
frontend/app.json
@@ -8,9 +8,6 @@ "icon": "./assets/images/icon.png",
8 8 "scheme": "orbit",
9 9 "userInterfaceStyle": "automatic",
10 10 "newArchEnabled": true,
11 - "ios": {
12 - "supportsTablet": true
13 - },
14 11 "android": {
15 12 "adaptiveIcon": {
16 13 "backgroundColor": "#E6F4FE",
@@ -20,10 +17,6 @@ "monochromeImage": "./assets/images/android-icon-monochrome.png"
20 17 },
21 18 "edgeToEdgeEnabled": true,
22 19 "predictiveBackGestureEnabled": false
23 - },
24 - "web": {
25 - "output": "static",
26 - "favicon": "./assets/images/favicon.png"
27 20 },
28 21 "plugins": [
29 22 "expo-router",
frontend/app/(tabs)/_layout.tsx
@@ -1,7 +1,7 @@
1 1 import { Tabs } from 'expo-router';
2 2 import React from 'react';
3 3
4 - import { HapticTab } from '@/components/haptic-tab';
4 + import { HapticTab } from '@/components/misc/haptic-tab';
5 5 import { IconSymbol } from '@/components/ui/icon-symbol';
6 6 import { Colors } from '@/constants/theme';
7 7 import { useColorScheme } from '@/hooks/use-color-scheme';
frontend/app/(tabs)/explore.tsx
@@ -2,10 +2,10 @@ import { Image } from 'expo-image';
2 2 import { Platform, StyleSheet } from 'react-native';
3 3
4 4 import { Collapsible } from '@/components/ui/collapsible';
5 - import { ExternalLink } from '@/components/external-link';
6 - import ParallaxScrollView from '@/components/parallax-scroll-view';
7 - import { ThemedText } from '@/components/themed-text';
8 - import { ThemedView } from '@/components/themed-view';
5 + import { ExternalLink } from '@/components/misc/external-link';
6 + import ParallaxScrollView from '@/components/misc/parallax-scroll-view';
7 + import { ThemedText } from '@/components/misc/themed-text';
8 + import { ThemedView } from '@/components/misc/themed-view';
9 9 import { IconSymbol } from '@/components/ui/icon-symbol';
10 10 import { Fonts } from '@/constants/theme';
11 11
frontend/app/(tabs)/index.tsx
@@ -2,9 +2,9 @@ import { Image } from 'expo-image';
2 2 import { Platform, StyleSheet } from 'react-native';
3 3
4 4 import { HelloWave } from '@/components/hello-wave';
5 - import ParallaxScrollView from '@/components/parallax-scroll-view';
6 - import { ThemedText } from '@/components/themed-text';
7 - import { ThemedView } from '@/components/themed-view';
5 + import ParallaxScrollView from '@/components/misc/parallax-scroll-view';
6 + import { ThemedText } from '@/components/misc/themed-text';
7 + import { ThemedView } from '@/components/misc/themed-view';
8 8 import { Link } from 'expo-router';
9 9
10 10 export default function HomeScreen() {
frontend/app/modal.tsx
@@ -1,8 +1,8 @@
1 1 import { Link } from 'expo-router';
2 2 import { StyleSheet } from 'react-native';
3 3
4 - import { ThemedText } from '@/components/themed-text';
5 - import { ThemedView } from '@/components/themed-view';
4 + import { ThemedText } from '@/components/misc/themed-text';
5 + import { ThemedView } from '@/components/misc/themed-view';
6 6
7 7 export default function ModalScreen() {
8 8 return (
frontend/components/misc/external-link.tsx
frontend/components/misc/haptic-tab.tsx
frontend/components/misc/parallax-scroll-view.tsx
@@ -7,7 +7,7 @@ useAnimatedStyle,
7 7 useScrollOffset,
8 8 } from 'react-native-reanimated';
9 9
10 - import { ThemedView } from '@/components/themed-view';
10 + import { ThemedView } from '@/components/misc/themed-view';
11 11 import { useColorScheme } from '@/hooks/use-color-scheme';
12 12 import { useThemeColor } from '@/hooks/use-theme-color';
13 13
frontend/components/misc/themed-text.tsx
frontend/components/misc/themed-view.tsx
frontend/components/ui/buttons.tsx
@@ -0,0 +1,6 @@
1 + const PrimaryButton = () => (
2 + )
3 +
4 + export {
5 + PrimaryButton
6 + }
frontend/components/ui/collapsible.tsx
@@ -1,8 +1,8 @@
1 1 import { PropsWithChildren, useState } from 'react';
2 2 import { StyleSheet, TouchableOpacity } from 'react-native';
3 3
4 - import { ThemedText } from '@/components/themed-text';
5 - import { ThemedView } from '@/components/themed-view';
4 + import { ThemedText } from '@/components/misc/themed-text';
5 + import { ThemedView } from '@/components/misc/themed-view';
6 6 import { IconSymbol } from '@/components/ui/icon-symbol';
7 7 import { Colors } from '@/constants/theme';
8 8 import { useColorScheme } from '@/hooks/use-color-scheme';
@@ -1,21 +0,0 @@
1 - import { useEffect, useState } from 'react';
2 - import { useColorScheme as useRNColorScheme } from 'react-native';
3 -
4 - /**
5 - * To support static rendering, this value needs to be re-calculated on the client side for web
6 - */
7 - export function useColorScheme() {
8 - const [hasHydrated, setHasHydrated] = useState(false);
9 -
10 - useEffect(() => {
11 - setHasHydrated(true);
12 - }, []);
13 -
14 - const colorScheme = useRNColorScheme();
15 -
16 - if (hasHydrated) {
17 - return colorScheme;
18 - }
19 -
20 - return 'light';
21 - }