aboutsummaryrefslogtreecommitdiffstats
path: root/packages/excalidraw/scene/comparisons.ts
diff options
context:
space:
mode:
Diffstat (limited to 'packages/excalidraw/scene/comparisons.ts')
-rw-r--r--packages/excalidraw/scene/comparisons.ts44
1 files changed, 44 insertions, 0 deletions
diff --git a/packages/excalidraw/scene/comparisons.ts b/packages/excalidraw/scene/comparisons.ts
new file mode 100644
index 0000000..9af3e66
--- /dev/null
+++ b/packages/excalidraw/scene/comparisons.ts
@@ -0,0 +1,44 @@
+import type { ElementOrToolType } from "../types";
+
+export const hasBackground = (type: ElementOrToolType) =>
+ type === "rectangle" ||
+ type === "iframe" ||
+ type === "embeddable" ||
+ type === "ellipse" ||
+ type === "diamond" ||
+ type === "line" ||
+ type === "freedraw";
+
+export const hasStrokeColor = (type: ElementOrToolType) =>
+ type !== "image" && type !== "frame" && type !== "magicframe";
+
+export const hasStrokeWidth = (type: ElementOrToolType) =>
+ type === "rectangle" ||
+ type === "iframe" ||
+ type === "embeddable" ||
+ type === "ellipse" ||
+ type === "diamond" ||
+ type === "freedraw" ||
+ type === "arrow" ||
+ type === "line";
+
+export const hasStrokeStyle = (type: ElementOrToolType) =>
+ type === "rectangle" ||
+ type === "iframe" ||
+ type === "embeddable" ||
+ type === "ellipse" ||
+ type === "diamond" ||
+ type === "arrow" ||
+ type === "line";
+
+export const canChangeRoundness = (type: ElementOrToolType) =>
+ type === "rectangle" ||
+ type === "iframe" ||
+ type === "embeddable" ||
+ type === "line" ||
+ type === "diamond" ||
+ type === "image";
+
+export const toolIsArrow = (type: ElementOrToolType) => type === "arrow";
+
+export const canHaveArrowheads = (type: ElementOrToolType) => type === "arrow";