From c3defa5c6d6e0726167ca2dd4f848daa7e643dee Mon Sep 17 00:00:00 2001 From: zkldi Date: Fri, 4 Jun 2021 13:33:31 +0100 Subject: [PATCH] Experimental SessionCalculatedData change --- common/js/types.d.ts | 33 +++++++++++++++++++++++---------- common/src/types.ts | 34 ++++++++++++++++++++++++---------- 2 files changed, 47 insertions(+), 20 deletions(-) diff --git a/common/js/types.d.ts b/common/js/types.d.ts index 5e6ab28af..01a89e2c6 100644 --- a/common/js/types.d.ts +++ b/common/js/types.d.ts @@ -361,7 +361,24 @@ interface SessionScoreNewInfo { isNewScore: true; } export declare type SessionScoreInfo = SessionScorePBInfo | SessionScoreNewInfo; -export interface SessionDocument extends MongoDBDocument { +interface SessionCalculatedDataLookup { + "iidx:SP": "BPI" | "ktRating" | "ktLampRating"; + "iidx:DP": "BPI" | "ktRating" | "ktLampRating"; + "popn:9B": never; + "sdvx:Single": "VF6" | "ProfileVF6"; + "usc:Single": "VF6" | "ProfileVF6"; + "ddr:SP": "MFCP" | "ktRating"; + "ddr:DP": "MFCP" | "ktRating"; + "maimai:Single": "ktRating"; + "jubeat:Single": "jubility"; + "museca:Single": "ktRating"; + "bms:7K": "ktLampRating"; + "bms:14K": "ktLampRating"; + "chunithm:Single": "rating"; + "gitadora:Gita": "skill"; + "gitadora:Dora": "skill"; +} +export interface SessionDocument extends MongoDBDocument { userID: integer; sessionID: string; scoreInfo: SessionScoreInfo[]; @@ -373,11 +390,7 @@ export interface SessionDocument extends MongoDBDocument { timeInserted: integer; timeEnded: integer; timeStarted: integer; - calculatedData: { - lampPerf: number | null; - scorePerf: number | null; - perf: number | null; - }; + calculatedData: Partial>; highlight: boolean; } export interface SessionViewDocument extends MongoDBDocument { @@ -561,7 +574,7 @@ export interface UserGameStats extends MongoDBD playtype: IDStringToPlaytype[I]; rating: number; lampRating: number; - customRatings: Partial>; + customRatings: Partial>; classes: Partial>; } /** @@ -923,7 +936,7 @@ export interface JudgementLookup { "gitadora:Gita": GitadoraJudges; "gitadora:Dora": GitadoraJudges; } -export interface GameSpecificCalcLookup { +export interface ScoreCalculatedDataLookup { "iidx:SP": "BPI" | "K%" | "ktRating" | "ktLampRating"; "iidx:DP": "BPI" | "ktRating" | "ktLampRating"; "popn:9B": never; @@ -957,7 +970,7 @@ export interface ScoreDocument extends MongoDBD hitMeta: Partial; }; scoreMeta: Partial; - calculatedData: Partial>; + calculatedData: Partial>; timeAchieved: integer | null; songID: integer; chartID: string; @@ -1002,7 +1015,7 @@ export interface PBScoreDocument extends MongoD hitData: Partial>; hitMeta: Partial; }; - calculatedData: Partial>; + calculatedData: Partial>; } export declare type FileUploadImportTypes = "file/eamusement-iidx-csv" | "file/batch-manual" | "file/solid-state-squad" | "file/mer-iidx" | "file/pli-iidx-csv"; export declare type APIImportTypes = "api/flo-iidx" | "api/flo-sdvx" | "api/eag-iidx" | "api/eag-sdvx" | "api/arc-iidx" | "api/arc-sdvx" | "api/arc-ddr"; diff --git a/common/src/types.ts b/common/src/types.ts index 38c76f52f..ef15ae2d0 100644 --- a/common/src/types.ts +++ b/common/src/types.ts @@ -526,7 +526,25 @@ interface SessionScoreNewInfo { export type SessionScoreInfo = SessionScorePBInfo | SessionScoreNewInfo; -export interface SessionDocument extends MongoDBDocument { +interface SessionCalculatedDataLookup { + "iidx:SP": "BPI" | "ktRating" | "ktLampRating"; + "iidx:DP": "BPI" | "ktRating" | "ktLampRating"; + "popn:9B": never; // @todo + "sdvx:Single": "VF6" | "ProfileVF6"; + "usc:Single": "VF6" | "ProfileVF6"; + "ddr:SP": "MFCP" | "ktRating"; + "ddr:DP": "MFCP" | "ktRating"; + "maimai:Single": "ktRating"; + "jubeat:Single": "jubility"; + "museca:Single": "ktRating"; + "bms:7K": "ktLampRating"; + "bms:14K": "ktLampRating"; + "chunithm:Single": "rating"; + "gitadora:Gita": "skill"; + "gitadora:Dora": "skill"; +} + +export interface SessionDocument extends MongoDBDocument { userID: integer; sessionID: string; scoreInfo: SessionScoreInfo[]; @@ -538,11 +556,7 @@ export interface SessionDocument extends MongoDBDocument { timeInserted: integer; timeEnded: integer; timeStarted: integer; - calculatedData: { - lampPerf: number | null; - scorePerf: number | null; - perf: number | null; - }; + calculatedData: Partial>; highlight: boolean; } @@ -763,7 +777,7 @@ export interface UserGameStats extends MongoDBD playtype: IDStringToPlaytype[I]; rating: number; lampRating: number; - customRatings: Partial>; + customRatings: Partial>; classes: Partial>; } @@ -1131,7 +1145,7 @@ export interface JudgementLookup { "gitadora:Dora": GitadoraJudges; } -export interface GameSpecificCalcLookup { +export interface ScoreCalculatedDataLookup { "iidx:SP": "BPI" | "K%" | "ktRating" | "ktLampRating"; "iidx:DP": "BPI" | "ktRating" | "ktLampRating"; "popn:9B": never; // @todo @@ -1166,7 +1180,7 @@ export interface ScoreDocument extends MongoDBD hitMeta: Partial; }; scoreMeta: Partial; - calculatedData: Partial>; + calculatedData: Partial>; timeAchieved: integer | null; songID: integer; chartID: string; @@ -1213,7 +1227,7 @@ export interface PBScoreDocument extends MongoD hitData: Partial>; hitMeta: Partial; }; - calculatedData: Partial>; + calculatedData: Partial>; } export type FileUploadImportTypes =