Skip to content

Commit a8ac82b

Browse files
committed
Refactor imports and improve component structure for consistency
1 parent f60fc31 commit a8ac82b

File tree

7 files changed

+29
-19
lines changed

7 files changed

+29
-19
lines changed

src/app/map/[id]/components/LayerTypeIcon.tsx

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,9 @@
1-
import { UsersIcon, MapPinIcon, SquareIcon, LayoutDashboardIcon } from "lucide-react";
1+
import {
2+
LayoutDashboardIcon,
3+
MapPinIcon,
4+
SquareIcon,
5+
UsersIcon,
6+
} from "lucide-react";
27
import { cn } from "@/shadcn/utils";
38
import { LayerType } from "@/types";
49

src/app/map/[id]/components/controls/ControlHoverMenu.tsx

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
1-
import { useState, useRef } from "react";
1+
import { PencilIcon, TrashIcon } from "lucide-react";
2+
import { useRef, useState } from "react";
23
import {
34
DropdownMenu,
45
DropdownMenuContent,
56
DropdownMenuItem,
67
DropdownMenuTrigger,
78
} from "@/shadcn/ui/dropdown-menu";
8-
import { PencilIcon, TrashIcon } from "lucide-react";
99

1010
export default function ControlHoverMenu({
1111
children,
@@ -28,10 +28,9 @@ export default function ControlHoverMenu({
2828
};
2929

3030
const handleMouseLeave = () => {
31-
// Add a small delay before closing to allow moving to menu
3231
timeoutRef.current = setTimeout(() => {
3332
setOpen(false);
34-
}, 150);
33+
}, 200);
3534
};
3635

3736
return (
@@ -40,14 +39,15 @@ export default function ControlHoverMenu({
4039
onMouseEnter={handleMouseEnter}
4140
onMouseLeave={handleMouseLeave}
4241
>
43-
<DropdownMenu open={open} onOpenChange={setOpen}>
42+
<DropdownMenu open={open} modal={false}>
4443
<DropdownMenuTrigger asChild>
4544
<div className="w-full">{children}</div>
4645
</DropdownMenuTrigger>
47-
<DropdownMenuContent
48-
align="end"
49-
side="right"
50-
sideOffset={8}
46+
<DropdownMenuContent
47+
align="start"
48+
side="right"
49+
sideOffset={38}
50+
alignOffset={-4}
5151
onMouseEnter={handleMouseEnter}
5252
onMouseLeave={handleMouseLeave}
5353
>

src/app/map/[id]/components/controls/LayerControlWrapper.tsx

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,5 +5,9 @@ export default function LayerControlWrapper({
55
}: {
66
children: ReactNode;
77
}) {
8-
return <div className="border-b border-neutral-200 last:border-b-0">{children}</div>;
8+
return (
9+
<div className="border-b border-neutral-200 last:border-b-0">
10+
{children}
11+
</div>
12+
);
913
}

src/app/map/[id]/components/controls/MarkersControl/MarkersControl.tsx

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -154,7 +154,11 @@ export default function MarkersControl() {
154154
<PlusIcon size={16} />
155155
</IconButtonWithTooltip>
156156
</LayerHeader>
157-
{expanded && <div className="px-4 pb-3"><MarkersList /></div>}
157+
{expanded && (
158+
<div className="px-4 pb-3">
159+
<MarkersList />
160+
</div>
161+
)}
158162
</LayerControlWrapper>
159163
);
160164
}

src/app/map/[id]/components/controls/MarkersControl/SortableFolderItem.tsx

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@ import { LayerType } from "@/types";
1818
import { useFolderMutations } from "../../../hooks/useFolders";
1919
import { usePlacedMarkerState } from "../../../hooks/usePlacedMarkers";
2020
import ControlEditForm from "../ControlEditForm";
21-
import ControlWrapper from "../ControlWrapper";
2221
import ControlHoverMenu from "../ControlHoverMenu";
22+
import ControlWrapper from "../ControlWrapper";
2323
import SortableMarkerItem from "./SortableMarkerItem";
2424
import type { Folder } from "@/server/models/Folder";
2525
import type { PlacedMarker } from "@/server/models/PlacedMarker";
@@ -138,10 +138,7 @@ export default function SortableFolderItem({
138138
onSubmit={onSubmit}
139139
/>
140140
) : (
141-
<ControlHoverMenu
142-
onDelete={() => onDelete()}
143-
onEdit={() => onEdit()}
144-
>
141+
<ControlHoverMenu onDelete={() => onDelete()} onEdit={() => onEdit()}>
145142
<button
146143
ref={isDraggingMarker ? setHeaderNodeRef : null}
147144
onClick={() => onClickFolder()}

src/app/map/[id]/components/controls/MarkersControl/SortableMarkerItem.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@ import {
88
usePlacedMarkerState,
99
} from "../../../hooks/usePlacedMarkers";
1010
import ControlEditForm from "../ControlEditForm";
11-
import ControlWrapper from "../ControlWrapper";
1211
import ControlHoverMenu from "../ControlHoverMenu";
12+
import ControlWrapper from "../ControlWrapper";
1313
import type { PlacedMarker } from "@/server/models/PlacedMarker";
1414

1515
export default function SortableMarkerItem({

src/app/map/[id]/components/controls/TurfsControl/TurfItem.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ import { useTurfMutations } from "../../../hooks/useTurfMutations";
77
import { useTurfState } from "../../../hooks/useTurfState";
88
import { CONTROL_PANEL_WIDTH } from "../../../styles";
99
import ControlEditForm from "../ControlEditForm";
10-
import ControlWrapper from "../ControlWrapper";
1110
import ControlHoverMenu from "../ControlHoverMenu";
11+
import ControlWrapper from "../ControlWrapper";
1212
import type { Turf } from "@/server/models/Turf";
1313

1414
export default function TurfItem({ turf }: { turf: Turf }) {

0 commit comments

Comments
 (0)