From b81e408df743850b5eecc2ca0cb911906ac12c8c Mon Sep 17 00:00:00 2001 From: Pierre Ferreira Date: Fri, 10 Nov 2023 10:30:42 +0100 Subject: [PATCH 01/11] ajout de l'interface pour la page de jeu, tout est en absolute, et les boutons affiches des canvas factices --- .../src/Components/GraphContainer.css | 10 ++- cryptide_project/src/Pages/InGame.css | 89 +++++++++++++++++++ cryptide_project/src/Pages/InGame.tsx | 81 ++++++++++++++++- 3 files changed, 174 insertions(+), 6 deletions(-) diff --git a/cryptide_project/src/Components/GraphContainer.css b/cryptide_project/src/Components/GraphContainer.css index 90bd294..2fd8b58 100644 --- a/cryptide_project/src/Components/GraphContainer.css +++ b/cryptide_project/src/Components/GraphContainer.css @@ -1,10 +1,14 @@ #graph-container { width: 100%; - height: 75vh; + height: 100vh; + /* padding: 20px; */ + + /* border-radius: 25px; */ + box-sizing: border-box; + display: flex; flex-direction: column; align-items: center; + background-color: #f5f5f5; - padding: 20px; - box-sizing: border-box; } \ No newline at end of file diff --git a/cryptide_project/src/Pages/InGame.css b/cryptide_project/src/Pages/InGame.css index e69de29..138125c 100644 --- a/cryptide_project/src/Pages/InGame.css +++ b/cryptide_project/src/Pages/InGame.css @@ -0,0 +1,89 @@ +.upperInfo{ + display: flex; + justify-content: center; + flex-direction: column; + align-items: center; + + width: 30%; + + border-radius: 0px 0px 30px 30px; + border: solid #85C9C2; + border-width: 2px 5px; + + background-color: white; + + font-size: 30px; + + top: 20px;; +} + +#mainDiv{ + display: flex; + align-items: center; + justify-content: center; + flex-direction: column; +} + + +.paramDiv{ + z-index: 1; + position: absolute; + top: 10px; + right: 10px; +} + +#graphDiv{ + + display: flex; + flex-direction: row; + + position: absolute; + + top: 0; + left: 0; + right: 0; + bottom: 0; +} + +#bottom-container{ + bottom: 0; + + background-color: white; + padding:20px; + border-radius: 20px 20px 0px 0px; +} + +.playerlistDiv{ + position: absolute; + z-index: 1; + left: 10px; + top :50; +} + +#endgamebutton{ + position: absolute; + z-index: 1; + bottom: 0; + right: 25%; +} + +.upperInfo, +#bottom-container, +.menuGame { + position: absolute; + z-index: 1; +} + +.menuGame{ + display: flex; + align-items: space-between; + justify-content: end; + flex-direction: column; + + top:70%; + right: 0; +} + +.menuGame Button { + margin: 10px; +} \ No newline at end of file diff --git a/cryptide_project/src/Pages/InGame.tsx b/cryptide_project/src/Pages/InGame.tsx index 81fa7b8..f765c9b 100644 --- a/cryptide_project/src/Pages/InGame.tsx +++ b/cryptide_project/src/Pages/InGame.tsx @@ -1,5 +1,8 @@ import React, { useState } from 'react'; +/* Style */ +import "./InGame.css" + /* Component */ import GraphContainer from '../Components/GraphContainer'; import ChoiceBar from '../Components/ChoiceBar'; @@ -7,6 +10,13 @@ import ButtonImgNav from '../Components/ButtonImgNav'; /* Icon */ import Leave from "../res/icon/leave.png"; +import Param from "../res/icon/param.png"; +import Replay from "../res/icon/replay.png"; + +/* Boostrap */ +import Button from 'react-bootstrap/Button'; +import Offcanvas from 'react-bootstrap/Offcanvas'; +import PersonStatus from '../Components/PersonStatus'; const InGame = () => { const [showChoiceBar, setShowChoiceBar] = useState(false); @@ -15,13 +25,78 @@ const InGame = () => { setShowChoiceBar(shouldShowChoiceBar); }; + /* offcanvas */ + const [show, setShow] = useState(false); + const handleClose = () => setShow(false); + const handleShow = () => setShow(true); + + const [showP, setShowP] = useState(false); + const handleCloseP = () => setShowP(false); + const handleShowP = () => setShowP(true); return ( -
- +
+
+ {/* texte changeable et a traduire */} +

Dummy, à vous de jouer !

+
+
+ +
+ +
+ +
+ +
+ +
+ + +
+ + + +
+ + + Joueurs +

Il y a 3 joueurs

