From 8a5a4f5c676bce94b0a81b045414bcdba3450129 Mon Sep 17 00:00:00 2001 From: Toba Ojo Date: Sat, 6 Dec 2025 21:16:11 +0000 Subject: [PATCH] - added OSD configuration components and hooks for managing overlay settings --- .../output/components/OSDFieldToggle.tsx | 27 +++++++ src/features/output/components/OSDFields.tsx | 70 +++++++++++++++++++ .../output/components/OSDOptionsCard.tsx | 18 +++++ .../output/components/OutputForms.tsx | 26 ++++++- src/features/output/hooks/useOSDConfig.ts | 53 ++++++++++++++ src/types/types.ts | 11 ++- 6 files changed, 202 insertions(+), 3 deletions(-) create mode 100644 src/features/output/components/OSDFieldToggle.tsx create mode 100644 src/features/output/components/OSDFields.tsx create mode 100644 src/features/output/components/OSDOptionsCard.tsx create mode 100644 src/features/output/hooks/useOSDConfig.ts diff --git a/src/features/output/components/OSDFieldToggle.tsx b/src/features/output/components/OSDFieldToggle.tsx new file mode 100644 index 0000000..dadb66f --- /dev/null +++ b/src/features/output/components/OSDFieldToggle.tsx @@ -0,0 +1,27 @@ +import { Field } from "formik"; + +type OSDFieldToggleProps = { + value: string; + label: string; +}; + +const OSDFieldToggle = ({ value, label }: OSDFieldToggleProps) => { + const spacesWords = (label: string) => { + if (label.includes("VRM")) return label.replace("VRM", " VRM"); + return label.replace(/([A-Z])/g, " $1").trim(); + }; + + return ( +