fix: ensure track name is always converted to string in TrackHeader

Convert track.name to string in all state initializations and updates
to prevent '[object Object]' rendering issues.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2025-11-17 22:39:43 +01:00
parent 6b540ef8fb
commit 53d436a174

View File

@@ -29,12 +29,12 @@ export function TrackHeader({
onNameChange,
}: TrackHeaderProps) {
const [isEditingName, setIsEditingName] = React.useState(false);
const [nameInput, setNameInput] = React.useState(track.name);
const [nameInput, setNameInput] = React.useState(String(track.name || 'Untitled Track'));
const inputRef = React.useRef<HTMLInputElement>(null);
const handleNameClick = () => {
setIsEditingName(true);
setNameInput(track.name);
setNameInput(String(track.name || 'Untitled Track'));
};
const handleNameBlur = () => {
@@ -42,7 +42,7 @@ export function TrackHeader({
if (nameInput.trim()) {
onNameChange(nameInput.trim());
} else {
setNameInput(track.name);
setNameInput(String(track.name || 'Untitled Track'));
}
};
@@ -50,7 +50,7 @@ export function TrackHeader({
if (e.key === 'Enter') {
inputRef.current?.blur();
} else if (e.key === 'Escape') {
setNameInput(track.name);
setNameInput(String(track.name || 'Untitled Track'));
setIsEditingName(false);
}
};