diff --git a/src/components/Header.tsx b/src/components/Header.tsx
index df72142..ff3ce0f 100644
--- a/src/components/Header.tsx
+++ b/src/components/Header.tsx
@@ -84,7 +84,7 @@ export default function Header() {
Upload
{isSoulMode ? null : Import}
-
+
Search
{me ? Stars : null}
@@ -138,7 +138,7 @@ export default function Header() {
)}
-
+
Search
diff --git a/src/routes/search.tsx b/src/routes/search.tsx
index ba20899..9d882ca 100644
--- a/src/routes/search.tsx
+++ b/src/routes/search.tsx
@@ -1,4 +1,5 @@
import { createFileRoute, redirect } from '@tanstack/react-router'
+import { getSiteMode } from '../lib/site'
export const Route = createFileRoute('/search')({
validateSearch: (search) => ({
@@ -6,13 +7,37 @@ export const Route = createFileRoute('/search')({
highlighted: search.highlighted === '1' || search.highlighted === 'true' ? true : undefined,
}),
beforeLoad: ({ search }) => {
- throw redirect({
- to: '/skills',
- search: {
- q: search.q || undefined,
- highlighted: search.highlighted || undefined,
- },
- replace: true,
- })
+ const mode = getSiteMode()
+ switch (mode) {
+ case 'souls':
+ throw redirect({
+ to: '/',
+ search: {
+ q: search.q || undefined,
+ highlighted: undefined,
+ search: search.q ? undefined : true,
+ },
+ replace: true,
+ })
+ case 'skills':
+ throw redirect({
+ to: '/skills',
+ search: {
+ q: search.q || undefined,
+ highlighted: search.highlighted || undefined,
+ },
+ replace: true,
+ })
+ default:
+ throw redirect({
+ to: '/',
+ search: {
+ q: search.q || undefined,
+ highlighted: undefined,
+ search: search.q ? undefined : true,
+ },
+ replace: true,
+ })
+ }
},
})