reza added drawer

master
Reza_ashrafi 3 years ago
parent 2f280e5986
commit c7cc797b83
  1. 6
      App.js
  2. 3
      app.json
  3. 0
      assets/fonts/Farsi/Light.ttf
  4. 0
      assets/fonts/Farsi/Medium.ttf
  5. 0
      assets/fonts/Farsi/Regular.ttf
  6. 1
      package.json
  7. 18
      src/components/CustomTextInput.js
  8. 103
      src/components/Drawer.js
  9. 31
      src/components/MapSelector.js
  10. 2
      src/components/Navbar.js
  11. 6
      src/components/Select.js
  12. 2
      src/redux/reducers/user.js
  13. 2
      src/redux/store.js
  14. 21
      src/screens/Address/index.js
  15. 4
      src/screens/DeliveryForm/index.js
  16. 9
      src/screens/Home/components/MyBooks.js
  17. 21
      src/screens/Home/components/Scroll.js
  18. 9
      src/screens/Login/index.js
  19. 19
      src/screens/Otp/index.js
  20. 109
      yarn.lock

@ -9,9 +9,9 @@ import store from './src/redux/store';
const App = () => { const App = () => {
let [fontsLoaded] = useFonts({ let [fontsLoaded] = useFonts({
light : require("./assets/fonts/Farsi/IRANSansXFaNum-Light.ttf"), light : require("./assets/fonts/Farsi/Light.ttf"),
regular: require("./assets/fonts/Farsi/IRANSansXFaNum-Regular.ttf"), regular: require("./assets/fonts/Farsi/Regular.ttf"),
bold: require("./assets/fonts/Farsi/IRANSansXFaNum-Medium.ttf"), bold: require("./assets/fonts/Farsi/Medium.ttf"),
}); });
if (!fontsLoaded) { if (!fontsLoaded) {

@ -18,7 +18,8 @@
"**/*" "**/*"
], ],
"ios": { "ios": {
"supportsTablet": true "supportsTablet": true,
"bundleIdentifier": "com.appsazz.RnDanovinExpo"
}, },
"android": { "android": {
"adaptiveIcon": { "adaptiveIcon": {

@ -31,6 +31,7 @@
"i18next": "^21.6.3", "i18next": "^21.6.3",
"install": "^0.13.0", "install": "^0.13.0",
"lodash": "^4.17.21", "lodash": "^4.17.21",
"mapir-react-native-sdk": "^2.2.4",
"react": "17.0.1", "react": "17.0.1",
"react-dom": "17.0.1", "react-dom": "17.0.1",
"react-i18next": "^11.15.1", "react-i18next": "^11.15.1",

@ -35,18 +35,22 @@ const FloatingLabelInput = ({
labelStyle: { labelStyle: {
fontFamily: "regular", fontFamily: "regular",
top: !isFocused ? "50%" : 1, top: !isFocused ? "50%" : 1,
fontSize: !isFocused ? fontSize.lg : fontSize.sm, fontSize: !isFocused ? fontSize.tiny : fontSize.sm,
transform: [{ translateY: -width / 35 }], transform: [{ translateY: -width / 35 }],
color: !isFocused ? "#555" : Colors.theme1[colorScheme].green79, color: !isFocused
? Colors.theme1[colorScheme].gray2077
: Colors.theme1[colorScheme].green79,
}, },
inputStyle: { inputStyle: {
fontSize: fontSize.lg, fontSize: fontSize.lg,
color: Colors.theme1[colorScheme].white, color: Colors.theme1[colorScheme].black,
borderWidth: 1, borderWidth: 1,
borderColor: isFocused ? Colors.theme1[colorScheme].greenC8 : "#777", borderColor: isFocused
? Colors.theme1[colorScheme].greenC8
: Colors.theme1[colorScheme].gray2077 + "66",
textAlign: textAlign, textAlign: textAlign,
fontFamily: "regular", fontFamily: "regular",
fontWeight : "900" fontWeight: "900",
}, },
}); });
return ( return (
@ -69,9 +73,7 @@ const FloatingLabelInput = ({
underlineColorAndroid={"transparent"} underlineColorAndroid={"transparent"}
maxLength={maxLength} maxLength={maxLength}
value={value} value={value}
onBlur={() => onBlur={() => (value ? {} : setIsFocused(() => false))}
value ? {} : setIsFocused(() => false)
}
/> />
</View> </View>
); );

@ -7,11 +7,19 @@ import {
Pressable, Pressable,
Text, Text,
TouchableOpacity, TouchableOpacity,
Image,
Appearance,
} from "react-native"; } from "react-native";
import { useNavigation } from "@react-navigation/native"; import { useNavigation } from "@react-navigation/native";
import { Ionicons, AntDesign } from "@expo/vector-icons"; import { Ionicons, AntDesign } from "@expo/vector-icons";
import { connect } from "react-redux";
import { user } from "../redux/actions";
import Svg, { Path } from "react-native-svg";
//style
import tw from "tailwind-rn"; import tw from "tailwind-rn";
import fontSize from "../constants/fontSize"; import fontSize from "../constants/fontSize";
import Colors from "../constants/Colors";
const width = Dimensions.get("window").width; const width = Dimensions.get("window").width;
const height = Dimensions.get("window").height; const height = Dimensions.get("window").height;
@ -23,7 +31,8 @@ if (
UIManager.setLayoutAnimationEnabledExperimental(true); UIManager.setLayoutAnimationEnabledExperimental(true);
} }
const Drawer = ({ position, setBoxPosition }) => { const Drawer = ({ position, setBoxPosition, user }) => {
const colorScheme = Appearance.getColorScheme();
const [routes, setRoutes] = useState([ const [routes, setRoutes] = useState([
{ {
name: "صفحه اصلی", name: "صفحه اصلی",
@ -82,6 +91,7 @@ const Drawer = ({ position, setBoxPosition }) => {
message: "", message: "",
}, },
]); ]);
const [addUserDropdown, setAddUserDropdown] = useState(false);
const navigation = useNavigation(); const navigation = useNavigation();
const Route = ({ route }) => { const Route = ({ route }) => {
return ( return (
@ -94,13 +104,17 @@ const Drawer = ({ position, setBoxPosition }) => {
> >
{route.icon} {route.icon}
<Text <Text
style={[tw("mr-2"), { fontFamily: "regular", fontSize: fontSize.base }]} style={[
tw("mr-2"),
{ fontFamily: "regular", fontSize: fontSize.base },
]}
> >
{route.name} {route.name}
</Text> </Text>
</TouchableOpacity> </TouchableOpacity>
); );
}; };
return ( return (
<View <View
style={[ style={[
@ -109,21 +123,98 @@ const Drawer = ({ position, setBoxPosition }) => {
left: position, left: position,
width: width, width: width,
height: height, height: height,
zIndex : 10000 zIndex: 10000,
}, },
]} ]}
> >
<Pressable <Pressable
onPress={() => setBoxPosition()} onPress={() => setBoxPosition()}
style={[tw(`w-1/5 h-full ${position === "0%" ? "bg-black bg-opacity-40" : ""}`)]} style={[
tw(
`w-1/5 h-full ${position === "0%" ? "bg-black bg-opacity-40" : ""}`
),
]}
></Pressable> ></Pressable>
<View style={[tw("w-4/5 bg-white h-full flex flex-col px-4 pt-10")]}> <View style={[tw("w-4/5 bg-white h-full flex flex-col pt-8")]}>
<View
style={[
tw("flex flex-col items-end pt-3 pb-1 px-4"),
{ backgroundColor: Colors.theme1[colorScheme].greenCF },
]}
>
{user.picFileId ? (
<Image
source={{ uri: "https://dnvn.ir/api/v1/" + user.picFileId }}
style={[tw("rounded-full"), { width: 60, height: 60 }]}
/>
) : (
<View
style={[
tw("rounded-full bg-gray-200"),
{ width: 60, height: 60, zIndex : 1 },
]}
></View>
)}
<View
style={tw(
"flex flex-row-reverse w-full justify-between px-2 pb-3 mt-1"
)}
>
<View style={tw("flex flex-col")}>
<Text
style={{
fontSize: fontSize.lg,
color: Colors.theme1[colorScheme].black,
fontFamily: "bold",
}}
>
{user?.firstName + " " + user?.lastName}
</Text>
<Text
style={{
fontSize: fontSize.tiny,
color: Colors.theme1[colorScheme].black,
fontFamily: "bold",
}}
>
{user?.cellphone}
</Text>
</View>
<Svg
data-name="vuesax/linear/arrow-left"
xmlns="http://www.w3.org/2000/svg"
width={24}
height={24}
style={{ transform: [{ rotate: "-90deg" }] }}
onClick={() => setAddUserDropdown(() => !addUserDropdown)}
>
<Path
d="M15.002 19.92 8.479 13.4a1.986 1.986 0 0 1 0-2.8l6.523-6.52"
fill="none"
stroke="#fff"
strokeLinecap="round"
strokeLinejoin="round"
strokeWidth={2}
/>
</Svg>
</View>
</View>
<View style={tw("flex-1 flex flex-col px-4")}>
{routes.map((route, index) => ( {routes.map((route, index) => (
<Route route={route} key={index} /> <Route route={route} key={index} />
))} ))}
</View> </View>
</View> </View>
</View>
); );
}; };
export default Drawer; const mapStateToProps = (state) => ({
user: JSON.parse(state.user.status),
});
const mapDispatchToProps = {
logout: user.logout,
};
export default connect(mapStateToProps)(Drawer);

@ -0,0 +1,31 @@
import React, {Component} from 'react';
import { SafeAreaView, StyleSheet, View} from 'react-native';
// import Mapir from 'mapir-react-native-sdk'
const X_API_KEY = "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjkyODE4ODI0N2FhMjdlYTMyMzVlYzRiOWUxZDI3NTQyZTNjYmI3ZjQzY2Q2NGQzYjdkYjU1NmY3NDM5YzU2NzUyNzMxMjAzYzMwOTliYTFiIn0.eyJhdWQiOiIxNjk2MSIsImp0aSI6IjkyODE4ODI0N2FhMjdlYTMyMzVlYzRiOWUxZDI3NTQyZTNjYmI3ZjQzY2Q2NGQzYjdkYjU1NmY3NDM5YzU2NzUyNzMxMjAzYzMwOTliYTFiIiwiaWF0IjoxNjQ0MzE3MDA5LCJuYmYiOjE2NDQzMTcwMDksImV4cCI6MTY0NjgyMjYwOSwic3ViIjoiIiwic2NvcGVzIjpbImJhc2ljIl19.Gckmd77Vw-wmsaztsmVmjYmfp4zXRSy2f0tXS-1p7IY8VJmvCCrk64y7WvCLbH0YfGZI9rG9ZUi5hRJDDGXu70l1ZafCYq2-EkMzcbx-PGTTq2bHGNZujF4ur1xtGoXd2kwGuldiR_6SJdqYLHcupbscFI7hHaQnkN1xWJ-L8476ZOKzUgiBvwH9uElGZXwD6SwfXoGW_R38_isrnfTXKfW9PPixyLaN3404tcjOU1r02HIurrplXlIKRKG9CVXxKsESfJJ8trwtZw6O4erxrnisxfL0VwAR7l69P6KcFb57vvM4j4hKFqxUDr4YvSq1qOTt3urYbAKehhvoiLhZxw";
export default function MapSelector() {
onRegionDidChange = (e) => {
console.log('onRegionDidChange', e.geometry.coordinates);
};
return (
<View style={styles.container}>
{/* <Mapir
apiKey={X_API_KEY}
onRegionDidChange={(e) => onRegionDidChange(e)}
style={styles.container}
/> */}
{/* <Mapir.Camera
zoomLevel={13}
centerCoordinate={[51.422548, 35.732573]}
/>
</Mapir> */}
</View>
);
}
const styles = StyleSheet.create({
container: {
width : '100%', height: 300
},
});

@ -217,7 +217,7 @@ const Navbar = ({ notification, setBoxPosition, headerOptions }) => {
<Textt <Textt
transform="translate(15 19)" transform="translate(15 19)"
fontSize={14} fontSize={14}
fontFamily="IRANSansX-Light, IRANSansX" // fontFamily="regular"
fontWeight={300} fontWeight={300}
> >
<TSpan x={-8.841} y={0}> <TSpan x={-8.841} y={0}>

@ -25,8 +25,8 @@ function Select({
borderWidth: 1, borderWidth: 1,
borderColor: Colors.theme1[colorScheme].gray2077 + "66", borderColor: Colors.theme1[colorScheme].gray2077 + "66",
borderRadius: 6, borderRadius: 6,
height: 36, height: 48,
backgroundColor: Colors.theme1[colorScheme].grayF9, backgroundColor: 'white',
fontFamily: "regular", fontFamily: "regular",
}} }}
rowTextStyle={{ rowTextStyle={{
@ -39,7 +39,7 @@ function Select({
textAlign: "center", textAlign: "center",
justifyContent: "flex-end", justifyContent: "flex-end",
flex: 0, flex: 0,
fontSize: fontSize.sm, fontSize: fontSize.tiny,
color: Colors.theme1[colorScheme].gray2077, color: Colors.theme1[colorScheme].gray2077,
fontFamily: "regular", fontFamily: "regular",
// display: 'inline' // display: 'inline'

@ -43,7 +43,7 @@ const user = (state = initialState, action) => {
return { return {
...state, ...state,
loading: false, loading: false,
status: data, status: JSON.parse(data),
error: null, error: null,
setDone: false, setDone: false,
}; };

@ -62,7 +62,7 @@ try {
ReactNative.I18nManager.allowRTL(false); ReactNative.I18nManager.allowRTL(false);
// enableScreens(); // enableScreens();
} catch (e) { } catch (e) {
// console.log(e); console.log(e);
} }
console.disableYellowBox = true; console.disableYellowBox = true;

@ -20,6 +20,7 @@ import Navbar from "../../components/Navbar";
import CustomPressable from "../../components/Pressable"; import CustomPressable from "../../components/Pressable";
import CustomTextInput from "../../components/CustomTextInput"; import CustomTextInput from "../../components/CustomTextInput";
import Select from "../../components/Select"; import Select from "../../components/Select";
import MapSelector from "../../components/MapSelector";
//style //style
import tw from "tailwind-rn"; import tw from "tailwind-rn";
@ -48,12 +49,6 @@ const Address = ({
getProvince(); getProvince();
}, []); }, []);
useEffect(() => {
// if(provinces?.length > 0){
console.log(province);
// }
}, [province]);
useEffect(() => { useEffect(() => {
if (addressFields?.provinceId) { if (addressFields?.provinceId) {
getCity({ getCity({
@ -186,6 +181,7 @@ const Address = ({
style={styles.container} style={styles.container}
> >
<View style={tw("w-full flex flex-col pb-4")}> <View style={tw("w-full flex flex-col pb-4")}>
<MapSelector />
<Header <Header
title="اطلاعات هویتی" title="اطلاعات هویتی"
text="( لطفا نام و نام خانوادگی خود را به طور کامل وارد نمایید )" text="( لطفا نام و نام خانوادگی خود را به طور کامل وارد نمایید )"
@ -262,6 +258,19 @@ const Address = ({
name="cityId" name="cityId"
/> />
</View> </View>
<View style={tw('mb-4')}>
<CustomTextInput
label="کد پستی"
placeholder=""
textAlign="left"
name="postalCode"
maxlength="60"
value={addressFields?.postalCode}
onChange={(name, value) => onChange(name, value)}
autoFocus={false}
regex={(val) => val}
/>
</View>
<CustomPressable <CustomPressable
title={"ثبت آدرس"} title={"ثبت آدرس"}

@ -46,10 +46,10 @@ const DeliveryForm = ({ list, form, getList, getFactorInfo, userId }) => {
<Navbar <Navbar
headerOptions={{ headerOptions={{
logo: false, logo: false,
menu: true, menu: false,
hamburgerMenu: false, hamburgerMenu: false,
title: "", title: "",
bookmark: true, bookmark: false,
qr: false, qr: false,
back: true, back: true,
}} }}

@ -3,9 +3,9 @@ import {
Text, Text,
Image, Image,
TouchableOpacity, TouchableOpacity,
Dimensions,
FlatList, FlatList,
Appearance, Appearance,
Platform
} from "react-native"; } from "react-native";
import tw from "tailwind-rn"; import tw from "tailwind-rn";
import fontSize from "../../../constants/fontSize"; import fontSize from "../../../constants/fontSize";
@ -19,6 +19,8 @@ import Progress from "../../../components/Progress";
//Color //Color
import Color from "../../../constants/Colors"; import Color from "../../../constants/Colors";
const ios = Platform.OS === 'ios';
function MyBooks({ books, grades }) { function MyBooks({ books, grades }) {
const colorScheme = Appearance.getColorScheme(); const colorScheme = Appearance.getColorScheme();
@ -26,7 +28,7 @@ function MyBooks({ books, grades }) {
const navigation = useNavigation(); const navigation = useNavigation();
return ( return (
<TouchableOpacity <TouchableOpacity
style={tw("flex flex-col ml-3")} style={tw(`flex flex-col ml-3 ${ios ? "items-end" : ""}`)}
onPress={() => navigation.navigate("Product")} onPress={() => navigation.navigate("Product")}
> >
<Image <Image
@ -74,7 +76,7 @@ function MyBooks({ books, grades }) {
<View style={[tw("w-full px-4 mb-5")]}> <View style={[tw("w-full px-4 mb-5")]}>
<View <View
style={[ style={[
tw("w-full flex flex-col rounded-md pt-3 px-2 overflow-hidden"), tw(`w-full flex flex-col rounded-md pt-3 px-2 overflow-hidden`),
{ {
backgroundColor: Color.theme1[colorScheme].greenCF + "0F", backgroundColor: Color.theme1[colorScheme].greenCF + "0F",
borderColor: Color.theme1[colorScheme].greenD9 + "", borderColor: Color.theme1[colorScheme].greenD9 + "",
@ -84,6 +86,7 @@ function MyBooks({ books, grades }) {
> >
<Text <Text
style={[ style={[
tw(`${ios ? "text-right" : ""} w-full`),
{ {
color: Color.theme1[colorScheme].green79, color: Color.theme1[colorScheme].green79,
fontFamily: "bold", fontFamily: "bold",

@ -1,8 +1,16 @@
import React from "react"; import React from "react";
import { View, Image, TouchableOpacity, FlatList } from "react-native"; import {
View,
Image,
TouchableOpacity,
FlatList,
Platform,
} from "react-native";
import { useNavigation } from "@react-navigation/native"; import { useNavigation } from "@react-navigation/native";
import tw from "tailwind-rn"; import tw from "tailwind-rn";
const ios = Platform.OS === "ios";
import { connect } from "react-redux"; import { connect } from "react-redux";
function Scroll({ books }) { function Scroll({ books }) {
@ -33,7 +41,11 @@ function Scroll({ books }) {
return ( return (
<View <View
style={[ style={[
tw("flex flex-col flex-wrap-reverse justify-between"), tw(
`flex flex-col justify-between ${
ios ? "flex-wrap" : "flex-wrap-reverse"
}`
),
{ height: 245, direction: "rtl" }, { height: 245, direction: "rtl" },
]} ]}
> >
@ -44,7 +56,7 @@ function Scroll({ books }) {
); );
}; };
return ( return (
<View style={[tw("flex flex-col pr-3 mb-5")]}> <View style={[tw(`flex flex-col pr-3 mb-5`)]}>
<FlatList <FlatList
showsHorizontalScrollIndicator={false} showsHorizontalScrollIndicator={false}
horizontal={true} horizontal={true}
@ -58,7 +70,6 @@ function Scroll({ books }) {
); );
} }
const mapStateToProps = (state) => ({ const mapStateToProps = (state) => ({});
});
export default connect(mapStateToProps, {})(Scroll); export default connect(mapStateToProps, {})(Scroll);

@ -8,7 +8,8 @@ import {
ActivityIndicator, ActivityIndicator,
Dimensions, Dimensions,
TouchableHighlight, TouchableHighlight,
Appearance Appearance,
Platform
} from "react-native"; } from "react-native";
import Logo from "./assets/logo.png"; import Logo from "./assets/logo.png";
import CustomTextInput from "../../components/CustomTextInput"; import CustomTextInput from "../../components/CustomTextInput";
@ -19,6 +20,8 @@ import {user} from '../../redux/actions';
import Colors from "../../constants/Colors"; import Colors from "../../constants/Colors";
import fontSize from "../../constants/fontSize"; import fontSize from "../../constants/fontSize";
const ios = Platform.OS === 'ios';
const { width } = Dimensions.get("window"); const { width } = Dimensions.get("window");
function Login(props) { function Login(props) {
@ -62,7 +65,7 @@ function Login(props) {
/> />
<Text <Text
style={[ style={[
tw("w-full mt-5"), tw(`w-full mt-5 ${ios ? "text-right" : ""}`),
{ {
fontSize: fontSize.xl2, fontSize: fontSize.xl2,
fontFamily: "bold", fontFamily: "bold",
@ -74,7 +77,7 @@ function Login(props) {
</Text> </Text>
<Text <Text
style={[ style={[
tw("w-full mb-5"), tw(`w-full ${ios ? "text-right mb-5" : "mt-5"}`),
{ {
fontSize: fontSize.xl2, fontSize: fontSize.xl2,
fontFamily: "bold", fontFamily: "bold",

@ -8,6 +8,7 @@ import {
TouchableOpacity, TouchableOpacity,
ActivityIndicator, ActivityIndicator,
Appearance, Appearance,
Platform
} from "react-native"; } from "react-native";
import tw from "tailwind-rn"; import tw from "tailwind-rn";
import { connect } from "react-redux"; import { connect } from "react-redux";
@ -19,6 +20,8 @@ import { user } from "../../redux/actions";
import fontSize from "../../constants/fontSize"; import fontSize from "../../constants/fontSize";
import Colors from "../../constants/Colors"; import Colors from "../../constants/Colors";
const ios = Platform.OS === 'ios';
const { width } = Dimensions.get("window"); const { width } = Dimensions.get("window");
let ref1; let ref1;
let ref2; let ref2;
@ -109,11 +112,11 @@ function Otp(props) {
}; };
}, []); }, []);
// useEffect(() => { useEffect(() => {
// if (props.isLogin) { if (props.isLogin) {
// props.navigation.navigate('Root'); props.navigation.navigate('Root');
// } }
// }, [props.isLogin]); }, [props.isLogin]);
return ( return (
<View style={[tw("px-4 flex-1 justify-center items-center bg-white")]}> <View style={[tw("px-4 flex-1 justify-center items-center bg-white")]}>
@ -129,7 +132,7 @@ function Otp(props) {
/> />
<Text <Text
style={[ style={[
tw("w-full mt-2.5"), tw(`w-full mt-2.5 ${ios ? 'text-right' : ""}`),
{ {
fontSize: fontSize.sm, fontSize: fontSize.sm,
fontFamily: "regular", fontFamily: "regular",
@ -149,6 +152,7 @@ function Otp(props) {
fontSize: fontSize.xl3, fontSize: fontSize.xl3,
fontFamily: "bold", fontFamily: "bold",
color: Colors.theme1[colorScheme].green79, color: Colors.theme1[colorScheme].green79,
width : ios ? fontSize.xl3 + 40 : ""
}, },
]} ]}
underlineColorAndroid={"transparent"} underlineColorAndroid={"transparent"}
@ -164,6 +168,7 @@ function Otp(props) {
fontSize: fontSize.xl3, fontSize: fontSize.xl3,
fontFamily: "bold", fontFamily: "bold",
color: Colors.theme1[colorScheme].green79, color: Colors.theme1[colorScheme].green79,
width : ios ? fontSize.xl3 + 40 : ""
}, },
]} ]}
underlineColorAndroid={"transparent"} underlineColorAndroid={"transparent"}
@ -179,6 +184,7 @@ function Otp(props) {
fontSize: fontSize.xl3, fontSize: fontSize.xl3,
fontFamily: "bold", fontFamily: "bold",
color: Colors.theme1[colorScheme].green79, color: Colors.theme1[colorScheme].green79,
width : ios ? fontSize.xl3 + 40 : ""
}, },
]} ]}
underlineColorAndroid={"transparent"} underlineColorAndroid={"transparent"}
@ -194,6 +200,7 @@ function Otp(props) {
fontSize: fontSize.xl3, fontSize: fontSize.xl3,
fontFamily: "bold", fontFamily: "bold",
color: Colors.theme1[colorScheme].green79, color: Colors.theme1[colorScheme].green79,
width : ios ? fontSize.xl3 + 40 : ""
}, },
]} ]}
underlineColorAndroid={"transparent"} underlineColorAndroid={"transparent"}

@ -1294,6 +1294,18 @@
dependencies: dependencies:
dequal "^1.0.0" dequal "^1.0.0"
"@mapbox/geo-viewport@^0.4.0":
version "0.4.1"
resolved "https://registry.yarnpkg.com/@mapbox/geo-viewport/-/geo-viewport-0.4.1.tgz#a184c0b161975858a2e855a1e333e66af342964b"
integrity sha512-5g6eM3EOSl7+0p0VY+vHWEYjUlNzof936VKHTi/NuJVABjbYe8D2NAVJ0qt5C9Np4glUlhKFepgAgQ0OEybrjQ==
dependencies:
"@mapbox/sphericalmercator" "~1.1.0"
"@mapbox/sphericalmercator@~1.1.0":
version "1.1.0"
resolved "https://registry.yarnpkg.com/@mapbox/sphericalmercator/-/sphericalmercator-1.1.0.tgz#f3b1af042620716a1289fc41e1e97f610823aefe"
integrity sha512-pEsfZyG4OMThlfFQbCte4gegvHUjxXCjz0KZ4Xk8NdOYTQBLflj6U8PL05RPAiuRAMAQNUUKJuL6qYZ5Y4kAWA==
"@nodelib/fs.scandir@2.1.5": "@nodelib/fs.scandir@2.1.5":
version "2.1.5" version "2.1.5"
resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5" resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5"
@ -1546,6 +1558,58 @@
resolved "https://registry.yarnpkg.com/@sideway/pinpoint/-/pinpoint-2.0.0.tgz#cff8ffadc372ad29fd3f78277aeb29e632cc70df" resolved "https://registry.yarnpkg.com/@sideway/pinpoint/-/pinpoint-2.0.0.tgz#cff8ffadc372ad29fd3f78277aeb29e632cc70df"
integrity sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ== integrity sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==
"@turf/along@^6.0.1":
version "6.5.0"
resolved "https://registry.yarnpkg.com/@turf/along/-/along-6.5.0.tgz#ab12eec58a14de60fe243a62d31a474f415c8fef"
integrity sha512-LLyWQ0AARqJCmMcIEAXF4GEu8usmd4Kbz3qk1Oy5HoRNpZX47+i5exQtmIWKdqJ1MMhW26fCTXgpsEs5zgJ5gw==
dependencies:
"@turf/bearing" "^6.5.0"
"@turf/destination" "^6.5.0"
"@turf/distance" "^6.5.0"
"@turf/helpers" "^6.5.0"
"@turf/invariant" "^6.5.0"
"@turf/bearing@^6.5.0":
version "6.5.0"
resolved "https://registry.yarnpkg.com/@turf/bearing/-/bearing-6.5.0.tgz#462a053c6c644434bdb636b39f8f43fb0cd857b0"
integrity sha512-dxINYhIEMzgDOztyMZc20I7ssYVNEpSv04VbMo5YPQsqa80KO3TFvbuCahMsCAW5z8Tncc8dwBlEFrmRjJG33A==
dependencies:
"@turf/helpers" "^6.5.0"
"@turf/invariant" "^6.5.0"
"@turf/destination@^6.5.0":
version "6.5.0"
resolved "https://registry.yarnpkg.com/@turf/destination/-/destination-6.5.0.tgz#30a84702f9677d076130e0440d3223ae503fdae1"
integrity sha512-4cnWQlNC8d1tItOz9B4pmJdWpXqS0vEvv65bI/Pj/genJnsL7evI0/Xw42RvEGROS481MPiU80xzvwxEvhQiMQ==
dependencies:
"@turf/helpers" "^6.5.0"
"@turf/invariant" "^6.5.0"
"@turf/distance@^6.0.1", "@turf/distance@^6.5.0":
version "6.5.0"
resolved "https://registry.yarnpkg.com/@turf/distance/-/distance-6.5.0.tgz#21f04d5f86e864d54e2abde16f35c15b4f36149a"
integrity sha512-xzykSLfoURec5qvQJcfifw/1mJa+5UwByZZ5TZ8iaqjGYN0vomhV9aiSLeYdUGtYRESZ+DYC/OzY+4RclZYgMg==
dependencies:
"@turf/helpers" "^6.5.0"
"@turf/invariant" "^6.5.0"
"@turf/helpers@4.6.0":
version "4.6.0"
resolved "https://registry.yarnpkg.com/@turf/helpers/-/helpers-4.6.0.tgz#12398733b8ae28420df6166fa44c7ee8ffd6414c"
integrity sha1-EjmHM7iuKEIN9hZvpEx+6P/WQUw=
"@turf/helpers@^6.5.0":
version "6.5.0"
resolved "https://registry.yarnpkg.com/@turf/helpers/-/helpers-6.5.0.tgz#f79af094bd6b8ce7ed2bd3e089a8493ee6cae82e"
integrity sha512-VbI1dV5bLFzohYYdgqwikdMVpe7pJ9X3E+dlr425wa2/sMJqYDhTO++ec38/pcPvPE6oD9WEEeU3Xu3gza+VPw==
"@turf/invariant@^6.5.0":
version "6.5.0"
resolved "https://registry.yarnpkg.com/@turf/invariant/-/invariant-6.5.0.tgz#970afc988023e39c7ccab2341bd06979ddc7463f"
integrity sha512-Wv8PRNCtPD31UVbdJE/KVAWKe7l6US+lJItRR/HOEW3eh+U/JwRCSUl/KZ7bmjM/C+zLNoreM2TU6OoLACs4eg==
dependencies:
"@turf/helpers" "^6.5.0"
"@types/graceful-fs@^4.1.2": "@types/graceful-fs@^4.1.2":
version "4.1.5" version "4.1.5"
resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.5.tgz#21ffba0d98da4350db64891f92a9e5db3cdb4e15" resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.5.tgz#21ffba0d98da4350db64891f92a9e5db3cdb4e15"
@ -1850,6 +1914,13 @@ atob@^2.1.2:
resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9"
integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==
axios@^0.19.2:
version "0.19.2"
resolved "https://registry.yarnpkg.com/axios/-/axios-0.19.2.tgz#3ea36c5d8818d0d5f8a8a97a6d36b86cdc00cb27"
integrity sha512-fjgm5MvRHLhx+osE2xoekY70AhARk3a6hkN+3Io1jc00jtquGvxYlKlsFUhmUET0V5te6CcZI7lcv2Ym61mjHA==
dependencies:
follow-redirects "1.5.10"
axios@^0.24.0: axios@^0.24.0:
version "0.24.0" version "0.24.0"
resolved "https://registry.yarnpkg.com/axios/-/axios-0.24.0.tgz#804e6fa1e4b9c5288501dd9dff56a7a0940d20d6" resolved "https://registry.yarnpkg.com/axios/-/axios-0.24.0.tgz#804e6fa1e4b9c5288501dd9dff56a7a0940d20d6"
@ -2605,6 +2676,13 @@ debug@2.6.9, debug@^2.2.0, debug@^2.3.3:
dependencies: dependencies:
ms "2.0.0" ms "2.0.0"
debug@=3.1.0:
version "3.1.0"
resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261"
integrity sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==
dependencies:
ms "2.0.0"
debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2: debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2:
version "4.3.3" version "4.3.3"
resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.3.tgz#04266e0b70a98d4462e6e288e38259213332b664" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.3.tgz#04266e0b70a98d4462e6e288e38259213332b664"
@ -3233,6 +3311,13 @@ flow-parser@^0.121.0:
resolved "https://registry.yarnpkg.com/flow-parser/-/flow-parser-0.121.0.tgz#9f9898eaec91a9f7c323e9e992d81ab5c58e618f" resolved "https://registry.yarnpkg.com/flow-parser/-/flow-parser-0.121.0.tgz#9f9898eaec91a9f7c323e9e992d81ab5c58e618f"
integrity sha512-1gIBiWJNR0tKUNv8gZuk7l9rVX06OuLzY9AoGio7y/JT4V1IZErEMEq2TJS+PFcw/y0RshZ1J/27VfK1UQzYVg== integrity sha512-1gIBiWJNR0tKUNv8gZuk7l9rVX06OuLzY9AoGio7y/JT4V1IZErEMEq2TJS+PFcw/y0RshZ1J/27VfK1UQzYVg==
follow-redirects@1.5.10:
version "1.5.10"
resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.5.10.tgz#7b7a9f9aea2fdff36786a94ff643ed07f4ff5e2a"
integrity sha512-0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ==
dependencies:
debug "=3.1.0"
follow-redirects@^1.14.4: follow-redirects@^1.14.4:
version "1.14.6" version "1.14.6"
resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.14.6.tgz#8cfb281bbc035b3c067d6cd975b0f6ade6e855cd" resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.14.6.tgz#8cfb281bbc035b3c067d6cd975b0f6ade6e855cd"
@ -4252,6 +4337,25 @@ map-visit@^1.0.0:
dependencies: dependencies:
object-visit "^1.0.0" object-visit "^1.0.0"
mapir-mapbox@2.0.6:
version "2.0.6"
resolved "https://registry.yarnpkg.com/mapir-mapbox/-/mapir-mapbox-2.0.6.tgz#38ec066b085651ea650236c2d571b419ba229538"
integrity sha512-aGUysx2YzYwrJVzXwO8IWtBqaWITg8sKwKwjVv+21g6Bmg0HNiVB9LGQvNuMkqtmhhD7GIT2Ys9T4TqHxD+g8g==
dependencies:
"@mapbox/geo-viewport" "^0.4.0"
"@turf/along" "^6.0.1"
"@turf/distance" "^6.0.1"
"@turf/helpers" "4.6.0"
underscore "^1.8.3"
mapir-react-native-sdk@^2.2.4:
version "2.2.4"
resolved "https://registry.yarnpkg.com/mapir-react-native-sdk/-/mapir-react-native-sdk-2.2.4.tgz#fc5ddcc583e8aa2eab5f4ef574a34ef65f20c5ce"
integrity sha512-ACNP9h2/M98SL+XMVMfFOj+ocbxNlLFgzZoz6cQ4ZOQo+RCZxThyV+IcbbMeFXwJK3jiKLWBzIsaICJwibeLkg==
dependencies:
axios "^0.19.2"
mapir-mapbox "2.0.6"
match-all@^1.2.6: match-all@^1.2.6:
version "1.2.6" version "1.2.6"
resolved "https://registry.yarnpkg.com/match-all/-/match-all-1.2.6.tgz#66d276ad6b49655551e63d3a6ee53e8be0566f8d" resolved "https://registry.yarnpkg.com/match-all/-/match-all-1.2.6.tgz#66d276ad6b49655551e63d3a6ee53e8be0566f8d"
@ -6443,6 +6547,11 @@ ultron@1.0.x:
resolved "https://registry.yarnpkg.com/ultron/-/ultron-1.0.2.tgz#ace116ab557cd197386a4e88f4685378c8b2e4fa" resolved "https://registry.yarnpkg.com/ultron/-/ultron-1.0.2.tgz#ace116ab557cd197386a4e88f4685378c8b2e4fa"
integrity sha1-rOEWq1V80Zc4ak6I9GhTeMiy5Po= integrity sha1-rOEWq1V80Zc4ak6I9GhTeMiy5Po=
underscore@^1.8.3:
version "1.13.2"
resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.13.2.tgz#276cea1e8b9722a8dbed0100a407dda572125881"
integrity sha512-ekY1NhRzq0B08g4bGuX4wd2jZx5GnKz6mKSqFL4nqBlfyMGiG10gDFhDTMEfYmDL6Jy0FUIZp7wiRB+0BP7J2g==
unicode-canonical-property-names-ecmascript@^2.0.0: unicode-canonical-property-names-ecmascript@^2.0.0:
version "2.0.0" version "2.0.0"
resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz#301acdc525631670d39f6146e0e77ff6bbdebddc" resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz#301acdc525631670d39f6146e0e77ff6bbdebddc"

Loading…
Cancel
Save