summaryrefslogtreecommitdiff
path: root/apps/web/src/lib/selection/context.tsx
diff options
context:
space:
mode:
authorMaze Winther <mazewinther@gmail.com>2026-04-20 11:31:17 +0200
committerMaze Winther <mazewinther@gmail.com>2026-04-20 11:31:17 +0200
commit3e89d2998588f8e35c524e523ba2ee853f0f6475 (patch)
tree57221f96c1259b3b07e3ddf8c1adefc502b9d8eb /apps/web/src/lib/selection/context.tsx
parent729d10592f4e802f91c555c309ff3ba4b119f843 (diff)
downloadopencut-3e89d2998588f8e35c524e523ba2ee853f0f6475.tar.gz
refactor: restructure files to their domains, new preview overlay system, and dep graph
Diffstat (limited to 'apps/web/src/lib/selection/context.tsx')
-rw-r--r--apps/web/src/lib/selection/context.tsx52
1 files changed, 0 insertions, 52 deletions
diff --git a/apps/web/src/lib/selection/context.tsx b/apps/web/src/lib/selection/context.tsx
deleted file mode 100644
index 8e87aa40..00000000
--- a/apps/web/src/lib/selection/context.tsx
+++ /dev/null
@@ -1,52 +0,0 @@
-"use client";
-
-import { createContext, useContext } from "react";
-
-interface SelectionContextValue {
- selectedIds: string[];
- anchorId: string | null;
- highlightedId: string | null;
- isBoxSelecting: boolean;
- isSelected: (id: string) => boolean;
- clearSelection: () => void;
- handleItemClick: ({
- event,
- id,
- }: {
- event: React.MouseEvent<HTMLDivElement> | React.KeyboardEvent<HTMLDivElement>;
- id: string;
- }) => void;
- handleItemMouseDown: ({
- event,
- id,
- }: {
- event: React.MouseEvent<HTMLDivElement>;
- id: string;
- }) => void;
- registerItem: (id: string, element: HTMLElement | null) => void;
-}
-
-export const SelectionContext = createContext<SelectionContextValue | null>(null);
-
-export function useSelectionContext() {
- const context = useContext(SelectionContext);
-
- if (!context) {
- throw new Error("useSelectionContext must be used within SelectableSurface");
- }
-
- return context;
-}
-
-export function useSelection() {
- const { selectedIds, anchorId, highlightedId, isSelected, clearSelection } =
- useSelectionContext();
-
- return {
- selectedIds,
- anchorId,
- highlightedId,
- isSelected,
- clearSelection,
- };
-}