>) => void
}
const logger = loggerService.withContext('VideoPanel')
-export const VideoPanel = ({ provider, video }: VideoPanelProps) => {
+export const VideoPanel = ({ provider, video, params, updateParams }: VideoPanelProps) => {
const { t } = useTranslation()
- const [prompt, setPrompt] = useState('')
const [isProcessing, setIsProcessing] = useState(false)
const addOpenAIVideo = useAddOpenAIVideo(provider.id)
@@ -28,13 +30,7 @@ export const VideoPanel = ({ provider, video }: VideoPanelProps) => {
if (isProcessing) return
setIsProcessing(true)
try {
- const result = await createVideo({
- type: 'openai',
- params: {
- prompt
- },
- provider
- })
+ const result = await createVideo(params)
const video = result.video
switch (result.type) {
case 'openai':
@@ -48,7 +44,9 @@ export const VideoPanel = ({ provider, video }: VideoPanelProps) => {
} finally {
setIsProcessing(false)
}
- }, [addOpenAIVideo, isProcessing, prompt, provider, t])
+ }, [addOpenAIVideo, isProcessing, params, t])
+
+ const setPrompt = useCallback((value: string) => updateParams({ params: { prompt: value } }), [updateParams])
return (
@@ -61,7 +59,7 @@ export const VideoPanel = ({ provider, video }: VideoPanelProps) => {