summaryrefslogtreecommitdiff
path: root/app/(tabs)
diff options
context:
space:
mode:
authorpolwex <polwex@sortug.com>2025-07-16 09:58:34 +0700
committerpolwex <polwex@sortug.com>2025-07-16 09:58:34 +0700
commitdc0ad21f0e857adb87d710dd0f2f9affd0a9cbc9 (patch)
tree3d556ead415654e03b511b007365bcdff6d612ee /app/(tabs)
parent697ed671f394cbd07ea9751fe17f262744d99a49 (diff)
kinda works
Diffstat (limited to 'app/(tabs)')
-rw-r--r--app/(tabs)/_layout.tsx54
-rw-r--r--app/(tabs)/explore.tsx110
-rw-r--r--app/(tabs)/index.tsx75
-rw-r--r--app/(tabs)/login.tsx122
4 files changed, 0 insertions, 361 deletions
diff --git a/app/(tabs)/_layout.tsx b/app/(tabs)/_layout.tsx
deleted file mode 100644
index a102c45..0000000
--- a/app/(tabs)/_layout.tsx
+++ /dev/null
@@ -1,54 +0,0 @@
-import { Tabs } from "expo-router";
-import { Toaster } from "react-hot-toast";
-import React from "react";
-import { Platform } from "react-native";
-
-import { HapticTab } from "@/components/HapticTab";
-import { IconSymbol } from "@/components/ui/IconSymbol";
-import TabBarBackground from "@/components/ui/TabBarBackground";
-import { Colors } from "@/constants/Colors";
-import { useColorScheme } from "@/hooks/useColorScheme";
-
-export default function TabLayout() {
- const colorScheme = useColorScheme();
-
- return (
- <>
- <Tabs
- screenOptions={{
- tabBarActiveTintColor: Colors[colorScheme ?? "light"].tint,
- headerShown: false,
- tabBarButton: HapticTab,
- tabBarBackground: TabBarBackground,
- tabBarStyle: Platform.select({
- ios: {
- // Use a transparent background on iOS to show the blur effect
- position: "absolute",
- },
- default: {},
- }),
- }}
- >
- <Tabs.Screen
- name="index"
- options={{
- title: "Home",
- tabBarIcon: ({ color }) => (
- <IconSymbol size={28} name="house.fill" color={color} />
- ),
- }}
- />
- <Tabs.Screen
- name="explore"
- options={{
- title: "Explore",
- tabBarIcon: ({ color }) => (
- <IconSymbol size={28} name="paperplane.fill" color={color} />
- ),
- }}
- />
- </Tabs>
- <Toaster position="top-center" />
- </>
- );
-}
diff --git a/app/(tabs)/explore.tsx b/app/(tabs)/explore.tsx
deleted file mode 100644
index d4fbcaa..0000000
--- a/app/(tabs)/explore.tsx
+++ /dev/null
@@ -1,110 +0,0 @@
-import { Image } from 'expo-image';
-import { Platform, StyleSheet } from 'react-native';
-
-import { Collapsible } from '@/components/Collapsible';
-import { ExternalLink } from '@/components/ExternalLink';
-import ParallaxScrollView from '@/components/ParallaxScrollView';
-import { ThemedText } from '@/components/ThemedText';
-import { ThemedView } from '@/components/ThemedView';
-import { IconSymbol } from '@/components/ui/IconSymbol';
-
-export default function TabTwoScreen() {
- return (
- <ParallaxScrollView
- headerBackgroundColor={{ light: '#D0D0D0', dark: '#353636' }}
- headerImage={
- <IconSymbol
- size={310}
- color="#808080"
- name="chevron.left.forwardslash.chevron.right"
- style={styles.headerImage}
- />
- }>
- <ThemedView style={styles.titleContainer}>
- <ThemedText type="title">Explore</ThemedText>
- </ThemedView>
- <ThemedText>This app includes example code to help you get started.</ThemedText>
- <Collapsible title="File-based routing">
- <ThemedText>
- This app has two screens:{' '}
- <ThemedText type="defaultSemiBold">app/(tabs)/index.tsx</ThemedText> and{' '}
- <ThemedText type="defaultSemiBold">app/(tabs)/explore.tsx</ThemedText>
- </ThemedText>
- <ThemedText>
- The layout file in <ThemedText type="defaultSemiBold">app/(tabs)/_layout.tsx</ThemedText>{' '}
- sets up the tab navigator.
- </ThemedText>
- <ExternalLink href="https://docs.expo.dev/router/introduction">
- <ThemedText type="link">Learn more</ThemedText>
- </ExternalLink>
- </Collapsible>
- <Collapsible title="Android, iOS, and web support">
- <ThemedText>
- You can open this project on Android, iOS, and the web. To open the web version, press{' '}
- <ThemedText type="defaultSemiBold">w</ThemedText> in the terminal running this project.
- </ThemedText>
- </Collapsible>
- <Collapsible title="Images">
- <ThemedText>
- For static images, you can use the <ThemedText type="defaultSemiBold">@2x</ThemedText> and{' '}
- <ThemedText type="defaultSemiBold">@3x</ThemedText> suffixes to provide files for
- different screen densities
- </ThemedText>
- <Image source={require('@/assets/images/react-logo.png')} style={{ alignSelf: 'center' }} />
- <ExternalLink href="https://reactnative.dev/docs/images">
- <ThemedText type="link">Learn more</ThemedText>
- </ExternalLink>
- </Collapsible>
- <Collapsible title="Custom fonts">
- <ThemedText>
- Open <ThemedText type="defaultSemiBold">app/_layout.tsx</ThemedText> to see how to load{' '}
- <ThemedText style={{ fontFamily: 'SpaceMono' }}>
- custom fonts such as this one.
- </ThemedText>
- </ThemedText>
- <ExternalLink href="https://docs.expo.dev/versions/latest/sdk/font">
- <ThemedText type="link">Learn more</ThemedText>
- </ExternalLink>
- </Collapsible>
- <Collapsible title="Light and dark mode components">
- <ThemedText>
- This template has light and dark mode support. The{' '}
- <ThemedText type="defaultSemiBold">useColorScheme()</ThemedText> hook lets you inspect
- what the user&apos;s current color scheme is, and so you can adjust UI colors accordingly.
- </ThemedText>
- <ExternalLink href="https://docs.expo.dev/develop/user-interface/color-themes/">
- <ThemedText type="link">Learn more</ThemedText>
- </ExternalLink>
- </Collapsible>
- <Collapsible title="Animations">
- <ThemedText>
- This template includes an example of an animated component. The{' '}
- <ThemedText type="defaultSemiBold">components/HelloWave.tsx</ThemedText> component uses
- the powerful <ThemedText type="defaultSemiBold">react-native-reanimated</ThemedText>{' '}
- library to create a waving hand animation.
- </ThemedText>
- {Platform.select({
- ios: (
- <ThemedText>
- The <ThemedText type="defaultSemiBold">components/ParallaxScrollView.tsx</ThemedText>{' '}
- component provides a parallax effect for the header image.
- </ThemedText>
- ),
- })}
- </Collapsible>
- </ParallaxScrollView>
- );
-}
-
-const styles = StyleSheet.create({
- headerImage: {
- color: '#808080',
- bottom: -90,
- left: -35,
- position: 'absolute',
- },
- titleContainer: {
- flexDirection: 'row',
- gap: 8,
- },
-});
diff --git a/app/(tabs)/index.tsx b/app/(tabs)/index.tsx
deleted file mode 100644
index 462e8cd..0000000
--- a/app/(tabs)/index.tsx
+++ /dev/null
@@ -1,75 +0,0 @@
-import { Image } from 'expo-image';
-import { Platform, StyleSheet } from 'react-native';
-
-import { HelloWave } from '@/components/HelloWave';
-import ParallaxScrollView from '@/components/ParallaxScrollView';
-import { ThemedText } from '@/components/ThemedText';
-import { ThemedView } from '@/components/ThemedView';
-
-export default function HomeScreen() {
- return (
- <ParallaxScrollView
- headerBackgroundColor={{ light: '#A1CEDC', dark: '#1D3D47' }}
- headerImage={
- <Image
- source={require('@/assets/images/partial-react-logo.png')}
- style={styles.reactLogo}
- />
- }>
- <ThemedView style={styles.titleContainer}>
- <ThemedText type="title">Welcome!</ThemedText>
- <HelloWave />
- </ThemedView>
- <ThemedView style={styles.stepContainer}>
- <ThemedText type="subtitle">Step 1: Try it</ThemedText>
- <ThemedText>
- Edit <ThemedText type="defaultSemiBold">app/(tabs)/index.tsx</ThemedText> to see changes.
- Press{' '}
- <ThemedText type="defaultSemiBold">
- {Platform.select({
- ios: 'cmd + d',
- android: 'cmd + m',
- web: 'F12',
- })}
- </ThemedText>{' '}
- to open developer tools.
- </ThemedText>
- </ThemedView>
- <ThemedView style={styles.stepContainer}>
- <ThemedText type="subtitle">Step 2: Explore</ThemedText>
- <ThemedText>
- {`Tap the Explore tab to learn more about what's included in this starter app.`}
- </ThemedText>
- </ThemedView>
- <ThemedView style={styles.stepContainer}>
- <ThemedText type="subtitle">Step 3: Get a fresh start</ThemedText>
- <ThemedText>
- {`When you're ready, run `}
- <ThemedText type="defaultSemiBold">npm run reset-project</ThemedText> to get a fresh{' '}
- <ThemedText type="defaultSemiBold">app</ThemedText> directory. This will move the current{' '}
- <ThemedText type="defaultSemiBold">app</ThemedText> to{' '}
- <ThemedText type="defaultSemiBold">app-example</ThemedText>.
- </ThemedText>
- </ThemedView>
- </ParallaxScrollView>
- );
-}
-
-const styles = StyleSheet.create({
- titleContainer: {
- flexDirection: 'row',
- alignItems: 'center',
- gap: 8,
- },
- stepContainer: {
- gap: 8,
- marginBottom: 8,
- },
- reactLogo: {
- height: 178,
- width: 290,
- bottom: 0,
- left: 0,
- position: 'absolute',
- },
-});
diff --git a/app/(tabs)/login.tsx b/app/(tabs)/login.tsx
deleted file mode 100644
index c5f826d..0000000
--- a/app/(tabs)/login.tsx
+++ /dev/null
@@ -1,122 +0,0 @@
-import React, { useState } from "react";
-import {
- View,
- Text,
- StyleSheet,
- Image,
- KeyboardAvoidingView,
- Platform,
- Alert,
-} from "react-native";
-import PrimaryButton from "../../components/PrimaryButton";
-import ScreenWrapper from "../../components/ScreenWrapper";
-import { useThemeColors, ColorScheme } from "../../constants";
-import { ROUTES } from "../../constants/routes";
-import { Passkee } from "@/components/auth/Auth";
-
-// import { useSettingsStore } from "../store/useSettingsStore";
-// import useAuthStore from "../store/useAuthStore";
-// import { createPasskey, isPasskeySupported } from "../lib/passkey";
-// import { navigationRef } from "../lib/navigationRef";
-
-const PasskeySetupScreen = async () => {
- const [isLoading, setIsLoading] = useState(false);
- // const isDarkMode = useSettingsStore((s) => s.isDarkMode);
- const isDarkMode = false;
- const colors = useThemeColors();
- const styles = getStyles(colors);
- // const { setHasPasskey, setHasSeenPasskeyPrompt } = useAuthStore();
-
- const logoSource = isDarkMode
- ? require("../../assets/urbit-logo-dark.png")
- : require("../../assets/urbit-logo-light.png");
-
- const handleSkip = () => {
- // setHasSeenPasskeyPrompt(true);
- // navigationRef.current?.navigate(ROUTES.LOGIN as never);
- };
-
- return (
- <KeyboardAvoidingView
- style={styles.container}
- behavior={Platform.OS === "ios" ? "padding" : undefined}
- >
- <ScreenWrapper>
- <View style={styles.topSection}>
- <Image
- source={logoSource}
- style={styles.walletIcon}
- resizeMode="contain"
- />
- <Text style={styles.title}>Secure Your Wallet</Text>
- <Text style={styles.subtitle}>
- Create a passkey for easy and secure access to your Urbit wallet
- </Text>
- </View>
-
- <View style={styles.bottomSection}>
- <Passkee />
- <PrimaryButton
- label="Skip for Now"
- onPress={handleSkip}
- style={{
- backgroundColor: colors.card,
- borderWidth: 1,
- borderColor: colors.border,
- }}
- textStyle={{ color: colors.text }}
- />
-
- <Text style={styles.infoText}>
- You can always set up a passkey later in settings
- </Text>
- </View>
- </ScreenWrapper>
- </KeyboardAvoidingView>
- );
-};
-
-export const getStyles = (colors: ColorScheme) =>
- StyleSheet.create({
- container: {
- flex: 1,
- backgroundColor: colors.background,
- justifyContent: "space-between",
- padding: 20,
- },
- topSection: {
- flex: 1,
- justifyContent: "center",
- alignItems: "center",
- },
- walletIcon: {
- width: 64,
- height: 64,
- marginBottom: 24,
- },
- title: {
- fontSize: 24,
- color: colors.text,
- fontWeight: "600",
- marginBottom: 12,
- textAlign: "center",
- },
- subtitle: {
- fontSize: 16,
- color: colors.secondary,
- textAlign: "center",
- paddingHorizontal: 20,
- lineHeight: 24,
- },
- bottomSection: {
- marginBottom: 40,
- },
- infoText: {
- color: colors.secondary,
- fontSize: 14,
- textAlign: "center",
- marginTop: 16,
- },
- });
-
-export default PasskeySetupScreen;