diff --git a/.vs/VSWorkspaceState.json b/.vs/VSWorkspaceState.json
index de64c1d..8f3031a 100644
--- a/.vs/VSWorkspaceState.json
+++ b/.vs/VSWorkspaceState.json
@@ -1,11 +1,9 @@
{
"ExpandedNodes": [
"",
- "\\assets",
"\\components",
- "\\data",
"\\pages"
],
- "SelectedNode": "\\components\\KanjiCard.tsx",
+ "SelectedNode": "\\pages\\Playground.tsx",
"PreviewInSolutionExplorer": false
}
\ No newline at end of file
diff --git a/.vs/iut-expo-starter/FileContentIndex/26bb8f95-1889-4e51-8030-dd44af0da4f7.vsidx b/.vs/iut-expo-starter/FileContentIndex/0c39b26e-7504-4519-80ab-85d57005ca60.vsidx
similarity index 54%
rename from .vs/iut-expo-starter/FileContentIndex/26bb8f95-1889-4e51-8030-dd44af0da4f7.vsidx
rename to .vs/iut-expo-starter/FileContentIndex/0c39b26e-7504-4519-80ab-85d57005ca60.vsidx
index 100031d..46fcd2e 100644
Binary files a/.vs/iut-expo-starter/FileContentIndex/26bb8f95-1889-4e51-8030-dd44af0da4f7.vsidx and b/.vs/iut-expo-starter/FileContentIndex/0c39b26e-7504-4519-80ab-85d57005ca60.vsidx differ
diff --git a/.vs/iut-expo-starter/FileContentIndex/191a09ed-8197-4b82-8c17-172be12a37b5.vsidx b/.vs/iut-expo-starter/FileContentIndex/191a09ed-8197-4b82-8c17-172be12a37b5.vsidx
new file mode 100644
index 0000000..9267cf8
Binary files /dev/null and b/.vs/iut-expo-starter/FileContentIndex/191a09ed-8197-4b82-8c17-172be12a37b5.vsidx differ
diff --git a/.vs/iut-expo-starter/FileContentIndex/5cdbe43f-5b13-4cf7-b1e5-aeb3a934826b.vsidx b/.vs/iut-expo-starter/FileContentIndex/5cdbe43f-5b13-4cf7-b1e5-aeb3a934826b.vsidx
deleted file mode 100644
index da8add1..0000000
Binary files a/.vs/iut-expo-starter/FileContentIndex/5cdbe43f-5b13-4cf7-b1e5-aeb3a934826b.vsidx and /dev/null differ
diff --git a/.vs/iut-expo-starter/FileContentIndex/c1e56655-c906-4d50-85cf-87c5dac77327.vsidx b/.vs/iut-expo-starter/FileContentIndex/c1e56655-c906-4d50-85cf-87c5dac77327.vsidx
deleted file mode 100644
index 2323cfe..0000000
Binary files a/.vs/iut-expo-starter/FileContentIndex/c1e56655-c906-4d50-85cf-87c5dac77327.vsidx and /dev/null differ
diff --git a/.vs/iut-expo-starter/FileContentIndex/d5c824f1-44a0-4ba7-bfc4-7875314daeff.vsidx b/.vs/iut-expo-starter/FileContentIndex/d5c824f1-44a0-4ba7-bfc4-7875314daeff.vsidx
new file mode 100644
index 0000000..10a48ca
Binary files /dev/null and b/.vs/iut-expo-starter/FileContentIndex/d5c824f1-44a0-4ba7-bfc4-7875314daeff.vsidx differ
diff --git a/.vs/iut-expo-starter/v17/.wsuo b/.vs/iut-expo-starter/v17/.wsuo
index e357c6d..00b6de0 100644
Binary files a/.vs/iut-expo-starter/v17/.wsuo and b/.vs/iut-expo-starter/v17/.wsuo differ
diff --git a/.vs/slnx.sqlite b/.vs/slnx.sqlite
index c2f0fa3..f5eeb34 100644
Binary files a/.vs/slnx.sqlite and b/.vs/slnx.sqlite differ
diff --git a/App.tsx b/App.tsx
index 4a1af86..42de500 100644
--- a/App.tsx
+++ b/App.tsx
@@ -1,19 +1,22 @@
import React from 'react';
import { StatusBar } from 'expo-status-bar';
-import { SafeAreaView, StyleSheet } from 'react-native';
+import { Keyboard, SafeAreaView, StyleSheet, TouchableWithoutFeedback } from 'react-native';
import Header from './components/Header';
import TabBar from './components/TabBar';
export default function App() {
- return (
-
-
-
-
-
+ return (
+ { Keyboard.dismiss(); }}>
+
+
+
+
+
+
+
);
}
@@ -29,7 +32,6 @@ const tabOptions = {
const styles = StyleSheet.create({
container: {
flex: 1,
- backgroundColor: 'white',
-
+ backgroundColor: '#FF5C5C',
},
});
diff --git a/components/DrawingCanva.tsx b/components/DrawingCanva.tsx
index 055f1c8..572d4bc 100644
--- a/components/DrawingCanva.tsx
+++ b/components/DrawingCanva.tsx
@@ -1,8 +1,8 @@
-import React, { useRef } from 'react';
+import React, {useRef, useState } from 'react';
import { SketchCanvas, SketchCanvasRef } from 'rn-perfect-sketch-canvas';
import { StyleSheet, Button, View } from 'react-native';
import { SvgUri } from 'react-native-svg';
-
+import Slider from '@react-native-community/slider'
type DrawingCanvaProps = {
backgroundImage: string;
@@ -11,23 +11,30 @@ type DrawingCanvaProps = {
const DrawingCanva = (props: DrawingCanvaProps) => {
const canvasRef = useRef(null);
-
-
+ const [strokeWidth, setStroke] = useState(5);
return (
-
-
-
+ setStroke(val)}
+ minimumValue={5}
+ maximumValue={10}
+ minimumTrackTintColor={"#FF5C5C"}
+ />
@@ -39,22 +46,28 @@ const DrawingCanva = (props: DrawingCanvaProps) => {
const styles = StyleSheet.create({
container: {
flex: 1,
- height: "100%",
width: "100%",
- alignItems: "center"
},
back: {
+ alignSelf: "center",
+ width: "75%",
+ height: "75%",
position: "absolute"
},
canvas: {
- height: 250,
- width: 250,
+ alignSelf: "center",
+ height: "75%",
+ width: "75%",
borderWidth: 2,
borderColor: "black"
},
menu: {
flexDirection: "row",
justifyContent: "space-evenly",
+ },
+ slider: {
+ width: "75%",
+ alignSelf: "center",
}
});
diff --git a/components/Header.tsx b/components/Header.tsx
index a0a0d2b..e7d9411 100644
--- a/components/Header.tsx
+++ b/components/Header.tsx
@@ -1,4 +1,4 @@
-import React, { useEffect, useState } from 'react';
+import React from 'react';
import { Text, View, StyleSheet } from 'react-native';
diff --git a/components/KanjiAnswerField.tsx b/components/KanjiAnswerField.tsx
index 1e5aaa1..7d0b136 100644
--- a/components/KanjiAnswerField.tsx
+++ b/components/KanjiAnswerField.tsx
@@ -22,6 +22,7 @@ const KanjiAnswerField = () => {
value={answer}
onFocus={startAnimation}
onBlur={stopAnimation}
+ placeholder="Answer here"
/>
);
@@ -34,7 +35,8 @@ const answerFieldStyle = StyleSheet.create({
borderWidth: 1,
padding: 10,
width: 200,
- backgroundColor: "white"
+ backgroundColor: "white",
+ borderRadius:20
},
})
diff --git a/components/KanjiCard.tsx b/components/KanjiCard.tsx
index a6f9306..25113e8 100644
--- a/components/KanjiCard.tsx
+++ b/components/KanjiCard.tsx
@@ -1,5 +1,5 @@
import React, { useEffect, useState } from 'react';
-import { StyleSheet, Text, TouchableWithoutFeedback, View, Button, Keyboard } from 'react-native';
+import { StyleSheet, Text, View, Button } from 'react-native';
import { SvgUri } from 'react-native-svg';
import KanjiAnswerField from './KanjiAnswerField';
@@ -36,7 +36,6 @@ const KanjiCard = (props: KanjiProps) => {
}, []);
return (
- { Keyboard.dismiss(); }} accessible={false}>
{loading ? Loading... : {res.kanji.onyomi.katakana}}
@@ -48,7 +47,6 @@ const KanjiCard = (props: KanjiProps) => {
-
);
};
@@ -59,15 +57,7 @@ const kanjiCardStyle = StyleSheet.create({
alignItems: 'center',
width: "100%",
height: "100%"
- },
- input: {
- height: 40,
- margin: 12,
- borderWidth: 1,
- padding: 10,
- width: 200,
- backgroundColor: "white"
- },
+ }
})
export default KanjiCard;
\ No newline at end of file
diff --git a/components/KanjiList.tsx b/components/KanjiList.tsx
index fa45f20..f711518 100644
--- a/components/KanjiList.tsx
+++ b/components/KanjiList.tsx
@@ -1,4 +1,4 @@
-import React, { useEffect, useState } from 'react';
+import React from 'react';
import { Text, SectionList, View, StyleSheet } from 'react-native';
@@ -17,7 +17,7 @@ const KanjiList = () => {
}
]}
renderItem={
- ({item}) => {item}
+ ({ item }) => {item}
}
renderSectionHeader={({ section }) => (
{section.title}
diff --git a/components/KanjiPlaygroundList.tsx b/components/KanjiPlaygroundList.tsx
new file mode 100644
index 0000000..6205bd8
--- /dev/null
+++ b/components/KanjiPlaygroundList.tsx
@@ -0,0 +1,61 @@
+import React from 'react';
+import { FlatList, Text, View, StyleSheet, TextInput, TouchableOpacity, ScrollView } from 'react-native';
+
+
+interface kanjiPlaygroundListProps {
+ data: string[]
+}
+
+const KanjiPlaygroundList = (props: kanjiPlaygroundListProps) => {
+
+ return (
+
+
+ (
+ true}>
+ {item}
+
+ )
+ }
+ keyExtractor={item => `basicListEntry-${item}`}>
+
+
+ );
+};
+
+const kanjiPlaygroundList = StyleSheet.create({
+ container: {
+ width: '70%',
+ height: '30%',
+ margin: 5,
+ },
+ entry: {
+ padding: 5,
+ margin: 1,
+ justifyContent: 'center',
+ flex: 1,
+ backgroundColor: '#e6e6e6',
+ },
+ entryText: {
+ fontWeight: "bold",
+ fontSize: 30,
+ textAlign: "center",
+ },
+ input: {
+ height: "20%",
+ margin: 12,
+ borderWidth: 1,
+ padding: 10,
+ width: "75%",
+ backgroundColor: "white",
+ borderRadius: 20,
+ alignSelf: "center"
+ },
+})
+
+export default KanjiPlaygroundList;
\ No newline at end of file
diff --git a/components/TabBar.tsx b/components/TabBar.tsx
index c49b7af..497af66 100644
--- a/components/TabBar.tsx
+++ b/components/TabBar.tsx
@@ -1,6 +1,6 @@
import React from 'react';
-import { StyleSheet, TouchableNativeFeedback, TouchableOpacity, View } from 'react-native'
+import { StyleSheet, TouchableNativeFeedback, View } from 'react-native'
import { NavigationContainer } from '@react-navigation/native';
import { BottomTabBarButtonProps, BottomTabNavigationOptions, createBottomTabNavigator } from '@react-navigation/bottom-tabs';
diff --git a/package-lock.json b/package-lock.json
index 7c1f409..dcdf2a4 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -9,6 +9,7 @@
"version": "1.0.0",
"dependencies": {
"@benjeau/react-native-draw": "^0.8.3",
+ "@react-native-community/slider": "4.2.4",
"@react-navigation/bottom-tabs": "^6.5.4",
"@react-navigation/native": "^6.1.3",
"@shopify/react-native-skia": "0.1.157",
@@ -4535,6 +4536,15 @@
"node": ">=8"
}
},
+ "node_modules/@react-native-community/slider": {
+ "version": "4.2.4",
+ "resolved": "https://registry.npmjs.org/@react-native-community/slider/-/slider-4.2.4.tgz",
+ "integrity": "sha512-uY51UoipQW4ELnFWMU6rTHRc4EUYaW+Z1O9Teijej6NYVYdUcUKq+t7WeBGjMAEc1ipyooMeBqRXToWO5zAU2Q==",
+ "peerDependencies": {
+ "react": "*",
+ "react-native": "*"
+ }
+ },
"node_modules/@react-native/assets": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/@react-native/assets/-/assets-1.0.0.tgz",
@@ -16467,6 +16477,12 @@
"joi": "^17.2.1"
}
},
+ "@react-native-community/slider": {
+ "version": "4.2.4",
+ "resolved": "https://registry.npmjs.org/@react-native-community/slider/-/slider-4.2.4.tgz",
+ "integrity": "sha512-uY51UoipQW4ELnFWMU6rTHRc4EUYaW+Z1O9Teijej6NYVYdUcUKq+t7WeBGjMAEc1ipyooMeBqRXToWO5zAU2Q==",
+ "requires": {}
+ },
"@react-native/assets": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/@react-native/assets/-/assets-1.0.0.tgz",
diff --git a/package.json b/package.json
index e254545..f857eca 100644
--- a/package.json
+++ b/package.json
@@ -10,6 +10,7 @@
},
"dependencies": {
"@benjeau/react-native-draw": "^0.8.3",
+ "@react-native-community/slider": "4.2.4",
"@react-navigation/bottom-tabs": "^6.5.4",
"@react-navigation/native": "^6.1.3",
"@shopify/react-native-skia": "0.1.157",
diff --git a/pages/Learn.tsx b/pages/Learn.tsx
index c59fc03..b2dd97b 100644
--- a/pages/Learn.tsx
+++ b/pages/Learn.tsx
@@ -1,5 +1,5 @@
-import React, { useEffect, useState } from 'react';
-import { Text, View, StyleSheet } from 'react-native';
+import React from 'react';
+import { View, StyleSheet } from 'react-native';
import KanjiCard from '../components/KanjiCard';
diff --git a/pages/List.tsx b/pages/List.tsx
index 60654d8..6a88bff 100644
--- a/pages/List.tsx
+++ b/pages/List.tsx
@@ -1,5 +1,5 @@
-import React, { useEffect, useState } from 'react';
-import { Text, View, StyleSheet } from 'react-native';
+import React from 'react';
+import { View, StyleSheet } from 'react-native';
import KanjiList from '../components/KanjiList';
diff --git a/pages/Playground.tsx b/pages/Playground.tsx
index 15f2e3f..f8f2e96 100644
--- a/pages/Playground.tsx
+++ b/pages/Playground.tsx
@@ -1,13 +1,14 @@
-import React, { useEffect, useState } from 'react';
-import { Text, View, StyleSheet } from 'react-native';
+import React from 'react';
+import { View, StyleSheet } from 'react-native';
import DrawingCanva from '../components/DrawingCanva';
-import KanjiCard from '../components/KanjiCard';
+import KanjiPlaygroundList from '../components/KanjiPlaygroundList';
const Playground = () => {
return (
+
);
@@ -23,4 +24,4 @@ const playgroundStyle = StyleSheet.create({
}
})
-export default Playground;
\ No newline at end of file
+export default Playground;
\ No newline at end of file
diff --git a/yarn.lock b/yarn.lock
index 182ad92..93affae 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -1720,6 +1720,11 @@
"prompts" "^2.4.0"
"semver" "^6.3.0"
+"@react-native-community/slider@4.2.4":
+ "integrity" "sha512-uY51UoipQW4ELnFWMU6rTHRc4EUYaW+Z1O9Teijej6NYVYdUcUKq+t7WeBGjMAEc1ipyooMeBqRXToWO5zAU2Q=="
+ "resolved" "https://registry.npmjs.org/@react-native-community/slider/-/slider-4.2.4.tgz"
+ "version" "4.2.4"
+
"@react-native/assets@1.0.0":
"integrity" "sha512-KrwSpS1tKI70wuKl68DwJZYEvXktDHdZMG0k2AXD/rJVSlB23/X2CB2cutVR0HwNMJIal9HOUOBB2rVfa6UGtQ=="
"resolved" "https://registry.npmjs.org/@react-native/assets/-/assets-1.0.0.tgz"