Stian Fredrik Aune 4 years ago
parent
commit
e1881c4de9
  1. 23
      my-bois/src/components/Bois.jsx
  2. 4
      my-bois/src/components/Score.jsx
  3. 8
      my-bois/src/helpers/color.js
  4. 3
      my-bois/src/hooks/net.js

23
my-bois/src/components/Bois.jsx

@ -1,4 +1,4 @@
import React, {useContext, useEffect, useState} from 'react';
import React, {useCallback, useContext, useEffect, useState} from 'react';
import "./Bois.css"; import "./Bois.css";
import {StatusContext} from "./Contexts"; import {StatusContext} from "./Contexts";
@ -17,7 +17,7 @@ const Boi = ({type, children}) => {
}; };
export const LeftBoi = () => { export const LeftBoi = () => {
const {prevLongDiff, workout, workoutStatus, program, hidden} = useContext(StatusContext);
const {prevDiff, prevLongDiff, workout, workoutStatus, program, hidden} = useContext(StatusContext);
if (workoutStatus === null || workout === null || program === null || hidden) { if (workoutStatus === null || workout === null || program === null || hidden) {
return null; return null;
} }
@ -30,7 +30,7 @@ export const LeftBoi = () => {
return ( return (
<Boi type="left"> <Boi type="left">
<Timer minutes={minutes} seconds={seconds} cooldownMin={cooldownMin}/> <Timer minutes={minutes} seconds={seconds} cooldownMin={cooldownMin}/>
<CalorieScore calories={calories} diff={diff} prevDiff={prevLongDiff}/>
<CalorieScore calories={calories} diff={diff} prevDiff={prevLongDiff} stonks={prevDiff}/>
<RpmScore rpm={rpm}/> <RpmScore rpm={rpm}/>
<CpmScore cpm={cpm}/> <CpmScore cpm={cpm}/>
<LevelScore level={level}/> <LevelScore level={level}/>
@ -110,15 +110,22 @@ export const CentreBoi = () => {
return false; return false;
}); });
useKey("Escape", () => {
const showHide = useCallback(() => {
setHidden(!hidden);
}, [setHidden, hidden]);
const stopRun = useCallback(() => {
if (state === "connected") { if (state === "connected") {
stop(); stop();
setHidden(false);
return true; return true;
} }
});
}, [state, stop, setHidden]);
useKey("Escape", stopRun);
useKey(["H", "h"], () => showHide());
useKey(["H", "h", "/"], showHide);
useKey("*", () => { useKey("*", () => {
if (state === "started" || state === "connected") { if (state === "started" || state === "connected") {
@ -126,10 +133,6 @@ export const CentreBoi = () => {
} }
}); });
function showHide() {
setHidden(!hidden);
}
if (hidden) { if (hidden) {
return null; return null;
} }

4
my-bois/src/components/Score.jsx

@ -40,8 +40,8 @@ export const Timer = ({minutes, seconds, cooldownMin}) => {
); );
}; };
export const CalorieScore = ({calories, diff, prevDiff}) => (
<Score value={calories} color={colorByDiff(diff, prevDiff)} suffix="kal"/>
export const CalorieScore = ({calories, diff, prevDiff, stonks}) => (
<Score value={calories} color={colorByDiff(diff, prevDiff, stonks || 0)} suffix="kal"/>
); );
export const LevelScore = ({level}) => <Score value={level} suffix="lvl"/>; export const LevelScore = ({level}) => <Score value={level} suffix="lvl"/>;

8
my-bois/src/helpers/color.js

@ -5,7 +5,13 @@ export const COLOR_NEUTRAL = "#FFF";
export const COLOR_GOOD = "#BFB"; export const COLOR_GOOD = "#BFB";
export const COLOR_VERY_GOOD = "#6F6"; export const COLOR_VERY_GOOD = "#6F6";
export const colorByDiff = (diff, prevDiff) => {
export const COLOR_STONKS_GOOD = "#3A3";
export const colorByDiff = (diff, prevDiff, stonksDiff = 0) => {
if (stonksDiff > 0 && diff > 0 && diff > stonksDiff) {
return COLOR_STONKS_GOOD
}
if (diff < 0) { if (diff < 0) {
return diff < prevDiff ? COLOR_VERY_BAD : COLOR_BAD; return diff < prevDiff ? COLOR_VERY_BAD : COLOR_BAD;
} else { } else {

3
my-bois/src/hooks/net.js

@ -43,7 +43,8 @@ export function openWebsocket(workout) {
async function runBack(query) { async function runBack(query) {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
window.chrome.runtime.sendMessage(query, result => {
/* global chrome */
window chrome.runtime.sendMessage(query, result => {
if (result.success) { if (result.success) {
resolve(result.data) resolve(result.data)
} else { } else {

Loading…
Cancel
Save