From 7e4cd767622e3e1a09e76770ce800f4a541cf0e8 Mon Sep 17 00:00:00 2001 From: Zaka <149817565+ZakaHaceCosas@users.noreply.github.com> Date: Fri, 15 Aug 2025 23:01:18 +0200 Subject: [PATCH] feat: add an input so the user can go to a specific timestamp (#530) * feat: add an input so the user can go to a specific timestamp * fix: use TimeCode type for EditableTimecodeProps * cleanup --------- Co-authored-by: Maze Winther --- apps/web/src/components/editor-header.tsx | 37 ++----------------- .../src/components/editor/preview-panel.tsx | 6 +-- .../src/components/editor/timeline/index.tsx | 37 +++++++++++-------- .../editor/timeline/timeline-track.tsx | 8 ++-- .../src/components/ui/editable-timecode.tsx | 7 ++-- apps/web/src/hooks/use-editor-actions.ts | 6 +-- .../src/hooks/use-timeline-element-resize.ts | 4 +- apps/web/src/hooks/use-timeline-playhead.ts | 4 +- apps/web/src/lib/time.ts | 27 ++++++++++++-- apps/web/src/stores/playback-store.ts | 8 ++-- apps/web/src/stores/project-store.ts | 9 +++-- 11 files changed, 76 insertions(+), 77 deletions(-) diff --git a/apps/web/src/components/editor-header.tsx b/apps/web/src/components/editor-header.tsx index 98aec2b9..88deaf0c 100644 --- a/apps/web/src/components/editor-header.tsx +++ b/apps/web/src/components/editor-header.tsx @@ -1,17 +1,8 @@ "use client"; import { Button } from "./ui/button"; -import { - ChevronDown, - ArrowLeft, - Download, - SquarePen, - Trash, - Sun, -} from "lucide-react"; -import { useTimelineStore } from "@/stores/timeline-store"; +import { ChevronDown, ArrowLeft, SquarePen, Trash, Sun } from "lucide-react"; import { HeaderBase } from "./header-base"; -import { formatTimeCode } from "@/lib/time"; import { useProjectStore } from "@/stores/project-store"; import { KeyboardShortcutsHelp } from "./keyboard-shortcuts-help"; import { useState } from "react"; @@ -28,13 +19,10 @@ import { DeleteProjectDialog } from "./delete-project-dialog"; import { useRouter } from "next/navigation"; import { FaDiscord } from "react-icons/fa6"; import { useTheme } from "next-themes"; -import { usePlaybackStore } from "@/stores/playback-store"; import { TransitionUpIcon } from "./icons"; import { PanelPresetSelector } from "./panel-preset-selector"; export function EditorHeader() { - const { getTotalDuration } = useTimelineStore(); - const { currentTime } = usePlaybackStore(); const { activeProject, renameProject, deleteProject } = useProjectStore(); const [isDeleteDialogOpen, setIsDeleteDialogOpen] = useState(false); const [isRenameDialogOpen, setIsRenameDialogOpen] = useState(false); @@ -124,22 +112,6 @@ export function EditorHeader() { ); - const centerContent = ( -
- - {formatTimeCode(currentTime, "HH:MM:SS:FF", activeProject?.fps || 30)} - - / - - {formatTimeCode( - getTotalDuration(), - "HH:MM:SS:FF", - activeProject?.fps || 30 - )} - -
- ); - const rightContent = (