From d81feb7b3141251c5bc8efa698c31c4c28321a10 Mon Sep 17 00:00:00 2001 From: Maison Moa Date: Fri, 28 Sep 2018 16:25:32 -0400 Subject: [PATCH 1/2] moved visible API key into env variable, the sample.env holds an example --- .gitignore | 1 + package-lock.json | 42 ++++++++++++++++++++++++------------------ package.json | 3 +++ sample.env | 1 + src/App.js | 6 +++++- src/components/Form.js | 4 ++-- 6 files changed, 36 insertions(+), 21 deletions(-) create mode 100644 sample.env diff --git a/.gitignore b/.gitignore index d30f40e..f53349d 100644 --- a/.gitignore +++ b/.gitignore @@ -11,6 +11,7 @@ # misc .DS_Store +.env .env.local .env.development.local .env.test.local diff --git a/package-lock.json b/package-lock.json index c57287a..e0d39a2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2476,9 +2476,10 @@ } }, "dotenv": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-4.0.0.tgz", - "integrity": "sha1-hk7xN5rO1Vzm+V3r7NzhefegzR0=" + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-6.0.0.tgz", + "integrity": "sha512-FlWbnhgjtwD+uNLUGHbMykMOYQaTivdHEmYwAKFjn6GKe/CqY0fNae93ZHTd20snh9ZLr8mTzIL9m0APQ1pjQg==", + "dev": true }, "dotenv-expand": { "version": "4.0.1", @@ -4112,13 +4113,6 @@ } } }, - "string_decoder": { - "version": "1.0.1", - "bundled": true, - "requires": { - "safe-buffer": "5.0.1" - } - }, "string-width": { "version": "1.0.2", "bundled": true, @@ -4128,6 +4122,13 @@ "strip-ansi": "3.0.1" } }, + "string_decoder": { + "version": "1.0.1", + "bundled": true, + "requires": { + "safe-buffer": "5.0.1" + } + }, "stringstream": { "version": "0.0.5", "bundled": true, @@ -8155,6 +8156,11 @@ "whatwg-fetch": "2.0.3" }, "dependencies": { + "dotenv": { + "version": "4.0.0", + "resolved": "http://registry.npmjs.org/dotenv/-/dotenv-4.0.0.tgz", + "integrity": "sha1-hk7xN5rO1Vzm+V3r7NzhefegzR0=" + }, "promise": { "version": "8.0.1", "resolved": "https://registry.npmjs.org/promise/-/promise-8.0.1.tgz", @@ -8961,14 +8967,6 @@ "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=" }, - "string_decoder": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", - "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", - "requires": { - "safe-buffer": "5.1.1" - } - }, "string-length": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/string-length/-/string-length-1.0.1.tgz", @@ -9001,6 +8999,14 @@ } } }, + "string_decoder": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", + "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", + "requires": { + "safe-buffer": "5.1.1" + } + }, "stringstream": { "version": "0.0.5", "resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.5.tgz", diff --git a/package.json b/package.json index d3f2b10..09dc8a6 100644 --- a/package.json +++ b/package.json @@ -13,5 +13,8 @@ "build": "react-scripts build", "test": "react-scripts test --env=jsdom", "eject": "react-scripts eject" + }, + "devDependencies": { + "dotenv": "^6.0.0" } } diff --git a/sample.env b/sample.env new file mode 100644 index 0000000..4fb21f7 --- /dev/null +++ b/sample.env @@ -0,0 +1 @@ +REACT_APP_API_KEY = diff --git a/src/App.js b/src/App.js index 3f1c29a..c45aeed 100644 --- a/src/App.js +++ b/src/App.js @@ -4,7 +4,10 @@ import Titles from "./components/Titles"; import Form from "./components/Form"; import Weather from "./components/Weather"; -const API_KEY = "3585775f387b0d0cba6c5b3dc41b8167"; +// You can add an API key for production and replace null +const API_KEY = process.env.NODE_ENV === 'development' ? process.env.REACT_APP_API_KEY : null; + +console.log(process.env); class App extends React.Component { state = { @@ -21,6 +24,7 @@ class App extends React.Component { const country = e.target.elements.country.value; const api_call = await fetch(`http://api.openweathermap.org/data/2.5/weather?q=${city},${country}&appid=${API_KEY}&units=metric`); const data = await api_call.json(); + if (city && country) { this.setState({ temperature: data.main.temp, diff --git a/src/components/Form.js b/src/components/Form.js index b32d16f..6d8dfa9 100644 --- a/src/components/Form.js +++ b/src/components/Form.js @@ -2,8 +2,8 @@ import React from "react"; const Form = props => (
- - + +
); From ccbcb01bd6446f50f56a5dfea02550bc2a313635 Mon Sep 17 00:00:00 2001 From: Maison Moa Date: Fri, 28 Sep 2018 16:36:43 -0400 Subject: [PATCH 2/2] removed dotenv dev dependency --- package-lock.json | 6 ------ package.json | 4 +--- 2 files changed, 1 insertion(+), 9 deletions(-) diff --git a/package-lock.json b/package-lock.json index e0d39a2..ead6065 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2475,12 +2475,6 @@ "is-obj": "1.0.1" } }, - "dotenv": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-6.0.0.tgz", - "integrity": "sha512-FlWbnhgjtwD+uNLUGHbMykMOYQaTivdHEmYwAKFjn6GKe/CqY0fNae93ZHTd20snh9ZLr8mTzIL9m0APQ1pjQg==", - "dev": true - }, "dotenv-expand": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-4.0.1.tgz", diff --git a/package.json b/package.json index 09dc8a6..fbcb703 100644 --- a/package.json +++ b/package.json @@ -14,7 +14,5 @@ "test": "react-scripts test --env=jsdom", "eject": "react-scripts eject" }, - "devDependencies": { - "dotenv": "^6.0.0" - } + "devDependencies": {} }