diff --git a/package-lock.json b/package-lock.json index 4a7a661..ab80d4a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1733,6 +1733,11 @@ } } }, + "base-64": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/base-64/-/base-64-0.1.0.tgz", + "integrity": "sha1-eAqZyE59YAJgNhURxId2E78k9rs=" + }, "base64-js": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.0.tgz", diff --git a/package.json b/package.json index 4517d31..47e662f 100644 --- a/package.json +++ b/package.json @@ -9,6 +9,7 @@ "eject": "expo eject" }, "dependencies": { + "base-64": "^0.1.0", "expo": "^33.0.0", "react": "16.8.3", "react-dom": "^16.8.6", diff --git a/screens/ConfirmScreen.js b/screens/ConfirmScreen.js index a2250d6..f3f3b13 100644 --- a/screens/ConfirmScreen.js +++ b/screens/ConfirmScreen.js @@ -1,6 +1,17 @@ import React from 'react'; +import {decode as atob, encode as btoa} from 'base-64'; import { StyleSheet, Text, View, TouchableOpacity, Dimensions, Image, Button } from 'react-native'; + +function arrayBufferToBase64(buffer) { + var binary = ''; + var bytes = [].slice.call(new Uint8Array(buffer)); + + bytes.forEach((b) => binary += String.fromCharCode(b)); + + return window.btoa(binary); +}; + class ConfirmScreen extends React.PureComponent { static navigationOptions = { title: 'Select Region to Scan', @@ -17,12 +28,32 @@ class ConfirmScreen extends React.PureComponent { super(props); this.state = { - coordinates: null + grayscale: null } } - processImage = () => { - console.log(photo); + processImage = (photo) => { + + fetch('https://tranquil-atoll-18580.herokuapp.com/scan', { + headers: { + 'Accept': 'application/json', + 'Content-Type': 'application/json' + }, + method: 'POST', + body: JSON.stringify({ + 'image': photo.base64 + }) + }) + .then(response => response.json()) + .then((response) => { + + console.log(response); + + const image = response.image; + + this.props.navigation.navigate('Result', {image}); + }) + .catch(error => console.log(error)); } render() { @@ -38,7 +69,7 @@ class ConfirmScreen extends React.PureComponent { }} source={{uri}} /> -