Showing
10 changed files
with
321 additions
and
9 deletions
... | @@ -2,7 +2,7 @@ | ... | @@ -2,7 +2,7 @@ |
2 | "devToolsPort": 19002, | 2 | "devToolsPort": 19002, |
3 | "expoServerPort": 19000, | 3 | "expoServerPort": 19000, |
4 | "packagerPort": 19001, | 4 | "packagerPort": 19001, |
5 | - "packagerPid": 23132, | 5 | + "packagerPid": 31648, |
6 | "expoServerNgrokUrl": null, | 6 | "expoServerNgrokUrl": null, |
7 | "packagerNgrokUrl": null, | 7 | "packagerNgrokUrl": null, |
8 | "ngrokPid": null | 8 | "ngrokPid": null | ... | ... |
... | @@ -13,12 +13,12 @@ const Home = ({searchResults}) => { | ... | @@ -13,12 +13,12 @@ const Home = ({searchResults}) => { |
13 | <SearchBar /> | 13 | <SearchBar /> |
14 | <ScrollView> | 14 | <ScrollView> |
15 | { searchResults.length ? ( searchResults.map((searchResult, index) => ( | 15 | { searchResults.length ? ( searchResults.map((searchResult, index) => ( |
16 | - <SearchCard key={index} title={searchResult.title} content={searchResult.passage} url={searchResult.url}/>))) | 16 | + <SearchCard key={index} title={searchResult.title} content={searchResult.passage} |
17 | + url={searchResult.url} metric={Math.round(searchResult.confidence * 100)} />))) | ||
17 | : <PromptSearch /> | 18 | : <PromptSearch /> |
18 | } | 19 | } |
19 | </ScrollView> | 20 | </ScrollView> |
20 | </View> | 21 | </View> |
21 | - | ||
22 | ) | 22 | ) |
23 | } | 23 | } |
24 | 24 | ... | ... |
1 | import React from 'react'; | 1 | import React from 'react'; |
2 | import { View, Text} from 'react-native'; | 2 | import { View, Text} from 'react-native'; |
3 | import Icon from 'react-native-vector-icons/FontAwesome'; | 3 | import Icon from 'react-native-vector-icons/FontAwesome'; |
4 | +import RateSentence from '../RateSentence/RateSentence'; | ||
5 | +import RateBar from '../RateBar/RateBar'; | ||
6 | +import RateLine from '../RateLine/RateLine'; | ||
4 | 7 | ||
5 | const Rate = () => { | 8 | const Rate = () => { |
6 | return( | 9 | return( |
7 | - <View style={{flex: 1, backgroundColor:'#eee', margin:0,padding:0}}> | 10 | + <View style={{flex: 1, backgroundColor:'#eee', margin:0,padding:0, justifyContent:'center',alignItems:'center'}}> |
8 | - <Text >평ㄴ가</Text> | 11 | + <RateSentence /> |
12 | + <RateBar /> | ||
13 | + <RateLine /> | ||
9 | </View> | 14 | </View> |
10 | ) | 15 | ) |
11 | } | 16 | } | ... | ... |
searchGuide/components/RateBar/RateBar.js
0 → 100644
1 | +import React from 'react'; | ||
2 | +import { Surface, Text } from 'react-native-paper'; | ||
3 | +import { StyleSheet } from 'react-native'; | ||
4 | +import { StackedBarChart } from 'react-native-svg-charts'; | ||
5 | + | ||
6 | + | ||
7 | +export default RateBar = (props) => ( | ||
8 | + <Surface style={styles.surface}> | ||
9 | + <StackedBarChart | ||
10 | + data={ [{keyword:20,korean:20}]} | ||
11 | + style={{height:50, width:'100%'}} | ||
12 | + keys={['keyword','korean']} | ||
13 | + colors={['#a5aa5a','#2cc3c2']} | ||
14 | + showGrid={ false } | ||
15 | + horizontal={ true } | ||
16 | + contentInset={ { top: 30, bottom: 30 } } | ||
17 | + yMax={100} | ||
18 | + /> | ||
19 | + </Surface> | ||
20 | + ); | ||
21 | + | ||
22 | +const styles = StyleSheet.create({ | ||
23 | + surface: { | ||
24 | + padding: 8, | ||
25 | + flex: 0.3, | ||
26 | + width: '95%', | ||
27 | + alignItems: 'center', | ||
28 | + justifyContent: 'center', | ||
29 | + elevation: 2, | ||
30 | + marginTop: 10 | ||
31 | + }, | ||
32 | +}); | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
searchGuide/components/RateLine/RateLine.js
0 → 100644
1 | +import React from 'react'; | ||
2 | +import { Surface, Text } from 'react-native-paper'; | ||
3 | +import { StyleSheet } from 'react-native'; | ||
4 | + | ||
5 | +export default RateLine = () => ( | ||
6 | + <Surface style={styles.surface}> | ||
7 | + <Text>Surface</Text> | ||
8 | + </Surface> | ||
9 | +); | ||
10 | + | ||
11 | +const styles = StyleSheet.create({ | ||
12 | + surface: { | ||
13 | + padding: 8, | ||
14 | + flex: 0.4, | ||
15 | + width: '95%', | ||
16 | + alignItems: 'center', | ||
17 | + justifyContent: 'center', | ||
18 | + elevation: 2, | ||
19 | + marginTop: 10, | ||
20 | + marginBottom: 10, | ||
21 | + }, | ||
22 | +}); | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
1 | +import React,{ useState } from 'react'; | ||
2 | +import { Surface, Text } from 'react-native-paper'; | ||
3 | +import { StyleSheet,View } from 'react-native'; | ||
4 | +import {connect} from 'react-redux'; | ||
5 | + | ||
6 | +const SentenceInfo = (props) => ( | ||
7 | + <View> | ||
8 | + <Text style={[styles.infoText,{color:props.color}]} >{props.info}</Text> | ||
9 | + <Text style={[styles.Text,{color:props.color}]}>{props.Text}</Text> | ||
10 | + </View> | ||
11 | +) | ||
12 | + | ||
13 | +const RateSentence = ({originalText, fixedText, keywordText }) => { | ||
14 | + const [ count,setCount ] = useState(0); | ||
15 | + | ||
16 | + const calCount = () => { | ||
17 | + if(count > 1 || !keywordText) setCount(0); | ||
18 | + else setCount(count+1); | ||
19 | + } | ||
20 | + | ||
21 | + return ( | ||
22 | + <Surface style={styles.surface} onTouchStart={calCount} > | ||
23 | + { keywordText ? | ||
24 | + <View> | ||
25 | + {count == 0 && ( <SentenceInfo Text={originalText} info={'원래 검색 문장'} color={'#B71C1C'} />) } | ||
26 | + {count == 1 && ( <SentenceInfo Text={fixedText} info={'맞춤법 교정 문장'} color={'#2196F3'} />) } | ||
27 | + {count == 2 && ( <SentenceInfo Text={keywordText} info={'키워드 교정 문장'} color={'#00a676'} />) } | ||
28 | + </View> | ||
29 | + : <View style={{alignItems:'center'}}> | ||
30 | + <Text style={styles.Text}>아직 검색</Text> | ||
31 | + <Text style={styles.Text}>결과가 없습니다!</Text> | ||
32 | + </View> | ||
33 | + } | ||
34 | + | ||
35 | + </Surface> | ||
36 | + ) | ||
37 | +} | ||
38 | + | ||
39 | + const styles = StyleSheet.create({ | ||
40 | + surface: { | ||
41 | + padding: 8, | ||
42 | + flex: 0.3, | ||
43 | + width: '95%', | ||
44 | + alignItems: 'center', | ||
45 | + justifyContent: 'center', | ||
46 | + elevation: 2, | ||
47 | + marginTop: 10 | ||
48 | + }, | ||
49 | + Text:{ | ||
50 | + fontSize: 25, | ||
51 | + }, | ||
52 | + infoText:{ | ||
53 | + fontSize: 20, | ||
54 | + } | ||
55 | +}); | ||
56 | + | ||
57 | + | ||
58 | +const RateSentenceContainer = ( {originalText, fixedText, keywordText } ) => ( | ||
59 | + <RateSentence originalText={originalText} fixedText={fixedText} keywordText={keywordText} /> | ||
60 | +); | ||
61 | + | ||
62 | +export default connect( | ||
63 | + ({search})=>({ | ||
64 | + originalText: search.result.return_data.originalText, | ||
65 | + fixedText: search.result.return_data.fixedText, | ||
66 | + keywordText: search.result.return_data.keywordText | ||
67 | + }) | ||
68 | +)(RateSentenceContainer); | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
1 | import React from 'react'; | 1 | import React from 'react'; |
2 | import { DARK_MAIN,LIGHT_MAIN, WHITE_MAIN} from 'react-native-dotenv'; | 2 | import { DARK_MAIN,LIGHT_MAIN, WHITE_MAIN} from 'react-native-dotenv'; |
3 | -import { Avatar, Button, Card, Title, Paragraph } from 'react-native-paper'; | 3 | +import { Avatar, Button, Card, Title, Paragraph, Text } from 'react-native-paper'; |
4 | import {Linking } from 'react-native'; | 4 | import {Linking } from 'react-native'; |
5 | 5 | ||
6 | const SearchCard = (props) => ( | 6 | const SearchCard = (props) => ( |
7 | - <Card style={{margin:10}}> | 7 | + <Card style={{marginTop:10, marginLeft:10, marginRight:10}}> |
8 | <Card.Title title={props.title} | 8 | <Card.Title title={props.title} |
9 | left={ (props) => ( <Avatar.Icon {...props} icon="folder" color={WHITE_MAIN}style={{backgroundColor:LIGHT_MAIN}} /> ) } /> | 9 | left={ (props) => ( <Avatar.Icon {...props} icon="folder" color={WHITE_MAIN}style={{backgroundColor:LIGHT_MAIN}} /> ) } /> |
10 | <Card.Content> | 10 | <Card.Content> |
11 | <Paragraph>{props.content}</Paragraph> | 11 | <Paragraph>{props.content}</Paragraph> |
12 | </Card.Content> | 12 | </Card.Content> |
13 | - <Card.Actions style={{flexDirection:'row-reverse'}}> | 13 | + <Card.Actions style={{flexDirection:'row', justifyContent:'space-between'}}> |
14 | + <Text style={{marginTop:7, fontStyle:'italic'}}>정확도 : {props.metric}%</Text> | ||
14 | <Button mode='contained' color= {LIGHT_MAIN} labelStyle={{color:WHITE_MAIN}} onPress={()=>{Linking.openURL(props.url)}}> | 15 | <Button mode='contained' color= {LIGHT_MAIN} labelStyle={{color:WHITE_MAIN}} onPress={()=>{Linking.openURL(props.url)}}> |
15 | 자세히보기 | 16 | 자세히보기 |
16 | </Button> | 17 | </Button> | ... | ... |
... | @@ -1794,6 +1794,11 @@ | ... | @@ -1794,6 +1794,11 @@ |
1794 | "resolved": "https://registry.npmjs.org/blueimp-md5/-/blueimp-md5-2.12.0.tgz", | 1794 | "resolved": "https://registry.npmjs.org/blueimp-md5/-/blueimp-md5-2.12.0.tgz", |
1795 | "integrity": "sha512-zo+HIdIhzojv6F1siQPqPFROyVy7C50KzHv/k/Iz+BtvtVzSHXiMXOpq2wCfNkeBqdCv+V8XOV96tsEt2W/3rQ==" | 1795 | "integrity": "sha512-zo+HIdIhzojv6F1siQPqPFROyVy7C50KzHv/k/Iz+BtvtVzSHXiMXOpq2wCfNkeBqdCv+V8XOV96tsEt2W/3rQ==" |
1796 | }, | 1796 | }, |
1797 | + "boolbase": { | ||
1798 | + "version": "1.0.0", | ||
1799 | + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", | ||
1800 | + "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=" | ||
1801 | + }, | ||
1797 | "bplist-creator": { | 1802 | "bplist-creator": { |
1798 | "version": "0.0.8", | 1803 | "version": "0.0.8", |
1799 | "resolved": "https://registry.npmjs.org/bplist-creator/-/bplist-creator-0.0.8.tgz", | 1804 | "resolved": "https://registry.npmjs.org/bplist-creator/-/bplist-creator-0.0.8.tgz", |
... | @@ -2264,6 +2269,114 @@ | ... | @@ -2264,6 +2269,114 @@ |
2264 | } | 2269 | } |
2265 | } | 2270 | } |
2266 | }, | 2271 | }, |
2272 | + "css-select": { | ||
2273 | + "version": "2.1.0", | ||
2274 | + "resolved": "https://registry.npmjs.org/css-select/-/css-select-2.1.0.tgz", | ||
2275 | + "integrity": "sha512-Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ==", | ||
2276 | + "requires": { | ||
2277 | + "boolbase": "^1.0.0", | ||
2278 | + "css-what": "^3.2.1", | ||
2279 | + "domutils": "^1.7.0", | ||
2280 | + "nth-check": "^1.0.2" | ||
2281 | + } | ||
2282 | + }, | ||
2283 | + "css-tree": { | ||
2284 | + "version": "1.0.0-alpha.37", | ||
2285 | + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.37.tgz", | ||
2286 | + "integrity": "sha512-DMxWJg0rnz7UgxKT0Q1HU/L9BeJI0M6ksor0OgqOnF+aRCDWg/N2641HmVyU9KVIu0OVVWOb2IpC9A+BJRnejg==", | ||
2287 | + "requires": { | ||
2288 | + "mdn-data": "2.0.4", | ||
2289 | + "source-map": "^0.6.1" | ||
2290 | + }, | ||
2291 | + "dependencies": { | ||
2292 | + "source-map": { | ||
2293 | + "version": "0.6.1", | ||
2294 | + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", | ||
2295 | + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" | ||
2296 | + } | ||
2297 | + } | ||
2298 | + }, | ||
2299 | + "css-what": { | ||
2300 | + "version": "3.2.1", | ||
2301 | + "resolved": "https://registry.npmjs.org/css-what/-/css-what-3.2.1.tgz", | ||
2302 | + "integrity": "sha512-WwOrosiQTvyms+Ti5ZC5vGEK0Vod3FTt1ca+payZqvKuGJF+dq7bG63DstxtN0dpm6FxY27a/zS3Wten+gEtGw==" | ||
2303 | + }, | ||
2304 | + "d3-array": { | ||
2305 | + "version": "1.2.4", | ||
2306 | + "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-1.2.4.tgz", | ||
2307 | + "integrity": "sha512-KHW6M86R+FUPYGb3R5XiYjXPq7VzwxZ22buHhAEVG5ztoEcZZMLov530mmccaqA1GghZArjQV46fuc8kUqhhHw==" | ||
2308 | + }, | ||
2309 | + "d3-collection": { | ||
2310 | + "version": "1.0.7", | ||
2311 | + "resolved": "https://registry.npmjs.org/d3-collection/-/d3-collection-1.0.7.tgz", | ||
2312 | + "integrity": "sha512-ii0/r5f4sjKNTfh84Di+DpztYwqKhEyUlKoPrzUFfeSkWxjW49xU2QzO9qrPrNkpdI0XJkfzvmTu8V2Zylln6A==" | ||
2313 | + }, | ||
2314 | + "d3-color": { | ||
2315 | + "version": "1.4.0", | ||
2316 | + "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-1.4.0.tgz", | ||
2317 | + "integrity": "sha512-TzNPeJy2+iEepfiL92LAAB7fvnp/dV2YwANPVHdDWmYMm23qIJBYww3qT8I8C1wXrmrg4UWs7BKc2tKIgyjzHg==" | ||
2318 | + }, | ||
2319 | + "d3-format": { | ||
2320 | + "version": "1.4.2", | ||
2321 | + "resolved": "https://registry.npmjs.org/d3-format/-/d3-format-1.4.2.tgz", | ||
2322 | + "integrity": "sha512-gco1Ih54PgMsyIXgttLxEhNy/mXxq8+rLnCb5shQk+P5TsiySrwWU5gpB4zen626J4LIwBxHvDChyA8qDm57ww==" | ||
2323 | + }, | ||
2324 | + "d3-interpolate": { | ||
2325 | + "version": "1.3.3", | ||
2326 | + "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-1.3.3.tgz", | ||
2327 | + "integrity": "sha512-wTsi4AqnC2raZ3Q9eqFxiZGUf5r6YiEdi23vXjjKSWXFYLCQNUtBVMk6uk2tg4cOY6YrjRdmSmI/Mf0ze1zPzQ==", | ||
2328 | + "requires": { | ||
2329 | + "d3-color": "1" | ||
2330 | + } | ||
2331 | + }, | ||
2332 | + "d3-interpolate-path": { | ||
2333 | + "version": "2.0.0", | ||
2334 | + "resolved": "https://registry.npmjs.org/d3-interpolate-path/-/d3-interpolate-path-2.0.0.tgz", | ||
2335 | + "integrity": "sha1-ywMnMU/tsU5uoXiat+CVoWwvirI=", | ||
2336 | + "requires": { | ||
2337 | + "d3-interpolate": "^1.1.1" | ||
2338 | + } | ||
2339 | + }, | ||
2340 | + "d3-path": { | ||
2341 | + "version": "1.0.9", | ||
2342 | + "resolved": "https://registry.npmjs.org/d3-path/-/d3-path-1.0.9.tgz", | ||
2343 | + "integrity": "sha512-VLaYcn81dtHVTjEHd8B+pbe9yHWpXKZUC87PzoFmsFrJqgFwDe/qxfp5MlfsfM1V5E/iVt0MmEbWQ7FVIXh/bg==" | ||
2344 | + }, | ||
2345 | + "d3-scale": { | ||
2346 | + "version": "1.0.7", | ||
2347 | + "resolved": "https://registry.npmjs.org/d3-scale/-/d3-scale-1.0.7.tgz", | ||
2348 | + "integrity": "sha512-KvU92czp2/qse5tUfGms6Kjig0AhHOwkzXG0+PqIJB3ke0WUv088AHMZI0OssO9NCkXt4RP8yju9rpH8aGB7Lw==", | ||
2349 | + "requires": { | ||
2350 | + "d3-array": "^1.2.0", | ||
2351 | + "d3-collection": "1", | ||
2352 | + "d3-color": "1", | ||
2353 | + "d3-format": "1", | ||
2354 | + "d3-interpolate": "1", | ||
2355 | + "d3-time": "1", | ||
2356 | + "d3-time-format": "2" | ||
2357 | + } | ||
2358 | + }, | ||
2359 | + "d3-shape": { | ||
2360 | + "version": "1.3.7", | ||
2361 | + "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-1.3.7.tgz", | ||
2362 | + "integrity": "sha512-EUkvKjqPFUAZyOlhY5gzCxCeI0Aep04LwIRpsZ/mLFelJiUfnK56jo5JMDSE7yyP2kLSb6LtF+S5chMk7uqPqw==", | ||
2363 | + "requires": { | ||
2364 | + "d3-path": "1" | ||
2365 | + } | ||
2366 | + }, | ||
2367 | + "d3-time": { | ||
2368 | + "version": "1.1.0", | ||
2369 | + "resolved": "https://registry.npmjs.org/d3-time/-/d3-time-1.1.0.tgz", | ||
2370 | + "integrity": "sha512-Xh0isrZ5rPYYdqhAVk8VLnMEidhz5aP7htAADH6MfzgmmicPkTo8LhkLxci61/lCB7n7UmE3bN0leRt+qvkLxA==" | ||
2371 | + }, | ||
2372 | + "d3-time-format": { | ||
2373 | + "version": "2.2.2", | ||
2374 | + "resolved": "https://registry.npmjs.org/d3-time-format/-/d3-time-format-2.2.2.tgz", | ||
2375 | + "integrity": "sha512-pweL2Ri2wqMY+wlW/wpkl8T3CUzKAha8S9nmiQlMABab8r5MJN0PD1V4YyRNVaKQfeh4Z0+VO70TLw6ESVOYzw==", | ||
2376 | + "requires": { | ||
2377 | + "d3-time": "1" | ||
2378 | + } | ||
2379 | + }, | ||
2267 | "debounce": { | 2380 | "debounce": { |
2268 | "version": "1.2.0", | 2381 | "version": "1.2.0", |
2269 | "resolved": "https://registry.npmjs.org/debounce/-/debounce-1.2.0.tgz", | 2382 | "resolved": "https://registry.npmjs.org/debounce/-/debounce-1.2.0.tgz", |
... | @@ -2375,11 +2488,41 @@ | ... | @@ -2375,11 +2488,41 @@ |
2375 | "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", | 2488 | "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", |
2376 | "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" | 2489 | "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" |
2377 | }, | 2490 | }, |
2491 | + "dom-serializer": { | ||
2492 | + "version": "0.2.2", | ||
2493 | + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz", | ||
2494 | + "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==", | ||
2495 | + "requires": { | ||
2496 | + "domelementtype": "^2.0.1", | ||
2497 | + "entities": "^2.0.0" | ||
2498 | + }, | ||
2499 | + "dependencies": { | ||
2500 | + "domelementtype": { | ||
2501 | + "version": "2.0.1", | ||
2502 | + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.0.1.tgz", | ||
2503 | + "integrity": "sha512-5HOHUDsYZWV8FGWN0Njbr/Rn7f/eWSQi1v7+HsUVwXgn8nWWlL64zKDkS0n8ZmQ3mlWOMuXOnR+7Nx/5tMO5AQ==" | ||
2504 | + } | ||
2505 | + } | ||
2506 | + }, | ||
2378 | "dom-walk": { | 2507 | "dom-walk": { |
2379 | "version": "0.1.1", | 2508 | "version": "0.1.1", |
2380 | "resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.1.tgz", | 2509 | "resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.1.tgz", |
2381 | "integrity": "sha1-ZyIm3HTI95mtNTB9+TaroRrNYBg=" | 2510 | "integrity": "sha1-ZyIm3HTI95mtNTB9+TaroRrNYBg=" |
2382 | }, | 2511 | }, |
2512 | + "domelementtype": { | ||
2513 | + "version": "1.3.1", | ||
2514 | + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", | ||
2515 | + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==" | ||
2516 | + }, | ||
2517 | + "domutils": { | ||
2518 | + "version": "1.7.0", | ||
2519 | + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz", | ||
2520 | + "integrity": "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==", | ||
2521 | + "requires": { | ||
2522 | + "dom-serializer": "0", | ||
2523 | + "domelementtype": "1" | ||
2524 | + } | ||
2525 | + }, | ||
2383 | "dotenv": { | 2526 | "dotenv": { |
2384 | "version": "2.0.0", | 2527 | "version": "2.0.0", |
2385 | "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-2.0.0.tgz", | 2528 | "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-2.0.0.tgz", |
... | @@ -2417,6 +2560,11 @@ | ... | @@ -2417,6 +2560,11 @@ |
2417 | "once": "^1.4.0" | 2560 | "once": "^1.4.0" |
2418 | } | 2561 | } |
2419 | }, | 2562 | }, |
2563 | + "entities": { | ||
2564 | + "version": "2.0.0", | ||
2565 | + "resolved": "https://registry.npmjs.org/entities/-/entities-2.0.0.tgz", | ||
2566 | + "integrity": "sha512-D9f7V0JSRwIxlRI2mjMqufDrRDnx8p+eEOz7aUM9SuvF8gsBzra0/6tbjl1m8eQHrZlYj6PxqE00hZ1SAIKPLw==" | ||
2567 | + }, | ||
2420 | "envinfo": { | 2568 | "envinfo": { |
2421 | "version": "5.12.1", | 2569 | "version": "5.12.1", |
2422 | "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-5.12.1.tgz", | 2570 | "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-5.12.1.tgz", |
... | @@ -4111,6 +4259,11 @@ | ... | @@ -4111,6 +4259,11 @@ |
4111 | "buffer-alloc": "^1.1.0" | 4259 | "buffer-alloc": "^1.1.0" |
4112 | } | 4260 | } |
4113 | }, | 4261 | }, |
4262 | + "mdn-data": { | ||
4263 | + "version": "2.0.4", | ||
4264 | + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.4.tgz", | ||
4265 | + "integrity": "sha512-iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA==" | ||
4266 | + }, | ||
4114 | "mem": { | 4267 | "mem": { |
4115 | "version": "1.1.0", | 4268 | "version": "1.1.0", |
4116 | "resolved": "https://registry.npmjs.org/mem/-/mem-1.1.0.tgz", | 4269 | "resolved": "https://registry.npmjs.org/mem/-/mem-1.1.0.tgz", |
... | @@ -4814,6 +4967,14 @@ | ... | @@ -4814,6 +4967,14 @@ |
4814 | "gauge": "~1.2.5" | 4967 | "gauge": "~1.2.5" |
4815 | } | 4968 | } |
4816 | }, | 4969 | }, |
4970 | + "nth-check": { | ||
4971 | + "version": "1.0.2", | ||
4972 | + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", | ||
4973 | + "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", | ||
4974 | + "requires": { | ||
4975 | + "boolbase": "~1.0.0" | ||
4976 | + } | ||
4977 | + }, | ||
4817 | "nullthrows": { | 4978 | "nullthrows": { |
4818 | "version": "1.1.1", | 4979 | "version": "1.1.1", |
4819 | "resolved": "https://registry.npmjs.org/nullthrows/-/nullthrows-1.1.1.tgz", | 4980 | "resolved": "https://registry.npmjs.org/nullthrows/-/nullthrows-1.1.1.tgz", |
... | @@ -5633,6 +5794,27 @@ | ... | @@ -5633,6 +5794,27 @@ |
5633 | "debounce": "^1.2.0" | 5794 | "debounce": "^1.2.0" |
5634 | } | 5795 | } |
5635 | }, | 5796 | }, |
5797 | + "react-native-svg": { | ||
5798 | + "version": "9.13.3", | ||
5799 | + "resolved": "https://registry.npmjs.org/react-native-svg/-/react-native-svg-9.13.3.tgz", | ||
5800 | + "integrity": "sha512-H50b2m4jvrQ7KxKs8uYSuWecr6e5XC7BDfS7DaA96+0Owjh0C9DksI5l8SRyHnmE+emiYMPu6Qqfr9dCyKkaJQ==", | ||
5801 | + "requires": { | ||
5802 | + "css-select": "^2.0.2", | ||
5803 | + "css-tree": "^1.0.0-alpha.37" | ||
5804 | + } | ||
5805 | + }, | ||
5806 | + "react-native-svg-charts": { | ||
5807 | + "version": "5.3.0", | ||
5808 | + "resolved": "https://registry.npmjs.org/react-native-svg-charts/-/react-native-svg-charts-5.3.0.tgz", | ||
5809 | + "integrity": "sha512-XxKDqMdOl8EhQGhLAzWtmfhhiTuPeeRrLvLQ5+BzaRoCgdBO1CGGKeLvEor8OU8QUi3IXSdbbTi+fVrFq5hqaQ==", | ||
5810 | + "requires": { | ||
5811 | + "d3-array": "^1.2.0", | ||
5812 | + "d3-interpolate-path": "2.0.0", | ||
5813 | + "d3-scale": "^1.0.6", | ||
5814 | + "d3-shape": "^1.0.6", | ||
5815 | + "prop-types": "^15.6.0" | ||
5816 | + } | ||
5817 | + }, | ||
5636 | "react-native-tab-view": { | 5818 | "react-native-tab-view": { |
5637 | "version": "2.10.0", | 5819 | "version": "2.10.0", |
5638 | "resolved": "https://registry.npmjs.org/react-native-tab-view/-/react-native-tab-view-2.10.0.tgz", | 5820 | "resolved": "https://registry.npmjs.org/react-native-tab-view/-/react-native-tab-view-2.10.0.tgz", | ... | ... |
... | @@ -21,6 +21,8 @@ | ... | @@ -21,6 +21,8 @@ |
21 | "react-native-navigation": "^3.6.0", | 21 | "react-native-navigation": "^3.6.0", |
22 | "react-native-paper": "^3.2.1", | 22 | "react-native-paper": "^3.2.1", |
23 | "react-native-reanimated": "^1.4.0", | 23 | "react-native-reanimated": "^1.4.0", |
24 | + "react-native-svg": "^9.13.3", | ||
25 | + "react-native-svg-charts": "^5.3.0", | ||
24 | "react-native-voice": "^0.3.0", | 26 | "react-native-voice": "^0.3.0", |
25 | "react-native-web": "^0.11.7", | 27 | "react-native-web": "^0.11.7", |
26 | "react-navigation": "^4.0.10", | 28 | "react-navigation": "^4.0.10", | ... | ... |
-
Please register or login to post a comment