Skip to content

Commit 7645790

Browse files
committed
project: clean up types, test and build
1 parent 8bcf168 commit 7645790

File tree

9 files changed

+21
-17
lines changed

9 files changed

+21
-17
lines changed

packages/frontendmentor/fem-rock-paper-scissors-game/src/App.tsx

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,7 @@ import { useState } from 'react'
22

33
import styled from "styled-components";
44

5-
import { ThemeProvider, createGlobalStyle } from 'styled-components';
6-
7-
import { PrimaryButton } from "./components/Button";
5+
import { ThemeProvider } from 'styled-components';
86

97
import theme from "./Theme";
108
import GlobalStyle from "./GlobalStyle";

packages/frontendmentor/fem-rock-paper-scissors-game/src/Utils.tsx

Lines changed: 0 additions & 1 deletion
This file was deleted.
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
declare module "*.svg" {
2+
const content: any;
3+
export default content;
4+
}

packages/frontendmentor/fem-rock-paper-scissors-game/src/components/Game.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import styled from "styled-components";
22
import { GameProps, Gestures } from "../types";
33
import Gesture from "./Gesture";
4-
import { useState, useEffect } from "react";
4+
import { useState } from "react";
55
import GameBackground from "../assets/bg-triangle.svg";
66

77
import MoveState from "./MoveState";
@@ -41,7 +41,7 @@ function getMove(): Gestures {
4141

4242
export default function ({ setScore, score }: GameProps) {
4343
const [currentMove, setCurrentMove] = useState<Gestures | null>(null);
44-
const [opponentMove, setOpponentMove] = useState<Gestures>(getMove());
44+
const [opponentMove, _] = useState<Gestures>(getMove());
4545
const gestures = [Gestures.rock, Gestures.paper, Gestures.scissors];
4646

4747

packages/frontendmentor/fem-rock-paper-scissors-game/src/components/Gesture.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import RockIcon from "../assets/icon-rock.svg";
44
import PaperIcon from "../assets/icon-paper.svg";
55
import ScissorsIcon from "../assets/icon-scissors.svg";
66

7-
const GestureBase = styled.div`
7+
const GestureBase = styled("div")<GestureProps>`
88
width: 120px;
99
height: 120px;
1010
border-radius: 999px;

packages/frontendmentor/fem-rock-paper-scissors-game/src/components/MoveState.tsx

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -154,17 +154,19 @@ export default function Move(props: MoveStateProps) {
154154
const outcomeMessage = getOutcomeMessage(outcome);
155155
setMessage(outcomeMessage);
156156

157+
let score = props.score;
158+
157159
if (outcome === GameOutcome.PlayerWins) {
158-
props.setScore(prevScore => prevScore + 3);
160+
props.setScore(score + 3);
159161
} else if (outcome === GameOutcome.HouseWins) {
160-
props.setScore(prevScore => prevScore - 2);
162+
props.setScore(score - 2);
161163
} else if (outcome === GameOutcome.Tie) {
162-
props.setScore(prevScore => prevScore + 1);
164+
props.setScore(score + 1);
163165
}
164166
}, [props.player, props.house]);
165167

166-
const handleClick = () => {
167-
props.onClick();
168+
const handleClick = (e: any) => {
169+
(props.onClick as any)(e);
168170
};
169171

170172
return (

packages/frontendmentor/fem-rock-paper-scissors-game/src/components/ScoreBoard.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import styled from "styled-components";
22

3-
import { ScoreBoardProps } from "./types";
3+
import { ScoreBoardProps } from "../types";
44

55
const Box = styled.div`
66
display: flex;
@@ -65,7 +65,7 @@ export default function ({ score, gestures }: ScoreBoardProps ) {
6565
return (
6666
<ScoreContainer>
6767
<Box>
68-
{gestures.map(e => <Gesture key={e}>{e}</Gesture>)}
68+
{gestures.map((e: any) => <Gesture key={e}>{e}</Gesture>)}
6969
</Box>
7070

7171
<ScoreBox>

packages/frontendmentor/fem-rock-paper-scissors-game/src/types.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,12 +26,13 @@ export interface GameProps {
2626
export interface GestureProps {
2727
type: Gestures;
2828
onClick?: (e: any) => void;
29+
isWinner?: boolean;
2930
}
3031

3132

3233
export interface MoveStateProps {
33-
player: Gesture,
34-
house: Gesture,
34+
player: Gestures,
35+
house: Gestures,
3536
onClick?: (e: any) => void;
3637
setScore: (e: number) => void;
3738
score: number;

packages/frontendmentor/fem-rock-paper-scissors-game/tsconfig.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,6 @@
2020
"noUnusedParameters": true,
2121
"noFallthroughCasesInSwitch": true
2222
},
23-
"include": ["src"],
23+
"include": ["src", "./src/assets.d.ts"],
2424
"references": [{ "path": "./tsconfig.node.json" }]
2525
}

0 commit comments

Comments
 (0)