refactor: modularize Map component logic into dedicated hooks for map instance management, layers, interactions, and state synchronization

This commit is contained in:
taDuc
2026-05-12 04:05:00 +07:00
parent ac8b0404dd
commit 1baba25303
10 changed files with 1956 additions and 1842 deletions
+1 -1
View File
@@ -19,7 +19,7 @@ export default function RootLayout({
<html lang="en">
<body className={`${inter.className} dark:bg-gray-900`}>
<StoreProvider>
<ThemeProvider>
<ThemeProvider>
<SidebarProvider>{children} <Toaster closeButton richColors position="top-right" /> </SidebarProvider>
</ThemeProvider>
</StoreProvider>
+4 -4
View File
@@ -520,8 +520,8 @@ export default function Page() {
type="button"
onClick={() => handleToggleBackgroundLayer(layer.id)}
className={`rounded-md border px-2.5 py-1 text-xs transition ${active
? "border-sky-400/40 bg-sky-500/10 text-sky-200"
: "border-white/10 bg-white/[0.03] text-slate-400 hover:text-slate-200"
? "border-sky-400/40 bg-sky-500/10 text-sky-200"
: "border-white/10 bg-white/[0.03] text-slate-400 hover:text-slate-200"
}`}
>
{layer.label}
@@ -549,8 +549,8 @@ export default function Page() {
}));
}}
className={`rounded-md border px-2.5 py-1 text-xs capitalize transition ${active
? "border-emerald-400/40 bg-emerald-500/10 text-emerald-200"
: "border-white/10 bg-white/[0.03] text-slate-400 hover:text-slate-200"
? "border-emerald-400/40 bg-emerald-500/10 text-emerald-200"
: "border-white/10 bg-white/[0.03] text-slate-400 hover:text-slate-200"
}`}
>
{typeKey.replaceAll("_", " ")}