diff --git a/.eslintrc.json b/.eslintrc.json
index d50577a..7050118 100644
--- a/.eslintrc.json
+++ b/.eslintrc.json
@@ -1,45 +1,42 @@
{
- "env": {
- "browser": true,
- "es6": true
+ "env": {
+ "browser": true,
+ "es6": true
+ },
+ "extends": ["airbnb"],
+ "globals": {
+ "Atomics": "readonly",
+ "SharedArrayBuffer": "readonly"
+ },
+ "parser": "@typescript-eslint/parser",
+ "parserOptions": {
+ "ecmaFeatures": {
+ "jsx": true
},
- "extends": [
- "airbnb"
- ],
- "globals": {
- "Atomics": "readonly",
- "SharedArrayBuffer": "readonly"
- },
- "parser": "@typescript-eslint/parser",
- "parserOptions": {
- "ecmaFeatures": {
- "jsx": true
- },
- "ecmaVersion": 2018,
- "sourceType": "module"
- },
- "plugins": [
- "react",
- "@typescript-eslint"
- ],
- // rules: 1 is warning, 2 is error, off is ignore
- "rules": {
- "import/extensions": "off",
- "react/jsx-filename-extension": "off",
- "no-alert": 1,
- "import/no-duplicates": 1,
- "import/no-unresolved": "off",
- "max-len": "off",
- "react/prefer-stateless-function": "off",
- "react/sort-comp": 1,
- "jsx-a11y/label-has-associated-control": 1,
- "react/destructuring-assignment": 1,
- "jsx-a11y/control-has-associated-label": 1,
- "jsx-a11y/click-events-have-key-events": 1,
- "jsx-a11y/no-static-element-interactions": 1,
- "jsx-a11y/anchor-is-valid": 1,
- "react/no-did-update-set-state": "off",
- "max-classes-per-file": 1,
- "no-unused-vars": "off"
- }
-}
\ No newline at end of file
+ "ecmaVersion": 2018,
+ "sourceType": "module"
+ },
+ "plugins": ["react", "@typescript-eslint"],
+ // rules: 1 is warning, 2 is error, off is ignore
+ "rules": {
+ "import/extensions": "off",
+ "react/jsx-filename-extension": "off",
+ "no-alert": 1,
+ "import/no-duplicates": 1,
+ "import/no-unresolved": "off",
+ "max-len": "off",
+ "react/prefer-stateless-function": "off",
+ "react/sort-comp": 1,
+ "jsx-a11y/label-has-associated-control": 1,
+ "react/destructuring-assignment": 1,
+ "jsx-a11y/control-has-associated-label": 1,
+ "jsx-a11y/click-events-have-key-events": 1,
+ "jsx-a11y/no-static-element-interactions": 1,
+ "jsx-a11y/anchor-is-valid": 1,
+ "react/no-did-update-set-state": "off",
+ "max-classes-per-file": 1,
+ "no-unused-vars": "off",
+ "react/no-unused-prop-types": "off",
+ "react/prop-types": "off"
+ }
+}
diff --git a/package.json b/package.json
index 66f3728..7ebf508 100644
--- a/package.json
+++ b/package.json
@@ -12,6 +12,7 @@
"@types/react": "^16.9.35",
"@types/react-router-dom": "^5.1.5",
"bootstrap": "^4.5.0",
+ "braintree-web": "^3.84.0",
"file-loader": "5.0.2",
"jquery": "^3.5.1",
"jwt-decode": "^2.2.0",
@@ -170,7 +171,8 @@
"s",
"vh",
"vw",
- "deg"
+ "deg",
+ "fr"
]
}
}
diff --git a/src/App.tsx b/src/App.tsx
index 2dcf74d..ea003c2 100644
--- a/src/App.tsx
+++ b/src/App.tsx
@@ -8,6 +8,7 @@ import {
import './static/styles/App.scss';
import { Helmet } from 'react-helmet';
import ReactGA from 'react-ga';
+import PropTypes from 'prop-types';
import Header from './components/Header';
import Error from './components/Error';
import Footer from './components/Footer';
@@ -16,7 +17,10 @@ import AboutUs from './components/AboutUs';
import ContactUs from './components/ContactUs';
import Issue from './components/Issue';
import Stories from './components/Stories';
-import AboutTeam from './components/AboutTeam';
+import Donation from './components/Donation';
+import ThankYouDonate from './components/ThankYouDonate';
+import Information from './components/Information';
+import SelectAmount from './components/SelectAmount';
window.onload = () => {
ReactGA.initialize('G-H1CSQJ6BGQ');
@@ -46,12 +50,12 @@ class App extends React.Component<{}, State, {}> {