diff --git a/App.tsx b/App.tsx
index d0e94dd..69b4738 100644
--- a/App.tsx
+++ b/App.tsx
@@ -2,6 +2,7 @@ import React, { useEffect, useState } from "react";
import AppLoading from "expo-app-loading";
import { NavigationContainer } from "@react-navigation/native";
import { createStackNavigator } from "@react-navigation/stack";
+import { Provider as PaperProvider } from "react-native-paper";
// eslint-disable-next-line camelcase
import {
@@ -12,12 +13,14 @@ import {
Inter_600SemiBold,
} from "@expo-google-fonts/inter";
-import Home from "./src/modules/Home";
-import Settings from "./src/modules/Settings";
+import Home from "./src/screens/Home";
+import Settings from "./src/screens/Settings";
import DarkModeContext from "./src/contexts/DarkModeContext";
+
import DarkTheme from "./src/themes/DarkTheme";
import DefaultTheme from "./src/themes/DefaultTheme";
+import About from "./src/screens/About";
const Stack = createStackNavigator();
@@ -34,13 +37,20 @@ export default function App(): JSX.Element {
return !fontsLoaded ? (
) : (
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
);
}
diff --git a/babel.config.js b/babel.config.js
index 2900afe..342a9fb 100644
--- a/babel.config.js
+++ b/babel.config.js
@@ -1,6 +1,12 @@
-module.exports = function(api) {
+// eslint-disable-next-line func-names
+module.exports = function (api) {
api.cache(true);
return {
- presets: ['babel-preset-expo'],
+ presets: ["babel-preset-expo"],
+ env: {
+ production: {
+ plugins: ["react-native-paper/babel"],
+ },
+ },
};
};
diff --git a/package.json b/package.json
index 8a8f7c1..3a561b1 100644
--- a/package.json
+++ b/package.json
@@ -11,6 +11,7 @@
},
"dependencies": {
"@expo-google-fonts/inter": "^0.1.0",
+ "@expo/vector-icons": "^12.0.3",
"@react-native-async-storage/async-storage": "^1.13.2",
"@react-native-community/masked-view": "0.1.10",
"@react-navigation/native": "^5.9.2",
@@ -23,6 +24,7 @@
"react-dom": "16.13.1",
"react-native": "https://github.com/expo/react-native/archive/sdk-40.0.1.tar.gz",
"react-native-gesture-handler": "~1.8.0",
+ "react-native-paper": "^4.7.1",
"react-native-reanimated": "~1.13.0",
"react-native-safe-area-context": "3.1.9",
"react-native-screens": "~2.15.0"
diff --git a/src/components/DarkModeSwitch.tsx b/src/components/DarkModeSwitch.tsx
new file mode 100644
index 0000000..268f264
--- /dev/null
+++ b/src/components/DarkModeSwitch.tsx
@@ -0,0 +1,18 @@
+import React, { useContext } from "react";
+import { Switch } from "react-native-paper";
+import DarkModeContext from "../contexts/DarkModeContext";
+
+const DarkModeSwitch = (): JSX.Element => {
+ const { dark, setDark } = useContext(DarkModeContext);
+
+ return (
+ setDark((prev) => !prev)}
+ accessibilityComponentType=""
+ accessibilityTraits=""
+ />
+ );
+};
+
+export default DarkModeSwitch;
diff --git a/src/modules/Home.tsx b/src/modules/Home.tsx
deleted file mode 100644
index 1d42f34..0000000
--- a/src/modules/Home.tsx
+++ /dev/null
@@ -1,31 +0,0 @@
-import React, { useContext } from "react";
-import { View, SafeAreaView, Text, Button, StyleSheet } from "react-native";
-import { useTheme } from "@react-navigation/native";
-import DarkModeContext from "../contexts/DarkModeContext";
-
-export default function Home(): JSX.Element {
- const { dark, setDark } = useContext(DarkModeContext);
- const { colors } = useTheme();
-
- const styles = StyleSheet.create({
- text: {
- color: colors.text,
- },
- });
-
- return (
-
-
- Bruh :) {String(dark)}
-
-
- );
-}
diff --git a/src/modules/Settings.tsx b/src/modules/Settings.tsx
deleted file mode 100644
index 27717c0..0000000
--- a/src/modules/Settings.tsx
+++ /dev/null
@@ -1,19 +0,0 @@
-import React from "react";
-import { View, SafeAreaView, Text } from "react-native";
-
-export default function Settings(): JSX.Element {
- return (
-
-
- Settings
-
-
- );
-}
diff --git a/src/screens/About.tsx b/src/screens/About.tsx
new file mode 100644
index 0000000..38ecf5a
--- /dev/null
+++ b/src/screens/About.tsx
@@ -0,0 +1,13 @@
+import React from "react";
+import { View } from "react-native";
+import { Text } from "react-native-paper";
+
+export default function About(): JSX.Element {
+ return (
+
+
+ Hello there
+
+
+ );
+}
diff --git a/src/screens/Home.tsx b/src/screens/Home.tsx
new file mode 100644
index 0000000..5b714fb
--- /dev/null
+++ b/src/screens/Home.tsx
@@ -0,0 +1,35 @@
+import React from "react";
+import { View } from "react-native";
+
+import { IconButton, Text } from "react-native-paper";
+import { HomeProps as Props } from "../utils/StackTypes";
+
+export default function Home({ navigation }: Props): JSX.Element {
+ React.useLayoutEffect(() => {
+ navigation.setOptions({
+ headerRight: () => (
+ navigation.navigate("Settings")}
+ accessibilityComponentType=""
+ accessibilityTraits=""
+ />
+ ),
+ });
+ }, [navigation]);
+
+ return (
+
+
+ Hello
+
+
+ );
+}
diff --git a/src/screens/Settings.tsx b/src/screens/Settings.tsx
new file mode 100644
index 0000000..3802e7b
--- /dev/null
+++ b/src/screens/Settings.tsx
@@ -0,0 +1,38 @@
+import React from "react";
+import { ScrollView } from "react-native";
+import { Divider, IconButton, List } from "react-native-paper";
+import DarkModeSwitch from "../components/DarkModeSwitch";
+
+import { SettingsProps as Props } from "../utils/StackTypes";
+
+export default function Settings({ navigation }: Props): JSX.Element {
+ React.useLayoutEffect(() => {
+ navigation.setOptions({
+ headerRight: () => (
+ navigation.navigate("About")}
+ accessibilityComponentType=""
+ accessibilityTraits=""
+ />
+ ),
+ });
+ }, [navigation]);
+
+ return (
+
+ }
+ left={() => }
+ />
+
+
+ );
+}
diff --git a/src/modules/dev/Home.tsx b/src/screens/dev/Home.tsx
similarity index 100%
rename from src/modules/dev/Home.tsx
rename to src/screens/dev/Home.tsx
diff --git a/src/themes/DarkTheme.ts b/src/themes/DarkTheme.ts
index f197c2e..8c68794 100644
--- a/src/themes/DarkTheme.ts
+++ b/src/themes/DarkTheme.ts
@@ -1,11 +1,14 @@
import { DarkTheme as _DarkTheme } from "@react-navigation/native";
+import { DarkTheme as _DarkThemePaper } from "react-native-paper";
const DarkTheme = {
..._DarkTheme,
+ ..._DarkThemePaper,
colors: {
..._DarkTheme.colors,
- primary: "rgb(37, 165, 95)",
- background: "rgb(24, 26, 32)",
+ ..._DarkThemePaper.colors,
+ primary: "#25A55F",
+ background: "#181A20",
},
};
diff --git a/src/themes/DefaultTheme.ts b/src/themes/DefaultTheme.ts
index c61fc2b..3a0c7cc 100644
--- a/src/themes/DefaultTheme.ts
+++ b/src/themes/DefaultTheme.ts
@@ -1,9 +1,12 @@
import { DefaultTheme as _DefaultTheme } from "@react-navigation/native";
+import { DefaultTheme as _DefaultThemePaper } from "react-native-paper";
const DefaultTheme = {
..._DefaultTheme,
+ ..._DefaultThemePaper,
colors: {
..._DefaultTheme.colors,
+ ..._DefaultThemePaper.colors,
primary: "rgb(37, 165, 95)",
background: "rgb(249, 249, 249)",
},
diff --git a/src/utils/StackTypes.ts b/src/utils/StackTypes.ts
new file mode 100644
index 0000000..2bf37e4
--- /dev/null
+++ b/src/utils/StackTypes.ts
@@ -0,0 +1,11 @@
+import { StackScreenProps } from "@react-navigation/stack";
+
+type RootStackParamList = {
+ Home: undefined;
+ Settings: undefined;
+ About: undefined;
+ Feed: { sort: "latest" | "top" } | undefined;
+};
+
+export type HomeProps = StackScreenProps;
+export type SettingsProps = StackScreenProps;
diff --git a/yarn-error.log b/yarn-error.log
index be7c47b..714a66f 100644
--- a/yarn-error.log
+++ b/yarn-error.log
@@ -1,8 +1,8 @@
Arguments:
- C:\Program Files\nodejs\node.exe C:\Program Files (x86)\Yarn\bin\yarn.js add const
+ C:\Program Files\nodejs\node.exe C:\Program Files (x86)\Yarn\bin\yarn.js add -D @types/react-native-settings-components
PATH:
- C:\Program Files (x86)\Google\Chrome\Application;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files\NVIDIA Corporation\NVIDIA NvDLISR;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files\dotnet\;C:\Program Files (x86)\Universal Extractor;C:\Program Files (x86)\Universal Extractor\bin;C:\Users\games\AppData\Local\Programs\Microsoft VS Code\geckodriver.exe;C:\ProgramData\chocolatey\bin;C:\Program Files\OpenSSL-Win64\bin;C:\Go\bin;C:\Program Files\PuTTY\;C:\Program Files (x86)\Yarn\bin\;E:\Program Files\Redis\;C:\Program Files\nodejs\;C:\Program Files\Git\cmd;D:\Ruby26-x64\bin;C:\Users\games\AppData\Local\Programs\Python\Python38-32\Scripts\;C:\Users\games\AppData\Local\Programs\Python\Python38-32\;C:\Users\games\AppData\Local\Microsoft\WindowsApps;C:\Users\games\AppData\Local\Programs\Microsoft VS Code\bin;C:\Program Files (x86)\Atmel\Flip 3.4.7\bin;C:\Users\games\AppData\Local\GitHubDesktop\bin;C:\Users\games\go\bin;C:\Program Files (x86)\FFmpeg\bin;C:\mingw\mingw64\bin;C:\Program Files\heroku\bin;C:\Users\games\go\bin;C:\Users\games\AppData\Roaming\Python\Python38\Scripts;C:\Users\games\.dotnet\tools;E:\Programs\VSCI\Microsoft VS Code Insiders\bin;C:\Users\games\AppData\Local\Yarn\bin;E:\Program Files\PostgreSQL\13\bin;C:\Users\games\AppData\Roaming\npm
+ C:\Program Files\Git\mingw64\bin;C:\Program Files\Git\usr\bin;C:\Users\games\bin;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0;C:\Windows\System32\OpenSSH;C:\Program Files\NVIDIA Corporation\NVIDIA NvDLISR;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files\dotnet;C:\Program Files (x86)\Universal Extractor;C:\Program Files (x86)\Universal Extractor\bin;C:\Users\games\AppData\Local\Programs\Microsoft VS Code\geckodriver.exe;C:\ProgramData\chocolatey\bin;C:\Program Files\OpenSSL-Win64\bin;C:\Program Files\PuTTY;C:\Program Files (x86)\Yarn\bin;E:\Program Files\Redis;C:\Program Files\nodejs;C:\Program Files\Git\cmd;C:\Program Files (x86)\dotnet;D:\Ruby26-x64\bin;C:\Users\games\AppData\Local\Programs\Python\Python38-32\Scripts;C:\Users\games\AppData\Local\Programs\Python\Python38-32;C:\Users\games\AppData\Local\Microsoft\WindowsApps;C:\Users\games\AppData\Local\Programs\Microsoft VS Code\bin;C:\Program Files (x86)\Atmel\Flip 3.4.7\bin;C:\Users\games\AppData\Local\GitHubDesktop\bin;C:\Users\games\go\bin;C:\Program Files (x86)\FFmpeg\bin;C:\mingw\mingw64\bin;C:\Program Files\heroku\bin;C:\Users\games\AppData\Roaming\Python\Python38\Scripts;C:\Users\games\.dotnet\tools;E:\Programs\VSCI\Microsoft VS Code Insiders\bin;C:\Users\games\AppData\Local\Yarn\bin;E:\Program Files\PostgreSQL\13\bin;C:\Users\games\AppData\Roaming\npm;C:\chromedriver;C:\youtube-dl
Yarn version:
1.22.5
@@ -14,7 +14,17 @@ Platform:
win32 x64
Trace:
- Error: EPERM: operation not permitted, unlink 'c:\Users\games\Documents\GitHub\expo-typescript-starter\node_modules\.bin'
+ Error: https://registry.npmjs.org/@types%2freact-native-settings-components: Not found
+ at Request.params.callback [as _callback] (C:\Program Files (x86)\Yarn\lib\cli.js:66097:18)
+ at Request.self.callback (C:\Program Files (x86)\Yarn\lib\cli.js:140749:22)
+ at Request.emit (events.js:315:20)
+ at Request. (C:\Program Files (x86)\Yarn\lib\cli.js:141721:10)
+ at Request.emit (events.js:315:20)
+ at IncomingMessage. (C:\Program Files (x86)\Yarn\lib\cli.js:141643:12)
+ at Object.onceWrapper (events.js:421:28)
+ at IncomingMessage.emit (events.js:327:22)
+ at endReadableNT (internal/streams/readable.js:1327:12)
+ at processTicksAndRejections (internal/process/task_queues.js:80:21)
npm manifest:
{
@@ -30,14 +40,23 @@ npm manifest:
},
"dependencies": {
"@expo-google-fonts/inter": "^0.1.0",
+ "@expo/vector-icons": "^12.0.3",
"@react-native-async-storage/async-storage": "^1.13.2",
+ "@react-native-community/masked-view": "0.1.10",
+ "@react-navigation/native": "^5.9.2",
+ "@react-navigation/stack": "^5.14.2",
"expo": "~40.0.0",
"expo-app-loading": "^1.0.1",
"expo-font": "~8.4.0",
"expo-web-browser": "^8.6.0",
"react": "16.13.1",
"react-dom": "16.13.1",
- "react-native": "https://github.com/expo/react-native/archive/sdk-40.0.1.tar.gz"
+ "react-native": "https://github.com/expo/react-native/archive/sdk-40.0.1.tar.gz",
+ "react-native-gesture-handler": "~1.8.0",
+ "react-native-reanimated": "~1.13.0",
+ "react-native-safe-area-context": "3.1.9",
+ "react-native-screens": "~2.15.0",
+ "react-native-settings-components": "^0.0.2"
},
"devDependencies": {
"@types/react": "~16.9.35",
@@ -54,6 +73,7 @@ npm manifest:
"eslint-plugin-react": "^7.21.5",
"eslint-plugin-react-hooks": "^4.2.0",
"expo-network": "^2.4.0",
+ "expo-optimize": "^0.1.70",
"prettier": "^2.2.1",
"react-native-web": "~0.13.12",
"typescript": "~4.0.0"
@@ -1069,6 +1089,13 @@ Lockfile:
exec-sh "^0.3.2"
minimist "^1.2.0"
+ "@egjs/hammerjs@^2.0.17":
+ version "2.0.17"
+ resolved "https://registry.yarnpkg.com/@egjs/hammerjs/-/hammerjs-2.0.17.tgz#5dc02af75a6a06e4c2db0202cae38c9263895124"
+ integrity sha512-XQsZgjm2EcVUiZQf11UBJQfmZeEmOW8DpI1gsFeln6w0ae0ii4dMQEQ0kjl6DspdWX1aGY1/loyXnP0JS06e/A==
+ dependencies:
+ "@types/hammerjs" "^2.0.36"
+
"@eslint/eslintrc@^0.2.2":
version "0.2.2"
resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.2.2.tgz#d01fc791e2fc33e88a29d6f3dc7e93d0cd784b76"
@@ -1166,6 +1193,18 @@ Lockfile:
lodash.pick "^4.4.0"
lodash.template "^4.5.0"
+ "@expo/vector-icons@^12.0.3":
+ version "12.0.3"
+ resolved "https://registry.yarnpkg.com/@expo/vector-icons/-/vector-icons-12.0.3.tgz#d7379a3a6bfd4189bc6aed9b9d295f3aca6a5ece"
+ integrity sha512-KlQ1MC2ff/CBYV/Nsu+O7wa712I0plb5N5PdMhYxLbVGW2KkULEbAoFp04nab3R4eej/Tq10G+yjTu04q16n3g==
+ dependencies:
+ lodash.frompairs "^4.0.1"
+ lodash.isequal "^4.5.0"
+ lodash.isstring "^4.0.1"
+ lodash.omit "^4.5.0"
+ lodash.pick "^4.4.0"
+ lodash.template "^4.5.0"
+
"@expo/websql@^1.0.1":
version "1.0.1"
resolved "https://registry.yarnpkg.com/@expo/websql/-/websql-1.0.1.tgz#fff0cf9c1baa1f70f9e1d658b7c39a420d9b10a9"
@@ -1423,6 +1462,51 @@ Lockfile:
sudo-prompt "^9.0.0"
wcwidth "^1.0.1"
+ "@react-native-community/masked-view@0.1.10":
+ version "0.1.10"
+ resolved "https://registry.yarnpkg.com/@react-native-community/masked-view/-/masked-view-0.1.10.tgz#5dda643e19e587793bc2034dd9bf7398ad43d401"
+ integrity sha512-rk4sWFsmtOw8oyx8SD3KSvawwaK7gRBSEIy2TAwURyGt+3TizssXP1r8nx3zY+R7v2vYYHXZ+k2/GULAT/bcaQ==
+
+ "@react-navigation/core@^5.15.1":
+ version "5.15.1"
+ resolved "https://registry.yarnpkg.com/@react-navigation/core/-/core-5.15.1.tgz#dab5192277c606d9acbea511dac407c2834b5fbe"
+ integrity sha512-GDCpIVQd0NgHYCSdUMY69hrpeWKuYgj5SIRqHI2sYh9OguwGcV52ZZOafc+pQuyfuiLLIMidw34jiqb47QrlhA==
+ dependencies:
+ "@react-navigation/routers" "^5.7.1"
+ escape-string-regexp "^4.0.0"
+ nanoid "^3.1.15"
+ query-string "^6.13.6"
+ react-is "^16.13.0"
+
+ "@react-navigation/native@^5.9.2":
+ version "5.9.2"
+ resolved "https://registry.yarnpkg.com/@react-navigation/native/-/native-5.9.2.tgz#2075774c3627d58a324e1b5dfc5f4f356a1ab7e9"
+ integrity sha512-O8K+Lr6Vy25gTTyXAns9BVyFvwTkKqfFH0RpOimilYndUL6tlhV56oDSp7Hryjy8xsjx6ESWqr6eIu4sS3Z9nQ==
+ dependencies:
+ "@react-navigation/core" "^5.15.1"
+ escape-string-regexp "^4.0.0"
+ nanoid "^3.1.15"
+
+ "@react-navigation/routers@^5.7.1":
+ version "5.7.1"
+ resolved "https://registry.yarnpkg.com/@react-navigation/routers/-/routers-5.7.1.tgz#ba56cabdaabc521ef29c26529e868590949429b1"
+ integrity sha512-M5R4AFgJZ0uBUV+DjMyNy2HXRfvo0ldM+59Gj1NQWXaYnst3m0xJTfWiln94mnrbrHEq087gMP4ZLHGIJ8D1Ig==
+ dependencies:
+ nanoid "^3.1.15"
+
+ "@react-navigation/stack@^5.14.2":
+ version "5.14.2"
+ resolved "https://registry.yarnpkg.com/@react-navigation/stack/-/stack-5.14.2.tgz#6e48efa74a9b0fc29ff0a90fcbee161039b84d78"
+ integrity sha512-tt1eFn6HClyXVZiVQsPs3Q2MgoqmJdkQsyT9P4TBLxGsdib6r/oc++eVNc+G/6ws/kCquDdHq3fz1PNSCtyrJA==
+ dependencies:
+ color "^3.1.3"
+ react-native-iphone-x-helper "^1.3.0"
+
+ "@types/hammerjs@^2.0.36":
+ version "2.0.38"
+ resolved "https://registry.yarnpkg.com/@types/hammerjs/-/hammerjs-2.0.38.tgz#44fdab66fb960fc7002f4a9e54d91545f0bf9448"
+ integrity sha512-wuwDzWW1JWh3BZoRftBlKcctjNzR75QFY4/b4zAz7sH1EesA8HBJzke+bF5dxCATNdHHs3X1P5UWanbbUT6chw==
+
"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0":
version "2.0.3"
resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz#4ba8ddb720221f432e443bd5f9117fd22cfd4762"
@@ -2298,7 +2382,7 @@ Lockfile:
map-visit "^1.0.0"
object-visit "^1.0.0"
- color-convert@^1.9.0:
+ color-convert@^1.9.0, color-convert@^1.9.1:
version "1.9.3"
resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8"
integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==
@@ -2322,7 +2406,7 @@ Lockfile:
resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2"
integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==
- color-string@^1.5.3:
+ color-string@^1.5.3, color-string@^1.5.4:
version "1.5.4"
resolved "https://registry.yarnpkg.com/color-string/-/color-string-1.5.4.tgz#dd51cd25cfee953d138fe4002372cc3d0e504cb6"
integrity sha512-57yF5yt8Xa3czSEW1jfQDE79Idk0+AkN/4KWad6tbdxUmAs3MvjxlWSWD4deYytcRfoZ9nhKyFl1kj5tBvidbw==
@@ -2335,6 +2419,14 @@ Lockfile:
resolved "https://registry.yarnpkg.com/color-support/-/color-support-1.1.3.tgz#93834379a1cc9a0c61f82f52f0d04322251bd5a2"
integrity sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==
+ color@^3.1.3:
+ version "3.1.3"
+ resolved "https://registry.yarnpkg.com/color/-/color-3.1.3.tgz#ca67fb4e7b97d611dcde39eceed422067d91596e"
+ integrity sha512-xgXAcTHa2HeFCGLE9Xs/R82hujGtu9Jd9x4NW3T34+OMs7VoPsjwzRczKHvTAHeJwWFwX5j15+MgAppE8ztObQ==
+ dependencies:
+ color-convert "^1.9.1"
+ color-string "^1.5.4"
+
colorette@^1.0.7, colorette@^1.2.1:
version "1.2.1"
resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.2.1.tgz#4d0b921325c14faf92633086a536db6e89564b1b"
@@ -2843,6 +2935,11 @@ Lockfile:
resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344"
integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==
+ escape-string-regexp@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34"
+ integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==
+
eslint-config-airbnb-base@^14.2.1:
version "14.2.1"
resolved "https://registry.yarnpkg.com/eslint-config-airbnb-base/-/eslint-config-airbnb-base-14.2.1.tgz#8a2eb38455dc5a312550193b319cdaeef042cd1e"
@@ -3187,6 +3284,11 @@ Lockfile:
resolved "https://registry.yarnpkg.com/expo-network/-/expo-network-2.4.0.tgz#f96fda92d68be1556f9e4ff8bc3b5c65b178b1f1"
integrity sha512-p9UxdgQbLGLfEJsD71eaNgPKCo2A4cbLTIYS10fL6FROT31H08Br7AFWx9H8jHLGLNWyjA0R1vTJ2ETDyjse/Q==
+ expo-optimize@^0.1.70:
+ version "0.1.70"
+ resolved "https://registry.yarnpkg.com/expo-optimize/-/expo-optimize-0.1.70.tgz#ff6b274402cd00712d5a91a3c7410057b4329004"
+ integrity sha512-dLAAfMQUMz5haDgLjyEh+mabIHb9GjRB05xY2nvCT4ddmP+HN9IIV2wUlTgCE1jdpPzR36UsWjE1vdmBrSMOZg==
+
expo-permissions@~10.0.0:
version "10.0.0"
resolved "https://registry.yarnpkg.com/expo-permissions/-/expo-permissions-10.0.0.tgz#5b31c54d561d00c7e46cd02321bc3704c51c584b"
@@ -3767,6 +3869,13 @@ Lockfile:
dependencies:
source-map "^0.7.3"
+ hoist-non-react-statics@^3.3.0:
+ version "3.3.2"
+ resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz#ece0acaf71d62c2969c2ec59feff42a4b1a85b45"
+ integrity sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==
+ dependencies:
+ react-is "^16.7.0"
+
hosted-git-info@^2.1.4:
version "2.8.8"
resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.8.tgz#7539bd4bc1e0e0a895815a2e0262420b12858488"
@@ -4535,7 +4644,7 @@ Lockfile:
resolved "https://registry.yarnpkg.com/lodash.throttle/-/lodash.throttle-4.1.1.tgz#c23e91b710242ac70c37f1e1cda9274cc39bf2f4"
integrity sha1-wj6RtxAkKscMN/HhzaknTMOb8vQ=
- lodash@^4.17.13, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.3.0, lodash@^4.5.0, lodash@^4.6.0:
+ lodash@^4.17.11, lodash@^4.17.13, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.3.0, lodash@^4.5.0, lodash@^4.6.0:
version "4.17.20"
resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.20.tgz#b44a9b6297bcb698f1c51a3545a2b3b368d59c52"
integrity sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==
@@ -5074,6 +5183,11 @@ Lockfile:
resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.2.tgz#f5376400695168f4cc694ac9393d0c9585eeea19"
integrity sha512-M2ufzIiINKCuDfBSAUr1vWQ+vuVcA9kqx8JJUsbQi6yf1uGRyb7HfpdfUr5qLXf3B/t8dPvcjhKMmlfnP47EzQ==
+ nanoid@^3.1.15:
+ version "3.1.20"
+ resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.1.20.tgz#badc263c6b1dcf14b71efaa85f6ab4c1d6cfc788"
+ integrity sha512-a1cQNyczgKbLX9jwbS/+d7W8fX/RfgYR7lVWwWOGIPNgK2m0MWvrGF6/m4kk6U3QcFMnZf3RIhL0v2Jgh/0Uxw==
+
nanomatch@^1.2.9:
version "1.2.13"
resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119"
@@ -5698,6 +5812,15 @@ Lockfile:
object-assign "^4.1.0"
strict-uri-encode "^1.0.0"
+ query-string@^6.13.6:
+ version "6.13.8"
+ resolved "https://registry.yarnpkg.com/query-string/-/query-string-6.13.8.tgz#8cf231759c85484da3cf05a851810d8e825c1159"
+ integrity sha512-jxJzQI2edQPE/NPUOusNjO/ZOGqr1o2OBa/3M00fU76FsLXDVbJDv/p7ng5OdQyorKrkRz1oqfwmbe5MAMePQg==
+ dependencies:
+ decode-uri-component "^0.2.0"
+ split-on-first "^1.0.0"
+ strict-uri-encode "^2.0.0"
+
querystringify@^2.1.1:
version "2.2.0"
resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-2.2.0.tgz#3345941b4153cb9d082d8eee4cda2016a9aef7f6"
@@ -5726,7 +5849,7 @@ Lockfile:
prop-types "^15.6.2"
scheduler "^0.19.1"
- react-is@^16.12.0, react-is@^16.8.1, react-is@^16.8.4:
+ react-is@^16.12.0, react-is@^16.13.0, react-is@^16.7.0, react-is@^16.8.1, react-is@^16.8.4:
version "16.13.1"
resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4"
integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==
@@ -5736,11 +5859,51 @@ Lockfile:
resolved "https://registry.yarnpkg.com/react-is/-/react-is-17.0.1.tgz#5b3531bd76a645a4c9fb6e693ed36419e3301339"
integrity sha512-NAnt2iGDXohE5LI7uBnLnqvLQMtzhkiAOLXTmv+qnF9Ky7xAPcX8Up/xWIhxvLVGJvuLiNc4xQLtuqDRzb4fSA==
+ react-native-dialogs@^1.0.2:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/react-native-dialogs/-/react-native-dialogs-1.1.1.tgz#db68fee6f6f654a2ae6fd45d5a75fc23118e4b96"
+ integrity sha512-JduVYRXvLTT4k4VfXuKt3HF2/fixsR1EDXkvNf8fJwxKZUs2kzs1E0EtgiAx4IgYMTOewLPVtzTVfiv0GWeHuA==
+
+ react-native-gesture-handler@~1.8.0:
+ version "1.8.0"
+ resolved "https://registry.yarnpkg.com/react-native-gesture-handler/-/react-native-gesture-handler-1.8.0.tgz#18f61f51da50320f938957b0ee79bc58f47449dc"
+ integrity sha512-E2FZa0qZ5Bi0Z8Jg4n9DaFomHvedSjwbO2DPmUUHYRy1lH2yxXUpSrqJd6yymu+Efzmjg2+JZzsjFYA2Iq8VEQ==
+ dependencies:
+ "@egjs/hammerjs" "^2.0.17"
+ hoist-non-react-statics "^3.3.0"
+ invariant "^2.2.4"
+ prop-types "^15.7.2"
+
+ react-native-iphone-x-helper@^1.3.0:
+ version "1.3.1"
+ resolved "https://registry.yarnpkg.com/react-native-iphone-x-helper/-/react-native-iphone-x-helper-1.3.1.tgz#20c603e9a0e765fd6f97396638bdeb0e5a60b010"
+ integrity sha512-HOf0jzRnq2/aFUcdCJ9w9JGzN3gdEg0zFE4FyYlp4jtidqU03D5X7ZegGKfT1EWteR0gPBGp9ye5T5FvSWi9Yg==
+
+ react-native-reanimated@~1.13.0:
+ version "1.13.2"
+ resolved "https://registry.yarnpkg.com/react-native-reanimated/-/react-native-reanimated-1.13.2.tgz#1ae5457b24b4913d173a5a064bb28eae7783d293"
+ integrity sha512-O+WhgxSjOIzcVdAAvx+h2DY331Ek1knKlaq+jsNLpC1fhRy9XTdOObovgob/aF2ve9uJfPEawCx8381g/tUJZQ==
+ dependencies:
+ fbjs "^1.0.0"
+
react-native-safe-area-context@3.1.9:
version "3.1.9"
resolved "https://registry.yarnpkg.com/react-native-safe-area-context/-/react-native-safe-area-context-3.1.9.tgz#48864ea976b0fa57142a2cc523e1fd3314e7247e"
integrity sha512-wmcGbdyE/vBSL5IjDPReoJUEqxkZsywZw5gPwsVUV1NBpw5eTIdnL6Y0uNKHE25Z661moxPHQz6kwAkYQyorxA==
+ react-native-screens@~2.15.0:
+ version "2.15.2"
+ resolved "https://registry.yarnpkg.com/react-native-screens/-/react-native-screens-2.15.2.tgz#a449700e895b462937211ec72ed6f09652758f06"
+ integrity sha512-CagNf2APXkVoRlF3Mugr264FbKbrBg9eXUkqhIPVeZB8EsdS8XPrnt99yj/pzmT+yJMBY0dGrjXT8+68WYh6YQ==
+
+ react-native-settings-components@^0.0.2:
+ version "0.0.2"
+ resolved "https://registry.yarnpkg.com/react-native-settings-components/-/react-native-settings-components-0.0.2.tgz#39e4e352b85674897e31ecde05e6195c59023c14"
+ integrity sha512-rlac3meFPmCyMpV7cj58P3ZiqcMUbj2F0Gt+F76Ghneu9hUgU6LWKqxiKIQc0lhgJBof9khBTJYpqkWNmG7SaA==
+ dependencies:
+ lodash "^4.17.11"
+ react-native-dialogs "^1.0.2"
+
react-native-web@~0.13.12:
version "0.13.18"
resolved "https://registry.yarnpkg.com/react-native-web/-/react-native-web-0.13.18.tgz#964f058a16521a3b9a31b091415edfef5b6ef305"
@@ -6379,6 +6542,11 @@ Lockfile:
resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.7.tgz#e9c18a410e5ed7e12442a549fbd8afa767038d65"
integrity sha512-U+MTEOO0AiDzxwFvoa4JVnMV6mZlJKk2sBLt90s7G0Gd0Mlknc7kxEn3nuDPNZRta7O2uy8oLcZLVT+4sqNZHQ==
+ split-on-first@^1.0.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/split-on-first/-/split-on-first-1.1.0.tgz#f610afeee3b12bce1d0c30425e76398b78249a5f"
+ integrity sha512-43ZssAJaMusuKWL8sKUBQXHWOpq8d6CfN/u1p4gUzfJkM05C8rxTmYrkIPTXapZpORA6LkkzcUulJ8FqA7Uudw==
+
split-string@^3.0.1, split-string@^3.0.2:
version "3.1.0"
resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2"
@@ -6428,6 +6596,11 @@ Lockfile:
resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713"
integrity sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=
+ strict-uri-encode@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-2.0.0.tgz#b9c7330c7042862f6b142dc274bbcc5866ce3546"
+ integrity sha1-ucczDHBChi9rFC3CdLvMWGbONUY=
+
string-width@^2.1.0:
version "2.1.1"
resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e"
diff --git a/yarn.lock b/yarn.lock
index 9ea493d..f4340b8 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -995,6 +995,14 @@
lodash "^4.17.19"
to-fast-properties "^2.0.0"
+"@callstack/react-theme-provider@^3.0.5":
+ version "3.0.5"
+ resolved "https://registry.yarnpkg.com/@callstack/react-theme-provider/-/react-theme-provider-3.0.5.tgz#a173e455e9603c9c45357a3b6ace1273086527ca"
+ integrity sha512-Iec+ybWN0FvNj87sD3oWo/49edGUP0UOSdMnzCJEFJIDYr992ECIuOV89burAAh2/ibPCxgLiK6dmgv2mO/8Tg==
+ dependencies:
+ deepmerge "^3.2.0"
+ hoist-non-react-statics "^3.3.0"
+
"@cnakazawa/watch@^1.0.3":
version "1.0.4"
resolved "https://registry.yarnpkg.com/@cnakazawa/watch/-/watch-1.0.4.tgz#f864ae85004d0fcab6f50be9141c4da368d1656a"
@@ -1107,6 +1115,18 @@
lodash.pick "^4.4.0"
lodash.template "^4.5.0"
+"@expo/vector-icons@^12.0.3":
+ version "12.0.3"
+ resolved "https://registry.yarnpkg.com/@expo/vector-icons/-/vector-icons-12.0.3.tgz#d7379a3a6bfd4189bc6aed9b9d295f3aca6a5ece"
+ integrity sha512-KlQ1MC2ff/CBYV/Nsu+O7wa712I0plb5N5PdMhYxLbVGW2KkULEbAoFp04nab3R4eej/Tq10G+yjTu04q16n3g==
+ dependencies:
+ lodash.frompairs "^4.0.1"
+ lodash.isequal "^4.5.0"
+ lodash.isstring "^4.0.1"
+ lodash.omit "^4.5.0"
+ lodash.pick "^4.4.0"
+ lodash.template "^4.5.0"
+
"@expo/websql@^1.0.1":
version "1.0.1"
resolved "https://registry.yarnpkg.com/@expo/websql/-/websql-1.0.1.tgz#fff0cf9c1baa1f70f9e1d658b7c39a420d9b10a9"
@@ -2321,7 +2341,7 @@ color-support@^1.1.3:
resolved "https://registry.yarnpkg.com/color-support/-/color-support-1.1.3.tgz#93834379a1cc9a0c61f82f52f0d04322251bd5a2"
integrity sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==
-color@^3.1.3:
+color@^3.1.2, color@^3.1.3:
version "3.1.3"
resolved "https://registry.yarnpkg.com/color/-/color-3.1.3.tgz#ca67fb4e7b97d611dcde39eceed422067d91596e"
integrity sha512-xgXAcTHa2HeFCGLE9Xs/R82hujGtu9Jd9x4NW3T34+OMs7VoPsjwzRczKHvTAHeJwWFwX5j15+MgAppE8ztObQ==
@@ -5771,11 +5791,20 @@ react-native-gesture-handler@~1.8.0:
invariant "^2.2.4"
prop-types "^15.7.2"
-react-native-iphone-x-helper@^1.3.0:
+react-native-iphone-x-helper@^1.3.0, react-native-iphone-x-helper@^1.3.1:
version "1.3.1"
resolved "https://registry.yarnpkg.com/react-native-iphone-x-helper/-/react-native-iphone-x-helper-1.3.1.tgz#20c603e9a0e765fd6f97396638bdeb0e5a60b010"
integrity sha512-HOf0jzRnq2/aFUcdCJ9w9JGzN3gdEg0zFE4FyYlp4jtidqU03D5X7ZegGKfT1EWteR0gPBGp9ye5T5FvSWi9Yg==
+react-native-paper@^4.7.1:
+ version "4.7.1"
+ resolved "https://registry.yarnpkg.com/react-native-paper/-/react-native-paper-4.7.1.tgz#9f22116d39e4a129be9fd4c8d7342d0f6a20245c"
+ integrity sha512-37xJgCcTAELFBvE7+l9xcMW3wh2/dvrOs7TeRLIpnHsjfa+m4h+vvzb8q0YIUJOKtHcJ4cY77NHUr6JMGzNHFw==
+ dependencies:
+ "@callstack/react-theme-provider" "^3.0.5"
+ color "^3.1.2"
+ react-native-iphone-x-helper "^1.3.1"
+
react-native-reanimated@~1.13.0:
version "1.13.2"
resolved "https://registry.yarnpkg.com/react-native-reanimated/-/react-native-reanimated-1.13.2.tgz#1ae5457b24b4913d173a5a064bb28eae7783d293"