김승훈

update

...@@ -2,12 +2,15 @@ import { Component } from 'react'; ...@@ -2,12 +2,15 @@ import { Component } from 'react';
2 import { StyleSheet, Text, View, AppRegistry } from 'react-native'; 2 import { StyleSheet, Text, View, AppRegistry } from 'react-native';
3 import { createAppContainer } from 'react-navigation'; 3 import { createAppContainer } from 'react-navigation';
4 import {createStackNavigator } from 'react-navigation-stack' 4 import {createStackNavigator } from 'react-navigation-stack'
5 -import MainScreen from './components/Mainscreen'; 5 +import MainScreen from './components/Navigation/Navigation';
6 import React from 'react' 6 import React from 'react'
7 7
8 const AppStackNavigator = createStackNavigator({ 8 const AppStackNavigator = createStackNavigator({
9 Main:{ 9 Main:{
10 - screen: MainScreen 10 + screen: MainScreen,
11 + navigationOptions: {
12 + headerShown:false
13 + }
11 } 14 }
12 }); 15 });
13 16
......
1 import { Component } from 'react'; 1 import { Component } from 'react';
2 -import { StyleSheet, Text, View } from 'react-native'; 2 +import { StyleSheet, Text, View, Image, TouchableOpacity, Alert } from 'react-native';
3 import { Icon } from 'native-base'; // 추가된 코드 3 import { Icon } from 'native-base'; // 추가된 코드
4 import React from 'react' 4 import React from 'react'
5 import {Marker} from 'react-native-maps' 5 import {Marker} from 'react-native-maps'
6 import Constants from 'expo-constants'; 6 import Constants from 'expo-constants';
7 import * as Location from 'expo-location'; 7 import * as Location from 'expo-location';
8 -import MapView from "./ClusteredMapView"; 8 +import MapView from "../ClusteredMapView";
9 9
10 10
11 export default class MainScreen extends Component { 11 export default class MainScreen extends Component {
...@@ -43,32 +43,17 @@ export default class MainScreen extends Component { ...@@ -43,32 +43,17 @@ export default class MainScreen extends Component {
43 } 43 }
44 render() { 44 render() {
45 return ( 45 return (
46 - this.state.location? 46 + //this.state.location?
47 - <MapView 47 + <View style={{width:"100%",height:"100%"}}>
48 - style={{ flex: 1 }} 48 +
49 - initialRegion={ { latitude: this.state.location.coords.latitude, longitude: this.state.location.coords.longitude 49 + <TouchableOpacity onPress={() => Alert.alert('OK',"주변에 의심자가 있습니까?",[{text:"OK",onPress:() =>alert("확인")},{text:'cancel'}])} style={{position:"absolute",bottom:10,right:10, width:50,height:50,backgroundColor:"red",borderRadius:100}}>
50 - ,latitudeDelta: 0.0922, longitudeDelta: 0.0421}} 50 + <View style={{flex:1,justifyContent: 'center',alignItems: 'center'}}>
51 - zoomEnabled={true} 51 + <Image style={{width:22,height:22}} source={require('../assets/security.png')}/>
52 - pitchEnabled={true} 52 + </View>
53 - showsUserLocation={true} 53 + </TouchableOpacity>
54 - followsUserLocation={true} 54 + </View>
55 - showsCompass={true} 55 + //:<Text>Loading..</Text>
56 - showsBuildings={true} 56 +
57 - showsTraffic={true}
58 - showsIndoors={true}
59 - extent={512}>
60 - <Marker coordinate={{ latitude: this.state.location.coords.latitude+0.1, longitude: this.state.location.coords.longitude }} />
61 - <Marker coordinate={{ latitude: this.state.location.coords.latitude+0.5, longitude: this.state.location.coords.longitude }} />
62 - <Marker coordinate={{ latitude: this.state.location.coords.latitude+0.0001, longitude: this.state.location.coords.longitude }} />
63 - <Marker coordinate={{ latitude: this.state.location.coords.latitude+0.0003, longitude: this.state.location.coords.longitude }} />
64 - <Marker coordinate={{ latitude: this.state.location.coords.latitude+0.03, longitude: this.state.location.coords.longitude }} />
65 - <Marker coordinate={{ latitude: this.state.location.coords.latitude+0.05, longitude: this.state.location.coords.longitude }} />
66 - <Marker coordinate={{ latitude: this.state.location.coords.latitude+0.01, longitude: this.state.location.coords.longitude }} />
67 - <Marker coordinate={{ latitude: this.state.location.coords.latitude+0.2, longitude: this.state.location.coords.longitude }} />
68 - <Marker coordinate={{ latitude: this.state.location.coords.latitude+0.3, longitude: this.state.location.coords.longitude }} />
69 - <Marker coordinate={{ latitude: this.state.location.coords.latitude+0.7, longitude: this.state.location.coords.longitude }} />
70 -
71 - </MapView>:<Text>Loading..</Text>
72 ); 57 );
73 } 58 }
74 } 59 }
......
1 +import React, { Component } from 'react';
2 +import { StyleSheet, Text, View, Image,
3 + TouchableOpacity, ScrollView, Dimensions,
4 + SafeAreaView, } from 'react-native';
5 +
6 +import { createAppContainer} from 'react-navigation';
7 +import {createStackNavigator } from 'react-navigation-stack';
8 +import ReportTab from '../TabNavigator/reportTab'
9 +import MainTab from '../TabNavigator/MainTab'
10 +import { Icon } from 'native-base'; // 추가된 코드
11 +
12 + const Stack = createStackNavigator(
13 + {
14 + MainTab: {
15 + screen: props => <MainTab {...props}/>,
16 + navigationOptions: {
17 + headerLeft: <Icon name='ios-camera' style={{ paddingLeft:10 }}/>,
18 + title: 'PME Service',
19 + headerRight: <Icon name='ios-send' style={{ paddingRight:10 }}/>,
20 + headerTitleStyle: {flex: 1, textAlign: 'center'},
21 + headerStyle: {
22 + shadowOpacity: 0,
23 + shadowOffset: {
24 + y: 0,
25 + x:0,
26 + height:0
27 + },
28 + shadowRadius: 0, elevation:0
29 + }
30 + },
31 + }
32 + ,reportTab: {
33 + screen: props=> <ReportTab {...props}/>,
34 + navigationOptions: {
35 + headerShown:false
36 + }
37 + },
38 + },{
39 +
40 +
41 +
42 + }
43 + );
44 +
45 + export default createAppContainer(Stack);
46 +
47 + /*
48 +
49 + <Text
50 + onPress={() => {
51 + props.navigation.navigate('BlueScreen');
52 + props.navigation.closeDrawer();
53 + }}
54 + >
55 + BlueScreen
56 + </Text>
57 + <Text
58 + onPress={() => {
59 + props.navigation.navigate('DefaultScreen');
60 + props.navigation.closeDrawer();
61 + }}
62 + >
63 + DefaultScreen
64 + </Text>
65 + */
...\ No newline at end of file ...\ No newline at end of file
1 +import { Component } from 'react';
2 +import { StyleSheet, Text, View, Image, TouchableOpacity, Alert, Platform } from 'react-native';
3 +import { Icon } from 'native-base'; // 추가된 코드
4 +import React from 'react'
5 +import {Marker} from 'react-native-maps'
6 +import Constants from 'expo-constants';
7 +import * as Location from 'expo-location';
8 +import MapView from "../ClusteredMapView";
9 +
10 +import Share from 'react-native-share';
11 +const url = 'https://awesome.contents.com/';
12 +const title = 'Awesome Contents';
13 +const message = 'Please check this out.';
14 +const icon = 'data:<data_type>/<file_extension>;base64,<base64_data>';
15 +const options = Platform.select({
16 + ios: {
17 + activityItemSources: [
18 + { // For sharing url with custom title.
19 + placeholderItem: { type: 'url', content: url },
20 + item: {
21 + default: { type: 'url', content: url },
22 + },
23 + subject: {
24 + default: title,
25 + },
26 + linkMetadata: { originalUrl: url, url, title },
27 + },
28 + { // For sharing text.
29 + placeholderItem: { type: 'text', content: message },
30 + item: {
31 + default: { type: 'text', content: message },
32 + message: null, // Specify no text to share via Messages app.
33 + },
34 + linkMetadata: { // For showing app icon on share preview.
35 + title: message
36 + },
37 + },
38 + { // For using custom icon instead of default text icon at share preview when sharing with message.
39 + placeholderItem: {
40 + type: 'url',
41 + content: icon
42 + },
43 + item: {
44 + default: {
45 + type: 'text',
46 + content: `${message} ${url}`
47 + },
48 + },
49 + linkMetadata: {
50 + title: message,
51 + icon: icon
52 + }
53 + },
54 + ],
55 + },
56 + default: {
57 + title,
58 + subject: title,
59 + message: `${message} ${url}`,
60 + },
61 +});
62 +
63 +export default class MainScreen extends Component {
64 +
65 + // navigationOptions 코드 추가
66 + static navigationOptions = {
67 + headerLeft: <Icon name='ios-camera' style={{ paddingLeft:10 }}/>,
68 + title: 'PME Service',
69 + headerRight: <Icon name='ios-send' style={{ paddingRight:10 }}/>,
70 + }
71 + constructor(props) {
72 + super(props)
73 + this.state= {
74 + location:null,
75 + errorMsg:null
76 + }
77 + }
78 + componentDidMount() {
79 + (async () => {
80 + let { status } = await Location.requestPermissionsAsync();
81 + if (status !== 'granted') {
82 + this.setState({
83 + errorMsg:'Permission to access location was denied'
84 + })
85 + }
86 +
87 + let location = await Location.getCurrentPositionAsync({});
88 + console.log(location)
89 + this.setState({
90 + location
91 + },() => {
92 + console.log(this.state.location.coords.latitude)
93 + })
94 + })();
95 + }
96 + render() {
97 + return (
98 + this.state.location?
99 + <View style={{width:"100%",height:"100%"}}>
100 +
101 + <MapView
102 + style={{ flex: 1 }}
103 + initialRegion={ { latitude: this.state.location.coords.latitude, longitude: this.state.location.coords.longitude
104 + ,latitudeDelta: 0.0922, longitudeDelta: 0.0421}}
105 + zoomEnabled={true}
106 + pitchEnabled={true}
107 + showsUserLocation={true}
108 + followsUserLocation={true}
109 + showsCompass={true}
110 + showsBuildings={true}
111 + showsTraffic={true}
112 + showsIndoors={true}
113 + extent={512}>
114 + <Marker coordinate={{ latitude: this.state.location.coords.latitude+0.1, longitude: this.state.location.coords.longitude }} >
115 + <Image style={{width:54,height:54}} source={require('../../assets/marker.png')}/>
116 + </Marker>
117 + <Marker coordinate={{ latitude: this.state.location.coords.latitude+0.5, longitude: this.state.location.coords.longitude }}>
118 + <Image style={{width:54,height:54}} source={require('../../assets/marker.png')}/>
119 + </Marker>
120 + <Marker icon="../../assets/marker.png" coordinate={{ latitude: this.state.location.coords.latitude+0.0001, longitude: this.state.location.coords.longitude }}>
121 + <Image style={{width:54,height:54}} source={require('../../assets/marker.png')}/>
122 + </Marker>
123 + <Marker icon="../../assets/marker.png" coordinate={{ latitude: this.state.location.coords.latitude+0.0003, longitude: this.state.location.coords.longitude }}>
124 + <Image style={{width:54,height:54}} source={require('../../assets/marker.png')}/>
125 + </Marker>
126 + <Marker icon="../../assets/marker.png" coordinate={{ latitude: this.state.location.coords.latitude+0.03, longitude: this.state.location.coords.longitude }}>
127 + <Image style={{width:54,height:54}} source={require('../../assets/marker.png')}/>
128 + </Marker>
129 + <Marker icon="../../assets/marker.png" coordinate={{ latitude: this.state.location.coords.latitude+0.05, longitude: this.state.location.coords.longitude }}>
130 + <Image style={{width:54,height:54}} source={require('../../assets/marker.png')}/>
131 + </Marker>
132 + <Marker icon="../../assets/marker.png" coordinate={{ latitude: this.state.location.coords.latitude+0.01, longitude: this.state.location.coords.longitude }}>
133 + <Image style={{width:54,height:54}} source={require('../../assets/marker.png')}/>
134 + </Marker>
135 + <Marker icon="../../assets/marker.png" coordinate={{ latitude: this.state.location.coords.latitude+0.2, longitude: this.state.location.coords.longitude }}>
136 + <Image style={{width:54,height:54}} source={require('../../assets/marker.png')}/>
137 + </Marker>
138 + <Marker icon="../../assets/marker.png" coordinate={{ latitude: this.state.location.coords.latitude+0.3, longitude: this.state.location.coords.longitude }}>
139 + <Image style={{width:54,height:54}} source={require('../../assets/marker.png')}/>
140 + </Marker>
141 + <Marker icon="../../assets/marker.png" coordinate={{ latitude: this.state.location.coords.latitude+0.7, longitude: this.state.location.coords.longitude }}>
142 + <Image style={{width:54,height:54}} source={require('../../assets/marker.png')}/>
143 + </Marker>
144 +
145 + </MapView>
146 + <TouchableOpacity onPress={() => Alert.alert('OK',"주변에 의심자가 있습니까?",[{text:"OK",onPress:() =>Share.open(options)},{text:'cancel'}])} style={{position:"absolute",bottom:10,right:10, width:50,height:50,backgroundColor:"red",borderRadius:100}}>
147 + <View style={{flex:1,justifyContent: 'center',alignItems: 'center'}}>
148 + <Image style={{width:22,height:22}} source={require('../../assets/security.png')}/>
149 + </View>
150 + </TouchableOpacity>
151 + </View>
152 + :<Text>Loading..</Text>
153 +
154 + );
155 + }
156 +}
157 +
158 +const styles = StyleSheet.create({
159 + container: {
160 + flex: 1,
161 + alignItems: 'center',
162 + justifyContent: 'center',
163 + },
164 +});
...\ No newline at end of file ...\ No newline at end of file
1 +import React, { Component } from 'react';
2 +import { View, Text, StyleSheet, Button } from 'react-native';
3 +import * as DocumentPicker from 'expo-document-picker';
4 +import Icon from 'native-base'
5 +export default class AddTab extends Component {
6 + static navigationOptions = {
7 + headerLeft: <Icon name='ios-camera' style={{ paddingLeft:10 }}/>,
8 + title: 'PME Service',
9 + headerRight: <Icon name='ios-send' style={{ paddingRight:10 }}/>,
10 + }
11 + state = {
12 + image: null,
13 + };
14 + _pickDocument = async () => {
15 + let result = await DocumentPicker.getDocumentAsync({});
16 + alert(result.uri);
17 + console.log(result);
18 + }
19 +
20 + _pickImage = async () => {
21 + let result = await ImagePicker.launchImageLibraryAsync({
22 + allowsEditing: true,
23 + aspect: [4, 3],
24 + });
25 +
26 + alert(result.uri);
27 + console.log(result)
28 +
29 + if (!result.cancelled) {
30 + this.setState({ image: result.uri });
31 + }
32 + };
33 +
34 + render() {
35 + let { image } = this.state;
36 + return (
37 + <View style={style.container}>
38 + <Button
39 + title="녹음파일을 등록해주세요."
40 + onPress={this._pickDocument}
41 + />
42 + <Button
43 + title="접수하기"
44 + onPress={() => {alert("접수되었습니다.")}}
45 + />
46 + </View>
47 + );
48 + }
49 +}
50 +
51 +const style = StyleSheet.create({
52 + container: {
53 + flex: 1,
54 + alignItems: 'center',
55 + justifyContent: 'center',
56 + }
57 +});
...\ No newline at end of file ...\ No newline at end of file
...@@ -117,17 +117,17 @@ export const returnMarkerStyle = points => { ...@@ -117,17 +117,17 @@ export const returnMarkerStyle = points => {
117 117
118 if (points >= 4) { 118 if (points >= 4) {
119 return { 119 return {
120 - width: 54, 120 + width: 84,
121 - height: 54, 121 + height: 84,
122 - size: 40, 122 + size: 64,
123 fontSize: 16 123 fontSize: 16
124 }; 124 };
125 } 125 }
126 126
127 return { 127 return {
128 - width: 48, 128 + width: 84,
129 - height: 48, 129 + height: 84,
130 - size: 36, 130 + size: 64,
131 fontSize: 15 131 fontSize: 15
132 }; 132 };
133 }; 133 };
......
...@@ -1252,9 +1252,9 @@ ...@@ -1252,9 +1252,9 @@
1252 "integrity": "sha512-rk4sWFsmtOw8oyx8SD3KSvawwaK7gRBSEIy2TAwURyGt+3TizssXP1r8nx3zY+R7v2vYYHXZ+k2/GULAT/bcaQ==" 1252 "integrity": "sha512-rk4sWFsmtOw8oyx8SD3KSvawwaK7gRBSEIy2TAwURyGt+3TizssXP1r8nx3zY+R7v2vYYHXZ+k2/GULAT/bcaQ=="
1253 }, 1253 },
1254 "@react-navigation/core": { 1254 "@react-navigation/core": {
1255 - "version": "3.7.5", 1255 + "version": "3.7.6",
1256 - "resolved": "https://registry.npmjs.org/@react-navigation/core/-/core-3.7.5.tgz", 1256 + "resolved": "https://registry.npmjs.org/@react-navigation/core/-/core-3.7.6.tgz",
1257 - "integrity": "sha512-B8vKZhHvX+C+lD0UfU5ljCOWIDgDKrlzMuuqIftCB5lnMFvRQZJ5cGpK6u6+BEoX1myfO5j4KUEsRv4H+2f5lg==", 1257 + "integrity": "sha512-loYFIn0Boy7C+vYxwcqsBVRFRO1EizZJErdutE6/3Jw6dbzz3Bnzupbw5hckZNB16GckacMwGoepZNIK51IIcg==",
1258 "requires": { 1258 "requires": {
1259 "hoist-non-react-statics": "^3.3.2", 1259 "hoist-non-react-statics": "^3.3.2",
1260 "path-to-regexp": "^1.8.0", 1260 "path-to-regexp": "^1.8.0",
...@@ -1263,9 +1263,9 @@ ...@@ -1263,9 +1263,9 @@
1263 } 1263 }
1264 }, 1264 },
1265 "@react-navigation/native": { 1265 "@react-navigation/native": {
1266 - "version": "3.7.12", 1266 + "version": "3.7.13",
1267 - "resolved": "https://registry.npmjs.org/@react-navigation/native/-/native-3.7.12.tgz", 1267 + "resolved": "https://registry.npmjs.org/@react-navigation/native/-/native-3.7.13.tgz",
1268 - "integrity": "sha512-StECfhxtEJvFehh16Wc9jnepy5gYKovzynVW+jr/+jKa7xlKskSCvASDnIwLHoFcWom084afKbqpVoVLEsE3lg==", 1268 + "integrity": "sha512-M6v1bLz0WbQmlPKF3WKBEZDGQ3CaqmzQULGs7XWtQe+f03VEbeX+kCkr/J6hw+rsgAy9Nwr4mGCPPQhF2pa7Yw==",
1269 "requires": { 1269 "requires": {
1270 "hoist-non-react-statics": "^3.3.2", 1270 "hoist-non-react-statics": "^3.3.2",
1271 "react-native-safe-area-view": "^0.14.9" 1271 "react-native-safe-area-view": "^0.14.9"
...@@ -2629,6 +2629,14 @@ ...@@ -2629,6 +2629,14 @@
2629 "resolved": "https://registry.npmjs.org/expo-constants/-/expo-constants-9.0.0.tgz", 2629 "resolved": "https://registry.npmjs.org/expo-constants/-/expo-constants-9.0.0.tgz",
2630 "integrity": "sha512-1kqZMM8Ez5JT3sTEx8I69fP6NYFLOJjeM6Z63dD/m2NiwvzSADiO5+BhghnWNGN1L3bxbgOjXS6EHtS7CdSfxA==" 2630 "integrity": "sha512-1kqZMM8Ez5JT3sTEx8I69fP6NYFLOJjeM6Z63dD/m2NiwvzSADiO5+BhghnWNGN1L3bxbgOjXS6EHtS7CdSfxA=="
2631 }, 2631 },
2632 + "expo-document-picker": {
2633 + "version": "8.1.0",
2634 + "resolved": "https://registry.npmjs.org/expo-document-picker/-/expo-document-picker-8.1.0.tgz",
2635 + "integrity": "sha512-GSPCNSwgAbRZ021bOf/ogHlbb8ZrL5iHwDx66QZCbzZTtHVTR1UVYRGhuNIjpjCaGLtd3pa0vqYp4dcx6upEVA==",
2636 + "requires": {
2637 + "uuid": "^3.3.2"
2638 + }
2639 + },
2632 "expo-error-recovery": { 2640 "expo-error-recovery": {
2633 "version": "1.1.0", 2641 "version": "1.1.0",
2634 "resolved": "https://registry.npmjs.org/expo-error-recovery/-/expo-error-recovery-1.1.0.tgz", 2642 "resolved": "https://registry.npmjs.org/expo-error-recovery/-/expo-error-recovery-1.1.0.tgz",
...@@ -5858,6 +5866,11 @@ ...@@ -5858,6 +5866,11 @@
5858 "resolved": "https://registry.npmjs.org/react-native-screens/-/react-native-screens-2.7.0.tgz", 5866 "resolved": "https://registry.npmjs.org/react-native-screens/-/react-native-screens-2.7.0.tgz",
5859 "integrity": "sha512-n/23IBOkrTKCfuUd6tFeRkn3lB2QZ3cmvoubRscR0JU/Zl4/ZyKmwnFmUv1/Fr+2GH/H8UTX59kEKDYYg3dMgA==" 5867 "integrity": "sha512-n/23IBOkrTKCfuUd6tFeRkn3lB2QZ3cmvoubRscR0JU/Zl4/ZyKmwnFmUv1/Fr+2GH/H8UTX59kEKDYYg3dMgA=="
5860 }, 5868 },
5869 + "react-native-share": {
5870 + "version": "3.3.2",
5871 + "resolved": "https://registry.npmjs.org/react-native-share/-/react-native-share-3.3.2.tgz",
5872 + "integrity": "sha512-Pvkr62TiCX511RMPL+wvy9Fofre4HQnvUT5zzgPPN3vszP/C8lUb7cmFu/8x5U14t3JQg+xW/svNK5eKNebJKw=="
5873 + },
5861 "react-native-vector-icons": { 5874 "react-native-vector-icons": {
5862 "version": "6.6.0", 5875 "version": "6.6.0",
5863 "resolved": "https://registry.npmjs.org/react-native-vector-icons/-/react-native-vector-icons-6.6.0.tgz", 5876 "resolved": "https://registry.npmjs.org/react-native-vector-icons/-/react-native-vector-icons-6.6.0.tgz",
...@@ -5984,18 +5997,18 @@ ...@@ -5984,18 +5997,18 @@
5984 } 5997 }
5985 }, 5998 },
5986 "react-navigation": { 5999 "react-navigation": {
5987 - "version": "4.3.8", 6000 + "version": "4.3.9",
5988 - "resolved": "https://registry.npmjs.org/react-navigation/-/react-navigation-4.3.8.tgz", 6001 + "resolved": "https://registry.npmjs.org/react-navigation/-/react-navigation-4.3.9.tgz",
5989 - "integrity": "sha512-Hxb6VkGu38x4r8nysAJutFkZ1yax29H6BrcdsqxlfGO2pCd821JkRL9h1Zqxn7qLm5JM6+7h0Yx3AS+YKDU5nw==", 6002 + "integrity": "sha512-nqAHS7jL1hgFPZeYt1vU8zVuF2Ay3bVVdCYvJSFJ9UvQZOtqPr/Wen/Ya9fRc+AvTtf3+AJn97K8xIiz2HHusQ==",
5990 "requires": { 6003 "requires": {
5991 - "@react-navigation/core": "^3.7.5", 6004 + "@react-navigation/core": "^3.7.6",
5992 - "@react-navigation/native": "^3.7.12" 6005 + "@react-navigation/native": "^3.7.13"
5993 } 6006 }
5994 }, 6007 },
5995 "react-navigation-stack": { 6008 "react-navigation-stack": {
5996 - "version": "2.3.13", 6009 + "version": "2.5.0",
5997 - "resolved": "https://registry.npmjs.org/react-navigation-stack/-/react-navigation-stack-2.3.13.tgz", 6010 + "resolved": "https://registry.npmjs.org/react-navigation-stack/-/react-navigation-stack-2.5.0.tgz",
5998 - "integrity": "sha512-WOfrkDnTaGeVU+8+Fm5WHvovN/9o1jHADcOBBGgNN6T8XsYwtGHPr5eQbe77LKYXQ/gX3pcGiOVG3WSBDHzH+w==", 6011 + "integrity": "sha512-B+j7J8M17WbF5JhMxOnKayMO7BDajzzp/xFkOUH9TFu7solkDPGUt0XDM2joYdvsnTLye7oEDqF4X2YGnbPYJw==",
5999 "requires": { 6012 "requires": {
6000 "color": "^3.1.2", 6013 "color": "^3.1.2",
6001 "react-native-iphone-x-helper": "^1.2.1" 6014 "react-native-iphone-x-helper": "^1.2.1"
......
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
12 "@react-native-community/masked-view": "^0.1.10", 12 "@react-native-community/masked-view": "^0.1.10",
13 "expo": "~37.0.3", 13 "expo": "~37.0.3",
14 "expo-constants": "^9.0.0", 14 "expo-constants": "^9.0.0",
15 + "expo-document-picker": "^8.1.0",
15 "expo-location": "^8.1.0", 16 "expo-location": "^8.1.0",
16 "native-base": "^2.13.12", 17 "native-base": "^2.13.12",
17 "react": "~16.9.0", 18 "react": "~16.9.0",
...@@ -22,9 +23,10 @@ ...@@ -22,9 +23,10 @@
22 "react-native-maps": "^0.27.1", 23 "react-native-maps": "^0.27.1",
23 "react-native-safe-area-context": "^0.7.3", 24 "react-native-safe-area-context": "^0.7.3",
24 "react-native-screens": "^2.7.0", 25 "react-native-screens": "^2.7.0",
26 + "react-native-share": "^3.3.2",
25 "react-native-web": "~0.11.7", 27 "react-native-web": "~0.11.7",
26 - "react-navigation": "^4.3.8", 28 + "react-navigation": "^4.3.9",
27 - "react-navigation-stack": "^2.3.13" 29 + "react-navigation-stack": "^2.5.0"
28 }, 30 },
29 "devDependencies": { 31 "devDependencies": {
30 "@babel/core": "^7.8.6", 32 "@babel/core": "^7.8.6",
......