diff --git a/src/components/layout/MapToolbar.tsx b/src/components/layout/MapToolbar.tsx index a77fc2c..a617cd9 100644 --- a/src/components/layout/MapToolbar.tsx +++ b/src/components/layout/MapToolbar.tsx @@ -1,8 +1,18 @@ "use client"; import Image from "next/image"; -import { ChartLine, CircleQuestionMark, Settings } from "lucide-react"; +import { + ChartLine, + CircleQuestionMark, + Compass, + Moon, + Settings, + Sun, +} from "lucide-react"; import { SITE_NAME } from "@/lib/constants/site"; +import { requestGuide } from "@/lib/tour"; +import { useTheme } from "@/providers/ThemeProvider"; +import { Button } from "@/components/ui/button"; import { Card, CardContent, CardTitle } from "@/components/ui/card"; import { ToggleGroup, ToggleGroupItem } from "@/components/ui/toggle-group"; @@ -14,6 +24,73 @@ const PANELS = [ { value: "help", label: "Help", Icon: CircleQuestionMark }, ] as const; +const REPO_URL = "https://github.com/EarthyScience/EarthPrints"; + +function GitHubMark({ className }: { className?: string }) { + return ( + + ); +} + +const actionClass = + "max-md:size-12 max-md:rounded-full max-md:border-border max-md:bg-background max-md:shadow-lg dark:max-md:border-input"; + +export function MapActions({ onBeforeGuide }: { onBeforeGuide: () => void }) { + const { isLight, toggleTheme } = useTheme(); + const ThemeIcon = isLight ? Moon : Sun; + + return ( + + + + + + + + ); +} + type MapToolbarProps = { openPanel: ToolbarPanel | null; onOpenPanelChange: (panel: ToolbarPanel | null) => void; diff --git a/src/components/map/ReliefMap.tsx b/src/components/map/ReliefMap.tsx index a57fc26..d2530d3 100644 --- a/src/components/map/ReliefMap.tsx +++ b/src/components/map/ReliefMap.tsx @@ -30,7 +30,11 @@ import { useTheme } from "@/providers/ThemeProvider"; import { useCellSeries } from "@/hooks/useCellSeries"; import { useGeolocation } from "@/hooks/useGeolocation"; import { useMapSettings } from "@/hooks/useMapSettings"; -import { MapToolbar, type ToolbarPanel } from "@/components/layout/MapToolbar"; +import { + MapActions, + MapToolbar, + type ToolbarPanel, +} from "@/components/layout/MapToolbar"; import { MapControls } from "@/components/map/MapControls"; import { MapSearch } from "@/components/map/MapSearch"; import { MapTour } from "@/components/map/MapTour"; @@ -303,6 +307,10 @@ export function ReliefMap() { ) : null} + +
+ setOpenPanel(null)} /> +