From 6d4146ed85e358c2c5ef2e2f95d38e0c238efc32 Mon Sep 17 00:00:00 2001 From: ThisBirchWood Date: Tue, 8 Jul 2025 18:11:41 +0200 Subject: [PATCH] ADD input structure for metadata --- frontend/src/components/video/ClipNames.tsx | 37 ----------------- .../video/{ClipConfig.tsx => ConfigBox.tsx} | 2 +- frontend/src/components/video/MetadataBox.tsx | 41 +++++++++++++++++++ frontend/src/pages/ClipEdit.tsx | 8 ++-- .../vodsystem/services/DirectoryService.java | 3 +- 5 files changed, 48 insertions(+), 43 deletions(-) delete mode 100644 frontend/src/components/video/ClipNames.tsx rename frontend/src/components/video/{ClipConfig.tsx => ConfigBox.tsx} (97%) create mode 100644 frontend/src/components/video/MetadataBox.tsx diff --git a/frontend/src/components/video/ClipNames.tsx b/frontend/src/components/video/ClipNames.tsx deleted file mode 100644 index c972297..0000000 --- a/frontend/src/components/video/ClipNames.tsx +++ /dev/null @@ -1,37 +0,0 @@ -import clsx from "clsx"; -import type {VideoMetadata} from "../../utils/types.ts"; - -type ClipNamesProps = { - setMetadata: Function - className?: string; -} - -const ClipNames = ({setMetadata, className}: ClipNamesProps) => { - return ( -
- - setMetadata((prevState: VideoMetadata) => ({ - ...prevState, - title: e.target.value - }))} - className={"border-black bg-gray-200 rounded-md w-full p-2"} - /> - - - setMetadata((prevState: VideoMetadata) => ({ - ...prevState, - description: e.target.value - }))} - className={"border-black bg-gray-200 rounded-md w-full p-2"} - /> -
- ) -} - -export default ClipNames; \ No newline at end of file diff --git a/frontend/src/components/video/ClipConfig.tsx b/frontend/src/components/video/ConfigBox.tsx similarity index 97% rename from frontend/src/components/video/ClipConfig.tsx rename to frontend/src/components/video/ConfigBox.tsx index fe18d2c..42e5052 100644 --- a/frontend/src/components/video/ClipConfig.tsx +++ b/frontend/src/components/video/ConfigBox.tsx @@ -7,7 +7,7 @@ type prop = { className?: string; } -export default function ClipConfig({setMetadata, className}: prop) { +export default function ConfigBox({setMetadata, className}: prop) { const updateRes = (e: React.ChangeEvent) => { var vals = e.target.value.split(","); setMetadata((prevState: VideoMetadata) => ({ diff --git a/frontend/src/components/video/MetadataBox.tsx b/frontend/src/components/video/MetadataBox.tsx new file mode 100644 index 0000000..a69ba6c --- /dev/null +++ b/frontend/src/components/video/MetadataBox.tsx @@ -0,0 +1,41 @@ +import clsx from "clsx"; +import type {VideoMetadata} from "../../utils/types.ts"; +import Selector from "../Selector.tsx"; + +type MetadataBoxProps = { + setMetadata: Function + className?: string; +} + +const MetadataBox = ({setMetadata, className}: MetadataBoxProps) => { + return ( +
+

Metadata Settings

+ + + setMetadata((prevState: VideoMetadata) => ({ + ...prevState, + title: e.target.value + }))} + className={"border-black bg-gray-200 rounded-md w-full p-2"} + /> + + + +