diff options
| author | Maze Winther <mazewinther@gmail.com> | 2026-04-20 11:31:17 +0200 |
|---|---|---|
| committer | Maze Winther <mazewinther@gmail.com> | 2026-04-20 11:31:17 +0200 |
| commit | 3e89d2998588f8e35c524e523ba2ee853f0f6475 (patch) | |
| tree | 57221f96c1259b3b07e3ddf8c1adefc502b9d8eb /apps/web/src/guides/definitions/custom.tsx | |
| parent | 729d10592f4e802f91c555c309ff3ba4b119f843 (diff) | |
| download | opencut-3e89d2998588f8e35c524e523ba2ee853f0f6475.tar.gz | |
refactor: restructure files to their domains, new preview overlay system, and dep graph
Diffstat (limited to 'apps/web/src/guides/definitions/custom.tsx')
| -rw-r--r-- | apps/web/src/guides/definitions/custom.tsx | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/apps/web/src/guides/definitions/custom.tsx b/apps/web/src/guides/definitions/custom.tsx new file mode 100644 index 00000000..a5bede0b --- /dev/null +++ b/apps/web/src/guides/definitions/custom.tsx @@ -0,0 +1,24 @@ +import { PlusSignIcon, RulerIcon } from "@hugeicons/core-free-icons";
+import { HugeiconsIcon } from "@hugeicons/react";
+import { Button } from "@/components/ui/button";
+import type { GuideDefinition } from "@/guides/types";
+
+function CustomGuideOptions() {
+ return (
+ <div className="flex gap-2">
+ <Button variant="outline" size="sm" className="flex-1">
+ <HugeiconsIcon icon={PlusSignIcon} />
+ Add guide line
+ </Button>
+ </div>
+ );
+}
+
+export const customGuide = {
+ id: "custom",
+ label: "Custom",
+ renderPreview: () => <HugeiconsIcon size={16} icon={RulerIcon} />,
+ renderTriggerIcon: () => <HugeiconsIcon icon={RulerIcon} />,
+ renderOverlay: () => null,
+ renderOptions: () => <CustomGuideOptions />,
+} as const satisfies GuideDefinition;
|
