diff options
Diffstat (limited to 'frontend/src/components')
| -rw-r--r-- | frontend/src/components/Leaderboards.tsx | 4 | ||||
| -rw-r--r-- | frontend/src/components/MessageDialogLoad.tsx | 29 | ||||
| -rw-r--r-- | frontend/src/components/UploadRunDialog.tsx | 13 |
3 files changed, 39 insertions, 7 deletions
diff --git a/frontend/src/components/Leaderboards.tsx b/frontend/src/components/Leaderboards.tsx index b9e071c..4a107ad 100644 --- a/frontend/src/components/Leaderboards.tsx +++ b/frontend/src/components/Leaderboards.tsx | |||
| @@ -34,9 +34,7 @@ const Leaderboards: React.FC<LeaderboardsProps> = ({ data }) => { | |||
| 34 | 34 | ||
| 35 | return ( | 35 | return ( |
| 36 | <div> | 36 | <div> |
| 37 | <div style={{position: "absolute", width: "100%", height: "100%", top: "0px", left: "-350px"}}> | 37 | {MessageDialogComponent} |
| 38 | {MessageDialogComponent} | ||
| 39 | </div> | ||
| 40 | <section id='section6' className='summary2'> | 38 | <section id='section6' className='summary2'> |
| 41 | 39 | ||
| 42 | <div id='leaderboard-top' | 40 | <div id='leaderboard-top' |
diff --git a/frontend/src/components/MessageDialogLoad.tsx b/frontend/src/components/MessageDialogLoad.tsx new file mode 100644 index 0000000..381a4a4 --- /dev/null +++ b/frontend/src/components/MessageDialogLoad.tsx | |||
| @@ -0,0 +1,29 @@ | |||
| 1 | import React from 'react'; | ||
| 2 | |||
| 3 | import "../css/Dialog.css" | ||
| 4 | |||
| 5 | interface MessageDialogLoadProps { | ||
| 6 | title: string; | ||
| 7 | onClose: () => void; | ||
| 8 | }; | ||
| 9 | |||
| 10 | const MessageDialogLoad: React.FC<MessageDialogLoadProps> = ({ title, onClose }) => { | ||
| 11 | return ( | ||
| 12 | <div className='dimmer'> | ||
| 13 | <div className='dialog'> | ||
| 14 | <div className='dialog-element dialog-header'> | ||
| 15 | <span>{title}</span> | ||
| 16 | </div> | ||
| 17 | <div className='dialog-element dialog-description'> | ||
| 18 | <div style={{display: "flex", justifyContent: "center"}}> | ||
| 19 | <span className="loader"></span> | ||
| 20 | </div> | ||
| 21 | </div> | ||
| 22 | <div className='dialog-element dialog-btns-container'> | ||
| 23 | </div> | ||
| 24 | </div> | ||
| 25 | </div> | ||
| 26 | ) | ||
| 27 | } | ||
| 28 | |||
| 29 | export default MessageDialogLoad; | ||
diff --git a/frontend/src/components/UploadRunDialog.tsx b/frontend/src/components/UploadRunDialog.tsx index 212a792..22b895c 100644 --- a/frontend/src/components/UploadRunDialog.tsx +++ b/frontend/src/components/UploadRunDialog.tsx | |||
| @@ -9,6 +9,7 @@ import { API } from '../api/Api'; | |||
| 9 | import { useNavigate } from 'react-router-dom'; | 9 | import { useNavigate } from 'react-router-dom'; |
| 10 | import useMessage from '../hooks/UseMessage'; | 10 | import useMessage from '../hooks/UseMessage'; |
| 11 | import useConfirm from '../hooks/UseConfirm'; | 11 | import useConfirm from '../hooks/UseConfirm'; |
| 12 | import useMessageLoad from "../hooks/UseMessageLoad"; | ||
| 12 | 13 | ||
| 13 | interface UploadRunDialogProps { | 14 | interface UploadRunDialogProps { |
| 14 | token?: string; | 15 | token?: string; |
| @@ -21,6 +22,7 @@ const UploadRunDialog: React.FC<UploadRunDialogProps> = ({ token, open, onClose, | |||
| 21 | 22 | ||
| 22 | const { message, MessageDialogComponent } = useMessage(); | 23 | const { message, MessageDialogComponent } = useMessage(); |
| 23 | const { confirm, ConfirmDialogComponent } = useConfirm(); | 24 | const { confirm, ConfirmDialogComponent } = useConfirm(); |
| 25 | const { messageLoad, messageLoadClose, MessageDialogLoadComponent } = useMessageLoad(); | ||
| 24 | 26 | ||
| 25 | const navigate = useNavigate(); | 27 | const navigate = useNavigate(); |
| 26 | 28 | ||
| @@ -164,7 +166,9 @@ const UploadRunDialog: React.FC<UploadRunDialogProps> = ({ token, open, onClose, | |||
| 164 | return; | 166 | return; |
| 165 | } | 167 | } |
| 166 | 168 | ||
| 169 | messageLoad("Uploading..."); | ||
| 167 | const [ success, response ] = await API.post_record(token, uploadRunContent); | 170 | const [ success, response ] = await API.post_record(token, uploadRunContent); |
| 171 | messageLoadClose(); | ||
| 168 | await message("Upload Record", response); | 172 | await message("Upload Record", response); |
| 169 | onClose(success); | 173 | onClose(success); |
| 170 | navigate("/profile"); | 174 | navigate("/profile"); |
| @@ -185,6 +189,7 @@ const UploadRunDialog: React.FC<UploadRunDialogProps> = ({ token, open, onClose, | |||
| 185 | <> | 189 | <> |
| 186 | <div id="upload-run-block" /> | 190 | <div id="upload-run-block" /> |
| 187 | {MessageDialogComponent} | 191 | {MessageDialogComponent} |
| 192 | {MessageDialogLoadComponent} | ||
| 188 | {ConfirmDialogComponent} | 193 | {ConfirmDialogComponent} |
| 189 | 194 | ||
| 190 | <div id='upload-run-menu'> | 195 | <div id='upload-run-menu'> |
| @@ -234,7 +239,7 @@ const UploadRunDialog: React.FC<UploadRunDialogProps> = ({ token, open, onClose, | |||
| 234 | </div> | 239 | </div> |
| 235 | : null} | 240 | : null} |
| 236 | 241 | ||
| 237 | <span>{uploadRunContent.host_demo?.name}</span> | 242 | <span className="upload-run-demo-name">{uploadRunContent.host_demo?.name}</span> |
| 238 | </div> | 243 | </div> |
| 239 | { | 244 | { |
| 240 | games[selectedGameID].is_coop && | 245 | games[selectedGameID].is_coop && |
| @@ -246,13 +251,13 @@ const UploadRunDialog: React.FC<UploadRunDialogProps> = ({ token, open, onClose, | |||
| 246 | <div> | 251 | <div> |
| 247 | <span>Drag and drop</span> | 252 | <span>Drag and drop</span> |
| 248 | <div> | 253 | <div> |
| 249 | <span>Or click here</span><br/> | 254 | <span style={{fontFamily: "BarlowSemiCondensed-Regular"}}>Or click here</span><br/> |
| 250 | <button>Upload</button> | 255 | <button style={{borderRadius: "24px", padding: "5px 8px", margin: "5px 0px"}}>Upload</button> |
| 251 | </div> | 256 | </div> |
| 252 | </div> | 257 | </div> |
| 253 | : null} | 258 | : null} |
| 254 | 259 | ||
| 255 | <span>{uploadRunContent.partner_demo?.name}</span> | 260 | <span className="upload-run-demo-name">{uploadRunContent.partner_demo?.name}</span> |
| 256 | </div> | 261 | </div> |
| 257 | </> | 262 | </> |
| 258 | ) | 263 | ) |