diff --git a/webserver/package.json b/webserver/package.json
index c0ceb9a..5976d8e 100644
--- a/webserver/package.json
+++ b/webserver/package.json
@@ -17,7 +17,10 @@
"react-router": "^6.2.1",
"react-router-dom": "^6.2.1",
"react-scripts": "5.0.0",
- "web-vitals": "^2.1.3"
+ "web-vitals": "^2.1.3",
+ "@material-ui/core": "^4.12.3",
+ "@material-ui/icons": "^4.11.2"
+
},
"scripts": {
"start": "react-scripts start",
diff --git a/webserver/src/App.js b/webserver/src/App.jsx
similarity index 66%
rename from webserver/src/App.js
rename to webserver/src/App.jsx
index 2203370..cd1626d 100644
--- a/webserver/src/App.js
+++ b/webserver/src/App.jsx
@@ -16,10 +16,24 @@ import NotFoundPage from "./Pages/NotFoundPage";
import DashboardPage from "./Pages/DashboardPage/DashboardPage";
import WelcomePage from "./Pages/WelcomePage";
import InputPage from "./Pages/InputPage";
+import { createMuiTheme, ThemeProvider } from '@material-ui/core'
+import { Formik, Field, Form } from 'formik';
+import { TextField, Button, Grid, FormRow, Checkbox, Radio, FormControlLabel, FormControl, FormLabel, RadioGroup, IconButton, InputAdornment } from "@material-ui/core";
+import { AddCircleOutline, RemoveCircleOutline} from "@material-ui/icons";
+
+
function App() {
+ const darkTheme = createMuiTheme({
+
+ // Theme settings
+ palette: {
+ type: "dark",
+ },
+ });
return (
+
@@ -32,6 +46,7 @@ function App() {
+
);
}
diff --git a/webserver/src/DbContext.js b/webserver/src/DbContext.jsx
similarity index 100%
rename from webserver/src/DbContext.js
rename to webserver/src/DbContext.jsx
diff --git a/webserver/src/Pages/DashboardPage/DashboardPage.js b/webserver/src/Pages/DashboardPage/DashboardPage.jsx
similarity index 100%
rename from webserver/src/Pages/DashboardPage/DashboardPage.js
rename to webserver/src/Pages/DashboardPage/DashboardPage.jsx
diff --git a/webserver/src/Pages/InputPage.js b/webserver/src/Pages/InputPage.js
deleted file mode 100644
index 0d74554..0000000
--- a/webserver/src/Pages/InputPage.js
+++ /dev/null
@@ -1,73 +0,0 @@
-import React from 'react'
-import { useLocalDb } from '../DbContext';
-// import { Button, Intent, Spinner } from "@blueprintjs/core";
-import FormRenderer from '@data-driven-forms/react-form-renderer/form-renderer';
-import componentTypes from '@data-driven-forms/react-form-renderer/component-types';
-import componentMapper from '@data-driven-forms/blueprint-component-mapper/component-mapper';
-import FormTemplate from '@data-driven-forms/blueprint-component-mapper/form-template';
-
-const schema = {
- fields: [
- {
- component: componentTypes.TEXT_FIELD,
- name: 'name',
- label: 'Your name',
- isRequired: true,
- // validate: [{type: validatorTypes.REQUIRED}],
- default: 'Dave doe'
- },
- {
- name: "scoutedteam",
- label: "Team Scouted",
- component: componentTypes.TEXT_FIELD,
- isRequired: true
- },
- {
- name: "shooterpoints",
- label: "Shooter Points",
- component: componentTypes.TEXT_FIELD,
- isRequired: true
- },
- {
- name: "climberpoints",
- label: "Climber Points",
- component: componentTypes.TEXT_FIELD,
- isRequired: true
- },
- {
- name: "amountclimbed",
- label: "Amount of rungs Climbed",
- component: componentTypes.TEXT_FIELD,
- isRequired: true
- },
- {
- name: "amountshot",
- label: "Amount of balls shot",
- component: componentTypes.TEXT_FIELD,
- isRequired: true
- },
- {
- name: "amountclimbed",
- label: "Amount of balls in",
- component: componentTypes.TEXT_FIELD,
- isRequired: true
- }
-
- ]
-}
-
-const InputPage = () => {
- const localdb = useLocalDb();
- console.log(localdb);
- return (
-
-
-
- )
-}
-
-export default InputPage
\ No newline at end of file
diff --git a/webserver/src/Pages/InputPage.jsx b/webserver/src/Pages/InputPage.jsx
new file mode 100644
index 0000000..aedf4fa
--- /dev/null
+++ b/webserver/src/Pages/InputPage.jsx
@@ -0,0 +1,363 @@
+import React from "react";
+import { useLocalDb } from "../DbContext";
+// import { Button, Intent, Spinner } from "@blueprintjs/core";
+import FormRenderer from "@data-driven-forms/react-form-renderer/form-renderer";
+import componentTypes from "@data-driven-forms/react-form-renderer/component-types";
+import componentMapper from "@data-driven-forms/blueprint-component-mapper/component-mapper";
+import FormTemplate from "@data-driven-forms/blueprint-component-mapper/form-template";
+import { Formik, Field, Form } from "formik";
+import InputNumberField from "../components/InputNumberField.jsx";
+import {
+ TextField,
+ Button,
+ Grid,
+ FormRow,
+ Checkbox,
+ Radio,
+ FormControlLabel,
+ FormControl,
+ FormLabel,
+ RadioGroup,
+ IconButton,
+ InputAdornment,
+} from "@material-ui/core";
+import { AddCircleOutline, RemoveCircleOutline } from "@material-ui/icons";
+
+const InputPage = () => {
+ const localdb = useLocalDb();
+ console.log(localdb);
+ return (
+
+
{
+ setTimeout(() => {
+ localdb
+ .put({
+ _id: new Date().toISOString(),
+ ...values,
+ })
+ .then((result) => {
+ alert("Input Saved Successfully!");
+ console.log(result);
+ })
+ .catch((err) => {
+ console.log("Failed To Save Input!");
+ alert(err);
+ });
+ // alert(JSON.stringify(values, null, 2));
+ resetForm();
+ setSubmitting(false);
+ }, 400);
+ }}
+ >
+ {({
+ values,
+ setValues,
+ errors,
+ touched,
+ handleChange,
+ handleBlur,
+ handleSubmit,
+ isSubmitting,
+ }) => (
+
+ )}
+
+
+ );
+};
+
+export default InputPage;
diff --git a/webserver/src/Pages/NotFoundPage.js b/webserver/src/Pages/NotFoundPage.jsx
similarity index 100%
rename from webserver/src/Pages/NotFoundPage.js
rename to webserver/src/Pages/NotFoundPage.jsx
diff --git a/webserver/src/Pages/WelcomePage.css b/webserver/src/Pages/WelcomePage.css
index 1a25e1e..e2cbb0a 100644
--- a/webserver/src/Pages/WelcomePage.css
+++ b/webserver/src/Pages/WelcomePage.css
@@ -1,6 +1,12 @@
-.center {
+.welcome {
display: block;
- margin-left: auto;
- margin-right: auto;
- width: 50%;
- }
\ No newline at end of file
+ /* margin-left: auto;
+ margin-right: auto; */
+ width: 100%;
+ text-align: center;
+ margin: auto;
+}
+
+.welcome img {
+ max-width: 100%;
+}
\ No newline at end of file
diff --git a/webserver/src/Pages/WelcomePage.js b/webserver/src/Pages/WelcomePage.jsx
similarity index 84%
rename from webserver/src/Pages/WelcomePage.js
rename to webserver/src/Pages/WelcomePage.jsx
index 15c1dff..dacee5a 100644
--- a/webserver/src/Pages/WelcomePage.js
+++ b/webserver/src/Pages/WelcomePage.jsx
@@ -3,7 +3,7 @@ import "./WelcomePage.css";
import "../App.css";
const WelcomePage = () => {
return (
-