diff --git a/server/src/lib/migration/migrations.ts b/server/src/lib/migration/migrations.ts index fca2ae855..692afb08b 100644 --- a/server/src/lib/migration/migrations.ts +++ b/server/src/lib/migration/migrations.ts @@ -2,6 +2,7 @@ import UserFollowersMigration from "./migrations/add-following-to-users"; import AddLockedAt from "./migrations/add-lockedat"; import UGPTAddPreferredRanking from "./migrations/add-preferredRanking-to-ugpt"; import UGPTRivalsMigration from "./migrations/add-rivals-to-ugpt"; +import ChunithmFixPreferredDefaultEnum from "./migrations/chunithm-fix-preferred-default-enum"; import ChunithmLampSplit from "./migrations/chunithm-lamp-split"; import FixUndefinedBMSData from "./migrations/fix-undefined-bms-data"; import JoinINFCastHourCharts from "./migrations/join-inf-casthour-charts"; @@ -75,7 +76,8 @@ if (Environment.nodeEnv !== "test") { RemoveIIDX2dxtraBeginners, RmHot, ChunithmLampSplit, - OngekiV2 + OngekiV2, + ChunithmFixPreferredDefaultEnum // SdvxMaxxiveLampRearrange, // SdvxMaxxiveGoals ); diff --git a/server/src/lib/migration/migrations/chunithm-fix-preferred-default-enum.ts b/server/src/lib/migration/migrations/chunithm-fix-preferred-default-enum.ts new file mode 100644 index 000000000..bcd54f326 --- /dev/null +++ b/server/src/lib/migration/migrations/chunithm-fix-preferred-default-enum.ts @@ -0,0 +1,25 @@ +import db from "external/mongo/db"; +import type { Migration } from "utils/types"; + +const migration: Migration = { + id: "chunithm-fix-preferred-default-enum", + up: async () => { + await db["game-settings"].update( + { + game: "chunithm", + "preferences.preferredDefaultEnum": "lamp", + }, + { + $set: { + "preferences.preferredDefaultEnum": "noteLamp", + }, + }, + { multi: true } + ); + }, + down: () => { + throw new Error(`Reverting this change is not possible.`); + }, +}; + +export default migration; diff --git a/server/src/server/router/api/v1/users/_userID/games/_game/_playtype/settings/router.ts b/server/src/server/router/api/v1/users/_userID/games/_game/_playtype/settings/router.ts index 55d4f2b02..8b363aed3 100644 --- a/server/src/server/router/api/v1/users/_userID/games/_game/_playtype/settings/router.ts +++ b/server/src/server/router/api/v1/users/_userID/games/_game/_playtype/settings/router.ts @@ -4,7 +4,7 @@ import db from "external/mongo/db"; import CreateLogCtx from "lib/logger/logger"; import { p } from "prudence"; import { RequirePermissions } from "server/middleware/auth"; -import { GetGamePTConfig, PrudenceZodShim } from "tachi-common"; +import { GetGamePTConfig, GetScoreMetrics, PrudenceZodShim } from "tachi-common"; import { FormatPrError, optNull } from "utils/prudence"; import { GetUGPT } from "utils/req-tachi-data"; import { FormatUserDoc } from "utils/user"; @@ -46,7 +46,7 @@ router.patch( preferredRanking: optNull(p.isIn("global", "rival")), gameSpecific: optNull(gameSpecificSchema), - preferredDefaultEnum: optNull(p.isIn("grade", "lamp")), + preferredDefaultEnum: optNull(p.isIn(...GetScoreMetrics(gptConfig, "ENUM"))), }); if (err) {