aboutsummaryrefslogtreecommitdiffstats
path: root/packages/excalidraw/element/showSelectedShapeActions.ts
diff options
context:
space:
mode:
Diffstat (limited to 'packages/excalidraw/element/showSelectedShapeActions.ts')
-rw-r--r--packages/excalidraw/element/showSelectedShapeActions.ts19
1 files changed, 19 insertions, 0 deletions
diff --git a/packages/excalidraw/element/showSelectedShapeActions.ts b/packages/excalidraw/element/showSelectedShapeActions.ts
new file mode 100644
index 0000000..bbf313d
--- /dev/null
+++ b/packages/excalidraw/element/showSelectedShapeActions.ts
@@ -0,0 +1,19 @@
+import type { NonDeletedExcalidrawElement } from "./types";
+import { getSelectedElements } from "../scene";
+import type { UIAppState } from "../types";
+
+export const showSelectedShapeActions = (
+ appState: UIAppState,
+ elements: readonly NonDeletedExcalidrawElement[],
+) =>
+ Boolean(
+ !appState.viewModeEnabled &&
+ appState.openDialog?.name !== "elementLinkSelector" &&
+ ((appState.activeTool.type !== "custom" &&
+ (appState.editingTextElement ||
+ (appState.activeTool.type !== "selection" &&
+ appState.activeTool.type !== "eraser" &&
+ appState.activeTool.type !== "hand" &&
+ appState.activeTool.type !== "laser"))) ||
+ getSelectedElements(elements, appState).length),
+ );