mirror of
https://github.com/MewoLab/AquaDX.git
synced 2026-02-08 18:47:26 +08:00
Merge branch 'v1-dev' of https://github.com/hykilpikonna/AquaDX into v1-dev
This commit is contained in:
45
AquaNet/src/LoadingMessage.svelte
Normal file
45
AquaNet/src/LoadingMessage.svelte
Normal file
@@ -0,0 +1,45 @@
|
|||||||
|
<div class="pleaseWait">
|
||||||
|
<div class="loadingCircleDiv"><div class="loadingCircle">
|
||||||
|
<div></div>
|
||||||
|
</div></div>
|
||||||
|
<style type="text/css">
|
||||||
|
.pleaseWait {
|
||||||
|
margin:auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes loadingCircle {
|
||||||
|
0% { transform: rotate(0deg) }
|
||||||
|
50% { transform: rotate(180deg) }
|
||||||
|
100% { transform: rotate(360deg) }
|
||||||
|
}
|
||||||
|
.loadingCircle div {
|
||||||
|
position: absolute;
|
||||||
|
animation: loadingCircle 1s linear infinite;
|
||||||
|
width: 82px;
|
||||||
|
height: 82px;
|
||||||
|
top: 9px;
|
||||||
|
left: 9px;
|
||||||
|
border-radius: 50%;
|
||||||
|
box-shadow: 0 4.1px 0 0 #93dbe9;
|
||||||
|
transform-origin: 41px 43.05px;
|
||||||
|
}
|
||||||
|
.loadingCircleDiv {
|
||||||
|
width: 94px;
|
||||||
|
height: 94px;
|
||||||
|
display: inline-block;
|
||||||
|
overflow: hidden;
|
||||||
|
background: none;
|
||||||
|
}
|
||||||
|
.loadingCircle {
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
position: relative;
|
||||||
|
transform: translateZ(0) scale(0.94);
|
||||||
|
backface-visibility: hidden;
|
||||||
|
transform-origin: 0 0;
|
||||||
|
}
|
||||||
|
.loadingCircle div { box-sizing: content-box; }
|
||||||
|
</style>
|
||||||
|
<p>Please Wait...</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
@@ -64,6 +64,7 @@ export interface GenericGamePlaylog {
|
|||||||
|
|
||||||
export interface GenericRanking {
|
export interface GenericRanking {
|
||||||
name: string
|
name: string
|
||||||
|
username: string
|
||||||
rank: number
|
rank: number
|
||||||
accuracy: number
|
accuracy: number
|
||||||
rating: number
|
rating: number
|
||||||
@@ -103,11 +104,13 @@ export interface MusicMeta {
|
|||||||
composer: string,
|
composer: string,
|
||||||
bpm: number,
|
bpm: number,
|
||||||
ver: number,
|
ver: number,
|
||||||
note: {
|
notes: {
|
||||||
lv: number
|
[key: number]: {
|
||||||
designer: string
|
lv: number
|
||||||
lv_id: number
|
designer: string
|
||||||
notes: number
|
lv_id: number
|
||||||
|
notes: number
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -4,10 +4,11 @@
|
|||||||
import type {ParsedRating, Rating} from "../libs/maimaiTypes";
|
import type {ParsedRating, Rating} from "../libs/maimaiTypes";
|
||||||
import { getMult } from "../libs/scoring";
|
import { getMult } from "../libs/scoring";
|
||||||
import ErrorMessage from "../ErrorMessage.svelte";
|
import ErrorMessage from "../ErrorMessage.svelte";
|
||||||
|
import LoadingMessage from "../LoadingMessage.svelte";
|
||||||
|
|
||||||
export let userId: any
|
export let userId: any
|
||||||
userId = +userId
|
userId = +userId
|
||||||
let ifError = null;
|
let ifError: string | null;
|
||||||
|
|
||||||
if (!userId) console.error("No user ID provided")
|
if (!userId) console.error("No user ID provided")
|
||||||
|
|
||||||
@@ -97,6 +98,8 @@
|
|||||||
{/each}
|
{/each}
|
||||||
{:else if ifError}
|
{:else if ifError}
|
||||||
<ErrorMessage {ifError}/>
|
<ErrorMessage {ifError}/>
|
||||||
|
{:else}
|
||||||
|
<LoadingMessage/>
|
||||||
{/if}
|
{/if}
|
||||||
|
|
||||||
</main>
|
</main>
|
||||||
|
|||||||
@@ -3,11 +3,12 @@
|
|||||||
import { GAME } from "../libs/sdk";
|
import { GAME } from "../libs/sdk";
|
||||||
import type { GenericRanking } from "../libs/generalTypes";
|
import type { GenericRanking } from "../libs/generalTypes";
|
||||||
import ErrorMessage from "../ErrorMessage.svelte";
|
import ErrorMessage from "../ErrorMessage.svelte";
|
||||||
|
import LoadingMessage from "../LoadingMessage.svelte";
|
||||||
|
|
||||||
title(`Ranking`);
|
title(`Ranking`);
|
||||||
|
|
||||||
let d: { users: GenericRanking[] };
|
let d: { users: GenericRanking[] };
|
||||||
let ifError = null;
|
let ifError: string | null;
|
||||||
Promise.all([GAME.ranking("mai2")])
|
Promise.all([GAME.ranking("mai2")])
|
||||||
.then(([users]) => {
|
.then(([users]) => {
|
||||||
console.log(users)
|
console.log(users)
|
||||||
@@ -49,7 +50,7 @@
|
|||||||
{:else if ifError}
|
{:else if ifError}
|
||||||
<ErrorMessage {ifError}/>
|
<ErrorMessage {ifError}/>
|
||||||
{:else}
|
{:else}
|
||||||
<p>Please Wait...</p>
|
<LoadingMessage/>
|
||||||
{/if}
|
{/if}
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
@@ -97,4 +98,6 @@
|
|||||||
|
|
||||||
&.alternate
|
&.alternate
|
||||||
background-color: $ov-light
|
background-color: $ov-light
|
||||||
|
|
||||||
|
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -9,6 +9,7 @@
|
|||||||
import { DATA, GAME } from "../libs/sdk";
|
import { DATA, GAME } from "../libs/sdk";
|
||||||
import { type GameName, getMult } from "../libs/scoring";
|
import { type GameName, getMult } from "../libs/scoring";
|
||||||
import ErrorMessage from "../ErrorMessage.svelte";
|
import ErrorMessage from "../ErrorMessage.svelte";
|
||||||
|
import LoadingMessage from "../LoadingMessage.svelte";
|
||||||
|
|
||||||
registerChart()
|
registerChart()
|
||||||
|
|
||||||
@@ -16,7 +17,7 @@
|
|||||||
export let game: GameName
|
export let game: GameName
|
||||||
game = game || "mai2"
|
game = game || "mai2"
|
||||||
let calElement: HTMLElement
|
let calElement: HTMLElement
|
||||||
let ifError = null
|
let ifError: string | null;
|
||||||
title(`User ${username}`)
|
title(`User ${username}`)
|
||||||
|
|
||||||
interface MusicAndPlay extends MusicMeta, GenericGamePlaylog {}
|
interface MusicAndPlay extends MusicMeta, GenericGamePlaylog {}
|
||||||
@@ -197,7 +198,7 @@
|
|||||||
{:else if ifError}
|
{:else if ifError}
|
||||||
<ErrorMessage {ifError}/>
|
<ErrorMessage {ifError}/>
|
||||||
{:else}
|
{:else}
|
||||||
<p>Loading...</p>
|
<LoadingMessage/>
|
||||||
{/if}
|
{/if}
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user