refactor(minigames): derive custom-page unlock state from shared lib predicates
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
This commit is contained in:
parent
455d705eb9
commit
76fbaba293
2 changed files with 11 additions and 6 deletions
|
|
@ -4,6 +4,7 @@ import { getPayload } from "payload";
|
||||||
import { headers as nextHeaders } from "next/headers";
|
import { headers as nextHeaders } from "next/headers";
|
||||||
import { Bomb } from "lucide-react";
|
import { Bomb } from "lucide-react";
|
||||||
import { CustomMinefieldBrowser } from "@/components/frontend/eod/CustomMinefieldBrowser";
|
import { CustomMinefieldBrowser } from "@/components/frontend/eod/CustomMinefieldBrowser";
|
||||||
|
import { isEodUnlocked } from "@/lib/custom-minigames/eod";
|
||||||
|
|
||||||
export const metadata: Metadata = {
|
export const metadata: Metadata = {
|
||||||
title: "Custom Minefields (Polaris Task Force)",
|
title: "Custom Minefields (Polaris Task Force)",
|
||||||
|
|
@ -28,10 +29,11 @@ export default async function CustomMinefieldsPage() {
|
||||||
})
|
})
|
||||||
).docs[0]?.progression?.minigames?.eodMinesweeper ?? {}
|
).docs[0]?.progression?.minigames?.eodMinesweeper ?? {}
|
||||||
: {};
|
: {};
|
||||||
const unlocked =
|
const unlocked = isEodUnlocked({
|
||||||
(eod.bestTrainingTime ?? 0) > 0 &&
|
bestTrainingTime: eod.bestTrainingTime ?? 0,
|
||||||
(eod.bestPerimeterTime ?? 0) > 0 &&
|
bestPerimeterTime: eod.bestPerimeterTime ?? 0,
|
||||||
(eod.bestSupplyRoadTime ?? 0) > 0;
|
bestSupplyRoadTime: eod.bestSupplyRoadTime ?? 0,
|
||||||
|
});
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className="flex min-w-0 flex-col gap-6 p-5">
|
<div className="flex min-w-0 flex-col gap-6 p-5">
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,7 @@ import { getPayload } from "payload";
|
||||||
import { headers as nextHeaders } from "next/headers";
|
import { headers as nextHeaders } from "next/headers";
|
||||||
import { Radio } from "lucide-react";
|
import { Radio } from "lucide-react";
|
||||||
import { CustomTestBrowser } from "@/components/frontend/radio/CustomTestBrowser";
|
import { CustomTestBrowser } from "@/components/frontend/radio/CustomTestBrowser";
|
||||||
|
import { isRadioUnlocked } from "@/lib/custom-minigames/radio";
|
||||||
|
|
||||||
export const metadata: Metadata = {
|
export const metadata: Metadata = {
|
||||||
title: "Custom Radio Tests (Polaris Task Force)",
|
title: "Custom Radio Tests (Polaris Task Force)",
|
||||||
|
|
@ -28,8 +29,10 @@ export default async function CustomRadioTestsPage() {
|
||||||
})
|
})
|
||||||
).docs[0]?.progression?.minigames?.radioTraffic ?? {}
|
).docs[0]?.progression?.minigames?.radioTraffic ?? {}
|
||||||
: {};
|
: {};
|
||||||
const unlocked =
|
const unlocked = isRadioUnlocked({
|
||||||
(radio.sprintBestAccuracy ?? 0) >= 0.9 && (radio.watchBestAccuracy ?? 0) >= 0.85;
|
sprintBestAccuracy: radio.sprintBestAccuracy ?? 0,
|
||||||
|
watchBestAccuracy: radio.watchBestAccuracy ?? 0,
|
||||||
|
});
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className="flex min-w-0 flex-col gap-6 p-5">
|
<div className="flex min-w-0 flex-col gap-6 p-5">
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue