Commit b8842fd5 authored by Malith Anjana's avatar Malith Anjana

add chatbot

parent b31ccf5f
......@@ -6,6 +6,7 @@ import { NavigationContainer } from '@react-navigation/native';
import { createNativeStackNavigator } from '@react-navigation/native-stack';
import {Home} from './src/screens/Home';
import AsyncStorage from '@react-native-async-storage/async-storage';
import { Chatbot } from './src/screens/Chatbot';
const Stack = createNativeStackNavigator();
// create a component
......@@ -16,7 +17,7 @@ const App = () => {
retrieveData();
});
//Onboardin check
//Onboarding check
const retrieveData = async () => {
try {
const value = await AsyncStorage.getItem('hasOnboarded');
......@@ -31,17 +32,22 @@ const App = () => {
<NavigationContainer>
<Stack.Navigator>
{<Stack.Screen
<Stack.Screen
name="Onboard"
component={Onboard}
initialParams
options={{headerShown:false}}
/>}
/>
<Stack.Screen
name="Home"
component={Home}
options={{ title: 'Welcome' }}
/>
<Stack.Screen
name="Chatbot"
component={Chatbot}
options={{headerShown:false}}
/>
</Stack.Navigator>
</NavigationContainer>
......
......@@ -83,6 +83,7 @@ project.ext.react = [
]
apply from: "../../node_modules/react-native/react.gradle"
apply from: "../../node_modules/react-native-vector-icons/fonts.gradle"
/**
* Set this to true to create two separate APKs instead of one:
......@@ -263,7 +264,7 @@ android {
dependencies {
implementation fileTree(dir: "libs", include: ["*.jar"])
implementation project(':react-native-vector-icons')
//noinspection GradleDynamicVersion
implementation "com.facebook.react:react-native:+" // From node_modules
......
......@@ -3,6 +3,10 @@ apply from: file("../node_modules/@react-native-community/cli-platform-android/n
include ':app'
includeBuild('../node_modules/react-native-gradle-plugin')
include ':react-native-vector-icons'
project(':react-native-vector-icons').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-vector-icons/android')
if (settings.hasProperty("newArchEnabled") && settings.newArchEnabled == "true") {
include(":ReactAndroid")
project(":ReactAndroid").projectDir = file('../node_modules/react-native/ReactAndroid')
......
import axios from "axios";
const RASA_BASE = "http://192.168.124.34:5005/webhooks/rest/webhook"
export async function sendToRasa (body){
return axios({
url:RASA_BASE,
method: "POST",
data: {message:body}
})
}
\ No newline at end of file
import { useNavigation } from "@react-navigation/core";
import React from "react";
import { View, Text, StyleSheet, TouchableOpacity, Image } from "react-native";
import Icon from "react-native-vector-icons/FontAwesome5";
export const ChatHeader = () => {
const navigation = useNavigation();
return (
<View style={styles.container}>
<TouchableOpacity style={styles.backButton}>
<Icon name="angle-left" size={30}/>
</TouchableOpacity>
<View style={styles.profileOptions}>
<TouchableOpacity style={styles.profile}>
<Image style={styles.image} source={{ uri: "data:image/png;base64,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" }} />
<View style={styles.usernameAndOnlineStatus}>
<Text style={styles.username}>"test"</Text>
<Text style={styles.onlineStatus}>"Text</Text>
</View>
</TouchableOpacity>
<View style={styles.options}>
<TouchableOpacity
style={{ paddingHorizontal: 5 }}
>
<Icon
name="phone"
size={30}
color={"white"}
/>
</TouchableOpacity>
<TouchableOpacity style={{ paddingHorizontal: 20 }}>
<Icon
name="ellipsis-v"
size={30}
color={"white"}
/>
</TouchableOpacity>
</View>
</View>
</View>
);
};
const styles = StyleSheet.create({
container: {
flexDirection: "row",
backgroundColor: "blue",
paddingTop: 10,
paddingBottom: 10,
},
backButton: {
alignSelf: "center",
paddingHorizontal: 10,
},
profileOptions: {
flex: 1,
flexDirection: "row",
justifyContent: "space-between",
alignItems: "center",
paddingHorizontal: 10,
},
profile: {
flexDirection: "row",
alignItems: "center",
borderColor: "#fff",
flex: 4,
},
image: {
height: 65,
width: 65,
borderRadius: 32.5,
},
usernameAndOnlineStatus: {
flexDirection: "column",
justifyContent: "center",
paddingHorizontal: 10,
},
username: {
color: "white",
fontSize: 18,
fontWeight: "bold",
},
onlineStatus: {
color: "white",
fontSize: 16,
},
options: {
flex: 1,
flexDirection: "row",
justifyContent: "flex-end",
alignItems: "center",
},
});
module.exports = {
dependencies: {
'react-native-vector-icons': {
platforms: {
ios: null,
},
},
},
};
\ No newline at end of file
import axios from 'axios';
import React, { useCallback, useEffect, useState } from 'react'
import { Text, View } from 'react-native'
import { GiftedChat } from 'react-native-gifted-chat';
import { sendToRasa } from '../api';
import { ChatHeader } from '../components/chatbot/ChatHeader'
export const Chatbot = () => {
const [messages, setMessages] = useState([]);
useEffect(() => {
// setMessages([
// {
// _id: 1,
// text: 'Hello how is going',
// createdAt: new Date(),
// sendTo:2,
// sentBy:1,
// user: {
// _id: 1,
// name: 'React Native',
// avatar: 'https://placeimg.com/140/140/any',
// },
// },
// {
// _id: 2,
// text: 'Hello developer',
// createdAt: new Date(),
// user: {
// _id: 2,
// name: 'React Native',
// avatar: 'https://placeimg.com/140/140/any',
// },
// },
// {
// _id: 3,
// text: 'Hello bot',
// createdAt: new Date(),
// user: {
// _id: 1,
// name: 'React Native',
// avatar: 'https://placeimg.com/140/140/any',
// },
// },
// {
// _id: 4,
// text: 'Hello user',
// createdAt: new Date(),
// user: {
// _id: 2,
// name: 'React Native',
// avatar: 'https://placeimg.com/140/140/any',
// },
// },
// ])
}, [])
const onSend = useCallback(async(msg = []) => {
console.log(msg[0].text);
setMessages(previousMessages => (GiftedChat.append(previousMessages, msg)));
try{
const res = await sendToRasa(msg[0].text);
let reply = [];
res.data.map((d)=>{
console.log(d.text);
const rp = {
text: d.text,
createdAt: new Date(),
user: {
_id: 1,
name: 'React Native',
avatar: 'https://placeimg.com/140/140/any',
},
}
reply.push(rp)
}
)
setMessages(prev=> prev.concat(reply));
}
catch(err){
console.log(err)
}
}, [])
return (
<View style={{flex:1}}>
<ChatHeader/>
<GiftedChat
messages={messages.reverse()}
onSend={msg => onSend(msg)}
user={{
_id: "132reweewa52332525252twe",
}}
/>
</View>
)
}
//import liraries
import { useNavigation } from '@react-navigation/core';
import React, { Component } from 'react';
import { View, Text, StyleSheet } from 'react-native';
import { View, Text, StyleSheet, Button } from 'react-native';
// create a component
export const Home = () => {
const navigation = useNavigation();
return (
<View style={styles.container}>
<Text style={{fontSize:20}}>Home</Text>
<Button title="Chatbot" onPress={()=> navigation.navigate('Chatbot')}/>
</View>
);
};
......
......@@ -3,22 +3,24 @@ import { Image, View, StyleSheet, TouchableOpacity, Text, Button } from 'react-n
import Onboarding from 'react-native-onboarding-swiper';
import { useNavigation } from '@react-navigation/core';
import AsyncStorage from '@react-native-async-storage/async-storage';
import { COLOR } from '../themes';
const Square = ({ isLight, selected }) => {
let backgroundColor;
if (isLight) {
backgroundColor = selected ? '#2196F3' : 'rgba(0, 0, 0, 0.3)';
backgroundColor = selected ? COLOR.primary : 'rgba(0, 0, 0, 0.3)';
} else {
backgroundColor = selected ? '#2196F3' : 'rgba(255, 255, 255, 0.5)';
backgroundColor = selected ? COLOR.primary : 'rgba(255, 255, 255, 0.5)';
}
return (
<View
style={{
width: 6,
width: 30,
height: 6,
borderRadius:6,
marginHorizontal: 3,
padding:0,
marginHorizontal:0,
Radius:6,
backgroundColor,
}}
/>
......@@ -28,13 +30,13 @@ const Square = ({ isLight, selected }) => {
const Done = ({ isLight, ...props }) => {
const navigation = useNavigation();
return ( <TouchableOpacity {...props} onPress={async ()=>{
await AsyncStorage.setItem('hasOnboarded',true
);
// await AsyncStorage.setItem('hasOnboarded',true
// );
navigation.navigate('Home')
}
}>
<View style={{
backgroundColor: '#2196F3',
backgroundColor: COLOR.primary,
alignItems: 'center',
justifyContent: 'center',
paddingVertical:"3%",
......@@ -43,7 +45,7 @@ const Done = ({ isLight, ...props }) => {
borderRadius: 20
}}
>
<Text style={{ color: 'white',fontSize:16 }}>Get Start</Text>
<Text style={{ color: COLOR.white,fontSize:16 }}>Get Start</Text>
</View>
</TouchableOpacity>
);
......@@ -58,7 +60,7 @@ const Skip = ({ ...props}) =>{
navigation.navigate('Home')
}}>
<View style={{
backgroundColor: '#ffff',
backgroundColor: COLOR.white,
alignItems: 'center',
justifyContent: 'center',
paddingVertical:"3%",
......@@ -67,7 +69,7 @@ const Skip = ({ ...props}) =>{
borderRadius: 20
}}
>
<Text style={{ color: '#2196F3',fontSize:16, fontWeight:"bold"}}>Skip</Text>
<Text style={{ color: COLOR.primary,fontSize:16, fontWeight:"bold"}}>Skip</Text>
</View>
</TouchableOpacity>
)};
......@@ -76,7 +78,7 @@ const Skip = ({ ...props}) =>{
const Next = ({ isLight, ...props }) => (
<TouchableOpacity {...props}>
<View style={{
backgroundColor: '#2196F3',
backgroundColor: COLOR.primary,
alignItems: 'center',
justifyContent: 'center',
paddingVertical:"3%",
......@@ -85,7 +87,7 @@ const Next = ({ isLight, ...props }) => (
borderRadius: 20
}}
>
<Text style={{ color: 'white',fontSize:16 }}>Next</Text>
<Text style={{ color: COLOR.white,fontSize:16 }}>Next</Text>
</View>
</TouchableOpacity>
);
......@@ -96,25 +98,25 @@ export const Onboard = () => (
NextButtonComponent={Next}
SkipButtonComponent={Skip}
DoneButtonComponent={Done}
bottomBarColor={"#fff"}
bottomBarColor={COLOR.white}
subTitleStyles={{fontSize:14,marginTop:-60,paddingHorizontal:10}}
titleStyles={{fontWeight:"bold", fontSize:24, marginTop:-120}} // set default color for the title
pages={[
{
backgroundColor: '#fff',
backgroundColor: COLOR.backgroundOnBoard,
image: <Image style={styles.image} source={require('../assets/images/onboard1.jpg')} />,
title: "Buy & Selling",
subtitle: 'Lorem Ipsum is simply dummy text of the printing and typesetting industry.',
},
{
backgroundColor: '#fff',
backgroundColor: COLOR.backgroundOnBoard,
image: <Image style={styles.image} source={require('../assets/images/onboard2.jpg')} />,
title: 'From Anywhere ',
subtitle: 'Lorem Ipsum is simply dummy text of the printing and typesetting industry.',
},
{
backgroundColor: '#fff',
backgroundColor: COLOR.backgroundOnBoard,
image: <Image style={[styles.image]} source={require('../assets/images/onboard3.jpg')} />,
title: 'Real State',
subtitle: "Lorem Ipsum is simply dummy text of the printing and typesetting industry.",
......@@ -130,6 +132,6 @@ const styles = StyleSheet.create({
margin:0
},
button:{
backgroundColor:"#ffff",
backgroundColor:COLOR.white,
}
})
\ No newline at end of file
export const COLOR = {
primary: '#14db98',
onPrimary: '#fff',
surface: '#fff',
onSurface: '#000',
backgroundOnBoard: 'white',
white:"white"
};
\ No newline at end of file
......@@ -780,6 +780,14 @@
minimatch "^3.0.4"
strip-json-comments "^3.1.1"
"@expo/react-native-action-sheet@3.13.0":
version "3.13.0"
resolved "https://registry.yarnpkg.com/@expo/react-native-action-sheet/-/react-native-action-sheet-3.13.0.tgz#b4cb08440c54b5ec0b3e429cac396422da1d9442"
integrity sha512-EFLK35TBsM28W43SY54lISAIvjEm9584LIRWXsYaf5sgmfF65oWAOQP4UyKxMPLYGoaKjnCAJVFNtZUK80ss9A==
dependencies:
"@types/hoist-non-react-statics" "^3.3.1"
hoist-non-react-statics "^3.3.0"
"@hapi/hoek@^9.0.0":
version "9.2.1"
resolved "https://registry.yarnpkg.com/@hapi/hoek/-/hoek-9.2.1.tgz#9551142a1980503752536b5050fd99f4a7f13b17"
......@@ -1422,6 +1430,14 @@
dependencies:
"@types/node" "*"
"@types/hoist-non-react-statics@^3.3.1":
version "3.3.1"
resolved "https://registry.yarnpkg.com/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.1.tgz#1124aafe5118cb591977aeb1ceaaed1070eb039f"
integrity sha512-iMIqiko6ooLrTh1joXodJK5X9xeEALT1kM5G3ZLhD3hszxBdIEd5C75U834D9mLcINgD4OyZf5uQXjkuYydWvA==
dependencies:
"@types/react" "*"
hoist-non-react-statics "^3.3.0"
"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1":
version "2.0.4"
resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz#8467d4b3c087805d63580480890791277ce35c44"
......@@ -1456,6 +1472,25 @@
resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.6.0.tgz#efcbd41937f9ae7434c714ab698604822d890759"
integrity sha512-G/AdOadiZhnJp0jXCaBQU449W2h716OW/EoXeYkCytxKL06X1WCXB4DZpp8TpZ8eyIJVS1cw4lrlkkSYU21cDw==
"@types/prop-types@*":
version "15.7.5"
resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.5.tgz#5f19d2b85a98e9558036f6a3cacc8819420f05cf"
integrity sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==
"@types/react@*":
version "18.0.20"
resolved "https://registry.yarnpkg.com/@types/react/-/react-18.0.20.tgz#e4c36be3a55eb5b456ecf501bd4a00fd4fd0c9ab"
integrity sha512-MWul1teSPxujEHVwZl4a5HxQ9vVNsjTchVA+xRqv/VYGCuKGAU6UhfrTdF5aBefwD1BHUD8i/zq+O/vyCm/FrA==
dependencies:
"@types/prop-types" "*"
"@types/scheduler" "*"
csstype "^3.0.2"
"@types/scheduler@*":
version "0.16.2"
resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.2.tgz#1a62f89525723dde24ba1b01b092bf5df8ad4d39"
integrity sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==
"@types/stack-utils@^2.0.0":
version "2.0.1"
resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.1.tgz#20f18294f797f2209b5f65c8e3b5c8e8261d127c"
......@@ -1767,11 +1802,24 @@ async@^2.4.0:
dependencies:
lodash "^4.17.14"
asynckit@^0.4.0:
version "0.4.0"
resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"
integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==
atob@^2.1.2:
version "2.1.2"
resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9"
integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==
axios@^0.27.2:
version "0.27.2"
resolved "https://registry.yarnpkg.com/axios/-/axios-0.27.2.tgz#207658cc8621606e586c85db4b41a750e756d972"
integrity sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==
dependencies:
follow-redirects "^1.14.9"
form-data "^4.0.0"
babel-core@^7.0.0-bridge.0:
version "7.0.0-bridge.0"
resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-7.0.0-bridge.0.tgz#95a492ddd90f9b4e9a4a1da14eb335b87b634ece"
......@@ -2259,6 +2307,13 @@ colorette@^1.0.7:
resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.4.0.tgz#5190fbb87276259a86ad700bff2c6d6faa3fca40"
integrity sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==
combined-stream@^1.0.8:
version "1.0.8"
resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f"
integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==
dependencies:
delayed-stream "~1.0.0"
command-exists@^1.2.8:
version "1.2.9"
resolved "https://registry.yarnpkg.com/command-exists/-/command-exists-1.2.9.tgz#c50725af3808c8ab0260fd60b01fbfa25b954f69"
......@@ -2374,6 +2429,16 @@ cross-spawn@^7.0.2, cross-spawn@^7.0.3:
shebang-command "^2.0.0"
which "^2.0.1"
csstype@^3.0.2:
version "3.1.1"
resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.1.tgz#841b532c45c758ee546a11d5bd7b7b473c8c30b9"
integrity sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==
dayjs@1.8.26:
version "1.8.26"
resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.8.26.tgz#c6d62ccdf058ca72a8d14bb93a23501058db9f1e"
integrity sha512-KqtAuIfdNfZR5sJY1Dixr2Is4ZvcCqhb0dZpCOt5dGEFiMzoIbjkTSzUb4QKTCsP+WNpGwUjAFIZrnZvUxxkhw==
dayjs@^1.8.15:
version "1.11.1"
resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.11.1.tgz#90b33a3dda3417258d48ad2771b415def6545eb0"
......@@ -2460,6 +2525,11 @@ define-property@^2.0.2:
is-descriptor "^1.0.2"
isobject "^3.0.1"
delayed-stream@~1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619"
integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==
denodeify@^1.2.1:
version "1.2.1"
resolved "https://registry.yarnpkg.com/denodeify/-/denodeify-1.2.1.tgz#3a36287f5034e699e7577901052c2e6c94251631"
......@@ -3064,11 +3134,25 @@ flow-parser@^0.121.0:
resolved "https://registry.yarnpkg.com/flow-parser/-/flow-parser-0.121.0.tgz#9f9898eaec91a9f7c323e9e992d81ab5c58e618f"
integrity sha512-1gIBiWJNR0tKUNv8gZuk7l9rVX06OuLzY9AoGio7y/JT4V1IZErEMEq2TJS+PFcw/y0RshZ1J/27VfK1UQzYVg==
follow-redirects@^1.14.9:
version "1.15.2"
resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.2.tgz#b460864144ba63f2681096f274c4e57026da2c13"
integrity sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==
for-in@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80"
integrity sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=
form-data@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452"
integrity sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==
dependencies:
asynckit "^0.4.0"
combined-stream "^1.0.8"
mime-types "^2.1.12"
fragment-cache@^0.2.1:
version "0.2.1"
resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19"
......@@ -3329,6 +3413,13 @@ hermes-profile-transformer@^0.0.6:
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"
html-escaper@^2.0.0:
version "2.0.2"
resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453"
......@@ -4804,7 +4895,7 @@ mime-db@1.52.0, "mime-db@>= 1.43.0 < 2":
resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70"
integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==
mime-types@^2.1.27, mime-types@~2.1.34:
mime-types@^2.1.12, mime-types@^2.1.27, mime-types@~2.1.34:
version "2.1.35"
resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a"
integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==
......@@ -5357,7 +5448,7 @@ prompts@^2.0.1, prompts@^2.4.0:
kleur "^3.0.3"
sisteransi "^1.0.5"
prop-types@*, prop-types@^15.8.1:
prop-types@*, prop-types@^15.7.2, prop-types@^15.7.x, prop-types@^15.8.1:
version "15.8.1"
resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.8.1.tgz#67d87bf1a694f48435cf332c24af10214a3140b5"
integrity sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==
......@@ -5366,6 +5457,15 @@ prop-types@*, prop-types@^15.8.1:
object-assign "^4.1.1"
react-is "^16.13.1"
prop-types@15.7.2:
version "15.7.2"
resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.7.2.tgz#52c41e75b8c87e72b9d9360e0206b99dcbffa6c5"
integrity sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==
dependencies:
loose-envify "^1.4.0"
object-assign "^4.1.1"
react-is "^16.8.1"
pump@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64"
......@@ -5422,7 +5522,7 @@ react-freeze@^1.0.0:
resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.0.0.tgz#026f6c4a27dbe33bf4a35655b9e1327c4e55e3f5"
integrity sha512-yUcBYdBBbo3QiPsgYDcfQcIkGZHfxOaoE6HLSnr1sPzMhdyxusbfKOSUbSd/ocGi32dxcj366PsTj+5oggeKKw==
react-is@^16.13.0, react-is@^16.13.1:
react-is@^16.13.0, react-is@^16.13.1, react-is@^16.7.0, react-is@^16.8.1:
version "16.13.1"
resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4"
integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==
......@@ -5437,11 +5537,43 @@ react-native-codegen@^0.0.13:
jscodeshift "^0.13.1"
nullthrows "^1.1.1"
react-native-communications@2.2.1:
version "2.2.1"
resolved "https://registry.yarnpkg.com/react-native-communications/-/react-native-communications-2.2.1.tgz#7883b56b20a002eeb790c113f8616ea8692ca795"
integrity sha512-5+C0X9mopI0+qxyQHzOPEi5v5rxNBQjxydPPiKMQSlX1RBIcJ8uTcqUPssQ9Mo8p6c1IKIWJUSqCj4jAmD0qVQ==
react-native-gifted-chat@^1.0.4:
version "1.0.4"
resolved "https://registry.yarnpkg.com/react-native-gifted-chat/-/react-native-gifted-chat-1.0.4.tgz#36d11ecc44896a83ca188aeefab2f2e4c098a080"
integrity sha512-MN6W69trS3zzTRZ0US9z2P7YLcKSDw5TGW8qR8Sb7Ytrc0AhGUvdryl3VecRWAPyWwc6aqtA+Vkgb/XWHShoSQ==
dependencies:
"@expo/react-native-action-sheet" "3.13.0"
dayjs "1.8.26"
prop-types "15.7.2"
react-native-communications "2.2.1"
react-native-iphone-x-helper "1.3.1"
react-native-lightbox-v2 "0.9.0"
react-native-parsed-text "0.0.22"
react-native-safe-area-context "^4.2.4"
react-native-typing-animation "0.1.7"
use-memo-one "1.1.2"
uuid "3.4.0"
react-native-gradle-plugin@^0.0.6:
version "0.0.6"
resolved "https://registry.yarnpkg.com/react-native-gradle-plugin/-/react-native-gradle-plugin-0.0.6.tgz#b61a9234ad2f61430937911003cddd7e15c72b45"
integrity sha512-eIlgtsmDp1jLC24dRn43hB3kEcZVqx6DUQbR0N1ABXGnMEafm9I3V3dUUeD1vh+Dy5WqijSoEwLNUPLgu5zDMg==
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-lightbox-v2@0.9.0:
version "0.9.0"
resolved "https://registry.yarnpkg.com/react-native-lightbox-v2/-/react-native-lightbox-v2-0.9.0.tgz#b97be4d892ebb959069c451948b11da390bc46d8"
integrity sha512-Fc5VFHFj2vokS+OegyTsANKb1CYoUlOtAv+EBH5wtpJn1b5cey6jVXH7136G5+8OC9JmKWSgKHc5thFwOoZTUg==
react-native-onboarding-swiper@^1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/react-native-onboarding-swiper/-/react-native-onboarding-swiper-1.2.0.tgz#4b8dd803ad88bd367e0d9914afddec9c61505946"
......@@ -5449,6 +5581,13 @@ react-native-onboarding-swiper@^1.2.0:
dependencies:
tinycolor2 "^1.4.1"
react-native-parsed-text@0.0.22:
version "0.0.22"
resolved "https://registry.yarnpkg.com/react-native-parsed-text/-/react-native-parsed-text-0.0.22.tgz#a23c756eaa5d6724296814755085127f9072e5f5"
integrity sha512-hfD83RDXZf9Fvth3DowR7j65fMnlqM9PpxZBGWkzVcUTFtqe6/yPcIoIAgrJbKn6YmtzkivmhWE2MCE4JKBXrQ==
dependencies:
prop-types "^15.7.x"
react-native-safe-area-context@^4.2.4:
version "4.2.4"
resolved "https://registry.yarnpkg.com/react-native-safe-area-context/-/react-native-safe-area-context-4.2.4.tgz#4df42819759c4d3c74252c8678c2772cfa2271a6"
......@@ -5462,6 +5601,19 @@ react-native-screens@^3.13.1:
react-freeze "^1.0.0"
warn-once "^0.1.0"
react-native-typing-animation@0.1.7:
version "0.1.7"
resolved "https://registry.yarnpkg.com/react-native-typing-animation/-/react-native-typing-animation-0.1.7.tgz#8f2cf08d9400ae543a110292eb7d71523dda5528"
integrity sha512-4H3rF9M+I2yAZpYJcY0Mb29TXkn98QK12rrKSY6LZj1BQD9NNmRZuNXzwX4XHapsIz+N/J8M3p27FOQPbfzqeg==
react-native-vector-icons@^9.2.0:
version "9.2.0"
resolved "https://registry.yarnpkg.com/react-native-vector-icons/-/react-native-vector-icons-9.2.0.tgz#3c0c82e95defd274d56363cbe8fead8d53167ebd"
integrity sha512-wKYLaFuQST/chH3AJRjmOLoLy3JEs1JR6zMNgTaemFpNoXs0ztRnTxcxFD9xhX7cJe1/zoN5BpQYe7kL0m5yyA==
dependencies:
prop-types "^15.7.2"
yargs "^16.1.1"
react-native@0.68.1:
version "0.68.1"
resolved "https://registry.yarnpkg.com/react-native/-/react-native-0.68.1.tgz#c3d92f89028cdc2453fe7cd2d532b3f68d1c27c8"
......@@ -6487,6 +6639,11 @@ urix@^0.1.0:
resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72"
integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=
use-memo-one@1.1.2:
version "1.1.2"
resolved "https://registry.yarnpkg.com/use-memo-one/-/use-memo-one-1.1.2.tgz#0c8203a329f76e040047a35a1197defe342fab20"
integrity sha512-u2qFKtxLsia/r8qG0ZKkbytbztzRb317XCkT7yP8wxL0tZ/CzK2G+WWie5vWvpyeP7+YoPIwbJoIHJ4Ba4k0oQ==
"use-subscription@>=1.0.0 <1.6.0":
version "1.5.1"
resolved "https://registry.yarnpkg.com/use-subscription/-/use-subscription-1.5.1.tgz#73501107f02fad84c6dd57965beb0b75c68c42d1"
......@@ -6509,6 +6666,11 @@ utils-merge@1.0.1:
resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713"
integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=
uuid@3.4.0:
version "3.4.0"
resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee"
integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==
uuid@^7.0.3:
version "7.0.3"
resolved "https://registry.yarnpkg.com/uuid/-/uuid-7.0.3.tgz#c5c9f2c8cf25dc0a372c4df1441c41f5bd0c680b"
......@@ -6710,6 +6872,11 @@ yargs-parser@^18.1.2:
camelcase "^5.0.0"
decamelize "^1.2.0"
yargs-parser@^20.2.2:
version "20.2.9"
resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee"
integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==
yargs-parser@^21.0.0:
version "21.0.1"
resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.0.1.tgz#0267f286c877a4f0f728fceb6f8a3e4cb95c6e35"
......@@ -6732,6 +6899,19 @@ yargs@^15.1.0, yargs@^15.3.1:
y18n "^4.0.0"
yargs-parser "^18.1.2"
yargs@^16.1.1:
version "16.2.0"
resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66"
integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==
dependencies:
cliui "^7.0.2"
escalade "^3.1.1"
get-caller-file "^2.0.5"
require-directory "^2.1.1"
string-width "^4.2.0"
y18n "^5.0.5"
yargs-parser "^20.2.2"
yargs@^17.3.1:
version "17.4.1"
resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.4.1.tgz#ebe23284207bb75cee7c408c33e722bfb27b5284"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment