From a9db9060bd2d3f159fc9b0fd54212afbbb44df33 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=C3=A3o=20Lobo?= <30907944+joaodiaslobo@users.noreply.github.com> Date: Sat, 28 Oct 2023 02:45:52 +0100 Subject: [PATCH 01/10] feat: improve wheel (#560) * feat: improve wheel design * feat: disable button when wheel is spinning --- layout/Attendee/Wheel/Wheel.tsx | 118 +++++++++--------- .../Wheel/components/WheelComponent/index.tsx | 4 +- lib/api.js | 2 - public/images/wheel-arrow.svg | 3 + 4 files changed, 65 insertions(+), 62 deletions(-) create mode 100644 public/images/wheel-arrow.svg diff --git a/layout/Attendee/Wheel/Wheel.tsx b/layout/Attendee/Wheel/Wheel.tsx index 82d7fb42..2175be07 100644 --- a/layout/Attendee/Wheel/Wheel.tsx +++ b/layout/Attendee/Wheel/Wheel.tsx @@ -73,71 +73,73 @@ function WheelPage() { useEffect(requestAllInfo, []); const canSpin = () => { - return user.token_balance >= 20; + return user.token_balance >= 20 && !isSpinning; }; const spinTheWheel = () => { setIsSpinning(true); updateState({ angle: 0, speed: angleSpeed }); - spinWheel() - .then((response) => { - if (response.tokens) { + user.token_balance -= 20; + setTimeout(() => { + spinWheel() + .then((response) => { + if (response.tokens) { + updateWheelMessage( + updateWheelMessage(null)} + /> + ); + } else if (response.badge) { + updateWheelMessage( + updateWheelMessage(null)} + /> + ); + } else if (response.entries) { + updateWheelMessage( + updateWheelMessage(null)} + /> + ); + } else if (response.prize.name == "Nada") { + updateWheelMessage( + updateWheelMessage(null)} + /> + ); + } else { + updateWheelMessage( + updateWheelMessage(null)} + /> + ); + } + }) + .catch((_) => { updateWheelMessage( updateWheelMessage(null)} /> ); - } else if (response.badge) { - updateWheelMessage( - updateWheelMessage(null)} - /> - ); - } else if (response.entries) { - updateWheelMessage( - updateWheelMessage(null)} - /> - ); - } else if (response.prize.name == "Nada") { - updateWheelMessage( - updateWheelMessage(null)} - /> - ); - } else { - //TODO:: CHANGE THIS MESSAGE - updateWheelMessage( - updateWheelMessage(null)} - /> - ); - } - }) - .catch((_) => { - updateWheelMessage( - updateWheelMessage(null)} - /> - ); - }) - .finally(() => { - requestAllInfo(); - refetchUser(); - setIsSpinning(false); - }); + }) + .finally(() => { + requestAllInfo(); + refetchUser(); + setIsSpinning(false); + }); + }, 5000); }; const changeState = () => { @@ -196,11 +198,11 @@ function WheelPage() { ? "cursor-pointer bg-quinary" : "bg-gray-400 opacity-50" } m-auto mt-10 block h-20 w-64 rounded-full`} - disabled={!canSpin() || isSpinning} + disabled={!canSpin()} onClick={spinTheWheel} > -

SPIN THE WHEEL

-

20 tokens💰

+

SPIN THE WHEEL

+

20 tokens💰

diff --git a/layout/Attendee/Wheel/components/WheelComponent/index.tsx b/layout/Attendee/Wheel/components/WheelComponent/index.tsx index 61b80089..2d57a785 100644 --- a/layout/Attendee/Wheel/components/WheelComponent/index.tsx +++ b/layout/Attendee/Wheel/components/WheelComponent/index.tsx @@ -48,8 +48,8 @@ export default function Wheel({ steps, angle }) { > {borders} -
- ↑ +
+
); diff --git a/lib/api.js b/lib/api.js index a8ef589e..19155ee0 100644 --- a/lib/api.js +++ b/lib/api.js @@ -157,8 +157,6 @@ export async function getWheelLatestWins() { export async function spinWheel() { const response = await API.post("/api/v1/roulette"); - await new Promise((r) => setTimeout(r, 5000)); - return response.data; } diff --git a/public/images/wheel-arrow.svg b/public/images/wheel-arrow.svg new file mode 100644 index 00000000..73000ad2 --- /dev/null +++ b/public/images/wheel-arrow.svg @@ -0,0 +1,3 @@ + + + From 7e996a4f4fe08a2be1ace61bbf3b5c5cc195f07d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A1rio=20Rodrigues?= <93675410+MarioRodrigues10@users.noreply.github.com> Date: Sat, 28 Oct 2023 19:43:30 +0100 Subject: [PATCH 02/10] Update README banner (#563) --- .github/brand/sei-banner24.png | Bin 0 -> 89605 bytes README.md | 4 ++-- 2 files changed, 2 insertions(+), 2 deletions(-) create mode 100644 .github/brand/sei-banner24.png diff --git a/.github/brand/sei-banner24.png b/.github/brand/sei-banner24.png new file mode 100644 index 0000000000000000000000000000000000000000..742f90f15010758f6d1db12999bd922537b9b949 GIT binary patch literal 89605 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