From 032bbab8cf8b3ef0ff770aeb5a29a5f397605736 Mon Sep 17 00:00:00 2001 From: cjrace <52536248+cjrace@users.noreply.github.com> Date: Wed, 19 Mar 2025 23:20:37 +0000 Subject: [PATCH 01/16] initial frame for cow racing --- src/app/games/(games)/page.tsx | 8 ++++++++ src/app/games/cowrace/page.tsx | 27 +++++++++++++++++++++++++++ src/components/cowrace.tsx | 11 +++++++++++ tests/public/01_navigation.spec.ts | 6 ++++++ 4 files changed, 52 insertions(+) create mode 100644 src/app/games/cowrace/page.tsx create mode 100644 src/components/cowrace.tsx diff --git a/src/app/games/(games)/page.tsx b/src/app/games/(games)/page.tsx index 43bcb33..9a79b7a 100644 --- a/src/app/games/(games)/page.tsx +++ b/src/app/games/(games)/page.tsx @@ -51,6 +51,14 @@ export default async function Games() { linktext="Boom Boom Pirate" /> + + +
+ +
+ Cow racing + + +
+ + ); +} diff --git a/src/components/cowrace.tsx b/src/components/cowrace.tsx new file mode 100644 index 0000000..e60293b --- /dev/null +++ b/src/components/cowrace.tsx @@ -0,0 +1,11 @@ +"use client"; + +import { IconTractor } from "@tabler/icons-react"; + +export default function CowRace() { + return ( + <> + + + ); +} diff --git a/tests/public/01_navigation.spec.ts b/tests/public/01_navigation.spec.ts index ce1e906..fa9e3ab 100644 --- a/tests/public/01_navigation.spec.ts +++ b/tests/public/01_navigation.spec.ts @@ -46,6 +46,12 @@ test("Can navigate to the games page and through its subpages", async ({ await expect(page).toHaveURL("/games/boomboompirate"); await expect(page.locator("h1")).toContainText("Boom"); + await page.getByLabel("Back to our games list").click(); + await page.getByRole("link", { name: "Cow racing!" }).click(); + await expect(page).toHaveTitle("Cow racing | Almost Yellow"); + await expect(page).toHaveURL("/games/cowrace"); + await expect(page.locator("h1")).toContainText("Cow"); + await page.getByLabel("Back to our games list").click(); await page.getByRole("link", { name: "Home" }).click(); await expect(page).toHaveURL("/"); From f446ce13c260ba0fc666fbb947ee8700dcac518a Mon Sep 17 00:00:00 2001 From: cjrace <52536248+cjrace@users.noreply.github.com> Date: Thu, 27 Mar 2025 22:00:03 +0000 Subject: [PATCH 02/16] initial version of game (it works, they just run a lot further than you'd think!) --- package.json | 2 + pnpm-lock.yaml | 62 ++++++++ src/components/cowrace.tsx | 302 ++++++++++++++++++++++++++++++++++++- 3 files changed, 360 insertions(+), 6 deletions(-) diff --git a/package.json b/package.json index 15e6c60..1b46cd9 100644 --- a/package.json +++ b/package.json @@ -26,6 +26,8 @@ "clsx": "^2.1.1", "dotenv": "^16.4.7", "eslint": "^9.23.0", + "framer-motion": "^12.6.2", + "lucide-react": "^0.484.0", "next": "^15.2.3", "next-auth": "5.0.0-beta.25", "react": "^19.0.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index f703905..4fdd44d 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -40,6 +40,12 @@ importers: eslint: specifier: ^9.23.0 version: 9.23.0 + framer-motion: + specifier: ^12.6.2 + version: 12.6.2(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + lucide-react: + specifier: ^0.484.0 + version: 0.484.0(react@19.0.0) next: specifier: ^15.2.3 version: 15.2.3(@playwright/test@1.51.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) @@ -1826,6 +1832,23 @@ packages: } engines: { node: ">= 0.4" } + framer-motion@12.6.2: + resolution: + { + integrity: sha512-7LgPRlPs5aG8UxeZiMCMZz8firC53+2+9TnWV22tuSi38D3IFRxHRUqOREKckAkt6ztX+Dn6weLcatQilJTMcg==, + } + peerDependencies: + "@emotion/is-prop-valid": "*" + react: ^18.0.0 || ^19.0.0 + react-dom: ^18.0.0 || ^19.0.0 + peerDependenciesMeta: + "@emotion/is-prop-valid": + optional: true + react: + optional: true + react-dom: + optional: true + fs-minipass@2.1.0: resolution: { @@ -2447,6 +2470,14 @@ packages: } hasBin: true + lucide-react@0.484.0: + resolution: + { + integrity: sha512-oZy8coK9kZzvqhSgfbGkPtTgyjpBvs3ukLgDPv14dSOZtBtboryWF5o8i3qen7QbGg7JhiJBz5mK1p8YoMZTLQ==, + } + peerDependencies: + react: ^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0 + make-dir@3.1.0: resolution: { @@ -2543,6 +2574,18 @@ packages: engines: { node: ">=10" } hasBin: true + motion-dom@12.6.1: + resolution: + { + integrity: sha512-8XVsriTUEVOepoIDgE/LDGdg7qaKXWdt+wQA/8z0p8YzJDLYL8gbimZ3YkCLlj7bB2i/4UBD/g+VO7y9ZY0zHQ==, + } + + motion-utils@12.5.0: + resolution: + { + integrity: sha512-+hFFzvimn0sBMP9iPxBa9OtRX35ZQ3py0UHnb8U29VD+d8lQ8zH3dTygJWqK7av2v6yhg7scj9iZuvTS0f4+SA==, + } + ms@2.1.3: resolution: { @@ -4997,6 +5040,15 @@ snapshots: dependencies: is-callable: 1.2.7 + framer-motion@12.6.2(react-dom@19.0.0(react@19.0.0))(react@19.0.0): + dependencies: + motion-dom: 12.6.1 + motion-utils: 12.5.0 + tslib: 2.8.1 + optionalDependencies: + react: 19.0.0 + react-dom: 19.0.0(react@19.0.0) + fs-minipass@2.1.0: dependencies: minipass: 3.3.6 @@ -5370,6 +5422,10 @@ snapshots: dependencies: js-tokens: 4.0.0 + lucide-react@0.484.0(react@19.0.0): + dependencies: + react: 19.0.0 + make-dir@3.1.0: dependencies: semver: 6.3.1 @@ -5412,6 +5468,12 @@ snapshots: mkdirp@1.0.4: {} + motion-dom@12.6.1: + dependencies: + motion-utils: 12.5.0 + + motion-utils@12.5.0: {} + ms@2.1.3: {} nanoid@3.3.11: {} diff --git a/src/components/cowrace.tsx b/src/components/cowrace.tsx index e60293b..57da567 100644 --- a/src/components/cowrace.tsx +++ b/src/components/cowrace.tsx @@ -1,11 +1,301 @@ "use client"; -import { IconTractor } from "@tabler/icons-react"; +import { useState, useEffect, useRef } from "react"; +import { Button, Slider, Text, Stack, Group, Alert } from "@mantine/core"; +import { motion } from "framer-motion"; +import { Trophy, Flag, AlertTriangle } from "lucide-react"; +import playConfetti from "@/components/playconfetti"; + +const CowRace = () => { + const [numCows, setNumCows] = useState(4); // Start with 4 cows + const [raceStarted, setRaceStarted] = useState(false); + const [cowPositions, setCowPositions] = useState([]); + const [winners, setWinners] = useState([]); + const [raceIntervalId, setRaceIntervalId] = useState( + null, + ); + const cowRefs = useRef<(HTMLImageElement | null)[]>([]); + const [error, setError] = useState(null); + const raceTrackRef = useRef(null); // Add a ref for the race track + + // Ensure numCows is within the valid range + useEffect(() => { + if (numCows < 2 || numCows > 10) { + setError("Number of cows must be between 2 and 10."); + setNumCows(Math.max(2, Math.min(10, numCows))); // Correct the value + } else { + setError(null); // Clear any previous error + } + }, [numCows]); + + const startRace = () => { + if (numCows < 2 || numCows > 10) { + setError( + "Please select a valid number of cows (2-10) to start the race.", + ); + return; // Stop the race from starting + } + setRaceStarted(true); + }; + + useEffect(() => { + if (raceStarted && raceTrackRef.current) { + const raceTrackRect = raceTrackRef.current.getBoundingClientRect(); // Get the race track's position + const finishLine = raceTrackRect.right - 60; // Subtract cow width to ensure proper detection + + console.log("Finish Line:", finishLine); // Debugging + + setCowPositions(Array(numCows).fill(0)); + setWinners([]); + cowRefs.current = Array(numCows).fill(null); + + let winnerDetected = false; // Local variable to track if a winner has been detected + + const intervalId = setInterval(() => { + setCowPositions((prevPositions) => { + const newPositions = prevPositions.map( + (pos) => pos + Math.random() * 4, + ); // Adjust cow speed + + console.log("Cow Positions:", newPositions); // Debugging + + // Check if any cow has crossed the finish line + const finishedCows = newPositions + .map((pos, index) => ({ pos, index })) + .filter(({ pos }) => pos + raceTrackRect.left >= finishLine); + + console.log("Finished Cows:", finishedCows); // Debugging + + // If no winner has been detected yet and at least one cow has finished + if (!winnerDetected && finishedCows.length > 0) { + winnerDetected = true; // Mark that a winner has been detected + const sortedWinners = finishedCows.sort((a, b) => a.pos - b.pos); // Sort by position + setWinners(sortedWinners.map(({ index }) => index)); // Set winners + console.log( + "Winners:", + sortedWinners.map(({ index }) => index), + ); // Debugging + playConfetti(); // Trigger confetti + clearInterval(intervalId); // Stop the race + setRaceIntervalId(null); + } + + // Update positions, ensuring cows don't go past the finish line + return newPositions.map((pos) => + Math.min(pos, finishLine - raceTrackRect.left), + ); + }); + }, 100); + + setRaceIntervalId(intervalId); + } else { + if (raceIntervalId) clearInterval(raceIntervalId); + setRaceIntervalId(null); + } + }, [raceStarted, numCows]); + + const resetRace = () => { + setRaceStarted(false); + setCowPositions([]); + setWinners([]); + if (raceIntervalId) clearInterval(raceIntervalId); + }; + + // Cow image URL (replace with your actual image) + const cowImageUrl = "/images/cow.svg"; -export default function CowRace() { return ( - <> - - + + {error && ( + + + {error} + + )} + {!raceStarted ? ( +
+ + Select Number of Cows (2-10): + + `${value} Cows`} + /> + +
+ ) : ( +
+
+ {Array.from({ length: numCows }).map((_, index) => ( + { + cowRefs.current[index] = el; + }} + animate={{ + x: cowPositions[index] || 0, + }} + /> + ))} +
+ + + Finish + +
+
+ + + + + + {winners.length > 0 && ( +
+ + Results: + + + {winners.slice(0, 3).map((winnerIndex, rank) => { + let placeText = ""; + let trophyColor = ""; + switch (rank) { + case 0: + placeText = "1st Place: "; + trophyColor = "#FFD700"; // Gold + break; + case 1: + placeText = "2nd Place: "; + trophyColor = "#C0C0C0"; // Silver + break; + case 2: + placeText = "3rd Place: "; + trophyColor = "#CD7F32"; // Bronze + break; + default: + placeText = `${rank + 1}th Place: `; + trophyColor = "#808080"; + } + return ( +
+ + + {placeText} Cow {winnerIndex + 1} + +
+ ); + })} + {winners.length > 3 && ( + + Other finishers:{" "} + {winners + .slice(3) + .map((w) => `Cow ${w + 1}`) + .join(", ")} + + )} +
+
+ )} +
+ )} +
); -} +}; + +export default CowRace; From a8b1996b402292a68339688a1dd828420665c9d2 Mon Sep 17 00:00:00 2001 From: cjrace <52536248+cjrace@users.noreply.github.com> Date: Fri, 28 Mar 2025 00:05:27 +0000 Subject: [PATCH 03/16] fix it a bit --- src/components/cowrace.tsx | 105 +++++++++++-------------------------- 1 file changed, 32 insertions(+), 73 deletions(-) diff --git a/src/components/cowrace.tsx b/src/components/cowrace.tsx index 57da567..2ef04e2 100644 --- a/src/components/cowrace.tsx +++ b/src/components/cowrace.tsx @@ -1,9 +1,9 @@ "use client"; import { useState, useEffect, useRef } from "react"; -import { Button, Slider, Text, Stack, Group, Alert } from "@mantine/core"; +import { Button, Slider, Text, Stack, Group } from "@mantine/core"; import { motion } from "framer-motion"; -import { Trophy, Flag, AlertTriangle } from "lucide-react"; +import { IconTrophy, IconFlag } from "@tabler/icons-react"; import playConfetti from "@/components/playconfetti"; const CowRace = () => { @@ -16,74 +16,43 @@ const CowRace = () => { ); const cowRefs = useRef<(HTMLImageElement | null)[]>([]); const [error, setError] = useState(null); - const raceTrackRef = useRef(null); // Add a ref for the race track - - // Ensure numCows is within the valid range - useEffect(() => { - if (numCows < 2 || numCows > 10) { - setError("Number of cows must be between 2 and 10."); - setNumCows(Math.max(2, Math.min(10, numCows))); // Correct the value - } else { - setError(null); // Clear any previous error - } - }, [numCows]); + const raceTrackRef = useRef(null); const startRace = () => { - if (numCows < 2 || numCows > 10) { - setError( - "Please select a valid number of cows (2-10) to start the race.", - ); - return; // Stop the race from starting - } setRaceStarted(true); }; useEffect(() => { if (raceStarted && raceTrackRef.current) { - const raceTrackRect = raceTrackRef.current.getBoundingClientRect(); // Get the race track's position - const finishLine = raceTrackRect.right - 60; // Subtract cow width to ensure proper detection - - console.log("Finish Line:", finishLine); // Debugging + const raceTrackRect = raceTrackRef.current.getBoundingClientRect(); + const finishLine = raceTrackRect.right / 2.38; // Adjust finish line position setCowPositions(Array(numCows).fill(0)); setWinners([]); cowRefs.current = Array(numCows).fill(null); - let winnerDetected = false; // Local variable to track if a winner has been detected + let winnerDetected = false; const intervalId = setInterval(() => { setCowPositions((prevPositions) => { const newPositions = prevPositions.map( - (pos) => pos + Math.random() * 4, + (pos) => pos + Math.random() * 7, ); // Adjust cow speed - console.log("Cow Positions:", newPositions); // Debugging - - // Check if any cow has crossed the finish line const finishedCows = newPositions .map((pos, index) => ({ pos, index })) - .filter(({ pos }) => pos + raceTrackRect.left >= finishLine); + .filter(({ pos }) => pos >= finishLine); - console.log("Finished Cows:", finishedCows); // Debugging - - // If no winner has been detected yet and at least one cow has finished if (!winnerDetected && finishedCows.length > 0) { - winnerDetected = true; // Mark that a winner has been detected - const sortedWinners = finishedCows.sort((a, b) => a.pos - b.pos); // Sort by position - setWinners(sortedWinners.map(({ index }) => index)); // Set winners - console.log( - "Winners:", - sortedWinners.map(({ index }) => index), - ); // Debugging - playConfetti(); // Trigger confetti - clearInterval(intervalId); // Stop the race + winnerDetected = true; + const sortedWinners = finishedCows.sort((a, b) => a.pos - b.pos); + setWinners(sortedWinners.map(({ index }) => index)); + playConfetti(); + clearInterval(intervalId); setRaceIntervalId(null); } - // Update positions, ensuring cows don't go past the finish line - return newPositions.map((pos) => - Math.min(pos, finishLine - raceTrackRect.left), - ); + return newPositions.map((pos) => Math.min(pos, finishLine)); }); }, 100); @@ -101,17 +70,10 @@ const CowRace = () => { if (raceIntervalId) clearInterval(raceIntervalId); }; - // Cow image URL (replace with your actual image) const cowImageUrl = "/images/cow.svg"; return ( - {error && ( - - - {error} - - )} {!raceStarted ? (
{ }} > - Select Number of Cows (2-10): + Number of racing cows: {numCows} { ref={raceTrackRef} style={{ width: "90%", - maxWidth: "800px", // Responsive width height: "400px", - borderBottom: "4px solid #4a5568", // Darker border + border: "4px solid orange", position: "relative", margin: "1rem 0", - backgroundColor: "#f7fafc", // Light background for track - borderRadius: "0.5rem", // Rounded corners for track - boxShadow: "0 2px 4px rgba(0, 0, 0, 0.1)", // Subtle shadow - overflow: "hidden", // Ensure cows don't overflow visually + borderRadius: "0.5rem", + boxShadow: "0 2px 4px rgba(0, 0, 0, 0.1)", + overflow: "hidden", }} > {Array.from({ length: numCows }).map((_, index) => ( @@ -170,14 +130,14 @@ const CowRace = () => { key={index} src={cowImageUrl} alt={`Cow ${index + 1}`} - width={60} // Slightly larger cows + width={60} height={60} style={{ position: "absolute", - top: `${index * (400 / numCows) + 20}px`, // Spread cows out, adjust as needed + top: `${index * (400 / numCows) + 20}px`, // Spread cows out left: `${cowPositions[index] || 0}px`, - transition: "left 0.1s ease", // Smooth transition - zIndex: numCows - index, // Ensure cows appear in correct order + transition: "left 0.1s ease", + zIndex: numCows - index, }} ref={(el: HTMLImageElement | null) => { cowRefs.current[index] = el; @@ -193,14 +153,14 @@ const CowRace = () => { right: "0", top: "0", height: "100%", - borderLeft: "4px dashed #e53e3e", // Brighter finish line + borderLeft: "4px dashed orange", display: "flex", alignItems: "center", - paddingLeft: "0.5rem", - color: "#e53e3e", + paddingLeft: "0.6rem", + color: "orange", }} > - + Finish @@ -218,9 +178,9 @@ const CowRace = () => { onClick={resetRace} variant="outline" size="lg" - style={{ width: "80%", maxWidth: "300px" }} // Keep button width consistent + style={{ width: "80%", maxWidth: "300px" }} > - Cancel Race + {winners.length == 0 ? "Cancel Race" : "Start new race"} @@ -232,12 +192,11 @@ const CowRace = () => { flexDirection: "column", alignItems: "center", width: "90%", - maxWidth: "400px", // Responsive width + maxWidth: "400px", padding: "1rem", - backgroundColor: "#fff", borderRadius: "0.5rem", boxShadow: "0 2px 4px rgba(0, 0, 0, 0.1)", - border: "1px solid #e2e8f0", + border: "1px solid orange", }} > @@ -269,7 +228,7 @@ const CowRace = () => { key={winnerIndex} style={{ display: "flex", alignItems: "center" }} > - Date: Fri, 28 Mar 2025 00:20:14 +0000 Subject: [PATCH 04/16] vaguely functional now --- src/components/cowrace.tsx | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/src/components/cowrace.tsx b/src/components/cowrace.tsx index 2ef04e2..f6f0075 100644 --- a/src/components/cowrace.tsx +++ b/src/components/cowrace.tsx @@ -11,12 +11,9 @@ const CowRace = () => { const [raceStarted, setRaceStarted] = useState(false); const [cowPositions, setCowPositions] = useState([]); const [winners, setWinners] = useState([]); - const [raceIntervalId, setRaceIntervalId] = useState( - null, - ); const cowRefs = useRef<(HTMLImageElement | null)[]>([]); - const [error, setError] = useState(null); const raceTrackRef = useRef(null); + const raceIntervalRef = useRef(null); // Use useRef instead of state const startRace = () => { setRaceStarted(true); @@ -49,17 +46,17 @@ const CowRace = () => { setWinners(sortedWinners.map(({ index }) => index)); playConfetti(); clearInterval(intervalId); - setRaceIntervalId(null); + raceIntervalRef.current = null; } return newPositions.map((pos) => Math.min(pos, finishLine)); }); }, 100); - setRaceIntervalId(intervalId); + raceIntervalRef.current = intervalId; } else { - if (raceIntervalId) clearInterval(raceIntervalId); - setRaceIntervalId(null); + if (raceIntervalRef.current) clearInterval(raceIntervalRef.current); + raceIntervalRef.current = null; } }, [raceStarted, numCows]); @@ -67,7 +64,8 @@ const CowRace = () => { setRaceStarted(false); setCowPositions([]); setWinners([]); - if (raceIntervalId) clearInterval(raceIntervalId); + if (raceIntervalRef.current) clearInterval(raceIntervalRef.current); + raceIntervalRef.current = null; }; const cowImageUrl = "/images/cow.svg"; @@ -150,7 +148,7 @@ const CowRace = () => {
Date: Fri, 28 Mar 2025 00:21:20 +0000 Subject: [PATCH 05/16] clean out dependency --- package.json | 1 - pnpm-lock.yaml | 15 --------------- 2 files changed, 16 deletions(-) diff --git a/package.json b/package.json index 1b46cd9..a8347be 100644 --- a/package.json +++ b/package.json @@ -27,7 +27,6 @@ "dotenv": "^16.4.7", "eslint": "^9.23.0", "framer-motion": "^12.6.2", - "lucide-react": "^0.484.0", "next": "^15.2.3", "next-auth": "5.0.0-beta.25", "react": "^19.0.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 4fdd44d..40848a1 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -43,9 +43,6 @@ importers: framer-motion: specifier: ^12.6.2 version: 12.6.2(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - lucide-react: - specifier: ^0.484.0 - version: 0.484.0(react@19.0.0) next: specifier: ^15.2.3 version: 15.2.3(@playwright/test@1.51.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) @@ -2470,14 +2467,6 @@ packages: } hasBin: true - lucide-react@0.484.0: - resolution: - { - integrity: sha512-oZy8coK9kZzvqhSgfbGkPtTgyjpBvs3ukLgDPv14dSOZtBtboryWF5o8i3qen7QbGg7JhiJBz5mK1p8YoMZTLQ==, - } - peerDependencies: - react: ^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0 - make-dir@3.1.0: resolution: { @@ -5422,10 +5411,6 @@ snapshots: dependencies: js-tokens: 4.0.0 - lucide-react@0.484.0(react@19.0.0): - dependencies: - react: 19.0.0 - make-dir@3.1.0: dependencies: semver: 6.3.1 From b5648ccab3b5d28219a8d8e9c27108b550bf81cf Mon Sep 17 00:00:00 2001 From: cjrace <52536248+cjrace@users.noreply.github.com> Date: Sat, 29 Mar 2025 16:03:11 +0000 Subject: [PATCH 06/16] workflow experimenting bump package versions bump pnpm version bump pnpm again helping bcrypt build in GHA undo python step in gha approve bcrypt and sharp builds specifically experimenting further with build script try adding a pnpmfile update lockfile testing testing testing --- .github/workflows/playwright.yml | 2 +- .pnpmfile.cjs | 11 + package.json | 16 +- pnpm-lock.yaml | 650 +++++++++++++++++-------------- 4 files changed, 370 insertions(+), 309 deletions(-) create mode 100644 .pnpmfile.cjs diff --git a/.github/workflows/playwright.yml b/.github/workflows/playwright.yml index 633d08e..2245204 100644 --- a/.github/workflows/playwright.yml +++ b/.github/workflows/playwright.yml @@ -17,7 +17,7 @@ jobs: - uses: actions/checkout@v4 - uses: pnpm/action-setup@v4 - name: Install dependencies - run: pnpm install + run: pnpm install --no-frozen-lockfile - name: Install Playwright with deps run: npx playwright install --with-deps - name: Cache Next.js build artifacts diff --git a/.pnpmfile.cjs b/.pnpmfile.cjs new file mode 100644 index 0000000..11ee4e7 --- /dev/null +++ b/.pnpmfile.cjs @@ -0,0 +1,11 @@ +module.exports = { + hooks: { + readPackage(pkg) { + if (pkg.name === "bcrypt" || pkg.name === "sharp") { + pkg.scripts = pkg.scripts || {}; + pkg.scripts.preinstall = pkg.scripts.preinstall || ""; + } + return pkg; + }, + }, +}; diff --git a/package.json b/package.json index a8347be..0f74c08 100644 --- a/package.json +++ b/package.json @@ -15,9 +15,9 @@ "prepare": "husky" }, "dependencies": { - "@mantine/core": "^7.17.2", - "@mantine/form": "^7.17.2", - "@mantine/hooks": "^7.17.2", + "@mantine/core": "^7.17.3", + "@mantine/form": "^7.17.3", + "@mantine/hooks": "^7.17.3", "@tabler/icons-react": "^3.31.0", "@vercel/analytics": "^1.5.0", "@vercel/postgres": "^0.10.0", @@ -27,10 +27,10 @@ "dotenv": "^16.4.7", "eslint": "^9.23.0", "framer-motion": "^12.6.2", - "next": "^15.2.3", + "next": "^15.2.4", "next-auth": "5.0.0-beta.25", - "react": "^19.0.0", - "react-dom": "^19.0.0", + "react": "^19.1.0", + "react-dom": "^19.1.0", "react-icons": "^5.5.0", "sharp": "^0.33.5", "uuid": "^11.1.0", @@ -39,7 +39,7 @@ "devDependencies": { "@playwright/test": "^1.51.1", "@types/bcrypt": "^5.0.2", - "@types/node": "^22.13.11", + "@types/node": "^22.13.14", "@types/react": "^19.0.12", "@types/react-dom": "^19.0.4", "eslint-config-next": "15.1.4", @@ -55,5 +55,5 @@ "lint-staged": { "**/*": "prettier --write --ignore-unknown" }, - "packageManager": "pnpm@9.15.2+sha512.93e57b0126f0df74ce6bff29680394c0ba54ec47246b9cf321f0121d8d9bb03f750a705f24edc3c1180853afd7c2c3b94196d0a3d53d3e069d9e2793ef11f321" + "packageManager": "pnpm@10.7.0" } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 40848a1..5c239e7 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -4,30 +4,32 @@ settings: autoInstallPeers: true excludeLinksFromLockfile: false +pnpmfileChecksum: kdb6zrvox5w2v2hyev2dbov3wq + importers: .: dependencies: "@mantine/core": - specifier: ^7.17.2 - version: 7.17.2(@mantine/hooks@7.17.2(react@19.0.0))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + specifier: ^7.17.3 + version: 7.17.3(@mantine/hooks@7.17.3(react@19.1.0))(@types/react@19.0.12)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) "@mantine/form": - specifier: ^7.17.2 - version: 7.17.2(react@19.0.0) + specifier: ^7.17.3 + version: 7.17.3(react@19.1.0) "@mantine/hooks": - specifier: ^7.17.2 - version: 7.17.2(react@19.0.0) + specifier: ^7.17.3 + version: 7.17.3(react@19.1.0) "@tabler/icons-react": specifier: ^3.31.0 - version: 3.31.0(react@19.0.0) + version: 3.31.0(react@19.1.0) "@vercel/analytics": specifier: ^1.5.0 - version: 1.5.0(next@15.2.3(@playwright/test@1.51.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react@19.0.0) + version: 1.5.0(next@15.2.4(@playwright/test@1.51.1)(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(react@19.1.0) "@vercel/postgres": specifier: ^0.10.0 version: 0.10.0 "@vercel/speed-insights": specifier: ^1.2.0 - version: 1.2.0(next@15.2.3(@playwright/test@1.51.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react@19.0.0) + version: 1.2.0(next@15.2.4(@playwright/test@1.51.1)(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(react@19.1.0) bcrypt: specifier: ^5.1.1 version: 5.1.1 @@ -42,22 +44,22 @@ importers: version: 9.23.0 framer-motion: specifier: ^12.6.2 - version: 12.6.2(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + version: 12.6.2(react-dom@19.1.0(react@19.1.0))(react@19.1.0) next: - specifier: ^15.2.3 - version: 15.2.3(@playwright/test@1.51.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + specifier: ^15.2.4 + version: 15.2.4(@playwright/test@1.51.1)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) next-auth: specifier: 5.0.0-beta.25 - version: 5.0.0-beta.25(next@15.2.3(@playwright/test@1.51.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react@19.0.0) + version: 5.0.0-beta.25(next@15.2.4(@playwright/test@1.51.1)(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(react@19.1.0) react: - specifier: ^19.0.0 - version: 19.0.0 + specifier: ^19.1.0 + version: 19.1.0 react-dom: - specifier: ^19.0.0 - version: 19.0.0(react@19.0.0) + specifier: ^19.1.0 + version: 19.1.0(react@19.1.0) react-icons: specifier: ^5.5.0 - version: 5.5.0(react@19.0.0) + version: 5.5.0(react@19.1.0) sharp: specifier: ^0.33.5 version: 0.33.5 @@ -75,8 +77,8 @@ importers: specifier: ^5.0.2 version: 5.0.2 "@types/node": - specifier: ^22.13.11 - version: 22.13.11 + specifier: ^22.13.14 + version: 22.13.14 "@types/react": specifier: ^19.0.12 version: 19.0.12 @@ -129,23 +131,23 @@ packages: nodemailer: optional: true - "@babel/runtime@7.26.10": + "@babel/runtime@7.27.0": resolution: { - integrity: sha512-2WJMeRQPHKSPemqk/awGrAiuFfzBmOIPXKizAsVhWH9YJqLZ0H+HS4c8loHGgW6utJ3E/ejXQUsiGaQy2NZ9Fw==, + integrity: sha512-VtPOkrdPHZsKc/clNqyi9WUA8TINkZ4cGk63UUE3u4pmB2k+ZMQRDuIOagv8UVd6j7k0T3+RRIb7beKTebNbcw==, } engines: { node: ">=6.9.0" } - "@emnapi/core@1.3.1": + "@emnapi/core@1.4.0": resolution: { - integrity: sha512-pVGjBIt1Y6gg3EJN8jTcfpP/+uuRksIo055oE/OBkDNcjZqVbfkWCksG1Jp4yZnj3iKWyWX8fdG/j6UDYPbFog==, + integrity: sha512-H+N/FqT07NmLmt6OFFtDfwe8PNygprzBikrEMyQfgqSmT0vzE515Pz7R8izwB9q/zsH/MA64AKoul3sA6/CzVg==, } - "@emnapi/runtime@1.3.1": + "@emnapi/runtime@1.4.0": resolution: { - integrity: sha512-kEBmG8KyqtxJZv+ygbEim+KCGtIq1fC22Ms3S4ziXmYKm8uyoLX0MHONVKwp+9opg390VaKRNt4a7A9NwmpNhw==, + integrity: sha512-64WYIf4UYcdLnbKn/umDlNjQDSS8AgZrI/R9+x5ilkUVFxXcA1Ebl+gQLc/6mERA4407Xof0R7wEyEuj091CVw==, } "@emnapi/wasi-threads@1.0.1": @@ -452,28 +454,28 @@ packages: cpu: [x64] os: [win32] - "@mantine/core@7.17.2": + "@mantine/core@7.17.3": resolution: { - integrity: sha512-R6MYhitJ0JEgrhadd31Nw9FhRaQwDHjXUs5YIlitKH/fTOz9gKSxKjzmNng3bEBQCcbEDOkZj3FRcBgTUh/F0Q==, + integrity: sha512-N/AfV5eMnfEMx9WzI7AU5pNFBEzAfT/KtE2XDKS+0ht6RifUmolIxyIvoGMYz2yUEsCBMJZqmBq33Rabf5W7Ug==, } peerDependencies: - "@mantine/hooks": 7.17.2 + "@mantine/hooks": 7.17.3 react: ^18.x || ^19.x react-dom: ^18.x || ^19.x - "@mantine/form@7.17.2": + "@mantine/form@7.17.3": resolution: { - integrity: sha512-MxZPKXXhaZ7M1ZJOpS2wifhh186DMvNjcXa2bP04Tp9TdvTlbLAJZxKjZkQnGGgt8Atsf6/3gdeJMfG704Km6g==, + integrity: sha512-ktERldD8f9lrjjz6wIbwMnNbAZq8XEWPx4K5WuFyjXaK0PI8D+gsXIGKMtA5rVrAUFHCWCdbK3yLgtjJNki8ew==, } peerDependencies: react: ^18.x || ^19.x - "@mantine/hooks@7.17.2": + "@mantine/hooks@7.17.3": resolution: { - integrity: sha512-tbErVcGZu0E4dSmE6N0k6Tv1y9R3SQmmQgwqorcc+guEgKMdamc36lucZGlJnSGUmGj+WLUgELkEQ0asdfYBDA==, + integrity: sha512-6o65Rbfl8jd1C1nF9icvungqL0qZViEOmrZgkyKXxBYkC3x91fz4zftwQgNjt1tZHWDNO6Bo4GpRjJyAdwl48g==, } peerDependencies: react: ^18.x || ^19.x @@ -497,10 +499,10 @@ packages: integrity: sha512-siFas6gItqv6wD/pZnvdu34wEqgG3nSE6zWZdq5j2DEsa+VvX8i/5HXJOo06qrw5axPXn+lGCxeR+NLaSPIXug==, } - "@next/env@15.2.3": + "@next/env@15.2.4": resolution: { - integrity: sha512-a26KnbW9DFEUsSxAxKBORR/uD9THoYoKbkpFywMN/AFvboTt94b8+g/07T8J6ACsdLag8/PDU60ov4rPxRAixw==, + integrity: sha512-+SFtMgoiYP3WoSswuNmxJOCwi06TdWE733D+WPjpXIe4LXGULwEaofiiAy6kbS0+XjM5xF5n3lKuBwN2SnqD9g==, } "@next/eslint-plugin-next@15.1.4": @@ -509,73 +511,73 @@ packages: integrity: sha512-HwlEXwCK3sr6zmVGEvWBjW9tBFs1Oe6hTmTLoFQtpm4As5HCdu8jfSE0XJOp7uhfEGLniIx8yrGxEWwNnY0fmQ==, } - "@next/swc-darwin-arm64@15.2.3": + "@next/swc-darwin-arm64@15.2.4": resolution: { - integrity: sha512-uaBhA8aLbXLqwjnsHSkxs353WrRgQgiFjduDpc7YXEU0B54IKx3vU+cxQlYwPCyC8uYEEX7THhtQQsfHnvv8dw==, + integrity: sha512-1AnMfs655ipJEDC/FHkSr0r3lXBgpqKo4K1kiwfUf3iE68rDFXZ1TtHdMvf7D0hMItgDZ7Vuq3JgNMbt/+3bYw==, } engines: { node: ">= 10" } cpu: [arm64] os: [darwin] - "@next/swc-darwin-x64@15.2.3": + "@next/swc-darwin-x64@15.2.4": resolution: { - integrity: sha512-pVwKvJ4Zk7h+4hwhqOUuMx7Ib02u3gDX3HXPKIShBi9JlYllI0nU6TWLbPT94dt7FSi6mSBhfc2JrHViwqbOdw==, + integrity: sha512-3qK2zb5EwCwxnO2HeO+TRqCubeI/NgCe+kL5dTJlPldV/uwCnUgC7VbEzgmxbfrkbjehL4H9BPztWOEtsoMwew==, } engines: { node: ">= 10" } cpu: [x64] os: [darwin] - "@next/swc-linux-arm64-gnu@15.2.3": + "@next/swc-linux-arm64-gnu@15.2.4": resolution: { - integrity: sha512-50ibWdn2RuFFkOEUmo9NCcQbbV9ViQOrUfG48zHBCONciHjaUKtHcYFiCwBVuzD08fzvzkWuuZkd4AqbvKO7UQ==, + integrity: sha512-HFN6GKUcrTWvem8AZN7tT95zPb0GUGv9v0d0iyuTb303vbXkkbHDp/DxufB04jNVD+IN9yHy7y/6Mqq0h0YVaQ==, } engines: { node: ">= 10" } cpu: [arm64] os: [linux] - "@next/swc-linux-arm64-musl@15.2.3": + "@next/swc-linux-arm64-musl@15.2.4": resolution: { - integrity: sha512-2gAPA7P652D3HzR4cLyAuVYwYqjG0mt/3pHSWTCyKZq/N/dJcUAEoNQMyUmwTZWCJRKofB+JPuDVP2aD8w2J6Q==, + integrity: sha512-Oioa0SORWLwi35/kVB8aCk5Uq+5/ZIumMK1kJV+jSdazFm2NzPDztsefzdmzzpx5oGCJ6FkUC7vkaUseNTStNA==, } engines: { node: ">= 10" } cpu: [arm64] os: [linux] - "@next/swc-linux-x64-gnu@15.2.3": + "@next/swc-linux-x64-gnu@15.2.4": resolution: { - integrity: sha512-ODSKvrdMgAJOVU4qElflYy1KSZRM3M45JVbeZu42TINCMG3anp7YCBn80RkISV6bhzKwcUqLBAmOiWkaGtBA9w==, + integrity: sha512-yb5WTRaHdkgOqFOZiu6rHV1fAEK0flVpaIN2HB6kxHVSy/dIajWbThS7qON3W9/SNOH2JWkVCyulgGYekMePuw==, } engines: { node: ">= 10" } cpu: [x64] os: [linux] - "@next/swc-linux-x64-musl@15.2.3": + "@next/swc-linux-x64-musl@15.2.4": resolution: { - integrity: sha512-ZR9kLwCWrlYxwEoytqPi1jhPd1TlsSJWAc+H/CJHmHkf2nD92MQpSRIURR1iNgA/kuFSdxB8xIPt4p/T78kwsg==, + integrity: sha512-Dcdv/ix6srhkM25fgXiyOieFUkz+fOYkHlydWCtB0xMST6X9XYI3yPDKBZt1xuhOytONsIFJFB08xXYsxUwJLw==, } engines: { node: ">= 10" } cpu: [x64] os: [linux] - "@next/swc-win32-arm64-msvc@15.2.3": + "@next/swc-win32-arm64-msvc@15.2.4": resolution: { - integrity: sha512-+G2FrDcfm2YDbhDiObDU/qPriWeiz/9cRR0yMWJeTLGGX6/x8oryO3tt7HhodA1vZ8r2ddJPCjtLcpaVl7TE2Q==, + integrity: sha512-dW0i7eukvDxtIhCYkMrZNQfNicPDExt2jPb9AZPpL7cfyUo7QSNl1DjsHjmmKp6qNAqUESyT8YFl/Aw91cNJJg==, } engines: { node: ">= 10" } cpu: [arm64] os: [win32] - "@next/swc-win32-x64-msvc@15.2.3": + "@next/swc-win32-x64-msvc@15.2.4": resolution: { - integrity: sha512-gHYS9tc+G2W0ZC8rBL+H6RdtXIyk40uLiaos0yj5US85FNhbFEndMA2nW3z47nzOWiSvXTZ5kBClc3rD0zJg0w==, + integrity: sha512-SbnWkJmkS7Xl3kre8SdMF6F/XDh1DTFEhp0jRTj/uB8iPKoU2bb2NDfcu+iifv1+mxQEd1g2vvSxcZbXSKyWiQ==, } engines: { node: ">= 10" } cpu: [x64] @@ -679,10 +681,10 @@ packages: integrity: sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==, } - "@types/estree@1.0.6": + "@types/estree@1.0.7": resolution: { - integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==, + integrity: sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==, } "@types/json-schema@7.0.15": @@ -697,10 +699,10 @@ packages: integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==, } - "@types/node@22.13.11": + "@types/node@22.13.14": resolution: { - integrity: sha512-iEUCUJoU0i3VnrCmgoWCXttklWcvoCIx4jzcP22fioIVSdTmjgoEvmAO/QPw6TcS9k5FrNgn4w7q5lGOd1CT5g==, + integrity: sha512-Zs/Ollc1SJ8nKUAgc7ivOEdIBM8JAKgrqqUYi2J997JuKO7/tpQC+WCetQ1sypiKCQWHdvdg9wBNpUPEWZae7w==, } "@types/pg@8.11.6": @@ -723,10 +725,10 @@ packages: integrity: sha512-V6Ar115dBDrjbtXSrS+/Oruobc+qVbbUxDFC1RSbRqLt5SYvxxyIDrSC85RWml54g+jfNeEMZhEj7wW07ONQhA==, } - "@typescript-eslint/eslint-plugin@8.27.0": + "@typescript-eslint/eslint-plugin@8.28.0": resolution: { - integrity: sha512-4henw4zkePi5p252c8ncBLzLce52SEUz2Ebj8faDnuUXz2UuHEONYcJ+G0oaCF+bYCWVZtrGzq3FD7YXetmnSA==, + integrity: sha512-lvFK3TCGAHsItNdWZ/1FkvpzCxTHUVuFrdnOGLMa0GGCFIbCgQWVk3CzCGdA7kM3qGVc+dfW9tr0Z/sHnGDFyg==, } engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } peerDependencies: @@ -734,150 +736,182 @@ packages: eslint: ^8.57.0 || ^9.0.0 typescript: ">=4.8.4 <5.9.0" - "@typescript-eslint/parser@8.27.0": + "@typescript-eslint/parser@8.28.0": resolution: { - integrity: sha512-XGwIabPallYipmcOk45DpsBSgLC64A0yvdAkrwEzwZ2viqGqRUJ8eEYoPz0CWnutgAFbNMPdsGGvzjSmcWVlEA==, + integrity: sha512-LPcw1yHD3ToaDEoljFEfQ9j2xShY367h7FZ1sq5NJT9I3yj4LHer1Xd1yRSOdYy9BpsrxU7R+eoDokChYM53lQ==, } engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } peerDependencies: eslint: ^8.57.0 || ^9.0.0 typescript: ">=4.8.4 <5.9.0" - "@typescript-eslint/scope-manager@8.27.0": + "@typescript-eslint/scope-manager@8.28.0": resolution: { - integrity: sha512-8oI9GwPMQmBryaaxG1tOZdxXVeMDte6NyJA4i7/TWa4fBwgnAXYlIQP+uYOeqAaLJ2JRxlG9CAyL+C+YE9Xknw==, + integrity: sha512-u2oITX3BJwzWCapoZ/pXw6BCOl8rJP4Ij/3wPoGvY8XwvXflOzd1kLrDUUUAIEdJSFh+ASwdTHqtan9xSg8buw==, } engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } - "@typescript-eslint/type-utils@8.27.0": + "@typescript-eslint/type-utils@8.28.0": resolution: { - integrity: sha512-wVArTVcz1oJOIEJxui/nRhV0TXzD/zMSOYi/ggCfNq78EIszddXcJb7r4RCp/oBrjt8n9A0BSxRMKxHftpDxDA==, + integrity: sha512-oRoXu2v0Rsy/VoOGhtWrOKDiIehvI+YNrDk5Oqj40Mwm0Yt01FC/Q7nFqg088d3yAsR1ZcZFVfPCTTFCe/KPwg==, } engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } peerDependencies: eslint: ^8.57.0 || ^9.0.0 typescript: ">=4.8.4 <5.9.0" - "@typescript-eslint/types@8.27.0": + "@typescript-eslint/types@8.28.0": resolution: { - integrity: sha512-/6cp9yL72yUHAYq9g6DsAU+vVfvQmd1a8KyA81uvfDE21O2DwQ/qxlM4AR8TSdAu+kJLBDrEHKC5/W2/nxsY0A==, + integrity: sha512-bn4WS1bkKEjx7HqiwG2JNB3YJdC1q6Ue7GyGlwPHyt0TnVq6TtD/hiOdTZt71sq0s7UzqBFXD8t8o2e63tXgwA==, } engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } - "@typescript-eslint/typescript-estree@8.27.0": + "@typescript-eslint/typescript-estree@8.28.0": resolution: { - integrity: sha512-BnKq8cqPVoMw71O38a1tEb6iebEgGA80icSxW7g+kndx0o6ot6696HjG7NdgfuAVmVEtwXUr3L8R9ZuVjoQL6A==, + integrity: sha512-H74nHEeBGeklctAVUvmDkxB1mk+PAZ9FiOMPFncdqeRBXxk1lWSYraHw8V12b7aa6Sg9HOBNbGdSHobBPuQSuA==, } engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } peerDependencies: typescript: ">=4.8.4 <5.9.0" - "@typescript-eslint/utils@8.27.0": + "@typescript-eslint/utils@8.28.0": resolution: { - integrity: sha512-njkodcwH1yvmo31YWgRHNb/x1Xhhq4/m81PhtvmRngD8iHPehxffz1SNCO+kwaePhATC+kOa/ggmvPoPza5i0Q==, + integrity: sha512-OELa9hbTYciYITqgurT1u/SzpQVtDLmQMFzy/N8pQE+tefOyCWT79jHsav294aTqV1q1u+VzqDGbuujvRYaeSQ==, } engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } peerDependencies: eslint: ^8.57.0 || ^9.0.0 typescript: ">=4.8.4 <5.9.0" - "@typescript-eslint/visitor-keys@8.27.0": + "@typescript-eslint/visitor-keys@8.28.0": resolution: { - integrity: sha512-WsXQwMkILJvffP6z4U3FYJPlbf/j07HIxmDjZpbNvBJkMfvwXj5ACRkkHwBDvLBbDbtX5TdU64/rcvKJ/vuInQ==, + integrity: sha512-hbn8SZ8w4u2pRwgQ1GlUrPKE+t2XvcCW5tTRF7j6SMYIuYG37XuzIW44JCZPa36evi0Oy2SnM664BlIaAuQcvg==, } engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } - "@unrs/rspack-resolver-binding-darwin-arm64@1.2.2": + "@unrs/resolver-binding-darwin-arm64@1.3.2": resolution: { - integrity: sha512-i7z0B+C0P8Q63O/5PXJAzeFtA1ttY3OR2VSJgGv18S+PFNwD98xHgAgPOT1H5HIV6jlQP8Avzbp09qxJUdpPNw==, + integrity: sha512-ddnlXgRi0Fog5+7U5Q1qY62wl95Q1lB4tXQX1UIA9YHmRCHN2twaQW0/4tDVGCvTVEU3xEayU7VemEr7GcBYUw==, } cpu: [arm64] os: [darwin] - "@unrs/rspack-resolver-binding-darwin-x64@1.2.2": + "@unrs/resolver-binding-darwin-x64@1.3.2": resolution: { - integrity: sha512-YEdFzPjIbDUCfmehC6eS+AdJYtFWY35YYgWUnqqTM2oe/N58GhNy5yRllxYhxwJ9GcfHoNc6Ubze1yjkNv+9Qg==, + integrity: sha512-tnl9xoEeg503jis+LW5cuq4hyLGQyqaoBL8VdPSqcewo/FL1C8POHbzl+AL25TidWYJD+R6bGUTE381kA1sT9w==, } cpu: [x64] os: [darwin] - "@unrs/rspack-resolver-binding-freebsd-x64@1.2.2": + "@unrs/resolver-binding-freebsd-x64@1.3.2": resolution: { - integrity: sha512-TU4ntNXDgPN2giQyyzSnGWf/dVCem5lvwxg0XYvsvz35h5H19WrhTmHgbrULMuypCB3aHe1enYUC9rPLDw45mA==, + integrity: sha512-zyPn9LFCCjhKPeCtECZaiMUgkYN/VpLb4a9Xv7QriJmTaQxsuDtXqOHifrzUXIhorJTyS+5MOKDuNL0X9I4EHA==, } cpu: [x64] os: [freebsd] - "@unrs/rspack-resolver-binding-linux-arm-gnueabihf@1.2.2": + "@unrs/resolver-binding-linux-arm-gnueabihf@1.3.2": resolution: { - integrity: sha512-ik3w4/rU6RujBvNWiDnKdXi1smBhqxEDhccNi/j2rHaMjm0Fk49KkJ6XKsoUnD2kZ5xaMJf9JjailW/okfUPIw==, + integrity: sha512-UWx56Wh59Ro69fe+Wfvld4E1n9KG0e3zeouWLn8eSasyi/yVH/7ZW3CLTVFQ81oMKSpXwr5u6RpzttDXZKiO4g==, } cpu: [arm] os: [linux] - "@unrs/rspack-resolver-binding-linux-arm64-gnu@1.2.2": + "@unrs/resolver-binding-linux-arm-musleabihf@1.3.2": resolution: { - integrity: sha512-fp4Azi8kHz6TX8SFmKfyScZrMLfp++uRm2srpqRjsRZIIBzH74NtSkdEUHImR4G7f7XJ+sVZjCc6KDDK04YEpQ==, + integrity: sha512-VYGQXsOEJtfaoY2fOm8Z9ii5idFaHFYlrq3yMFZPaFKo8ufOXYm8hnfru7qetbM9MX116iWaPC0ZX5sK+1Dr+g==, + } + cpu: [arm] + os: [linux] + + "@unrs/resolver-binding-linux-arm64-gnu@1.3.2": + resolution: + { + integrity: sha512-3zP420zxJfYPD1rGp2/OTIBxF8E3+/6VqCG+DEO6kkDgBiloa7Y8pw1o7N9BfgAC+VC8FPZsFXhV2lpx+lLRMQ==, } cpu: [arm64] os: [linux] - "@unrs/rspack-resolver-binding-linux-arm64-musl@1.2.2": + "@unrs/resolver-binding-linux-arm64-musl@1.3.2": resolution: { - integrity: sha512-gMiG3DCFioJxdGBzhlL86KcFgt9HGz0iDhw0YVYPsShItpN5pqIkNrI+L/Q/0gfDiGrfcE0X3VANSYIPmqEAlQ==, + integrity: sha512-ZWjSleUgr88H4Kei7yT4PlPqySTuWN1OYDDcdbmMCtLWFly3ed+rkrcCb3gvqXdDbYrGOtzv3g2qPEN+WWNv5Q==, } cpu: [arm64] os: [linux] - "@unrs/rspack-resolver-binding-linux-x64-gnu@1.2.2": + "@unrs/resolver-binding-linux-ppc64-gnu@1.3.2": + resolution: + { + integrity: sha512-p+5OvYJ2UOlpjes3WfBlxyvQok2u26hLyPxLFHkYlfzhZW0juhvBf/tvewz1LDFe30M7zL9cF4OOO5dcvtk+cw==, + } + cpu: [ppc64] + os: [linux] + + "@unrs/resolver-binding-linux-s390x-gnu@1.3.2": resolution: { - integrity: sha512-n/4n2CxaUF9tcaJxEaZm+lqvaw2gflfWQ1R9I7WQgYkKEKbRKbpG/R3hopYdUmLSRI4xaW1Cy0Bz40eS2Yi4Sw==, + integrity: sha512-yweY7I6SqNn3kvj6vE4PQRo7j8Oz6+NiUhmgciBNAUOuI3Jq0bnW29hbHJdxZRSN1kYkQnSkbbA1tT8VnK816w==, + } + cpu: [s390x] + os: [linux] + + "@unrs/resolver-binding-linux-x64-gnu@1.3.2": + resolution: + { + integrity: sha512-fNIvtzJcGN9hzWTIayrTSk2+KHQrqKbbY+I88xMVMOFV9t4AXha4veJdKaIuuks+2JNr6GuuNdsL7+exywZ32w==, } cpu: [x64] os: [linux] - "@unrs/rspack-resolver-binding-linux-x64-musl@1.2.2": + "@unrs/resolver-binding-linux-x64-musl@1.3.2": resolution: { - integrity: sha512-cHyhAr6rlYYbon1L2Ag449YCj3p6XMfcYTP0AQX+KkQo025d1y/VFtPWvjMhuEsE2lLvtHm7GdJozj6BOMtzVg==, + integrity: sha512-OaFEw8WAjiwBGxutQgkWhoAGB5BQqZJ8Gjt/mW+m6DWNjimcxU22uWCuEtfw1CIwLlKPOzsgH0429fWmZcTGkg==, } cpu: [x64] os: [linux] - "@unrs/rspack-resolver-binding-wasm32-wasi@1.2.2": + "@unrs/resolver-binding-wasm32-wasi@1.3.2": resolution: { - integrity: sha512-eogDKuICghDLGc32FtP+WniG38IB1RcGOGz0G3z8406dUdjJvxfHGuGs/dSlM9YEp/v0lEqhJ4mBu6X2nL9pog==, + integrity: sha512-u+sumtO7M0AGQ9bNQrF4BHNpUyxo23FM/yXZfmVAicTQ+mXtG06O7pm5zQUw3Mr4jRs2I84uh4O0hd8bdouuvQ==, } engines: { node: ">=14.0.0" } cpu: [wasm32] - "@unrs/rspack-resolver-binding-win32-arm64-msvc@1.2.2": + "@unrs/resolver-binding-win32-arm64-msvc@1.3.2": resolution: { - integrity: sha512-7sWRJumhpXSi2lccX8aQpfFXHsSVASdWndLv8AmD8nDRA/5PBi8IplQVZNx2mYRx6+Bp91Z00kuVqpXO9NfCTg==, + integrity: sha512-ZAJKy95vmDIHsRFuPNqPQRON8r2mSMf3p9DoX+OMOhvu2c8OXGg8MvhGRf3PNg45ozRrPdXDnngURKgaFfpGoQ==, } cpu: [arm64] os: [win32] - "@unrs/rspack-resolver-binding-win32-x64-msvc@1.2.2": + "@unrs/resolver-binding-win32-ia32-msvc@1.3.2": + resolution: + { + integrity: sha512-nQG4YFAS2BLoKVQFK/FrWJvFATI5DQUWQrcPcsWG9Ve5BLLHZuPOrJ2SpAJwLXQrRv6XHSFAYGI8wQpBg/CiFA==, + } + cpu: [ia32] + os: [win32] + + "@unrs/resolver-binding-win32-x64-msvc@1.3.2": resolution: { - integrity: sha512-hewo/UMGP1a7O6FG/ThcPzSJdm/WwrYDNkdGgWl6M18H6K6MSitklomWpT9MUtT5KGj++QJb06va/14QBC4pvw==, + integrity: sha512-XBWpUP0mHya6yGBwNefhyEa6V7HgYKCxEAY4qhTm/PcAQyBPNmjj97VZJOJkVdUsyuuii7xmq0pXWX/c2aToHQ==, } cpu: [x64] os: [win32] @@ -1212,10 +1246,10 @@ packages: } engines: { node: ">= 6" } - caniuse-lite@1.0.30001706: + caniuse-lite@1.0.30001707: resolution: { - integrity: sha512-3ZczoTApMAZwPKYWmwVbQMFpXBDds3/0VciVoUwPUbldlYyVLmRVuRs/PcUZtHpbLRpzzDvrvnFuREsGt6lUug==, + integrity: sha512-3qtRjw/HQSMlDWf+X79N206fepf4SOOU6SQLMaq/0KkZLmSjPxAkBOQQ+FxbHKfHmYLZFfdWsO3KA90ceHPSnw==, } chalk@4.1.2: @@ -1577,10 +1611,10 @@ packages: integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==, } - eslint-import-resolver-typescript@3.9.1: + eslint-import-resolver-typescript@3.10.0: resolution: { - integrity: sha512-euxa5rTGqHeqVxmOHT25hpk58PxkQ4mNoX6Yun4ooGaCHAxOCojJYNvjmyeOQxj/LyW+3fulH0+xtk+p2kPPTw==, + integrity: sha512-aV3/dVsT0/H9BtpNwbaqvl+0xGMRGzncLyhm793NFGvbwGGvzyAykqWZ8oZlZuGwuHkwJjhWJkG1cM3ynvd2pQ==, } engines: { node: ^14.18.0 || >=16.0.0 } peerDependencies: @@ -2141,10 +2175,10 @@ packages: } engines: { node: ">= 0.4" } - is-bun-module@1.3.0: + is-bun-module@2.0.0: resolution: { - integrity: sha512-DgXeu5UWI0IsMQundYb5UAOzm6G2eVnarJ0byP6Tm55iZNKceD59LNPA2L4VvsScTtHcw0yEkVwSf7PC+QoLSA==, + integrity: sha512-gNCGbnnnnFAUGKeZ9PdbyeGYJqewpmc2aKHUEMO5nQPWU9lOmv7jcmQIv+qHD8fXW6W7qfuCwX4rY9LNRjXrkQ==, } is-callable@1.2.7: @@ -2614,10 +2648,10 @@ packages: nodemailer: optional: true - next@15.2.3: + next@15.2.4: resolution: { - integrity: sha512-x6eDkZxk2rPpu46E1ZVUWIBhYCLszmUY6fvHBFcbzJ9dD+qRX6vcHusaqqDlnY+VngKzKbAiG2iRCkPbmi8f7w==, + integrity: sha512-VwL+LAaPSxEkd3lU2xWbgEOtrM8oedmyhBqaVNmgKB+GvZlCy9rgaEc+y2on0wv+l0oSFqLtYD6dcC1eAedUaQ==, } engines: { node: ^18.18.0 || ^19.8.0 || >= 20.0.0 } hasBin: true @@ -2685,10 +2719,10 @@ packages: } deprecated: This package is no longer supported. - oauth4webapi@3.3.1: + oauth4webapi@3.3.2: resolution: { - integrity: sha512-ZwX7UqYrP3Lr+Glhca3a1/nF2jqf7VVyJfhGuW5JtrfDUxt0u+IoBPzFjZ2dd7PJGkdM6CFPVVYzuDYKHv101A==, + integrity: sha512-hCJgDQayOLpBxdDpzShK/SI3C1PVnkj4CcKLOGyQm23Lk5V+qYPH+LtQlu8YO29MswBry/FBVlwWBnWgQvaFdA==, } object-assign@4.1.1: @@ -3073,13 +3107,13 @@ packages: integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==, } - react-dom@19.0.0: + react-dom@19.1.0: resolution: { - integrity: sha512-4GV5sHFG0e/0AD4X+ySy6UJd3jVl1iNsNHdpad0qhABJ11twS3TTBnseqsKurKcsNqCEFeGL3uLpVChpIO3QfQ==, + integrity: sha512-Xs1hdnE+DyKgeHJeJznQmYMIBG3TKIHJJT95Q58nHLSrElKlGQqDTR2HQ9fx5CN/Gk6Vh/kupBTDLU11/nDk/g==, } peerDependencies: - react: ^19.0.0 + react: ^19.1.0 react-icons@5.5.0: resolution: @@ -3152,10 +3186,10 @@ packages: peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 - react@19.0.0: + react@19.1.0: resolution: { - integrity: sha512-V8AVnmPIICiWpGfm6GLzCR/W5FXLchHop40W4nXBmdlEceh16rCN8O8LNWm5bh5XUX91fh7KpA+W0TgMKmgTpQ==, + integrity: sha512-FS+XFBNvn3GTAWq26joslQgWNoFu08F4kl0J4CgdNKADkdSGXQyTCnKteIAJy96Br6YbpEU1LSzV5dYtjMkMDg==, } engines: { node: ">=0.10.0" } @@ -3242,12 +3276,6 @@ packages: deprecated: Rimraf versions prior to v4 are no longer supported hasBin: true - rspack-resolver@1.2.2: - resolution: - { - integrity: sha512-Fwc19jMBA3g+fxDJH2B4WxwZjE0VaaOL7OX/A4Wn5Zv7bOD/vyPZhzXfaO73Xc2GAlfi96g5fGUa378WbIGfFw==, - } - run-parallel@1.2.0: resolution: { @@ -3281,10 +3309,10 @@ packages: } engines: { node: ">= 0.4" } - scheduler@0.25.0: + scheduler@0.26.0: resolution: { - integrity: sha512-xFVuu11jh+xcO7JOAGJNOXld8/TcEHK/4CituBUeUb5hqxJLj9YuemAEuvm9gQ/+pgXYfbQuqAkiYu+u7YEsNA==, + integrity: sha512-NlHwttCI/l5gCPR3D1nNXtWABUmBwvZpEQiD4IXSbIDq8BzLIK/7Ir5gTFSGZDUu37K5cMNp0hFtzO38sC7gWA==, } semver@6.3.1: @@ -3634,10 +3662,10 @@ packages: } engines: { node: ">= 0.8.0" } - type-fest@4.37.0: + type-fest@4.38.0: resolution: { - integrity: sha512-S/5/0kFftkq27FPNye0XM1e2NsnoD/3FS+pBmbjmmtLT6I+i344KoOf7pvXreaFsDamWeaJX55nczA1m5PsBDg==, + integrity: sha512-2dBz5D5ycHIoliLYLi0Q2V7KRaDlH0uWIvmk7TYlAg5slqwiPv1ezJdZm1QEM0xgk29oYWMCbIG7E6gHpvChlg==, } engines: { node: ">=16" } @@ -3690,6 +3718,12 @@ packages: integrity: sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==, } + unrs-resolver@1.3.2: + resolution: + { + integrity: sha512-ZKQBC351Ubw0PY8xWhneIfb6dygTQeUHtCcNGd0QB618zabD/WbFMYdRyJ7xeVT+6G82K5v/oyZO0QSHFtbIuw==, + } + uri-js@4.4.1: resolution: { @@ -3866,10 +3900,10 @@ packages: integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==, } - yaml@2.7.0: + yaml@2.7.1: resolution: { - integrity: sha512-+hSoy/QHluxmC9kCIJyL/uyFmLmc+e5CFR5Wa+bpIhIj85LVb9ZH2nVnqrHoSvKogwODv0ClqZkmiSSaIH5LTA==, + integrity: sha512-10ULxpnOCQXxJvBgxsn9ptjq6uviG/htZKk9veJGhlqn3w/DxQ631zFF+nlQXLwmImeS5amR2dl2U8sg6U9jsQ==, } engines: { node: ">= 14" } hasBin: true @@ -3894,21 +3928,21 @@ snapshots: "@types/cookie": 0.6.0 cookie: 0.7.1 jose: 5.10.0 - oauth4webapi: 3.3.1 + oauth4webapi: 3.3.2 preact: 10.11.3 preact-render-to-string: 5.2.3(preact@10.11.3) - "@babel/runtime@7.26.10": + "@babel/runtime@7.27.0": dependencies: regenerator-runtime: 0.14.1 - "@emnapi/core@1.3.1": + "@emnapi/core@1.4.0": dependencies: "@emnapi/wasi-threads": 1.0.1 tslib: 2.8.1 optional: true - "@emnapi/runtime@1.3.1": + "@emnapi/runtime@1.4.0": dependencies: tslib: 2.8.1 optional: true @@ -3971,18 +4005,18 @@ snapshots: "@floating-ui/core": 1.6.9 "@floating-ui/utils": 0.2.9 - "@floating-ui/react-dom@2.1.2(react-dom@19.0.0(react@19.0.0))(react@19.0.0)": + "@floating-ui/react-dom@2.1.2(react-dom@19.1.0(react@19.1.0))(react@19.1.0)": dependencies: "@floating-ui/dom": 1.6.13 - react: 19.0.0 - react-dom: 19.0.0(react@19.0.0) + react: 19.1.0 + react-dom: 19.1.0(react@19.1.0) - "@floating-ui/react@0.26.28(react-dom@19.0.0(react@19.0.0))(react@19.0.0)": + "@floating-ui/react@0.26.28(react-dom@19.1.0(react@19.1.0))(react@19.1.0)": dependencies: - "@floating-ui/react-dom": 2.1.2(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + "@floating-ui/react-dom": 2.1.2(react-dom@19.1.0(react@19.1.0))(react@19.1.0) "@floating-ui/utils": 0.2.9 - react: 19.0.0 - react-dom: 19.0.0(react@19.0.0) + react: 19.1.0 + react-dom: 19.1.0(react@19.1.0) tabbable: 6.2.0 "@floating-ui/utils@0.2.9": {} @@ -4066,7 +4100,7 @@ snapshots: "@img/sharp-wasm32@0.33.5": dependencies: - "@emnapi/runtime": 1.3.1 + "@emnapi/runtime": 1.4.0 optional: true "@img/sharp-win32-ia32@0.33.5": @@ -4075,29 +4109,29 @@ snapshots: "@img/sharp-win32-x64@0.33.5": optional: true - "@mantine/core@7.17.2(@mantine/hooks@7.17.2(react@19.0.0))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)": + "@mantine/core@7.17.3(@mantine/hooks@7.17.3(react@19.1.0))(@types/react@19.0.12)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)": dependencies: - "@floating-ui/react": 0.26.28(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - "@mantine/hooks": 7.17.2(react@19.0.0) + "@floating-ui/react": 0.26.28(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + "@mantine/hooks": 7.17.3(react@19.1.0) clsx: 2.1.1 - react: 19.0.0 - react-dom: 19.0.0(react@19.0.0) - react-number-format: 5.4.3(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - react-remove-scroll: 2.6.3(@types/react@19.0.12)(react@19.0.0) - react-textarea-autosize: 8.5.6(@types/react@19.0.12)(react@19.0.0) - type-fest: 4.37.0 + react: 19.1.0 + react-dom: 19.1.0(react@19.1.0) + react-number-format: 5.4.3(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + react-remove-scroll: 2.6.3(@types/react@19.0.12)(react@19.1.0) + react-textarea-autosize: 8.5.6(@types/react@19.0.12)(react@19.1.0) + type-fest: 4.38.0 transitivePeerDependencies: - "@types/react" - "@mantine/form@7.17.2(react@19.0.0)": + "@mantine/form@7.17.3(react@19.1.0)": dependencies: fast-deep-equal: 3.1.3 klona: 2.0.6 - react: 19.0.0 + react: 19.1.0 - "@mantine/hooks@7.17.2(react@19.0.0)": + "@mantine/hooks@7.17.3(react@19.1.0)": dependencies: - react: 19.0.0 + react: 19.1.0 "@mapbox/node-pre-gyp@1.0.11": dependencies: @@ -4116,8 +4150,8 @@ snapshots: "@napi-rs/wasm-runtime@0.2.7": dependencies: - "@emnapi/core": 1.3.1 - "@emnapi/runtime": 1.3.1 + "@emnapi/core": 1.4.0 + "@emnapi/runtime": 1.4.0 "@tybys/wasm-util": 0.9.0 optional: true @@ -4125,34 +4159,34 @@ snapshots: dependencies: "@types/pg": 8.11.6 - "@next/env@15.2.3": {} + "@next/env@15.2.4": {} "@next/eslint-plugin-next@15.1.4": dependencies: fast-glob: 3.3.1 - "@next/swc-darwin-arm64@15.2.3": + "@next/swc-darwin-arm64@15.2.4": optional: true - "@next/swc-darwin-x64@15.2.3": + "@next/swc-darwin-x64@15.2.4": optional: true - "@next/swc-linux-arm64-gnu@15.2.3": + "@next/swc-linux-arm64-gnu@15.2.4": optional: true - "@next/swc-linux-arm64-musl@15.2.3": + "@next/swc-linux-arm64-musl@15.2.4": optional: true - "@next/swc-linux-x64-gnu@15.2.3": + "@next/swc-linux-x64-gnu@15.2.4": optional: true - "@next/swc-linux-x64-musl@15.2.3": + "@next/swc-linux-x64-musl@15.2.4": optional: true - "@next/swc-win32-arm64-msvc@15.2.3": + "@next/swc-win32-arm64-msvc@15.2.4": optional: true - "@next/swc-win32-x64-msvc@15.2.3": + "@next/swc-win32-x64-msvc@15.2.4": optional: true "@nodelib/fs.scandir@2.1.5": @@ -4185,10 +4219,10 @@ snapshots: dependencies: tslib: 2.8.1 - "@tabler/icons-react@3.31.0(react@19.0.0)": + "@tabler/icons-react@3.31.0(react@19.1.0)": dependencies: "@tabler/icons": 3.31.0 - react: 19.0.0 + react: 19.1.0 "@tabler/icons@3.31.0": {} @@ -4199,23 +4233,23 @@ snapshots: "@types/bcrypt@5.0.2": dependencies: - "@types/node": 22.13.11 + "@types/node": 22.13.14 "@types/cookie@0.6.0": {} - "@types/estree@1.0.6": {} + "@types/estree@1.0.7": {} "@types/json-schema@7.0.15": {} "@types/json5@0.0.29": {} - "@types/node@22.13.11": + "@types/node@22.13.14": dependencies: undici-types: 6.20.0 "@types/pg@8.11.6": dependencies: - "@types/node": 22.13.11 + "@types/node": 22.13.14 pg-protocol: 1.8.0 pg-types: 4.0.2 @@ -4227,14 +4261,14 @@ snapshots: dependencies: csstype: 3.1.3 - "@typescript-eslint/eslint-plugin@8.27.0(@typescript-eslint/parser@8.27.0(eslint@9.23.0)(typescript@5.8.2))(eslint@9.23.0)(typescript@5.8.2)": + "@typescript-eslint/eslint-plugin@8.28.0(@typescript-eslint/parser@8.28.0(eslint@9.23.0)(typescript@5.8.2))(eslint@9.23.0)(typescript@5.8.2)": dependencies: "@eslint-community/regexpp": 4.12.1 - "@typescript-eslint/parser": 8.27.0(eslint@9.23.0)(typescript@5.8.2) - "@typescript-eslint/scope-manager": 8.27.0 - "@typescript-eslint/type-utils": 8.27.0(eslint@9.23.0)(typescript@5.8.2) - "@typescript-eslint/utils": 8.27.0(eslint@9.23.0)(typescript@5.8.2) - "@typescript-eslint/visitor-keys": 8.27.0 + "@typescript-eslint/parser": 8.28.0(eslint@9.23.0)(typescript@5.8.2) + "@typescript-eslint/scope-manager": 8.28.0 + "@typescript-eslint/type-utils": 8.28.0(eslint@9.23.0)(typescript@5.8.2) + "@typescript-eslint/utils": 8.28.0(eslint@9.23.0)(typescript@5.8.2) + "@typescript-eslint/visitor-keys": 8.28.0 eslint: 9.23.0 graphemer: 1.4.0 ignore: 5.3.2 @@ -4244,27 +4278,27 @@ snapshots: transitivePeerDependencies: - supports-color - "@typescript-eslint/parser@8.27.0(eslint@9.23.0)(typescript@5.8.2)": + "@typescript-eslint/parser@8.28.0(eslint@9.23.0)(typescript@5.8.2)": dependencies: - "@typescript-eslint/scope-manager": 8.27.0 - "@typescript-eslint/types": 8.27.0 - "@typescript-eslint/typescript-estree": 8.27.0(typescript@5.8.2) - "@typescript-eslint/visitor-keys": 8.27.0 + "@typescript-eslint/scope-manager": 8.28.0 + "@typescript-eslint/types": 8.28.0 + "@typescript-eslint/typescript-estree": 8.28.0(typescript@5.8.2) + "@typescript-eslint/visitor-keys": 8.28.0 debug: 4.4.0 eslint: 9.23.0 typescript: 5.8.2 transitivePeerDependencies: - supports-color - "@typescript-eslint/scope-manager@8.27.0": + "@typescript-eslint/scope-manager@8.28.0": dependencies: - "@typescript-eslint/types": 8.27.0 - "@typescript-eslint/visitor-keys": 8.27.0 + "@typescript-eslint/types": 8.28.0 + "@typescript-eslint/visitor-keys": 8.28.0 - "@typescript-eslint/type-utils@8.27.0(eslint@9.23.0)(typescript@5.8.2)": + "@typescript-eslint/type-utils@8.28.0(eslint@9.23.0)(typescript@5.8.2)": dependencies: - "@typescript-eslint/typescript-estree": 8.27.0(typescript@5.8.2) - "@typescript-eslint/utils": 8.27.0(eslint@9.23.0)(typescript@5.8.2) + "@typescript-eslint/typescript-estree": 8.28.0(typescript@5.8.2) + "@typescript-eslint/utils": 8.28.0(eslint@9.23.0)(typescript@5.8.2) debug: 4.4.0 eslint: 9.23.0 ts-api-utils: 2.1.0(typescript@5.8.2) @@ -4272,12 +4306,12 @@ snapshots: transitivePeerDependencies: - supports-color - "@typescript-eslint/types@8.27.0": {} + "@typescript-eslint/types@8.28.0": {} - "@typescript-eslint/typescript-estree@8.27.0(typescript@5.8.2)": + "@typescript-eslint/typescript-estree@8.28.0(typescript@5.8.2)": dependencies: - "@typescript-eslint/types": 8.27.0 - "@typescript-eslint/visitor-keys": 8.27.0 + "@typescript-eslint/types": 8.28.0 + "@typescript-eslint/visitor-keys": 8.28.0 debug: 4.4.0 fast-glob: 3.3.3 is-glob: 4.0.3 @@ -4288,61 +4322,73 @@ snapshots: transitivePeerDependencies: - supports-color - "@typescript-eslint/utils@8.27.0(eslint@9.23.0)(typescript@5.8.2)": + "@typescript-eslint/utils@8.28.0(eslint@9.23.0)(typescript@5.8.2)": dependencies: "@eslint-community/eslint-utils": 4.5.1(eslint@9.23.0) - "@typescript-eslint/scope-manager": 8.27.0 - "@typescript-eslint/types": 8.27.0 - "@typescript-eslint/typescript-estree": 8.27.0(typescript@5.8.2) + "@typescript-eslint/scope-manager": 8.28.0 + "@typescript-eslint/types": 8.28.0 + "@typescript-eslint/typescript-estree": 8.28.0(typescript@5.8.2) eslint: 9.23.0 typescript: 5.8.2 transitivePeerDependencies: - supports-color - "@typescript-eslint/visitor-keys@8.27.0": + "@typescript-eslint/visitor-keys@8.28.0": dependencies: - "@typescript-eslint/types": 8.27.0 + "@typescript-eslint/types": 8.28.0 eslint-visitor-keys: 4.2.0 - "@unrs/rspack-resolver-binding-darwin-arm64@1.2.2": + "@unrs/resolver-binding-darwin-arm64@1.3.2": + optional: true + + "@unrs/resolver-binding-darwin-x64@1.3.2": + optional: true + + "@unrs/resolver-binding-freebsd-x64@1.3.2": optional: true - "@unrs/rspack-resolver-binding-darwin-x64@1.2.2": + "@unrs/resolver-binding-linux-arm-gnueabihf@1.3.2": optional: true - "@unrs/rspack-resolver-binding-freebsd-x64@1.2.2": + "@unrs/resolver-binding-linux-arm-musleabihf@1.3.2": optional: true - "@unrs/rspack-resolver-binding-linux-arm-gnueabihf@1.2.2": + "@unrs/resolver-binding-linux-arm64-gnu@1.3.2": optional: true - "@unrs/rspack-resolver-binding-linux-arm64-gnu@1.2.2": + "@unrs/resolver-binding-linux-arm64-musl@1.3.2": optional: true - "@unrs/rspack-resolver-binding-linux-arm64-musl@1.2.2": + "@unrs/resolver-binding-linux-ppc64-gnu@1.3.2": optional: true - "@unrs/rspack-resolver-binding-linux-x64-gnu@1.2.2": + "@unrs/resolver-binding-linux-s390x-gnu@1.3.2": optional: true - "@unrs/rspack-resolver-binding-linux-x64-musl@1.2.2": + "@unrs/resolver-binding-linux-x64-gnu@1.3.2": optional: true - "@unrs/rspack-resolver-binding-wasm32-wasi@1.2.2": + "@unrs/resolver-binding-linux-x64-musl@1.3.2": + optional: true + + "@unrs/resolver-binding-wasm32-wasi@1.3.2": dependencies: "@napi-rs/wasm-runtime": 0.2.7 optional: true - "@unrs/rspack-resolver-binding-win32-arm64-msvc@1.2.2": + "@unrs/resolver-binding-win32-arm64-msvc@1.3.2": optional: true - "@unrs/rspack-resolver-binding-win32-x64-msvc@1.2.2": + "@unrs/resolver-binding-win32-ia32-msvc@1.3.2": optional: true - "@vercel/analytics@1.5.0(next@15.2.3(@playwright/test@1.51.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react@19.0.0)": + "@unrs/resolver-binding-win32-x64-msvc@1.3.2": + optional: true + + "@vercel/analytics@1.5.0(next@15.2.4(@playwright/test@1.51.1)(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(react@19.1.0)": optionalDependencies: - next: 15.2.3(@playwright/test@1.51.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - react: 19.0.0 + next: 15.2.4(@playwright/test@1.51.1)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + react: 19.1.0 "@vercel/postgres@0.10.0": dependencies: @@ -4352,10 +4398,10 @@ snapshots: transitivePeerDependencies: - utf-8-validate - "@vercel/speed-insights@1.2.0(next@15.2.3(@playwright/test@1.51.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react@19.0.0)": + "@vercel/speed-insights@1.2.0(next@15.2.4(@playwright/test@1.51.1)(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(react@19.1.0)": optionalDependencies: - next: 15.2.3(@playwright/test@1.51.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - react: 19.0.0 + next: 15.2.4(@playwright/test@1.51.1)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + react: 19.1.0 abbrev@1.1.1: {} @@ -4532,7 +4578,7 @@ snapshots: camelcase-css@2.0.1: {} - caniuse-lite@1.0.30001706: {} + caniuse-lite@1.0.30001707: {} chalk@4.1.2: dependencies: @@ -4766,12 +4812,12 @@ snapshots: dependencies: "@next/eslint-plugin-next": 15.1.4 "@rushstack/eslint-patch": 1.11.0 - "@typescript-eslint/eslint-plugin": 8.27.0(@typescript-eslint/parser@8.27.0(eslint@9.23.0)(typescript@5.8.2))(eslint@9.23.0)(typescript@5.8.2) - "@typescript-eslint/parser": 8.27.0(eslint@9.23.0)(typescript@5.8.2) + "@typescript-eslint/eslint-plugin": 8.28.0(@typescript-eslint/parser@8.28.0(eslint@9.23.0)(typescript@5.8.2))(eslint@9.23.0)(typescript@5.8.2) + "@typescript-eslint/parser": 8.28.0(eslint@9.23.0)(typescript@5.8.2) eslint: 9.23.0 eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.9.1(eslint-plugin-import@2.31.0)(eslint@9.23.0) - eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.27.0(eslint@9.23.0)(typescript@5.8.2))(eslint-import-resolver-typescript@3.9.1)(eslint@9.23.0) + eslint-import-resolver-typescript: 3.10.0(eslint-plugin-import@2.31.0)(eslint@9.23.0) + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.28.0(eslint@9.23.0)(typescript@5.8.2))(eslint-import-resolver-typescript@3.10.0)(eslint@9.23.0) eslint-plugin-jsx-a11y: 6.10.2(eslint@9.23.0) eslint-plugin-react: 7.37.4(eslint@9.23.0) eslint-plugin-react-hooks: 5.2.0(eslint@9.23.0) @@ -4794,33 +4840,33 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-import-resolver-typescript@3.9.1(eslint-plugin-import@2.31.0)(eslint@9.23.0): + eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0)(eslint@9.23.0): dependencies: "@nolyfill/is-core-module": 1.0.39 debug: 4.4.0 eslint: 9.23.0 get-tsconfig: 4.10.0 - is-bun-module: 1.3.0 - rspack-resolver: 1.2.2 + is-bun-module: 2.0.0 stable-hash: 0.0.5 tinyglobby: 0.2.12 + unrs-resolver: 1.3.2 optionalDependencies: - eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.27.0(eslint@9.23.0)(typescript@5.8.2))(eslint-import-resolver-typescript@3.9.1)(eslint@9.23.0) + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.28.0(eslint@9.23.0)(typescript@5.8.2))(eslint-import-resolver-typescript@3.10.0)(eslint@9.23.0) transitivePeerDependencies: - supports-color - eslint-module-utils@2.12.0(@typescript-eslint/parser@8.27.0(eslint@9.23.0)(typescript@5.8.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.9.1)(eslint@9.23.0): + eslint-module-utils@2.12.0(@typescript-eslint/parser@8.28.0(eslint@9.23.0)(typescript@5.8.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.0)(eslint@9.23.0): dependencies: debug: 3.2.7 optionalDependencies: - "@typescript-eslint/parser": 8.27.0(eslint@9.23.0)(typescript@5.8.2) + "@typescript-eslint/parser": 8.28.0(eslint@9.23.0)(typescript@5.8.2) eslint: 9.23.0 eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.9.1(eslint-plugin-import@2.31.0)(eslint@9.23.0) + eslint-import-resolver-typescript: 3.10.0(eslint-plugin-import@2.31.0)(eslint@9.23.0) transitivePeerDependencies: - supports-color - eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.27.0(eslint@9.23.0)(typescript@5.8.2))(eslint-import-resolver-typescript@3.9.1)(eslint@9.23.0): + eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.28.0(eslint@9.23.0)(typescript@5.8.2))(eslint-import-resolver-typescript@3.10.0)(eslint@9.23.0): dependencies: "@rtsao/scc": 1.1.0 array-includes: 3.1.8 @@ -4831,7 +4877,7 @@ snapshots: doctrine: 2.1.0 eslint: 9.23.0 eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.27.0(eslint@9.23.0)(typescript@5.8.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.9.1)(eslint@9.23.0) + eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.28.0(eslint@9.23.0)(typescript@5.8.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.0)(eslint@9.23.0) hasown: 2.0.2 is-core-module: 2.16.1 is-glob: 4.0.3 @@ -4843,7 +4889,7 @@ snapshots: string.prototype.trimend: 1.0.9 tsconfig-paths: 3.15.0 optionalDependencies: - "@typescript-eslint/parser": 8.27.0(eslint@9.23.0)(typescript@5.8.2) + "@typescript-eslint/parser": 8.28.0(eslint@9.23.0)(typescript@5.8.2) transitivePeerDependencies: - eslint-import-resolver-typescript - eslint-import-resolver-webpack @@ -4916,7 +4962,7 @@ snapshots: "@humanfs/node": 0.16.6 "@humanwhocodes/module-importer": 1.0.1 "@humanwhocodes/retry": 0.4.2 - "@types/estree": 1.0.6 + "@types/estree": 1.0.7 "@types/json-schema": 7.0.15 ajv: 6.12.6 chalk: 4.1.2 @@ -5029,14 +5075,14 @@ snapshots: dependencies: is-callable: 1.2.7 - framer-motion@12.6.2(react-dom@19.0.0(react@19.0.0))(react@19.0.0): + framer-motion@12.6.2(react-dom@19.1.0(react@19.1.0))(react@19.1.0): dependencies: motion-dom: 12.6.1 motion-utils: 12.5.0 tslib: 2.8.1 optionalDependencies: - react: 19.0.0 - react-dom: 19.0.0(react@19.0.0) + react: 19.1.0 + react-dom: 19.1.0(react@19.1.0) fs-minipass@2.1.0: dependencies: @@ -5216,7 +5262,7 @@ snapshots: call-bound: 1.0.4 has-tostringtag: 1.0.2 - is-bun-module@1.3.0: + is-bun-module@2.0.0: dependencies: semver: 7.7.1 @@ -5380,7 +5426,7 @@ snapshots: micromatch: 4.0.8 pidtree: 0.6.0 string-argv: 0.3.2 - yaml: 2.7.0 + yaml: 2.7.1 transitivePeerDependencies: - supports-color @@ -5465,32 +5511,32 @@ snapshots: natural-compare@1.4.0: {} - next-auth@5.0.0-beta.25(next@15.2.3(@playwright/test@1.51.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react@19.0.0): + next-auth@5.0.0-beta.25(next@15.2.4(@playwright/test@1.51.1)(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(react@19.1.0): dependencies: "@auth/core": 0.37.2 - next: 15.2.3(@playwright/test@1.51.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - react: 19.0.0 + next: 15.2.4(@playwright/test@1.51.1)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + react: 19.1.0 - next@15.2.3(@playwright/test@1.51.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0): + next@15.2.4(@playwright/test@1.51.1)(react-dom@19.1.0(react@19.1.0))(react@19.1.0): dependencies: - "@next/env": 15.2.3 + "@next/env": 15.2.4 "@swc/counter": 0.1.3 "@swc/helpers": 0.5.15 busboy: 1.6.0 - caniuse-lite: 1.0.30001706 + caniuse-lite: 1.0.30001707 postcss: 8.4.31 - react: 19.0.0 - react-dom: 19.0.0(react@19.0.0) - styled-jsx: 5.1.6(react@19.0.0) + react: 19.1.0 + react-dom: 19.1.0(react@19.1.0) + styled-jsx: 5.1.6(react@19.1.0) optionalDependencies: - "@next/swc-darwin-arm64": 15.2.3 - "@next/swc-darwin-x64": 15.2.3 - "@next/swc-linux-arm64-gnu": 15.2.3 - "@next/swc-linux-arm64-musl": 15.2.3 - "@next/swc-linux-x64-gnu": 15.2.3 - "@next/swc-linux-x64-musl": 15.2.3 - "@next/swc-win32-arm64-msvc": 15.2.3 - "@next/swc-win32-x64-msvc": 15.2.3 + "@next/swc-darwin-arm64": 15.2.4 + "@next/swc-darwin-x64": 15.2.4 + "@next/swc-linux-arm64-gnu": 15.2.4 + "@next/swc-linux-arm64-musl": 15.2.4 + "@next/swc-linux-x64-gnu": 15.2.4 + "@next/swc-linux-x64-musl": 15.2.4 + "@next/swc-win32-arm64-msvc": 15.2.4 + "@next/swc-win32-x64-msvc": 15.2.4 "@playwright/test": 1.51.1 sharp: 0.33.5 transitivePeerDependencies: @@ -5520,7 +5566,7 @@ snapshots: gauge: 3.0.2 set-blocking: 2.0.0 - oauth4webapi@3.3.1: {} + oauth4webapi@3.3.2: {} object-assign@4.1.1: {} @@ -5729,59 +5775,59 @@ snapshots: queue-microtask@1.2.3: {} - react-dom@19.0.0(react@19.0.0): + react-dom@19.1.0(react@19.1.0): dependencies: - react: 19.0.0 - scheduler: 0.25.0 + react: 19.1.0 + scheduler: 0.26.0 - react-icons@5.5.0(react@19.0.0): + react-icons@5.5.0(react@19.1.0): dependencies: - react: 19.0.0 + react: 19.1.0 react-is@16.13.1: {} - react-number-format@5.4.3(react-dom@19.0.0(react@19.0.0))(react@19.0.0): + react-number-format@5.4.3(react-dom@19.1.0(react@19.1.0))(react@19.1.0): dependencies: - react: 19.0.0 - react-dom: 19.0.0(react@19.0.0) + react: 19.1.0 + react-dom: 19.1.0(react@19.1.0) - react-remove-scroll-bar@2.3.8(@types/react@19.0.12)(react@19.0.0): + react-remove-scroll-bar@2.3.8(@types/react@19.0.12)(react@19.1.0): dependencies: - react: 19.0.0 - react-style-singleton: 2.2.3(@types/react@19.0.12)(react@19.0.0) + react: 19.1.0 + react-style-singleton: 2.2.3(@types/react@19.0.12)(react@19.1.0) tslib: 2.8.1 optionalDependencies: "@types/react": 19.0.12 - react-remove-scroll@2.6.3(@types/react@19.0.12)(react@19.0.0): + react-remove-scroll@2.6.3(@types/react@19.0.12)(react@19.1.0): dependencies: - react: 19.0.0 - react-remove-scroll-bar: 2.3.8(@types/react@19.0.12)(react@19.0.0) - react-style-singleton: 2.2.3(@types/react@19.0.12)(react@19.0.0) + react: 19.1.0 + react-remove-scroll-bar: 2.3.8(@types/react@19.0.12)(react@19.1.0) + react-style-singleton: 2.2.3(@types/react@19.0.12)(react@19.1.0) tslib: 2.8.1 - use-callback-ref: 1.3.3(@types/react@19.0.12)(react@19.0.0) - use-sidecar: 1.1.3(@types/react@19.0.12)(react@19.0.0) + use-callback-ref: 1.3.3(@types/react@19.0.12)(react@19.1.0) + use-sidecar: 1.1.3(@types/react@19.0.12)(react@19.1.0) optionalDependencies: "@types/react": 19.0.12 - react-style-singleton@2.2.3(@types/react@19.0.12)(react@19.0.0): + react-style-singleton@2.2.3(@types/react@19.0.12)(react@19.1.0): dependencies: get-nonce: 1.0.1 - react: 19.0.0 + react: 19.1.0 tslib: 2.8.1 optionalDependencies: "@types/react": 19.0.12 - react-textarea-autosize@8.5.6(@types/react@19.0.12)(react@19.0.0): + react-textarea-autosize@8.5.6(@types/react@19.0.12)(react@19.1.0): dependencies: - "@babel/runtime": 7.26.10 - react: 19.0.0 - use-composed-ref: 1.4.0(@types/react@19.0.12)(react@19.0.0) - use-latest: 1.3.0(@types/react@19.0.12)(react@19.0.0) + "@babel/runtime": 7.27.0 + react: 19.1.0 + use-composed-ref: 1.4.0(@types/react@19.0.12)(react@19.1.0) + use-latest: 1.3.0(@types/react@19.0.12)(react@19.1.0) transitivePeerDependencies: - "@types/react" - react@19.0.0: {} + react@19.1.0: {} readable-stream@3.6.2: dependencies: @@ -5840,20 +5886,6 @@ snapshots: dependencies: glob: 7.2.3 - rspack-resolver@1.2.2: - optionalDependencies: - "@unrs/rspack-resolver-binding-darwin-arm64": 1.2.2 - "@unrs/rspack-resolver-binding-darwin-x64": 1.2.2 - "@unrs/rspack-resolver-binding-freebsd-x64": 1.2.2 - "@unrs/rspack-resolver-binding-linux-arm-gnueabihf": 1.2.2 - "@unrs/rspack-resolver-binding-linux-arm64-gnu": 1.2.2 - "@unrs/rspack-resolver-binding-linux-arm64-musl": 1.2.2 - "@unrs/rspack-resolver-binding-linux-x64-gnu": 1.2.2 - "@unrs/rspack-resolver-binding-linux-x64-musl": 1.2.2 - "@unrs/rspack-resolver-binding-wasm32-wasi": 1.2.2 - "@unrs/rspack-resolver-binding-win32-arm64-msvc": 1.2.2 - "@unrs/rspack-resolver-binding-win32-x64-msvc": 1.2.2 - run-parallel@1.2.0: dependencies: queue-microtask: 1.2.3 @@ -5879,7 +5911,7 @@ snapshots: es-errors: 1.3.0 is-regex: 1.2.1 - scheduler@0.25.0: {} + scheduler@0.26.0: {} semver@6.3.1: {} @@ -6075,10 +6107,10 @@ snapshots: strip-json-comments@3.1.1: {} - styled-jsx@5.1.6(react@19.0.0): + styled-jsx@5.1.6(react@19.1.0): dependencies: client-only: 0.0.1 - react: 19.0.0 + react: 19.1.0 sugarss@4.0.1(postcss@8.5.3): dependencies: @@ -6129,7 +6161,7 @@ snapshots: dependencies: prelude-ls: 1.2.1 - type-fest@4.37.0: {} + type-fest@4.38.0: {} typed-array-buffer@1.0.3: dependencies: @@ -6175,40 +6207,58 @@ snapshots: undici-types@6.20.0: {} + unrs-resolver@1.3.2: + optionalDependencies: + "@unrs/resolver-binding-darwin-arm64": 1.3.2 + "@unrs/resolver-binding-darwin-x64": 1.3.2 + "@unrs/resolver-binding-freebsd-x64": 1.3.2 + "@unrs/resolver-binding-linux-arm-gnueabihf": 1.3.2 + "@unrs/resolver-binding-linux-arm-musleabihf": 1.3.2 + "@unrs/resolver-binding-linux-arm64-gnu": 1.3.2 + "@unrs/resolver-binding-linux-arm64-musl": 1.3.2 + "@unrs/resolver-binding-linux-ppc64-gnu": 1.3.2 + "@unrs/resolver-binding-linux-s390x-gnu": 1.3.2 + "@unrs/resolver-binding-linux-x64-gnu": 1.3.2 + "@unrs/resolver-binding-linux-x64-musl": 1.3.2 + "@unrs/resolver-binding-wasm32-wasi": 1.3.2 + "@unrs/resolver-binding-win32-arm64-msvc": 1.3.2 + "@unrs/resolver-binding-win32-ia32-msvc": 1.3.2 + "@unrs/resolver-binding-win32-x64-msvc": 1.3.2 + uri-js@4.4.1: dependencies: punycode: 2.3.1 - use-callback-ref@1.3.3(@types/react@19.0.12)(react@19.0.0): + use-callback-ref@1.3.3(@types/react@19.0.12)(react@19.1.0): dependencies: - react: 19.0.0 + react: 19.1.0 tslib: 2.8.1 optionalDependencies: "@types/react": 19.0.12 - use-composed-ref@1.4.0(@types/react@19.0.12)(react@19.0.0): + use-composed-ref@1.4.0(@types/react@19.0.12)(react@19.1.0): dependencies: - react: 19.0.0 + react: 19.1.0 optionalDependencies: "@types/react": 19.0.12 - use-isomorphic-layout-effect@1.2.0(@types/react@19.0.12)(react@19.0.0): + use-isomorphic-layout-effect@1.2.0(@types/react@19.0.12)(react@19.1.0): dependencies: - react: 19.0.0 + react: 19.1.0 optionalDependencies: "@types/react": 19.0.12 - use-latest@1.3.0(@types/react@19.0.12)(react@19.0.0): + use-latest@1.3.0(@types/react@19.0.12)(react@19.1.0): dependencies: - react: 19.0.0 - use-isomorphic-layout-effect: 1.2.0(@types/react@19.0.12)(react@19.0.0) + react: 19.1.0 + use-isomorphic-layout-effect: 1.2.0(@types/react@19.0.12)(react@19.1.0) optionalDependencies: "@types/react": 19.0.12 - use-sidecar@1.1.3(@types/react@19.0.12)(react@19.0.0): + use-sidecar@1.1.3(@types/react@19.0.12)(react@19.1.0): dependencies: detect-node-es: 1.1.0 - react: 19.0.0 + react: 19.1.0 tslib: 2.8.1 optionalDependencies: "@types/react": 19.0.12 @@ -6289,7 +6339,7 @@ snapshots: yallist@4.0.0: {} - yaml@2.7.0: {} + yaml@2.7.1: {} yocto-queue@0.1.0: {} From b1c2858162418f4621d1db41c5019ad7eb44c869 Mon Sep 17 00:00:00 2001 From: cjrace <52536248+cjrace@users.noreply.github.com> Date: Sat, 29 Mar 2025 18:08:16 +0000 Subject: [PATCH 07/16] Revert "workflow experimenting" This reverts commit b5648ccab3b5d28219a8d8e9c27108b550bf81cf. --- .github/workflows/playwright.yml | 2 +- .pnpmfile.cjs | 11 - package.json | 16 +- pnpm-lock.yaml | 650 ++++++++++++++----------------- 4 files changed, 309 insertions(+), 370 deletions(-) delete mode 100644 .pnpmfile.cjs diff --git a/.github/workflows/playwright.yml b/.github/workflows/playwright.yml index 2245204..633d08e 100644 --- a/.github/workflows/playwright.yml +++ b/.github/workflows/playwright.yml @@ -17,7 +17,7 @@ jobs: - uses: actions/checkout@v4 - uses: pnpm/action-setup@v4 - name: Install dependencies - run: pnpm install --no-frozen-lockfile + run: pnpm install - name: Install Playwright with deps run: npx playwright install --with-deps - name: Cache Next.js build artifacts diff --git a/.pnpmfile.cjs b/.pnpmfile.cjs deleted file mode 100644 index 11ee4e7..0000000 --- a/.pnpmfile.cjs +++ /dev/null @@ -1,11 +0,0 @@ -module.exports = { - hooks: { - readPackage(pkg) { - if (pkg.name === "bcrypt" || pkg.name === "sharp") { - pkg.scripts = pkg.scripts || {}; - pkg.scripts.preinstall = pkg.scripts.preinstall || ""; - } - return pkg; - }, - }, -}; diff --git a/package.json b/package.json index 0f74c08..a8347be 100644 --- a/package.json +++ b/package.json @@ -15,9 +15,9 @@ "prepare": "husky" }, "dependencies": { - "@mantine/core": "^7.17.3", - "@mantine/form": "^7.17.3", - "@mantine/hooks": "^7.17.3", + "@mantine/core": "^7.17.2", + "@mantine/form": "^7.17.2", + "@mantine/hooks": "^7.17.2", "@tabler/icons-react": "^3.31.0", "@vercel/analytics": "^1.5.0", "@vercel/postgres": "^0.10.0", @@ -27,10 +27,10 @@ "dotenv": "^16.4.7", "eslint": "^9.23.0", "framer-motion": "^12.6.2", - "next": "^15.2.4", + "next": "^15.2.3", "next-auth": "5.0.0-beta.25", - "react": "^19.1.0", - "react-dom": "^19.1.0", + "react": "^19.0.0", + "react-dom": "^19.0.0", "react-icons": "^5.5.0", "sharp": "^0.33.5", "uuid": "^11.1.0", @@ -39,7 +39,7 @@ "devDependencies": { "@playwright/test": "^1.51.1", "@types/bcrypt": "^5.0.2", - "@types/node": "^22.13.14", + "@types/node": "^22.13.11", "@types/react": "^19.0.12", "@types/react-dom": "^19.0.4", "eslint-config-next": "15.1.4", @@ -55,5 +55,5 @@ "lint-staged": { "**/*": "prettier --write --ignore-unknown" }, - "packageManager": "pnpm@10.7.0" + "packageManager": "pnpm@9.15.2+sha512.93e57b0126f0df74ce6bff29680394c0ba54ec47246b9cf321f0121d8d9bb03f750a705f24edc3c1180853afd7c2c3b94196d0a3d53d3e069d9e2793ef11f321" } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 5c239e7..40848a1 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -4,32 +4,30 @@ settings: autoInstallPeers: true excludeLinksFromLockfile: false -pnpmfileChecksum: kdb6zrvox5w2v2hyev2dbov3wq - importers: .: dependencies: "@mantine/core": - specifier: ^7.17.3 - version: 7.17.3(@mantine/hooks@7.17.3(react@19.1.0))(@types/react@19.0.12)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + specifier: ^7.17.2 + version: 7.17.2(@mantine/hooks@7.17.2(react@19.0.0))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) "@mantine/form": - specifier: ^7.17.3 - version: 7.17.3(react@19.1.0) + specifier: ^7.17.2 + version: 7.17.2(react@19.0.0) "@mantine/hooks": - specifier: ^7.17.3 - version: 7.17.3(react@19.1.0) + specifier: ^7.17.2 + version: 7.17.2(react@19.0.0) "@tabler/icons-react": specifier: ^3.31.0 - version: 3.31.0(react@19.1.0) + version: 3.31.0(react@19.0.0) "@vercel/analytics": specifier: ^1.5.0 - version: 1.5.0(next@15.2.4(@playwright/test@1.51.1)(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(react@19.1.0) + version: 1.5.0(next@15.2.3(@playwright/test@1.51.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react@19.0.0) "@vercel/postgres": specifier: ^0.10.0 version: 0.10.0 "@vercel/speed-insights": specifier: ^1.2.0 - version: 1.2.0(next@15.2.4(@playwright/test@1.51.1)(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(react@19.1.0) + version: 1.2.0(next@15.2.3(@playwright/test@1.51.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react@19.0.0) bcrypt: specifier: ^5.1.1 version: 5.1.1 @@ -44,22 +42,22 @@ importers: version: 9.23.0 framer-motion: specifier: ^12.6.2 - version: 12.6.2(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + version: 12.6.2(react-dom@19.0.0(react@19.0.0))(react@19.0.0) next: - specifier: ^15.2.4 - version: 15.2.4(@playwright/test@1.51.1)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + specifier: ^15.2.3 + version: 15.2.3(@playwright/test@1.51.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) next-auth: specifier: 5.0.0-beta.25 - version: 5.0.0-beta.25(next@15.2.4(@playwright/test@1.51.1)(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(react@19.1.0) + version: 5.0.0-beta.25(next@15.2.3(@playwright/test@1.51.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react@19.0.0) react: - specifier: ^19.1.0 - version: 19.1.0 + specifier: ^19.0.0 + version: 19.0.0 react-dom: - specifier: ^19.1.0 - version: 19.1.0(react@19.1.0) + specifier: ^19.0.0 + version: 19.0.0(react@19.0.0) react-icons: specifier: ^5.5.0 - version: 5.5.0(react@19.1.0) + version: 5.5.0(react@19.0.0) sharp: specifier: ^0.33.5 version: 0.33.5 @@ -77,8 +75,8 @@ importers: specifier: ^5.0.2 version: 5.0.2 "@types/node": - specifier: ^22.13.14 - version: 22.13.14 + specifier: ^22.13.11 + version: 22.13.11 "@types/react": specifier: ^19.0.12 version: 19.0.12 @@ -131,23 +129,23 @@ packages: nodemailer: optional: true - "@babel/runtime@7.27.0": + "@babel/runtime@7.26.10": resolution: { - integrity: sha512-VtPOkrdPHZsKc/clNqyi9WUA8TINkZ4cGk63UUE3u4pmB2k+ZMQRDuIOagv8UVd6j7k0T3+RRIb7beKTebNbcw==, + integrity: sha512-2WJMeRQPHKSPemqk/awGrAiuFfzBmOIPXKizAsVhWH9YJqLZ0H+HS4c8loHGgW6utJ3E/ejXQUsiGaQy2NZ9Fw==, } engines: { node: ">=6.9.0" } - "@emnapi/core@1.4.0": + "@emnapi/core@1.3.1": resolution: { - integrity: sha512-H+N/FqT07NmLmt6OFFtDfwe8PNygprzBikrEMyQfgqSmT0vzE515Pz7R8izwB9q/zsH/MA64AKoul3sA6/CzVg==, + integrity: sha512-pVGjBIt1Y6gg3EJN8jTcfpP/+uuRksIo055oE/OBkDNcjZqVbfkWCksG1Jp4yZnj3iKWyWX8fdG/j6UDYPbFog==, } - "@emnapi/runtime@1.4.0": + "@emnapi/runtime@1.3.1": resolution: { - integrity: sha512-64WYIf4UYcdLnbKn/umDlNjQDSS8AgZrI/R9+x5ilkUVFxXcA1Ebl+gQLc/6mERA4407Xof0R7wEyEuj091CVw==, + integrity: sha512-kEBmG8KyqtxJZv+ygbEim+KCGtIq1fC22Ms3S4ziXmYKm8uyoLX0MHONVKwp+9opg390VaKRNt4a7A9NwmpNhw==, } "@emnapi/wasi-threads@1.0.1": @@ -454,28 +452,28 @@ packages: cpu: [x64] os: [win32] - "@mantine/core@7.17.3": + "@mantine/core@7.17.2": resolution: { - integrity: sha512-N/AfV5eMnfEMx9WzI7AU5pNFBEzAfT/KtE2XDKS+0ht6RifUmolIxyIvoGMYz2yUEsCBMJZqmBq33Rabf5W7Ug==, + integrity: sha512-R6MYhitJ0JEgrhadd31Nw9FhRaQwDHjXUs5YIlitKH/fTOz9gKSxKjzmNng3bEBQCcbEDOkZj3FRcBgTUh/F0Q==, } peerDependencies: - "@mantine/hooks": 7.17.3 + "@mantine/hooks": 7.17.2 react: ^18.x || ^19.x react-dom: ^18.x || ^19.x - "@mantine/form@7.17.3": + "@mantine/form@7.17.2": resolution: { - integrity: sha512-ktERldD8f9lrjjz6wIbwMnNbAZq8XEWPx4K5WuFyjXaK0PI8D+gsXIGKMtA5rVrAUFHCWCdbK3yLgtjJNki8ew==, + integrity: sha512-MxZPKXXhaZ7M1ZJOpS2wifhh186DMvNjcXa2bP04Tp9TdvTlbLAJZxKjZkQnGGgt8Atsf6/3gdeJMfG704Km6g==, } peerDependencies: react: ^18.x || ^19.x - "@mantine/hooks@7.17.3": + "@mantine/hooks@7.17.2": resolution: { - integrity: sha512-6o65Rbfl8jd1C1nF9icvungqL0qZViEOmrZgkyKXxBYkC3x91fz4zftwQgNjt1tZHWDNO6Bo4GpRjJyAdwl48g==, + integrity: sha512-tbErVcGZu0E4dSmE6N0k6Tv1y9R3SQmmQgwqorcc+guEgKMdamc36lucZGlJnSGUmGj+WLUgELkEQ0asdfYBDA==, } peerDependencies: react: ^18.x || ^19.x @@ -499,10 +497,10 @@ packages: integrity: sha512-siFas6gItqv6wD/pZnvdu34wEqgG3nSE6zWZdq5j2DEsa+VvX8i/5HXJOo06qrw5axPXn+lGCxeR+NLaSPIXug==, } - "@next/env@15.2.4": + "@next/env@15.2.3": resolution: { - integrity: sha512-+SFtMgoiYP3WoSswuNmxJOCwi06TdWE733D+WPjpXIe4LXGULwEaofiiAy6kbS0+XjM5xF5n3lKuBwN2SnqD9g==, + integrity: sha512-a26KnbW9DFEUsSxAxKBORR/uD9THoYoKbkpFywMN/AFvboTt94b8+g/07T8J6ACsdLag8/PDU60ov4rPxRAixw==, } "@next/eslint-plugin-next@15.1.4": @@ -511,73 +509,73 @@ packages: integrity: sha512-HwlEXwCK3sr6zmVGEvWBjW9tBFs1Oe6hTmTLoFQtpm4As5HCdu8jfSE0XJOp7uhfEGLniIx8yrGxEWwNnY0fmQ==, } - "@next/swc-darwin-arm64@15.2.4": + "@next/swc-darwin-arm64@15.2.3": resolution: { - integrity: sha512-1AnMfs655ipJEDC/FHkSr0r3lXBgpqKo4K1kiwfUf3iE68rDFXZ1TtHdMvf7D0hMItgDZ7Vuq3JgNMbt/+3bYw==, + integrity: sha512-uaBhA8aLbXLqwjnsHSkxs353WrRgQgiFjduDpc7YXEU0B54IKx3vU+cxQlYwPCyC8uYEEX7THhtQQsfHnvv8dw==, } engines: { node: ">= 10" } cpu: [arm64] os: [darwin] - "@next/swc-darwin-x64@15.2.4": + "@next/swc-darwin-x64@15.2.3": resolution: { - integrity: sha512-3qK2zb5EwCwxnO2HeO+TRqCubeI/NgCe+kL5dTJlPldV/uwCnUgC7VbEzgmxbfrkbjehL4H9BPztWOEtsoMwew==, + integrity: sha512-pVwKvJ4Zk7h+4hwhqOUuMx7Ib02u3gDX3HXPKIShBi9JlYllI0nU6TWLbPT94dt7FSi6mSBhfc2JrHViwqbOdw==, } engines: { node: ">= 10" } cpu: [x64] os: [darwin] - "@next/swc-linux-arm64-gnu@15.2.4": + "@next/swc-linux-arm64-gnu@15.2.3": resolution: { - integrity: sha512-HFN6GKUcrTWvem8AZN7tT95zPb0GUGv9v0d0iyuTb303vbXkkbHDp/DxufB04jNVD+IN9yHy7y/6Mqq0h0YVaQ==, + integrity: sha512-50ibWdn2RuFFkOEUmo9NCcQbbV9ViQOrUfG48zHBCONciHjaUKtHcYFiCwBVuzD08fzvzkWuuZkd4AqbvKO7UQ==, } engines: { node: ">= 10" } cpu: [arm64] os: [linux] - "@next/swc-linux-arm64-musl@15.2.4": + "@next/swc-linux-arm64-musl@15.2.3": resolution: { - integrity: sha512-Oioa0SORWLwi35/kVB8aCk5Uq+5/ZIumMK1kJV+jSdazFm2NzPDztsefzdmzzpx5oGCJ6FkUC7vkaUseNTStNA==, + integrity: sha512-2gAPA7P652D3HzR4cLyAuVYwYqjG0mt/3pHSWTCyKZq/N/dJcUAEoNQMyUmwTZWCJRKofB+JPuDVP2aD8w2J6Q==, } engines: { node: ">= 10" } cpu: [arm64] os: [linux] - "@next/swc-linux-x64-gnu@15.2.4": + "@next/swc-linux-x64-gnu@15.2.3": resolution: { - integrity: sha512-yb5WTRaHdkgOqFOZiu6rHV1fAEK0flVpaIN2HB6kxHVSy/dIajWbThS7qON3W9/SNOH2JWkVCyulgGYekMePuw==, + integrity: sha512-ODSKvrdMgAJOVU4qElflYy1KSZRM3M45JVbeZu42TINCMG3anp7YCBn80RkISV6bhzKwcUqLBAmOiWkaGtBA9w==, } engines: { node: ">= 10" } cpu: [x64] os: [linux] - "@next/swc-linux-x64-musl@15.2.4": + "@next/swc-linux-x64-musl@15.2.3": resolution: { - integrity: sha512-Dcdv/ix6srhkM25fgXiyOieFUkz+fOYkHlydWCtB0xMST6X9XYI3yPDKBZt1xuhOytONsIFJFB08xXYsxUwJLw==, + integrity: sha512-ZR9kLwCWrlYxwEoytqPi1jhPd1TlsSJWAc+H/CJHmHkf2nD92MQpSRIURR1iNgA/kuFSdxB8xIPt4p/T78kwsg==, } engines: { node: ">= 10" } cpu: [x64] os: [linux] - "@next/swc-win32-arm64-msvc@15.2.4": + "@next/swc-win32-arm64-msvc@15.2.3": resolution: { - integrity: sha512-dW0i7eukvDxtIhCYkMrZNQfNicPDExt2jPb9AZPpL7cfyUo7QSNl1DjsHjmmKp6qNAqUESyT8YFl/Aw91cNJJg==, + integrity: sha512-+G2FrDcfm2YDbhDiObDU/qPriWeiz/9cRR0yMWJeTLGGX6/x8oryO3tt7HhodA1vZ8r2ddJPCjtLcpaVl7TE2Q==, } engines: { node: ">= 10" } cpu: [arm64] os: [win32] - "@next/swc-win32-x64-msvc@15.2.4": + "@next/swc-win32-x64-msvc@15.2.3": resolution: { - integrity: sha512-SbnWkJmkS7Xl3kre8SdMF6F/XDh1DTFEhp0jRTj/uB8iPKoU2bb2NDfcu+iifv1+mxQEd1g2vvSxcZbXSKyWiQ==, + integrity: sha512-gHYS9tc+G2W0ZC8rBL+H6RdtXIyk40uLiaos0yj5US85FNhbFEndMA2nW3z47nzOWiSvXTZ5kBClc3rD0zJg0w==, } engines: { node: ">= 10" } cpu: [x64] @@ -681,10 +679,10 @@ packages: integrity: sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==, } - "@types/estree@1.0.7": + "@types/estree@1.0.6": resolution: { - integrity: sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==, + integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==, } "@types/json-schema@7.0.15": @@ -699,10 +697,10 @@ packages: integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==, } - "@types/node@22.13.14": + "@types/node@22.13.11": resolution: { - integrity: sha512-Zs/Ollc1SJ8nKUAgc7ivOEdIBM8JAKgrqqUYi2J997JuKO7/tpQC+WCetQ1sypiKCQWHdvdg9wBNpUPEWZae7w==, + integrity: sha512-iEUCUJoU0i3VnrCmgoWCXttklWcvoCIx4jzcP22fioIVSdTmjgoEvmAO/QPw6TcS9k5FrNgn4w7q5lGOd1CT5g==, } "@types/pg@8.11.6": @@ -725,10 +723,10 @@ packages: integrity: sha512-V6Ar115dBDrjbtXSrS+/Oruobc+qVbbUxDFC1RSbRqLt5SYvxxyIDrSC85RWml54g+jfNeEMZhEj7wW07ONQhA==, } - "@typescript-eslint/eslint-plugin@8.28.0": + "@typescript-eslint/eslint-plugin@8.27.0": resolution: { - integrity: sha512-lvFK3TCGAHsItNdWZ/1FkvpzCxTHUVuFrdnOGLMa0GGCFIbCgQWVk3CzCGdA7kM3qGVc+dfW9tr0Z/sHnGDFyg==, + integrity: sha512-4henw4zkePi5p252c8ncBLzLce52SEUz2Ebj8faDnuUXz2UuHEONYcJ+G0oaCF+bYCWVZtrGzq3FD7YXetmnSA==, } engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } peerDependencies: @@ -736,182 +734,150 @@ packages: eslint: ^8.57.0 || ^9.0.0 typescript: ">=4.8.4 <5.9.0" - "@typescript-eslint/parser@8.28.0": + "@typescript-eslint/parser@8.27.0": resolution: { - integrity: sha512-LPcw1yHD3ToaDEoljFEfQ9j2xShY367h7FZ1sq5NJT9I3yj4LHer1Xd1yRSOdYy9BpsrxU7R+eoDokChYM53lQ==, + integrity: sha512-XGwIabPallYipmcOk45DpsBSgLC64A0yvdAkrwEzwZ2viqGqRUJ8eEYoPz0CWnutgAFbNMPdsGGvzjSmcWVlEA==, } engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } peerDependencies: eslint: ^8.57.0 || ^9.0.0 typescript: ">=4.8.4 <5.9.0" - "@typescript-eslint/scope-manager@8.28.0": + "@typescript-eslint/scope-manager@8.27.0": resolution: { - integrity: sha512-u2oITX3BJwzWCapoZ/pXw6BCOl8rJP4Ij/3wPoGvY8XwvXflOzd1kLrDUUUAIEdJSFh+ASwdTHqtan9xSg8buw==, + integrity: sha512-8oI9GwPMQmBryaaxG1tOZdxXVeMDte6NyJA4i7/TWa4fBwgnAXYlIQP+uYOeqAaLJ2JRxlG9CAyL+C+YE9Xknw==, } engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } - "@typescript-eslint/type-utils@8.28.0": + "@typescript-eslint/type-utils@8.27.0": resolution: { - integrity: sha512-oRoXu2v0Rsy/VoOGhtWrOKDiIehvI+YNrDk5Oqj40Mwm0Yt01FC/Q7nFqg088d3yAsR1ZcZFVfPCTTFCe/KPwg==, + integrity: sha512-wVArTVcz1oJOIEJxui/nRhV0TXzD/zMSOYi/ggCfNq78EIszddXcJb7r4RCp/oBrjt8n9A0BSxRMKxHftpDxDA==, } engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } peerDependencies: eslint: ^8.57.0 || ^9.0.0 typescript: ">=4.8.4 <5.9.0" - "@typescript-eslint/types@8.28.0": + "@typescript-eslint/types@8.27.0": resolution: { - integrity: sha512-bn4WS1bkKEjx7HqiwG2JNB3YJdC1q6Ue7GyGlwPHyt0TnVq6TtD/hiOdTZt71sq0s7UzqBFXD8t8o2e63tXgwA==, + integrity: sha512-/6cp9yL72yUHAYq9g6DsAU+vVfvQmd1a8KyA81uvfDE21O2DwQ/qxlM4AR8TSdAu+kJLBDrEHKC5/W2/nxsY0A==, } engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } - "@typescript-eslint/typescript-estree@8.28.0": + "@typescript-eslint/typescript-estree@8.27.0": resolution: { - integrity: sha512-H74nHEeBGeklctAVUvmDkxB1mk+PAZ9FiOMPFncdqeRBXxk1lWSYraHw8V12b7aa6Sg9HOBNbGdSHobBPuQSuA==, + integrity: sha512-BnKq8cqPVoMw71O38a1tEb6iebEgGA80icSxW7g+kndx0o6ot6696HjG7NdgfuAVmVEtwXUr3L8R9ZuVjoQL6A==, } engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } peerDependencies: typescript: ">=4.8.4 <5.9.0" - "@typescript-eslint/utils@8.28.0": + "@typescript-eslint/utils@8.27.0": resolution: { - integrity: sha512-OELa9hbTYciYITqgurT1u/SzpQVtDLmQMFzy/N8pQE+tefOyCWT79jHsav294aTqV1q1u+VzqDGbuujvRYaeSQ==, + integrity: sha512-njkodcwH1yvmo31YWgRHNb/x1Xhhq4/m81PhtvmRngD8iHPehxffz1SNCO+kwaePhATC+kOa/ggmvPoPza5i0Q==, } engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } peerDependencies: eslint: ^8.57.0 || ^9.0.0 typescript: ">=4.8.4 <5.9.0" - "@typescript-eslint/visitor-keys@8.28.0": + "@typescript-eslint/visitor-keys@8.27.0": resolution: { - integrity: sha512-hbn8SZ8w4u2pRwgQ1GlUrPKE+t2XvcCW5tTRF7j6SMYIuYG37XuzIW44JCZPa36evi0Oy2SnM664BlIaAuQcvg==, + integrity: sha512-WsXQwMkILJvffP6z4U3FYJPlbf/j07HIxmDjZpbNvBJkMfvwXj5ACRkkHwBDvLBbDbtX5TdU64/rcvKJ/vuInQ==, } engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } - "@unrs/resolver-binding-darwin-arm64@1.3.2": + "@unrs/rspack-resolver-binding-darwin-arm64@1.2.2": resolution: { - integrity: sha512-ddnlXgRi0Fog5+7U5Q1qY62wl95Q1lB4tXQX1UIA9YHmRCHN2twaQW0/4tDVGCvTVEU3xEayU7VemEr7GcBYUw==, + integrity: sha512-i7z0B+C0P8Q63O/5PXJAzeFtA1ttY3OR2VSJgGv18S+PFNwD98xHgAgPOT1H5HIV6jlQP8Avzbp09qxJUdpPNw==, } cpu: [arm64] os: [darwin] - "@unrs/resolver-binding-darwin-x64@1.3.2": + "@unrs/rspack-resolver-binding-darwin-x64@1.2.2": resolution: { - integrity: sha512-tnl9xoEeg503jis+LW5cuq4hyLGQyqaoBL8VdPSqcewo/FL1C8POHbzl+AL25TidWYJD+R6bGUTE381kA1sT9w==, + integrity: sha512-YEdFzPjIbDUCfmehC6eS+AdJYtFWY35YYgWUnqqTM2oe/N58GhNy5yRllxYhxwJ9GcfHoNc6Ubze1yjkNv+9Qg==, } cpu: [x64] os: [darwin] - "@unrs/resolver-binding-freebsd-x64@1.3.2": + "@unrs/rspack-resolver-binding-freebsd-x64@1.2.2": resolution: { - integrity: sha512-zyPn9LFCCjhKPeCtECZaiMUgkYN/VpLb4a9Xv7QriJmTaQxsuDtXqOHifrzUXIhorJTyS+5MOKDuNL0X9I4EHA==, + integrity: sha512-TU4ntNXDgPN2giQyyzSnGWf/dVCem5lvwxg0XYvsvz35h5H19WrhTmHgbrULMuypCB3aHe1enYUC9rPLDw45mA==, } cpu: [x64] os: [freebsd] - "@unrs/resolver-binding-linux-arm-gnueabihf@1.3.2": + "@unrs/rspack-resolver-binding-linux-arm-gnueabihf@1.2.2": resolution: { - integrity: sha512-UWx56Wh59Ro69fe+Wfvld4E1n9KG0e3zeouWLn8eSasyi/yVH/7ZW3CLTVFQ81oMKSpXwr5u6RpzttDXZKiO4g==, + integrity: sha512-ik3w4/rU6RujBvNWiDnKdXi1smBhqxEDhccNi/j2rHaMjm0Fk49KkJ6XKsoUnD2kZ5xaMJf9JjailW/okfUPIw==, } cpu: [arm] os: [linux] - "@unrs/resolver-binding-linux-arm-musleabihf@1.3.2": + "@unrs/rspack-resolver-binding-linux-arm64-gnu@1.2.2": resolution: { - integrity: sha512-VYGQXsOEJtfaoY2fOm8Z9ii5idFaHFYlrq3yMFZPaFKo8ufOXYm8hnfru7qetbM9MX116iWaPC0ZX5sK+1Dr+g==, - } - cpu: [arm] - os: [linux] - - "@unrs/resolver-binding-linux-arm64-gnu@1.3.2": - resolution: - { - integrity: sha512-3zP420zxJfYPD1rGp2/OTIBxF8E3+/6VqCG+DEO6kkDgBiloa7Y8pw1o7N9BfgAC+VC8FPZsFXhV2lpx+lLRMQ==, + integrity: sha512-fp4Azi8kHz6TX8SFmKfyScZrMLfp++uRm2srpqRjsRZIIBzH74NtSkdEUHImR4G7f7XJ+sVZjCc6KDDK04YEpQ==, } cpu: [arm64] os: [linux] - "@unrs/resolver-binding-linux-arm64-musl@1.3.2": + "@unrs/rspack-resolver-binding-linux-arm64-musl@1.2.2": resolution: { - integrity: sha512-ZWjSleUgr88H4Kei7yT4PlPqySTuWN1OYDDcdbmMCtLWFly3ed+rkrcCb3gvqXdDbYrGOtzv3g2qPEN+WWNv5Q==, + integrity: sha512-gMiG3DCFioJxdGBzhlL86KcFgt9HGz0iDhw0YVYPsShItpN5pqIkNrI+L/Q/0gfDiGrfcE0X3VANSYIPmqEAlQ==, } cpu: [arm64] os: [linux] - "@unrs/resolver-binding-linux-ppc64-gnu@1.3.2": - resolution: - { - integrity: sha512-p+5OvYJ2UOlpjes3WfBlxyvQok2u26hLyPxLFHkYlfzhZW0juhvBf/tvewz1LDFe30M7zL9cF4OOO5dcvtk+cw==, - } - cpu: [ppc64] - os: [linux] - - "@unrs/resolver-binding-linux-s390x-gnu@1.3.2": + "@unrs/rspack-resolver-binding-linux-x64-gnu@1.2.2": resolution: { - integrity: sha512-yweY7I6SqNn3kvj6vE4PQRo7j8Oz6+NiUhmgciBNAUOuI3Jq0bnW29hbHJdxZRSN1kYkQnSkbbA1tT8VnK816w==, - } - cpu: [s390x] - os: [linux] - - "@unrs/resolver-binding-linux-x64-gnu@1.3.2": - resolution: - { - integrity: sha512-fNIvtzJcGN9hzWTIayrTSk2+KHQrqKbbY+I88xMVMOFV9t4AXha4veJdKaIuuks+2JNr6GuuNdsL7+exywZ32w==, + integrity: sha512-n/4n2CxaUF9tcaJxEaZm+lqvaw2gflfWQ1R9I7WQgYkKEKbRKbpG/R3hopYdUmLSRI4xaW1Cy0Bz40eS2Yi4Sw==, } cpu: [x64] os: [linux] - "@unrs/resolver-binding-linux-x64-musl@1.3.2": + "@unrs/rspack-resolver-binding-linux-x64-musl@1.2.2": resolution: { - integrity: sha512-OaFEw8WAjiwBGxutQgkWhoAGB5BQqZJ8Gjt/mW+m6DWNjimcxU22uWCuEtfw1CIwLlKPOzsgH0429fWmZcTGkg==, + integrity: sha512-cHyhAr6rlYYbon1L2Ag449YCj3p6XMfcYTP0AQX+KkQo025d1y/VFtPWvjMhuEsE2lLvtHm7GdJozj6BOMtzVg==, } cpu: [x64] os: [linux] - "@unrs/resolver-binding-wasm32-wasi@1.3.2": + "@unrs/rspack-resolver-binding-wasm32-wasi@1.2.2": resolution: { - integrity: sha512-u+sumtO7M0AGQ9bNQrF4BHNpUyxo23FM/yXZfmVAicTQ+mXtG06O7pm5zQUw3Mr4jRs2I84uh4O0hd8bdouuvQ==, + integrity: sha512-eogDKuICghDLGc32FtP+WniG38IB1RcGOGz0G3z8406dUdjJvxfHGuGs/dSlM9YEp/v0lEqhJ4mBu6X2nL9pog==, } engines: { node: ">=14.0.0" } cpu: [wasm32] - "@unrs/resolver-binding-win32-arm64-msvc@1.3.2": + "@unrs/rspack-resolver-binding-win32-arm64-msvc@1.2.2": resolution: { - integrity: sha512-ZAJKy95vmDIHsRFuPNqPQRON8r2mSMf3p9DoX+OMOhvu2c8OXGg8MvhGRf3PNg45ozRrPdXDnngURKgaFfpGoQ==, + integrity: sha512-7sWRJumhpXSi2lccX8aQpfFXHsSVASdWndLv8AmD8nDRA/5PBi8IplQVZNx2mYRx6+Bp91Z00kuVqpXO9NfCTg==, } cpu: [arm64] os: [win32] - "@unrs/resolver-binding-win32-ia32-msvc@1.3.2": - resolution: - { - integrity: sha512-nQG4YFAS2BLoKVQFK/FrWJvFATI5DQUWQrcPcsWG9Ve5BLLHZuPOrJ2SpAJwLXQrRv6XHSFAYGI8wQpBg/CiFA==, - } - cpu: [ia32] - os: [win32] - - "@unrs/resolver-binding-win32-x64-msvc@1.3.2": + "@unrs/rspack-resolver-binding-win32-x64-msvc@1.2.2": resolution: { - integrity: sha512-XBWpUP0mHya6yGBwNefhyEa6V7HgYKCxEAY4qhTm/PcAQyBPNmjj97VZJOJkVdUsyuuii7xmq0pXWX/c2aToHQ==, + integrity: sha512-hewo/UMGP1a7O6FG/ThcPzSJdm/WwrYDNkdGgWl6M18H6K6MSitklomWpT9MUtT5KGj++QJb06va/14QBC4pvw==, } cpu: [x64] os: [win32] @@ -1246,10 +1212,10 @@ packages: } engines: { node: ">= 6" } - caniuse-lite@1.0.30001707: + caniuse-lite@1.0.30001706: resolution: { - integrity: sha512-3qtRjw/HQSMlDWf+X79N206fepf4SOOU6SQLMaq/0KkZLmSjPxAkBOQQ+FxbHKfHmYLZFfdWsO3KA90ceHPSnw==, + integrity: sha512-3ZczoTApMAZwPKYWmwVbQMFpXBDds3/0VciVoUwPUbldlYyVLmRVuRs/PcUZtHpbLRpzzDvrvnFuREsGt6lUug==, } chalk@4.1.2: @@ -1611,10 +1577,10 @@ packages: integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==, } - eslint-import-resolver-typescript@3.10.0: + eslint-import-resolver-typescript@3.9.1: resolution: { - integrity: sha512-aV3/dVsT0/H9BtpNwbaqvl+0xGMRGzncLyhm793NFGvbwGGvzyAykqWZ8oZlZuGwuHkwJjhWJkG1cM3ynvd2pQ==, + integrity: sha512-euxa5rTGqHeqVxmOHT25hpk58PxkQ4mNoX6Yun4ooGaCHAxOCojJYNvjmyeOQxj/LyW+3fulH0+xtk+p2kPPTw==, } engines: { node: ^14.18.0 || >=16.0.0 } peerDependencies: @@ -2175,10 +2141,10 @@ packages: } engines: { node: ">= 0.4" } - is-bun-module@2.0.0: + is-bun-module@1.3.0: resolution: { - integrity: sha512-gNCGbnnnnFAUGKeZ9PdbyeGYJqewpmc2aKHUEMO5nQPWU9lOmv7jcmQIv+qHD8fXW6W7qfuCwX4rY9LNRjXrkQ==, + integrity: sha512-DgXeu5UWI0IsMQundYb5UAOzm6G2eVnarJ0byP6Tm55iZNKceD59LNPA2L4VvsScTtHcw0yEkVwSf7PC+QoLSA==, } is-callable@1.2.7: @@ -2648,10 +2614,10 @@ packages: nodemailer: optional: true - next@15.2.4: + next@15.2.3: resolution: { - integrity: sha512-VwL+LAaPSxEkd3lU2xWbgEOtrM8oedmyhBqaVNmgKB+GvZlCy9rgaEc+y2on0wv+l0oSFqLtYD6dcC1eAedUaQ==, + integrity: sha512-x6eDkZxk2rPpu46E1ZVUWIBhYCLszmUY6fvHBFcbzJ9dD+qRX6vcHusaqqDlnY+VngKzKbAiG2iRCkPbmi8f7w==, } engines: { node: ^18.18.0 || ^19.8.0 || >= 20.0.0 } hasBin: true @@ -2719,10 +2685,10 @@ packages: } deprecated: This package is no longer supported. - oauth4webapi@3.3.2: + oauth4webapi@3.3.1: resolution: { - integrity: sha512-hCJgDQayOLpBxdDpzShK/SI3C1PVnkj4CcKLOGyQm23Lk5V+qYPH+LtQlu8YO29MswBry/FBVlwWBnWgQvaFdA==, + integrity: sha512-ZwX7UqYrP3Lr+Glhca3a1/nF2jqf7VVyJfhGuW5JtrfDUxt0u+IoBPzFjZ2dd7PJGkdM6CFPVVYzuDYKHv101A==, } object-assign@4.1.1: @@ -3107,13 +3073,13 @@ packages: integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==, } - react-dom@19.1.0: + react-dom@19.0.0: resolution: { - integrity: sha512-Xs1hdnE+DyKgeHJeJznQmYMIBG3TKIHJJT95Q58nHLSrElKlGQqDTR2HQ9fx5CN/Gk6Vh/kupBTDLU11/nDk/g==, + integrity: sha512-4GV5sHFG0e/0AD4X+ySy6UJd3jVl1iNsNHdpad0qhABJ11twS3TTBnseqsKurKcsNqCEFeGL3uLpVChpIO3QfQ==, } peerDependencies: - react: ^19.1.0 + react: ^19.0.0 react-icons@5.5.0: resolution: @@ -3186,10 +3152,10 @@ packages: peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 - react@19.1.0: + react@19.0.0: resolution: { - integrity: sha512-FS+XFBNvn3GTAWq26joslQgWNoFu08F4kl0J4CgdNKADkdSGXQyTCnKteIAJy96Br6YbpEU1LSzV5dYtjMkMDg==, + integrity: sha512-V8AVnmPIICiWpGfm6GLzCR/W5FXLchHop40W4nXBmdlEceh16rCN8O8LNWm5bh5XUX91fh7KpA+W0TgMKmgTpQ==, } engines: { node: ">=0.10.0" } @@ -3276,6 +3242,12 @@ packages: deprecated: Rimraf versions prior to v4 are no longer supported hasBin: true + rspack-resolver@1.2.2: + resolution: + { + integrity: sha512-Fwc19jMBA3g+fxDJH2B4WxwZjE0VaaOL7OX/A4Wn5Zv7bOD/vyPZhzXfaO73Xc2GAlfi96g5fGUa378WbIGfFw==, + } + run-parallel@1.2.0: resolution: { @@ -3309,10 +3281,10 @@ packages: } engines: { node: ">= 0.4" } - scheduler@0.26.0: + scheduler@0.25.0: resolution: { - integrity: sha512-NlHwttCI/l5gCPR3D1nNXtWABUmBwvZpEQiD4IXSbIDq8BzLIK/7Ir5gTFSGZDUu37K5cMNp0hFtzO38sC7gWA==, + integrity: sha512-xFVuu11jh+xcO7JOAGJNOXld8/TcEHK/4CituBUeUb5hqxJLj9YuemAEuvm9gQ/+pgXYfbQuqAkiYu+u7YEsNA==, } semver@6.3.1: @@ -3662,10 +3634,10 @@ packages: } engines: { node: ">= 0.8.0" } - type-fest@4.38.0: + type-fest@4.37.0: resolution: { - integrity: sha512-2dBz5D5ycHIoliLYLi0Q2V7KRaDlH0uWIvmk7TYlAg5slqwiPv1ezJdZm1QEM0xgk29oYWMCbIG7E6gHpvChlg==, + integrity: sha512-S/5/0kFftkq27FPNye0XM1e2NsnoD/3FS+pBmbjmmtLT6I+i344KoOf7pvXreaFsDamWeaJX55nczA1m5PsBDg==, } engines: { node: ">=16" } @@ -3718,12 +3690,6 @@ packages: integrity: sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==, } - unrs-resolver@1.3.2: - resolution: - { - integrity: sha512-ZKQBC351Ubw0PY8xWhneIfb6dygTQeUHtCcNGd0QB618zabD/WbFMYdRyJ7xeVT+6G82K5v/oyZO0QSHFtbIuw==, - } - uri-js@4.4.1: resolution: { @@ -3900,10 +3866,10 @@ packages: integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==, } - yaml@2.7.1: + yaml@2.7.0: resolution: { - integrity: sha512-10ULxpnOCQXxJvBgxsn9ptjq6uviG/htZKk9veJGhlqn3w/DxQ631zFF+nlQXLwmImeS5amR2dl2U8sg6U9jsQ==, + integrity: sha512-+hSoy/QHluxmC9kCIJyL/uyFmLmc+e5CFR5Wa+bpIhIj85LVb9ZH2nVnqrHoSvKogwODv0ClqZkmiSSaIH5LTA==, } engines: { node: ">= 14" } hasBin: true @@ -3928,21 +3894,21 @@ snapshots: "@types/cookie": 0.6.0 cookie: 0.7.1 jose: 5.10.0 - oauth4webapi: 3.3.2 + oauth4webapi: 3.3.1 preact: 10.11.3 preact-render-to-string: 5.2.3(preact@10.11.3) - "@babel/runtime@7.27.0": + "@babel/runtime@7.26.10": dependencies: regenerator-runtime: 0.14.1 - "@emnapi/core@1.4.0": + "@emnapi/core@1.3.1": dependencies: "@emnapi/wasi-threads": 1.0.1 tslib: 2.8.1 optional: true - "@emnapi/runtime@1.4.0": + "@emnapi/runtime@1.3.1": dependencies: tslib: 2.8.1 optional: true @@ -4005,18 +3971,18 @@ snapshots: "@floating-ui/core": 1.6.9 "@floating-ui/utils": 0.2.9 - "@floating-ui/react-dom@2.1.2(react-dom@19.1.0(react@19.1.0))(react@19.1.0)": + "@floating-ui/react-dom@2.1.2(react-dom@19.0.0(react@19.0.0))(react@19.0.0)": dependencies: "@floating-ui/dom": 1.6.13 - react: 19.1.0 - react-dom: 19.1.0(react@19.1.0) + react: 19.0.0 + react-dom: 19.0.0(react@19.0.0) - "@floating-ui/react@0.26.28(react-dom@19.1.0(react@19.1.0))(react@19.1.0)": + "@floating-ui/react@0.26.28(react-dom@19.0.0(react@19.0.0))(react@19.0.0)": dependencies: - "@floating-ui/react-dom": 2.1.2(react-dom@19.1.0(react@19.1.0))(react@19.1.0) + "@floating-ui/react-dom": 2.1.2(react-dom@19.0.0(react@19.0.0))(react@19.0.0) "@floating-ui/utils": 0.2.9 - react: 19.1.0 - react-dom: 19.1.0(react@19.1.0) + react: 19.0.0 + react-dom: 19.0.0(react@19.0.0) tabbable: 6.2.0 "@floating-ui/utils@0.2.9": {} @@ -4100,7 +4066,7 @@ snapshots: "@img/sharp-wasm32@0.33.5": dependencies: - "@emnapi/runtime": 1.4.0 + "@emnapi/runtime": 1.3.1 optional: true "@img/sharp-win32-ia32@0.33.5": @@ -4109,29 +4075,29 @@ snapshots: "@img/sharp-win32-x64@0.33.5": optional: true - "@mantine/core@7.17.3(@mantine/hooks@7.17.3(react@19.1.0))(@types/react@19.0.12)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)": + "@mantine/core@7.17.2(@mantine/hooks@7.17.2(react@19.0.0))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)": dependencies: - "@floating-ui/react": 0.26.28(react-dom@19.1.0(react@19.1.0))(react@19.1.0) - "@mantine/hooks": 7.17.3(react@19.1.0) + "@floating-ui/react": 0.26.28(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + "@mantine/hooks": 7.17.2(react@19.0.0) clsx: 2.1.1 - react: 19.1.0 - react-dom: 19.1.0(react@19.1.0) - react-number-format: 5.4.3(react-dom@19.1.0(react@19.1.0))(react@19.1.0) - react-remove-scroll: 2.6.3(@types/react@19.0.12)(react@19.1.0) - react-textarea-autosize: 8.5.6(@types/react@19.0.12)(react@19.1.0) - type-fest: 4.38.0 + react: 19.0.0 + react-dom: 19.0.0(react@19.0.0) + react-number-format: 5.4.3(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + react-remove-scroll: 2.6.3(@types/react@19.0.12)(react@19.0.0) + react-textarea-autosize: 8.5.6(@types/react@19.0.12)(react@19.0.0) + type-fest: 4.37.0 transitivePeerDependencies: - "@types/react" - "@mantine/form@7.17.3(react@19.1.0)": + "@mantine/form@7.17.2(react@19.0.0)": dependencies: fast-deep-equal: 3.1.3 klona: 2.0.6 - react: 19.1.0 + react: 19.0.0 - "@mantine/hooks@7.17.3(react@19.1.0)": + "@mantine/hooks@7.17.2(react@19.0.0)": dependencies: - react: 19.1.0 + react: 19.0.0 "@mapbox/node-pre-gyp@1.0.11": dependencies: @@ -4150,8 +4116,8 @@ snapshots: "@napi-rs/wasm-runtime@0.2.7": dependencies: - "@emnapi/core": 1.4.0 - "@emnapi/runtime": 1.4.0 + "@emnapi/core": 1.3.1 + "@emnapi/runtime": 1.3.1 "@tybys/wasm-util": 0.9.0 optional: true @@ -4159,34 +4125,34 @@ snapshots: dependencies: "@types/pg": 8.11.6 - "@next/env@15.2.4": {} + "@next/env@15.2.3": {} "@next/eslint-plugin-next@15.1.4": dependencies: fast-glob: 3.3.1 - "@next/swc-darwin-arm64@15.2.4": + "@next/swc-darwin-arm64@15.2.3": optional: true - "@next/swc-darwin-x64@15.2.4": + "@next/swc-darwin-x64@15.2.3": optional: true - "@next/swc-linux-arm64-gnu@15.2.4": + "@next/swc-linux-arm64-gnu@15.2.3": optional: true - "@next/swc-linux-arm64-musl@15.2.4": + "@next/swc-linux-arm64-musl@15.2.3": optional: true - "@next/swc-linux-x64-gnu@15.2.4": + "@next/swc-linux-x64-gnu@15.2.3": optional: true - "@next/swc-linux-x64-musl@15.2.4": + "@next/swc-linux-x64-musl@15.2.3": optional: true - "@next/swc-win32-arm64-msvc@15.2.4": + "@next/swc-win32-arm64-msvc@15.2.3": optional: true - "@next/swc-win32-x64-msvc@15.2.4": + "@next/swc-win32-x64-msvc@15.2.3": optional: true "@nodelib/fs.scandir@2.1.5": @@ -4219,10 +4185,10 @@ snapshots: dependencies: tslib: 2.8.1 - "@tabler/icons-react@3.31.0(react@19.1.0)": + "@tabler/icons-react@3.31.0(react@19.0.0)": dependencies: "@tabler/icons": 3.31.0 - react: 19.1.0 + react: 19.0.0 "@tabler/icons@3.31.0": {} @@ -4233,23 +4199,23 @@ snapshots: "@types/bcrypt@5.0.2": dependencies: - "@types/node": 22.13.14 + "@types/node": 22.13.11 "@types/cookie@0.6.0": {} - "@types/estree@1.0.7": {} + "@types/estree@1.0.6": {} "@types/json-schema@7.0.15": {} "@types/json5@0.0.29": {} - "@types/node@22.13.14": + "@types/node@22.13.11": dependencies: undici-types: 6.20.0 "@types/pg@8.11.6": dependencies: - "@types/node": 22.13.14 + "@types/node": 22.13.11 pg-protocol: 1.8.0 pg-types: 4.0.2 @@ -4261,14 +4227,14 @@ snapshots: dependencies: csstype: 3.1.3 - "@typescript-eslint/eslint-plugin@8.28.0(@typescript-eslint/parser@8.28.0(eslint@9.23.0)(typescript@5.8.2))(eslint@9.23.0)(typescript@5.8.2)": + "@typescript-eslint/eslint-plugin@8.27.0(@typescript-eslint/parser@8.27.0(eslint@9.23.0)(typescript@5.8.2))(eslint@9.23.0)(typescript@5.8.2)": dependencies: "@eslint-community/regexpp": 4.12.1 - "@typescript-eslint/parser": 8.28.0(eslint@9.23.0)(typescript@5.8.2) - "@typescript-eslint/scope-manager": 8.28.0 - "@typescript-eslint/type-utils": 8.28.0(eslint@9.23.0)(typescript@5.8.2) - "@typescript-eslint/utils": 8.28.0(eslint@9.23.0)(typescript@5.8.2) - "@typescript-eslint/visitor-keys": 8.28.0 + "@typescript-eslint/parser": 8.27.0(eslint@9.23.0)(typescript@5.8.2) + "@typescript-eslint/scope-manager": 8.27.0 + "@typescript-eslint/type-utils": 8.27.0(eslint@9.23.0)(typescript@5.8.2) + "@typescript-eslint/utils": 8.27.0(eslint@9.23.0)(typescript@5.8.2) + "@typescript-eslint/visitor-keys": 8.27.0 eslint: 9.23.0 graphemer: 1.4.0 ignore: 5.3.2 @@ -4278,27 +4244,27 @@ snapshots: transitivePeerDependencies: - supports-color - "@typescript-eslint/parser@8.28.0(eslint@9.23.0)(typescript@5.8.2)": + "@typescript-eslint/parser@8.27.0(eslint@9.23.0)(typescript@5.8.2)": dependencies: - "@typescript-eslint/scope-manager": 8.28.0 - "@typescript-eslint/types": 8.28.0 - "@typescript-eslint/typescript-estree": 8.28.0(typescript@5.8.2) - "@typescript-eslint/visitor-keys": 8.28.0 + "@typescript-eslint/scope-manager": 8.27.0 + "@typescript-eslint/types": 8.27.0 + "@typescript-eslint/typescript-estree": 8.27.0(typescript@5.8.2) + "@typescript-eslint/visitor-keys": 8.27.0 debug: 4.4.0 eslint: 9.23.0 typescript: 5.8.2 transitivePeerDependencies: - supports-color - "@typescript-eslint/scope-manager@8.28.0": + "@typescript-eslint/scope-manager@8.27.0": dependencies: - "@typescript-eslint/types": 8.28.0 - "@typescript-eslint/visitor-keys": 8.28.0 + "@typescript-eslint/types": 8.27.0 + "@typescript-eslint/visitor-keys": 8.27.0 - "@typescript-eslint/type-utils@8.28.0(eslint@9.23.0)(typescript@5.8.2)": + "@typescript-eslint/type-utils@8.27.0(eslint@9.23.0)(typescript@5.8.2)": dependencies: - "@typescript-eslint/typescript-estree": 8.28.0(typescript@5.8.2) - "@typescript-eslint/utils": 8.28.0(eslint@9.23.0)(typescript@5.8.2) + "@typescript-eslint/typescript-estree": 8.27.0(typescript@5.8.2) + "@typescript-eslint/utils": 8.27.0(eslint@9.23.0)(typescript@5.8.2) debug: 4.4.0 eslint: 9.23.0 ts-api-utils: 2.1.0(typescript@5.8.2) @@ -4306,12 +4272,12 @@ snapshots: transitivePeerDependencies: - supports-color - "@typescript-eslint/types@8.28.0": {} + "@typescript-eslint/types@8.27.0": {} - "@typescript-eslint/typescript-estree@8.28.0(typescript@5.8.2)": + "@typescript-eslint/typescript-estree@8.27.0(typescript@5.8.2)": dependencies: - "@typescript-eslint/types": 8.28.0 - "@typescript-eslint/visitor-keys": 8.28.0 + "@typescript-eslint/types": 8.27.0 + "@typescript-eslint/visitor-keys": 8.27.0 debug: 4.4.0 fast-glob: 3.3.3 is-glob: 4.0.3 @@ -4322,73 +4288,61 @@ snapshots: transitivePeerDependencies: - supports-color - "@typescript-eslint/utils@8.28.0(eslint@9.23.0)(typescript@5.8.2)": + "@typescript-eslint/utils@8.27.0(eslint@9.23.0)(typescript@5.8.2)": dependencies: "@eslint-community/eslint-utils": 4.5.1(eslint@9.23.0) - "@typescript-eslint/scope-manager": 8.28.0 - "@typescript-eslint/types": 8.28.0 - "@typescript-eslint/typescript-estree": 8.28.0(typescript@5.8.2) + "@typescript-eslint/scope-manager": 8.27.0 + "@typescript-eslint/types": 8.27.0 + "@typescript-eslint/typescript-estree": 8.27.0(typescript@5.8.2) eslint: 9.23.0 typescript: 5.8.2 transitivePeerDependencies: - supports-color - "@typescript-eslint/visitor-keys@8.28.0": + "@typescript-eslint/visitor-keys@8.27.0": dependencies: - "@typescript-eslint/types": 8.28.0 + "@typescript-eslint/types": 8.27.0 eslint-visitor-keys: 4.2.0 - "@unrs/resolver-binding-darwin-arm64@1.3.2": - optional: true - - "@unrs/resolver-binding-darwin-x64@1.3.2": - optional: true - - "@unrs/resolver-binding-freebsd-x64@1.3.2": + "@unrs/rspack-resolver-binding-darwin-arm64@1.2.2": optional: true - "@unrs/resolver-binding-linux-arm-gnueabihf@1.3.2": + "@unrs/rspack-resolver-binding-darwin-x64@1.2.2": optional: true - "@unrs/resolver-binding-linux-arm-musleabihf@1.3.2": + "@unrs/rspack-resolver-binding-freebsd-x64@1.2.2": optional: true - "@unrs/resolver-binding-linux-arm64-gnu@1.3.2": + "@unrs/rspack-resolver-binding-linux-arm-gnueabihf@1.2.2": optional: true - "@unrs/resolver-binding-linux-arm64-musl@1.3.2": + "@unrs/rspack-resolver-binding-linux-arm64-gnu@1.2.2": optional: true - "@unrs/resolver-binding-linux-ppc64-gnu@1.3.2": + "@unrs/rspack-resolver-binding-linux-arm64-musl@1.2.2": optional: true - "@unrs/resolver-binding-linux-s390x-gnu@1.3.2": + "@unrs/rspack-resolver-binding-linux-x64-gnu@1.2.2": optional: true - "@unrs/resolver-binding-linux-x64-gnu@1.3.2": + "@unrs/rspack-resolver-binding-linux-x64-musl@1.2.2": optional: true - "@unrs/resolver-binding-linux-x64-musl@1.3.2": - optional: true - - "@unrs/resolver-binding-wasm32-wasi@1.3.2": + "@unrs/rspack-resolver-binding-wasm32-wasi@1.2.2": dependencies: "@napi-rs/wasm-runtime": 0.2.7 optional: true - "@unrs/resolver-binding-win32-arm64-msvc@1.3.2": + "@unrs/rspack-resolver-binding-win32-arm64-msvc@1.2.2": optional: true - "@unrs/resolver-binding-win32-ia32-msvc@1.3.2": + "@unrs/rspack-resolver-binding-win32-x64-msvc@1.2.2": optional: true - "@unrs/resolver-binding-win32-x64-msvc@1.3.2": - optional: true - - "@vercel/analytics@1.5.0(next@15.2.4(@playwright/test@1.51.1)(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(react@19.1.0)": + "@vercel/analytics@1.5.0(next@15.2.3(@playwright/test@1.51.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react@19.0.0)": optionalDependencies: - next: 15.2.4(@playwright/test@1.51.1)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) - react: 19.1.0 + next: 15.2.3(@playwright/test@1.51.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + react: 19.0.0 "@vercel/postgres@0.10.0": dependencies: @@ -4398,10 +4352,10 @@ snapshots: transitivePeerDependencies: - utf-8-validate - "@vercel/speed-insights@1.2.0(next@15.2.4(@playwright/test@1.51.1)(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(react@19.1.0)": + "@vercel/speed-insights@1.2.0(next@15.2.3(@playwright/test@1.51.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react@19.0.0)": optionalDependencies: - next: 15.2.4(@playwright/test@1.51.1)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) - react: 19.1.0 + next: 15.2.3(@playwright/test@1.51.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + react: 19.0.0 abbrev@1.1.1: {} @@ -4578,7 +4532,7 @@ snapshots: camelcase-css@2.0.1: {} - caniuse-lite@1.0.30001707: {} + caniuse-lite@1.0.30001706: {} chalk@4.1.2: dependencies: @@ -4812,12 +4766,12 @@ snapshots: dependencies: "@next/eslint-plugin-next": 15.1.4 "@rushstack/eslint-patch": 1.11.0 - "@typescript-eslint/eslint-plugin": 8.28.0(@typescript-eslint/parser@8.28.0(eslint@9.23.0)(typescript@5.8.2))(eslint@9.23.0)(typescript@5.8.2) - "@typescript-eslint/parser": 8.28.0(eslint@9.23.0)(typescript@5.8.2) + "@typescript-eslint/eslint-plugin": 8.27.0(@typescript-eslint/parser@8.27.0(eslint@9.23.0)(typescript@5.8.2))(eslint@9.23.0)(typescript@5.8.2) + "@typescript-eslint/parser": 8.27.0(eslint@9.23.0)(typescript@5.8.2) eslint: 9.23.0 eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.10.0(eslint-plugin-import@2.31.0)(eslint@9.23.0) - eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.28.0(eslint@9.23.0)(typescript@5.8.2))(eslint-import-resolver-typescript@3.10.0)(eslint@9.23.0) + eslint-import-resolver-typescript: 3.9.1(eslint-plugin-import@2.31.0)(eslint@9.23.0) + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.27.0(eslint@9.23.0)(typescript@5.8.2))(eslint-import-resolver-typescript@3.9.1)(eslint@9.23.0) eslint-plugin-jsx-a11y: 6.10.2(eslint@9.23.0) eslint-plugin-react: 7.37.4(eslint@9.23.0) eslint-plugin-react-hooks: 5.2.0(eslint@9.23.0) @@ -4840,33 +4794,33 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0)(eslint@9.23.0): + eslint-import-resolver-typescript@3.9.1(eslint-plugin-import@2.31.0)(eslint@9.23.0): dependencies: "@nolyfill/is-core-module": 1.0.39 debug: 4.4.0 eslint: 9.23.0 get-tsconfig: 4.10.0 - is-bun-module: 2.0.0 + is-bun-module: 1.3.0 + rspack-resolver: 1.2.2 stable-hash: 0.0.5 tinyglobby: 0.2.12 - unrs-resolver: 1.3.2 optionalDependencies: - eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.28.0(eslint@9.23.0)(typescript@5.8.2))(eslint-import-resolver-typescript@3.10.0)(eslint@9.23.0) + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.27.0(eslint@9.23.0)(typescript@5.8.2))(eslint-import-resolver-typescript@3.9.1)(eslint@9.23.0) transitivePeerDependencies: - supports-color - eslint-module-utils@2.12.0(@typescript-eslint/parser@8.28.0(eslint@9.23.0)(typescript@5.8.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.0)(eslint@9.23.0): + eslint-module-utils@2.12.0(@typescript-eslint/parser@8.27.0(eslint@9.23.0)(typescript@5.8.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.9.1)(eslint@9.23.0): dependencies: debug: 3.2.7 optionalDependencies: - "@typescript-eslint/parser": 8.28.0(eslint@9.23.0)(typescript@5.8.2) + "@typescript-eslint/parser": 8.27.0(eslint@9.23.0)(typescript@5.8.2) eslint: 9.23.0 eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.10.0(eslint-plugin-import@2.31.0)(eslint@9.23.0) + eslint-import-resolver-typescript: 3.9.1(eslint-plugin-import@2.31.0)(eslint@9.23.0) transitivePeerDependencies: - supports-color - eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.28.0(eslint@9.23.0)(typescript@5.8.2))(eslint-import-resolver-typescript@3.10.0)(eslint@9.23.0): + eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.27.0(eslint@9.23.0)(typescript@5.8.2))(eslint-import-resolver-typescript@3.9.1)(eslint@9.23.0): dependencies: "@rtsao/scc": 1.1.0 array-includes: 3.1.8 @@ -4877,7 +4831,7 @@ snapshots: doctrine: 2.1.0 eslint: 9.23.0 eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.28.0(eslint@9.23.0)(typescript@5.8.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.0)(eslint@9.23.0) + eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.27.0(eslint@9.23.0)(typescript@5.8.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.9.1)(eslint@9.23.0) hasown: 2.0.2 is-core-module: 2.16.1 is-glob: 4.0.3 @@ -4889,7 +4843,7 @@ snapshots: string.prototype.trimend: 1.0.9 tsconfig-paths: 3.15.0 optionalDependencies: - "@typescript-eslint/parser": 8.28.0(eslint@9.23.0)(typescript@5.8.2) + "@typescript-eslint/parser": 8.27.0(eslint@9.23.0)(typescript@5.8.2) transitivePeerDependencies: - eslint-import-resolver-typescript - eslint-import-resolver-webpack @@ -4962,7 +4916,7 @@ snapshots: "@humanfs/node": 0.16.6 "@humanwhocodes/module-importer": 1.0.1 "@humanwhocodes/retry": 0.4.2 - "@types/estree": 1.0.7 + "@types/estree": 1.0.6 "@types/json-schema": 7.0.15 ajv: 6.12.6 chalk: 4.1.2 @@ -5075,14 +5029,14 @@ snapshots: dependencies: is-callable: 1.2.7 - framer-motion@12.6.2(react-dom@19.1.0(react@19.1.0))(react@19.1.0): + framer-motion@12.6.2(react-dom@19.0.0(react@19.0.0))(react@19.0.0): dependencies: motion-dom: 12.6.1 motion-utils: 12.5.0 tslib: 2.8.1 optionalDependencies: - react: 19.1.0 - react-dom: 19.1.0(react@19.1.0) + react: 19.0.0 + react-dom: 19.0.0(react@19.0.0) fs-minipass@2.1.0: dependencies: @@ -5262,7 +5216,7 @@ snapshots: call-bound: 1.0.4 has-tostringtag: 1.0.2 - is-bun-module@2.0.0: + is-bun-module@1.3.0: dependencies: semver: 7.7.1 @@ -5426,7 +5380,7 @@ snapshots: micromatch: 4.0.8 pidtree: 0.6.0 string-argv: 0.3.2 - yaml: 2.7.1 + yaml: 2.7.0 transitivePeerDependencies: - supports-color @@ -5511,32 +5465,32 @@ snapshots: natural-compare@1.4.0: {} - next-auth@5.0.0-beta.25(next@15.2.4(@playwright/test@1.51.1)(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(react@19.1.0): + next-auth@5.0.0-beta.25(next@15.2.3(@playwright/test@1.51.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(react@19.0.0): dependencies: "@auth/core": 0.37.2 - next: 15.2.4(@playwright/test@1.51.1)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) - react: 19.1.0 + next: 15.2.3(@playwright/test@1.51.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + react: 19.0.0 - next@15.2.4(@playwright/test@1.51.1)(react-dom@19.1.0(react@19.1.0))(react@19.1.0): + next@15.2.3(@playwright/test@1.51.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0): dependencies: - "@next/env": 15.2.4 + "@next/env": 15.2.3 "@swc/counter": 0.1.3 "@swc/helpers": 0.5.15 busboy: 1.6.0 - caniuse-lite: 1.0.30001707 + caniuse-lite: 1.0.30001706 postcss: 8.4.31 - react: 19.1.0 - react-dom: 19.1.0(react@19.1.0) - styled-jsx: 5.1.6(react@19.1.0) + react: 19.0.0 + react-dom: 19.0.0(react@19.0.0) + styled-jsx: 5.1.6(react@19.0.0) optionalDependencies: - "@next/swc-darwin-arm64": 15.2.4 - "@next/swc-darwin-x64": 15.2.4 - "@next/swc-linux-arm64-gnu": 15.2.4 - "@next/swc-linux-arm64-musl": 15.2.4 - "@next/swc-linux-x64-gnu": 15.2.4 - "@next/swc-linux-x64-musl": 15.2.4 - "@next/swc-win32-arm64-msvc": 15.2.4 - "@next/swc-win32-x64-msvc": 15.2.4 + "@next/swc-darwin-arm64": 15.2.3 + "@next/swc-darwin-x64": 15.2.3 + "@next/swc-linux-arm64-gnu": 15.2.3 + "@next/swc-linux-arm64-musl": 15.2.3 + "@next/swc-linux-x64-gnu": 15.2.3 + "@next/swc-linux-x64-musl": 15.2.3 + "@next/swc-win32-arm64-msvc": 15.2.3 + "@next/swc-win32-x64-msvc": 15.2.3 "@playwright/test": 1.51.1 sharp: 0.33.5 transitivePeerDependencies: @@ -5566,7 +5520,7 @@ snapshots: gauge: 3.0.2 set-blocking: 2.0.0 - oauth4webapi@3.3.2: {} + oauth4webapi@3.3.1: {} object-assign@4.1.1: {} @@ -5775,59 +5729,59 @@ snapshots: queue-microtask@1.2.3: {} - react-dom@19.1.0(react@19.1.0): + react-dom@19.0.0(react@19.0.0): dependencies: - react: 19.1.0 - scheduler: 0.26.0 + react: 19.0.0 + scheduler: 0.25.0 - react-icons@5.5.0(react@19.1.0): + react-icons@5.5.0(react@19.0.0): dependencies: - react: 19.1.0 + react: 19.0.0 react-is@16.13.1: {} - react-number-format@5.4.3(react-dom@19.1.0(react@19.1.0))(react@19.1.0): + react-number-format@5.4.3(react-dom@19.0.0(react@19.0.0))(react@19.0.0): dependencies: - react: 19.1.0 - react-dom: 19.1.0(react@19.1.0) + react: 19.0.0 + react-dom: 19.0.0(react@19.0.0) - react-remove-scroll-bar@2.3.8(@types/react@19.0.12)(react@19.1.0): + react-remove-scroll-bar@2.3.8(@types/react@19.0.12)(react@19.0.0): dependencies: - react: 19.1.0 - react-style-singleton: 2.2.3(@types/react@19.0.12)(react@19.1.0) + react: 19.0.0 + react-style-singleton: 2.2.3(@types/react@19.0.12)(react@19.0.0) tslib: 2.8.1 optionalDependencies: "@types/react": 19.0.12 - react-remove-scroll@2.6.3(@types/react@19.0.12)(react@19.1.0): + react-remove-scroll@2.6.3(@types/react@19.0.12)(react@19.0.0): dependencies: - react: 19.1.0 - react-remove-scroll-bar: 2.3.8(@types/react@19.0.12)(react@19.1.0) - react-style-singleton: 2.2.3(@types/react@19.0.12)(react@19.1.0) + react: 19.0.0 + react-remove-scroll-bar: 2.3.8(@types/react@19.0.12)(react@19.0.0) + react-style-singleton: 2.2.3(@types/react@19.0.12)(react@19.0.0) tslib: 2.8.1 - use-callback-ref: 1.3.3(@types/react@19.0.12)(react@19.1.0) - use-sidecar: 1.1.3(@types/react@19.0.12)(react@19.1.0) + use-callback-ref: 1.3.3(@types/react@19.0.12)(react@19.0.0) + use-sidecar: 1.1.3(@types/react@19.0.12)(react@19.0.0) optionalDependencies: "@types/react": 19.0.12 - react-style-singleton@2.2.3(@types/react@19.0.12)(react@19.1.0): + react-style-singleton@2.2.3(@types/react@19.0.12)(react@19.0.0): dependencies: get-nonce: 1.0.1 - react: 19.1.0 + react: 19.0.0 tslib: 2.8.1 optionalDependencies: "@types/react": 19.0.12 - react-textarea-autosize@8.5.6(@types/react@19.0.12)(react@19.1.0): + react-textarea-autosize@8.5.6(@types/react@19.0.12)(react@19.0.0): dependencies: - "@babel/runtime": 7.27.0 - react: 19.1.0 - use-composed-ref: 1.4.0(@types/react@19.0.12)(react@19.1.0) - use-latest: 1.3.0(@types/react@19.0.12)(react@19.1.0) + "@babel/runtime": 7.26.10 + react: 19.0.0 + use-composed-ref: 1.4.0(@types/react@19.0.12)(react@19.0.0) + use-latest: 1.3.0(@types/react@19.0.12)(react@19.0.0) transitivePeerDependencies: - "@types/react" - react@19.1.0: {} + react@19.0.0: {} readable-stream@3.6.2: dependencies: @@ -5886,6 +5840,20 @@ snapshots: dependencies: glob: 7.2.3 + rspack-resolver@1.2.2: + optionalDependencies: + "@unrs/rspack-resolver-binding-darwin-arm64": 1.2.2 + "@unrs/rspack-resolver-binding-darwin-x64": 1.2.2 + "@unrs/rspack-resolver-binding-freebsd-x64": 1.2.2 + "@unrs/rspack-resolver-binding-linux-arm-gnueabihf": 1.2.2 + "@unrs/rspack-resolver-binding-linux-arm64-gnu": 1.2.2 + "@unrs/rspack-resolver-binding-linux-arm64-musl": 1.2.2 + "@unrs/rspack-resolver-binding-linux-x64-gnu": 1.2.2 + "@unrs/rspack-resolver-binding-linux-x64-musl": 1.2.2 + "@unrs/rspack-resolver-binding-wasm32-wasi": 1.2.2 + "@unrs/rspack-resolver-binding-win32-arm64-msvc": 1.2.2 + "@unrs/rspack-resolver-binding-win32-x64-msvc": 1.2.2 + run-parallel@1.2.0: dependencies: queue-microtask: 1.2.3 @@ -5911,7 +5879,7 @@ snapshots: es-errors: 1.3.0 is-regex: 1.2.1 - scheduler@0.26.0: {} + scheduler@0.25.0: {} semver@6.3.1: {} @@ -6107,10 +6075,10 @@ snapshots: strip-json-comments@3.1.1: {} - styled-jsx@5.1.6(react@19.1.0): + styled-jsx@5.1.6(react@19.0.0): dependencies: client-only: 0.0.1 - react: 19.1.0 + react: 19.0.0 sugarss@4.0.1(postcss@8.5.3): dependencies: @@ -6161,7 +6129,7 @@ snapshots: dependencies: prelude-ls: 1.2.1 - type-fest@4.38.0: {} + type-fest@4.37.0: {} typed-array-buffer@1.0.3: dependencies: @@ -6207,58 +6175,40 @@ snapshots: undici-types@6.20.0: {} - unrs-resolver@1.3.2: - optionalDependencies: - "@unrs/resolver-binding-darwin-arm64": 1.3.2 - "@unrs/resolver-binding-darwin-x64": 1.3.2 - "@unrs/resolver-binding-freebsd-x64": 1.3.2 - "@unrs/resolver-binding-linux-arm-gnueabihf": 1.3.2 - "@unrs/resolver-binding-linux-arm-musleabihf": 1.3.2 - "@unrs/resolver-binding-linux-arm64-gnu": 1.3.2 - "@unrs/resolver-binding-linux-arm64-musl": 1.3.2 - "@unrs/resolver-binding-linux-ppc64-gnu": 1.3.2 - "@unrs/resolver-binding-linux-s390x-gnu": 1.3.2 - "@unrs/resolver-binding-linux-x64-gnu": 1.3.2 - "@unrs/resolver-binding-linux-x64-musl": 1.3.2 - "@unrs/resolver-binding-wasm32-wasi": 1.3.2 - "@unrs/resolver-binding-win32-arm64-msvc": 1.3.2 - "@unrs/resolver-binding-win32-ia32-msvc": 1.3.2 - "@unrs/resolver-binding-win32-x64-msvc": 1.3.2 - uri-js@4.4.1: dependencies: punycode: 2.3.1 - use-callback-ref@1.3.3(@types/react@19.0.12)(react@19.1.0): + use-callback-ref@1.3.3(@types/react@19.0.12)(react@19.0.0): dependencies: - react: 19.1.0 + react: 19.0.0 tslib: 2.8.1 optionalDependencies: "@types/react": 19.0.12 - use-composed-ref@1.4.0(@types/react@19.0.12)(react@19.1.0): + use-composed-ref@1.4.0(@types/react@19.0.12)(react@19.0.0): dependencies: - react: 19.1.0 + react: 19.0.0 optionalDependencies: "@types/react": 19.0.12 - use-isomorphic-layout-effect@1.2.0(@types/react@19.0.12)(react@19.1.0): + use-isomorphic-layout-effect@1.2.0(@types/react@19.0.12)(react@19.0.0): dependencies: - react: 19.1.0 + react: 19.0.0 optionalDependencies: "@types/react": 19.0.12 - use-latest@1.3.0(@types/react@19.0.12)(react@19.1.0): + use-latest@1.3.0(@types/react@19.0.12)(react@19.0.0): dependencies: - react: 19.1.0 - use-isomorphic-layout-effect: 1.2.0(@types/react@19.0.12)(react@19.1.0) + react: 19.0.0 + use-isomorphic-layout-effect: 1.2.0(@types/react@19.0.12)(react@19.0.0) optionalDependencies: "@types/react": 19.0.12 - use-sidecar@1.1.3(@types/react@19.0.12)(react@19.1.0): + use-sidecar@1.1.3(@types/react@19.0.12)(react@19.0.0): dependencies: detect-node-es: 1.1.0 - react: 19.1.0 + react: 19.0.0 tslib: 2.8.1 optionalDependencies: "@types/react": 19.0.12 @@ -6339,7 +6289,7 @@ snapshots: yallist@4.0.0: {} - yaml@2.7.1: {} + yaml@2.7.0: {} yocto-queue@0.1.0: {} From ed6a2dda07860e5442e5a67df8f9735d03d6bb64 Mon Sep 17 00:00:00 2001 From: cjrace <52536248+cjrace@users.noreply.github.com> Date: Sat, 4 Apr 2026 17:30:48 +0100 Subject: [PATCH 08/16] Fix loose equality check for winners length Co-Authored-By: Claude Sonnet 4.6 --- src/components/cowrace.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/cowrace.tsx b/src/components/cowrace.tsx index f6f0075..62a51bc 100644 --- a/src/components/cowrace.tsx +++ b/src/components/cowrace.tsx @@ -178,7 +178,7 @@ const CowRace = () => { size="lg" style={{ width: "80%", maxWidth: "300px" }} > - {winners.length == 0 ? "Cancel Race" : "Start new race"} + {winners.length === 0 ? "Cancel Race" : "Start new race"} From c1b5d9aedfcd07b504e8ccd6437d82e5371dbb14 Mon Sep 17 00:00:00 2001 From: cjrace <52536248+cjrace@users.noreply.github.com> Date: Sat, 4 Apr 2026 17:31:15 +0100 Subject: [PATCH 09/16] Remove unused cowRefs Co-Authored-By: Claude Sonnet 4.6 --- src/components/cowrace.tsx | 5 ----- 1 file changed, 5 deletions(-) diff --git a/src/components/cowrace.tsx b/src/components/cowrace.tsx index 62a51bc..5eb66a6 100644 --- a/src/components/cowrace.tsx +++ b/src/components/cowrace.tsx @@ -11,7 +11,6 @@ const CowRace = () => { const [raceStarted, setRaceStarted] = useState(false); const [cowPositions, setCowPositions] = useState([]); const [winners, setWinners] = useState([]); - const cowRefs = useRef<(HTMLImageElement | null)[]>([]); const raceTrackRef = useRef(null); const raceIntervalRef = useRef(null); // Use useRef instead of state @@ -26,7 +25,6 @@ const CowRace = () => { setCowPositions(Array(numCows).fill(0)); setWinners([]); - cowRefs.current = Array(numCows).fill(null); let winnerDetected = false; @@ -137,9 +135,6 @@ const CowRace = () => { transition: "left 0.1s ease", zIndex: numCows - index, }} - ref={(el: HTMLImageElement | null) => { - cowRefs.current[index] = el; - }} animate={{ x: cowPositions[index] || 0, }} From cecc50e56e525d8663b254553f472c99b60aa702 Mon Sep 17 00:00:00 2001 From: cjrace <52536248+cjrace@users.noreply.github.com> Date: Sat, 4 Apr 2026 17:31:31 +0100 Subject: [PATCH 10/16] Fix winner sort order to rank furthest cow first Co-Authored-By: Claude Sonnet 4.6 --- src/components/cowrace.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/cowrace.tsx b/src/components/cowrace.tsx index 5eb66a6..91c64d2 100644 --- a/src/components/cowrace.tsx +++ b/src/components/cowrace.tsx @@ -40,7 +40,7 @@ const CowRace = () => { if (!winnerDetected && finishedCows.length > 0) { winnerDetected = true; - const sortedWinners = finishedCows.sort((a, b) => a.pos - b.pos); + const sortedWinners = finishedCows.sort((a, b) => b.pos - a.pos); setWinners(sortedWinners.map(({ index }) => index)); playConfetti(); clearInterval(intervalId); From f08c40a97e835f105a5d258c8944a460e1974842 Mon Sep 17 00:00:00 2001 From: cjrace <52536248+cjrace@users.noreply.github.com> Date: Sat, 4 Apr 2026 17:31:50 +0100 Subject: [PATCH 11/16] Fix double-positioning: remove style.left, use framer-motion animate.x only CSS left and framer-motion x were both applied, moving cows at 2x the intended distance. Now left is fixed at 0 and framer-motion owns all horizontal movement via translateX. Co-Authored-By: Claude Sonnet 4.6 --- src/components/cowrace.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/components/cowrace.tsx b/src/components/cowrace.tsx index 91c64d2..6413b0b 100644 --- a/src/components/cowrace.tsx +++ b/src/components/cowrace.tsx @@ -131,13 +131,13 @@ const CowRace = () => { style={{ position: "absolute", top: `${index * (400 / numCows) + 20}px`, // Spread cows out - left: `${cowPositions[index] || 0}px`, - transition: "left 0.1s ease", + left: 0, zIndex: numCows - index, }} animate={{ x: cowPositions[index] || 0, }} + transition={{ duration: 0.1, ease: "linear" }} /> ))}
Date: Sat, 4 Apr 2026 17:32:29 +0100 Subject: [PATCH 12/16] Fix finish line calculation to use track width instead of viewport position raceTrackRect.right gives the distance from the left viewport edge to the element's right edge, which varies with scroll and screen size. Using raceTrackRect.width * 0.95 aligns the finish trigger with the visual finish line marker (right: 5%), minus the cow image width so the cow's leading edge crosses the line. Co-Authored-By: Claude Sonnet 4.6 --- src/components/cowrace.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/cowrace.tsx b/src/components/cowrace.tsx index 6413b0b..dc21a64 100644 --- a/src/components/cowrace.tsx +++ b/src/components/cowrace.tsx @@ -21,7 +21,7 @@ const CowRace = () => { useEffect(() => { if (raceStarted && raceTrackRef.current) { const raceTrackRect = raceTrackRef.current.getBoundingClientRect(); - const finishLine = raceTrackRect.right / 2.38; // Adjust finish line position + const finishLine = raceTrackRect.width * 0.95 - 60; // 95% of track width minus cow image width setCowPositions(Array(numCows).fill(0)); setWinners([]); From f9bf7b0c0cbbcffd073caf90a1be7452b0ce16ee Mon Sep 17 00:00:00 2001 From: cjrace <52536248+cjrace@users.noreply.github.com> Date: Sat, 4 Apr 2026 17:33:22 +0100 Subject: [PATCH 13/16] Regenerate pnpm-lock.yaml from scratch Previous lockfile was corrupted by an aborted dependency update attempt, with wrong minimatch dependencies, a dotenv version mismatch, and eslint appearing as a direct dependency not present in package.json. Co-Authored-By: Claude Sonnet 4.6 --- pnpm-lock.yaml | 1529 +++++++++++++++++++++++++----------------------- 1 file changed, 810 insertions(+), 719 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index fbd9dbb..72398ec 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -12,43 +12,40 @@ importers: dependencies: "@mantine/core": specifier: ^8.3.14 - version: 8.3.14(@mantine/hooks@8.3.14(react@19.2.4))(@types/react@19.2.14)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + version: 8.3.18(@mantine/hooks@8.3.18(react@19.2.4))(@types/react@19.2.14)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) "@mantine/form": specifier: ^8.3.18 version: 8.3.18(react@19.2.4) "@mantine/hooks": specifier: ^8.3.14 - version: 8.3.14(react@19.2.4) + version: 8.3.18(react@19.2.4) "@tabler/icons-react": specifier: ^3.36.1 - version: 3.36.1(react@19.2.4) + version: 3.41.1(react@19.2.4) "@vercel/analytics": specifier: ^1.6.1 - version: 1.6.1(next@16.2.1(@babel/core@7.29.0)(@playwright/test@1.58.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4) + version: 1.6.1(next@16.2.2(@babel/core@7.29.0)(@playwright/test@1.59.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4) "@vercel/postgres": specifier: ^0.10.0 version: 0.10.0 "@vercel/speed-insights": specifier: ^1.3.1 - version: 1.3.1(next@16.2.1(@babel/core@7.29.0)(@playwright/test@1.58.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4) + version: 1.3.1(next@16.2.2(@babel/core@7.29.0)(@playwright/test@1.59.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4) bcrypt: specifier: ^6.0.0 version: 6.0.0 dotenv: - specifier: ^16.4.7 - version: 16.4.7 - eslint: - specifier: ^9.23.0 - version: 9.23.0 + specifier: ^17.4.0 + version: 17.4.0 framer-motion: specifier: ^12.6.2 - version: 12.6.2(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + version: 12.6.2(react-dom@19.2.4(react@19.2.4))(react@19.2.4) next: specifier: ^16.1.7 - version: 16.2.1(@babel/core@7.29.0)(@playwright/test@1.58.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + version: 16.2.2(@babel/core@7.29.0)(@playwright/test@1.59.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) next-auth: specifier: 5.0.0-beta.30 - version: 5.0.0-beta.30(next@16.2.1(@babel/core@7.29.0)(@playwright/test@1.58.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4) + version: 5.0.0-beta.30(next@16.2.2(@babel/core@7.29.0)(@playwright/test@1.59.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4) react: specifier: ^19.2.4 version: 19.2.4 @@ -76,13 +73,13 @@ importers: version: 16.1.7 "@playwright/test": specifier: ^1.58.1 - version: 1.58.1 + version: 1.59.1 "@types/bcrypt": specifier: ^6.0.0 version: 6.0.0 "@types/node": specifier: ^25.2.0 - version: 25.2.0 + version: 25.5.2 "@types/react": specifier: ^19.2.14 version: 19.2.14 @@ -91,34 +88,34 @@ importers: version: 19.2.3(@types/react@19.2.14) "@typescript-eslint/eslint-plugin": specifier: ^8.54.0 - version: 8.54.0(@typescript-eslint/parser@8.58.0(eslint@9.39.2)(typescript@5.9.3))(eslint@9.39.2)(typescript@5.9.3) + version: 8.58.0(@typescript-eslint/parser@8.58.0(eslint@9.39.4)(typescript@5.9.3))(eslint@9.39.4)(typescript@5.9.3) "@typescript-eslint/parser": specifier: ^8.58.0 - version: 8.58.0(eslint@9.39.2)(typescript@5.9.3) + version: 8.58.0(eslint@9.39.4)(typescript@5.9.3) eslint: specifier: ^9.39.2 - version: 9.39.2 + version: 9.39.4 eslint-config-next: specifier: 16.2.2 - version: 16.2.2(@typescript-eslint/parser@8.58.0(eslint@9.39.2)(typescript@5.9.3))(eslint@9.39.2)(typescript@5.9.3) + version: 16.2.2(@typescript-eslint/parser@8.58.0(eslint@9.39.4)(typescript@5.9.3))(eslint@9.39.4)(typescript@5.9.3) eslint-config-prettier: specifier: ^10.1.8 - version: 10.1.8(eslint@9.39.2) + version: 10.1.8(eslint@9.39.4) eslint-plugin-jsx-a11y: specifier: 6.10.2 - version: 6.10.2(eslint@9.39.2) + version: 6.10.2(eslint@9.39.4) eslint-plugin-next: specifier: ^0.0.0 version: 0.0.0 eslint-plugin-promise: specifier: ^7.2.1 - version: 7.2.1(eslint@9.39.2) + version: 7.2.1(eslint@9.39.4) eslint-plugin-react: specifier: 7.37.5 - version: 7.37.5(eslint@9.39.2) + version: 7.37.5(eslint@9.39.4) eslint-plugin-react-hooks: specifier: 7.0.1 - version: 7.0.1(eslint@9.39.2) + version: 7.0.1(eslint@9.39.4) husky: specifier: ^9.1.7 version: 9.1.7 @@ -142,7 +139,7 @@ importers: version: 5.9.3 typescript-eslint: specifier: 8.54.0 - version: 8.54.0(eslint@9.39.2)(typescript@5.9.3) + version: 8.54.0(eslint@9.39.4)(typescript@5.9.3) packages: "@auth/core@0.41.0": @@ -183,10 +180,10 @@ packages: } engines: { node: ">=6.9.0" } - "@babel/generator@7.29.0": + "@babel/generator@7.29.1": resolution: { - integrity: sha512-vSH118/wwM/pLR38g/Sgk05sNtro6TlTJKuiMXDaZqPUfjTFcudpCOt00IhOfj+1BFAX+UFAlzCU+6WXr3GLFQ==, + integrity: sha512-qsaF+9Qcm2Qv8SRIMMscAvG4O3lJ0F1GuMo5HR/Bp02LopNgnZBC/EkbevHFeGs4ls/oPz9v+Bsmzbkbe+0dUw==, } engines: { node: ">=6.9.0" } @@ -241,25 +238,25 @@ packages: } engines: { node: ">=6.9.0" } - "@babel/helpers@7.28.6": + "@babel/helpers@7.29.2": resolution: { - integrity: sha512-xOBvwq86HHdB7WUDTfKfT/Vuxh7gElQ+Sfti2Cy6yIWNW05P8iUslOVcZ4/sKbE+/jQaukQAdz/gf3724kYdqw==, + integrity: sha512-HoGuUs4sCZNezVEKdVcwqmZN8GoHirLUcLaYVNBK2J0DadGtdcqgr3BCbvH8+XUo4NGjNl3VOtSjEKNzqfFgKw==, } engines: { node: ">=6.9.0" } - "@babel/parser@7.29.0": + "@babel/parser@7.29.2": resolution: { - integrity: sha512-IyDgFV5GeDUVX4YdF/3CPULtVGSXXMLh1xVIgdCgxApktqnQV0r7/8Nqthg+8YLGaAtdyIlo2qIdZrbCv4+7ww==, + integrity: sha512-4GgRzy/+fsBa72/RZVJmGKPmZu9Byn8o4MoLpmNe1m8ZfYnz5emHLQz3U4gLud6Zwl0RZIcgiLD7Uq7ySFuDLA==, } engines: { node: ">=6.0.0" } hasBin: true - "@babel/runtime@7.28.6": + "@babel/runtime@7.26.10": resolution: { - integrity: sha512-05WQkdpL9COIMz4LjTxGpPNCdlpyimKppYNoJ5Di5EUObifl8t4tuLuUBBZEpoLYOmfvIWrsp9fCl0HoPRVTdA==, + integrity: sha512-2WJMeRQPHKSPemqk/awGrAiuFfzBmOIPXKizAsVhWH9YJqLZ0H+HS4c8loHGgW6utJ3E/ejXQUsiGaQy2NZ9Fw==, } engines: { node: ">=6.9.0" } @@ -284,30 +281,39 @@ packages: } engines: { node: ">=6.9.0" } - "@emnapi/core@1.9.1": + "@emnapi/core@1.3.1": resolution: { - integrity: sha512-mukuNALVsoix/w1BJwFzwXBN/dHeejQtuVzcDsfOEsdpCumXb/E9j8w11h5S54tT1xhifGfbbSm/ICrObRb3KA==, + integrity: sha512-pVGjBIt1Y6gg3EJN8jTcfpP/+uuRksIo055oE/OBkDNcjZqVbfkWCksG1Jp4yZnj3iKWyWX8fdG/j6UDYPbFog==, } - "@emnapi/runtime@1.8.1": + "@emnapi/runtime@1.3.1": resolution: { - integrity: sha512-mehfKSMWjjNol8659Z8KxEMrdSJDDot5SXMq00dM8BN4o+CLNXQ0xH2V7EchNHV4RmbZLmmPdEaXZc5H2FXmDg==, + integrity: sha512-kEBmG8KyqtxJZv+ygbEim+KCGtIq1fC22Ms3S4ziXmYKm8uyoLX0MHONVKwp+9opg390VaKRNt4a7A9NwmpNhw==, } - "@emnapi/runtime@1.9.1": + "@emnapi/runtime@1.9.2": resolution: { - integrity: sha512-VYi5+ZVLhpgK4hQ0TAjiQiZ6ol0oe4mBx7mVv7IflsiEp0OWoVsp/+f9Vc1hOhE0TtkORVrI1GvzyreqpgWtkA==, + integrity: sha512-3U4+MIWHImeyu1wnmVygh5WlgfYDtyf0k8AbLhMFxOipihf6nrWC4syIm/SwEeec0mNSafiiNnMJwbza/Is6Lw==, } - "@emnapi/wasi-threads@1.2.0": + "@emnapi/wasi-threads@1.0.1": resolution: { - integrity: sha512-N10dEJNSsUx41Z6pZsXU8FjPjpBEplgH24sfkmITrBED1/U2Esum9F3lfLrMjKHHjmi557zQn7kR9R+XWXu5Rg==, + integrity: sha512-iIBu7mwkq4UQGeMEM8bLwNK962nXdhodeScX4slfQnRhEMMzvYivHhutCIk8uojvmASXXPC2WNEjwxFWk72Oqw==, } + "@eslint-community/eslint-utils@4.5.1": + resolution: + { + integrity: sha512-soEIOALTfTK6EjmKMMoLugwaP0rzkad90iIWd1hMO9ARkSAyjfMfkRRhLvD5qH7vvM0Cg72pieUfR6yh6XxC4w==, + } + engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 } + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 + "@eslint-community/eslint-utils@4.9.1": resolution: { @@ -317,6 +323,13 @@ packages: peerDependencies: eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 + "@eslint-community/regexpp@4.12.1": + resolution: + { + integrity: sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==, + } + engines: { node: ^12.0.0 || ^14.0.0 || >=16.0.0 } + "@eslint-community/regexpp@4.12.2": resolution: { @@ -324,10 +337,10 @@ packages: } engines: { node: ^12.0.0 || ^14.0.0 || >=16.0.0 } - "@eslint/config-array@0.21.1": + "@eslint/config-array@0.21.2": resolution: { - integrity: sha512-aw1gNayWpdI/jSYVgzN5pL0cfzU02GT3NBpeT/DXbx1/1x7ZKxFPd9bwrzygx/qiwIQiJ1sw/zD8qY/kRvlGHA==, + integrity: sha512-nJl2KGTlrf9GjLimgIru+V/mzgSK0ABCDQRvxw5BjURL7WfH5uoWmizbH7QB6MmnMBd8cIC9uceWnezL1VZWWw==, } engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } @@ -345,17 +358,10 @@ packages: } engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } - "@eslint/eslintrc@3.3.3": - resolution: - { - integrity: sha512-Kr+LPIUVKz2qkx1HAMH8q1q6azbqBAsXJUxBl/ODDuVPX45Z9DfwB8tPjTi6nNZ8BuM3nbJxC5zCAg5elnBUTQ==, - } - engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } - - "@eslint/js@9.39.2": + "@eslint/eslintrc@3.3.5": resolution: { - integrity: sha512-q1mjIoW1VX4IvSocvM/vbTiveKC4k9eLrajNEuSsmjymSDEbpGddtpfOoN7YGAqBK3NG+uqo8ia4PDTt8buCYA==, + integrity: sha512-4IlJx0X0qftVsN5E+/vGujTRIFtwuLbNsVUe7TO6zYPDR1O6nFwvwhIKEKSrl6dZchmYBITazxKoUYOjdtjlRg==, } engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } @@ -380,40 +386,40 @@ packages: } engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } - "@floating-ui/core@1.7.4": + "@floating-ui/core@1.7.5": resolution: { - integrity: sha512-C3HlIdsBxszvm5McXlB8PeOEWfBhcGBTZGkGlWc2U0KFY5IwG5OQEuQ8rq52DZmcHDlPLd+YFBK+cZcytwIFWg==, + integrity: sha512-1Ih4WTWyw0+lKyFMcBHGbb5U5FtuHJuujoyyr5zTaWS5EYMeT6Jb2AuDeftsCsEuchO+mM2ij5+q9crhydzLhQ==, } - "@floating-ui/dom@1.7.5": + "@floating-ui/dom@1.7.6": resolution: { - integrity: sha512-N0bD2kIPInNHUHehXhMke1rBGs1dwqvC9O9KYMyyjK7iXt7GAhnro7UlcuYcGdS/yYOlq0MAVgrow8IbWJwyqg==, + integrity: sha512-9gZSAI5XM36880PPMm//9dfiEngYoC6Am2izES1FF406YFsjvyBMmeJ2g4SAju3xWwtuynNRFL2s9hgxpLI5SQ==, } - "@floating-ui/react-dom@2.1.7": + "@floating-ui/react-dom@2.1.8": resolution: { - integrity: sha512-0tLRojf/1Go2JgEVm+3Frg9A3IW8bJgKgdO0BN5RkF//ufuz2joZM63Npau2ff3J6lUVYgDSNzNkR+aH3IVfjg==, + integrity: sha512-cC52bHwM/n/CxS87FH0yWdngEZrjdtLW/qVruo68qg+prK7ZQ4YGdut2GyDVpoGeAYe/h899rVeOVm6Oi40k2A==, } peerDependencies: react: ">=16.8.0" react-dom: ">=16.8.0" - "@floating-ui/react@0.27.17": + "@floating-ui/react@0.27.19": resolution: { - integrity: sha512-LGVZKHwmWGg6MRHjLLgsfyaX2y2aCNgnD1zT/E6B+/h+vxg+nIJUqHPAlTzsHDyqdgEpJ1Np5kxWuFEErXzoGg==, + integrity: sha512-31B8h5mm8YxotlE7/AU/PhNAl8eWxAmjL/v2QOxroDNkTFLk3Uu82u63N3b6TXa4EGJeeZLVcd/9AlNlVqzeog==, } peerDependencies: react: ">=17.0.0" react-dom: ">=17.0.0" - "@floating-ui/utils@0.2.10": + "@floating-ui/utils@0.2.11": resolution: { - integrity: sha512-aGTxbpbg8/b5JfU1HXSrbH3wXZuLPJcNEcZQFMxLs3oSzgtVu6nFPkbbGGUvBcUjKV2YyB9Wxxabo+HEH9tcRQ==, + integrity: sha512-RiB/yIh78pcIxl6lLMG0CgBXAZ2Y0eVHqMPYugu+9U0AeT6YBeiJpf7lbdJNIugFP5SIjwNRgo4DhR1Qxi26Gg==, } "@humanfs/core@0.19.1": @@ -423,10 +429,10 @@ packages: } engines: { node: ">=18.18.0" } - "@humanfs/node@0.16.7": + "@humanfs/node@0.16.6": resolution: { - integrity: sha512-/zUx+yOsIrG4Y43Eh2peDeKCxlRt/gET6aHfaKpuq267qXdYDFViVHfMaLyygZOnl0kGWxFIgsBy8QFuTLUXEQ==, + integrity: sha512-YuI2ZHQL78Q5HbhDiBA1X4LmYdXCKCMQIfw0pw7piHJwyREFebJUvrQN4cMssyES6x+vfUbx1CIpaQUKYdQZOw==, } engines: { node: ">=18.18.0" } @@ -437,17 +443,24 @@ packages: } engines: { node: ">=12.22" } - "@humanwhocodes/retry@0.4.3": + "@humanwhocodes/retry@0.3.1": resolution: { - integrity: sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==, + integrity: sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==, } engines: { node: ">=18.18" } - "@img/colour@1.0.0": + "@humanwhocodes/retry@0.4.2": resolution: { - integrity: sha512-A5P/LfWGFSl6nsckYtjw9da+19jB8hkJ6ACTGcDfEJ0aE+l2n2El7dsVM7UVHZQ9s2lmYMWlrS21YLy2IR1LUw==, + integrity: sha512-xeO57FpIu4p1Ri3Jq/EXq4ClRm86dVF2z/+kvFnyqVYRavTZmaFaUBbWCOuuTh0o/g7DSsk6kc2vrS4Vl5oPOQ==, + } + engines: { node: ">=18.18" } + + "@img/colour@1.1.0": + resolution: + { + integrity: sha512-Td76q7j57o/tLVdgS746cYARfSyxk8iEfRxewL9h4OMzYhbW4TAcppl0mT4eyqXddh6L/jwoM75mo7ixa/pCeQ==, } engines: { node: ">=18" } @@ -703,13 +716,13 @@ packages: integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==, } - "@mantine/core@8.3.14": + "@mantine/core@8.3.18": resolution: { - integrity: sha512-ZOxggx65Av1Ii1NrckCuqzluRpmmG+8DyEw24wDom3rmwsPg9UV+0le2QTyI5Eo60LzPfUju1KuEPiUzNABIPg==, + integrity: sha512-9tph1lTVogKPjTx02eUxDUOdXacPzK62UuSqb4TdGliI54/Xgxftq0Dfqu6XuhCxn9J5MDJaNiLDvL/1KRkYqA==, } peerDependencies: - "@mantine/hooks": 8.3.14 + "@mantine/hooks": 8.3.18 react: ^18.x || ^19.x react-dom: ^18.x || ^19.x @@ -721,18 +734,18 @@ packages: peerDependencies: react: ^18.x || ^19.x - "@mantine/hooks@8.3.14": + "@mantine/hooks@8.3.18": resolution: { - integrity: sha512-0SbHnGEuHcF2QyjzBBcqidpjNmIb6n7TC3obnhkBToYhUTbMcJSK/8ei/yHtAelridJH4CPeohRlQdc0HajHyQ==, + integrity: sha512-QoWr9+S8gg5050TQ06aTSxtlpGjYOpIllRbjYYXlRvZeTsUqiTbVfvQROLexu4rEaK+yy9Wwriwl9PMRgbLqPw==, } peerDependencies: react: ^18.x || ^19.x - "@napi-rs/wasm-runtime@0.2.12": + "@napi-rs/wasm-runtime@0.2.7": resolution: { - integrity: sha512-ZVWUcfwY4E/yPitQJl481FjFo3K22D6qF0DuFH6Y/nbnE11GY5uguDxZMGXPQ8WQ0128MXQD7TnfHyK4oWoIJQ==, + integrity: sha512-5yximcFK5FNompXfJFoWanu5l8v1hNGqNHh9du1xETp9HWk/B/PzvchX55WYOPaIeNglG8++68AAiauBAtbnzw==, } "@neondatabase/serverless@0.9.5": @@ -741,10 +754,10 @@ packages: integrity: sha512-siFas6gItqv6wD/pZnvdu34wEqgG3nSE6zWZdq5j2DEsa+VvX8i/5HXJOo06qrw5axPXn+lGCxeR+NLaSPIXug==, } - "@next/env@16.2.1": + "@next/env@16.2.2": resolution: { - integrity: sha512-n8P/HCkIWW+gVal2Z8XqXJ6aB3J0tuM29OcHpCsobWlChH/SITBs1DFBk/HajgrwDkqqBXPbuUuzgDvUekREPg==, + integrity: sha512-LqSGz5+xGk9EL/iBDr2yo/CgNQV6cFsNhRR2xhSXYh7B/hb4nePCxlmDvGEKG30NMHDFf0raqSyOZiQrO7BkHQ==, } "@next/eslint-plugin-next@16.1.7": @@ -759,77 +772,77 @@ packages: integrity: sha512-IOPbWzDQ+76AtjZioaCjpIY72xNSDMnarZ2GMQ4wjNLvnJEJHqxQwGFhgnIWLV9klb4g/+amg88Tk5OXVpyLTw==, } - "@next/swc-darwin-arm64@16.2.1": + "@next/swc-darwin-arm64@16.2.2": resolution: { - integrity: sha512-BwZ8w8YTaSEr2HIuXLMLxIdElNMPvY9fLqb20LX9A9OMGtJilhHLbCL3ggyd0TwjmMcTxi0XXt+ur1vWUoxj2Q==, + integrity: sha512-B92G3ulrwmkDSEJEp9+XzGLex5wC1knrmCSIylyVeiAtCIfvEJYiN3v5kXPlYt5R4RFlsfO/v++aKV63Acrugg==, } engines: { node: ">= 10" } cpu: [arm64] os: [darwin] - "@next/swc-darwin-x64@16.2.1": + "@next/swc-darwin-x64@16.2.2": resolution: { - integrity: sha512-/vrcE6iQSJq3uL3VGVHiXeaKbn8Es10DGTGRJnRZlkNQQk3kaNtAJg8Y6xuAlrx/6INKVjkfi5rY0iEXorZ6uA==, + integrity: sha512-7ZwSgNKJNQiwW0CKhNm9B1WS2L1Olc4B2XY0hPYCAL3epFnugMhuw5TMWzMilQ3QCZcCHoYm9NGWTHbr5REFxw==, } engines: { node: ">= 10" } cpu: [x64] os: [darwin] - "@next/swc-linux-arm64-gnu@16.2.1": + "@next/swc-linux-arm64-gnu@16.2.2": resolution: { - integrity: sha512-uLn+0BK+C31LTVbQ/QU+UaVrV0rRSJQ8RfniQAHPghDdgE+SlroYqcmFnO5iNjNfVWCyKZHYrs3Nl0mUzWxbBw==, + integrity: sha512-c3m8kBHMziMgo2fICOP/cd/5YlrxDU5YYjAJeQLyFsCqVF8xjOTH/QYG4a2u48CvvZZSj1eHQfBCbyh7kBr30Q==, } engines: { node: ">= 10" } cpu: [arm64] os: [linux] libc: [glibc] - "@next/swc-linux-arm64-musl@16.2.1": + "@next/swc-linux-arm64-musl@16.2.2": resolution: { - integrity: sha512-ssKq6iMRnHdnycGp9hCuGnXJZ0YPr4/wNwrfE5DbmvEcgl9+yv97/Kq3TPVDfYome1SW5geciLB9aiEqKXQjlQ==, + integrity: sha512-VKLuscm0P/mIfzt+SDdn2+8TNNJ7f0qfEkA+az7OqQbjzKdBxAHs0UvuiVoCtbwX+dqMEL9U54b5wQ/aN3dHeg==, } engines: { node: ">= 10" } cpu: [arm64] os: [linux] libc: [musl] - "@next/swc-linux-x64-gnu@16.2.1": + "@next/swc-linux-x64-gnu@16.2.2": resolution: { - integrity: sha512-HQm7SrHRELJ30T1TSmT706IWovFFSRGxfgUkyWJZF/RKBMdbdRWJuFrcpDdE5vy9UXjFOx6L3mRdqH04Mmx0hg==, + integrity: sha512-kU3OPHJq6sBUjOk7wc5zJ7/lipn8yGldMoAv4z67j6ov6Xo/JvzA7L7LCsyzzsXmgLEhk3Qkpwqaq/1+XpNR3g==, } engines: { node: ">= 10" } cpu: [x64] os: [linux] libc: [glibc] - "@next/swc-linux-x64-musl@16.2.1": + "@next/swc-linux-x64-musl@16.2.2": resolution: { - integrity: sha512-aV2iUaC/5HGEpbBkE+4B8aHIudoOy5DYekAKOMSHoIYQ66y/wIVeaRx8MS2ZMdxe/HIXlMho4ubdZs/J8441Tg==, + integrity: sha512-CKXRILyErMtUftp+coGcZ38ZwE/Aqq45VMCcRLr2I4OXKrgxIBDXHnBgeX/UMil0S09i2JXaDL3Q+TN8D/cKmg==, } engines: { node: ">= 10" } cpu: [x64] os: [linux] libc: [musl] - "@next/swc-win32-arm64-msvc@16.2.1": + "@next/swc-win32-arm64-msvc@16.2.2": resolution: { - integrity: sha512-IXdNgiDHaSk0ZUJ+xp0OQTdTgnpx1RCfRTalhn3cjOP+IddTMINwA7DXZrwTmGDO8SUr5q2hdP/du4DcrB1GxA==, + integrity: sha512-sS/jSk5VUoShUqINJFvNjVT7JfR5ORYj/+/ZpOYbbIohv/lQfduWnGAycq2wlknbOql2xOR0DoV0s6Xfcy49+g==, } engines: { node: ">= 10" } cpu: [arm64] os: [win32] - "@next/swc-win32-x64-msvc@16.2.1": + "@next/swc-win32-x64-msvc@16.2.2": resolution: { - integrity: sha512-qvU+3a39Hay+ieIztkGSbF7+mccbbg1Tk25hc4JDylf8IHjYmY/Zm64Qq1602yPyQqvie+vf5T/uPwNxDNIoeg==, + integrity: sha512-aHaKceJgdySReT7qeck5oShucxWRiiEuwCGK8HHALe6yZga8uyFpLkPgaRw3kkF04U7ROogL/suYCNt/+CuXGA==, } engines: { node: ">= 10" } cpu: [x64] @@ -869,10 +882,10 @@ packages: integrity: sha512-6oclG6Y3PiDFcoyk8srjLfVKyMfVCKJ27JwNPViuXziFpmdz+MZnZN/aKY0JGXgYuO/VghU0jcOAZgWXZ1Dmrw==, } - "@playwright/test@1.58.1": + "@playwright/test@1.59.1": resolution: { - integrity: sha512-6LdVIUERWxQMmUSSQi0I53GgCBYgM2RpGngCPY7hSeju+VrKjq3lvs7HpJoPbDiY5QM5EYRtRX5fvrinnMAz3w==, + integrity: sha512-PG6q63nQg5c9rIi4/Z5lR5IVF7yU5MqmKaPOe0HSc0O2cX1fPi96sUQu5j7eo4gKCkB2AnNGoWt7y4/Xx3Kcqg==, } engines: { node: ">=18" } hasBin: true @@ -889,24 +902,24 @@ packages: integrity: sha512-JQ5TuMi45Owi4/BIMAJBoSQoOJu12oOk/gADqlcUL9JEdHB8vyjUSsxqeNXnmXHjYKMi2WcYtezGEEhqUI/E2g==, } - "@tabler/icons-react@3.36.1": + "@tabler/icons-react@3.41.1": resolution: { - integrity: sha512-/8nOXeNeMoze9xY/QyEKG65wuvRhkT3q9aytaur6Gj8bYU2A98YVJyLc9MRmc5nVvpy+bRlrrwK/Ykr8WGyUWg==, + integrity: sha512-kUgweE+DJtAlMZVIns1FTDdcbpRVnkK7ZpUOXmoxy3JAF0rSHj0TcP4VHF14+gMJGnF+psH2Zt26BLT6owetBA==, } peerDependencies: react: ">= 16" - "@tabler/icons@3.36.1": + "@tabler/icons@3.41.1": resolution: { - integrity: sha512-f4Jg3Fof/Vru5ioix/UO4GX+sdDsF9wQo47FbtvG+utIYYVQ/QVAC0QYgcBbAjQGfbdOh2CCf0BgiFOF9Ixtjw==, + integrity: sha512-OaRnVbRmH2nHtFeg+RmMJ/7m2oBIF9XCJAUD5gQnMrpK9f05ydj8MZrAf3NZQqOXyxGN1UBL0D5IKLLEUfr74Q==, } - "@tybys/wasm-util@0.10.1": + "@tybys/wasm-util@0.9.0": resolution: { - integrity: sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==, + integrity: sha512-6+7nlbMVX/PVDCwaIQ8nTOPveOcFLSt8GcXdx8hD0bt39uWxYT88uXzqTd4fTvqta7oeUJqudepapKNt2DYJFw==, } "@types/bcrypt@6.0.0": @@ -915,10 +928,10 @@ packages: integrity: sha512-/oJGukuH3D2+D+3H4JWLaAsJ/ji86dhRidzZ/Od7H/i8g+aCmvkeCc6Ni/f9uxGLSQVCRZkX2/lqEFG2BvWtlQ==, } - "@types/estree@1.0.8": + "@types/estree@1.0.6": resolution: { - integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==, + integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==, } "@types/json-schema@7.0.15": @@ -933,10 +946,10 @@ packages: integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==, } - "@types/node@25.2.0": + "@types/node@25.5.2": resolution: { - integrity: sha512-DZ8VwRFUNzuqJ5khrvwMXHmvPe+zGayJhr2CDNiKB1WBE1ST8Djl00D0IC4vvNmHMdj6DlbYRIaFE7WHjlDl5w==, + integrity: sha512-tO4ZIRKNC+MDWV4qKVZe3Ql/woTnmHDr5JD8UI5hn2pwBrHEwOEMZK7WlNb5RKB6EoJ02gwmQS9OrjuFnZYdpg==, } "@types/pg@8.11.6": @@ -970,6 +983,17 @@ packages: eslint: ^8.57.0 || ^9.0.0 typescript: ">=4.8.4 <6.0.0" + "@typescript-eslint/eslint-plugin@8.58.0": + resolution: + { + integrity: sha512-RLkVSiNuUP1C2ROIWfqX+YcUfLaSnxGE/8M+Y57lopVwg9VTYYfhuz15Yf1IzCKgZj6/rIbYTmJCUSqr76r0Wg==, + } + engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } + peerDependencies: + "@typescript-eslint/parser": ^8.58.0 + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + typescript: ">=4.8.4 <6.1.0" + "@typescript-eslint/parser@8.54.0": resolution: { @@ -1050,6 +1074,16 @@ packages: eslint: ^8.57.0 || ^9.0.0 typescript: ">=4.8.4 <6.0.0" + "@typescript-eslint/type-utils@8.58.0": + resolution: + { + integrity: sha512-aGsCQImkDIqMyx1u4PrVlbi/krmDsQUs4zAcCV6M7yPcPev+RqVlndsJy9kJ8TLihW9TZ0kbDAzctpLn5o+lOg==, + } + engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + typescript: ">=4.8.4 <6.1.0" + "@typescript-eslint/types@8.54.0": resolution: { @@ -1092,176 +1126,118 @@ packages: eslint: ^8.57.0 || ^9.0.0 typescript: ">=4.8.4 <6.0.0" - "@typescript-eslint/visitor-keys@8.54.0": + "@typescript-eslint/utils@8.58.0": resolution: { - integrity: sha512-VFlhGSl4opC0bprJiItPQ1RfUhGDIBokcPwaFH4yiBCaNPeld/9VeXbiPO1cLyorQi1G1vL+ecBk1x8o1axORA==, + integrity: sha512-RfeSqcFeHMHlAWzt4TBjWOAtoW9lnsAGiP3GbaX9uVgTYYrMbVnGONEfUCiSss+xMHFl+eHZiipmA8WkQ7FuNA==, } engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + typescript: ">=4.8.4 <6.1.0" - "@typescript-eslint/visitor-keys@8.58.0": + "@typescript-eslint/visitor-keys@8.54.0": resolution: { - integrity: sha512-XJ9UD9+bbDo4a4epraTwG3TsNPeiB9aShrUneAVXy8q4LuwowN+qu89/6ByLMINqvIMeI9H9hOHQtg/ijrYXzQ==, + integrity: sha512-VFlhGSl4opC0bprJiItPQ1RfUhGDIBokcPwaFH4yiBCaNPeld/9VeXbiPO1cLyorQi1G1vL+ecBk1x8o1axORA==, } engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } - "@unrs/resolver-binding-android-arm-eabi@1.11.1": - resolution: - { - integrity: sha512-ppLRUgHVaGRWUx0R0Ut06Mjo9gBaBkg3v/8AxusGLhsIotbBLuRk51rAzqLC8gq6NyyAojEXglNjzf6R948DNw==, - } - cpu: [arm] - os: [android] - - "@unrs/resolver-binding-android-arm64@1.11.1": + "@typescript-eslint/visitor-keys@8.58.0": resolution: { - integrity: sha512-lCxkVtb4wp1v+EoN+HjIG9cIIzPkX5OtM03pQYkG+U5O/wL53LC4QbIeazgiKqluGeVEeBlZahHalCaBvU1a2g==, + integrity: sha512-XJ9UD9+bbDo4a4epraTwG3TsNPeiB9aShrUneAVXy8q4LuwowN+qu89/6ByLMINqvIMeI9H9hOHQtg/ijrYXzQ==, } - cpu: [arm64] - os: [android] + engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } - "@unrs/resolver-binding-darwin-arm64@1.11.1": + "@unrs/rspack-resolver-binding-darwin-arm64@1.2.2": resolution: { - integrity: sha512-gPVA1UjRu1Y/IsB/dQEsp2V1pm44Of6+LWvbLc9SDk1c2KhhDRDBUkQCYVWe6f26uJb3fOK8saWMgtX8IrMk3g==, + integrity: sha512-i7z0B+C0P8Q63O/5PXJAzeFtA1ttY3OR2VSJgGv18S+PFNwD98xHgAgPOT1H5HIV6jlQP8Avzbp09qxJUdpPNw==, } cpu: [arm64] os: [darwin] - "@unrs/resolver-binding-darwin-x64@1.11.1": + "@unrs/rspack-resolver-binding-darwin-x64@1.2.2": resolution: { - integrity: sha512-cFzP7rWKd3lZaCsDze07QX1SC24lO8mPty9vdP+YVa3MGdVgPmFc59317b2ioXtgCMKGiCLxJ4HQs62oz6GfRQ==, + integrity: sha512-YEdFzPjIbDUCfmehC6eS+AdJYtFWY35YYgWUnqqTM2oe/N58GhNy5yRllxYhxwJ9GcfHoNc6Ubze1yjkNv+9Qg==, } cpu: [x64] os: [darwin] - "@unrs/resolver-binding-freebsd-x64@1.11.1": + "@unrs/rspack-resolver-binding-freebsd-x64@1.2.2": resolution: { - integrity: sha512-fqtGgak3zX4DCB6PFpsH5+Kmt/8CIi4Bry4rb1ho6Av2QHTREM+47y282Uqiu3ZRF5IQioJQ5qWRV6jduA+iGw==, + integrity: sha512-TU4ntNXDgPN2giQyyzSnGWf/dVCem5lvwxg0XYvsvz35h5H19WrhTmHgbrULMuypCB3aHe1enYUC9rPLDw45mA==, } cpu: [x64] os: [freebsd] - "@unrs/resolver-binding-linux-arm-gnueabihf@1.11.1": - resolution: - { - integrity: sha512-u92mvlcYtp9MRKmP+ZvMmtPN34+/3lMHlyMj7wXJDeXxuM0Vgzz0+PPJNsro1m3IZPYChIkn944wW8TYgGKFHw==, - } - cpu: [arm] - os: [linux] - - "@unrs/resolver-binding-linux-arm-musleabihf@1.11.1": + "@unrs/rspack-resolver-binding-linux-arm-gnueabihf@1.2.2": resolution: { - integrity: sha512-cINaoY2z7LVCrfHkIcmvj7osTOtm6VVT16b5oQdS4beibX2SYBwgYLmqhBjA1t51CarSaBuX5YNsWLjsqfW5Cw==, + integrity: sha512-ik3w4/rU6RujBvNWiDnKdXi1smBhqxEDhccNi/j2rHaMjm0Fk49KkJ6XKsoUnD2kZ5xaMJf9JjailW/okfUPIw==, } cpu: [arm] os: [linux] - "@unrs/resolver-binding-linux-arm64-gnu@1.11.1": + "@unrs/rspack-resolver-binding-linux-arm64-gnu@1.2.2": resolution: { - integrity: sha512-34gw7PjDGB9JgePJEmhEqBhWvCiiWCuXsL9hYphDF7crW7UgI05gyBAi6MF58uGcMOiOqSJ2ybEeCvHcq0BCmQ==, + integrity: sha512-fp4Azi8kHz6TX8SFmKfyScZrMLfp++uRm2srpqRjsRZIIBzH74NtSkdEUHImR4G7f7XJ+sVZjCc6KDDK04YEpQ==, } cpu: [arm64] os: [linux] libc: [glibc] - "@unrs/resolver-binding-linux-arm64-musl@1.11.1": + "@unrs/rspack-resolver-binding-linux-arm64-musl@1.2.2": resolution: { - integrity: sha512-RyMIx6Uf53hhOtJDIamSbTskA99sPHS96wxVE/bJtePJJtpdKGXO1wY90oRdXuYOGOTuqjT8ACccMc4K6QmT3w==, + integrity: sha512-gMiG3DCFioJxdGBzhlL86KcFgt9HGz0iDhw0YVYPsShItpN5pqIkNrI+L/Q/0gfDiGrfcE0X3VANSYIPmqEAlQ==, } cpu: [arm64] os: [linux] libc: [musl] - "@unrs/resolver-binding-linux-ppc64-gnu@1.11.1": + "@unrs/rspack-resolver-binding-linux-x64-gnu@1.2.2": resolution: { - integrity: sha512-D8Vae74A4/a+mZH0FbOkFJL9DSK2R6TFPC9M+jCWYia/q2einCubX10pecpDiTmkJVUH+y8K3BZClycD8nCShA==, - } - cpu: [ppc64] - os: [linux] - libc: [glibc] - - "@unrs/resolver-binding-linux-riscv64-gnu@1.11.1": - resolution: - { - integrity: sha512-frxL4OrzOWVVsOc96+V3aqTIQl1O2TjgExV4EKgRY09AJ9leZpEg8Ak9phadbuX0BA4k8U5qtvMSQQGGmaJqcQ==, - } - cpu: [riscv64] - os: [linux] - libc: [glibc] - - "@unrs/resolver-binding-linux-riscv64-musl@1.11.1": - resolution: - { - integrity: sha512-mJ5vuDaIZ+l/acv01sHoXfpnyrNKOk/3aDoEdLO/Xtn9HuZlDD6jKxHlkN8ZhWyLJsRBxfv9GYM2utQ1SChKew==, - } - cpu: [riscv64] - os: [linux] - libc: [musl] - - "@unrs/resolver-binding-linux-s390x-gnu@1.11.1": - resolution: - { - integrity: sha512-kELo8ebBVtb9sA7rMe1Cph4QHreByhaZ2QEADd9NzIQsYNQpt9UkM9iqr2lhGr5afh885d/cB5QeTXSbZHTYPg==, - } - cpu: [s390x] - os: [linux] - libc: [glibc] - - "@unrs/resolver-binding-linux-x64-gnu@1.11.1": - resolution: - { - integrity: sha512-C3ZAHugKgovV5YvAMsxhq0gtXuwESUKc5MhEtjBpLoHPLYM+iuwSj3lflFwK3DPm68660rZ7G8BMcwSro7hD5w==, + integrity: sha512-n/4n2CxaUF9tcaJxEaZm+lqvaw2gflfWQ1R9I7WQgYkKEKbRKbpG/R3hopYdUmLSRI4xaW1Cy0Bz40eS2Yi4Sw==, } cpu: [x64] os: [linux] libc: [glibc] - "@unrs/resolver-binding-linux-x64-musl@1.11.1": + "@unrs/rspack-resolver-binding-linux-x64-musl@1.2.2": resolution: { - integrity: sha512-rV0YSoyhK2nZ4vEswT/QwqzqQXw5I6CjoaYMOX0TqBlWhojUf8P94mvI7nuJTeaCkkds3QE4+zS8Ko+GdXuZtA==, + integrity: sha512-cHyhAr6rlYYbon1L2Ag449YCj3p6XMfcYTP0AQX+KkQo025d1y/VFtPWvjMhuEsE2lLvtHm7GdJozj6BOMtzVg==, } cpu: [x64] os: [linux] libc: [musl] - "@unrs/resolver-binding-wasm32-wasi@1.11.1": + "@unrs/rspack-resolver-binding-wasm32-wasi@1.2.2": resolution: { - integrity: sha512-5u4RkfxJm+Ng7IWgkzi3qrFOvLvQYnPBmjmZQ8+szTK/b31fQCnleNl1GgEt7nIsZRIf5PLhPwT0WM+q45x/UQ==, + integrity: sha512-eogDKuICghDLGc32FtP+WniG38IB1RcGOGz0G3z8406dUdjJvxfHGuGs/dSlM9YEp/v0lEqhJ4mBu6X2nL9pog==, } engines: { node: ">=14.0.0" } cpu: [wasm32] - "@unrs/resolver-binding-win32-arm64-msvc@1.11.1": + "@unrs/rspack-resolver-binding-win32-arm64-msvc@1.2.2": resolution: { - integrity: sha512-nRcz5Il4ln0kMhfL8S3hLkxI85BXs3o8EYoattsJNdsX4YUU89iOkVn7g0VHSRxFuVMdM4Q1jEpIId1Ihim/Uw==, + integrity: sha512-7sWRJumhpXSi2lccX8aQpfFXHsSVASdWndLv8AmD8nDRA/5PBi8IplQVZNx2mYRx6+Bp91Z00kuVqpXO9NfCTg==, } cpu: [arm64] os: [win32] - "@unrs/resolver-binding-win32-ia32-msvc@1.11.1": - resolution: - { - integrity: sha512-DCEI6t5i1NmAZp6pFonpD5m7i6aFrpofcp4LA2i8IIq60Jyo28hamKBxNrZcyOwVOZkgsRp9O2sXWBWP8MnvIQ==, - } - cpu: [ia32] - os: [win32] - - "@unrs/resolver-binding-win32-x64-msvc@1.11.1": + "@unrs/rspack-resolver-binding-win32-x64-msvc@1.2.2": resolution: { - integrity: sha512-lrW200hZdbfRtztbygyaq/6jP6AKE8qQN2KvPcJ+x7wiD038YtnYtZ82IMNJ69GJibV7bwL3y9FgK+5w/pYt6g==, + integrity: sha512-hewo/UMGP1a7O6FG/ThcPzSJdm/WwrYDNkdGgWl6M18H6K6MSitklomWpT9MUtT5KGj++QJb06va/14QBC4pvw==, } cpu: [x64] os: [win32] @@ -1301,7 +1277,6 @@ packages: integrity: sha512-fSD23DxGND40IzSkXjcFcxr53t3Tiym59Is0jSYIFpG4/0f0KO9SGtcp1sXiebvPaGe7N/tU05cH4yt2S6/IPg==, } engines: { node: ">=18.14" } - deprecated: "@vercel/postgres is deprecated. If you are setting up a new database, you can choose an alternate storage solution from the Vercel Marketplace. If you had an existing Vercel Postgres database, it should have been migrated to Neon as a native Vercel integration. You can find more details and the guide to migrate to Neon's SDKs here: https://neon.com/docs/guides/vercel-postgres-transition-guide" "@vercel/speed-insights@1.3.1": resolution: @@ -1337,10 +1312,10 @@ packages: peerDependencies: acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 - acorn@8.15.0: + acorn@8.16.0: resolution: { - integrity: sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==, + integrity: sha512-UVJyE9MttOsBQIDKw1skb9nAwQuR5wuGD3+82K6JgJlm/Y+KI92oNsMNGZCYdDsVtRHSak0pcV5Dno5+4jh9sw==, } engines: { node: ">=0.4.0" } hasBin: true @@ -1351,13 +1326,20 @@ packages: integrity: sha512-IWrosm/yrn43eiKqkfkHis7QioDleaXQHdDVPKg0FSwwd/DuvyX79TZnFOnYpB7dcsFAMmtFztZuXPDvSePkFw==, } - ansi-escapes@7.3.0: + ansi-escapes@7.0.0: resolution: { - integrity: sha512-BvU8nYgGQBxcmMuEeUEmNTvrMVjJNSH7RgW24vXexN4Ven6qCvy4TntnvlnwnMLTVlcRQQdbRY8NKnaIoeWDNg==, + integrity: sha512-GdYO7a61mR0fOlAsvC9/rIHf7L96sBc6dEWzeOu+KAea5bZyQRPIpojrVoI4AXGJS/ycu/fBTdLrUkA4ODrvjw==, } engines: { node: ">=18" } + ansi-regex@6.1.0: + resolution: + { + integrity: sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==, + } + engines: { node: ">=12" } + ansi-regex@6.2.2: resolution: { @@ -1372,6 +1354,13 @@ packages: } engines: { node: ">=8" } + ansi-styles@6.2.1: + resolution: + { + integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==, + } + engines: { node: ">=12" } + ansi-styles@6.2.3: resolution: { @@ -1399,6 +1388,13 @@ packages: } engines: { node: ">= 0.4" } + array-includes@3.1.8: + resolution: + { + integrity: sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==, + } + engines: { node: ">= 0.4" } + array-includes@3.1.9: resolution: { @@ -1468,10 +1464,10 @@ packages: } engines: { node: ">= 0.4" } - axe-core@4.11.1: + axe-core@4.10.3: resolution: { - integrity: sha512-BASOg+YwO2C+346x3LZOeoovTIoTrRqEsqMa6fmfAV0P+U9mFr9NsyOEpiYvFjbc64NMrSswhV50WdXzdb/Z5A==, + integrity: sha512-Xm7bpRXnDSX2YE2YFfBk2FnF0ep6tmG7xPh8iHee8MIcrgq762Nkce856dYtJYLkuIoYZvGfTs/PbZhideTcEg==, } engines: { node: ">=4" } @@ -1495,11 +1491,12 @@ packages: } engines: { node: 18 || 20 || >=22 } - baseline-browser-mapping@2.9.19: + baseline-browser-mapping@2.10.14: resolution: { - integrity: sha512-ipDqC8FrAl/76p2SSWKSI+H9tFwm7vYqXQrItCuiVPt26Km0jS+NzSsBWAaBusvSbQcfJG+JitdMm+wZAgTYqg==, + integrity: sha512-fOVLPAsFTsQfuCkvahZkzq6nf8KvGWanlYoTh0SVA0A/PIUxQGU2AOZAoD95n2gFLVDW/jP6sbGLny95nmEuHA==, } + engines: { node: ">=6.0.0" } hasBin: true bcrypt@6.0.0: @@ -1509,16 +1506,16 @@ packages: } engines: { node: ">= 18" } - brace-expansion@1.1.13: + brace-expansion@1.1.11: resolution: { - integrity: sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==, + integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==, } - brace-expansion@2.0.3: + brace-expansion@2.0.1: resolution: { - integrity: sha512-MCV/fYJEbqx68aE58kv2cA/kiky1G8vux3OR6/jbS+jIMe/6fJWa0DTzJU7dqijOWYwHi1t29FlfYI9uytqlpA==, + integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==, } brace-expansion@5.0.5: @@ -1535,18 +1532,18 @@ packages: } engines: { node: ">=8" } - browserslist@4.28.1: + browserslist@4.28.2: resolution: { - integrity: sha512-ZC5Bd0LgJXgwGqUknZY/vkUQ04r8NXnJZ3yYi4vDmSiZmC/pdSN0NbNRPxZpbtO4uAfDUAFffO8IZoM3Gj8IkA==, + integrity: sha512-48xSriZYYg+8qXna9kwqjIVzuQxi+KYWp2+5nCYnYKPTr0LvD89Jqk2Or5ogxz0NUMfIjhh2lIUX/LyX9B4oIg==, } engines: { node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7 } hasBin: true - bufferutil@4.1.0: + bufferutil@4.0.9: resolution: { - integrity: sha512-ZMANVnAixE6AWWnPzlW2KpUrxhm9woycYvPOo67jWHyFowASTEd9s+QN1EIMsSDtwhIxN4sWE1jotpuDUIgyIw==, + integrity: sha512-WDtdLmJvAuNNPzByAYpRo2rF1Mmradw6gvWsQKf63476DDXmomT9zUiGypLcG4ibIM67vhAj8jJRdbmEws2Aqw==, } engines: { node: ">=6.14.2" } @@ -1585,10 +1582,16 @@ packages: } engines: { node: ">= 6" } - caniuse-lite@1.0.30001767: + caniuse-lite@1.0.30001706: + resolution: + { + integrity: sha512-3ZczoTApMAZwPKYWmwVbQMFpXBDds3/0VciVoUwPUbldlYyVLmRVuRs/PcUZtHpbLRpzzDvrvnFuREsGt6lUug==, + } + + caniuse-lite@1.0.30001785: resolution: { - integrity: sha512-34+zUAMhSH+r+9eKmYG+k2Rpt8XttfE4yXAjoZvkAPs15xcYQhyBYdalJ65BzivAvGRMViEjy6oKr/S91loekQ==, + integrity: sha512-blhOL/WNR+Km1RI/LCVAvA73xplXA7ZbjzI4YkMK9pa6T/P3F2GxjNpEkyw5repTw9IvkyrjyHpwjnhZ5FOvYQ==, } chalk@4.1.2: @@ -1722,6 +1725,18 @@ packages: supports-color: optional: true + debug@4.4.0: + resolution: + { + integrity: sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==, + } + engines: { node: ">=6.0" } + peerDependencies: + supports-color: "*" + peerDependenciesMeta: + supports-color: + optional: true + debug@4.4.3: resolution: { @@ -1788,16 +1803,16 @@ packages: } engines: { node: ">= 0.4" } - electron-to-chromium@1.5.283: + electron-to-chromium@1.5.331: resolution: { - integrity: sha512-3vifjt1HgrGW/h76UEeny+adYApveS9dH2h3p57JYzBSXJIKUJAvtmIytDKjcSCt9xHfrNCFJ7gts6vkhuq++w==, + integrity: sha512-IbxXrsTlD3hRodkLnbxAPP4OuJYdWCeM3IOdT+CpcMoIwIoDfCmRpEtSPfwBXxVkg9xmBeY7Lz2Eo2TDn/HC3Q==, } - emoji-regex@10.6.0: + emoji-regex@10.4.0: resolution: { - integrity: sha512-toUI84YS5YmxW219erniWD0CIVOo46xGKColeNQRgOzDorgBi1v4D71/OFzgD9GO2UGKIv1C3Sp8DAn0+j5w7A==, + integrity: sha512-EC+0oUMY1Rqm4O6LLrgjtYDvcVYTy7chDnM4Q7030tP4Kwj3u/pR6gP9ygnp2CJMK5Gq+9Q2oqmrFJAz01DXjw==, } emoji-regex@9.2.2: @@ -1813,6 +1828,13 @@ packages: } engines: { node: ">=18" } + es-abstract@1.23.9: + resolution: + { + integrity: sha512-py07lI0wjxAC/DcfK1S6G7iANonniZwTISvdPzk9hzeH0IZIshbuuFxLIU96OyF89Yb9hiqWn8M/bY83KY5vzA==, + } + engines: { node: ">= 0.4" } + es-abstract@1.24.1: resolution: { @@ -1834,10 +1856,10 @@ packages: } engines: { node: ">= 0.4" } - es-iterator-helpers@1.2.2: + es-iterator-helpers@1.2.1: resolution: { - integrity: sha512-BrUQ0cPTB/IwXj23HtwHjS9n7O4h9FX94b4xc5zlTHxeLgTAdzYUDyy6KdExAl9lbN5rtfe44xpjpmj9grxs5w==, + integrity: sha512-uDn+FE1yrDzyC0pCo961B2IHbdM8y/ACZsKD4dG6WqrjV53BADjwa7D+1aom2rsNVfLyDgU/eigvlJGJ08OQ4w==, } engines: { node: ">= 0.4" } @@ -1910,10 +1932,10 @@ packages: integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==, } - eslint-import-resolver-typescript@3.10.1: + eslint-import-resolver-typescript@3.9.1: resolution: { - integrity: sha512-A1rHYb06zjMGAxdLSkN2fXPBwuSaQ0iO5M/hdyS0Ajj1VBaRp0sPD3dn1FhME3c/JluGFbwSxyCfqdSbtQLAHQ==, + integrity: sha512-euxa5rTGqHeqVxmOHT25hpk58PxkQ4mNoX6Yun4ooGaCHAxOCojJYNvjmyeOQxj/LyW+3fulH0+xtk+p2kPPTw==, } engines: { node: ^14.18.0 || >=16.0.0 } peerDependencies: @@ -2033,10 +2055,10 @@ packages: } engines: { node: ^20.19.0 || ^22.13.0 || >=24 } - eslint@9.39.2: + eslint@9.39.4: resolution: { - integrity: sha512-LEyamqS7W5HB3ujJyvi0HQK/dtVINZvd5mAAp9eT5S/ujByGjiZLCzPcHVzuXbpJDJF/cxwHlfceVUDZ2lnSTw==, + integrity: sha512-XoMjdBOwe/esVgEvLmNsD3IRHkm7fbKIUGvrleloJXUZgDHig2IPWNniv+GwjyJXzuNqVjlr5+4yVUZjycJwfQ==, } engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } hasBin: true @@ -2053,10 +2075,10 @@ packages: } engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 } - esquery@1.7.0: + esquery@1.6.0: resolution: { - integrity: sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g==, + integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==, } engines: { node: ">=0.10" } @@ -2081,10 +2103,10 @@ packages: } engines: { node: ">=0.10.0" } - eventemitter3@5.0.4: + eventemitter3@5.0.1: resolution: { - integrity: sha512-mlsTRyGaPBjPedk6Bvw+aqbsXDtoAyAzm5MO7JgU+yVRyMQ5O8bD4Kcci7BS85f93veegeCPkL8R4GLClnjLFw==, + integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==, } fast-deep-equal@3.1.3: @@ -2112,12 +2134,23 @@ packages: integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==, } - fastq@1.20.1: + fastq@1.19.1: resolution: { - integrity: sha512-GGToxJ/w1x32s/D2EKND7kTil4n8OVk/9mycTc4VDza13lOvpUZTGX3mFSCtV9ksdGBVzvsyAVLM6mHFThxXxw==, + integrity: sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==, } + fdir@6.4.3: + resolution: + { + integrity: sha512-PMXmW2y1hDDfTSRc9gaXIuCCRpuoz3Kaz8cUelp3smouvfT632ozg2vrT6lJsHKKOF59YLbOGfAWGUcKEfRMQw==, + } + peerDependencies: + picomatch: ^3 || ^4 + peerDependenciesMeta: + picomatch: + optional: true + fdir@6.5.0: resolution: { @@ -2188,19 +2221,6 @@ packages: react-dom: optional: true - fs-minipass@2.1.0: - resolution: - { - integrity: sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==, - } - engines: { node: ">= 8" } - - fs.realpath@1.0.0: - resolution: - { - integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==, - } - fsevents@2.3.2: resolution: { @@ -2228,19 +2248,19 @@ packages: integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==, } - generator-function@2.0.1: + gensync@1.0.0-beta.2: resolution: { - integrity: sha512-SFdFmIJi+ybC0vjlHN0ZGVGHc3lgE0DxPAT0djjVg+kjOnSqclqmj0KQ7ykTOLP6YxoqOvuAODGdcHJn+43q3g==, + integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==, } - engines: { node: ">= 0.4" } + engines: { node: ">=6.9.0" } - gensync@1.0.0-beta.2: + get-east-asian-width@1.3.0: resolution: { - integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==, + integrity: sha512-vpeMIQKxczTD/0s2CdEWHcb0eeJe6TFjxb+J5xgX7hScxqrGuyjmv4c1D4A/gelKfyox0gJJwIHF+fLjeaM8kQ==, } - engines: { node: ">=6.9.0" } + engines: { node: ">=18" } get-east-asian-width@1.5.0: resolution: @@ -2277,10 +2297,10 @@ packages: } engines: { node: ">= 0.4" } - get-tsconfig@4.13.7: + get-tsconfig@4.10.0: resolution: { - integrity: sha512-7tN6rFgBlMgpBML5j8typ92BKFi2sFQvIdpAqLA2beia5avZDrMs0FLZiM5etShWq5irVyGcGMEA1jcDaK7A/Q==, + integrity: sha512-kGzZ3LWWQcGIAmg6iWvXn0ei6WDtV26wzHRMwDSzmAbcXrTEXxHy6IehI6/4eT6VRKyMP1eF1VqwrVUmE/LR7A==, } glob-parent@5.1.2: @@ -2456,10 +2476,10 @@ packages: } engines: { node: ">= 0.4" } - is-bun-module@2.0.0: + is-bun-module@1.3.0: resolution: { - integrity: sha512-gNCGbnnnnFAUGKeZ9PdbyeGYJqewpmc2aKHUEMO5nQPWU9lOmv7jcmQIv+qHD8fXW6W7qfuCwX4rY9LNRjXrkQ==, + integrity: sha512-DgXeu5UWI0IsMQundYb5UAOzm6G2eVnarJ0byP6Tm55iZNKceD59LNPA2L4VvsScTtHcw0yEkVwSf7PC+QoLSA==, } is-callable@1.2.7: @@ -2504,6 +2524,13 @@ packages: } engines: { node: ">= 0.4" } + is-fullwidth-code-point@5.0.0: + resolution: + { + integrity: sha512-OVa3u9kkBbw7b8Xw5F9P+D/T9X+Z4+JruYVNapTjPYZYUznQ5YfWeFkOj606XYYW8yugTfC8Pj0hYqvi4ryAhA==, + } + engines: { node: ">=18" } + is-fullwidth-code-point@5.1.0: resolution: { @@ -2511,10 +2538,10 @@ packages: } engines: { node: ">=18" } - is-generator-function@1.1.2: + is-generator-function@1.1.0: resolution: { - integrity: sha512-upqt1SkGkODW9tsGNG5mtXTXtECizwtS2kA161M+gJPc1xdb/Ax629af6YrTwcOeQHbewrPNlE5Dx7kzvXTizA==, + integrity: sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==, } engines: { node: ">= 0.4" } @@ -2635,10 +2662,10 @@ packages: } engines: { node: ">= 0.4" } - jose@6.1.3: + jose@6.2.2: resolution: { - integrity: sha512-0TpaTfihd4QMNwrz/ob2Bp7X04yuxJkjRGi4aKmOqwhov54i6u79oCv7T+C7lo70MKH6BesI3vscD1yb/yzKXQ==, + integrity: sha512-d7kPDd34KO/YnzaDOlikGpOurfF0ByC2sEV4cANCtdqLlTfBlw2p14O/5d/zv40gJPbIQxfES3nSx1/oYNyuZQ==, } js-tokens@4.0.0: @@ -2818,16 +2845,22 @@ packages: } engines: { node: 18 || 20 || >=22 } + minimatch@3.1.2: + resolution: + { + integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==, + } + minimatch@3.1.5: resolution: { integrity: sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==, } - minimatch@9.0.9: + minimatch@9.0.5: resolution: { - integrity: sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg==, + integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==, } engines: { node: ">=16 || 14 >=14.17" } @@ -2837,35 +2870,6 @@ packages: integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==, } - minipass@3.3.6: - resolution: - { - integrity: sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==, - } - engines: { node: ">=8" } - - minipass@5.0.0: - resolution: - { - integrity: sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==, - } - engines: { node: ">=8" } - - minizlib@2.1.2: - resolution: - { - integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==, - } - engines: { node: ">= 8" } - - mkdirp@1.0.4: - resolution: - { - integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==, - } - engines: { node: ">=10" } - hasBin: true - motion-dom@12.6.1: resolution: { @@ -2892,14 +2896,6 @@ packages: engines: { node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1 } hasBin: true - napi-postinstall@0.3.4: - resolution: - { - integrity: sha512-PHI5f1O0EP5xJ9gQmFGMS6IZcrVvTjpXjz7Na41gTE7eE2hK11lg04CECCYEEjdc17EV4DO+fkGEtt7TpTaTiQ==, - } - engines: { node: ^12.20.0 || ^14.18.0 || >=16.0.0 } - hasBin: true - natural-compare@1.4.0: resolution: { @@ -2925,10 +2921,10 @@ packages: nodemailer: optional: true - next@16.2.1: + next@16.2.2: resolution: { - integrity: sha512-VaChzNL7o9rbfdt60HUj8tev4m6d7iC1igAy157526+cJlXOQu5LzsBXNT+xaJnTP/k+utSX5vMv7m0G+zKH+Q==, + integrity: sha512-i6AJdyVa4oQjyvX/6GeER8dpY/xlIV+4NMv/svykcLtURJSy/WzDnnUk/TM4d0uewFHK7xSQz4TbIwPgjky+3A==, } engines: { node: ">=20.9.0" } hasBin: true @@ -2949,10 +2945,10 @@ packages: sass: optional: true - node-addon-api@8.5.0: + node-addon-api@8.7.0: resolution: { - integrity: sha512-/bRZty2mXUIFY/xU5HLvveNHlswNJej+RnxBjOMkidWfwZzgTbPG1E3K5TOxRLOR+5hX7bSofy8yf1hZevMS8A==, + integrity: sha512-9MdFxmkKaOYVTV+XVRG8ArDwwQ77XIgIPyKASB1k3JPq3M8fGQQQE3YpMOrKm6g//Ktx8ivZr8xo1Qmtqub+GA==, } engines: { node: ^18 || ^20 || >= 21 } @@ -2963,16 +2959,16 @@ packages: } hasBin: true - node-releases@2.0.27: + node-releases@2.0.37: resolution: { - integrity: sha512-nmh3lCkYZ3grZvqcCH+fjmQ7X+H0OeZgP40OierEaAptX4XofMh5kwNbWh7lBduUzCcV/8kZ+NDLCwm2iorIlA==, + integrity: sha512-1h5gKZCF+pO/o3Iqt5Jp7wc9rH3eJJ0+nh/CIoiRwjRxde/hAHyLPXYN4V3CqKAbiZPSeJFSWHmJsbkicta0Eg==, } - oauth4webapi@3.8.3: + oauth4webapi@3.3.1: resolution: { - integrity: sha512-pQ5BsX3QRTgnt5HxgHwgunIRaDXBdkT23tf8dfzmtTIL2LTpdmxgbpbBm0VgFWAIDlezQvQCTgnVIUmHupXHxw==, + integrity: sha512-ZwX7UqYrP3Lr+Glhca3a1/nF2jqf7VVyJfhGuW5JtrfDUxt0u+IoBPzFjZ2dd7PJGkdM6CFPVVYzuDYKHv101A==, } object-assign@4.1.1: @@ -3113,16 +3109,16 @@ packages: } engines: { node: ">=4" } - pg-protocol@1.11.0: + pg-protocol@1.8.0: resolution: { - integrity: sha512-pfsxk2M9M3BuGgDOfuy37VNRRX3jmKgMjcvAcWqNDpZSf4cUmv8HSOl5ViRQFsfARFn0KuUQTgLxVMbNq5NW3g==, + integrity: sha512-jvuYlEkL03NRvOoyoRktBK7+qU5kOvlAwvmrH8sr3wbLrOdVWsRxQfz8mMy9sZFsqJ1hEWNfdWKI4SAmoL+j7g==, } - pg-types@4.1.0: + pg-types@4.0.2: resolution: { - integrity: sha512-o2XFanIMy/3+mThw69O8d4n1E5zsLhdO+OPqswezu7Z5ekP4hYDqlDjlmOpYMbzY2Br0ufCwJLdDIXeNVwcWFg==, + integrity: sha512-cRL3JpS3lKMGsKaWndugWQoLOCoP+Cic8oseVcbr0qhPzYD5DWXK+RZ9LY9wxRf7RQia4SCwQlXk0q6FCPrVng==, } engines: { node: ">=10" } @@ -3132,13 +3128,20 @@ packages: integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==, } - picomatch@2.3.2: + picomatch@2.3.1: resolution: { - integrity: sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA==, + integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==, } engines: { node: ">=8.6" } + picomatch@4.0.2: + resolution: + { + integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==, + } + engines: { node: ">=12" } + picomatch@4.0.4: resolution: { @@ -3146,18 +3149,18 @@ packages: } engines: { node: ">=12" } - playwright-core@1.58.1: + playwright-core@1.59.1: resolution: { - integrity: sha512-bcWzOaTxcW+VOOGBCQgnaKToLJ65d6AqfLVKEWvexyS3AS6rbXl+xdpYRMGSRBClPvyj44njOWoxjNdL/H9UNg==, + integrity: sha512-HBV/RJg81z5BiiZ9yPzIiClYV/QMsDCKUyogwH9p3MCP6IYjUFu/MActgYAvK0oWyV9NlwM3GLBjADyWgydVyg==, } engines: { node: ">=18" } hasBin: true - playwright@1.58.1: + playwright@1.59.1: resolution: { - integrity: sha512-+2uTZHxSCcxjvGc5C891LrS1/NlxglGxzrC4seZiVjcYVQfUa87wBL6rTDqzGjuoWNjnBzRqKmF6zRYGMvQUaQ==, + integrity: sha512-C8oWjPR3F81yljW9o5OxcWzfh6avkVwDD2VYdwIGqTkl+OGFISgypqzfu7dOe4QNLL2aqcWBmI3PMtLIK233lw==, } engines: { node: ">=18" } hasBin: true @@ -3169,10 +3172,10 @@ packages: } engines: { node: ">= 0.4" } - postcss-js@4.1.0: + postcss-js@4.0.1: resolution: { - integrity: sha512-oIAOTqgIo7q2EOwbhb8UalYePMvYoIeRY2YKntdpFQXNosSu3vLrniGgmH9OKs/qAkfoj5oB3le/7mINW1LCfw==, + integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==, } engines: { node: ^12 || ^14 || >= 16 } peerDependencies: @@ -3338,10 +3341,10 @@ packages: integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==, } - react-number-format@5.4.4: + react-number-format@5.4.5: resolution: { - integrity: sha512-wOmoNZoOpvMminhifQYiYSTCLUDOiUbBunrMrMjA+dV52sY+vck1S4UhR6PkgnoCquvvMSeJjErXZ4qSaWCliA==, + integrity: sha512-y8O2yHHj3w0aE9XO8d2BCcUOOdQTRSVq+WIuMlLVucAm5XNjJAy+BoOJiuQMldVYVOKTMyvVNfnbl2Oqp+YxGw==, } peerDependencies: react: ^0.14 || ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 @@ -3409,6 +3412,12 @@ packages: } engines: { node: ">= 0.4" } + regenerator-runtime@0.14.1: + resolution: + { + integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==, + } + regexp.prototype.flags@1.5.4: resolution: { @@ -3429,10 +3438,10 @@ packages: integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==, } - resolve@1.22.11: + resolve@1.22.10: resolution: { - integrity: sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ==, + integrity: sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==, } engines: { node: ">= 0.4" } hasBin: true @@ -3464,6 +3473,13 @@ packages: integrity: sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==, } + rspack-resolver@1.2.2: + resolution: + { + integrity: sha512-Fwc19jMBA3g+fxDJH2B4WxwZjE0VaaOL7OX/A4Wn5Zv7bOD/vyPZhzXfaO73Xc2GAlfi96g5fGUa378WbIGfFw==, + } + deprecated: Please migrate to the brand new `@rspack/resolver` or `unrs-resolver` instead + run-parallel@1.2.0: resolution: { @@ -3504,10 +3520,10 @@ packages: } hasBin: true - semver@7.7.3: + semver@7.7.1: resolution: { - integrity: sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==, + integrity: sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==, } engines: { node: ">=10" } hasBin: true @@ -3597,10 +3613,10 @@ packages: } engines: { node: ">=14" } - slice-ansi@7.1.2: + slice-ansi@7.1.0: resolution: { - integrity: sha512-iOBWFgUX7caIZiuutICxVgX1SdxwAVFFKwt1EvMYYec/NWO5meOJ6K5uQxhrYBdQJne4KxiqZc+KptFOWFSI9w==, + integrity: sha512-bSiSngZ/jWeX93BqeIAbImyTbEihizcwNjFoRUIY/T1wWQsfsm2Vw1agPKylXvQTU7iASGdHhyqRlqQzfz+Htg==, } engines: { node: ">=18" } @@ -3693,6 +3709,13 @@ packages: } engines: { node: ">= 0.4" } + strip-ansi@7.1.0: + resolution: + { + integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==, + } + engines: { node: ">=12" } + strip-ansi@7.2.0: resolution: { @@ -3753,10 +3776,10 @@ packages: } engines: { node: ">= 0.4" } - tabbable@6.4.0: + tabbable@6.2.0: resolution: { - integrity: sha512-05PUHKSNE8ou2dwIxTngl4EzcnsCDZGJ/iCLtDflR/SHB/ny14rXc+qU5P4mG9JkusiV7EivzY9Mhm55AzAvCg==, + integrity: sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==, } tinyexec@1.0.4: @@ -3766,6 +3789,13 @@ packages: } engines: { node: ">=18" } + tinyglobby@0.2.12: + resolution: + { + integrity: sha512-qkf4trmKSIiMTs/E63cxH+ojC2unam7rJ0WrauAzpT3ECNTxGRMlaXxVbfxMUC/w0LaYk6jQ4y/nGR9uBO3tww==, + } + engines: { node: ">=12.0.0" } + tinyglobby@0.2.15: resolution: { @@ -3780,15 +3810,6 @@ packages: } engines: { node: ">=8.0" } - ts-api-utils@2.4.0: - resolution: - { - integrity: sha512-3TaVTaAv2gTiMB35i3FiGJaRfwb3Pyn/j3m/bfAvGe8FB7CF6u+LMYqYlDh7reQf7UNvoTvdfAqHGmPGOSsPmA==, - } - engines: { node: ">=18.12" } - peerDependencies: - typescript: ">=4.8.4" - ts-api-utils@2.5.0: resolution: { @@ -3877,16 +3898,10 @@ packages: } engines: { node: ">= 0.4" } - undici-types@7.16.0: + undici-types@7.18.2: resolution: { - integrity: sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==, - } - - unrs-resolver@1.11.1: - resolution: - { - integrity: sha512-bSjt9pjaEBnNiGgc9rUiHGKv5l4/TGzDmYw3RhnkJGtLhbnnA/5qJj7x3dNDCRx/PJxu774LlH8lCOlB4hEfKg==, + integrity: sha512-AsuCzffGHJybSaRrmr5eHr81mwJU3kjw6M+uprWvCXiNeN9SOGwQ3Jn8jb8m3Z6izVgknn1R0FTCEAP2QrLY/w==, } update-browserslist-db@1.2.3: @@ -3929,10 +3944,10 @@ packages: "@types/react": optional: true - use-isomorphic-layout-effect@1.2.1: + use-isomorphic-layout-effect@1.2.0: resolution: { - integrity: sha512-tpZZ+EX0gaghDAiFR37hj5MgY6ZN55kLiPkJsKxBMZ6GZdOSPJXiOzPM984oPYZ5AnehYx5WQp1+ME8I/P/pRA==, + integrity: sha512-q6ayo8DWoPZT0VdG4u3D3uxcgONP3Mevx2i2b0434cwWBoL+aelL1DzkXI6w3PhTZzUeR2kaVlZn70iCiseP6w==, } peerDependencies: "@types/react": "*" @@ -4000,10 +4015,10 @@ packages: } engines: { node: ">= 0.4" } - which-typed-array@1.1.20: + which-typed-array@1.1.19: resolution: { - integrity: sha512-LYfpUkmqwl0h9A2HL09Mms427Q1RZWuOHsukfVcKRq9q95iQxdw0ix1JQrqbcDR9PH1QDwf5Qo8OZb5lksZ8Xg==, + integrity: sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw==, } engines: { node: ">= 0.4" } @@ -4022,17 +4037,17 @@ packages: } engines: { node: ">=0.10.0" } - wrap-ansi@9.0.2: + wrap-ansi@9.0.0: resolution: { - integrity: sha512-42AtmgqjV+X1VpdOfyTGOYRi0/zsoLqtXQckTmqTeybT+BDIbM/Guxo7x3pE2vtpr1ok6xRqM9OpBe+Jyoqyww==, + integrity: sha512-G8ura3S+3Z2G+mkgNRq8dqaFZAuxfsxpBB8OCTGRTCtp+l/v9nbFNmCUP1BZMts3G1142MsZfn6eeUKrr4PD1Q==, } engines: { node: ">=18" } - ws@8.19.0: + ws@8.18.1: resolution: { - integrity: sha512-blAT2mjOEIi0ZzruJfIhb3nps74PRWTCz1IjglWEEpQl5XS/UNama6u2/rjFkDDouqr4L67ry+1aGIALViWjDg==, + integrity: sha512-RKW2aJZMXeMxVpnZ6bck+RswznaxmzdULiBr6KY7XkTnW8uvt0iT9H5DkHUChXrc+uurzwa0rVI16n/Xzjdz1w==, } engines: { node: ">=10.0.0" } peerDependencies: @@ -4084,8 +4099,8 @@ snapshots: "@auth/core@0.41.0": dependencies: "@panva/hkdf": 1.2.1 - jose: 6.1.3 - oauth4webapi: 3.8.3 + jose: 6.2.2 + oauth4webapi: 3.3.1 preact: 10.24.3 preact-render-to-string: 6.5.11(preact@10.24.3) @@ -4100,26 +4115,26 @@ snapshots: "@babel/core@7.29.0": dependencies: "@babel/code-frame": 7.29.0 - "@babel/generator": 7.29.0 + "@babel/generator": 7.29.1 "@babel/helper-compilation-targets": 7.28.6 "@babel/helper-module-transforms": 7.28.6(@babel/core@7.29.0) - "@babel/helpers": 7.28.6 - "@babel/parser": 7.29.0 + "@babel/helpers": 7.29.2 + "@babel/parser": 7.29.2 "@babel/template": 7.28.6 "@babel/traverse": 7.29.0 "@babel/types": 7.29.0 "@jridgewell/remapping": 2.3.5 convert-source-map: 2.0.0 - debug: 4.4.3 + debug: 4.4.0 gensync: 1.0.0-beta.2 json5: 2.2.3 semver: 6.3.1 transitivePeerDependencies: - supports-color - "@babel/generator@7.29.0": + "@babel/generator@7.29.1": dependencies: - "@babel/parser": 7.29.0 + "@babel/parser": 7.29.2 "@babel/types": 7.29.0 "@jridgewell/gen-mapping": 0.3.13 "@jridgewell/trace-mapping": 0.3.31 @@ -4129,7 +4144,7 @@ snapshots: dependencies: "@babel/compat-data": 7.29.0 "@babel/helper-validator-option": 7.27.1 - browserslist: 4.28.1 + browserslist: 4.28.2 lru-cache: 5.1.1 semver: 6.3.1 @@ -4157,32 +4172,34 @@ snapshots: "@babel/helper-validator-option@7.27.1": {} - "@babel/helpers@7.28.6": + "@babel/helpers@7.29.2": dependencies: "@babel/template": 7.28.6 "@babel/types": 7.29.0 - "@babel/parser@7.29.0": + "@babel/parser@7.29.2": dependencies: "@babel/types": 7.29.0 - "@babel/runtime@7.28.6": {} + "@babel/runtime@7.26.10": + dependencies: + regenerator-runtime: 0.14.1 "@babel/template@7.28.6": dependencies: "@babel/code-frame": 7.29.0 - "@babel/parser": 7.29.0 + "@babel/parser": 7.29.2 "@babel/types": 7.29.0 "@babel/traverse@7.29.0": dependencies: "@babel/code-frame": 7.29.0 - "@babel/generator": 7.29.0 + "@babel/generator": 7.29.1 "@babel/helper-globals": 7.28.0 - "@babel/parser": 7.29.0 + "@babel/parser": 7.29.2 "@babel/template": 7.28.6 "@babel/types": 7.29.0 - debug: 4.4.3 + debug: 4.4.0 transitivePeerDependencies: - supports-color @@ -4191,38 +4208,45 @@ snapshots: "@babel/helper-string-parser": 7.27.1 "@babel/helper-validator-identifier": 7.28.5 - "@emnapi/core@1.9.1": + "@emnapi/core@1.3.1": dependencies: - "@emnapi/wasi-threads": 1.2.0 + "@emnapi/wasi-threads": 1.0.1 tslib: 2.8.1 optional: true - "@emnapi/runtime@1.8.1": + "@emnapi/runtime@1.3.1": dependencies: tslib: 2.8.1 optional: true - "@emnapi/runtime@1.9.1": + "@emnapi/runtime@1.9.2": dependencies: tslib: 2.8.1 optional: true - "@emnapi/wasi-threads@1.2.0": + "@emnapi/wasi-threads@1.0.1": dependencies: tslib: 2.8.1 optional: true - "@eslint-community/eslint-utils@4.9.1(eslint@9.39.2)": + "@eslint-community/eslint-utils@4.5.1(eslint@9.39.4)": dependencies: - eslint: 9.39.2 + eslint: 9.39.4 eslint-visitor-keys: 3.4.3 + "@eslint-community/eslint-utils@4.9.1(eslint@9.39.4)": + dependencies: + eslint: 9.39.4 + eslint-visitor-keys: 3.4.3 + + "@eslint-community/regexpp@4.12.1": {} + "@eslint-community/regexpp@4.12.2": {} - "@eslint/config-array@0.21.1": + "@eslint/config-array@0.21.2": dependencies: "@eslint/object-schema": 2.1.7 - debug: 4.4.3 + debug: 4.4.0 minimatch: 3.1.5 transitivePeerDependencies: - supports-color @@ -4235,10 +4259,10 @@ snapshots: dependencies: "@types/json-schema": 7.0.15 - "@eslint/eslintrc@3.3.3": + "@eslint/eslintrc@3.3.5": dependencies: ajv: 6.14.0 - debug: 4.4.3 + debug: 4.4.0 espree: 10.4.0 globals: 14.0.0 ignore: 5.3.2 @@ -4249,8 +4273,6 @@ snapshots: transitivePeerDependencies: - supports-color - "@eslint/js@9.39.2": {} - "@eslint/js@9.39.4": {} "@eslint/object-schema@2.1.7": {} @@ -4260,43 +4282,45 @@ snapshots: "@eslint/core": 0.17.0 levn: 0.4.1 - "@floating-ui/core@1.7.4": + "@floating-ui/core@1.7.5": dependencies: - "@floating-ui/utils": 0.2.10 + "@floating-ui/utils": 0.2.11 - "@floating-ui/dom@1.7.5": + "@floating-ui/dom@1.7.6": dependencies: - "@floating-ui/core": 1.7.4 - "@floating-ui/utils": 0.2.10 + "@floating-ui/core": 1.7.5 + "@floating-ui/utils": 0.2.11 - "@floating-ui/react-dom@2.1.7(react-dom@19.2.4(react@19.2.4))(react@19.2.4)": + "@floating-ui/react-dom@2.1.8(react-dom@19.2.4(react@19.2.4))(react@19.2.4)": dependencies: - "@floating-ui/dom": 1.7.5 + "@floating-ui/dom": 1.7.6 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) - "@floating-ui/react@0.27.17(react-dom@19.2.4(react@19.2.4))(react@19.2.4)": + "@floating-ui/react@0.27.19(react-dom@19.2.4(react@19.2.4))(react@19.2.4)": dependencies: - "@floating-ui/react-dom": 2.1.7(react-dom@19.2.4(react@19.2.4))(react@19.2.4) - "@floating-ui/utils": 0.2.10 + "@floating-ui/react-dom": 2.1.8(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + "@floating-ui/utils": 0.2.11 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) - tabbable: 6.4.0 + tabbable: 6.2.0 - "@floating-ui/utils@0.2.10": {} + "@floating-ui/utils@0.2.11": {} "@humanfs/core@0.19.1": {} - "@humanfs/node@0.16.7": + "@humanfs/node@0.16.6": dependencies: "@humanfs/core": 0.19.1 - "@humanwhocodes/retry": 0.4.3 + "@humanwhocodes/retry": 0.3.1 "@humanwhocodes/module-importer@1.0.1": {} - "@humanwhocodes/retry@0.4.3": {} + "@humanwhocodes/retry@0.3.1": {} - "@img/colour@1.0.0": {} + "@humanwhocodes/retry@0.4.2": {} + + "@img/colour@1.1.0": {} "@img/sharp-darwin-arm64@0.34.5": optionalDependencies: @@ -4380,7 +4404,7 @@ snapshots: "@img/sharp-wasm32@0.34.5": dependencies: - "@emnapi/runtime": 1.8.1 + "@emnapi/runtime": 1.9.2 optional: true "@img/sharp-win32-arm64@0.34.5": @@ -4411,14 +4435,14 @@ snapshots: "@jridgewell/resolve-uri": 3.1.2 "@jridgewell/sourcemap-codec": 1.5.5 - "@mantine/core@8.3.14(@mantine/hooks@8.3.14(react@19.2.4))(@types/react@19.2.14)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)": + "@mantine/core@8.3.18(@mantine/hooks@8.3.18(react@19.2.4))(@types/react@19.2.14)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)": dependencies: - "@floating-ui/react": 0.27.17(react-dom@19.2.4(react@19.2.4))(react@19.2.4) - "@mantine/hooks": 8.3.14(react@19.2.4) + "@floating-ui/react": 0.27.19(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + "@mantine/hooks": 8.3.18(react@19.2.4) clsx: 2.1.1 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) - react-number-format: 5.4.4(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + react-number-format: 5.4.5(react-dom@19.2.4(react@19.2.4))(react@19.2.4) react-remove-scroll: 2.7.2(@types/react@19.2.14)(react@19.2.4) react-textarea-autosize: 8.5.9(@types/react@19.2.14)(react@19.2.4) type-fest: 4.41.0 @@ -4431,22 +4455,22 @@ snapshots: klona: 2.0.6 react: 19.2.4 - "@mantine/hooks@8.3.14(react@19.2.4)": + "@mantine/hooks@8.3.18(react@19.2.4)": dependencies: react: 19.2.4 - "@napi-rs/wasm-runtime@0.2.12": + "@napi-rs/wasm-runtime@0.2.7": dependencies: - "@emnapi/core": 1.9.1 - "@emnapi/runtime": 1.9.1 - "@tybys/wasm-util": 0.10.1 + "@emnapi/core": 1.3.1 + "@emnapi/runtime": 1.3.1 + "@tybys/wasm-util": 0.9.0 optional: true "@neondatabase/serverless@0.9.5": dependencies: "@types/pg": 8.11.6 - "@next/env@16.2.1": {} + "@next/env@16.2.2": {} "@next/eslint-plugin-next@16.1.7": dependencies: @@ -4456,28 +4480,28 @@ snapshots: dependencies: fast-glob: 3.3.1 - "@next/swc-darwin-arm64@16.2.1": + "@next/swc-darwin-arm64@16.2.2": optional: true - "@next/swc-darwin-x64@16.2.1": + "@next/swc-darwin-x64@16.2.2": optional: true - "@next/swc-linux-arm64-gnu@16.2.1": + "@next/swc-linux-arm64-gnu@16.2.2": optional: true - "@next/swc-linux-arm64-musl@16.2.1": + "@next/swc-linux-arm64-musl@16.2.2": optional: true - "@next/swc-linux-x64-gnu@16.2.1": + "@next/swc-linux-x64-gnu@16.2.2": optional: true - "@next/swc-linux-x64-musl@16.2.1": + "@next/swc-linux-x64-musl@16.2.2": optional: true - "@next/swc-win32-arm64-msvc@16.2.1": + "@next/swc-win32-arm64-msvc@16.2.2": optional: true - "@next/swc-win32-x64-msvc@16.2.1": + "@next/swc-win32-x64-msvc@16.2.2": optional: true "@nodelib/fs.scandir@2.1.5": @@ -4490,15 +4514,15 @@ snapshots: "@nodelib/fs.walk@1.2.8": dependencies: "@nodelib/fs.scandir": 2.1.5 - fastq: 1.20.1 + fastq: 1.19.1 "@nolyfill/is-core-module@1.0.39": {} "@panva/hkdf@1.2.1": {} - "@playwright/test@1.58.1": + "@playwright/test@1.59.1": dependencies: - playwright: 1.58.1 + playwright: 1.59.1 "@rtsao/scc@1.1.0": {} @@ -4506,37 +4530,37 @@ snapshots: dependencies: tslib: 2.8.1 - "@tabler/icons-react@3.36.1(react@19.2.4)": + "@tabler/icons-react@3.41.1(react@19.2.4)": dependencies: - "@tabler/icons": 3.36.1 + "@tabler/icons": 3.41.1 react: 19.2.4 - "@tabler/icons@3.36.1": {} + "@tabler/icons@3.41.1": {} - "@tybys/wasm-util@0.10.1": + "@tybys/wasm-util@0.9.0": dependencies: tslib: 2.8.1 optional: true "@types/bcrypt@6.0.0": dependencies: - "@types/node": 25.2.0 + "@types/node": 25.5.2 - "@types/estree@1.0.8": {} + "@types/estree@1.0.6": {} "@types/json-schema@7.0.15": {} "@types/json5@0.0.29": {} - "@types/node@25.2.0": + "@types/node@25.5.2": dependencies: - undici-types: 7.16.0 + undici-types: 7.18.2 "@types/pg@8.11.6": dependencies: - "@types/node": 25.2.0 - pg-protocol: 1.11.0 - pg-types: 4.1.0 + "@types/node": 25.5.2 + pg-protocol: 1.8.0 + pg-types: 4.0.2 "@types/react-dom@19.2.3(@types/react@19.2.14)": dependencies: @@ -4546,66 +4570,66 @@ snapshots: dependencies: csstype: 3.2.3 - "@typescript-eslint/eslint-plugin@8.54.0(@typescript-eslint/parser@8.54.0(eslint@9.39.2)(typescript@5.9.3))(eslint@9.39.2)(typescript@5.9.3)": + "@typescript-eslint/eslint-plugin@8.54.0(@typescript-eslint/parser@8.54.0(eslint@9.39.4)(typescript@5.9.3))(eslint@9.39.4)(typescript@5.9.3)": dependencies: "@eslint-community/regexpp": 4.12.2 - "@typescript-eslint/parser": 8.54.0(eslint@9.39.2)(typescript@5.9.3) + "@typescript-eslint/parser": 8.54.0(eslint@9.39.4)(typescript@5.9.3) "@typescript-eslint/scope-manager": 8.54.0 - "@typescript-eslint/type-utils": 8.54.0(eslint@9.39.2)(typescript@5.9.3) - "@typescript-eslint/utils": 8.54.0(eslint@9.39.2)(typescript@5.9.3) + "@typescript-eslint/type-utils": 8.54.0(eslint@9.39.4)(typescript@5.9.3) + "@typescript-eslint/utils": 8.54.0(eslint@9.39.4)(typescript@5.9.3) "@typescript-eslint/visitor-keys": 8.54.0 - eslint: 9.39.2 + eslint: 9.39.4 ignore: 7.0.5 natural-compare: 1.4.0 - ts-api-utils: 2.4.0(typescript@5.9.3) + ts-api-utils: 2.5.0(typescript@5.9.3) typescript: 5.9.3 transitivePeerDependencies: - supports-color - "@typescript-eslint/eslint-plugin@8.54.0(@typescript-eslint/parser@8.58.0(eslint@9.39.2)(typescript@5.9.3))(eslint@9.39.2)(typescript@5.9.3)": + "@typescript-eslint/eslint-plugin@8.58.0(@typescript-eslint/parser@8.58.0(eslint@9.39.4)(typescript@5.9.3))(eslint@9.39.4)(typescript@5.9.3)": dependencies: "@eslint-community/regexpp": 4.12.2 - "@typescript-eslint/parser": 8.58.0(eslint@9.39.2)(typescript@5.9.3) - "@typescript-eslint/scope-manager": 8.54.0 - "@typescript-eslint/type-utils": 8.54.0(eslint@9.39.2)(typescript@5.9.3) - "@typescript-eslint/utils": 8.54.0(eslint@9.39.2)(typescript@5.9.3) - "@typescript-eslint/visitor-keys": 8.54.0 - eslint: 9.39.2 + "@typescript-eslint/parser": 8.58.0(eslint@9.39.4)(typescript@5.9.3) + "@typescript-eslint/scope-manager": 8.58.0 + "@typescript-eslint/type-utils": 8.58.0(eslint@9.39.4)(typescript@5.9.3) + "@typescript-eslint/utils": 8.58.0(eslint@9.39.4)(typescript@5.9.3) + "@typescript-eslint/visitor-keys": 8.58.0 + eslint: 9.39.4 ignore: 7.0.5 natural-compare: 1.4.0 - ts-api-utils: 2.4.0(typescript@5.9.3) + ts-api-utils: 2.5.0(typescript@5.9.3) typescript: 5.9.3 transitivePeerDependencies: - supports-color - "@typescript-eslint/parser@8.54.0(eslint@9.39.2)(typescript@5.9.3)": + "@typescript-eslint/parser@8.54.0(eslint@9.39.4)(typescript@5.9.3)": dependencies: "@typescript-eslint/scope-manager": 8.54.0 "@typescript-eslint/types": 8.54.0 "@typescript-eslint/typescript-estree": 8.54.0(typescript@5.9.3) "@typescript-eslint/visitor-keys": 8.54.0 debug: 4.4.3 - eslint: 9.39.2 + eslint: 9.39.4 typescript: 5.9.3 transitivePeerDependencies: - supports-color - "@typescript-eslint/parser@8.58.0(eslint@9.39.2)(typescript@5.9.3)": + "@typescript-eslint/parser@8.58.0(eslint@9.39.4)(typescript@5.9.3)": dependencies: "@typescript-eslint/scope-manager": 8.58.0 "@typescript-eslint/types": 8.58.0 "@typescript-eslint/typescript-estree": 8.58.0(typescript@5.9.3) "@typescript-eslint/visitor-keys": 8.58.0 debug: 4.4.3 - eslint: 9.39.2 + eslint: 9.39.4 typescript: 5.9.3 transitivePeerDependencies: - supports-color "@typescript-eslint/project-service@8.54.0(typescript@5.9.3)": dependencies: - "@typescript-eslint/tsconfig-utils": 8.58.0(typescript@5.9.3) - "@typescript-eslint/types": 8.58.0 + "@typescript-eslint/tsconfig-utils": 8.54.0(typescript@5.9.3) + "@typescript-eslint/types": 8.54.0 debug: 4.4.3 typescript: 5.9.3 transitivePeerDependencies: @@ -4638,14 +4662,26 @@ snapshots: dependencies: typescript: 5.9.3 - "@typescript-eslint/type-utils@8.54.0(eslint@9.39.2)(typescript@5.9.3)": + "@typescript-eslint/type-utils@8.54.0(eslint@9.39.4)(typescript@5.9.3)": dependencies: "@typescript-eslint/types": 8.54.0 "@typescript-eslint/typescript-estree": 8.54.0(typescript@5.9.3) - "@typescript-eslint/utils": 8.54.0(eslint@9.39.2)(typescript@5.9.3) + "@typescript-eslint/utils": 8.54.0(eslint@9.39.4)(typescript@5.9.3) debug: 4.4.3 - eslint: 9.39.2 - ts-api-utils: 2.4.0(typescript@5.9.3) + eslint: 9.39.4 + ts-api-utils: 2.5.0(typescript@5.9.3) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + "@typescript-eslint/type-utils@8.58.0(eslint@9.39.4)(typescript@5.9.3)": + dependencies: + "@typescript-eslint/types": 8.58.0 + "@typescript-eslint/typescript-estree": 8.58.0(typescript@5.9.3) + "@typescript-eslint/utils": 8.58.0(eslint@9.39.4)(typescript@5.9.3) + debug: 4.4.3 + eslint: 9.39.4 + ts-api-utils: 2.5.0(typescript@5.9.3) typescript: 5.9.3 transitivePeerDependencies: - supports-color @@ -4661,10 +4697,10 @@ snapshots: "@typescript-eslint/types": 8.54.0 "@typescript-eslint/visitor-keys": 8.54.0 debug: 4.4.3 - minimatch: 9.0.9 - semver: 7.7.3 + minimatch: 9.0.5 + semver: 7.7.4 tinyglobby: 0.2.15 - ts-api-utils: 2.4.0(typescript@5.9.3) + ts-api-utils: 2.5.0(typescript@5.9.3) typescript: 5.9.3 transitivePeerDependencies: - supports-color @@ -4684,13 +4720,24 @@ snapshots: transitivePeerDependencies: - supports-color - "@typescript-eslint/utils@8.54.0(eslint@9.39.2)(typescript@5.9.3)": + "@typescript-eslint/utils@8.54.0(eslint@9.39.4)(typescript@5.9.3)": dependencies: - "@eslint-community/eslint-utils": 4.9.1(eslint@9.39.2) + "@eslint-community/eslint-utils": 4.9.1(eslint@9.39.4) "@typescript-eslint/scope-manager": 8.54.0 "@typescript-eslint/types": 8.54.0 "@typescript-eslint/typescript-estree": 8.54.0(typescript@5.9.3) - eslint: 9.39.2 + eslint: 9.39.4 + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + "@typescript-eslint/utils@8.58.0(eslint@9.39.4)(typescript@5.9.3)": + dependencies: + "@eslint-community/eslint-utils": 4.9.1(eslint@9.39.4) + "@typescript-eslint/scope-manager": 8.58.0 + "@typescript-eslint/types": 8.58.0 + "@typescript-eslint/typescript-estree": 8.58.0(typescript@5.9.3) + eslint: 9.39.4 typescript: 5.9.3 transitivePeerDependencies: - supports-color @@ -4705,88 +4752,64 @@ snapshots: "@typescript-eslint/types": 8.58.0 eslint-visitor-keys: 5.0.1 - "@unrs/resolver-binding-android-arm-eabi@1.11.1": - optional: true - - "@unrs/resolver-binding-android-arm64@1.11.1": - optional: true - - "@unrs/resolver-binding-darwin-arm64@1.11.1": - optional: true - - "@unrs/resolver-binding-darwin-x64@1.11.1": - optional: true - - "@unrs/resolver-binding-freebsd-x64@1.11.1": - optional: true - - "@unrs/resolver-binding-linux-arm-gnueabihf@1.11.1": - optional: true - - "@unrs/resolver-binding-linux-arm-musleabihf@1.11.1": - optional: true - - "@unrs/resolver-binding-linux-arm64-gnu@1.11.1": + "@unrs/rspack-resolver-binding-darwin-arm64@1.2.2": optional: true - "@unrs/resolver-binding-linux-arm64-musl@1.11.1": + "@unrs/rspack-resolver-binding-darwin-x64@1.2.2": optional: true - "@unrs/resolver-binding-linux-ppc64-gnu@1.11.1": + "@unrs/rspack-resolver-binding-freebsd-x64@1.2.2": optional: true - "@unrs/resolver-binding-linux-riscv64-gnu@1.11.1": + "@unrs/rspack-resolver-binding-linux-arm-gnueabihf@1.2.2": optional: true - "@unrs/resolver-binding-linux-riscv64-musl@1.11.1": + "@unrs/rspack-resolver-binding-linux-arm64-gnu@1.2.2": optional: true - "@unrs/resolver-binding-linux-s390x-gnu@1.11.1": + "@unrs/rspack-resolver-binding-linux-arm64-musl@1.2.2": optional: true - "@unrs/resolver-binding-linux-x64-gnu@1.11.1": + "@unrs/rspack-resolver-binding-linux-x64-gnu@1.2.2": optional: true - "@unrs/resolver-binding-linux-x64-musl@1.11.1": + "@unrs/rspack-resolver-binding-linux-x64-musl@1.2.2": optional: true - "@unrs/resolver-binding-wasm32-wasi@1.11.1": + "@unrs/rspack-resolver-binding-wasm32-wasi@1.2.2": dependencies: - "@napi-rs/wasm-runtime": 0.2.12 + "@napi-rs/wasm-runtime": 0.2.7 optional: true - "@unrs/resolver-binding-win32-arm64-msvc@1.11.1": + "@unrs/rspack-resolver-binding-win32-arm64-msvc@1.2.2": optional: true - "@unrs/resolver-binding-win32-ia32-msvc@1.11.1": + "@unrs/rspack-resolver-binding-win32-x64-msvc@1.2.2": optional: true - "@unrs/resolver-binding-win32-x64-msvc@1.11.1": - optional: true - - "@vercel/analytics@1.6.1(next@16.2.1(@babel/core@7.29.0)(@playwright/test@1.58.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4)": + "@vercel/analytics@1.6.1(next@16.2.2(@babel/core@7.29.0)(@playwright/test@1.59.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4)": optionalDependencies: - next: 16.2.1(@babel/core@7.29.0)(@playwright/test@1.58.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + next: 16.2.2(@babel/core@7.29.0)(@playwright/test@1.59.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) react: 19.2.4 "@vercel/postgres@0.10.0": dependencies: "@neondatabase/serverless": 0.9.5 - bufferutil: 4.1.0 - ws: 8.19.0(bufferutil@4.1.0) + bufferutil: 4.0.9 + ws: 8.18.1(bufferutil@4.0.9) transitivePeerDependencies: - utf-8-validate - "@vercel/speed-insights@1.3.1(next@16.2.1(@babel/core@7.29.0)(@playwright/test@1.58.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4)": + "@vercel/speed-insights@1.3.1(next@16.2.2(@babel/core@7.29.0)(@playwright/test@1.59.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4)": optionalDependencies: - next: 16.2.1(@babel/core@7.29.0)(@playwright/test@1.58.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + next: 16.2.2(@babel/core@7.29.0)(@playwright/test@1.59.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) react: 19.2.4 - acorn-jsx@5.3.2(acorn@8.15.0): + acorn-jsx@5.3.2(acorn@8.16.0): dependencies: - acorn: 8.15.0 + acorn: 8.16.0 - acorn@8.15.0: {} + acorn@8.16.0: {} ajv@6.14.0: dependencies: @@ -4795,16 +4818,20 @@ snapshots: json-schema-traverse: 0.4.1 uri-js: 4.4.1 - ansi-escapes@7.3.0: + ansi-escapes@7.0.0: dependencies: environment: 1.1.0 + ansi-regex@6.1.0: {} + ansi-regex@6.2.2: {} ansi-styles@4.3.0: dependencies: color-convert: 2.0.1 + ansi-styles@6.2.1: {} + ansi-styles@6.2.3: {} argparse@2.0.1: {} @@ -4816,6 +4843,15 @@ snapshots: call-bound: 1.0.4 is-array-buffer: 3.0.5 + array-includes@3.1.8: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.23.9 + es-object-atoms: 1.1.1 + get-intrinsic: 1.3.0 + is-string: 1.1.1 + array-includes@3.1.9: dependencies: call-bind: 1.0.8 @@ -4831,7 +4867,7 @@ snapshots: dependencies: call-bind: 1.0.8 define-properties: 1.2.1 - es-abstract: 1.24.1 + es-abstract: 1.23.9 es-errors: 1.3.0 es-object-atoms: 1.1.1 es-shim-unscopables: 1.1.0 @@ -4841,7 +4877,7 @@ snapshots: call-bind: 1.0.8 call-bound: 1.0.4 define-properties: 1.2.1 - es-abstract: 1.24.1 + es-abstract: 1.23.9 es-errors: 1.3.0 es-object-atoms: 1.1.1 es-shim-unscopables: 1.1.0 @@ -4850,21 +4886,21 @@ snapshots: dependencies: call-bind: 1.0.8 define-properties: 1.2.1 - es-abstract: 1.24.1 + es-abstract: 1.23.9 es-shim-unscopables: 1.1.0 array.prototype.flatmap@1.3.3: dependencies: call-bind: 1.0.8 define-properties: 1.2.1 - es-abstract: 1.24.1 + es-abstract: 1.23.9 es-shim-unscopables: 1.1.0 array.prototype.tosorted@1.1.4: dependencies: call-bind: 1.0.8 define-properties: 1.2.1 - es-abstract: 1.24.1 + es-abstract: 1.23.9 es-errors: 1.3.0 es-shim-unscopables: 1.1.0 @@ -4873,7 +4909,7 @@ snapshots: array-buffer-byte-length: 1.0.2 call-bind: 1.0.8 define-properties: 1.2.1 - es-abstract: 1.24.1 + es-abstract: 1.23.9 es-errors: 1.3.0 get-intrinsic: 1.3.0 is-array-buffer: 3.0.5 @@ -4886,7 +4922,7 @@ snapshots: dependencies: possible-typed-array-names: 1.1.0 - axe-core@4.11.1: {} + axe-core@4.10.3: {} axobject-query@4.1.0: {} @@ -4894,19 +4930,19 @@ snapshots: balanced-match@4.0.4: {} - baseline-browser-mapping@2.9.19: {} + baseline-browser-mapping@2.10.14: {} bcrypt@6.0.0: dependencies: - node-addon-api: 8.5.0 + node-addon-api: 8.7.0 node-gyp-build: 4.8.4 - brace-expansion@1.1.13: + brace-expansion@1.1.11: dependencies: balanced-match: 1.0.2 concat-map: 0.0.1 - brace-expansion@2.0.3: + brace-expansion@2.0.1: dependencies: balanced-match: 1.0.2 @@ -4918,15 +4954,15 @@ snapshots: dependencies: fill-range: 7.1.1 - browserslist@4.28.1: + browserslist@4.28.2: dependencies: - baseline-browser-mapping: 2.9.19 - caniuse-lite: 1.0.30001767 - electron-to-chromium: 1.5.283 - node-releases: 2.0.27 - update-browserslist-db: 1.2.3(browserslist@4.28.1) + baseline-browser-mapping: 2.10.14 + caniuse-lite: 1.0.30001785 + electron-to-chromium: 1.5.331 + node-releases: 2.0.37 + update-browserslist-db: 1.2.3(browserslist@4.28.2) - bufferutil@4.1.0: + bufferutil@4.0.9: dependencies: node-gyp-build: 4.8.4 @@ -4951,7 +4987,9 @@ snapshots: camelcase-css@2.0.1: {} - caniuse-lite@1.0.30001767: {} + caniuse-lite@1.0.30001706: {} + + caniuse-lite@1.0.30001785: {} chalk@4.1.2: dependencies: @@ -5019,6 +5057,10 @@ snapshots: dependencies: ms: 2.1.3 + debug@4.4.0: + dependencies: + ms: 2.1.3 + debug@4.4.3: dependencies: ms: 2.1.3 @@ -5053,14 +5095,68 @@ snapshots: es-errors: 1.3.0 gopd: 1.2.0 - electron-to-chromium@1.5.283: {} + electron-to-chromium@1.5.331: {} - emoji-regex@10.6.0: {} + emoji-regex@10.4.0: {} emoji-regex@9.2.2: {} environment@1.1.0: {} + es-abstract@1.23.9: + dependencies: + array-buffer-byte-length: 1.0.2 + arraybuffer.prototype.slice: 1.0.4 + available-typed-arrays: 1.0.7 + call-bind: 1.0.8 + call-bound: 1.0.4 + data-view-buffer: 1.0.2 + data-view-byte-length: 1.0.2 + data-view-byte-offset: 1.0.1 + es-define-property: 1.0.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + es-set-tostringtag: 2.1.0 + es-to-primitive: 1.3.0 + function.prototype.name: 1.1.8 + get-intrinsic: 1.3.0 + get-proto: 1.0.1 + get-symbol-description: 1.1.0 + globalthis: 1.0.4 + gopd: 1.2.0 + has-property-descriptors: 1.0.2 + has-proto: 1.2.0 + has-symbols: 1.1.0 + hasown: 2.0.2 + internal-slot: 1.1.0 + is-array-buffer: 3.0.5 + is-callable: 1.2.7 + is-data-view: 1.0.2 + is-regex: 1.2.1 + is-shared-array-buffer: 1.0.4 + is-string: 1.1.1 + is-typed-array: 1.1.15 + is-weakref: 1.1.1 + math-intrinsics: 1.1.0 + object-inspect: 1.13.4 + object-keys: 1.1.1 + object.assign: 4.1.7 + own-keys: 1.0.1 + regexp.prototype.flags: 1.5.4 + safe-array-concat: 1.1.3 + safe-push-apply: 1.0.0 + safe-regex-test: 1.1.0 + set-proto: 1.0.0 + string.prototype.trim: 1.2.10 + string.prototype.trimend: 1.0.9 + string.prototype.trimstart: 1.0.8 + typed-array-buffer: 1.0.3 + typed-array-byte-length: 1.0.3 + typed-array-byte-offset: 1.0.4 + typed-array-length: 1.0.7 + unbox-primitive: 1.1.0 + which-typed-array: 1.1.19 + es-abstract@1.24.1: dependencies: array-buffer-byte-length: 1.0.2 @@ -5116,18 +5212,18 @@ snapshots: typed-array-byte-offset: 1.0.4 typed-array-length: 1.0.7 unbox-primitive: 1.1.0 - which-typed-array: 1.1.20 + which-typed-array: 1.1.19 es-define-property@1.0.1: {} es-errors@1.3.0: {} - es-iterator-helpers@1.2.2: + es-iterator-helpers@1.2.1: dependencies: call-bind: 1.0.8 call-bound: 1.0.4 define-properties: 1.2.1 - es-abstract: 1.24.1 + es-abstract: 1.23.9 es-errors: 1.3.0 es-set-tostringtag: 2.1.0 function-bind: 1.1.2 @@ -5166,18 +5262,18 @@ snapshots: escape-string-regexp@4.0.0: {} - eslint-config-next@16.2.2(@typescript-eslint/parser@8.58.0(eslint@9.39.2)(typescript@5.9.3))(eslint@9.39.2)(typescript@5.9.3): + eslint-config-next@16.2.2(@typescript-eslint/parser@8.58.0(eslint@9.39.4)(typescript@5.9.3))(eslint@9.39.4)(typescript@5.9.3): dependencies: "@next/eslint-plugin-next": 16.2.2 - eslint: 9.39.2 + eslint: 9.39.4 eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.10.1(eslint-plugin-import@2.32.0)(eslint@9.39.2) - eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.58.0(eslint@9.39.2)(typescript@5.9.3))(eslint-import-resolver-typescript@3.10.1)(eslint@9.39.2) - eslint-plugin-jsx-a11y: 6.10.2(eslint@9.39.2) - eslint-plugin-react: 7.37.5(eslint@9.39.2) - eslint-plugin-react-hooks: 7.0.1(eslint@9.39.2) + eslint-import-resolver-typescript: 3.9.1(eslint-plugin-import@2.32.0)(eslint@9.39.4) + eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.58.0(eslint@9.39.4)(typescript@5.9.3))(eslint-import-resolver-typescript@3.9.1)(eslint@9.39.4) + eslint-plugin-jsx-a11y: 6.10.2(eslint@9.39.4) + eslint-plugin-react: 7.37.5(eslint@9.39.4) + eslint-plugin-react-hooks: 7.0.1(eslint@9.39.4) globals: 16.4.0 - typescript-eslint: 8.54.0(eslint@9.39.2)(typescript@5.9.3) + typescript-eslint: 8.54.0(eslint@9.39.4)(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 transitivePeerDependencies: @@ -5186,45 +5282,45 @@ snapshots: - eslint-plugin-import-x - supports-color - eslint-config-prettier@10.1.8(eslint@9.39.2): + eslint-config-prettier@10.1.8(eslint@9.39.4): dependencies: - eslint: 9.39.2 + eslint: 9.39.4 eslint-import-resolver-node@0.3.9: dependencies: debug: 3.2.7 is-core-module: 2.16.1 - resolve: 1.22.11 + resolve: 1.22.10 transitivePeerDependencies: - supports-color - eslint-import-resolver-typescript@3.10.1(eslint-plugin-import@2.32.0)(eslint@9.39.2): + eslint-import-resolver-typescript@3.9.1(eslint-plugin-import@2.32.0)(eslint@9.39.4): dependencies: "@nolyfill/is-core-module": 1.0.39 - debug: 4.4.3 - eslint: 9.39.2 - get-tsconfig: 4.13.7 - is-bun-module: 2.0.0 + debug: 4.4.0 + eslint: 9.39.4 + get-tsconfig: 4.10.0 + is-bun-module: 1.3.0 + rspack-resolver: 1.2.2 stable-hash: 0.0.5 - tinyglobby: 0.2.15 - unrs-resolver: 1.11.1 + tinyglobby: 0.2.12 optionalDependencies: - eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.58.0(eslint@9.39.2)(typescript@5.9.3))(eslint-import-resolver-typescript@3.10.1)(eslint@9.39.2) + eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.58.0(eslint@9.39.4)(typescript@5.9.3))(eslint-import-resolver-typescript@3.9.1)(eslint@9.39.4) transitivePeerDependencies: - supports-color - eslint-module-utils@2.12.1(@typescript-eslint/parser@8.58.0(eslint@9.39.2)(typescript@5.9.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.1)(eslint@9.39.2): + eslint-module-utils@2.12.1(@typescript-eslint/parser@8.58.0(eslint@9.39.4)(typescript@5.9.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.9.1)(eslint@9.39.4): dependencies: debug: 3.2.7 optionalDependencies: - "@typescript-eslint/parser": 8.58.0(eslint@9.39.2)(typescript@5.9.3) - eslint: 9.39.2 + "@typescript-eslint/parser": 8.58.0(eslint@9.39.4)(typescript@5.9.3) + eslint: 9.39.4 eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.10.1(eslint-plugin-import@2.32.0)(eslint@9.39.2) + eslint-import-resolver-typescript: 3.9.1(eslint-plugin-import@2.32.0)(eslint@9.39.4) transitivePeerDependencies: - supports-color - eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.58.0(eslint@9.39.2)(typescript@5.9.3))(eslint-import-resolver-typescript@3.10.1)(eslint@9.39.2): + eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.58.0(eslint@9.39.4)(typescript@5.9.3))(eslint-import-resolver-typescript@3.9.1)(eslint@9.39.4): dependencies: "@rtsao/scc": 1.1.0 array-includes: 3.1.9 @@ -5233,13 +5329,13 @@ snapshots: array.prototype.flatmap: 1.3.3 debug: 3.2.7 doctrine: 2.1.0 - eslint: 9.39.2 + eslint: 9.39.4 eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.12.1(@typescript-eslint/parser@8.58.0(eslint@9.39.2)(typescript@5.9.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.1)(eslint@9.39.2) + eslint-module-utils: 2.12.1(@typescript-eslint/parser@8.58.0(eslint@9.39.4)(typescript@5.9.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.9.1)(eslint@9.39.4) hasown: 2.0.2 is-core-module: 2.16.1 is-glob: 4.0.3 - minimatch: 3.1.5 + minimatch: 3.1.2 object.fromentries: 2.0.8 object.groupby: 1.0.3 object.values: 1.2.1 @@ -5247,62 +5343,62 @@ snapshots: string.prototype.trimend: 1.0.9 tsconfig-paths: 3.15.0 optionalDependencies: - "@typescript-eslint/parser": 8.58.0(eslint@9.39.2)(typescript@5.9.3) + "@typescript-eslint/parser": 8.58.0(eslint@9.39.4)(typescript@5.9.3) transitivePeerDependencies: - eslint-import-resolver-typescript - eslint-import-resolver-webpack - supports-color - eslint-plugin-jsx-a11y@6.10.2(eslint@9.39.2): + eslint-plugin-jsx-a11y@6.10.2(eslint@9.39.4): dependencies: aria-query: 5.3.2 - array-includes: 3.1.9 + array-includes: 3.1.8 array.prototype.flatmap: 1.3.3 ast-types-flow: 0.0.8 - axe-core: 4.11.1 + axe-core: 4.10.3 axobject-query: 4.1.0 damerau-levenshtein: 1.0.8 emoji-regex: 9.2.2 - eslint: 9.39.2 + eslint: 9.39.4 hasown: 2.0.2 jsx-ast-utils: 3.3.5 language-tags: 1.0.9 - minimatch: 3.1.5 + minimatch: 3.1.2 object.fromentries: 2.0.8 safe-regex-test: 1.1.0 string.prototype.includes: 2.0.1 eslint-plugin-next@0.0.0: {} - eslint-plugin-promise@7.2.1(eslint@9.39.2): + eslint-plugin-promise@7.2.1(eslint@9.39.4): dependencies: - "@eslint-community/eslint-utils": 4.9.1(eslint@9.39.2) - eslint: 9.39.2 + "@eslint-community/eslint-utils": 4.5.1(eslint@9.39.4) + eslint: 9.39.4 - eslint-plugin-react-hooks@7.0.1(eslint@9.39.2): + eslint-plugin-react-hooks@7.0.1(eslint@9.39.4): dependencies: "@babel/core": 7.29.0 - "@babel/parser": 7.29.0 - eslint: 9.39.2 + "@babel/parser": 7.29.2 + eslint: 9.39.4 hermes-parser: 0.25.1 zod: 4.3.6 zod-validation-error: 4.0.2(zod@4.3.6) transitivePeerDependencies: - supports-color - eslint-plugin-react@7.37.5(eslint@9.39.2): + eslint-plugin-react@7.37.5(eslint@9.39.4): dependencies: - array-includes: 3.1.9 + array-includes: 3.1.8 array.prototype.findlast: 1.2.5 array.prototype.flatmap: 1.3.3 array.prototype.tosorted: 1.1.4 doctrine: 2.1.0 - es-iterator-helpers: 1.2.2 - eslint: 9.39.2 + es-iterator-helpers: 1.2.1 + eslint: 9.39.4 estraverse: 5.3.0 hasown: 2.0.2 jsx-ast-utils: 3.3.5 - minimatch: 3.1.5 + minimatch: 3.1.2 object.entries: 1.1.9 object.fromentries: 2.0.8 object.values: 1.2.1 @@ -5323,29 +5419,29 @@ snapshots: eslint-visitor-keys@5.0.1: {} - eslint@9.39.2: + eslint@9.39.4: dependencies: - "@eslint-community/eslint-utils": 4.9.1(eslint@9.39.2) - "@eslint-community/regexpp": 4.12.2 - "@eslint/config-array": 0.21.1 + "@eslint-community/eslint-utils": 4.9.1(eslint@9.39.4) + "@eslint-community/regexpp": 4.12.1 + "@eslint/config-array": 0.21.2 "@eslint/config-helpers": 0.4.2 "@eslint/core": 0.17.0 - "@eslint/eslintrc": 3.3.3 - "@eslint/js": 9.39.2 + "@eslint/eslintrc": 3.3.5 + "@eslint/js": 9.39.4 "@eslint/plugin-kit": 0.4.1 - "@humanfs/node": 0.16.7 + "@humanfs/node": 0.16.6 "@humanwhocodes/module-importer": 1.0.1 - "@humanwhocodes/retry": 0.4.3 - "@types/estree": 1.0.8 + "@humanwhocodes/retry": 0.4.2 + "@types/estree": 1.0.6 ajv: 6.14.0 chalk: 4.1.2 cross-spawn: 7.0.6 - debug: 4.4.3 + debug: 4.4.0 escape-string-regexp: 4.0.0 eslint-scope: 8.4.0 eslint-visitor-keys: 4.2.1 espree: 10.4.0 - esquery: 1.7.0 + esquery: 1.6.0 esutils: 2.0.3 fast-deep-equal: 3.1.3 file-entry-cache: 8.0.0 @@ -5364,11 +5460,11 @@ snapshots: espree@10.4.0: dependencies: - acorn: 8.15.0 - acorn-jsx: 5.3.2(acorn@8.15.0) + acorn: 8.16.0 + acorn-jsx: 5.3.2(acorn@8.16.0) eslint-visitor-keys: 4.2.1 - esquery@1.7.0: + esquery@1.6.0: dependencies: estraverse: 5.3.0 @@ -5380,7 +5476,7 @@ snapshots: esutils@2.0.3: {} - eventemitter3@5.0.4: {} + eventemitter3@5.0.1: {} fast-deep-equal@3.1.3: {} @@ -5396,10 +5492,14 @@ snapshots: fast-levenshtein@2.0.6: {} - fastq@1.20.1: + fastq@1.19.1: dependencies: reusify: 1.1.0 + fdir@6.4.3(picomatch@4.0.2): + optionalDependencies: + picomatch: 4.0.2 + fdir@6.5.0(picomatch@4.0.4): optionalDependencies: picomatch: 4.0.4 @@ -5428,20 +5528,14 @@ snapshots: dependencies: is-callable: 1.2.7 - framer-motion@12.6.2(react-dom@19.0.0(react@19.0.0))(react@19.0.0): + framer-motion@12.6.2(react-dom@19.2.4(react@19.2.4))(react@19.2.4): dependencies: motion-dom: 12.6.1 motion-utils: 12.5.0 tslib: 2.8.1 optionalDependencies: - react: 19.0.0 - react-dom: 19.0.0(react@19.0.0) - - fs-minipass@2.1.0: - dependencies: - minipass: 3.3.6 - - fs.realpath@1.0.0: {} + react: 19.2.4 + react-dom: 19.2.4(react@19.2.4) fsevents@2.3.2: optional: true @@ -5459,10 +5553,10 @@ snapshots: functions-have-names@1.2.3: {} - generator-function@2.0.1: {} - gensync@1.0.0-beta.2: {} + get-east-asian-width@1.3.0: {} + get-east-asian-width@1.5.0: {} get-intrinsic@1.3.0: @@ -5491,7 +5585,7 @@ snapshots: es-errors: 1.3.0 get-intrinsic: 1.3.0 - get-tsconfig@4.13.7: + get-tsconfig@4.10.0: dependencies: resolve-pkg-maps: 1.0.0 @@ -5584,9 +5678,9 @@ snapshots: call-bound: 1.0.4 has-tostringtag: 1.0.2 - is-bun-module@2.0.0: + is-bun-module@1.3.0: dependencies: - semver: 7.7.4 + semver: 7.7.1 is-callable@1.2.7: {} @@ -5611,14 +5705,17 @@ snapshots: dependencies: call-bound: 1.0.4 + is-fullwidth-code-point@5.0.0: + dependencies: + get-east-asian-width: 1.3.0 + is-fullwidth-code-point@5.1.0: dependencies: get-east-asian-width: 1.5.0 - is-generator-function@1.1.2: + is-generator-function@1.1.0: dependencies: call-bound: 1.0.4 - generator-function: 2.0.1 get-proto: 1.0.1 has-tostringtag: 1.0.2 safe-regex-test: 1.1.0 @@ -5664,7 +5761,7 @@ snapshots: is-typed-array@1.1.15: dependencies: - which-typed-array: 1.1.20 + which-typed-array: 1.1.19 is-weakmap@2.0.2: {} @@ -5690,7 +5787,7 @@ snapshots: has-symbols: 1.1.0 set-function-name: 2.0.2 - jose@6.1.3: {} + jose@6.2.2: {} js-tokens@4.0.0: {} @@ -5714,7 +5811,7 @@ snapshots: jsx-ast-utils@3.3.5: dependencies: - array-includes: 3.1.9 + array-includes: 3.1.8 array.prototype.flat: 1.3.3 object.assign: 4.1.7 object.values: 1.2.1 @@ -5749,10 +5846,10 @@ snapshots: dependencies: cli-truncate: 5.2.0 colorette: 2.0.20 - eventemitter3: 5.0.4 + eventemitter3: 5.0.1 log-update: 6.1.0 rfdc: 1.4.1 - wrap-ansi: 9.0.2 + wrap-ansi: 9.0.0 locate-path@6.0.0: dependencies: @@ -5762,11 +5859,11 @@ snapshots: log-update@6.1.0: dependencies: - ansi-escapes: 7.3.0 + ansi-escapes: 7.0.0 cli-cursor: 5.0.0 - slice-ansi: 7.1.2 - strip-ansi: 7.2.0 - wrap-ansi: 9.0.2 + slice-ansi: 7.1.0 + strip-ansi: 7.1.0 + wrap-ansi: 9.0.0 loose-envify@1.4.0: dependencies: @@ -5783,7 +5880,7 @@ snapshots: micromatch@4.0.8: dependencies: braces: 3.0.3 - picomatch: 2.3.2 + picomatch: 2.3.1 mimic-function@5.0.1: {} @@ -5791,22 +5888,19 @@ snapshots: dependencies: brace-expansion: 5.0.5 - minimatch@3.1.5: + minimatch@3.1.2: dependencies: - brace-expansion: 1.1.13 + brace-expansion: 1.1.11 - minimatch@9.0.9: + minimatch@3.1.5: dependencies: - yallist: 4.0.0 + brace-expansion: 1.1.11 - minipass@5.0.0: {} - - minizlib@2.1.2: + minimatch@9.0.5: dependencies: - minipass: 3.3.6 - yallist: 4.0.0 + brace-expansion: 2.0.1 - mkdirp@1.0.4: {} + minimist@1.2.8: {} motion-dom@12.6.1: dependencies: @@ -5818,48 +5912,46 @@ snapshots: nanoid@3.3.11: {} - napi-postinstall@0.3.4: {} - natural-compare@1.4.0: {} - next-auth@5.0.0-beta.30(next@16.2.1(@babel/core@7.29.0)(@playwright/test@1.58.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4): + next-auth@5.0.0-beta.30(next@16.2.2(@babel/core@7.29.0)(@playwright/test@1.59.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4))(react@19.2.4): dependencies: "@auth/core": 0.41.0 - next: 16.2.1(@babel/core@7.29.0)(@playwright/test@1.58.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + next: 16.2.2(@babel/core@7.29.0)(@playwright/test@1.59.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) react: 19.2.4 - next@16.2.1(@babel/core@7.29.0)(@playwright/test@1.58.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4): + next@16.2.2(@babel/core@7.29.0)(@playwright/test@1.59.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4): dependencies: - "@next/env": 16.2.1 + "@next/env": 16.2.2 "@swc/helpers": 0.5.15 - baseline-browser-mapping: 2.9.19 - caniuse-lite: 1.0.30001767 + baseline-browser-mapping: 2.10.14 + caniuse-lite: 1.0.30001706 postcss: 8.4.31 react: 19.2.4 react-dom: 19.2.4(react@19.2.4) styled-jsx: 5.1.6(@babel/core@7.29.0)(react@19.2.4) optionalDependencies: - "@next/swc-darwin-arm64": 16.2.1 - "@next/swc-darwin-x64": 16.2.1 - "@next/swc-linux-arm64-gnu": 16.2.1 - "@next/swc-linux-arm64-musl": 16.2.1 - "@next/swc-linux-x64-gnu": 16.2.1 - "@next/swc-linux-x64-musl": 16.2.1 - "@next/swc-win32-arm64-msvc": 16.2.1 - "@next/swc-win32-x64-msvc": 16.2.1 - "@playwright/test": 1.58.1 + "@next/swc-darwin-arm64": 16.2.2 + "@next/swc-darwin-x64": 16.2.2 + "@next/swc-linux-arm64-gnu": 16.2.2 + "@next/swc-linux-arm64-musl": 16.2.2 + "@next/swc-linux-x64-gnu": 16.2.2 + "@next/swc-linux-x64-musl": 16.2.2 + "@next/swc-win32-arm64-msvc": 16.2.2 + "@next/swc-win32-x64-msvc": 16.2.2 + "@playwright/test": 1.59.1 sharp: 0.34.5 transitivePeerDependencies: - "@babel/core" - babel-plugin-macros - node-addon-api@8.5.0: {} + node-addon-api@8.7.0: {} node-gyp-build@4.8.4: {} - node-releases@2.0.27: {} + node-releases@2.0.37: {} - oauth4webapi@3.8.3: {} + oauth4webapi@3.3.1: {} object-assign@4.1.1: {} @@ -5887,14 +5979,14 @@ snapshots: dependencies: call-bind: 1.0.8 define-properties: 1.2.1 - es-abstract: 1.24.1 + es-abstract: 1.23.9 es-object-atoms: 1.1.1 object.groupby@1.0.3: dependencies: call-bind: 1.0.8 define-properties: 1.2.1 - es-abstract: 1.24.1 + es-abstract: 1.23.9 object.values@1.2.1: dependencies: @@ -5946,9 +6038,9 @@ snapshots: pg-numeric@1.0.2: {} - pg-protocol@1.11.0: {} + pg-protocol@1.8.0: {} - pg-types@4.1.0: + pg-types@4.0.2: dependencies: pg-int8: 1.0.1 pg-numeric: 1.0.2 @@ -5960,21 +6052,23 @@ snapshots: picocolors@1.1.1: {} - picomatch@2.3.2: {} + picomatch@2.3.1: {} + + picomatch@4.0.2: {} picomatch@4.0.4: {} - playwright-core@1.58.1: {} + playwright-core@1.59.1: {} - playwright@1.58.1: + playwright@1.59.1: dependencies: - playwright-core: 1.58.1 + playwright-core: 1.59.1 optionalDependencies: fsevents: 2.3.2 possible-typed-array-names@1.1.0: {} - postcss-js@4.1.0(postcss@8.5.8): + postcss-js@4.0.1(postcss@8.5.8): dependencies: camelcase-css: 2.0.1 postcss: 8.5.8 @@ -5982,7 +6076,7 @@ snapshots: postcss-mixins@12.1.2(postcss@8.5.8): dependencies: postcss: 8.5.8 - postcss-js: 4.1.0(postcss@8.5.8) + postcss-js: 4.0.1(postcss@8.5.8) postcss-simple-vars: 7.0.1(postcss@8.5.8) sugarss: 5.0.1(postcss@8.5.8) tinyglobby: 0.2.15 @@ -6062,7 +6156,7 @@ snapshots: react-is@16.13.1: {} - react-number-format@5.4.4(react-dom@19.2.4(react@19.2.4))(react@19.2.4): + react-number-format@5.4.5(react-dom@19.2.4(react@19.2.4))(react@19.2.4): dependencies: react: 19.2.4 react-dom: 19.2.4(react@19.2.4) @@ -6096,7 +6190,7 @@ snapshots: react-textarea-autosize@8.5.9(@types/react@19.2.14)(react@19.2.4): dependencies: - "@babel/runtime": 7.28.6 + "@babel/runtime": 7.26.10 react: 19.2.4 use-composed-ref: 1.4.0(@types/react@19.2.14)(react@19.2.4) use-latest: 1.3.0(@types/react@19.2.14)(react@19.2.4) @@ -6109,13 +6203,15 @@ snapshots: dependencies: call-bind: 1.0.8 define-properties: 1.2.1 - es-abstract: 1.24.1 + es-abstract: 1.23.9 es-errors: 1.3.0 es-object-atoms: 1.1.1 get-intrinsic: 1.3.0 get-proto: 1.0.1 which-builtin-type: 1.2.1 + regenerator-runtime@0.14.1: {} + regexp.prototype.flags@1.5.4: dependencies: call-bind: 1.0.8 @@ -6129,7 +6225,7 @@ snapshots: resolve-pkg-maps@1.0.0: {} - resolve@1.22.11: + resolve@1.22.10: dependencies: is-core-module: 2.16.1 path-parse: 1.0.7 @@ -6150,6 +6246,20 @@ snapshots: rfdc@1.4.1: {} + rspack-resolver@1.2.2: + optionalDependencies: + "@unrs/rspack-resolver-binding-darwin-arm64": 1.2.2 + "@unrs/rspack-resolver-binding-darwin-x64": 1.2.2 + "@unrs/rspack-resolver-binding-freebsd-x64": 1.2.2 + "@unrs/rspack-resolver-binding-linux-arm-gnueabihf": 1.2.2 + "@unrs/rspack-resolver-binding-linux-arm64-gnu": 1.2.2 + "@unrs/rspack-resolver-binding-linux-arm64-musl": 1.2.2 + "@unrs/rspack-resolver-binding-linux-x64-gnu": 1.2.2 + "@unrs/rspack-resolver-binding-linux-x64-musl": 1.2.2 + "@unrs/rspack-resolver-binding-wasm32-wasi": 1.2.2 + "@unrs/rspack-resolver-binding-win32-arm64-msvc": 1.2.2 + "@unrs/rspack-resolver-binding-win32-x64-msvc": 1.2.2 + run-parallel@1.2.0: dependencies: queue-microtask: 1.2.3 @@ -6177,7 +6287,7 @@ snapshots: semver@6.3.1: {} - semver@7.7.3: {} + semver@7.7.1: {} semver@7.7.4: {} @@ -6205,9 +6315,9 @@ snapshots: sharp@0.34.5: dependencies: - "@img/colour": 1.0.0 + "@img/colour": 1.1.0 detect-libc: 2.1.2 - semver: 7.7.3 + semver: 7.7.4 optionalDependencies: "@img/sharp-darwin-arm64": 0.34.5 "@img/sharp-darwin-x64": 0.34.5 @@ -6270,10 +6380,10 @@ snapshots: signal-exit@4.1.0: {} - slice-ansi@7.1.2: + slice-ansi@7.1.0: dependencies: - ansi-styles: 6.2.3 - is-fullwidth-code-point: 5.1.0 + ansi-styles: 6.2.1 + is-fullwidth-code-point: 5.0.0 slice-ansi@8.0.0: dependencies: @@ -6293,9 +6403,9 @@ snapshots: string-width@7.2.0: dependencies: - emoji-regex: 10.6.0 - get-east-asian-width: 1.5.0 - strip-ansi: 7.2.0 + emoji-regex: 10.4.0 + get-east-asian-width: 1.3.0 + strip-ansi: 7.1.0 string-width@8.2.0: dependencies: @@ -6306,14 +6416,14 @@ snapshots: dependencies: call-bind: 1.0.8 define-properties: 1.2.1 - es-abstract: 1.24.1 + es-abstract: 1.23.9 string.prototype.matchall@4.0.12: dependencies: call-bind: 1.0.8 call-bound: 1.0.4 define-properties: 1.2.1 - es-abstract: 1.24.1 + es-abstract: 1.23.9 es-errors: 1.3.0 es-object-atoms: 1.1.1 get-intrinsic: 1.3.0 @@ -6327,7 +6437,7 @@ snapshots: string.prototype.repeat@1.0.0: dependencies: define-properties: 1.2.1 - es-abstract: 1.24.1 + es-abstract: 1.23.9 string.prototype.trim@1.2.10: dependencies: @@ -6335,7 +6445,7 @@ snapshots: call-bound: 1.0.4 define-data-property: 1.1.4 define-properties: 1.2.1 - es-abstract: 1.24.1 + es-abstract: 1.23.9 es-object-atoms: 1.1.1 has-property-descriptors: 1.0.2 @@ -6352,6 +6462,10 @@ snapshots: define-properties: 1.2.1 es-object-atoms: 1.1.1 + strip-ansi@7.1.0: + dependencies: + ansi-regex: 6.1.0 + strip-ansi@7.2.0: dependencies: ansi-regex: 6.2.2 @@ -6377,10 +6491,15 @@ snapshots: supports-preserve-symlinks-flag@1.0.0: {} - tabbable@6.4.0: {} + tabbable@6.2.0: {} tinyexec@1.0.4: {} + tinyglobby@0.2.12: + dependencies: + fdir: 6.4.3(picomatch@4.0.2) + picomatch: 4.0.2 + tinyglobby@0.2.15: dependencies: fdir: 6.5.0(picomatch@4.0.4) @@ -6390,10 +6509,6 @@ snapshots: dependencies: is-number: 7.0.0 - ts-api-utils@2.4.0(typescript@5.9.3): - dependencies: - typescript: 5.9.3 - ts-api-utils@2.5.0(typescript@5.9.3): dependencies: typescript: 5.9.3 @@ -6446,13 +6561,13 @@ snapshots: possible-typed-array-names: 1.1.0 reflect.getprototypeof: 1.0.10 - typescript-eslint@8.54.0(eslint@9.39.2)(typescript@5.9.3): + typescript-eslint@8.54.0(eslint@9.39.4)(typescript@5.9.3): dependencies: - "@typescript-eslint/eslint-plugin": 8.54.0(@typescript-eslint/parser@8.54.0(eslint@9.39.2)(typescript@5.9.3))(eslint@9.39.2)(typescript@5.9.3) - "@typescript-eslint/parser": 8.54.0(eslint@9.39.2)(typescript@5.9.3) + "@typescript-eslint/eslint-plugin": 8.54.0(@typescript-eslint/parser@8.54.0(eslint@9.39.4)(typescript@5.9.3))(eslint@9.39.4)(typescript@5.9.3) + "@typescript-eslint/parser": 8.54.0(eslint@9.39.4)(typescript@5.9.3) "@typescript-eslint/typescript-estree": 8.54.0(typescript@5.9.3) - "@typescript-eslint/utils": 8.54.0(eslint@9.39.2)(typescript@5.9.3) - eslint: 9.39.2 + "@typescript-eslint/utils": 8.54.0(eslint@9.39.4)(typescript@5.9.3) + eslint: 9.39.4 typescript: 5.9.3 transitivePeerDependencies: - supports-color @@ -6466,35 +6581,11 @@ snapshots: has-symbols: 1.1.0 which-boxed-primitive: 1.1.1 - undici-types@7.16.0: {} + undici-types@7.18.2: {} - unrs-resolver@1.11.1: + update-browserslist-db@1.2.3(browserslist@4.28.2): dependencies: - napi-postinstall: 0.3.4 - optionalDependencies: - "@unrs/resolver-binding-android-arm-eabi": 1.11.1 - "@unrs/resolver-binding-android-arm64": 1.11.1 - "@unrs/resolver-binding-darwin-arm64": 1.11.1 - "@unrs/resolver-binding-darwin-x64": 1.11.1 - "@unrs/resolver-binding-freebsd-x64": 1.11.1 - "@unrs/resolver-binding-linux-arm-gnueabihf": 1.11.1 - "@unrs/resolver-binding-linux-arm-musleabihf": 1.11.1 - "@unrs/resolver-binding-linux-arm64-gnu": 1.11.1 - "@unrs/resolver-binding-linux-arm64-musl": 1.11.1 - "@unrs/resolver-binding-linux-ppc64-gnu": 1.11.1 - "@unrs/resolver-binding-linux-riscv64-gnu": 1.11.1 - "@unrs/resolver-binding-linux-riscv64-musl": 1.11.1 - "@unrs/resolver-binding-linux-s390x-gnu": 1.11.1 - "@unrs/resolver-binding-linux-x64-gnu": 1.11.1 - "@unrs/resolver-binding-linux-x64-musl": 1.11.1 - "@unrs/resolver-binding-wasm32-wasi": 1.11.1 - "@unrs/resolver-binding-win32-arm64-msvc": 1.11.1 - "@unrs/resolver-binding-win32-ia32-msvc": 1.11.1 - "@unrs/resolver-binding-win32-x64-msvc": 1.11.1 - - update-browserslist-db@1.2.3(browserslist@4.28.1): - dependencies: - browserslist: 4.28.1 + browserslist: 4.28.2 escalade: 3.2.0 picocolors: 1.1.1 @@ -6515,7 +6606,7 @@ snapshots: optionalDependencies: "@types/react": 19.2.14 - use-isomorphic-layout-effect@1.2.1(@types/react@19.2.14)(react@19.2.4): + use-isomorphic-layout-effect@1.2.0(@types/react@19.2.14)(react@19.2.4): dependencies: react: 19.2.4 optionalDependencies: @@ -6524,7 +6615,7 @@ snapshots: use-latest@1.3.0(@types/react@19.2.14)(react@19.2.4): dependencies: react: 19.2.4 - use-isomorphic-layout-effect: 1.2.1(@types/react@19.2.14)(react@19.2.4) + use-isomorphic-layout-effect: 1.2.0(@types/react@19.2.14)(react@19.2.4) optionalDependencies: "@types/react": 19.2.14 @@ -6556,13 +6647,13 @@ snapshots: is-async-function: 2.1.1 is-date-object: 1.1.0 is-finalizationregistry: 1.1.1 - is-generator-function: 1.1.2 + is-generator-function: 1.1.0 is-regex: 1.2.1 is-weakref: 1.1.1 isarray: 2.0.5 which-boxed-primitive: 1.1.1 which-collection: 1.0.2 - which-typed-array: 1.1.20 + which-typed-array: 1.1.19 which-collection@1.0.2: dependencies: @@ -6571,7 +6662,7 @@ snapshots: is-weakmap: 2.0.2 is-weakset: 2.0.4 - which-typed-array@1.1.20: + which-typed-array@1.1.19: dependencies: available-typed-arrays: 1.0.7 call-bind: 1.0.8 @@ -6587,15 +6678,15 @@ snapshots: word-wrap@1.2.5: {} - wrap-ansi@9.0.2: + wrap-ansi@9.0.0: dependencies: - ansi-styles: 6.2.3 + ansi-styles: 6.2.1 string-width: 7.2.0 - strip-ansi: 7.2.0 + strip-ansi: 7.1.0 - ws@8.19.0(bufferutil@4.1.0): + ws@8.18.1(bufferutil@4.0.9): optionalDependencies: - bufferutil: 4.1.0 + bufferutil: 4.0.9 yallist@3.1.1: {} From c8e39bf9eda91a4aac76bb7d13b97d6cfb338f8d Mon Sep 17 00:00:00 2001 From: cjrace <52536248+cjrace@users.noreply.github.com> Date: Sat, 4 Apr 2026 17:52:11 +0100 Subject: [PATCH 14/16] Fix lint errors surfaced by eslint plugin version bump - cowrace: convert number expressions to String() in template literals to satisfy restrict-template-expressions - cowrace: move setCowPositions/setWinners reset into startRace handler to satisfy react-hooks/set-state-in-effect (no synchronous setState in effect body) - irishbingo, snakesandladders: remove inferrable useState type arguments to satisfy no-unnecessary-type-arguments Co-Authored-By: Claude Sonnet 4.6 --- src/components/cowrace.tsx | 15 +++++++-------- src/components/irishbingo.tsx | 2 +- src/components/snakesandladders.tsx | 8 +++----- 3 files changed, 11 insertions(+), 14 deletions(-) diff --git a/src/components/cowrace.tsx b/src/components/cowrace.tsx index dc21a64..b3b68e0 100644 --- a/src/components/cowrace.tsx +++ b/src/components/cowrace.tsx @@ -15,6 +15,8 @@ const CowRace = () => { const raceIntervalRef = useRef(null); // Use useRef instead of state const startRace = () => { + setCowPositions(Array(numCows).fill(0)); + setWinners([]); setRaceStarted(true); }; @@ -23,9 +25,6 @@ const CowRace = () => { const raceTrackRect = raceTrackRef.current.getBoundingClientRect(); const finishLine = raceTrackRect.width * 0.95 - 60; // 95% of track width minus cow image width - setCowPositions(Array(numCows).fill(0)); - setWinners([]); - let winnerDetected = false; const intervalId = setInterval(() => { @@ -89,7 +88,7 @@ const CowRace = () => { max={10} step={1} style={{ width: "80%", maxWidth: "400px" }} - label={(value) => `${value} Cows`} + label={(value) => `${String(value)} Cows`} /> - {winners.length > 0 && ( + {raceComplete && (
{ }} > - Results: + Final Leaderboard: - - {winners.slice(0, 3).map((winnerIndex, rank) => { - let placeText = ""; - let trophyColor = ""; - switch (rank) { - case 0: - placeText = "1st Place: "; - trophyColor = "#FFD700"; // Gold - break; - case 1: - placeText = "2nd Place: "; - trophyColor = "#C0C0C0"; // Silver - break; - case 2: - placeText = "3rd Place: "; - trophyColor = "#CD7F32"; // Bronze - break; - default: - placeText = `${String(rank + 1)}th Place: `; - trophyColor = "#808080"; - } + + {finishedOrder.map((cowIndex, rank) => { + const placeText = + rank === 0 + ? "1st" + : rank === 1 + ? "2nd" + : rank === 2 + ? "3rd" + : `${String(rank + 1)}th`; + const trophyColor = + rank === 0 + ? "#FFD700" + : rank === 1 + ? "#C0C0C0" + : rank === 2 + ? "#CD7F32" + : "#808080"; return (
{ color={trophyColor} style={{ marginRight: "0.5rem" }} /> - - {placeText} Cow {winnerIndex + 1} + + {placeText}: Cow {cowIndex + 1}
); })} - {winners.length > 3 && ( - - Other finishers:{" "} - {winners - .slice(3) - .map((w) => `Cow ${String(w + 1)}`) - .join(", ")} - - )}
)} diff --git a/tests/public/05_cowrace.spec.ts b/tests/public/05_cowrace.spec.ts index 314fad8..b4a8af2 100644 --- a/tests/public/05_cowrace.spec.ts +++ b/tests/public/05_cowrace.spec.ts @@ -1,4 +1,26 @@ -import { test, expect } from "@playwright/test"; +import { test, expect, type Page } from "@playwright/test"; + +// Sets up the sliders and starts a race. Defaults to 2 cows and shortest +// duration for the fastest possible race. +async function startFastRace(page: Page, numCows = 2) { + await page.goto("/games/cowrace"); + + const cowSlider = page.getByRole("slider", { name: "Number of cows" }); + const durationSlider = page.getByRole("slider", { name: "Race duration" }); + + // Default is 4 cows — adjust left/right to reach numCows + const defaultCows = 4; + const cowPresses = numCows - defaultCows; + for (let i = 0; i < Math.abs(cowPresses); i++) { + await cowSlider.press(cowPresses < 0 ? "ArrowLeft" : "ArrowRight"); + } + + // Default duration is 3 (Medium) — press left twice to reach 1 (Short/fastest) + await durationSlider.press("ArrowLeft"); + await durationSlider.press("ArrowLeft"); + + await page.getByRole("button", { name: "Start Race" }).click(); +} test("Cow race page loads with sliders", async ({ page }) => { await page.goto("/games/cowrace"); @@ -45,3 +67,112 @@ test("Number of cows slider can be used", async ({ page }) => { await expect(cowSlider).toHaveAttribute("aria-valuenow", "5"); await expect(page.getByText("Number of racing cows: 5")).toBeVisible(); }); + +test("Final leaderboard appears once all cows finish", async ({ page }) => { + await startFastRace(page, 2); + + // Leaderboard should not be visible during the race + await expect(page.getByText("Final Leaderboard:")).not.toBeVisible(); + + // Wait for the leaderboard — only renders when every cow has crossed + await expect(page.getByText("Final Leaderboard:")).toBeVisible({ + timeout: 30000, + }); + + // Both cows must have individual place entries + await expect(page.getByText(/^1st:/)).toBeVisible(); + await expect(page.getByText(/^2nd:/)).toBeVisible(); +}); + +test("Every cow gets an individual entry in the leaderboard", async ({ + page, +}) => { + // Use 4 cows so we exceed the old top-3 limit and catch regressions + await startFastRace(page, 4); + + await expect(page.getByText("Final Leaderboard:")).toBeVisible({ + timeout: 30000, + }); + + // All four positions must appear individually + await expect(page.getByText(/^1st:/)).toBeVisible(); + await expect(page.getByText(/^2nd:/)).toBeVisible(); + await expect(page.getByText(/^3rd:/)).toBeVisible(); + await expect(page.getByText(/^4th:/)).toBeVisible(); + + // Old code showed a collapsed "Other finishers:" line — ensure that's gone + await expect(page.getByText(/Other finishers/)).not.toBeVisible(); +}); + +test("Button changes to 'Start new race' only after all cows finish", async ({ + page, +}) => { + await startFastRace(page, 2); + + // While the race is running the button should read "Cancel Race" + await expect(page.getByRole("button", { name: "Cancel Race" })).toBeVisible(); + + // After all cows cross the finish line, it flips to "Start new race" + await expect(page.getByText("Final Leaderboard:")).toBeVisible({ + timeout: 30000, + }); + await expect( + page.getByRole("button", { name: "Start new race" }), + ).toBeVisible(); + await expect( + page.getByRole("button", { name: "Cancel Race" }), + ).not.toBeVisible(); +}); + +test("All cows are at the finish line when the race ends", async ({ page }) => { + await startFastRace(page, 2); + + await expect(page.getByText("Final Leaderboard:")).toBeVisible({ + timeout: 30000, + }); + + // Read each cow's x translation from the computed CSS transform. + // If a cow stopped early (old behaviour: race ends on first finisher) its + // x value would be less than the lead cow's, so the spread would be large. + // With correct behaviour every cow reaches the finish line, so all x values + // should be equal (within a small rounding tolerance). + const xPositions = await page.evaluate(() => { + const cows = document.querySelectorAll('img[alt^="Cow "]'); + return Array.from(cows).map((cow) => { + const matrix = new DOMMatrix(getComputedStyle(cow).transform); + return matrix.m41; // x component of the 4×4 transform matrix + }); + }); + + expect(xPositions.length).toBe(2); + + // Every cow must have moved forward + xPositions.forEach((x) => { + expect(x).toBeGreaterThan(0); + }); + + // All cows must be at the same x position (the finish line) + const maxX = Math.max(...xPositions); + xPositions.forEach((x) => { + expect(Math.abs(x - maxX)).toBeLessThan(5); + }); +}); + +test("Can start a new race after the previous one finishes", async ({ + page, +}) => { + await startFastRace(page, 2); + + await expect(page.getByText("Final Leaderboard:")).toBeVisible({ + timeout: 30000, + }); + + await page.getByRole("button", { name: "Start new race" }).click(); + + // Should be back on the setup screen + await expect( + page.getByRole("slider", { name: "Number of cows" }), + ).toBeVisible(); + await expect(page.getByRole("button", { name: "Start Race" })).toBeVisible(); + await expect(page.getByText("Final Leaderboard:")).not.toBeVisible(); +});