Skip to content

Commit 8f119d0

Browse files
committed
Merge branch 'release-0.2.14' into main
2 parents e18ccb9 + e4cc4b9 commit 8f119d0

File tree

65 files changed

+2483
-4598
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

65 files changed

+2483
-4598
lines changed
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
---
2+
name: Feature request
3+
about: Suggest an idea for this project
4+
title: 'Feature Suggestion: '
5+
labels: documentation, product
6+
assignees: ''
7+
8+
---
9+
10+
### Overview
11+
Please write a user story for this feature suggestion in the following format: As a ______, I want to do X for Y reason and replace this text with it.
12+
13+
### Action Items
14+
- [ ] Define your Feature Suggestion
15+
- [ ] What is the feature you are suggesting?
16+
- [ ] Is this feature urgent
17+
- [ ] if so why?
18+
- [ ] How long do you expect it take to implement this issue?
19+
- [ ] Who is needed to implement this feature (Could you implement it yourself?)
20+
- [ ] Design
21+
- [ ] Front End
22+
- [ ] Back End
23+
- [ ] Database
24+
- [ ] What problem does this feature solve?
25+
- [ ] What technologies are needed for this feature?
26+
27+
### Resources/Instructions
28+
If there is a website which has documentation that helps with this issue provide the link(s) here:
29+
30+
31+
**Additional context**
32+
Add any other context or screenshots about the feature request here.

client/package-lock.json

Lines changed: 1662 additions & 2037 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

client/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "client",
3-
"version": "0.2.13",
3+
"version": "0.2.14",
44
"private": true,
55
"proxy": "http://localhost:5000",
66
"dependencies": {

client/src/App.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@ import Projects from "./components/Projects";
88
import Header from "./components/Header";
99
import Footer from "./components/Footer";
1010
import About from "./components/About";
11+
import TermsAndConditions from "./components/TermsAndConditions";
12+
import PrivacyPolicy from "./components/PrivacyPolicy";
1113
import ContactUs from "./components/ContactUs";
1214
import Register from "./components/Authorization/Register";
1315
import ConfirmEmail from "./components/Authorization/ConfirmEmail";
@@ -100,6 +102,8 @@ const App = () => {
100102
render={() => <Projects account={account} />}
101103
/>
102104
<Route path="/about" component={About} />
105+
<Route path="/termsandconditions" component={TermsAndConditions} />
106+
<Route path="/privacypolicy" component={PrivacyPolicy} />
103107
<Route path="/register/:email?" component={Register} />
104108
<Route path="/confirm/:token" component={ConfirmEmail} />
105109
<Route
Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
import React from "react";
2+
import PropTypes from "prop-types";
3+
import { createUseStyles, useTheme } from "react-jss";
4+
import clsx from "clsx";
5+
6+
const useStyles = createUseStyles({
7+
root: {
8+
color: ({ theme }) => theme.colorText,
9+
cursor: "pointer",
10+
fontFamily: "Calibri Bold",
11+
height: "min-content",
12+
margin: "0.5em",
13+
padding: "0.5em 1em",
14+
textAlign: "center",
15+
textTransform: "uppercase",
16+
//TODO: Move these when we figure out size-related props
17+
letterSpacing: "0.05em",
18+
fontSize: "20px"
19+
},
20+
contained: {
21+
backgroundColor: ({ theme, color }) => theme[color],
22+
borderColor: "rgba(0, 0, 0, .05)", //lightest grey
23+
boxShadow: "rgba(0, 46, 109, 0.3) 1px 2px 3px"
24+
},
25+
outlined: {
26+
backgroundColor: ({ theme }) => theme.colorWhite,
27+
borderColor: "rgba(0, 46, 109, .2)", //medium grey
28+
borderWidth: "thin"
29+
}
30+
});
31+
32+
const Button = ({
33+
children,
34+
className,
35+
isDisplayed = true,
36+
onClick,
37+
variant = "contained",
38+
color = "colorDefault"
39+
}) => {
40+
const theme = useTheme();
41+
const classes = useStyles({ color, theme });
42+
43+
if (!isDisplayed) return null;
44+
return (
45+
<button
46+
className={clsx(classes.root, classes[variant], className)}
47+
onClick={onClick}
48+
>
49+
{children}
50+
</button>
51+
);
52+
};
53+
54+
Button.propTypes = {
55+
onClick: PropTypes.func,
56+
children: PropTypes.string,
57+
size: PropTypes.string,
58+
variant: PropTypes.string,
59+
isDisplayed: PropTypes.bool,
60+
className: PropTypes.string,
61+
color: PropTypes.string
62+
};
63+
64+
export default Button;
Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
import React from "react";
2+
import PropTypes from "prop-types";
3+
import { createUseStyles, useTheme } from "react-jss";
4+
import { faAngleLeft, faAngleRight } from "@fortawesome/free-solid-svg-icons";
5+
import { FontAwesomeIcon } from "@fortawesome/react-fontawesome";
6+
import clsx from "clsx";
7+
8+
const useStyles = createUseStyles({
9+
root: {
10+
cursor: "pointer",
11+
padding: "0.35em 0.7em",
12+
margin: "0.5em",
13+
fontSize: "2em",
14+
border: "1px solid rgba(0, 0, 0, 0.1)",
15+
boxShadow: "rgba(0, 46, 109, 0.3) 0px 3px 5px",
16+
backgroundColor: ({ theme }) => theme.colorPrimary,
17+
"&:focus": {
18+
borderRadius: "none"
19+
}
20+
},
21+
wizardNavButtonDisabled: {
22+
backgroundColor: ({ theme }) => theme.colorDisabled,
23+
cursor: "default"
24+
},
25+
hidden: {
26+
visibility: "hidden"
27+
},
28+
"@media print": {
29+
root: {
30+
display: "none"
31+
}
32+
}
33+
});
34+
35+
const NavButton = ({ id, onClick, navDirection, isVisible, isDisabled }) => {
36+
const theme = useTheme();
37+
const classes = useStyles({ theme });
38+
const maybeDisabled = isDisabled && classes.wizardNavButtonDisabled;
39+
const maybeHiddenVisibility = !isVisible && classes.hidden;
40+
41+
return (
42+
<button
43+
id={id}
44+
className={clsx(classes.root, maybeDisabled, maybeHiddenVisibility)}
45+
data-testid={id}
46+
onClick={onClick}
47+
disabled={isDisabled}
48+
>
49+
<FontAwesomeIcon
50+
icon={navDirection === "previous" ? faAngleLeft : faAngleRight}
51+
/>
52+
</button>
53+
);
54+
};
55+
56+
NavButton.propTypes = {
57+
children: PropTypes.object,
58+
onClick: PropTypes.func.isRequired,
59+
id: PropTypes.string.isRequired,
60+
navDirection: PropTypes.string.isRequired,
61+
isVisible: PropTypes.bool.isRequired,
62+
isDisabled: PropTypes.bool.isRequired
63+
};
64+
65+
export default NavButton;
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
import React from "react";
2+
import PropTypes from "prop-types";
3+
import { createUseStyles, useTheme } from "react-jss";
4+
import Button from "./Button";
5+
6+
const useStyles = createUseStyles({
7+
switchView: {
8+
fontSize: "16px"
9+
}
10+
});
11+
12+
const SwitchViewButton = ({ children, onViewChange, isDisplayed = true }) => {
13+
const theme = useTheme();
14+
const styles = useStyles({ theme });
15+
16+
if (!isDisplayed) return null;
17+
return (
18+
<Button className={styles.switchView} onClick={onViewChange}>
19+
{children}
20+
</Button>
21+
);
22+
};
23+
24+
SwitchViewButton.propTypes = {
25+
onViewChange: PropTypes.func,
26+
children: PropTypes.string,
27+
isDisplayed: PropTypes.bool
28+
};
29+
30+
export default SwitchViewButton;

client/src/components/Footer.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,11 @@ const Footer = () => {
3030
return (
3131
<footer className={classes.root}>
3232
<div className={classes.links}>
33-
<Link className={classes.link} to="/">
33+
<Link className={classes.link} to="/termsandconditions">
3434
Terms and Conditions
3535
</Link>
3636
<div>|</div>
37-
<Link className={classes.link} to="/">
37+
<Link className={classes.link} to="/privacypolicy">
3838
Privacy Policy
3939
</Link>
4040
</div>
Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
import React from "react";
2+
import SideBar from "./Sidebar";
3+
import clsx from "clsx";
4+
import { createUseStyles } from "react-jss";
5+
6+
import { version } from "../../package.json";
7+
8+
const useStyles = createUseStyles({
9+
root: {
10+
flex: "1 0 auto",
11+
display: "flex",
12+
flexDirection: "column"
13+
},
14+
tdmWizard: {
15+
flex: "1 0 auto",
16+
display: "flex",
17+
flexDirection: "row"
18+
},
19+
aboutText: {
20+
maxWidth: "500px",
21+
minWidth: 300,
22+
padding: "0 2em"
23+
},
24+
"@media (max-width: 768px)": {
25+
aboutText: {
26+
padding: "0"
27+
}
28+
},
29+
link: {
30+
textDecoration: "underline",
31+
fontWeight: "bold"
32+
}
33+
});
34+
35+
const PrivacyPolicy = () => {
36+
const classes = useStyles();
37+
return (
38+
<div className={classes.root}>
39+
<div className={clsx("tdm-wizard", classes.tdmWizard)}>
40+
<SideBar />
41+
<div className="tdm-wizard-content-container">
42+
<h2>Privacy Policy</h2>
43+
<br />
44+
<div className={classes.aboutText}>
45+
<p>
46+
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
47+
eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut
48+
enim ad minim veniam, quis nostrud exercitation ullamco laboris
49+
nisi ut aliquip ex ea commodo consequat.
50+
</p>
51+
<p>
52+
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
53+
eiusmod tempor incididunt ut labore et dolore magna aliqua.
54+
</p>
55+
<p>
56+
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
57+
eiusmod tempor incididunt ut labore et dolore magna aliqua.
58+
</p>
59+
<p>
60+
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
61+
eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut
62+
enim ad minim veniam, quis nostrud exercitation ullamco laboris
63+
nisi ut aliquip ex ea commodo consequat.
64+
</p>
65+
<p>
66+
To find more about Hack for LA and their work to improve Los
67+
Angeles please visit:{" "}
68+
<a className={classes.link} href="http://www.hackforla.org">
69+
www.hackforla.org
70+
</a>
71+
</p>
72+
</div>
73+
<p>{`Release #: ${version}`}</p>
74+
</div>
75+
</div>
76+
</div>
77+
);
78+
};
79+
80+
export default PrivacyPolicy;

client/src/components/ProjectSinglePage/TdmCalculation.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import PropTypes from "prop-types";
33
import { createUseStyles } from "react-jss";
44
import RulePanels from "./RulePanels";
55
import ResultList from "./ResultList";
6-
import SwitchViewButton from "../SwitchViewButton";
6+
import SwitchViewButton from "../Button/SwitchViewButton";
77

88
const useStyles = createUseStyles({
99
root: {
@@ -116,7 +116,7 @@ const TdmCalculation = props => {
116116
<div className={classes.container}>
117117
<div className={classes.switchButtonWrapper}>
118118
<div className={classes.switchButton}>
119-
<SwitchViewButton onClick={props.onViewChange}>
119+
<SwitchViewButton onViewChange={props.onViewChange}>
120120
Switch to Wizard View
121121
</SwitchViewButton>
122122
</div>

client/src/components/ProjectWizard/NavButton.js

Lines changed: 0 additions & 33 deletions
This file was deleted.

0 commit comments

Comments
 (0)