diff --git a/bun.lockb b/bun.lockb index 8c08344..202301b 100755 Binary files a/bun.lockb and b/bun.lockb differ diff --git a/package.json b/package.json index 67586fd..7b2014d 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,7 @@ }, "type": "module", "scripts": { - "dev": "next dev", + "dev": "next dev --turbo", "build": "next build", "start": "next start", "lint": "next lint", @@ -35,13 +35,13 @@ "fuse.js": "^7.0.0", "lucide-react": "^0.453.0", "mini-svg-data-uri": "^1.4.4", - "next": "14.2.15", + "next": "15.0.0", "next-themes": "^0.3.0", "pocketbase": "^0.21.4", "prettier-plugin-organize-imports": "^4.1.0", - "react": "^18", + "react": "19.0.0-rc-65a56d0e-20241020", "react-code-blocks": "^0.1.6", - "react-dom": "^18", + "react-dom": "19.0.0-rc-65a56d0e-20241020", "react-icons": "^5.1.0", "react-simple-typewriter": "^5.0.1", "sharp": "^0.33.5", @@ -51,12 +51,12 @@ }, "devDependencies": { "@types/node": "^22", - "@types/react": "^18", - "@types/react-dom": "^18", + "@types/react": "npm:types-react@19.0.0-rc.1", + "@types/react-dom": "npm:types-react-dom@19.0.0-rc.1", "@typescript-eslint/eslint-plugin": "^8.8.1", "@typescript-eslint/parser": "^8.8.1", "eslint": "^9", - "eslint-config-next": "^14.2.15", + "eslint-config-next": "15.0.0", "postcss": "^8", "prettier": "^3.2.5", "prettier-plugin-tailwindcss": "^0.6.5", @@ -64,5 +64,9 @@ "tailwindcss-animate": "^1.0.7", "tailwindcss-animated": "^1.1.2", "typescript": "^5" + }, + "overrides": { + "@types/react": "npm:types-react@19.0.0-rc.1", + "@types/react-dom": "npm:types-react-dom@19.0.0-rc.1" } } diff --git a/src/app/scripts/page.tsx b/src/app/scripts/page.tsx index 7662644..1614779 100644 --- a/src/app/scripts/page.tsx +++ b/src/app/scripts/page.tsx @@ -2,12 +2,11 @@ import { Metadata } from "next"; import ScriptPage from "./_components/ScriptPage"; type Props = { - searchParams: { [key: string]: string | string[] | undefined }; + searchParams: Promise<{ [key: string]: string | string[] | undefined }>; }; -export async function generateMetadata({ - searchParams, -}: Props): Promise { +export async function generateMetadata(props: Props): Promise { + const searchParams = await props.searchParams; const scriptName = searchParams.id; if (!scriptName || typeof scriptName !== "string") { diff --git a/src/components/Navbar.tsx b/src/components/Navbar.tsx index b3b7dfa..4c06586 100644 --- a/src/components/Navbar.tsx +++ b/src/components/Navbar.tsx @@ -3,7 +3,7 @@ import { Button } from "@/components/ui/button"; import Image from "next/image"; import Link from "next/link"; import { useEffect, useState } from "react"; -import logo from "/public/logo.png"; +import logo from '../../public/logo.png' import { navbarLinks } from "@/config/siteConfig"; @@ -48,7 +48,7 @@ function Navbar() { href={"/"} className="flex cursor-pointer flex-row-reverse items-center gap-2 font-semibold sm:flex-row" > - logo + logo Proxmox VE Helper-Scripts {/* */} diff --git a/src/components/magicui/number-ticker.tsx b/src/components/magicui/number-ticker.tsx index ad6e569..97d7957 100644 --- a/src/components/magicui/number-ticker.tsx +++ b/src/components/magicui/number-ticker.tsx @@ -22,7 +22,7 @@ export default function NumberTicker({ damping: 60, stiffness: 100, }); - const isInView = useInView(ref, { once: true, margin: "0px" }); + const isInView = useInView(ref as React.RefObject, { once: true, margin: "0px" }); useEffect(() => { isInView && diff --git a/tsconfig.json b/tsconfig.json index 7b28589..f48e7ee 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,6 +1,10 @@ { "compilerOptions": { - "lib": ["dom", "dom.iterable", "esnext"], + "lib": [ + "dom", + "dom.iterable", + "esnext" + ], "allowJs": true, "skipLibCheck": true, "strict": true, @@ -18,9 +22,19 @@ } ], "paths": { - "@/*": ["./src/*"] - } + "@/*": [ + "./src/*" + ] + }, + "target": "ES2017" }, - "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts"], - "exclude": ["node_modules"] + "include": [ + "next-env.d.ts", + "**/*.ts", + "**/*.tsx", + ".next/types/**/*.ts" + ], + "exclude": [ + "node_modules" + ] }