Skip to content

Commit b3845d1

Browse files
committed
migrate ts to @/
1 parent 286f4d9 commit b3845d1

35 files changed

+104
-102
lines changed

hackathon/spacecraft/App.tsx

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,11 @@
1+
import { AuthenticationProvider } from "@/context/Authentication";
2+
import { NetworkProvider } from "@/context/Network";
3+
import { useAppearanceTheme } from "@/hooks/useAppearanceTheme";
4+
import { Navigator } from "@/navigation/Navigator";
15
import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
26
import Constants from "expo-constants";
37
import { Provider as PaperProvider } from "react-native-paper";
48

5-
import { AuthenticationProvider } from "~/context/Authentication";
6-
import { NetworkProvider } from "~/context/Network";
7-
import { useAppearanceTheme } from "~/hooks/useAppearanceTheme";
8-
import { Navigator } from "~/navigation/Navigator";
9-
109
const queryClient = new QueryClient();
1110

1211
const App = () => {

hackathon/spacecraft/app.config.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
module.exports = {
22
android: {
33
adaptiveIcon: {
4-
backgroundColor: "#FFFFFF",
4+
backgroundColor: "#ffffff",
55
foregroundImage: "./assets/adaptive-icon.png",
66
},
77
package: "weshipit.today.spacecraft",

hackathon/spacecraft/jest.setup.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ jest.mock("react-native-reanimated", () => {
99

1010
// The mock for `call` immediately calls the callback which is incorrect
1111
// So we override it with a no-op
12-
Reanimated.default.call = () => { };
12+
Reanimated.default.call = () => {};
1313

1414
return Reanimated;
1515
});

hackathon/spacecraft/src/components/Card.stories.tsx

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
import type { StarshipProps } from "api/types";
22

3+
import { StarshipCard } from "@/components/StarshipCard";
34
import { NavigationContainer } from "@react-navigation/native";
45

5-
import { StarshipCard } from "~/components/StarshipCard";
6-
76
const shipFixture = {
87
model: "YT-1300 light freighter",
98
name: "Millennium Falcon",

hackathon/spacecraft/src/components/FromInput.test.tsx

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
1+
import { FormInput } from "@/components/FromInput";
12
import { fireEvent, render, screen } from "@testing-library/react-native";
23

3-
import { FormInput } from "~/components/FromInput";
4-
54
describe("FormInput", () => {
65
const mock = jest.fn();
76
it("renders correctly", () => {

hackathon/spacecraft/src/components/Offline.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1+
import { useNetwork } from "@/context/Network";
2+
import React from "react";
13
import { StyleSheet, Text, View } from "react-native";
24
import { ActivityIndicator, useTheme } from "react-native-paper";
35

4-
import { useNetwork } from "~/context/Network";
5-
66
export const Offline = () => {
77
const { isConnected } = useNetwork();
88
const { colors } = useTheme();

hackathon/spacecraft/src/components/PeopleItem.tsx

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
11
import type { PeopleProps } from "api/types";
22

3+
import { Routes } from "@/navigation/Routes";
34
import { useNavigation } from "@react-navigation/native";
45
import { List } from "react-native-paper";
56

6-
import { Routes } from "~/navigation/Routes";
7-
87
interface PeopleItemProps {
98
people: PeopleProps;
109
}

hackathon/spacecraft/src/components/ScreenContainer.tsx

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
11
import type { ReactNode } from "react";
22

3+
import { Offline } from "@/components/Offline";
34
import { useNavigation } from "@react-navigation/native";
45
import { ScrollView, StyleSheet, View } from "react-native";
56
import { IconButton, Text, useTheme } from "react-native-paper";
67

7-
import { Offline } from "~/components/Offline";
8-
98
interface ScreenContainerProps {
109
accessoryFooter?: ReactNode;
1110
children?: ReactNode;

hackathon/spacecraft/src/components/SkeletonList.stories.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { SkeletonList } from "~/components/SkeletonList";
1+
import { SkeletonList } from "@/components/SkeletonList";
22

33
export default {
44
title: "SkeletonList",

hackathon/spacecraft/src/components/StarshipCard.test.tsx

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1+
import { StarshipCard } from "@/components/StarshipCard";
12
import { NavigationContainer } from "@react-navigation/native";
23
import { render, screen } from "@testing-library/react-native";
34

4-
import { StarshipCard } from "~/components/StarshipCard";
5-
65
const shipFixture = {
76
model: "YT-1300 light freighter",
87
name: "Millennium Falcon",

hackathon/spacecraft/src/components/StarshipCard.tsx

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
1+
import { Image } from "@/components/Image";
12
import { useNavigation } from "@react-navigation/native";
23
import CurrencyFormat from "react-currency-format";
34
import { Alert, StyleSheet } from "react-native";
45
import { Button, Card, Text } from "react-native-paper";
56
import { FadeInDown, FadeOut } from "react-native-reanimated";
67

7-
import { Image } from "~/components/Image";
8-
98
import type { StarshipProps } from "../../api/types";
109

1110
import { Routes } from "../navigation/Routes";

hackathon/spacecraft/src/components/StarshipLoadableList.tsx

Lines changed: 20 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1+
import { useStarships } from "@/hooks/useStarships";
2+
import { useId } from "react";
13
import { StyleSheet, View } from "react-native";
24
import { Text } from "react-native-paper";
35

4-
import { useStarships } from "~/hooks/useStarships";
5-
66
interface StarshipLoadableListProps {
77
starships: string[];
88
}
@@ -15,14 +15,29 @@ export const StarshipLoadableList = ({
1515
starships,
1616
}: StarshipLoadableListProps) => {
1717
const queryResult = useStarships(starships);
18+
const id = useId();
1819

1920
return queryResult.map((result) => {
20-
if (result.isInitialLoading || result.isLoading) {
21-
return <Text variant="bodyMedium">Loading…</Text>;
21+
if (result.isLoading) {
22+
return (
23+
<Text
24+
key={id}
25+
variant="bodyMedium"
26+
>
27+
Loading…
28+
</Text>
29+
);
2230
}
2331

2432
if (result.isError) {
25-
return <Text variant="bodyMedium">Error 😕</Text>;
33+
return (
34+
<Text
35+
key={id}
36+
variant="bodyMedium"
37+
>
38+
Error 😕
39+
</Text>
40+
);
2641
}
2742

2843
return (

hackathon/spacecraft/src/hooks/useAppearanceTheme.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
11
import type { AppStateStatus } from "react-native";
22

3+
import { CombinedDarkTheme, CombinedDefaultTheme } from "@/theme/theme";
34
import { useEffect, useState } from "react";
45
import { Appearance, AppState } from "react-native";
56

6-
import { CombinedDarkTheme, CombinedDefaultTheme } from "~/theme/theme";
7-
87
export const useAppearanceTheme = () => {
98
const [theme, setTheme] = useState(
109
Appearance.getColorScheme() === "dark"

hackathon/spacecraft/src/navigation/AuthNavigator.tsx

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
1+
import { Routes } from "@/navigation/Routes";
2+
import { LoginScreen } from "@/screens/LoginScreen";
3+
import { TermsScreen } from "@/screens/TermsScreen";
14
import { createNativeStackNavigator } from "@react-navigation/native-stack";
25

3-
import { Routes } from "~/navigation/Routes";
4-
import { LoginScreen } from "~/screens/LoginScreen";
5-
import { TermsScreen } from "~/screens/TermsScreen";
6-
76
const Stack = createNativeStackNavigator();
87

98
export const AuthNavigator = () => {

hackathon/spacecraft/src/navigation/BottomTabNavigator.tsx

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,14 @@
1+
import { PilotNavigator } from "@/navigation/PilotNavigator";
2+
import { PlanetNavigator } from "@/navigation/PlanetNavigator";
3+
import { PlusNavigator } from "@/navigation/PlusNavigator";
4+
import { Routes } from "@/navigation/Routes";
5+
import { StarshipNavigator } from "@/navigation/StarshipNavigator";
16
/* eslint-disable react/no-unstable-nested-components */
27
import { FontAwesome5, Ionicons } from "@expo/vector-icons";
38
import { createBottomTabNavigator } from "@react-navigation/bottom-tabs";
49
import { getFocusedRouteNameFromRoute } from "@react-navigation/native";
510
import { useTheme } from "react-native-paper";
611

7-
import { PilotNavigator } from "~/navigation/PilotNavigator";
8-
import { PlanetNavigator } from "~/navigation/PlanetNavigator";
9-
import { PlusNavigator } from "~/navigation/PlusNavigator";
10-
import { Routes } from "~/navigation/Routes";
11-
import { StarshipNavigator } from "~/navigation/StarshipNavigator";
12-
1312
const Tab = createBottomTabNavigator();
1413

1514
export const BottomTabNavigator = () => {

hackathon/spacecraft/src/navigation/Navigator.tsx

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,12 @@
1+
import { useAuthentication } from "@/context/Authentication";
2+
import { useAppearanceTheme } from "@/hooks/useAppearanceTheme";
13
import { useReactNavigationDevTools } from "@dev-plugins/react-navigation";
24
import {
35
NavigationContainer,
46
useNavigationContainerRef,
57
} from "@react-navigation/native";
68
import { createNativeStackNavigator } from "@react-navigation/native-stack";
79

8-
import { useAuthentication } from "~/context/Authentication";
9-
import { useAppearanceTheme } from "~/hooks/useAppearanceTheme";
10-
1110
import { AuthNavigator } from "./AuthNavigator";
1211
import { BottomTabNavigator } from "./BottomTabNavigator";
1312

hackathon/spacecraft/src/navigation/PilotNavigator.tsx

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
1+
import { Routes } from "@/navigation/Routes";
2+
import { PilotDetailsScreen } from "@/screens/PilotDetailsScreen";
3+
import { PilotScreen } from "@/screens/PilotScreen";
4+
import { StarshipDetailsScreen } from "@/screens/StarshipDetailsScreen";
15
import { createNativeStackNavigator } from "@react-navigation/native-stack";
26

3-
import { Routes } from "~/navigation/Routes";
4-
import { PilotDetailsScreen } from "~/screens/PilotDetailsScreen";
5-
import { PilotScreen } from "~/screens/PilotScreen";
6-
import { StarshipDetailsScreen } from "~/screens/StarshipDetailsScreen";
7-
87
const Stack = createNativeStackNavigator();
98

109
export const PilotNavigator = () => {

hackathon/spacecraft/src/navigation/PlanetNavigator.tsx

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1+
import { PlanetDetailsScreen } from "@/screens/PlanetDetailsScreen";
2+
import { PlanetsScreen } from "@/screens/PlanetsScreen";
13
import { createNativeStackNavigator } from "@react-navigation/native-stack";
24

3-
import { PlanetDetailsScreen } from "~/screens/PlanetDetailsScreen";
4-
import { PlanetsScreen } from "~/screens/PlanetsScreen";
5-
65
import { Routes } from "./Routes";
76

87
const Stack = createNativeStackNavigator();

hackathon/spacecraft/src/navigation/PlusNavigator.tsx

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
1+
import { Routes } from "@/navigation/Routes";
2+
import { DisappointedScreen } from "@/screens/DisappointedScreen";
3+
import { DoYouLikeScreen } from "@/screens/DoYouLikeScreen";
4+
import { LoveScreen } from "@/screens/LoveScreen";
5+
import { PlusScreen } from "@/screens/PlusScreen";
16
import { createNativeStackNavigator } from "@react-navigation/native-stack";
27

3-
import { Routes } from "~/navigation/Routes";
4-
import { DisappointedScreen } from "~/screens/DisappointedScreen";
5-
import { DoYouLikeScreen } from "~/screens/DoYouLikeScreen";
6-
import { LoveScreen } from "~/screens/LoveScreen";
7-
import { PlusScreen } from "~/screens/PlusScreen";
8-
98
const Stack = createNativeStackNavigator();
109

1110
export const PlusNavigator = () => {

hackathon/spacecraft/src/navigation/StarshipNavigator.tsx

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,11 @@
11
import type { StarshipProps } from "api/types";
22

3+
import { Routes } from "@/navigation/Routes";
4+
import { StarshipDetailsScreen } from "@/screens/StarshipDetailsScreen";
5+
import { StarshipFeedScreen } from "@/screens/StarshipFeedScreen";
36
import { createNativeStackNavigator } from "@react-navigation/native-stack";
4-
5-
import { Routes } from "~/navigation/Routes";
6-
import { StarshipDetailsScreen } from "~/screens/StarshipDetailsScreen";
7-
import { StarshipFeedScreen } from "~/screens/StarshipFeedScreen";
87
// For Example
9-
// import { StarshipFeedScreen } from "~/screens/exercice/StarshipFeedScreen";
8+
// import { StarshipFeedScreen } from "@/screens/exercice/StarshipFeedScreen";
109

1110
export type StarshipStackParamList = {
1211
[Routes.STARSHIP_DETAILS_SCREEN]: {
@@ -35,7 +34,7 @@ export const StarshipNavigator = () => {
3534
name={Routes.STARSHIP_DETAILS_SCREEN}
3635
options={{
3736
contentStyle: {
38-
backgroundColor: "#fff",
37+
backgroundColor: "#ffffff",
3938
},
4039
presentation: "modal",
4140
}}

hackathon/spacecraft/src/screens/DisappointedScreen.tsx

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
1+
import { ButtonSupport } from "@/components/ButtonSupport";
2+
import { ScreenContainer } from "@/components/ScreenContainer";
13
/* eslint-disable max-len */
24
import { Image, ScrollView, View } from "react-native";
35
import { Button, Text } from "react-native-paper";
46

5-
import { ButtonSupport } from "~/components/ButtonSupport";
6-
import { ScreenContainer } from "~/components/ScreenContainer";
7-
87
interface Props {
98
navigation: any;
109
}

hackathon/spacecraft/src/screens/DoYouLikeScreen.tsx

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
1+
import { ScreenContainer } from "@/components/ScreenContainer";
2+
import { Routes } from "@/navigation/Routes";
13
import { Image } from "react-native";
24
import { List } from "react-native-paper";
35

4-
import { ScreenContainer } from "~/components/ScreenContainer";
5-
import { Routes } from "~/navigation/Routes";
6-
76
interface DoYouLikeScreenProps {
87
navigation: any;
98
}

hackathon/spacecraft/src/screens/LoginScreen.stories.tsx

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
1+
import { LoginScreen } from "@/screens/LoginScreen";
12
import { NavigationContainer } from "@react-navigation/native";
23

3-
import { LoginScreen } from "~/screens/LoginScreen";
4-
54
export default {
65
title: "Screen",
76
};

hackathon/spacecraft/src/screens/LoginScreen.tsx

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
1+
import { Header } from "@/components/Header";
12
import { useNavigation } from "@react-navigation/native";
23
import { useState } from "react";
34
import { StyleSheet, TouchableOpacity, View } from "react-native";
45
import { Button, Checkbox, Text, useTheme } from "react-native-paper";
56

6-
import { Header } from "~/components/Header";
7-
87
import { FormInput } from "../components/FromInput";
98
import { useAuthentication } from "../context/Authentication";
109
import { Routes } from "../navigation/Routes";

hackathon/spacecraft/src/screens/LoveScreen.tsx

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
1+
import { ButtonSupport } from "@/components/ButtonSupport";
2+
import { ScreenContainer } from "@/components/ScreenContainer";
13
import * as StoreReview from "expo-store-review";
24
import { Alert, Image, Platform, ScrollView, View } from "react-native";
35
import { Button, Text } from "react-native-paper";
46

5-
import { ButtonSupport } from "~/components/ButtonSupport";
6-
import { ScreenContainer } from "~/components/ScreenContainer";
7-
87
export const LoveScreen = () => {
98
const handleStoreReview = async () => {
109
if (await StoreReview.hasAction()) {

hackathon/spacecraft/src/screens/PilotDetailsScreen.tsx

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
11
import type { PeopleProps } from "api/types";
22

3+
import { ScreenContainer } from "@/components/ScreenContainer";
4+
import { StarshipLoadableList } from "@/components/StarshipLoadableList";
35
import { StyleSheet, View } from "react-native";
46
import { DataTable, Text } from "react-native-paper";
57

6-
import { ScreenContainer } from "~/components/ScreenContainer";
7-
import { StarshipLoadableList } from "~/components/StarshipLoadableList";
8-
98
interface PilotDetailsScreenProps {
109
route: {
1110
params: {

hackathon/spacecraft/src/screens/PilotScreen.tsx

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,12 @@
11
import type { PeopleProps } from "api/types";
22

3+
import { PeopleItem } from "@/components/PeopleItem";
4+
import { ScreenContainer } from "@/components/ScreenContainer";
5+
import { SkeletonList } from "@/components/SkeletonList";
6+
import { usePilot } from "@/hooks/usePilot";
37
import { FlatList } from "react-native";
48
import { Button } from "react-native-paper";
59

6-
import { PeopleItem } from "~/components/PeopleItem";
7-
import { ScreenContainer } from "~/components/ScreenContainer";
8-
import { SkeletonList } from "~/components/SkeletonList";
9-
import { usePilot } from "~/hooks/usePilot";
10-
1110
interface RenderItemProps {
1211
item: PeopleProps;
1312
}

hackathon/spacecraft/src/screens/PlanetDetailsScreen.tsx

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
1+
import { ScreenContainer } from "@/components/ScreenContainer";
12
import { Text } from "react-native-paper";
23

3-
import { ScreenContainer } from "~/components/ScreenContainer";
4-
54
/**
65
* @deprecated move this to typ please
76
*/

0 commit comments

Comments
 (0)