+
{@render actions()}
{/if}
diff --git a/src/lib/stores/search.ts b/src/lib/stores/search.ts
index a551d35..7d15107 100644
--- a/src/lib/stores/search.ts
+++ b/src/lib/stores/search.ts
@@ -9,6 +9,7 @@ import { browser } from '$app/environment';
export interface SearchState {
query: string;
recentSearches: string[];
+ isModalOpen: boolean;
filters: {
map?: string;
playerId?: number;
@@ -20,6 +21,7 @@ export interface SearchState {
const defaultState: SearchState = {
query: '',
recentSearches: [],
+ isModalOpen: false,
filters: {}
};
@@ -105,6 +107,16 @@ const createSearchStore = () => {
// Reset entire search state
reset: () => {
set({ ...defaultState, recentSearches: loadRecentSearches() });
+ },
+
+ // Open search modal
+ openModal: () => {
+ update((state) => ({ ...state, isModalOpen: true }));
+ },
+
+ // Close search modal
+ closeModal: () => {
+ update((state) => ({ ...state, isModalOpen: false }));
}
};
};
diff --git a/src/routes/+layout.svelte b/src/routes/+layout.svelte
index 488213c..bf4275b 100644
--- a/src/routes/+layout.svelte
+++ b/src/routes/+layout.svelte
@@ -3,17 +3,19 @@
import Header from '$lib/components/layout/Header.svelte';
import Footer from '$lib/components/layout/Footer.svelte';
import ToastContainer from '$lib/components/ui/ToastContainer.svelte';
+ import SearchModal from '$lib/components/layout/SearchModal.svelte';
let { children } = $props();
-
+
{@render children()}
-
+
+