update 12 files

master
Reza_ashrafi 2 years ago
parent dffcfc4bef
commit 2f72fb2800
  1. 2
      android/app/build.gradle
  2. 2
      android/app/src/main/java/com/danovin/MainApplication.java
  3. 3
      android/settings.gradle
  4. 1
      ios/Podfile
  5. 2
      package.json
  6. 67
      src/components/MapSelector.js
  7. 7
      src/navigation.js
  8. 239
      src/screens/Address/index.js
  9. 21
      src/screens/DeliveryForm/Address/index.js
  10. 203
      src/screens/Profile/components/ProfileAddress/index.js
  11. 350
      yarn.lock

@ -268,8 +268,6 @@ dependencies {
implementation "com.facebook.react:react-native:+" // From node_modules
implementation "androidx.swiperefreshlayout:swiperefreshlayout:1.0.0"
// map
implementation project(':@react-native-mapbox-gl_maps')
debugImplementation("com.facebook.flipper:flipper:${FLIPPER_VERSION}") {
exclude group:'com.facebook.fbjni'

@ -12,7 +12,6 @@ import com.facebook.soloader.SoLoader;
import com.danovin.newarchitecture.MainApplicationReactNativeHost;
import java.lang.reflect.InvocationTargetException;
import java.util.List;
import com.mapbox.rctmgl.RCTMGLPackage;
import com.brentvatne.react.ReactVideoPackage;
@ -29,7 +28,6 @@ public class MainApplication extends Application implements ReactApplication {
protected List<ReactPackage> getPackages() {
@SuppressWarnings("UnnecessaryLocalVariable")
List<ReactPackage> packages = new PackageList(this).getPackages();
packages.add(new RCTMGLPackage());
packages.add(new ReactVideoPackage());
// Packages that cannot be autolinked yet can be added manually here, for example:
// packages.add(new MyReactNativePackage());

@ -3,9 +3,6 @@ apply from: file("../node_modules/@react-native-community/cli-platform-android/n
include ':app'
includeBuild('../node_modules/react-native-gradle-plugin')
include ':@react-native-mapbox-gl_maps'
project(':@react-native-mapbox-gl_maps').projectDir = new File(rootProject.projectDir, '../node_modules/mapir-mapbox/android/rctmgl')
include ':react-native-video'
project(':react-native-video').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-video/android-exoplayer')

@ -18,7 +18,6 @@ target 'danovin' do
# An absolute path to your application root.
:app_path => "#{Pod::Config.instance.installation_root}/.."
)
pod 'react-native-mapbox-gl', :path => '../node_modules/mapir-mapbox', :inhibit_warnings => false
permissions_path = '../node_modules/react-native-permissions/ios'
pod 'Permission-Camera', :path => "#{permissions_path}/Camera"

@ -11,11 +11,11 @@
},
"dependencies": {
"@react-native-async-storage/async-storage": "^1.17.6",
"@react-native-mapbox-gl/maps": "^8.6.0-beta.0",
"@react-navigation/bottom-tabs": "^6.3.1",
"@react-navigation/native": "^6.0.10",
"@react-navigation/native-stack": "^6.6.2",
"axios": "^0.27.2",
"mapir-react-native-sdk": "^2.2.4",
"react": "17.0.2",
"react-native": "0.68.2",
"react-native-awesome-alerts": "1.5.2",

@ -1,39 +1,33 @@
import React from "react";
// import MapboxGL from '@react-native-mapbox-gl/maps';
//assets
// import markerIcon from "../assets/icons/marker.png";
// MapboxGL.setAccessToken('<YOUR_ACCESSTOKEN>');
import React from 'react';
// import Mapir from 'mapir-react-native-sdk';
export default function MapSelector({setAddress}) {
// const [markerCoordinates, setMarkerCoordinates] = React.useState({
// latitude: 35.7219,
// longitude: 51.3347,
// });
const [markerCoordinates, setMarkerCoordinates] = React.useState({
latitude: 35.7219,
longitude: 51.3347,
});
// const getLocation = (location) => {
// setMarkerCoordinates(location);
// try {
// fetch(
// `https://map.ir/reverse/no?lat=${location.latitude}&lon=${location.longitude}`,
// {
// headers: {
// "Content-Type": "application/json",
// "x-api-key":
// "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjkyODE4ODI0N2FhMjdlYTMyMzVlYzRiOWUxZDI3NTQyZTNjYmI3ZjQzY2Q2NGQzYjdkYjU1NmY3NDM5YzU2NzUyNzMxMjAzYzMwOTliYTFiIn0.eyJhdWQiOiIxNjk2MSIsImp0aSI6IjkyODE4ODI0N2FhMjdlYTMyMzVlYzRiOWUxZDI3NTQyZTNjYmI3ZjQzY2Q2NGQzYjdkYjU1NmY3NDM5YzU2NzUyNzMxMjAzYzMwOTliYTFiIiwiaWF0IjoxNjQ0MzE3MDA5LCJuYmYiOjE2NDQzMTcwMDksImV4cCI6MTY0NjgyMjYwOSwic3ViIjoiIiwic2NvcGVzIjpbImJhc2ljIl19.Gckmd77Vw-wmsaztsmVmjYmfp4zXRSy2f0tXS-1p7IY8VJmvCCrk64y7WvCLbH0YfGZI9rG9ZUi5hRJDDGXu70l1ZafCYq2-EkMzcbx-PGTTq2bHGNZujF4ur1xtGoXd2kwGuldiR_6SJdqYLHcupbscFI7hHaQnkN1xWJ-L8476ZOKzUgiBvwH9uElGZXwD6SwfXoGW_R38_isrnfTXKfW9PPixyLaN3404tcjOU1r02HIurrplXlIKRKG9CVXxKsESfJJ8trwtZw6O4erxrnisxfL0VwAR7l69P6KcFb57vvM4j4hKFqxUDr4YvSq1qOTt3urYbAKehhvoiLhZxw",
// },
// }
// )
// .then((response) => response.json())
// .then((data) => setAddress(data.address));
// } catch (err) {
// console.log(err);
// }
// };
const getLocation = location => {
setMarkerCoordinates(location);
try {
fetch(
`https://map.ir/reverse/no?lat=${location.latitude}&lon=${location.longitude}`,
{
headers: {
'Content-Type': 'application/json',
'x-api-key':
'eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjkyODE4ODI0N2FhMjdlYTMyMzVlYzRiOWUxZDI3NTQyZTNjYmI3ZjQzY2Q2NGQzYjdkYjU1NmY3NDM5YzU2NzUyNzMxMjAzYzMwOTliYTFiIn0.eyJhdWQiOiIxNjk2MSIsImp0aSI6IjkyODE4ODI0N2FhMjdlYTMyMzVlYzRiOWUxZDI3NTQyZTNjYmI3ZjQzY2Q2NGQzYjdkYjU1NmY3NDM5YzU2NzUyNzMxMjAzYzMwOTliYTFiIiwiaWF0IjoxNjQ0MzE3MDA5LCJuYmYiOjE2NDQzMTcwMDksImV4cCI6MTY0NjgyMjYwOSwic3ViIjoiIiwic2NvcGVzIjpbImJhc2ljIl19.Gckmd77Vw-wmsaztsmVmjYmfp4zXRSy2f0tXS-1p7IY8VJmvCCrk64y7WvCLbH0YfGZI9rG9ZUi5hRJDDGXu70l1ZafCYq2-EkMzcbx-PGTTq2bHGNZujF4ur1xtGoXd2kwGuldiR_6SJdqYLHcupbscFI7hHaQnkN1xWJ-L8476ZOKzUgiBvwH9uElGZXwD6SwfXoGW_R38_isrnfTXKfW9PPixyLaN3404tcjOU1r02HIurrplXlIKRKG9CVXxKsESfJJ8trwtZw6O4erxrnisxfL0VwAR7l69P6KcFb57vvM4j4hKFqxUDr4YvSq1qOTt3urYbAKehhvoiLhZxw',
},
},
)
.then(response => response.json())
.then(data => setAddress(data.address));
} catch (err) {
console.log(err);
}
};
const onRegionDidChange = (e) => {
const onRegionDidChange = e => {
console.log('onRegionDidChange', e.geometry.coordinates);
};
@ -41,12 +35,11 @@ export default function MapSelector({ setAddress }) {
<></>
// <Mapir
// apiKey={
// "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjkyODE4ODI0N2FhMjdlYTMyMzVlYzRiOWUxZDI3NTQyZTNjYmI3ZjQzY2Q2NGQzYjdkYjU1NmY3NDM5YzU2NzUyNzMxMjAzYzMwOTliYTFiIn0.eyJhdWQiOiIxNjk2MSIsImp0aSI6IjkyODE4ODI0N2FhMjdlYTMyMzVlYzRiOWUxZDI3NTQyZTNjYmI3ZjQzY2Q2NGQzYjdkYjU1NmY3NDM5YzU2NzUyNzMxMjAzYzMwOTliYTFiIiwiaWF0IjoxNjQ0MzE3MDA5LCJuYmYiOjE2NDQzMTcwMDksImV4cCI6MTY0NjgyMjYwOSwic3ViIjoiIiwic2NvcGVzIjpbImJhc2ljIl19.Gckmd77Vw-wmsaztsmVmjYmfp4zXRSy2f0tXS-1p7IY8VJmvCCrk64y7WvCLbH0YfGZI9rG9ZUi5hRJDDGXu70l1ZafCYq2-EkMzcbx-PGTTq2bHGNZujF4ur1xtGoXd2kwGuldiR_6SJdqYLHcupbscFI7hHaQnkN1xWJ-L8476ZOKzUgiBvwH9uElGZXwD6SwfXoGW_R38_isrnfTXKfW9PPixyLaN3404tcjOU1r02HIurrplXlIKRKG9CVXxKsESfJJ8trwtZw6O4erxrnisxfL0VwAR7l69P6KcFb57vvM4j4hKFqxUDr4YvSq1qOTt3urYbAKehhvoiLhZxw"
// 'eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjkyODE4ODI0N2FhMjdlYTMyMzVlYzRiOWUxZDI3NTQyZTNjYmI3ZjQzY2Q2NGQzYjdkYjU1NmY3NDM5YzU2NzUyNzMxMjAzYzMwOTliYTFiIn0.eyJhdWQiOiIxNjk2MSIsImp0aSI6IjkyODE4ODI0N2FhMjdlYTMyMzVlYzRiOWUxZDI3NTQyZTNjYmI3ZjQzY2Q2NGQzYjdkYjU1NmY3NDM5YzU2NzUyNzMxMjAzYzMwOTliYTFiIiwiaWF0IjoxNjQ0MzE3MDA5LCJuYmYiOjE2NDQzMTcwMDksImV4cCI6MTY0NjgyMjYwOSwic3ViIjoiIiwic2NvcGVzIjpbImJhc2ljIl19.Gckmd77Vw-wmsaztsmVmjYmfp4zXRSy2f0tXS-1p7IY8VJmvCCrk64y7WvCLbH0YfGZI9rG9ZUi5hRJDDGXu70l1ZafCYq2-EkMzcbx-PGTTq2bHGNZujF4ur1xtGoXd2kwGuldiR_6SJdqYLHcupbscFI7hHaQnkN1xWJ-L8476ZOKzUgiBvwH9uElGZXwD6SwfXoGW_R38_isrnfTXKfW9PPixyLaN3404tcjOU1r02HIurrplXlIKRKG9CVXxKsESfJJ8trwtZw6O4erxrnisxfL0VwAR7l69P6KcFb57vvM4j4hKFqxUDr4YvSq1qOTt3urYbAKehhvoiLhZxw'
// }
// onRegionDidChange={(e) => onRegionDidChange(e)}
// style={{ flex : 1 }}
// >
// <Mapir.Camera zoomLevel={13} centerCoordinate={[51.422548, 35.732573]} />
// onRegionDidChange={e => onRegionDidChange(e)}
// style={{width: '100%', height: '100%'}}>
// <Mapir.Camera zoomLevel={13} centerCoordinate={[35.7219, 51.3347]} />
// </Mapir>
);
}

@ -34,7 +34,7 @@ import ShoppingCart from '../src/screens/ShoppingCart';
import Address from "../src/screens/Address";
import Profile from '../src/screens/Profile';
// import ProfileBookmark from "../src/screens/Profile/components/ProfileBookmark";
// import ProfileAddress from "../src/screens/Profile/components/ProfileAddress";
import ProfileAddress from "../src/screens/Profile/components/ProfileAddress";
// import Blogs from "../src/screens/Blogs";
// import Blog from "../src/screens/Blog";
// import Sample from "../src/screens/Product/components/Sample";
@ -567,7 +567,6 @@ const PROFILEStackScreen = ({theme}) => {
<PROFILEStack.Screen name="Product" component={Product} />
{/*
<PROFILEStack.Screen name="ProfileBookmark" component={ProfileBookmark} />
<PROFILEStack.Screen name="Blogs" component={Blogs} />
<PROFILEStack.Screen name="MoreBlog" component={MoreBlog} />
<PROFILEStack.Screen name="Blog" component={Blog} />
@ -643,6 +642,8 @@ const Navigation = ({
)}
/>
<Stack.Screen name="QR" component={QR} />
<Stack.Screen name="ProfileAddress" component={ProfileAddress} />
<Stack.Screen name="CreateAddress" component={Address} />
{/*
<Stack.Screen name="Orders" component={OrdersFollowUp} />
<Stack.Screen name="Order" component={OrderDetails} />
@ -651,8 +652,6 @@ const Navigation = ({
<Stack.Screen name="QRContent" component={QRContent} />
<Stack.Screen name="Contact" component={Contact} />
<Stack.Screen name="AR" component={AR} />
<Stack.Screen name="CreateAddress" component={Address} />
<Stack.Screen name="ProfileAddress" component={ProfileAddress} />
<Stack.Screen name="Info" component={Info} />
<Stack.Screen name="Ticket" component={Ticket} />
<Stack.Screen name="Tickets" component={Tickets} />

@ -1,7 +1,7 @@
import React, {useEffect, useState} from 'react';
import {
View,
Text,
SafeAreaView,
ScrollView,
StyleSheet,
StatusBar,
@ -10,29 +10,29 @@ import {
KeyboardAvoidingView,
TextInput,
TouchableWithoutFeedback,
} from "react-native";
import React, { useEffect, useState } from "react";
import { connect } from "react-redux";
import { publicApi, user, userAddress } from "../../redux/actions";
import onInput from "../../utils/onInput";
import { useNavigation } from "@react-navigation/native";
import { asyncAwesomeAlert } from "../../utils/AsyncWrappers";
} from 'react-native';
import {useSafeAreaInsets, SafeAreaView} from 'react-native-safe-area-context';
import {connect} from 'react-redux';
import {publicApi, user, userAddress} from '../../redux/actions';
import onInput from '../../utils/onInput';
import {useNavigation} from '@react-navigation/native';
import {asyncAwesomeAlert} from '../../utils/AsyncWrappers';
//components
import Navbar from "../../components/Navbar";
import CustomPressable from "../../components/Pressable";
import CustomTextInput from "../../components/CustomTextInput";
import Navbar from '../../components/Navbar';
import CustomPressable from '../../components/Pressable';
import CustomTextInput from '../../components/CustomTextInput';
import MapSelector from "../../components/MapSelector";
import Select from "../../components/Select";
import Select from '../../components/Select';
//style
import tw from "tailwind-rn";
import Colors from "../../constants/Colors";
import fontSize from "../../constants/fontSize";
import tw from 'tailwind-rn';
import Colors from '../../constants/Colors';
import fontSize from '../../constants/fontSize';
//variables
const ios = Platform.OS === "ios";
const { height } = Dimensions.get("window");
const ios = Platform.OS === 'ios';
const {height} = Dimensions.get('window');
const Address = ({
user,
@ -54,12 +54,13 @@ const Address = ({
mobile,
theme,
}) => {
const insets = useSafeAreaInsets();
const [addressFields, setAddressFields] = useState({});
const [mapAddress, setMapAddress] = useState(null);
const navigation = useNavigation();
const profilePage = React.useMemo(() => {
return route.params?.type === "profile";
return route.params?.type === 'profile';
}, [route]);
const editAddressPreviousValue = React.useMemo(() => {
@ -94,7 +95,7 @@ const Address = ({
cityId: user?.cityId,
});
}
if (route.params?.type === "editAddress") {
if (route.params?.type === 'editAddress') {
setAddressFields({
firstName: editAddressPreviousValue?.firstName,
lastName: editAddressPreviousValue?.lastName,
@ -110,10 +111,10 @@ const Address = ({
}, []);
useEffect(() => {
if (route.params?.type === "editAddress" && provinces?.length) {
if (route.params?.type === 'editAddress' && provinces?.length) {
getCity({
provinceId: provinces?.filter(
(province) => province?.name === editAddressPreviousValue?.provinceId
province => province?.name === editAddressPreviousValue?.provinceId,
)[0]?.id,
});
}
@ -121,8 +122,8 @@ const Address = ({
useEffect(() => {
StatusBar.setBarStyle(
`${theme === "light" ? "dark" : "light"}-content`,
true
`${theme === 'light' ? 'dark' : 'light'}-content`,
true,
);
}, [theme]);
@ -130,7 +131,7 @@ const Address = ({
if (addressFields?.provinceId) {
getCity({
provinceId: provinces?.filter(
(province) => province?.name === addressFields?.provinceId
province => province?.name === addressFields?.provinceId,
)[0]?.id,
});
}
@ -165,29 +166,29 @@ const Address = ({
// });
// }
if (!cellphone) {
return asyncAwesomeAlert("خطا", "شماره موبایل خود را وارد کنید.", {
return asyncAwesomeAlert('خطا', 'شماره موبایل خود را وارد کنید.', {
showCancelButton: false,
confirmText: "باشه",
confirmText: 'باشه',
});
} else {
if (cellphone.slice(0, 2) !== "09") {
if (cellphone.slice(0, 2) !== '09') {
return asyncAwesomeAlert(
"خطا",
"فرمت شماره موبایل وارد شده اشتباه است.",
'خطا',
'فرمت شماره موبایل وارد شده اشتباه است.',
{
showCancellphoneButton: false,
confirmText: "باشه",
}
confirmText: 'باشه',
},
);
}
if (cellphone.length !== 11) {
return asyncAwesomeAlert(
"خطا",
"شماره موبایل میبایست یازده رقم باشد.",
'خطا',
'شماره موبایل میبایست یازده رقم باشد.',
{
showCancelButton: false,
confirmText: "باشه",
}
confirmText: 'باشه',
},
);
}
}
@ -211,39 +212,39 @@ const Address = ({
// }
if (!provinceId) {
return asyncAwesomeAlert("خطا", "نام استان خود را وارد کنید.", {
return asyncAwesomeAlert('خطا', 'نام استان خود را وارد کنید.', {
showCancelButton: false,
confirmText: "باشه",
confirmText: 'باشه',
});
}
if (!cityId) {
return asyncAwesomeAlert("خطا", "نام شهرستان خود را وارد کنید.", {
return asyncAwesomeAlert('خطا', 'نام شهرستان خود را وارد کنید.', {
showCancelButton: false,
confirmText: "باشه",
confirmText: 'باشه',
});
}
if (!postalCode) {
return asyncAwesomeAlert("خطا", "کد پستی خود را وارد کنید.", {
return asyncAwesomeAlert('خطا', 'کد پستی خود را وارد کنید.', {
showCancelButton: false,
confirmText: "باشه",
confirmText: 'باشه',
});
} else {
if (postalCode.length !== 10) {
return asyncAwesomeAlert("خطا", "کد پستی میبایست ده رقم باشد.", {
return asyncAwesomeAlert('خطا', 'کد پستی میبایست ده رقم باشد.', {
showCancelButton: false,
confirmText: "باشه",
confirmText: 'باشه',
});
}
}
if (!mapAddress && !editAddressPreviousValue?.address) {
return asyncAwesomeAlert("خطا", "آدرس خود را از روی نقشه انتخاب کن", {
return asyncAwesomeAlert('خطا', 'آدرس خود را از روی نقشه انتخاب کن', {
showCancelButton: false,
confirmText: "باشه",
confirmText: 'باشه',
});
}
if (route.params?.type === "editAddress") {
if (route.params?.type === 'editAddress') {
editAddress({
firstName: firstName,
lastName: lastName,
@ -251,9 +252,9 @@ const Address = ({
phone: phone,
address: mapAddress,
provinceId: provinces?.filter(
(province) => province?.name === provinceId
province => province?.name === provinceId,
)[0]?.id,
cityId: cities?.filter((city) => city?.name === cityId)[0]?.id,
cityId: cities?.filter(city => city?.name === cityId)[0]?.id,
postalCode: postalCode,
location: null,
id,
@ -266,9 +267,9 @@ const Address = ({
phone: phone,
address: mapAddress,
provinceId: provinces?.filter(
(province) => province?.name === provinceId
province => province?.name === provinceId,
)[0]?.id,
cityId: cities?.filter((city) => city?.name === cityId)[0]?.id,
cityId: cities?.filter(city => city?.name === cityId)[0]?.id,
postalCode: postalCode,
location: null,
});
@ -300,20 +301,20 @@ const Address = ({
} = profileFields;
if (phone) {
if (phone.slice(0, 1) !== "0") {
if (phone.slice(0, 1) !== '0') {
return asyncAwesomeAlert(
"خطا",
"فرمت شماره تلفن وارد شده اشتباه است.",
'خطا',
'فرمت شماره تلفن وارد شده اشتباه است.',
{
showCancelButton: false,
confirmText: "باشه",
}
confirmText: 'باشه',
},
);
}
if (phone.length !== 11) {
return asyncAwesomeAlert("خطا", "شماره تلفن میبایست یازده رقم باشد.", {
return asyncAwesomeAlert('خطا', 'شماره تلفن میبایست یازده رقم باشد.', {
showCancelButton: false,
confirmText: "باشه",
confirmText: 'باشه',
});
}
}
@ -345,29 +346,27 @@ const Address = ({
const Header = ({title, text}) => {
return (
<View style={tw(`flex ${mobile ? "mt-2" : "mt-8"}`)}>
<View style={tw(`flex ${mobile ? 'mt-2' : 'mt-8'}`)}>
<Text
style={{
fontFamily: "Medium",
fontFamily: 'Medium',
fontSize: mobile ? fontSize.lg : fontSize.lg,
color:
theme === "light" ? Colors.theme1.gray20 : Colors.theme1.white,
textAlign: ios ? "right" : "auto",
}}
>
theme === 'light' ? Colors.theme1.gray20 : Colors.theme1.white,
textAlign: ios ? 'right' : 'auto',
}}>
{title}
</Text>
<Text
style={{
fontFamily: "Regular",
fontFamily: 'Regular',
fontSize: mobile ? fontSize.sm : fontSize.tiny,
color:
theme === "light"
? Colors.theme1.gray20 + "aa"
: Colors.theme1.white + "aa",
textAlign: ios ? "right" : "auto",
}}
>
theme === 'light'
? Colors.theme1.gray20 + 'aa'
: Colors.theme1.white + 'aa',
textAlign: ios ? 'right' : 'auto',
}}>
{text}
</Text>
</View>
@ -377,32 +376,31 @@ const Address = ({
return (
<SafeAreaView
style={{
paddingTop: Platform.OS === "android" ? StatusBar.currentHeight : 0,
// position: "relative",
flex: 1,
}}
>
paddingBottom: insets.bottom,
paddingTop: insets.top,
}}>
<Navbar
headerOptions={{
logo: false,
menu: profilePage ? false : false,
hamburgerMenu: false,
title: profilePage ? "اطلاعات کاربری" : "",
title: profilePage ? 'اطلاعات کاربری' : '',
bookmark: profilePage ? false : false,
qr: false,
back: true,
}}
/>
<ScrollView style={[tw("flex-1 px-4")]}>
<ScrollView style={[tw('flex-1 px-4')]}>
<KeyboardAvoidingView>
<TouchableWithoutFeedback>
<View style={tw("flex-1")}>
<View style={tw('flex-1')}>
<Header
title="اطلاعات هویتی"
text="( لطفا نام و نام خانوادگی خود را به طور کامل وارد نمایید )"
/>
<CustomTextInput
label={profilePage ? "نام" : "نام تحویل گیرنده"}
label={profilePage ? 'نام' : 'نام تحویل گیرنده'}
placeholder=""
textAlign="right"
name="firstName"
@ -418,11 +416,11 @@ const Address = ({
: onChange(name, value)
}
autoFocus={false}
regex={(val) => val}
regex={val => val}
/>
<CustomTextInput
label={
profilePage ? "نام خانوادگی" : "نام خانوادگی تحویل گیرنده"
profilePage ? 'نام خانوادگی' : 'نام خانوادگی تحویل گیرنده'
}
placeholder=""
textAlign="right"
@ -439,7 +437,7 @@ const Address = ({
: onChange(name, value)
}
autoFocus={false}
regex={(val) => val}
regex={val => val}
/>
{profilePage ? (
<CustomTextInput
@ -454,10 +452,10 @@ const Address = ({
setProfileFields({...profileFields, nationalId: value})
}
autoFocus={false}
regex={(text) => onInput.numberOnly(text)}
regex={text => onInput.numberOnly(text)}
/>
) : null}
<View style={tw("mt-4")}></View>
<View style={tw('mt-4')}></View>
<Header
title="شماره تماس"
text="( شماره موبایل و شماره تلفن ثابت خود را
@ -466,7 +464,7 @@ const Address = ({
<CustomTextInput
keyboardType="numeric"
label={
profilePage ? "شماره موبایل" : "شماره موبایل تحویل گیرنده"
profilePage ? 'شماره موبایل' : 'شماره موبایل تحویل گیرنده'
}
placeholder=""
textAlign="left"
@ -483,11 +481,11 @@ const Address = ({
: onChange(name, value)
}
autoFocus={false}
regex={(text) => onInput.numberOnly(text)}
regex={text => onInput.numberOnly(text)}
/>
<CustomTextInput
keyboardType="numeric"
label={profilePage ? "شماره تلفن" : "شماره تلفن تحویل گیرنده"}
label={profilePage ? 'شماره تلفن' : 'شماره تلفن تحویل گیرنده'}
placeholder=""
textAlign="left"
name="phone"
@ -501,53 +499,52 @@ const Address = ({
: onChange(name, value)
}
autoFocus={false}
regex={(text) => onInput.numberOnly(text)}
regex={text => onInput.numberOnly(text)}
/>
<View style={tw("mt-4")}></View>
<View style={tw('mt-4')}></View>
<Header
title="آدرس"
text="( لطفا نام استان و شهرستان و آدرس
خود را با دقت تکمیل نمایید )"
/>
<View style={tw("w-full mt-4")}>
<View style={tw('w-full mt-4')}>
<Select
defaultValue={
profilePage
? provinces?.filter(
(province) =>
province?.id === profileFields?.provinceId
province =>
province?.id === profileFields?.provinceId,
)[0]?.name || province[0]
: provinces?.filter(
(province) =>
province =>
province?.id ===
editAddressPreviousValue?.provinceId
editAddressPreviousValue?.provinceId,
)[0]?.name || province[0]
}
onChange={(name, value) =>
value === "استان" ? {} : onChange(name, value)
value === 'استان' ? {} : onChange(name, value)
}
options={province}
width={"100%"}
width={'100%'}
name="provinceId"
/>
</View>
<View style={tw("w-full mt-4")}>
<View style={tw('w-full mt-4')}>
<Select
defaultValue={
profilePage
? cities?.filter(
(city) => city?.id === profileFields?.cityId
city => city?.id === profileFields?.cityId,
)[0]?.name || city[0]
: cities?.filter(
(city) =>
city?.id === editAddressPreviousValue?.cityId
city => city?.id === editAddressPreviousValue?.cityId,
)[0]?.name || city[0]
}
onChange={(name, value) =>
value === "شهرستان" ? {} : onChange(name, value)
value === 'شهرستان' ? {} : onChange(name, value)
}
options={city}
width={"100%"}
width={'100%'}
name="cityId"
/>
</View>
@ -558,38 +555,38 @@ const Address = ({
</View>
<TextInput
style={[
tw("w-full mt-4 py-4 px-2 rounded-sm h-40"),
tw('w-full mt-4 py-4 px-2 rounded-sm h-40'),
{
backgroundColor:
theme === "light" ? Colors.theme1.white : null,
theme === 'light' ? Colors.theme1.white : null,
color:
theme === "light"
theme === 'light'
? Colors.theme1.gray20
: Colors.theme1.white,
fontSize: fontSize.tiny,
textAlign: "right",
fontFamily: "Light",
textAlign: 'right',
fontFamily: 'Light',
borderWidth: 1,
borderColor:
theme === "light"
? Colors.theme1.gray2077 + "66"
: Colors.theme1.white + "55",
theme === 'light'
? Colors.theme1.gray2077 + '66'
: Colors.theme1.white + '55',
},
]}
value={mapAddress}
multiline={true}
textAlignVertical="top"
placeholder="آدرس مورد نظر ..."
onChangeText={(text) => setMapAddress(text)}
onChangeText={text => setMapAddress(text)}
placeholderTextColor={
theme === "light"
theme === 'light'
? Colors.theme1.gray2077
: Colors.theme1.white + "aa"
: Colors.theme1.white + 'aa'
}
/>
</>
) : null}
<View style={tw("mb-4")}>
<View style={tw('mb-4')}>
<CustomTextInput
keyboardType="numeric"
label="کد پستی"
@ -611,20 +608,20 @@ const Address = ({
: onChange(name, value)
}
autoFocus={false}
regex={(text) => onInput.numberOnly(text)}
regex={text => onInput.numberOnly(text)}
/>
</View>
<CustomPressable
title={
profilePage
? "ذخیره اطلاعات و بازگشت به صفحه قبل"
: "ثبت آدرس"
? 'ذخیره اطلاعات و بازگشت به صفحه قبل'
: 'ثبت آدرس'
}
backgroundColor={Colors.theme1.greenCF}
color={"white"}
border={{ color: "#196EC0", width: 0 }}
width={"100%"}
color={'white'}
border={{color: '#196EC0', width: 0}}
width={'100%'}
onPress={() => (profilePage ? submitProfile() : submit())}
/>
</View>
@ -640,14 +637,14 @@ const styles = StyleSheet.create({
paddingBottom: 0,
},
container: {
flexDirection: "column",
flexDirection: 'column',
paddingVertical: 5,
paddingHorizontal: 16,
flex: 1,
},
});
const mapStateToProps = (state) => ({
const mapStateToProps = state => ({
provinces: state.publicApi.provinces,
province: state.publicApi.province,
cities: state.publicApi.cities,

@ -9,7 +9,7 @@ import {
import React from "react";
import { connect } from "react-redux";
import { asyncAwesomeAlert } from "../../../utils/AsyncWrappers";
import { Ionicons, Entypo } from "@expo/vector-icons";
// import { Ionicons, Entypo } from "@expo/vector-icons";
import { useNavigation } from "@react-navigation/native";
import { userFactor, userAddress } from "../../../redux/actions";
@ -72,15 +72,10 @@ const Address = ({
{selectedItem === address?.id && loading ? (
<ActivityIndicator size="small" color={Colors.theme1.greenC8} />
) : active ? (
<Entypo name="check" size={20} color={Colors.theme1.greenCF} />
// <Entypo name="check" size={20} color={Colors.theme1.greenCF} />
<></>
) : (
<Entypo
name="circle"
size={20}
color={
theme === "light" ? Colors.theme1.grayE3 : Colors.theme1.white
}
/>
<></>
)}
<View style={tw(`flex flex-1 ${mobile ? "mr-2" : "mr-5"}`)}>
<Text
@ -113,7 +108,7 @@ const Address = ({
})
}
>
<Ionicons
{/* <Ionicons
name="ios-pencil-sharp"
size={16}
color={
@ -123,7 +118,7 @@ const Address = ({
? Colors.theme1.greenCF
: Colors.theme1.white
}
/>
/> */}
</Pressable>
<Pressable
onPress={() =>
@ -136,7 +131,7 @@ const Address = ({
}
style={tw("h-full")}
>
<Ionicons
{/* <Ionicons
name="trash-bin"
size={16}
color={
@ -146,7 +141,7 @@ const Address = ({
? Colors.theme1.greenCF
: Colors.theme1.white
}
/>
/> */}
</Pressable>
</View>
</Pressable>

@ -1,32 +1,32 @@
import React from 'react';
import {
View,
Text,
Pressable,
TouchableOpacity,
SafeAreaView,
ScrollView,
StyleSheet,
Platform,
Dimensions,
StatusBar,
} from "react-native";
import React from "react";
import { connect } from "react-redux";
import { asyncAwesomeAlert } from "../../../../utils/AsyncWrappers";
import { useNavigation } from "@react-navigation/native";
import { userAddress, userFactor } from "../../../../redux/actions";
} from 'react-native';
import {useSafeAreaInsets, SafeAreaView} from 'react-native-safe-area-context';
import {connect} from 'react-redux';
import {asyncAwesomeAlert} from '../../../../utils/AsyncWrappers';
import {useNavigation} from '@react-navigation/native';
import {userAddress, userFactor} from '../../../../redux/actions';
//components
import Navbar from "../../../../components/Navbar";
import Empty from "../../../../components/Empty";
import Navbar from '../../../../components/Navbar';
import Empty from '../../../../components/Empty';
//style
import tw from "tailwind-rn";
import Colors from "../../../../constants/Colors";
import fontSize from "../../../../constants/fontSize";
import tw from 'tailwind-rn';
import Colors from '../../../../constants/Colors';
import fontSize from '../../../../constants/fontSize';
const ios = Platform.OS === "ios";
const { height, width } = Dimensions.get("window");
const ios = Platform.OS === 'ios';
const {height, width} = Dimensions.get('window');
const ProfileAddress = ({
addresses,
@ -40,6 +40,7 @@ const ProfileAddress = ({
theme,
deleteItem,
}) => {
const insets = useSafeAreaInsets();
const navigation = useNavigation();
const [height, setHeight] = React.useState(height);
const Location = ({address, active}) => {
@ -49,74 +50,69 @@ const ProfileAddress = ({
{
backgroundColor:
userAddressId === address?.id
? theme === "light"
? Colors.theme1.greenCF + "0a"
? theme === 'light'
? Colors.theme1.greenCF + '0a'
: Colors.theme1.dark
: theme === "light"
? Colors.theme1.grayE3 + "44"
: theme === 'light'
? Colors.theme1.grayE3 + '44'
: Colors.theme1.dark,
borderWidth: 2,
borderColor:
userAddressId === address?.id
? Colors.theme1.greenCF + "aa"
? Colors.theme1.greenCF + 'aa'
: Colors.theme1.grayE3,
},
tw(
`flex flex-row-reverse items-center w-full px-3 py-2 rounded-md mb-4`
`flex flex-row-reverse items-center w-full px-3 py-2 rounded-md mb-4`,
),
]}
onPress={() =>
userAddressId === address?.id
? {}
: update({userAddressId: address?.id, userId})
}
>
<View style={tw("flex flex-1 mr-2")}>
}>
<View style={tw('flex flex-1 mr-2')}>
{active ? (
<View
style={tw("w-full flex flex-row-reverse justify-between mb-3")}
>
<View style={tw("flex flex-row-reverse items-center")}>
style={tw('w-full flex flex-row-reverse justify-between mb-3')}>
<View style={tw('flex flex-row-reverse items-center')}>
<Text
style={{
fontSize: fontSize.base,
fontFamily: "Medium",
fontFamily: 'Medium',
color:
theme === "light"
theme === 'light'
? Colors.theme1.gray20
: active
? Colors.theme1.greenCF
: Colors.theme1.white,
}}
>
}}>
آدرس انتخابی شما
</Text>
<Text
style={{
fontSize: fontSize.xs,
fontFamily: "Regular",
fontFamily: 'Regular',
color:
theme === "light"
theme === 'light'
? Colors.theme1.gray20
: active
? Colors.theme1.greenCF
: Colors.theme1.white,
marginRight: 10,
}}
>
}}>
فعال
</Text>
</View>
<View style={tw("flex flex-row-reverse")}>
<View style={tw('flex flex-row-reverse')}>
<Pressable
style={tw("ml-4")}
style={tw('ml-4')}
onPress={() =>
navigation.navigate("CreateAddress", {
type: "editAddress",
navigation.navigate('CreateAddress', {
type: 'editAddress',
form: address,
})
}
>
}>
<></>
{/* <Ionicons
name="ios-pencil-sharp"
@ -132,14 +128,13 @@ const ProfileAddress = ({
</Pressable>
<Pressable
onPress={() =>
asyncAwesomeAlert("", "آدرس مورد نظر حذف شود؟", {
asyncAwesomeAlert('', 'آدرس مورد نظر حذف شود؟', {
showCancelButton: true,
confirmText: "بله",
cancelText: "لغو",
confirmText: 'بله',
cancelText: 'لغو',
onConfirm: () => deleteItem({id: address?.id}),
})
}
>
}>
<></>
{/* <Ionicons
name="trash-bin"
@ -156,95 +151,90 @@ const ProfileAddress = ({
</View>
</View>
) : null}
<View style={tw(`flex w-full ${active ? "" : "flex-row-reverse"}`)}>
<View style={tw("flex flex-1 mb-4")}>
<View style={tw(`flex w-full ${active ? '' : 'flex-row-reverse'}`)}>
<View style={tw('flex flex-1 mb-4')}>
<Text
style={[
{
fontFamily: "Regular",
fontFamily: 'Regular',
fontSize: mobile ? fontSize.sm : fontSize.tiny,
lineHeight: 22,
textAlign: ios ? "right" : "auto",
textAlign: ios ? 'right' : 'auto',
color:
theme === "light"
theme === 'light'
? Colors.theme1.gray20
: active
? Colors.theme1.greenCF
: Colors.theme1.white,
},
]}
>
{"آدرس:" + " " + address?.address}
]}>
{'آدرس:' + ' ' + address?.address}
</Text>
<Text
style={[
{
marginTop: mobile ? 4 : 8,
fontFamily: "Regular",
fontFamily: 'Regular',
fontSize: mobile ? fontSize.sm : fontSize.tiny,
lineHeight: 22,
textAlign: ios ? "right" : "auto",
textAlign: ios ? 'right' : 'auto',
color:
theme === "light"
theme === 'light'
? Colors.theme1.gray20
: active
? Colors.theme1.greenCF
: Colors.theme1.white,
},
]}
>
{"نام:" + " " + address?.firstName + " " + address?.lastName}
]}>
{'نام:' + ' ' + address?.firstName + ' ' + address?.lastName}
</Text>
<Text
style={[
{
marginTop: mobile ? 4 : 8,
fontFamily: "Regular",
fontFamily: 'Regular',
fontSize: mobile ? fontSize.sm : fontSize.tiny,
lineHeight: 22,
textAlign: ios ? "right" : "auto",
textAlign: ios ? 'right' : 'auto',
color:
theme === "light"
theme === 'light'
? Colors.theme1.gray20
: active
? Colors.theme1.greenCF
: Colors.theme1.white,
},
]}
>
{"کد پستی:" + " " + address?.postalCode}
]}>
{'کد پستی:' + ' ' + address?.postalCode}
</Text>
<Text
style={[
{
marginTop: mobile ? 4 : 8,
fontFamily: "Regular",
fontFamily: 'Regular',
fontSize: mobile ? fontSize.sm : fontSize.tiny,
lineHeight: 22,
textAlign: ios ? "right" : "auto",
textAlign: ios ? 'right' : 'auto',
color:
theme === "light"
theme === 'light'
? Colors.theme1.gray20
: active
? Colors.theme1.greenCF
: Colors.theme1.white,
},
]}
>
{"شماره تماس:" + " " + address?.cellphone}
]}>
{'شماره تماس:' + ' ' + address?.cellphone}
</Text>
</View>
{!active ? (
<View style={tw("flex flex-row-reverse")}>
<View style={tw('flex flex-row-reverse')}>
<Pressable
style={tw("ml-4")}
style={tw('ml-4')}
onPress={() =>
navigation.navigate("CreateAddress", {
type: "editAddress",
navigation.navigate('CreateAddress', {
type: 'editAddress',
form: address,
})
}
>
}>
<></>
{/* <Ionicons
name="ios-pencil-sharp"
@ -260,25 +250,24 @@ const ProfileAddress = ({
</Pressable>
<Pressable
onPress={() =>
asyncAwesomeAlert("", "آدرس مورد نظر حذف شود؟", {
asyncAwesomeAlert('', 'آدرس مورد نظر حذف شود؟', {
showCancelButton: true,
confirmText: "بله",
cancelText: "لغو",
confirmText: 'بله',
cancelText: 'لغو',
onConfirm: () => deleteItem({id: address?.id}),
})
}
>
<Ionicons
}>
{/* <Ionicons
name="trash-bin"
size={20}
color={
theme === "light"
? "#52796F"
theme === 'light'
? '#52796F'
: active
? Colors.theme1.greenCF
: Colors.theme1.white
}
/>
/> */}
</Pressable>
</View>
) : null}
@ -309,18 +298,16 @@ const ProfileAddress = ({
return (
<SafeAreaView
style={{
paddingTop: Platform.OS === "android" ? StatusBar.currentHeight : 0,
position: "relative",
flex: 1,
paddingBottom : 20
}}
>
paddingBottom: insets.bottom,
paddingTop: insets.top,
}}>
<Navbar
headerOptions={{
logo: false,
menu: false,
hamburgerMenu: false,
title: "آدرسها",
title: 'آدرسها',
bookmark: false,
qr: false,
back: true,
@ -330,10 +317,9 @@ const ProfileAddress = ({
<ScrollView
contentContainerStyle={styles.contentContainerStyle}
style={[styles.container]}
onLayout={() => setHeight(Dimensions.get("window").height)}
>
<View style={tw("w-full mt-2 px-4")}>
<View style={tw("p-0 m-0 flex ")}>
onLayout={() => setHeight(Dimensions.get('window').height)}>
<View style={tw('w-full mt-2 px-4')}>
<View style={tw('p-0 m-0 flex ')}>
{addresses?.map((address, index) => (
<Location
address={address}
@ -347,27 +333,25 @@ const ProfileAddress = ({
) : (
<Empty text="هیچ آدرسی ثبت نشده" />
)}
<View style={tw("w-full px-4")}>
<View style={tw('w-full px-4 pb-4')}>
<TouchableOpacity
style={[
{
backgroundColor: Colors.theme1.greenCF + "05",
backgroundColor: Colors.theme1.greenCF + '05',
borderColor: Colors.theme1.greenCF,
borderWidth: 1.5,
},
tw(
`flex flex-row-reverse self-end justify-center py-2 rounded-md items-center mt-4 w-full`
`flex flex-row-reverse self-end justify-center py-2 rounded-md items-center mt-4 w-full`,
),
]}
onPress={() => navigation.push("CreateAddress")}
>
onPress={() => navigation.push('CreateAddress')}>
<Text
style={{
fontFamily: "Medium",
fontFamily: 'Medium',
fontSize: fontSize.tiny,
color: Colors.theme1.greenCF,
}}
>
}}>
یک آدرس جدید اضافه کنید
</Text>
<Text
@ -376,9 +360,8 @@ const ProfileAddress = ({
marginRight: 5,
fontSize: fontSize.xl3,
color: Colors.theme1.greenCF,
fontFamily: "Medium",
}}
>
fontFamily: 'Medium',
}}>
+
</Text>
</TouchableOpacity>
@ -387,7 +370,7 @@ const ProfileAddress = ({
);
};
const mapStateToProps = (state) => ({
const mapStateToProps = state => ({
userId: state.user.status?.id,
userAddressId: state.userFactor.info?.userAddressId,
loading: state.userFactor.loading,
@ -408,10 +391,10 @@ export default connect(mapStateToProps, mapDispatchToProps)(ProfileAddress);
const styles = StyleSheet.create({
contentContainerStyle: {
paddingBottom: 100,
position: "relative",
position: 'relative',
},
container: {
flexDirection: "column",
flexDirection: 'column',
paddingVertical: 0,
paddingHorizontal: 0,
},

@ -17,6 +17,13 @@
dependencies:
"@babel/highlight" "^7.16.7"
"@babel/code-frame@~7.10.4":
version "7.10.4"
resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.10.4.tgz#168da1a36e90da68ae8d49c0f1b48c7c6249213a"
integrity sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==
dependencies:
"@babel/highlight" "^7.10.4"
"@babel/compat-data@^7.13.11", "@babel/compat-data@^7.17.10":
version "7.17.10"
resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.17.10.tgz#711dc726a492dfc8be8220028b1b92482362baab"
@ -249,7 +256,7 @@
"@babel/traverse" "^7.18.2"
"@babel/types" "^7.18.2"
"@babel/highlight@^7.16.7":
"@babel/highlight@^7.10.4", "@babel/highlight@^7.16.7":
version "7.17.12"
resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.17.12.tgz#257de56ee5afbd20451ac0a75686b6b404257351"
integrity sha512-7yykMVF3hfZY2jsHZEEgLc+3x4o1O+fYyULu11GynEUQNwB6lua+IIQn1FiJxNucd5UlyJryrwsOh8PL9Sn8Qg==
@ -781,6 +788,55 @@
minimatch "^3.1.2"
strip-json-comments "^3.1.1"
"@expo/config-plugins@^4.0.3":
version "4.1.5"
resolved "https://registry.yarnpkg.com/@expo/config-plugins/-/config-plugins-4.1.5.tgz#9d357d2cda9c095e511b51583ede8a3b76174068"
integrity sha512-RVvU40RtZt12HavuDAe+LDIq9lHj7sheOfMEHdmpJ/uTA8pgvkbc56XF6JHQD+yRr6+uhhb+JnAasGq49dsQbw==
dependencies:
"@expo/config-types" "^45.0.0"
"@expo/json-file" "8.2.36"
"@expo/plist" "0.0.18"
"@expo/sdk-runtime-versions" "^1.0.0"
"@react-native/normalize-color" "^2.0.0"
chalk "^4.1.2"
debug "^4.3.1"
find-up "~5.0.0"
getenv "^1.0.0"
glob "7.1.6"
resolve-from "^5.0.0"
semver "^7.3.5"
slash "^3.0.0"
xcode "^3.0.1"
xml2js "0.4.23"
"@expo/config-types@^45.0.0":
version "45.0.0"
resolved "https://registry.yarnpkg.com/@expo/config-types/-/config-types-45.0.0.tgz#963c2fdce8fbcbd003758b92ed8a25375f437ef6"
integrity sha512-/QGhhLWyaGautgEyU50UJr5YqKJix5t77ePTwreOVAhmZH+ff3nrrtYTTnccx+qF08ZNQmfAyYMCD3rQfzpiJA==
"@expo/json-file@8.2.36":
version "8.2.36"
resolved "https://registry.yarnpkg.com/@expo/json-file/-/json-file-8.2.36.tgz#62a505cb7f30a34d097386476794680a3f7385ff"
integrity sha512-tOZfTiIFA5KmMpdW9KF7bc6CFiGjb0xnbieJhTGlHrLL+ps2G0OkqmuZ3pFEXBOMnJYUVpnSy++52LFxvpa5ZQ==
dependencies:
"@babel/code-frame" "~7.10.4"
json5 "^1.0.1"
write-file-atomic "^2.3.0"
"@expo/plist@0.0.18":
version "0.0.18"
resolved "https://registry.yarnpkg.com/@expo/plist/-/plist-0.0.18.tgz#9abcde78df703a88f6d9fa1a557ee2f045d178b0"
integrity sha512-+48gRqUiz65R21CZ/IXa7RNBXgAI/uPSdvJqoN9x1hfL44DNbUoWHgHiEXTx7XelcATpDwNTz6sHLfy0iNqf+w==
dependencies:
"@xmldom/xmldom" "~0.7.0"
base64-js "^1.2.3"
xmlbuilder "^14.0.0"
"@expo/sdk-runtime-versions@^1.0.0":
version "1.0.0"
resolved "https://registry.yarnpkg.com/@expo/sdk-runtime-versions/-/sdk-runtime-versions-1.0.0.tgz#d7ebd21b19f1c6b0395e50d78da4416941c57f7c"
integrity sha512-Doz2bfiPndXYFPMRwPyGa1k5QaKDVpY806UJj570epIiMzWaYyCtobasyfC++qfIXVb5Ocy7r3tP9d62hAQ7IQ==
"@hapi/hoek@^9.0.0":
version "9.3.0"
resolved "https://registry.yarnpkg.com/@hapi/hoek/-/hoek-9.3.0.tgz#8368869dcb735be2e7f5cb7647de78e167a251fb"
@ -1085,17 +1141,17 @@
"@jridgewell/resolve-uri" "^3.0.3"
"@jridgewell/sourcemap-codec" "^1.4.10"
"@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==
"@mapbox/geo-viewport@>= 0.4.0":
version "0.5.0"
resolved "https://registry.yarnpkg.com/@mapbox/geo-viewport/-/geo-viewport-0.5.0.tgz#5e3b4ef19ed113169d168eec9c60840e430c52a6"
integrity sha512-h0b10JU+lSxw8/TLXGdzcVTPxMN9Ikv0os8sCo0OAHXUiSDkQs5fx4WWLJeQTnC++qaGFl6/Ssr+H5N6NIvE5g==
dependencies:
"@mapbox/sphericalmercator" "~1.1.0"
"@mapbox/sphericalmercator" "^1.2.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==
"@mapbox/sphericalmercator@^1.2.0":
version "1.2.0"
resolved "https://registry.yarnpkg.com/@mapbox/sphericalmercator/-/sphericalmercator-1.2.0.tgz#55d4896be906bfff859e22a1d72267329a0fff90"
integrity sha512-ZTOuuwGuMOJN+HEmG/68bSEw15HHaMWmQ5gdTsWdWsjDe56K1kGvLOK6bOSC8gWgIvEO0w6un/2Gvv1q5hJSkQ==
"@nodelib/fs.scandir@2.1.5":
version "2.1.5"
@ -1317,12 +1373,27 @@
resolved "https://registry.yarnpkg.com/@react-native-community/eslint-plugin/-/eslint-plugin-1.2.0.tgz#7d6d789ae8edf73dc9bed1246cd48277edea8066"
integrity sha512-o6aam+0Ug1xGK3ABYmBm0B1YuEKfM/5kaoZO0eHbZwSpw9UzDX4G5y4Nx/K20FHqUmJHkZmLvOUFYwN4N+HqKA==
"@react-native-mapbox-gl/maps@^8.6.0-beta.0":
version "8.6.0-beta.0"
resolved "https://registry.yarnpkg.com/@react-native-mapbox-gl/maps/-/maps-8.6.0-beta.0.tgz#e202c94c1bfae2516d5e5728ad37e398d534617e"
integrity sha512-UpHpP7Bc0oUMhqMVda6tTCdv2UYr4JhyQS8D+oqItVYr9W52KBpKVDGXDb6/nRdkypSMUqZJuwu7XfaxeJgchg==
dependencies:
"@expo/config-plugins" "^4.0.3"
"@mapbox/geo-viewport" ">= 0.4.0"
"@turf/along" "6.5.0"
"@turf/distance" "6.5.0"
"@turf/helpers" "6.5.0"
"@turf/length" "6.5.0"
"@turf/nearest-point-on-line" "6.5.0"
"@types/geojson" "^7946.0.7"
debounce "^1.2.0"
"@react-native/assets@1.0.0":
version "1.0.0"
resolved "https://registry.yarnpkg.com/@react-native/assets/-/assets-1.0.0.tgz#c6f9bf63d274bafc8e970628de24986b30a55c8e"
integrity sha512-KrwSpS1tKI70wuKl68DwJZYEvXktDHdZMG0k2AXD/rJVSlB23/X2CB2cutVR0HwNMJIal9HOUOBB2rVfa6UGtQ==
"@react-native/normalize-color@*", "@react-native/normalize-color@2.0.0":
"@react-native/normalize-color@*", "@react-native/normalize-color@2.0.0", "@react-native/normalize-color@^2.0.0":
version "2.0.0"
resolved "https://registry.yarnpkg.com/@react-native/normalize-color/-/normalize-color-2.0.0.tgz#da955909432474a9a0fe1cbffc66576a0447f567"
integrity sha512-Wip/xsc5lw8vsBlmY2MO/gFLp3MvuZ2baBZjDeTjjndMgM0h5sxz7AZR62RDPGgstp8Np7JzjvVqVT7tpFZqsw==
@ -1418,7 +1489,7 @@
dependencies:
"@sinonjs/commons" "^1.7.0"
"@turf/along@^6.0.1":
"@turf/along@6.5.0":
version "6.5.0"
resolved "https://registry.yarnpkg.com/@turf/along/-/along-6.5.0.tgz#ab12eec58a14de60fe243a62d31a474f415c8fef"
integrity sha512-LLyWQ0AARqJCmMcIEAXF4GEu8usmd4Kbz3qk1Oy5HoRNpZX47+i5exQtmIWKdqJ1MMhW26fCTXgpsEs5zgJ5gw==
@ -1429,6 +1500,14 @@
"@turf/helpers" "^6.5.0"
"@turf/invariant" "^6.5.0"
"@turf/bbox@*":
version "6.5.0"
resolved "https://registry.yarnpkg.com/@turf/bbox/-/bbox-6.5.0.tgz#bec30a744019eae420dac9ea46fb75caa44d8dc5"
integrity sha512-RBbLaao5hXTYyyg577iuMtDB8ehxMlUqHEJiMs8jT1GHkFhr6sYre3lmLsPeYEi/ZKj5TP5tt7fkzNdJ4GIVyw==
dependencies:
"@turf/helpers" "^6.5.0"
"@turf/meta" "^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"
@ -1445,7 +1524,7 @@
"@turf/helpers" "^6.5.0"
"@turf/invariant" "^6.5.0"
"@turf/distance@^6.0.1", "@turf/distance@^6.5.0":
"@turf/distance@6.5.0", "@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==
@ -1453,12 +1532,7 @@
"@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 sha512-XTYO+cGhTSNEnbkIwKQvbaNbsSCPF+01TWkqZocLb8rqo7uLql9f1Hr4sYoZAujW9vcD1LrXxzIRN0rzyeExwQ==
"@turf/helpers@^6.5.0":
"@turf/helpers@6.5.0", "@turf/helpers@6.x", "@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==
@ -1470,6 +1544,55 @@
dependencies:
"@turf/helpers" "^6.5.0"
"@turf/length@6.5.0":
version "6.5.0"
resolved "https://registry.yarnpkg.com/@turf/length/-/length-6.5.0.tgz#ff4e9072d5f997e1c32a1311d214d184463f83fa"
integrity sha512-5pL5/pnw52fck3oRsHDcSGrj9HibvtlrZ0QNy2OcW8qBFDNgZ4jtl6U7eATVoyWPKBHszW3dWETW+iLV7UARig==
dependencies:
"@turf/distance" "^6.5.0"
"@turf/helpers" "^6.5.0"
"@turf/meta" "^6.5.0"
"@turf/line-intersect@^6.5.0":
version "6.5.0"
resolved "https://registry.yarnpkg.com/@turf/line-intersect/-/line-intersect-6.5.0.tgz#dea48348b30c093715d2195d2dd7524aee4cf020"
integrity sha512-CS6R1tZvVQD390G9Ea4pmpM6mJGPWoL82jD46y0q1KSor9s6HupMIo1kY4Ny+AEYQl9jd21V3Scz20eldpbTVA==
dependencies:
"@turf/helpers" "^6.5.0"
"@turf/invariant" "^6.5.0"
"@turf/line-segment" "^6.5.0"
"@turf/meta" "^6.5.0"
geojson-rbush "3.x"
"@turf/line-segment@^6.5.0":
version "6.5.0"
resolved "https://registry.yarnpkg.com/@turf/line-segment/-/line-segment-6.5.0.tgz#ee73f3ffcb7c956203b64ed966d96af380a4dd65"
integrity sha512-jI625Ho4jSuJESNq66Mmi290ZJ5pPZiQZruPVpmHkUw257Pew0alMmb6YrqYNnLUuiVVONxAAKXUVeeUGtycfw==
dependencies:
"@turf/helpers" "^6.5.0"
"@turf/invariant" "^6.5.0"
"@turf/meta" "^6.5.0"
"@turf/meta@6.x", "@turf/meta@^6.5.0":
version "6.5.0"
resolved "https://registry.yarnpkg.com/@turf/meta/-/meta-6.5.0.tgz#b725c3653c9f432133eaa04d3421f7e51e0418ca"
integrity sha512-RrArvtsV0vdsCBegoBtOalgdSOfkBrTJ07VkpiCnq/491W67hnMWmDu7e6Ztw0C3WldRYTXkg3SumfdzZxLBHA==
dependencies:
"@turf/helpers" "^6.5.0"
"@turf/nearest-point-on-line@6.5.0":
version "6.5.0"
resolved "https://registry.yarnpkg.com/@turf/nearest-point-on-line/-/nearest-point-on-line-6.5.0.tgz#8e1cd2cdc0b5acaf4c8d8b3b33bb008d3cb99e7b"
integrity sha512-WthrvddddvmymnC+Vf7BrkHGbDOUu6Z3/6bFYUGv1kxw8tiZ6n83/VG6kHz4poHOfS0RaNflzXSkmCi64fLBlg==
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/line-intersect" "^6.5.0"
"@turf/meta" "^6.5.0"
"@types/babel__core@^7.1.14":
version "7.1.19"
resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.19.tgz#7b497495b7d1b4812bdb9d02804d0576f43ee460"
@ -1503,6 +1626,11 @@
dependencies:
"@babel/types" "^7.3.0"
"@types/geojson@7946.0.8", "@types/geojson@^7946.0.7":
version "7946.0.8"
resolved "https://registry.yarnpkg.com/@types/geojson/-/geojson-7946.0.8.tgz#30744afdb385e2945e22f3b033f897f76b1f12ca"
integrity sha512-1rkryxURpr6aWP7R786/UQOkJ3PcpQiWkAXBmdWc7ryFWqN6a4xfK7BtjXvFBKO9LjQ+MWQSWxYeZX1OApnArA==
"@types/graceful-fs@^4.1.2", "@types/graceful-fs@^4.1.3":
version "4.1.5"
resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.5.tgz#21ffba0d98da4350db64891f92a9e5db3cdb4e15"
@ -1548,9 +1676,9 @@
integrity sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==
"@types/node@*":
version "17.0.40"
resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.40.tgz#76ee88ae03650de8064a6cf75b8d95f9f4a16090"
integrity sha512-UXdBxNGqTMtm7hCwh9HtncFVLrXoqA3oJW30j6XWp5BH/wu3mVeaxo7cq5benFdBw34HB3XDT2TRPI7rXZ+mDg==
version "17.0.41"
resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.41.tgz#1607b2fd3da014ae5d4d1b31bc792a39348dfb9b"
integrity sha512-xA6drNNeqb5YyV5fO3OAEsnXLfO7uF0whiOfPTz5AeDo8KeZFmODKnvwPymMNO8qE/an8pVY/O50tig2SQCrGw==
"@types/normalize-package-data@^2.4.0":
version "2.4.1"
@ -1704,6 +1832,11 @@
"@typescript-eslint/types" "5.27.1"
eslint-visitor-keys "^3.3.0"
"@xmldom/xmldom@~0.7.0":
version "0.7.5"
resolved "https://registry.yarnpkg.com/@xmldom/xmldom/-/xmldom-0.7.5.tgz#09fa51e356d07d0be200642b0e4f91d8e6dd408d"
integrity sha512-V3BIhmY36fXZ1OtVcI9W+FxQqxVLsPKcNjWigIaa81dLC9IolJl5Mt4Cvhmr0flUnjSpTdrbMTSbXqYqV5dT6A==
abort-controller@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/abort-controller/-/abort-controller-3.0.0.tgz#eaf54d53b62bae4138e809ca225c8439a6efb392"
@ -1929,13 +2062,6 @@ atob@^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.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.27.2:
version "0.27.2"
resolved "https://registry.yarnpkg.com/axios/-/axios-0.27.2.tgz#207658cc8621606e586c85db4b41a750e756d972"
@ -2095,7 +2221,7 @@ balanced-match@^1.0.0:
resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee"
integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==
base64-js@^1.1.2, base64-js@^1.3.1, base64-js@^1.5.1:
base64-js@^1.1.2, base64-js@^1.2.3, base64-js@^1.3.1, base64-js@^1.5.1:
version "1.5.1"
resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a"
integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==
@ -2630,6 +2756,11 @@ dayjs@^1.8.15:
resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.11.3.tgz#4754eb694a624057b9ad2224b67b15d552589258"
integrity sha512-xxwlswWOlGhzgQ4TKzASQkUhqERI3egRNqgV4ScR8wlANA/A9tZ7miXa44vTTKEq5l7vWoL5G57bG3zA+Kow0A==
debounce@^1.2.0:
version "1.2.1"
resolved "https://registry.yarnpkg.com/debounce/-/debounce-1.2.1.tgz#38881d8f4166a5c5848020c11827b834bcb3e0a5"
integrity sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug==
debug@2.6.9, debug@^2.2.0, debug@^2.3.3:
version "2.6.9"
resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"
@ -2637,14 +2768,7 @@ debug@2.6.9, debug@^2.2.0, debug@^2.3.3:
dependencies:
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.2, debug@^4.3.4:
debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4:
version "4.3.4"
resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865"
integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==
@ -2855,9 +2979,9 @@ electron-to-chromium@^1.4.147:
integrity sha512-czclPqxLMPqPMkahKcske4TaS5lcznsc26ByBlEFDU8grTBVK9C5W6K9I6oEEhm4Ai4jTihGnys90xY1yjXcRg==
eme-encryption-scheme-polyfill@^2.0.1:
version "2.0.4"
resolved "https://registry.yarnpkg.com/eme-encryption-scheme-polyfill/-/eme-encryption-scheme-polyfill-2.0.4.tgz#7d818302af3f3b19d5974255dcc92dc087413845"
integrity sha512-MHYJX1v145Pjj2YJTrVVuJOYyXrxGVy8LWf6kV5M4jrV/GyoeuJKyTuD+GaD+VAiE8Ip+MptiH4dXk6ZVmMNow==
version "2.0.5"
resolved "https://registry.yarnpkg.com/eme-encryption-scheme-polyfill/-/eme-encryption-scheme-polyfill-2.0.5.tgz#590a437483539edd95a209bbfc14f5458c0052a6"
integrity sha512-F1C7SGjzE0ypKPqr7+30AcGl4YyEllrJidVDDWfwIwCadEfIHuayTn/nsy7EFNoZOJp4gUAohAGwLQEXE+exuw==
emittery@^0.10.2:
version "0.10.2"
@ -3395,6 +3519,14 @@ find-up@^4.0.0, find-up@^4.1.0:
locate-path "^5.0.0"
path-exists "^4.0.0"
find-up@~5.0.0:
version "5.0.0"
resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc"
integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==
dependencies:
locate-path "^6.0.0"
path-exists "^4.0.0"
flat-cache@^3.0.4:
version "3.0.4"
resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11"
@ -3418,13 +3550,6 @@ 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.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.9:
version "1.15.1"
resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.1.tgz#0ca6a452306c9b276e4d3127483e29575e207ad5"
@ -3514,6 +3639,17 @@ gensync@^1.0.0-beta.2:
resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0"
integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==
geojson-rbush@3.x:
version "3.2.0"
resolved "https://registry.yarnpkg.com/geojson-rbush/-/geojson-rbush-3.2.0.tgz#8b543cf0d56f99b78faf1da52bb66acad6dfc290"
integrity sha512-oVltQTXolxvsz1sZnutlSuLDEcQAKYC/uXt9zDzJJ6bu0W+baTI8LZBaTup5afzibEH4N3jlq2p+a152wlBJ7w==
dependencies:
"@turf/bbox" "*"
"@turf/helpers" "6.x"
"@turf/meta" "6.x"
"@types/geojson" "7946.0.8"
rbush "^3.0.1"
get-caller-file@^2.0.1, get-caller-file@^2.0.5:
version "2.0.5"
resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e"
@ -3558,6 +3694,11 @@ get-value@^2.0.3, get-value@^2.0.6:
resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28"
integrity sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA==
getenv@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/getenv/-/getenv-1.0.0.tgz#874f2e7544fbca53c7a4738f37de8605c3fcfc31"
integrity sha512-7yetJWqbS9sbn0vIfliPsFgoXMKn/YMF+Wuiog97x+urnSRRRZ7xB+uVkwGKzRgq9CDFfMQnE9ruL5DHv9c6Xg==
glob-parent@^5.1.2:
version "5.1.2"
resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4"
@ -3572,6 +3713,18 @@ glob-parent@^6.0.1:
dependencies:
is-glob "^4.0.3"
glob@7.1.6:
version "7.1.6"
resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6"
integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==
dependencies:
fs.realpath "^1.0.0"
inflight "^1.0.4"
inherits "2"
minimatch "^3.0.4"
once "^1.3.0"
path-is-absolute "^1.0.0"
glob@^7.1.3, glob@^7.1.4:
version "7.2.3"
resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b"
@ -4687,6 +4840,13 @@ json-stable-stringify-without-jsonify@^1.0.1:
resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651"
integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==
json5@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe"
integrity sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==
dependencies:
minimist "^1.2.0"
json5@^2.2.1:
version "2.2.1"
resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.1.tgz#655d50ed1e6f95ad1a3caababd2b0efda10b395c"
@ -4793,6 +4953,13 @@ locate-path@^5.0.0:
dependencies:
p-locate "^4.1.0"
locate-path@^6.0.0:
version "6.0.0"
resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286"
integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==
dependencies:
p-locate "^5.0.0"
lodash.debounce@^4.0.8:
version "4.0.8"
resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af"
@ -4895,25 +5062,6 @@ map-visit@^1.0.0:
dependencies:
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:
version "1.2.6"
resolved "https://registry.yarnpkg.com/match-all/-/match-all-1.2.6.tgz#66d276ad6b49655551e63d3a6ee53e8be0566f8d"
@ -5682,6 +5830,13 @@ p-limit@^2.0.0, p-limit@^2.2.0:
dependencies:
p-try "^2.0.0"
p-limit@^3.0.2:
version "3.1.0"
resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b"
integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==
dependencies:
yocto-queue "^0.1.0"
p-locate@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4"
@ -5696,6 +5851,13 @@ p-locate@^4.1.0:
dependencies:
p-limit "^2.2.0"
p-locate@^5.0.0:
version "5.0.0"
resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834"
integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==
dependencies:
p-limit "^3.0.2"
p-try@^2.0.0:
version "2.2.0"
resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6"
@ -5926,11 +6088,23 @@ quick-lru@^4.0.1:
resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-4.0.1.tgz#5b8878f113a58217848c6482026c73e1ba57727f"
integrity sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==
quickselect@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/quickselect/-/quickselect-2.0.0.tgz#f19680a486a5eefb581303e023e98faaf25dd018"
integrity sha512-RKJ22hX8mHe3Y6wH/N3wCM6BWtjaxIyyUIkpHOvfFnxdI4yD4tBXEBKSbriGujF6jnSVkJrffuo6vxACiSSxIw==
range-parser@~1.2.1:
version "1.2.1"
resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031"
integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==
rbush@^3.0.1:
version "3.0.1"
resolved "https://registry.yarnpkg.com/rbush/-/rbush-3.0.1.tgz#5fafa8a79b3b9afdfe5008403a720cc1de882ecf"
integrity sha512-XRaVO0YecOpEuIvbhbpTrZgoiI6xBlz6hnlr6EHhd+0x9ase6EmeN+hdwwUaJvLcsFFQ8iWVF1GAK1yB0BWi0w==
dependencies:
quickselect "^2.0.0"
react-devtools-core@^4.23.0:
version "4.24.7"
resolved "https://registry.yarnpkg.com/react-devtools-core/-/react-devtools-core-4.24.7.tgz#43df22e6d244ed8286fd3ff16a80813998fe82a0"
@ -6335,7 +6509,7 @@ resolve-cwd@^3.0.0:
resolve-from@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748"
integrity sha1-six699nWiBvItuZTM17rywoYh0g=
integrity sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==
resolve-from@^4.0.0:
version "4.0.0"
@ -6350,7 +6524,7 @@ resolve-from@^5.0.0:
resolve-url@^0.2.1:
version "0.2.1"
resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a"
integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=
integrity sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg==
resolve.exports@^1.1.0:
version "1.1.0"
@ -6377,7 +6551,7 @@ resolve@^2.0.0-next.3:
restore-cursor@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf"
integrity sha1-n37ih/gv0ybU/RYpI9YhKe7g368=
integrity sha512-6IzJLuGi4+R14vwagDHX+JrXmPVtPpn4mffDJ1UdR7/Edm87fl6yi8mMBIVvFtJaNTUvjughmW4hwLhRG7gC1Q==
dependencies:
onetime "^2.0.0"
signal-exit "^3.0.2"
@ -6417,7 +6591,7 @@ rimraf@^3.0.0, rimraf@^3.0.2:
rimraf@~2.2.6:
version "2.2.8"
resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.2.8.tgz#e439be2aaee327321952730f99a8929e4fc50582"
integrity sha1-5Dm+Kq7jJzIZUnMPmaiSnk/FBYI=
integrity sha512-R5KMKHnPAQaZMqLOsyuyUmcIjSeDm+73eoqQpaXA7AZ22BL+6C+1mcUscgOsNd8WVlJuvlgAPsegcx7pjlV0Dg==
rimraf@~2.6.2:
version "2.6.3"
@ -6446,11 +6620,11 @@ safe-buffer@~5.2.0:
safe-regex@^1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e"
integrity sha1-QKNmnzsHfR6UPURinhV91IAjvy4=
integrity sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg==
dependencies:
ret "~0.1.10"
sax@^1.2.1:
sax@>=0.6.0, sax@^1.2.1:
version "1.2.4"
resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9"
integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==
@ -7161,11 +7335,6 @@ unbox-primitive@^1.0.2:
has-symbols "^1.0.3"
which-boxed-primitive "^1.0.2"
underscore@^1.8.3:
version "1.13.4"
resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.13.4.tgz#7886b46bbdf07f768e0052f1828e1dcab40c0dee"
integrity sha512-BQFnUDuAQ4Yf/cYY5LNrK9NCJFKriaRbD9uR1fTeXnBeoa97W0i41qkZfGO9pSo8I5KzjAcSY2XYtdf0oKd7KQ==
unicode-canonical-property-names-ecmascript@^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"
@ -7417,7 +7586,7 @@ ws@^7, ws@^7.5.1:
resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.8.tgz#ac2729881ab9e7cbaf8787fe3469a48c5c7f636a"
integrity sha512-ri1Id1WinAX5Jqn9HejiGb8crfRio0Qgu8+MtL36rlTA6RLsMdWt1Az/19A2Qij6uSHUMphEFaTKa4WG+UNHNw==
xcode@^3.0.0:
xcode@^3.0.0, xcode@^3.0.1:
version "3.0.1"
resolved "https://registry.yarnpkg.com/xcode/-/xcode-3.0.1.tgz#3efb62aac641ab2c702458f9a0302696146aa53c"
integrity sha512-kCz5k7J7XbJtjABOvkc5lJmkiDh8VhjVCGNiqdKCscmVpdVUpEAyXv1xmCLkQJ5dsHqx3IPO4XW+NTDhU/fatA==
@ -7425,11 +7594,29 @@ xcode@^3.0.0:
simple-plist "^1.1.0"
uuid "^7.0.3"
xml2js@0.4.23:
version "0.4.23"
resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.4.23.tgz#a0c69516752421eb2ac758ee4d4ccf58843eac66"
integrity sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug==
dependencies:
sax ">=0.6.0"
xmlbuilder "~11.0.0"
xmlbuilder@^14.0.0:
version "14.0.0"
resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-14.0.0.tgz#876b5aec4f05ffd5feb97b0a871c855d16fbeb8c"
integrity sha512-ts+B2rSe4fIckR6iquDjsKbQFK2NlUk6iG5nf14mDEyldgoc2nEKZ3jZWMPTxGQwVgToSjt6VGIho1H8/fNFTg==
xmlbuilder@^9.0.7:
version "9.0.7"
resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-9.0.7.tgz#132ee63d2ec5565c557e20f4c22df9aca686b10d"
integrity sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=
xmlbuilder@~11.0.0:
version "11.0.1"
resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-11.0.1.tgz#be9bae1c8a046e76b31127726347d0ad7002beb3"
integrity sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==
xmldoc@^1.1.2:
version "1.1.2"
resolved "https://registry.yarnpkg.com/xmldoc/-/xmldoc-1.1.2.tgz#6666e029fe25470d599cd30e23ff0d1ed50466d7"
@ -7499,3 +7686,8 @@ yargs@^17.3.1:
string-width "^4.2.3"
y18n "^5.0.5"
yargs-parser "^21.0.0"
yocto-queue@^0.1.0:
version "0.1.0"
resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b"
integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==

Loading…
Cancel
Save