diff --git a/src/DebugApp.tsx b/src/DebugApp.tsx
index 6a4dd07..abe92ab 100644
--- a/src/DebugApp.tsx
+++ b/src/DebugApp.tsx
@@ -111,21 +111,6 @@ export function DebugApp() {
{gesture.replace('step-', '').toUpperCase()}
)}
- {/* Difficulty selector */}
- {chart && (
-
- {chart.difficulties.map(d => (
-
- ))}
-
- )}
-
{settings.showDebug && (
<>
setSettingsOpen(!settingsOpen)}
fps={fps}
+ difficulties={chart?.difficulties.map(d => ({ label: d.difficulty, meter: d.meter }))}
+ selectedDifficulty={selectedDifficulty}
+ onDifficultyChange={setSelectedDifficulty}
/>
)
diff --git a/src/Settings.tsx b/src/Settings.tsx
index e4784e0..8896962 100644
--- a/src/Settings.tsx
+++ b/src/Settings.tsx
@@ -7,15 +7,23 @@ const MODELS = [
{ label: 'Heavy', value: 'pose_landmarker_heavy' },
]
+interface DifficultyOption {
+ label: string
+ meter: number
+}
+
interface Props {
settings: PoseSettings
onChange: (s: PoseSettings) => void
open: boolean
onToggle: () => void
fps: number
+ difficulties?: DifficultyOption[]
+ selectedDifficulty?: string
+ onDifficultyChange?: (difficulty: string) => void
}
-export function Settings({ settings, onChange, open, onToggle, fps }: Props) {
+export function Settings({ settings, onChange, open, onToggle, fps, difficulties, selectedDifficulty, onDifficultyChange }: Props) {
const update = (partial: Partial) =>
onChange({ ...settings, ...partial })
@@ -50,6 +58,22 @@ export function Settings({ settings, onChange, open, onToggle, fps }: Props) {
Show Debug
+ {difficulties && difficulties.length > 0 && (
+
+ )}
+