+
+ + {/* affichage d'une liste responsive dynamic */} + + + + +
+ + + + Indice + + + Possède les cheveux noir ou joue au basket + + +
{showChoiceBar && }
-
{/* tmp */} +
{/* tmp */}
From 24f2a55288efc563e980c402a1684dbf3d6479cb Mon Sep 17 00:00:00 2001 From: Pierre Ferreira Date: Fri, 10 Nov 2023 11:11:24 +0100 Subject: [PATCH 02/11] ajout d'icone grec et style sur les boutons de l'interface de jeu :lipstick: --- cryptide_project/src/Pages/InGame.css | 12 ++++++- cryptide_project/src/Pages/InGame.tsx | 32 ++++++++++-------- .../src/res/GreekLetters/alphaW.png | Bin 0 -> 1560 bytes .../src/res/GreekLetters/betaW.png | Bin 0 -> 1513 bytes .../src/res/GreekLetters/gammaW.png | Bin 0 -> 1467 bytes .../src/res/GreekLetters/ksiW.png | Bin 0 -> 1551 bytes .../src/res/GreekLetters/lambdaW.png | Bin 0 -> 1368 bytes .../src/res/GreekLetters/minomegaW.png | Bin 0 -> 1896 bytes cryptide_project/src/res/GreekLetters/muW.png | Bin 0 -> 1185 bytes .../src/res/GreekLetters/omegaW.png | Bin 0 -> 1639 bytes cryptide_project/src/res/GreekLetters/piW.png | Bin 0 -> 1424 bytes .../src/res/GreekLetters/sigmaW.png | Bin 0 -> 1476 bytes .../src/res/icon/checkboxGreen.png | Bin 0 -> 992 bytes cryptide_project/src/res/icon/infoGreen.png | Bin 0 -> 3336 bytes 14 files changed, 29 insertions(+), 15 deletions(-) create mode 100644 cryptide_project/src/res/GreekLetters/alphaW.png create mode 100644 cryptide_project/src/res/GreekLetters/betaW.png create mode 100644 cryptide_project/src/res/GreekLetters/gammaW.png create mode 100644 cryptide_project/src/res/GreekLetters/ksiW.png create mode 100644 cryptide_project/src/res/GreekLetters/lambdaW.png create mode 100644 cryptide_project/src/res/GreekLetters/minomegaW.png create mode 100644 cryptide_project/src/res/GreekLetters/muW.png create mode 100644 cryptide_project/src/res/GreekLetters/omegaW.png create mode 100644 cryptide_project/src/res/GreekLetters/piW.png create mode 100644 cryptide_project/src/res/GreekLetters/sigmaW.png create mode 100644 cryptide_project/src/res/icon/checkboxGreen.png create mode 100644 cryptide_project/src/res/icon/infoGreen.png diff --git a/cryptide_project/src/Pages/InGame.css b/cryptide_project/src/Pages/InGame.css index 138125c..0a0f905 100644 --- a/cryptide_project/src/Pages/InGame.css +++ b/cryptide_project/src/Pages/InGame.css @@ -80,10 +80,20 @@ justify-content: end; flex-direction: column; - top:70%; + top:30%; right: 0; } .menuGame Button { margin: 10px; +} + +.button{ + background-color: #85C9C2; + + border: solid 2px #85C9C2; + border-radius: 10px; + + width: 100px; + height: 60px; } \ No newline at end of file diff --git a/cryptide_project/src/Pages/InGame.tsx b/cryptide_project/src/Pages/InGame.tsx index f765c9b..1cd5c60 100644 --- a/cryptide_project/src/Pages/InGame.tsx +++ b/cryptide_project/src/Pages/InGame.tsx @@ -7,16 +7,19 @@ import "./InGame.css" import GraphContainer from '../Components/GraphContainer'; import ChoiceBar from '../Components/ChoiceBar'; import ButtonImgNav from '../Components/ButtonImgNav'; +import PersonStatus from '../Components/PersonStatus'; /* Icon */ import Leave from "../res/icon/leave.png"; import Param from "../res/icon/param.png"; import Replay from "../res/icon/replay.png"; +import Info from "../res/icon/infoGreen.png"; +import Check from "../res/icon/checkboxGreen.png"; +import Alpha from "../res/GreekLetters/alphaW.png"; /* Boostrap */ import Button from 'react-bootstrap/Button'; import Offcanvas from 'react-bootstrap/Offcanvas'; -import PersonStatus from '../Components/PersonStatus'; const InGame = () => { const [showChoiceBar, setShowChoiceBar] = useState(false); @@ -26,6 +29,7 @@ const InGame = () => { }; /* offcanvas */ + //? faire une fonction pour close et show en fonction de l'etat du canva ? const [show, setShow] = useState(false); const handleClose = () => setShow(false); const handleShow = () => setShow(true); @@ -44,27 +48,27 @@ const InGame = () => {
- +
-
- - - + + +
+ @@ -94,7 +98,7 @@ const InGame = () => {
- {showChoiceBar && } + {showChoiceBar && }
{/* tmp */} diff --git a/cryptide_project/src/res/GreekLetters/alphaW.png b/cryptide_project/src/res/GreekLetters/alphaW.png new file mode 100644 index 0000000000000000000000000000000000000000..a9c02168d240182f5ca68a563b301193a5816983 GIT binary patch literal 1560 zcmV+z2Iu*SP)BmITiIhRDtp+Lw6>W&^c$nIaJgLX zz32XB_MXw-=kL8|esg9yXCA+qBVvp(#u#IaF~%5UjL8fb2s8mV0WSd`0h@sBz&79) zU=8pTFcUb!ZgT{{*}yYE583<&ECE!R$RABQUn~}#|`!LzI$Jki0yO5HJ_Cf z0nd>SHx$J+0@$gz-qn&CV0M5T`3`V7Fa{U|H248zR&KyKvLLp}%DBc#N`PaOUCLfy zdYS9D06Q{XbAG|^=P6>_TIvy)YkoRIGq{^jMH#neysn!MJIeodg(AK;BqeTM37so4 z3^JEyy!L!x0PwpazB?op{w95>sO*Xwy41gAeB4Yx=X^;8Fi~0A(`qR5nv7+1D&lkR ztwSUgz%oT;->R`pHz(CW|M)~w0UTRH&!^B;b$oACYk{N!xJ6M>x6m|7S$;e5Rn_6h z1>gfkMOOwWe;V;+S^%pX*S}XzMa&J&OHu#~QNBNx2acza@LZ-8X=}xg!Pc5!oBR2m7NnQ!=;ySE|XL!lLed$BE_|caCWVuB*CX}YBWWP>%u^d z5wsVW_bHQT(-G|M{rwT3K^99&l<73i(Gg>73(z1pN=p3x4UNNd+yit@my{^ir-_-? zkN&aclEMc`O8h8RBkBkk-D7LDq$a@Df`O6adqNT0eUchri?TrmM2_#9eImo85AeOR zK?X;Rtw9l&dlVlesR_{S9TqXR>lAUdONx|bfLxl-96XGV(al6`9Y(Z?l^DI26YQe2NHV!BgO1)QO5kSN>3 zfG$N$=SZr6(aHw7CqhgoDB^J&dk&OT`HVq#N>8m8MTn_I5zn7)_pqc4SfaQA9TDPb zM`xm>47gs|#SAvZ4IHP;6LapbqMYHtn?r!zBk0I zFYpTCd{^$>Rw2QByyOA!sp1CA4Db)3eVG@Vy@#@fRam+{Uh)9ASyA~l%6Hhigx6ho zMoK|>)64wEZG0UfdEi#ql!L@6b?A0i(q6b`ditY-68g|G&B9PywF4`^X8sfT5`1nh4~fogl@bhGMo7kUPKy0Q9Op?M z)p*cYA(x^$7Z}$!`|4+w-G1~}(YrQ4K0vANd$cSX72sgtYw~Gfq|U(0l4rmv0TSs# zTh})T^=B`J+-Wsc^3G+C2d=cn7sc83zypM_q3*N18PCzm`sIVrzI5-P60wc;)8<nmIQI)^*r^+(_;Kaq4?=ohL_ zZEE&0eCrc2Hv1`lca-6XkmVU;j4{R-V~jDz7-Nhv#u#Ia?D9WgF_ws0000< KMNUMnLSTY+sooj@ literal 0 HcmV?d00001 diff --git a/cryptide_project/src/res/GreekLetters/betaW.png b/cryptide_project/src/res/GreekLetters/betaW.png new file mode 100644 index 0000000000000000000000000000000000000000..27e1cda0e7f485ece9277260389afa9da8654ed1 GIT binary patch literal 1513 zcmVLlnnPu@<#RwNzE4Xe-3Kq%R~sEI~vRjYu`| zQnJ|w2@}+ggck|qH z?>uwQ+~@as_s;*$|GD?hoH=twq(OrQ#sLljE&y%^76Kmv-vV90AM~;f*aEBv-Uprm z<^dN0hs3@I^8kke?ZBHr5Bc~9SOwe#jEjA5rU1qPkN5lKhhV9D;$q*ch1b%2U>Eh{ zBjAkK_g*@HNkAuYaIdpRfc<0lLn#2->ikp;#!BF5sWQNwl#5Paf>aS;F6E>PI993z za0Re8XUBc!pRhB57C$IB0k{Tu8u&BEwbxW;?gC8A*;$_e=hx6qi=Rlk38RJ=Bz1s& z{486;Zr~nZzl?2;0p3!!dAXzvFgu4CSLSH933yS_?grohNfF>+;3q|=>;bMS=;>Uf zXunNT1ek-42MdmmxlvRWzLwN*?|tA0<-DM|U@fy0Iwnd=0MpQMV*oA9K1`p5Ig%2< zOA0f72ZjgIBx*)UXxUCA4H8C z5?0gc8Rgt7sh}~#5m?gCPJRFEu4Kq$7ir2P7rRW(aV01{v=A zH&#-jgoZp<$&Yy%4FOK`3tqMGrJJuvYLv{7Wi>YctIJ@K6bWeva5ymD&nw0b^@|3s zt+8pBA^_W6sKf6Mxfz(^Q;*#GN-aa&$&xYw3|T=KT>jR0NgZwP zNWr0)8u&X04MtiU$kVs=#eY`Y*k2{DHbWaAr9avg~WHnB1Q~pSC-^BN~~eTkf}Y46$Sy9Paz7)fD;3ikk43SyCx@@V^F2D|#nzu3z$jJp;}#_n!Sa zci(kq{l1@l)_?uaWAC;1*~b_~Q4~cH0B}685O@>V2J8oVfo`A!*Z?dBPHjRgqktEH zzX@XpFw;l`m{f>A!q3A7D z!H>Y$1o7D(QVc!7L?Z#ha3r5iXVBEF@O=l=&d#RwYs{YUjI zjfnBn$a6n$qyXGObLap@1jIM7=p2M%FSe;h3c!0bkLdyN*|JRxuNf&6gRL%_$1?#j zz8i5qJEl6vNC7yL=CU6+(j&gHMRzrnwMG)a97kdHDxCowR}>weh)B{^9`RjA92Xc# z0QWkGdZ0ngD}={A;5cQx(J6k*xw%Vc1Zv)NP z5;6d734os(2)o8}9wphV9dJ6~TyLZTbT$w+&7+-Bzz?2@o6w-WMS*5~1B^6MDXO6L z7*}ykY<7dTHU}Cq&qxN?T}RmNfVPeX4#v)H7d^L->a)E=M;pliR|2~R3ELIgO95W@ zNZ^J#ZOkW(161cZc8*c}gVej-Kny*+!_4qfBL=Kq6vxUdNg%)?_Q{CbK zt2`2UlyBo5l5N zM)fOOe7IN*Nn^-r;`va`NCdDTfgzWxA?Xa67HP&OYDW5L-JS?T>Mj>jsxLGSW~`Sq?mQsRUnO<~b%lNLWEhPcKeYkU?CcQ#{ z6MzFAhRjz(sx{;}{8*!gRA69CiZ&oeN0?u#tEw|3S>KfZCpnG5hTHGbgu}wtzJ2uq=yn zYiSDz+ZtmiUe2whU8=g>i4574TaS2v^GS!6;#=tbVcD1DDjCiIPmzv;x%G&L@_m4P z=*_K1Jkdc*_#oY0WY+k$v|M?yn3=GG$~ zYCn-og`7XDwJP{;%HNd#=nh+eR}&hd-xek?WJw}3`o#Rzxs?HCB{D>NSPA#Y>Ple9 zvLpd1#&<*hp|I1xI-i~j;G#%FWc>_M0>HXJGweFxvvSAZb^s>>zXlkxBzNrX{^&a3 zVa6I=99O+5Q-RM*jIb5rWokx~07e2c?XsR?0;{XoxBaVPlgyKv6^o)MilUen<9~o7 VA?z)CIb8q%002ovPDHLkV1oQyn79A{ literal 0 HcmV?d00001 diff --git a/cryptide_project/src/res/GreekLetters/ksiW.png b/cryptide_project/src/res/GreekLetters/ksiW.png new file mode 100644 index 0000000000000000000000000000000000000000..7fb908ce0477026fbae033123ac720ba14a81c36 GIT binary patch literal 1551 zcmV+q2JrcbP){hq_tpXSUd_;C$1&)mx0B`_s4KNRQ7uW#26omqClzA=X zWeadgjqMl%JP-U8quaPB1b_j++Z4x6U|Pj(ILsI#i4{>O087daXuEbkD2Pf{9mrK604fcG6b=$VSgys*4OFlmoCegp=3$T<*L>(EJ= zb6=900amuwI|NB5Bs6G#23ezlZI+IDGi%PvBs<&d9RhGyLW8c$DDOsx&blIl+`+(C zt@aK97@N?j(@Pw5S7wlTD{c3VK6xz3gmyAKXIT2HrPIcGj!(AKNci5d3*hRQh7Has z^JYuOJ?9~-oBrS(WdiJJ358{rJ<4%ez!oU9$2-adILp$3_c_RTTD_y1uo|;WJjk-x zWXt64LcPP$Ag5&wfq~a>N5_tWyyV4%-(2ot4E2rzy=1#Azs7{(J?b4L0xVDI;OQOT zou=MVGQfnCPF~gLdqYiP(-j>%a;)92P3hSG_HzOEsCQHZ>G`NxW-E_uS5@z*$RPWh zy}@zFLfHcKj*0;uO6hdhNuZ!(M@17w7j)iHB>2rS;!y7>*dTLq7(>0IXn>LG9Ss9` zN4=v#0JrGa(I9}6bnIvlz#|%2H3Z-UlXln0stEwg)H@miaG{PJ%}T+qQtxO8z?2N3 z?vZut-R4pqy%`KLrEc9@32;ZobjiZHb#EQO!48|RllWe1s1$FI2gt{9MeEdW0Y(A; z$P5 zT|(m08>HLA7;8E!4FOA1zW<;a#LpN;cc4)zV2a+Wfpn2r~GzP5#<773fWAK z+5&zjX2pw6$+>4MccoL{^D;cIc4Q90{~MRaB1gHOrN~%bfZpHucx^B^6q)JEcGueQ z=7?JwC+GYVbuJ04i9*MmnB9as4|`q=kQO97o^9#>#u6wEz-w>}CP>0Dr|he5hCJfq7Zb7@B1?R}?&m$3AANtPVA=yCb9?7x0wB@rN-{Xqfeik39@>TS3niFWE?W ztP3)W>=5QLQ&s z>9(5J=xTE&{`xAtSWy&3Q4~c{6h%=KMNy)L@-G~u?Y%#x@Lm7_002ovPDHLkV1lAc B%M1Vj literal 0 HcmV?d00001 diff --git a/cryptide_project/src/res/GreekLetters/lambdaW.png b/cryptide_project/src/res/GreekLetters/lambdaW.png new file mode 100644 index 0000000000000000000000000000000000000000..62aa83689d4eb4ca63136f338e9dd4dd0555400f GIT binary patch literal 1368 zcmV-e1*iInP)4A? zwdV799?qHH{MTOl%vx*y%ektms;VjgFbX&oxE**2_yE`dY-7k4U?cE8FaSIRTnQXz zJ@&>41=z&M3<7Tf*8}@oXK4gCAa7XbDIRc-ups_9;iIiH6%9B7t=ZO@iUwRQF31=4f@6OLc?Z4ob%#ug z0F#L0Y3po70$z#ukoG~=`HBJ@1N==q)2%ZW1$czGR#;~&1~3-*DRM#lJ^Z>0tILAi zNgDS@Ke`&SeR^G@f_z!mB*PbE8fn!nal;g3b>f0Nqx^(73UCJL`I}&MPswfyvKSjP zk{^A!1C9j#G%CnS>-^aP7GTG(NhVm&K{ouoZiYHDSgP9>b}Gm%*!#+_fn3}9g&FWM zdAQKE9WaG_Jm=aDSWZ5+wt7thoDym0R6lNTZ3R3_epb0Q0uGO`TS~!yVkf$`0p^mg z2VI*0`-X;=xmw?15ONE0#x4Y`2D^mxzcLaWa2Gq-c=pHe-?Ttxh4V*5pUw$ zHf5Fuk^#=W9ipHj1lMG8S?%dj8EESIL5)xC5eWZc!h>+A+b_BI@z?5_FX~%l269T>U=6 zRGWlijK7Fa4~Qt5yj51 zt5EYJXxPDZZ~(+w*AHAY<$VO-*@JD zzl%CQ5R}F9JoC;ubI#1X^KOzvB9TZW5{X12kw_#Gi9{liNF*WwGy+Zrt^)1><^qd> zRX{mV0qkZU?%zWKG%f+Y^VitzuUYOj7JE&neWmx(=&DU&a=YpRG z=V=iz0qC9_iU1ve`+=_!Nz!YptOFhZIwl7@KsVq;pc*5R^d7AE3wRUgnH+2YoxJ&4 zj7idav8L9yty5C!0F8mMz;EPw!NF8}|n=AGj6hH%TOO_3_ovR_C4iA&AtzbhUPl%XV-~Cm|J*MnH}mOSEGXsOuDcPk%;teH=!_8G z8NUZ;y8m;GpzHQ(R7QvDH#Di*E}AM6J~Cn4!7R3mpx+s& z5tq)Dq4E?zzfc$%s$ZX>6{4BvME%L=OcXuL7WF?-^fQh07LC*>Plv;36?u6g;GYt8 zndofAL!FUXqKWyUen)JmRVIwy%RRcULpd#E_%4Lm}BNm1_4-x9Uqs#1i4Jf zD%>TC%X`hhSJ<)Ez)u&^!_P|6g2E4K;~mEP;ad{}4Dtukrw{>`iK6ctHU3xZs5J8A z_HqjQwdZq=6rMC{d<}Ng7*cBqG?vOP#YW&eg>8ft|y@Qdb zrlOZUA);!U=n)o;H`=jutW1n>Z7W8Hs6$pe!vIX9MBX3XPdm{|MTqG4qNubxSI_pT zirI-;gI&z>5YY{y=&4o#Fc`L08hhy~#%6tp=yFlCzi|*o3tq+;dl@LkW?306(Sh z;GU?qi7~)y1s^^9;YfuI)`18}yhy+AkORO*F*fIgCRkUCGh>tWta?&$w&tMk*5XgP1+K_UD79uq5`cHnxW&lF zTLIdOE#6}WsXvP>Vo+!10@2KNwWthQ>diQV6$1C9EA&%5)MsjG!IQ)OpXE^@)*cBy zm*LJxifvyKs-3O8Yc5|m4UM6xPg4Qy{o#9+@{lBF;0o~_x;Jm-W`U=~ptz-&fhqKk zGftFqbBL}f^amM~YU4AHR5Pm{ad&dW`e3KQk>yf&Qnnhbxmn<1F|{b2k@Fg7U#fB^>On?gI|zXWRFa^o7px#E%vFHA}azqP5JYfpnavOVAcIa6vCxHOdI zW2@Q>f0wHDQF2)@?3m@ZGkidP*=TjVA@BGEiSc>pm^HZu!52OlX0+_G|7?GpMfvlB z;|piHpu8cxa4UhA+!)=^>^jS?XMeY)D-@2Y@|m1NOZL}O1QuW(qP}Ah#ZMTB9TZW5{X12kw_#G ii9{liNFXisHiXdp! z?y{~T>MEqX2=O9BGQ8O}idrus0wqB)FA6G**xX2EttidhOmXdH-E!M4`^KTO@LcT9 zGc#vq&fnSJ=YBZ<=lq^$=FFLM=1CF}5fKp)5fKrQ846ed43Xau@L)yt{A8t`+7%3A z(($I(Q#%4B4X>wm);a)V_0-N<2Vkt8+5!Js>Hrjo0x<E6^J3g?+U~a z;5P+g2=I#nF$5S^Acg>^6^J3gDFtE(a8iL70-R7Fh6FBdrh><+&)Ot-ISCJDS7>d>PmQ+XC9|0QOO?&Xo2xw>kE35*siO*a71}SAlkC1A8dn zjVU*s?Iuz`NE#4`v)7%UbF?`Z_=svOnWoK^8IE0_#0Gp_Qb)W6T%Mu5Yk~b#XZ1Ag zev#qWDv1Nfe5^-j_5qZv=Vr3~StE(4mzA%6i~4Lsn7wVOltGiKz5 zwH+;=@4AdnMYksw0Ox3)9l#C1?Kwt~k5~xf;?S4RROAop<=$X-sf9o~v1bTa1RSlg z%_kEJfZMPa#zJ4)b2YVjFwc;^QoudfalCb2444zTA|?a(CZu~4D}X1kVGy`!iuxX_ zxZU_Sf~|lTi0@P2>XaJ$Dr$FI+C*d&z-z?yE^tMg8ZQGrEVvov^!#EL^TyZ!pLfmUxctT;9=5v;Ju;`wfrFDO=A4229J}U5D{v<~7Q5y~1GbXim9gt?EPpY~>(2pmKmI-)?FsV=YBq!kYz(D4y z(@O;G3JfIoUJywEd=eN)DNp?*Y?imxQgvpDfZbJW8Iyv5Hv+<#$g)dHasZwV2&7+~ zUCpzQqJOu#q3n9(|4@o-M|NwTZdM0Yz>Sm&{P)zWRn#IL@NAASKEEJV|6S;Sr!p)B z-C<(8@Js00000NkvXXu0mjfeEJZ` literal 0 HcmV?d00001 diff --git a/cryptide_project/src/res/GreekLetters/omegaW.png b/cryptide_project/src/res/GreekLetters/omegaW.png new file mode 100644 index 0000000000000000000000000000000000000000..5b131176e4768fcdf3caf1d901e8236f6f720dc4 GIT binary patch literal 1639 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 O0000!oYn1 literal 0 HcmV?d00001 diff --git a/cryptide_project/src/res/icon/infoGreen.png b/cryptide_project/src/res/icon/infoGreen.png new file mode 100644 index 0000000000000000000000000000000000000000..32424a62e6b0d9bf5261e757f25d210d85c52651 GIT binary patch literal 3336 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 Date: Fri, 10 Nov 2023 11:52:43 +0100 Subject: [PATCH 03/11] =?UTF-8?q?cr=C3=A9ation=20d'un=20nouvelle=20onglet?= =?UTF-8?q?=20pour=20l'affichage=20des=20informations=20durant=20la=20part?= =?UTF-8?q?ie=20:art:?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cryptide_project/src/App.tsx | 2 + .../src/Components/ButtonImgNav.tsx | 2 +- cryptide_project/src/Pages/InGame.tsx | 52 +++++++++++++-- cryptide_project/src/Pages/InfoPage.tsx | 66 +++++++++++++++++++ 4 files changed, 114 insertions(+), 8 deletions(-) create mode 100644 cryptide_project/src/Pages/InfoPage.tsx diff --git a/cryptide_project/src/App.tsx b/cryptide_project/src/App.tsx index 853e61e..79ac7b2 100644 --- a/cryptide_project/src/App.tsx +++ b/cryptide_project/src/App.tsx @@ -12,6 +12,7 @@ import Lobby from './Pages/Lobby'; import InGame from './Pages/InGame'; import EndGame from './Pages/EndGame'; +import InfoPage from './Pages/InfoPage'; /* Component */ import AppNavbar from './Components/NavBar'; @@ -64,6 +65,7 @@ function App() { } /> } /> } /> + } /> diff --git a/cryptide_project/src/Components/ButtonImgNav.tsx b/cryptide_project/src/Components/ButtonImgNav.tsx index 85c48d0..6e3e78d 100644 --- a/cryptide_project/src/Components/ButtonImgNav.tsx +++ b/cryptide_project/src/Components/ButtonImgNav.tsx @@ -6,7 +6,7 @@ import { FormattedMessage } from 'react-intl'; //@ts-ignore function ButtonImgNav({ dest, img, text = "" }) { return ( - + {/*target='_blank' ==> ouvre un nouvelle onglet*/ }
@@ -58,13 +87,22 @@ const InGame = () => {
- - + + {/* - */} + + + + + +
diff --git a/cryptide_project/src/Pages/InfoPage.tsx b/cryptide_project/src/Pages/InfoPage.tsx new file mode 100644 index 0000000..34c2f93 --- /dev/null +++ b/cryptide_project/src/Pages/InfoPage.tsx @@ -0,0 +1,66 @@ +import React from 'react'; + +/* Style */ +import '../Style/Global.css'; + +import { FormattedMessage } from 'react-intl'; + +function InfoPage() { //! cette page n'affiche que des informations et est suceptible de changer selon le context. + + return ( + +
+

Informations

+ +

Indice possible :

+

+ couleur de cheveux d'une personne +

+
    +
  • + Possède les cheveux noir +
  • +
  • + Possède les cheveux roux +
  • +
  • + Possède les cheveux blond +
  • +
  • + Possède les cheveux brun +
  • +
  • + Possède les cheveux blanc +
  • +
+
+

+ Sport d'une personne +

+
    +
  • + Effectue du Foot ou du tennis +
  • +
  • + Effectue du rugby ou du tennis +
  • +
+

+ Caractèristique des voisins +

+
    +
  • + Possède deux voisins footballeur +
  • +
  • + Possède aucun voisin rugbyman +
  • +
+ +

Topographie

+

Legende des différents objet disponible sur la carte.

+
+ ); +} + +export default InfoPage; From d7f17c15b54556306c5837503b5d5c97d6cdd4be Mon Sep 17 00:00:00 2001 From: Pierre Ferreira Date: Fri, 10 Nov 2023 13:58:23 +0100 Subject: [PATCH 04/11] =?UTF-8?q?ajout=20de=20la=20possibilit=C3=A9=20d'af?= =?UTF-8?q?fich=C3=A9=20la=20bar=20de=20navigation=20seulement=20sur=20les?= =?UTF-8?q?=20page=20de=20notre=20choix.=20:zap:?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cryptide_project/src/App.tsx | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/cryptide_project/src/App.tsx b/cryptide_project/src/App.tsx index 79ac7b2..d90f6aa 100644 --- a/cryptide_project/src/App.tsx +++ b/cryptide_project/src/App.tsx @@ -18,7 +18,7 @@ import InfoPage from './Pages/InfoPage'; import AppNavbar from './Components/NavBar'; /* nav */ -import { BrowserRouter, Route, Routes } from "react-router-dom"; +import { BrowserRouter, Route, Routes, useLocation } from "react-router-dom"; /* Style */ import './App.css'; @@ -46,6 +46,11 @@ function App() { setLocale(newLocale); }; + + //const location = useLocation(); + const hasNavbarVisible = ["/", "/login", "/signup", "/play", "/lobby", "/endgame"].includes(window.location.pathname); + + return ( //
//
@@ -56,7 +61,8 @@ function App() { //@ts-ignore - + {/* */} + {hasNavbarVisible && } } /> } /> From 30dea4321eb854d6d479441d078aa21d1b20f0cc Mon Sep 17 00:00:00 2001 From: Pierre Ferreira Date: Fri, 10 Nov 2023 14:11:36 +0100 Subject: [PATCH 05/11] ajout de la traduction des indices en fonction de la langue choisi par l'utilisateur. :globe_with_meridians: --- cryptide_project/src/App.tsx | 2 +- cryptide_project/src/Pages/InGame.tsx | 14 ++++++++++++-- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/cryptide_project/src/App.tsx b/cryptide_project/src/App.tsx index d90f6aa..ee9f323 100644 --- a/cryptide_project/src/App.tsx +++ b/cryptide_project/src/App.tsx @@ -70,7 +70,7 @@ function App() { } /> } /> } /> - } /> + } /> } /> diff --git a/cryptide_project/src/Pages/InGame.tsx b/cryptide_project/src/Pages/InGame.tsx index 2eaba35..f3ef4ee 100644 --- a/cryptide_project/src/Pages/InGame.tsx +++ b/cryptide_project/src/Pages/InGame.tsx @@ -24,7 +24,11 @@ import { Link } from 'react-router-dom'; import Button from 'react-bootstrap/Button'; import Offcanvas from 'react-bootstrap/Offcanvas'; -const InGame = () => { +/* Model */ +import Stub from '../source/Stub'; + +//@ts-ignore +const InGame = ({locale}) => { const [showChoiceBar, setShowChoiceBar] = useState(false); const handleNodeClick = (shouldShowChoiceBar: boolean) => { @@ -66,6 +70,9 @@ const InGame = () => { window.open(url); }; + + const indices = Stub.GenerateIndice() + return (
@@ -131,7 +138,10 @@ const InGame = () => { Indice - Possède les cheveux noir ou joue au basket + {/* Possède les cheveux noir ou joue au basket */} + {indices[0].ToString(locale)}
+ {indices[1].ToString(locale)}
+ {indices[2].ToString(locale)}
From a805beb63e57f76d0417a1f90fda4394d50accd2 Mon Sep 17 00:00:00 2001 From: Pierre Ferreira Date: Fri, 10 Nov 2023 14:37:05 +0100 Subject: [PATCH 06/11] =?UTF-8?q?ajout=20des=20param=C3=A8tres=20dans=20la?= =?UTF-8?q?=20page=20de=20jeu,=20pour=20changer=20la=20langue=20par=20exem?= =?UTF-8?q?ple.=20bug=20au=20niveau=20des=20traductions=20et=20des=20navig?= =?UTF-8?q?ations=20:=20la=20langue=20semble=20=C3=AAtre=20reset=20:bug:?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cryptide_project/src/App.tsx | 4 +-- cryptide_project/src/Pages/InGame.css | 2 +- cryptide_project/src/Pages/InGame.tsx | 49 +++++++++++++++++++++++++-- 3 files changed, 50 insertions(+), 5 deletions(-) diff --git a/cryptide_project/src/App.tsx b/cryptide_project/src/App.tsx index ee9f323..0f43e87 100644 --- a/cryptide_project/src/App.tsx +++ b/cryptide_project/src/App.tsx @@ -48,7 +48,7 @@ function App() { //const location = useLocation(); - const hasNavbarVisible = ["/", "/login", "/signup", "/play", "/lobby", "/endgame"].includes(window.location.pathname); + const hasNavbarVisible = ["/", "/login", "/signup", "/play", "/lobby", "/endgame"]//.includes(window.location.pathname); return ( @@ -70,7 +70,7 @@ function App() { } /> } /> } /> - } /> + } /> } /> diff --git a/cryptide_project/src/Pages/InGame.css b/cryptide_project/src/Pages/InGame.css index 0a0f905..019a26d 100644 --- a/cryptide_project/src/Pages/InGame.css +++ b/cryptide_project/src/Pages/InGame.css @@ -57,7 +57,7 @@ position: absolute; z-index: 1; left: 10px; - top :50; + top :50px; } #endgamebutton{ diff --git a/cryptide_project/src/Pages/InGame.tsx b/cryptide_project/src/Pages/InGame.tsx index f3ef4ee..02dd7d9 100644 --- a/cryptide_project/src/Pages/InGame.tsx +++ b/cryptide_project/src/Pages/InGame.tsx @@ -26,9 +26,12 @@ import Offcanvas from 'react-bootstrap/Offcanvas'; /* Model */ import Stub from '../source/Stub'; +import { HiLanguage } from 'react-icons/hi2'; +import { Nav, NavDropdown } from 'react-bootstrap'; +import { FormattedMessage } from 'react-intl'; //@ts-ignore -const InGame = ({locale}) => { +const InGame = ({locale, changeLocale}) => { const [showChoiceBar, setShowChoiceBar] = useState(false); const handleNodeClick = (shouldShowChoiceBar: boolean) => { @@ -37,6 +40,7 @@ const InGame = ({locale}) => { /* offcanvas */ //? faire une fonction pour close et show en fonction de l'etat du canva ? + //? comment faire pour eviter la recopie de tout le code a chaque canvas boostrap ? const [show, setShow] = useState(false); const handleClose = () => setShow(false); const handleShow = () => setShow(true); @@ -45,6 +49,10 @@ const InGame = ({locale}) => { const handleCloseP = () => setShowP(false); const handleShowP = () => setShowP(true); + const [showS, setShowS] = useState(false); + const handleCloseS = () => setShowS(false); + const handleShowS = () => setShowS(true); + const handleChange = () => { if (show){ handleClose() @@ -63,6 +71,14 @@ const InGame = ({locale}) => { } }; + const handleChangeS = () => { + if (showS){ + handleCloseS() + } + else { + handleShowS() + } + }; /* Windows open */ //@ts-ignore @@ -90,7 +106,9 @@ const InGame = ({locale}) => {
- +
@@ -145,6 +163,33 @@ const InGame = ({locale}) => { + + { + //* canva pour les paramètres + } + + + param Paramètres + + + + + +
{showChoiceBar && }
From 3d3d620c299a157317b58ab0f25ca46dd9b80d10 Mon Sep 17 00:00:00 2001 From: Pierre Ferreira Date: Fri, 10 Nov 2023 15:12:37 +0100 Subject: [PATCH 07/11] =?UTF-8?q?ajout=20de=20d=C3=A9pendances=20pour=20un?= =?UTF-8?q?=20switch=20et=20stub=20dans=20les=20params=20de=20jeu=20:packa?= =?UTF-8?q?ge:?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cryptide_project/package-lock.json | 93 ++++++++++++++++++ cryptide_project/package.json | 1 + cryptide_project/src/Pages/InGame.tsx | 14 ++- cryptide_project/yarn.lock | 133 ++++++++++++++++++-------- 4 files changed, 197 insertions(+), 44 deletions(-) diff --git a/cryptide_project/package-lock.json b/cryptide_project/package-lock.json index 61d9d36..c6baca5 100644 --- a/cryptide_project/package-lock.json +++ b/cryptide_project/package-lock.json @@ -25,6 +25,7 @@ "react-intl": "^6.5.2", "react-router-dom": "^6.18.0", "react-scripts": "5.0.1", + "react-switch": "^7.0.0", "typescript": "^5.2.2", "vis-network": "^9.1.9", "web-vitals": "^2.1.4" @@ -2411,6 +2412,18 @@ "postcss-selector-parser": "^6.0.10" } }, + "node_modules/@egjs/hammerjs": { + "version": "2.0.17", + "resolved": "https://registry.npmjs.org/@egjs/hammerjs/-/hammerjs-2.0.17.tgz", + "integrity": "sha512-XQsZgjm2EcVUiZQf11UBJQfmZeEmOW8DpI1gsFeln6w0ae0ii4dMQEQ0kjl6DspdWX1aGY1/loyXnP0JS06e/A==", + "peer": true, + "dependencies": { + "@types/hammerjs": "^2.0.36" + }, + "engines": { + "node": ">=0.8.0" + } + }, "node_modules/@eslint-community/eslint-utils": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", @@ -3997,6 +4010,25 @@ "tslib": "^2.4.0" } }, + "node_modules/@testing-library/dom": { + "version": "9.3.3", + "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-9.3.3.tgz", + "integrity": "sha512-fB0R+fa3AUqbLHWyxXa2kGVtf1Fe1ZZFr0Zp6AIbIAzXb2mKbEXl+PCQNUOaq5lbTab5tfctfXRNsWXxa2f7Aw==", + "peer": true, + "dependencies": { + "@babel/code-frame": "^7.10.4", + "@babel/runtime": "^7.12.5", + "@types/aria-query": "^5.0.1", + "aria-query": "5.1.3", + "chalk": "^4.1.0", + "dom-accessibility-api": "^0.5.9", + "lz-string": "^1.5.0", + "pretty-format": "^27.0.2" + }, + "engines": { + "node": ">=14" + } + }, "node_modules/@testing-library/jest-dom": { "version": "5.17.0", "resolved": "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-5.17.0.tgz", @@ -4225,6 +4257,12 @@ "@types/node": "*" } }, + "node_modules/@types/hammerjs": { + "version": "2.0.44", + "resolved": "https://registry.npmjs.org/@types/hammerjs/-/hammerjs-2.0.44.tgz", + "integrity": "sha512-pdGBkAh4ggfXAkiwgmTdROJe3mwvLWJYm6JiaAwCtskAU0Weh+JQyyMTbhvxjxD2n8sr8PrxVwyDzmpnK4pUrQ==", + "peer": true + }, "node_modules/@types/hoist-non-react-statics": { "version": "3.3.5", "resolved": "https://registry.npmjs.org/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.5.tgz", @@ -6189,6 +6227,12 @@ "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==" }, + "node_modules/component-emitter": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", + "peer": true + }, "node_modules/compressible": { "version": "2.0.18", "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", @@ -11877,6 +11921,12 @@ "node": ">=4.0" } }, + "node_modules/keycharm": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/keycharm/-/keycharm-0.4.0.tgz", + "integrity": "sha512-TyQTtsabOVv3MeOpR92sIKk/br9wxS+zGj4BG7CR8YbK4jM3tyIBaF0zhzeBUMx36/Q/iQLOKKOT+3jOQtemRQ==", + "peer": true + }, "node_modules/keyv": { "version": "4.5.4", "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", @@ -14702,6 +14752,18 @@ } } }, + "node_modules/react-switch": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/react-switch/-/react-switch-7.0.0.tgz", + "integrity": "sha512-KkDeW+cozZXI6knDPyUt3KBN1rmhoVYgAdCJqAh7st7tk8YE6N0iR89zjCWO8T8dUTeJGTR0KU+5CHCRMRffiA==", + "dependencies": { + "prop-types": "^15.7.2" + }, + "peerDependencies": { + "react": "^15.3.0 || ^16.0.0 || ^17.0.0 || ^18.0.0", + "react-dom": "^15.3.0 || ^16.0.0 || ^17.0.0 || ^18.0.0" + } + }, "node_modules/react-transition-group": { "version": "4.4.5", "resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.5.tgz", @@ -16896,6 +16958,20 @@ "node": ">= 0.8" } }, + "node_modules/vis-data": { + "version": "7.1.8", + "resolved": "https://registry.npmjs.org/vis-data/-/vis-data-7.1.8.tgz", + "integrity": "sha512-h/cxRDVqnpqqpTBqwUbbKIpWVovOQ+h5rbFS/kio8TUH1np98Lv9bHdWZxahJlyzBaBR9KGvwGHB00jn3MjLbQ==", + "peer": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/visjs" + }, + "peerDependencies": { + "uuid": "^3.4.0 || ^7.0.0 || ^8.0.0 || ^9.0.0", + "vis-util": "^5.0.1" + } + }, "node_modules/vis-network": { "version": "9.1.9", "resolved": "https://registry.npmjs.org/vis-network/-/vis-network-9.1.9.tgz", @@ -16913,6 +16989,23 @@ "vis-util": "^5.0.1" } }, + "node_modules/vis-util": { + "version": "5.0.6", + "resolved": "https://registry.npmjs.org/vis-util/-/vis-util-5.0.6.tgz", + "integrity": "sha512-HyAZ+x3q6/Xh6OFPIQOGPOPgnHL9KVNvWW6+k3aTCbAG8Tq7vncgRat6oY8ywZ7j1Fq0mOfUb6fLrFvfI9nUKg==", + "peer": true, + "engines": { + "node": ">=8" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/visjs" + }, + "peerDependencies": { + "@egjs/hammerjs": "^2.0.0", + "component-emitter": "^1.3.0" + } + }, "node_modules/w3c-hr-time": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", diff --git a/cryptide_project/package.json b/cryptide_project/package.json index 54fa6ca..68e86c1 100644 --- a/cryptide_project/package.json +++ b/cryptide_project/package.json @@ -19,6 +19,7 @@ "react-intl": "^6.5.2", "react-router-dom": "^6.18.0", "react-scripts": "5.0.1", + "react-switch": "^7.0.0", "typescript": "^5.2.2", "vis-network": "^9.1.9", "web-vitals": "^2.1.4" diff --git a/cryptide_project/src/Pages/InGame.tsx b/cryptide_project/src/Pages/InGame.tsx index 02dd7d9..a14b67d 100644 --- a/cryptide_project/src/Pages/InGame.tsx +++ b/cryptide_project/src/Pages/InGame.tsx @@ -1,4 +1,5 @@ import React, { useState } from 'react'; +import Switch from "react-switch"; /* Style */ import "./InGame.css" @@ -86,7 +87,7 @@ const InGame = ({locale, changeLocale}) => { window.open(url); }; - + const [SwitchEnabled, setSwitchEnabled] = useState(false) const indices = Stub.GenerateIndice() return ( @@ -163,21 +164,20 @@ const InGame = ({locale, changeLocale}) => { - { //* canva pour les paramètres } + style={{height: '30%', width: '30%', left: '70%' }}> param Paramètres + + + diff --git a/cryptide_project/yarn.lock b/cryptide_project/yarn.lock index b96b5f9..1caadf8 100644 --- a/cryptide_project/yarn.lock +++ b/cryptide_project/yarn.lock @@ -47,7 +47,7 @@ resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.23.2.tgz" integrity sha512-0S9TQMmDHlqAZ2ITT95irXKfxN9bncq8ZCoJhun3nHL/lLUxd2NKBJYoNGWH7S0hz6fRQwWlAWn/ILM0C70KZQ== -"@babel/core@^7.1.0", "@babel/core@^7.11.1", "@babel/core@^7.12.3", "@babel/core@^7.16.0", "@babel/core@^7.7.2", "@babel/core@^7.8.0": +"@babel/core@^7.0.0", "@babel/core@^7.0.0-0", "@babel/core@^7.0.0-0 || ^8.0.0-0 <8.0.0", "@babel/core@^7.1.0", "@babel/core@^7.11.0", "@babel/core@^7.11.1", "@babel/core@^7.12.0", "@babel/core@^7.12.3", "@babel/core@^7.13.0", "@babel/core@^7.16.0", "@babel/core@^7.4.0 || ^8.0.0-0 <8.0.0", "@babel/core@^7.7.2", "@babel/core@^7.8.0": version "7.23.2" resolved "https://registry.npmjs.org/@babel/core/-/core-7.23.2.tgz" integrity sha512-n7s51eWdaWZ3vGT2tD4T7J6eJs3QoBXydv7vkUM06Bf1cbVD2Kc2UrkzhiQwobfV7NwOnQXYL7UBJ5VPU+RGoQ== @@ -412,7 +412,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.3" -"@babel/plugin-syntax-flow@^7.22.5": +"@babel/plugin-syntax-flow@^7.14.5", "@babel/plugin-syntax-flow@^7.22.5": version "7.22.5" resolved "https://registry.npmjs.org/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.22.5.tgz" integrity sha512-9RdCl0i+q0QExayk2nOS7853w08yLucnnPML6EN9S8fgMPVtdLDCdx/cOQ/i44Lb9UeQX9A35yaqBBOMMZxPxQ== @@ -860,7 +860,7 @@ dependencies: "@babel/plugin-transform-react-jsx" "^7.22.5" -"@babel/plugin-transform-react-jsx@^7.22.15", "@babel/plugin-transform-react-jsx@^7.22.5": +"@babel/plugin-transform-react-jsx@^7.14.9", "@babel/plugin-transform-react-jsx@^7.22.15", "@babel/plugin-transform-react-jsx@^7.22.5": version "7.22.15" resolved "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.22.15.tgz" integrity sha512-oKckg2eZFa8771O/5vi7XeTvmM6+O9cxZu+kanTU7tD4sin5nO/G8jGJhq8Hvt2Z0kUoEDRayuZLaUlYl8QuGA== @@ -1263,6 +1263,13 @@ resolved "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-2.2.0.tgz" integrity sha512-+OJ9konv95ClSTOJCmMZqpd5+YGsB2S+x6w3E1oaM8UuR5j8nTNHYSz8c9BEPGDOCMQYIEEGlVPj/VY64iTbGw== +"@egjs/hammerjs@^2.0.0": + version "2.0.17" + resolved "https://registry.npmjs.org/@egjs/hammerjs/-/hammerjs-2.0.17.tgz" + integrity sha512-XQsZgjm2EcVUiZQf11UBJQfmZeEmOW8DpI1gsFeln6w0ae0ii4dMQEQ0kjl6DspdWX1aGY1/loyXnP0JS06e/A== + dependencies: + "@types/hammerjs" "^2.0.36" + "@eslint-community/eslint-utils@^4.2.0": version "4.4.0" resolved "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz" @@ -1370,7 +1377,7 @@ resolved "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.4.2.tgz" integrity sha512-1DgP7f+XQIJbLFCTX1V2QnxVmpLdKdzzo2k8EmvDOePfchaIGQ9eCHj2up3/jNEbZuBqel5OxiaOJf37TWauRA== -"@fortawesome/fontawesome-svg-core@^6.4.2": +"@fortawesome/fontawesome-svg-core@^6.4.2", "@fortawesome/fontawesome-svg-core@~1 || ~6": version "6.4.2" resolved "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.4.2.tgz" integrity sha512-gjYDSKv3TrM2sLTOKBc5rH9ckje8Wrwgx1CxAPbN5N3Fm4prfi7NsJVWd1jklp7i5uSCVwhZS5qlhMXqLrpAIg== @@ -1757,7 +1764,7 @@ schema-utils "^3.0.0" source-map "^0.7.3" -"@popperjs/core@^2.11.6": +"@popperjs/core@^2.11.6", "@popperjs/core@^2.11.8": version "2.11.8" resolved "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz" integrity sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A== @@ -1996,6 +2003,20 @@ lz-string "^1.5.0" pretty-format "^27.0.2" +"@testing-library/dom@>=7.21.4": + version "9.3.3" + resolved "https://registry.npmjs.org/@testing-library/dom/-/dom-9.3.3.tgz" + integrity sha512-fB0R+fa3AUqbLHWyxXa2kGVtf1Fe1ZZFr0Zp6AIbIAzXb2mKbEXl+PCQNUOaq5lbTab5tfctfXRNsWXxa2f7Aw== + dependencies: + "@babel/code-frame" "^7.10.4" + "@babel/runtime" "^7.12.5" + "@types/aria-query" "^5.0.1" + aria-query "5.1.3" + chalk "^4.1.0" + dom-accessibility-api "^0.5.9" + lz-string "^1.5.0" + pretty-format "^27.0.2" + "@testing-library/jest-dom@^5.17.0": version "5.17.0" resolved "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-5.17.0.tgz" @@ -2042,7 +2063,7 @@ resolved "https://registry.npmjs.org/@types/aria-query/-/aria-query-5.0.4.tgz" integrity sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw== -"@types/babel__core@^7.0.0", "@types/babel__core@^7.1.14": +"@types/babel__core@^7.0.0", "@types/babel__core@^7.1.14", "@types/babel__core@^7.1.9": version "7.20.4" resolved "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.4.tgz" integrity sha512-mLnSC22IC4vcWiuObSRjrLd9XcBTGf59vUSoq2jkQDJ/QQ8PMI9rSuzE+aEV8karUMbskw07bKYoUJCKTUaygg== @@ -2158,6 +2179,11 @@ dependencies: "@types/node" "*" +"@types/hammerjs@^2.0.36": + version "2.0.44" + resolved "https://registry.npmjs.org/@types/hammerjs/-/hammerjs-2.0.44.tgz" + integrity sha512-pdGBkAh4ggfXAkiwgmTdROJe3mwvLWJYm6JiaAwCtskAU0Weh+JQyyMTbhvxjxD2n8sr8PrxVwyDzmpnK4pUrQ== + "@types/hoist-non-react-statics@^3.3.1": version "3.3.5" resolved "https://registry.npmjs.org/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.5.tgz" @@ -2288,7 +2314,7 @@ dependencies: "@types/react" "*" -"@types/react@*", "@types/react@>=16.9.11", "@types/react@16 || 17 || 18": +"@types/react@*", "@types/react@>=16.14.8", "@types/react@>=16.9.11", "@types/react@16 || 17 || 18": version "18.2.36" resolved "https://registry.npmjs.org/@types/react/-/react-18.2.36.tgz" integrity sha512-o9XFsHYLLZ4+sb9CWUYwHqFVoG61SesydF353vFMMsQziiyRu8np4n2OYMUSDZ8XuImxDr9c5tR7gidlH29Vnw== @@ -2398,7 +2424,7 @@ dependencies: "@types/yargs-parser" "*" -"@typescript-eslint/eslint-plugin@^5.5.0": +"@typescript-eslint/eslint-plugin@^4.0.0 || ^5.0.0", "@typescript-eslint/eslint-plugin@^5.5.0": version "5.62.0" resolved "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.62.0.tgz" integrity sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag== @@ -2421,7 +2447,7 @@ dependencies: "@typescript-eslint/utils" "5.62.0" -"@typescript-eslint/parser@^5.5.0": +"@typescript-eslint/parser@^5.0.0", "@typescript-eslint/parser@^5.5.0": version "5.62.0" resolved "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.62.0.tgz" integrity sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA== @@ -2661,16 +2687,16 @@ acorn-walk@^7.1.1: resolved "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz" integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== +"acorn@^6.0.0 || ^7.0.0 || ^8.0.0", acorn@^8, acorn@^8.2.4, acorn@^8.7.1, acorn@^8.8.2, acorn@^8.9.0: + version "8.11.2" + resolved "https://registry.npmjs.org/acorn/-/acorn-8.11.2.tgz" + integrity sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w== + acorn@^7.1.1: version "7.4.1" resolved "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz" integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== -acorn@^8.2.4, acorn@^8.7.1, acorn@^8.8.2, acorn@^8.9.0: - version "8.11.2" - resolved "https://registry.npmjs.org/acorn/-/acorn-8.11.2.tgz" - integrity sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w== - address@^1.0.1, address@^1.1.2: version "1.2.2" resolved "https://registry.npmjs.org/address/-/address-1.2.2.tgz" @@ -2710,7 +2736,7 @@ ajv-keywords@^5.1.0: dependencies: fast-deep-equal "^3.1.3" -ajv@^6.12.2, ajv@^6.12.4, ajv@^6.12.5: +ajv@^6.12.2, ajv@^6.12.4, ajv@^6.12.5, ajv@^6.9.1: version "6.12.6" resolved "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz" integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== @@ -2730,7 +2756,7 @@ ajv@^8.0.0: require-from-string "^2.0.2" uri-js "^4.2.2" -ajv@^8.6.0: +ajv@^8.6.0, ajv@>=8: version "8.12.0" resolved "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz" integrity sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA== @@ -2740,7 +2766,7 @@ ajv@^8.6.0: require-from-string "^2.0.2" uri-js "^4.2.2" -ajv@^8.9.0: +ajv@^8.8.2, ajv@^8.9.0: version "8.12.0" resolved "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz" integrity sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA== @@ -3233,7 +3259,7 @@ browser-process-hrtime@^1.0.0: resolved "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz" integrity sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow== -browserslist@^4.0.0, browserslist@^4.14.5, browserslist@^4.18.1, browserslist@^4.21.10, browserslist@^4.21.4, browserslist@^4.21.9, browserslist@^4.22.1: +browserslist@^4.0.0, browserslist@^4.14.5, browserslist@^4.18.1, browserslist@^4.21.10, browserslist@^4.21.4, browserslist@^4.21.9, browserslist@^4.22.1, "browserslist@>= 4", "browserslist@>= 4.21.0", browserslist@>=4: version "4.22.1" resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.22.1.tgz" integrity sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ== @@ -3522,6 +3548,11 @@ commondir@^1.0.1: resolved "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz" integrity sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg== +component-emitter@^1.3.0: + version "1.3.0" + resolved "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz" + integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg== + compressible@~2.0.16: version "2.0.18" resolved "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz" @@ -4585,7 +4616,7 @@ eslint-webpack-plugin@^3.1.1: normalize-path "^3.0.0" schema-utils "^4.0.0" -eslint@^8.3.0: +eslint@*, "eslint@^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8", "eslint@^3 || ^4 || ^5 || ^6 || ^7 || ^8", "eslint@^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0", "eslint@^6.0.0 || ^7.0.0 || ^8.0.0", "eslint@^6.0.0 || ^7.0.0 || >=8.0.0", "eslint@^7.0.0 || ^8.0.0", "eslint@^7.5.0 || ^8.0.0", eslint@^8.0.0, eslint@^8.1.0, eslint@^8.3.0, "eslint@>= 6": version "8.53.0" resolved "https://registry.npmjs.org/eslint/-/eslint-8.53.0.tgz" integrity sha512-N4VuiPjXDUa4xVeV/GC/RV3hQW9Nw+Y463lkWaKKXKYMvmRiRDAtfpuPFLN+E1/6ZhyR8J2ig+eVREnYgUsiag== @@ -6166,7 +6197,7 @@ jest-resolve-dependencies@^27.5.1: jest-regex-util "^27.5.1" jest-snapshot "^27.5.1" -jest-resolve@^27.4.2, jest-resolve@^27.5.1: +jest-resolve@*, jest-resolve@^27.4.2, jest-resolve@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-resolve/-/jest-resolve-27.5.1.tgz" integrity sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw== @@ -6388,7 +6419,7 @@ jest-worker@^28.0.2: merge-stream "^2.0.0" supports-color "^8.0.0" -jest@^27.4.3: +"jest@^27.0.0 || ^28.0.0", jest@^27.4.3: version "27.5.1" resolved "https://registry.npmjs.org/jest/-/jest-27.5.1.tgz" integrity sha512-Yn0mADZB89zTtjkPJEXwrac3LHudkQMR+Paqa8uxJHCBr9agxztUifWCyiYrjhMPBoUVBjyny0I7XH6ozDr7QQ== @@ -6540,6 +6571,11 @@ jsonpointer@^5.0.0: object.assign "^4.1.4" object.values "^1.1.6" +"keycharm@^0.2.0 || ^0.3.0 || ^0.4.0": + version "0.4.0" + resolved "https://registry.npmjs.org/keycharm/-/keycharm-0.4.0.tgz" + integrity sha512-TyQTtsabOVv3MeOpR92sIKk/br9wxS+zGj4BG7CR8YbK4jM3tyIBaF0zhzeBUMx36/Q/iQLOKKOT+3jOQtemRQ== + keyv@^4.5.3: version "4.5.4" resolved "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz" @@ -7851,15 +7887,7 @@ postcss-value-parser@^4.0.0, postcss-value-parser@^4.1.0, postcss-value-parser@^ resolved "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz" integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ== -postcss@^7.0.35: - version "7.0.39" - resolved "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz" - integrity sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA== - dependencies: - picocolors "^0.2.1" - source-map "^0.6.1" - -postcss@^8.3.5, postcss@^8.4.21, postcss@^8.4.23, postcss@^8.4.4: +"postcss@^7.0.0 || ^8.0.1", postcss@^8, postcss@^8.0.0, postcss@^8.0.3, postcss@^8.0.9, postcss@^8.1.0, postcss@^8.1.4, postcss@^8.2, postcss@^8.2.14, postcss@^8.2.15, postcss@^8.2.2, postcss@^8.3, postcss@^8.3.5, postcss@^8.4, postcss@^8.4.21, postcss@^8.4.23, postcss@^8.4.4, postcss@^8.4.6, "postcss@>= 8", postcss@>=8, postcss@>=8.0.9: version "8.4.31" resolved "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz" integrity sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ== @@ -7868,6 +7896,14 @@ postcss@^8.3.5, postcss@^8.4.21, postcss@^8.4.23, postcss@^8.4.4: picocolors "^1.0.0" source-map-js "^1.0.2" +postcss@^7.0.35: + version "7.0.39" + resolved "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz" + integrity sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA== + dependencies: + picocolors "^0.2.1" + source-map "^0.6.1" + prelude-ls@^1.2.1: version "1.2.1" resolved "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz" @@ -7956,7 +7992,7 @@ prop-types-extra@^1.1.0: react-is "^16.3.2" warning "^4.0.0" -prop-types@^15.6.2, prop-types@^15.8.1: +prop-types@^15.6.2, prop-types@^15.7.2, prop-types@^15.8.1: version "15.8.1" resolved "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz" integrity sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg== @@ -8094,7 +8130,7 @@ react-dev-utils@^12.0.1: strip-ansi "^6.0.1" text-table "^0.2.0" -react-dom@^18.2.0: +"react-dom@^15.3.0 || ^16.0.0 || ^17.0.0 || ^18.0.0", react-dom@^18.0.0, react-dom@^18.2.0, react-dom@>=16.14.0, react-dom@>=16.6.0, react-dom@>=16.8: version "18.2.0" resolved "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz" integrity sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g== @@ -8158,7 +8194,7 @@ react-lifecycles-compat@^3.0.4: resolved "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz" integrity sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA== -react-refresh@^0.11.0: +react-refresh@^0.11.0, "react-refresh@>=0.10.0 <1.0.0": version "0.11.0" resolved "https://registry.npmjs.org/react-refresh/-/react-refresh-0.11.0.tgz" integrity sha512-F27qZr8uUqwhWZboondsPx8tnC3Ct3SxZA3V5WyEvujRyyNv0VYPhoBg1gZ8/MV5tubQp76Trw8lTv9hzRBa+A== @@ -8233,6 +8269,13 @@ react-scripts@5.0.1: optionalDependencies: fsevents "^2.3.2" +react-switch@^7.0.0: + version "7.0.0" + resolved "https://registry.npmjs.org/react-switch/-/react-switch-7.0.0.tgz" + integrity sha512-KkDeW+cozZXI6knDPyUt3KBN1rmhoVYgAdCJqAh7st7tk8YE6N0iR89zjCWO8T8dUTeJGTR0KU+5CHCRMRffiA== + dependencies: + prop-types "^15.7.2" + react-transition-group@^4.4.5: version "4.4.5" resolved "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.5.tgz" @@ -8243,7 +8286,7 @@ react-transition-group@^4.4.5: loose-envify "^1.4.0" prop-types "^15.6.2" -react@^18.2.0: +react@*, "react@^15.3.0 || ^16.0.0 || ^17.0.0 || ^18.0.0", "react@^16.6.0 || 17 || 18", "react@^16.8.0 || ^17.0.0-rc.1 || ^18.0.0", react@^18.0.0, react@^18.2.0, "react@>= 16", react@>=0.14.0, react@>=15.0.0, react@>=16.14.0, react@>=16.3, react@>=16.6.0, react@>=16.8, react@>=16.8.0: version "18.2.0" resolved "https://registry.npmjs.org/react/-/react-18.2.0.tgz" integrity sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ== @@ -8484,7 +8527,7 @@ rollup-plugin-terser@^7.0.0: serialize-javascript "^4.0.0" terser "^5.0.0" -rollup@^2.43.1: +"rollup@^1.20.0 || ^2.0.0", rollup@^1.20.0||^2.0.0, rollup@^2.0.0, rollup@^2.43.1: version "2.79.1" resolved "https://registry.npmjs.org/rollup/-/rollup-2.79.1.tgz" integrity sha512-uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw== @@ -9389,7 +9432,7 @@ type-fest@^0.20.2: resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz" integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== -type-fest@^0.21.3: +type-fest@^0.21.3, "type-fest@>=0.17.0 <5.0.0": version "0.21.3" resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz" integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== @@ -9448,7 +9491,7 @@ typedarray-to-buffer@^3.1.5: dependencies: is-typedarray "^1.0.0" -typescript@^5.2.2: +"typescript@^3.2.1 || ^4", typescript@^5.2.2, "typescript@>= 2.7", "typescript@>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta", typescript@5: version "5.2.2" resolved "https://registry.npmjs.org/typescript/-/typescript-5.2.2.tgz" integrity sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w== @@ -9591,7 +9634,7 @@ utils-merge@1.0.1: resolved "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz" integrity sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA== -uuid@^8.3.2: +"uuid@^3.4.0 || ^7.0.0 || ^8.0.0 || ^9.0.0", uuid@^8.3.2: version "8.3.2" resolved "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz" integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== @@ -9610,11 +9653,21 @@ vary@~1.1.2: resolved "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz" integrity sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg== +"vis-data@^6.3.0 || ^7.0.0": + version "7.1.8" + resolved "https://registry.npmjs.org/vis-data/-/vis-data-7.1.8.tgz" + integrity sha512-h/cxRDVqnpqqpTBqwUbbKIpWVovOQ+h5rbFS/kio8TUH1np98Lv9bHdWZxahJlyzBaBR9KGvwGHB00jn3MjLbQ== + vis-network@^9.1.9: version "9.1.9" resolved "https://registry.npmjs.org/vis-network/-/vis-network-9.1.9.tgz" integrity sha512-Ft+hLBVyiLstVYSb69Q1OIQeh3FeUxHJn0WdFcq+BFPqs+Vq1ibMi2sb//cxgq1CP7PH4yOXnHxEH/B2VzpZYA== +vis-util@^5.0.1: + version "5.0.6" + resolved "https://registry.npmjs.org/vis-util/-/vis-util-5.0.6.tgz" + integrity sha512-HyAZ+x3q6/Xh6OFPIQOGPOPgnHL9KVNvWW6+k3aTCbAG8Tq7vncgRat6oY8ywZ7j1Fq0mOfUb6fLrFvfI9nUKg== + w3c-hr-time@^1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz" @@ -9689,7 +9742,7 @@ webpack-dev-middleware@^5.3.1: range-parser "^1.2.1" schema-utils "^4.0.0" -webpack-dev-server@^4.6.0: +webpack-dev-server@^4.6.0, "webpack-dev-server@3.x || 4.x": version "4.15.1" resolved "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.15.1.tgz" integrity sha512-5hbAst3h3C3L8w6W4P96L5vaV0PxSmJhxZvWKYIdgxOQm8pNZ5dEOmmSLBVpP85ReeyRt6AS1QJNyo/oFFPeVA== @@ -9754,7 +9807,7 @@ webpack-sources@^3.2.3: resolved "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz" integrity sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w== -webpack@^5.64.4: +"webpack@^4.0.0 || ^5.0.0", "webpack@^4.37.0 || ^5.0.0", "webpack@^4.4.0 || ^5.9.0", "webpack@^4.44.2 || ^5.47.0", webpack@^5.0.0, webpack@^5.1.0, webpack@^5.20.0, webpack@^5.64.4, "webpack@>= 4", webpack@>=2, "webpack@>=4.43.0 <6.0.0": version "5.89.0" resolved "https://registry.npmjs.org/webpack/-/webpack-5.89.0.tgz" integrity sha512-qyfIC10pOr70V+jkmud8tMfajraGCZMBWJtrmuBymQKCrLTRejBI8STDp1MCyZu/QTdZSeacCQYpYNQVOzX5kw== From a1d80117f1a38cbd8ddc706ff7e7f948dfb7a3a3 Mon Sep 17 00:00:00 2001 From: Pierre Ferreira Date: Fri, 10 Nov 2023 15:53:10 +0100 Subject: [PATCH 08/11] =?UTF-8?q?affichage=20des=20joueurs=20retravaill?= =?UTF-8?q?=C3=A9=20lors=20d'une=20partie=20:=20affichage=20depuis=20une?= =?UTF-8?q?=20liste=20en=20back=20end,=20limit=C3=A9=20a=20deux=20colonnes?= =?UTF-8?q?.=20:zap:?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/Components/PlayerList.tsx | 20 +++++++++++ cryptide_project/src/Pages/InGame.css | 7 +++- cryptide_project/src/Pages/InGame.tsx | 35 ++++++++++++++++--- 3 files changed, 57 insertions(+), 5 deletions(-) create mode 100644 cryptide_project/src/Components/PlayerList.tsx diff --git a/cryptide_project/src/Components/PlayerList.tsx b/cryptide_project/src/Components/PlayerList.tsx new file mode 100644 index 0000000..19d29c4 --- /dev/null +++ b/cryptide_project/src/Components/PlayerList.tsx @@ -0,0 +1,20 @@ + +import React from 'react'; +import PersonStatus from './PersonStatus'; + +//@ts-ignore +function PlayerList({ players }) { + return ( +
+ { + //@ts-ignore + players.map((player, index) => ( + + )) + } +
+ + ); +} + +export default PlayerList; \ No newline at end of file diff --git a/cryptide_project/src/Pages/InGame.css b/cryptide_project/src/Pages/InGame.css index 019a26d..690147a 100644 --- a/cryptide_project/src/Pages/InGame.css +++ b/cryptide_project/src/Pages/InGame.css @@ -96,4 +96,9 @@ width: 100px; height: 60px; -} \ No newline at end of file +} + +/* #playerCanvasBody{ + columns: 2 auto; + grid-row: 2; +} */ \ No newline at end of file diff --git a/cryptide_project/src/Pages/InGame.tsx b/cryptide_project/src/Pages/InGame.tsx index a14b67d..389f709 100644 --- a/cryptide_project/src/Pages/InGame.tsx +++ b/cryptide_project/src/Pages/InGame.tsx @@ -9,6 +9,7 @@ import GraphContainer from '../Components/GraphContainer'; import ChoiceBar from '../Components/ChoiceBar'; import ButtonImgNav from '../Components/ButtonImgNav'; import PersonStatus from '../Components/PersonStatus'; +import PlayerList from '../Components/PlayerList'; /* Icon */ import Leave from "../res/icon/leave.png"; @@ -33,6 +34,29 @@ import { FormattedMessage } from 'react-intl'; //@ts-ignore const InGame = ({locale, changeLocale}) => { + + const players = [ + { state: Replay, name: 'Dummy' }, + { state: Replay, name: 'Boat' }, + { state: Replay, name: 'Bot-tom' }, + { state: Replay, name: 'Dummy' }, + { state: Replay, name: 'Boat' }, + { state: Replay, name: 'Bot-tom' }, + { state: Replay, name: 'Dummy' }, + { state: Replay, name: 'Boat' }, + { state: Replay, name: 'Bot-tom' }, + { state: Replay, name: 'Dummy' }, + { state: Replay, name: 'Boat' }, + { state: Replay, name: 'Bot-tom' }, + { state: Replay, name: 'Dummy' }, + { state: Replay, name: 'Boat' }, + { state: Replay, name: 'Bot-tom' }, + // Ajouter d'autres joueurs au besoin + ]; + + + + const [showChoiceBar, setShowChoiceBar] = useState(false); const handleNodeClick = (shouldShowChoiceBar: boolean) => { @@ -140,10 +164,13 @@ const InGame = ({locale, changeLocale}) => {

Il y a 3 joueurs

- {/* affichage d'une liste responsive dynamic */} - - - + {/* affichage d'une liste responsive dynamic */} + {/*
+ + + +
*/} +
From 1e965a011e1ad253ccb1930b97dda75f135ba728 Mon Sep 17 00:00:00 2001 From: Pierre Ferreira Date: Mon, 13 Nov 2023 09:11:36 +0100 Subject: [PATCH 09/11] affichage du nombre de joueur dynamic :pencil2: --- cryptide_project/src/Pages/InGame.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cryptide_project/src/Pages/InGame.tsx b/cryptide_project/src/Pages/InGame.tsx index 389f709..139d6d3 100644 --- a/cryptide_project/src/Pages/InGame.tsx +++ b/cryptide_project/src/Pages/InGame.tsx @@ -50,7 +50,7 @@ const InGame = ({locale, changeLocale}) => { { state: Replay, name: 'Bot-tom' }, { state: Replay, name: 'Dummy' }, { state: Replay, name: 'Boat' }, - { state: Replay, name: 'Bot-tom' }, + { state: Replay, name: 'Bot-tom' } // Ajouter d'autres joueurs au besoin ]; @@ -161,7 +161,7 @@ const InGame = ({locale, changeLocale}) => { onHide={handleCloseP}> Joueurs -

Il y a 3 joueurs

+

Il y a {players.length} joueurs

{/* affichage d'une liste responsive dynamic */} From faf141db42e3a42d52d31e7cb4c1ff5486ef6233 Mon Sep 17 00:00:00 2001 From: Pierre Ferreira Date: Mon, 13 Nov 2023 10:49:34 +0100 Subject: [PATCH 10/11] ajout d'un theme global pour toutes les couleurs primaire, secondaire et quelque texte principaux :lipstick: --- cryptide_project/src/App.tsx | 34 ++++++++------ .../src/Components/BigButtonNav.tsx | 11 ++++- .../src/Components/ButtonImgNav.css | 8 ++-- .../src/Components/ButtonImgNav.tsx | 5 ++- cryptide_project/src/Components/ChoiceBar.css | 3 +- cryptide_project/src/Components/ChoiceBar.tsx | 5 ++- cryptide_project/src/Components/NavBar.css | 3 +- cryptide_project/src/Components/NavBar.tsx | 16 ++++--- .../src/Components/PersonStatus.tsx | 8 +++- cryptide_project/src/Pages/EndGame.css | 2 +- cryptide_project/src/Pages/EndGame.tsx | 10 ++++- cryptide_project/src/Pages/Home.css | 4 +- cryptide_project/src/Pages/Home.tsx | 12 ++++- cryptide_project/src/Pages/InGame.css | 4 +- cryptide_project/src/Pages/InGame.tsx | 44 +++++++++++++++---- cryptide_project/src/Pages/Lobby.css | 6 +-- cryptide_project/src/Pages/Lobby.tsx | 12 ++++- cryptide_project/src/Pages/Play.css | 9 ++-- cryptide_project/src/Pages/Play.tsx | 10 +++-- cryptide_project/src/Style/Color.tsx | 10 +++++ cryptide_project/src/Style/Global.css | 2 +- cryptide_project/src/Style/Theme.tsx | 13 ++++++ cryptide_project/src/Style/ThemeContext.tsx | 15 +++++++ 23 files changed, 183 insertions(+), 63 deletions(-) create mode 100644 cryptide_project/src/Style/Color.tsx create mode 100644 cryptide_project/src/Style/Theme.tsx create mode 100644 cryptide_project/src/Style/ThemeContext.tsx diff --git a/cryptide_project/src/App.tsx b/cryptide_project/src/App.tsx index 0f43e87..2765a15 100644 --- a/cryptide_project/src/App.tsx +++ b/cryptide_project/src/App.tsx @@ -23,6 +23,9 @@ import { BrowserRouter, Route, Routes, useLocation } from "react-router-dom"; /* Style */ import './App.css'; +import { ThemeProvider } from './Style/ThemeContext'; +// import theme from './Style/Theme'; + /* bootstrap */ import 'bootstrap/dist/css/bootstrap.min.css'; @@ -58,22 +61,25 @@ function App() { // logo //
//
+ //@ts-ignore - - {/* */} - {hasNavbarVisible && } - - } /> - } /> - } /> - } /> - } /> - } /> - } /> - } /> - - + + + {/* */} + {hasNavbarVisible && } + + } /> + } /> + } /> + } /> + } /> + } /> + } /> + } /> + + + ); } diff --git a/cryptide_project/src/Components/BigButtonNav.tsx b/cryptide_project/src/Components/BigButtonNav.tsx index 6f4af20..bc8087b 100644 --- a/cryptide_project/src/Components/BigButtonNav.tsx +++ b/cryptide_project/src/Components/BigButtonNav.tsx @@ -3,11 +3,20 @@ import { Link } from 'react-router-dom'; import './ButtonImgNav.css'; import { FormattedMessage } from 'react-intl'; +import { useTheme } from '../Style/ThemeContext'; +import COLORS from '../Style/Color'; //@ts-ignore function BigButtonNav({ dest, img}) { + + const theme = useTheme(); + + // const mystyle = { + // backgroundColor: "#0064E0", + // }; + return ( - diff --git a/cryptide_project/src/Components/ButtonImgNav.css b/cryptide_project/src/Components/ButtonImgNav.css index 4f69b15..e625ce2 100644 --- a/cryptide_project/src/Components/ButtonImgNav.css +++ b/cryptide_project/src/Components/ButtonImgNav.css @@ -3,8 +3,8 @@ width: auto; height: 65px; - background-color: #85C9C2; - color: #2A4541; + /* background-color: #85C9C2; */ + /* color: #2A4541; */ border-radius: 15px; border-width: 0; @@ -20,8 +20,8 @@ width: auto; height: 100px; - background-color: #85C9C2; - color: #2A4541; + /* background-color: #85C9C2; */ + /* color: #2A4541; */ border-radius: 15px; border-width: 0; diff --git a/cryptide_project/src/Components/ButtonImgNav.tsx b/cryptide_project/src/Components/ButtonImgNav.tsx index 6e3e78d..cd5b8d0 100644 --- a/cryptide_project/src/Components/ButtonImgNav.tsx +++ b/cryptide_project/src/Components/ButtonImgNav.tsx @@ -3,11 +3,14 @@ import { Link } from 'react-router-dom'; import './ButtonImgNav.css'; import { FormattedMessage } from 'react-intl'; +import { useTheme } from '../Style/ThemeContext'; + //@ts-ignore function ButtonImgNav({ dest, img, text = "" }) { + const theme = useTheme(); return ( {/*target='_blank' ==> ouvre un nouvelle onglet*/ } - diff --git a/cryptide_project/src/Components/ChoiceBar.css b/cryptide_project/src/Components/ChoiceBar.css index 94a86a2..5eedba2 100644 --- a/cryptide_project/src/Components/ChoiceBar.css +++ b/cryptide_project/src/Components/ChoiceBar.css @@ -13,10 +13,9 @@ .choice-bar-button { margin: 5px; padding: 10px; - background-color: lightseagreen; + /* background-color: lightseagreen; */ color: #fff; border: 2px solid grey; border-radius: 5px; cursor: pointer; } - \ No newline at end of file diff --git a/cryptide_project/src/Components/ChoiceBar.tsx b/cryptide_project/src/Components/ChoiceBar.tsx index baafc29..6769f62 100644 --- a/cryptide_project/src/Components/ChoiceBar.tsx +++ b/cryptide_project/src/Components/ChoiceBar.tsx @@ -1,15 +1,16 @@ import React from 'react'; import './ChoiceBar.css'; +import { useTheme } from '../Style/ThemeContext'; const ChoiceBar = () => { const players = ['Player1', 'Player2', 'Player3']; - + const theme = useTheme(); return (

Quel joueur voulez-vous interroger ?

{players.map((player, index) => ( - ))} diff --git a/cryptide_project/src/Components/NavBar.css b/cryptide_project/src/Components/NavBar.css index ad887b9..c1854e9 100644 --- a/cryptide_project/src/Components/NavBar.css +++ b/cryptide_project/src/Components/NavBar.css @@ -1,6 +1,6 @@ .custom-navbar{ - background-color: #85C9C2; + /* background-color: #85C9C2; */ color: #fff; text-emphasis-color: #fff; } @@ -17,7 +17,6 @@ .navbar-title-dd a { - background-color: #2A4541; color: #fff; border-radius: 15; padding: 10px 20px; /* Ajustez le rembourrage selon vos préférences */ diff --git a/cryptide_project/src/Components/NavBar.tsx b/cryptide_project/src/Components/NavBar.tsx index 9f88892..98fff75 100644 --- a/cryptide_project/src/Components/NavBar.tsx +++ b/cryptide_project/src/Components/NavBar.tsx @@ -14,21 +14,25 @@ import { HiLanguage } from 'react-icons/hi2'; /* Components */ import './NavBar.css'; +/* Style */ +import { useTheme } from '../Style/ThemeContext'; + // @ts-ignore function AppNavbar({changeLocale}) { + const theme = useTheme(); return ( - +
-

Cryptide

-
by Crypteam
+

Cryptide

+
by Crypteam