diff --git a/package-lock.json b/package-lock.json index 983a814..aa9a7e4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,19 +10,19 @@ "dependencies": { "history": "^5.3.0", "jszip": "^3.10.1", - "preact": "^10.24.3", - "preact-router": "^4.1.2" + "preact": "^10.25.0", + "preact-iso": "^2.8.1" }, "devDependencies": { - "@preact/preset-vite": "^2.9.1", + "@preact/preset-vite": "^2.9.2", "@typescript-eslint/eslint-plugin": "^8.14.0", "@typescript-eslint/parser": "^8.15.0", "eslint": "^8.57.0", "eslint-config-preact": "^1.5.0", "eslint-config-prettier": "^9.1.0", "eslint-plugin-jest": "^28.9.0", - "prettier": "^3.3.3", - "typescript": "^5.6.3", + "prettier": "^3.4.1", + "typescript": "^5.7.2", "vite": "^5.4.11" } }, @@ -1080,9 +1080,9 @@ } }, "node_modules/@preact/preset-vite": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/@preact/preset-vite/-/preset-vite-2.9.1.tgz", - "integrity": "sha512-JecWzrOx7ogFhklSMhY+aH/24pajL0Vx+beEgau3WDMUUAo32cpUo/UqerPhLOyhCKXlxK9a3cRoa8g68ZAp5g==", + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/@preact/preset-vite/-/preset-vite-2.9.2.tgz", + "integrity": "sha512-Gtp0pPd4s/bZiPAvn4Lhd/on5YZXd/AaXoO03MMtLTmH7nsH3BuXFZnBqvXpqozBDthjxwDWwGEJcf129ctY+g==", "dev": true, "dependencies": { "@babel/code-frame": "^7.22.13", @@ -1100,7 +1100,7 @@ }, "peerDependencies": { "@babel/core": "7.x", - "vite": "2.x || 3.x || 4.x || 5.x" + "vite": "2.x || 3.x || 4.x || 5.x || 6.x" } }, "node_modules/@prefresh/babel-plugin": { @@ -4181,18 +4181,28 @@ } }, "node_modules/preact": { - "version": "10.24.3", - "resolved": "https://registry.npmjs.org/preact/-/preact-10.24.3.tgz", - "integrity": "sha512-Z2dPnBnMUfyQfSQ+GBdsGa16hz35YmLmtTLhM169uW944hYL6xzTYkJjC07j+Wosz733pMWx0fgON3JNw1jJQA==", + "version": "10.25.2", + "resolved": "https://registry.npmjs.org/preact/-/preact-10.25.2.tgz", + "integrity": "sha512-GEts1EH3oMnqdOIeXhlbBSddZ9nrINd070WBOiPO2ous1orrKGUM4SMDbwyjSWD1iMS2dBvaDjAa5qUhz3TXqw==", "funding": { "type": "opencollective", "url": "https://opencollective.com/preact" } }, - "node_modules/preact-router": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/preact-router/-/preact-router-4.1.2.tgz", - "integrity": "sha512-uICUaUFYh+XQ+6vZtQn1q+X6rSqwq+zorWOCLWPF5FAsQh3EJ+RsDQ9Ee+fjk545YWQHfUxhrBAaemfxEnMOUg==", + "node_modules/preact-iso": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/preact-iso/-/preact-iso-2.8.1.tgz", + "integrity": "sha512-RL0yDdJcSiB4Wnk4fBqq0OE9QCfTEW7B2ULf8GHPx72AtFE+j1NvabjBF6y3rBgrNWSuuPuuiN4L4KxYteQD2Q==", + "peerDependencies": { + "preact": ">=10", + "preact-render-to-string": ">=6.4.0" + } + }, + "node_modules/preact-render-to-string": { + "version": "6.5.11", + "resolved": "https://registry.npmjs.org/preact-render-to-string/-/preact-render-to-string-6.5.11.tgz", + "integrity": "sha512-ubnauqoGczeGISiOh6RjX0/cdaF8v/oDXIjO85XALCQjwQP+SB4RDXXtvZ6yTYSjG+PC1QRP2AhPgCEsM2EvUw==", + "peer": true, "peerDependencies": { "preact": ">=10" } @@ -4207,9 +4217,9 @@ } }, "node_modules/prettier": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.3.tgz", - "integrity": "sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==", + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.4.1.tgz", + "integrity": "sha512-G+YdqtITVZmOJje6QkXQWzl3fSfMxFwm1tjTyo9exhkmWSqC4Yhd1+lug++IlR2mvRVAxEDDWYkQdeSztajqgg==", "dev": true, "bin": { "prettier": "bin/prettier.cjs" @@ -4676,9 +4686,9 @@ } }, "node_modules/typescript": { - "version": "5.6.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.3.tgz", - "integrity": "sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==", + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.7.2.tgz", + "integrity": "sha512-i5t66RHxDvVN40HfDd1PsEThGNnlMCMT3jMUuoh9/0TaqWevNontacunWyN02LA9/fIbEWlcHZcgTKb9QoaLfg==", "dev": true, "bin": { "tsc": "bin/tsc", @@ -5556,9 +5566,9 @@ } }, "@preact/preset-vite": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/@preact/preset-vite/-/preset-vite-2.9.1.tgz", - "integrity": "sha512-JecWzrOx7ogFhklSMhY+aH/24pajL0Vx+beEgau3WDMUUAo32cpUo/UqerPhLOyhCKXlxK9a3cRoa8g68ZAp5g==", + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/@preact/preset-vite/-/preset-vite-2.9.2.tgz", + "integrity": "sha512-Gtp0pPd4s/bZiPAvn4Lhd/on5YZXd/AaXoO03MMtLTmH7nsH3BuXFZnBqvXpqozBDthjxwDWwGEJcf129ctY+g==", "dev": true, "requires": { "@babel/code-frame": "^7.22.13", @@ -7701,14 +7711,21 @@ } }, "preact": { - "version": "10.24.3", - "resolved": "https://registry.npmjs.org/preact/-/preact-10.24.3.tgz", - "integrity": "sha512-Z2dPnBnMUfyQfSQ+GBdsGa16hz35YmLmtTLhM169uW944hYL6xzTYkJjC07j+Wosz733pMWx0fgON3JNw1jJQA==" + "version": "10.25.2", + "resolved": "https://registry.npmjs.org/preact/-/preact-10.25.2.tgz", + "integrity": "sha512-GEts1EH3oMnqdOIeXhlbBSddZ9nrINd070WBOiPO2ous1orrKGUM4SMDbwyjSWD1iMS2dBvaDjAa5qUhz3TXqw==" + }, + "preact-iso": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/preact-iso/-/preact-iso-2.8.1.tgz", + "integrity": "sha512-RL0yDdJcSiB4Wnk4fBqq0OE9QCfTEW7B2ULf8GHPx72AtFE+j1NvabjBF6y3rBgrNWSuuPuuiN4L4KxYteQD2Q==", + "requires": {} }, - "preact-router": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/preact-router/-/preact-router-4.1.2.tgz", - "integrity": "sha512-uICUaUFYh+XQ+6vZtQn1q+X6rSqwq+zorWOCLWPF5FAsQh3EJ+RsDQ9Ee+fjk545YWQHfUxhrBAaemfxEnMOUg==", + "preact-render-to-string": { + "version": "6.5.11", + "resolved": "https://registry.npmjs.org/preact-render-to-string/-/preact-render-to-string-6.5.11.tgz", + "integrity": "sha512-ubnauqoGczeGISiOh6RjX0/cdaF8v/oDXIjO85XALCQjwQP+SB4RDXXtvZ6yTYSjG+PC1QRP2AhPgCEsM2EvUw==", + "peer": true, "requires": {} }, "prelude-ls": { @@ -7718,9 +7735,9 @@ "dev": true }, "prettier": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.3.tgz", - "integrity": "sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==", + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.4.1.tgz", + "integrity": "sha512-G+YdqtITVZmOJje6QkXQWzl3fSfMxFwm1tjTyo9exhkmWSqC4Yhd1+lug++IlR2mvRVAxEDDWYkQdeSztajqgg==", "dev": true }, "process-nextick-args": { @@ -8045,9 +8062,9 @@ } }, "typescript": { - "version": "5.6.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.3.tgz", - "integrity": "sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==", + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.7.2.tgz", + "integrity": "sha512-i5t66RHxDvVN40HfDd1PsEThGNnlMCMT3jMUuoh9/0TaqWevNontacunWyN02LA9/fIbEWlcHZcgTKb9QoaLfg==", "dev": true }, "unbox-primitive": { diff --git a/package.json b/package.json index 1723dc1..9bd0214 100644 --- a/package.json +++ b/package.json @@ -16,19 +16,19 @@ "dependencies": { "history": "^5.3.0", "jszip": "^3.10.1", - "preact": "^10.24.3", - "preact-router": "^4.1.2" + "preact": "^10.25.0", + "preact-iso": "^2.8.1" }, "devDependencies": { - "@preact/preset-vite": "^2.9.1", + "@preact/preset-vite": "^2.9.2", "@typescript-eslint/eslint-plugin": "^8.14.0", "@typescript-eslint/parser": "^8.15.0", "eslint": "^8.57.0", "eslint-config-preact": "^1.5.0", "eslint-config-prettier": "^9.1.0", "eslint-plugin-jest": "^28.9.0", - "prettier": "^3.3.3", - "typescript": "^5.6.3", + "prettier": "^3.4.1", + "typescript": "^5.7.2", "vite": "^5.4.11" } } diff --git a/src/app.tsx b/src/app.tsx index f7721a7..3847999 100644 --- a/src/app.tsx +++ b/src/app.tsx @@ -1,5 +1,4 @@ -import Router from "preact-router"; -import { createHashHistory } from "history"; +import { LocationProvider, Router } from "preact-iso"; import Header from "./header"; import Home from "./pages/home"; import Export from "./pages/export"; @@ -7,17 +6,13 @@ import NotFound from "./pages/_404"; export function App() { return ( - <> +
- {/* @ts-expect-error type we know this works, the type is just incorrect*/} - - {/* @ts-expect-error type {path:string} is not assignable to type IntrinsicAttributes*/} + - {/* @ts-expect-error type {path:string} is not assignable to type IntrinsicAttributes*/} - {/* @ts-expect-error type {default} is not assignable to type IntrinsicAttributes*/} - + ); } diff --git a/src/header.tsx b/src/header.tsx index cb0249c..c655092 100644 --- a/src/header.tsx +++ b/src/header.tsx @@ -1,10 +1,9 @@ -import { Link } from "preact-router/match"; export default function Header() { return (
);