billing integration into ai workflow
This commit is contained in:
parent
919f6e4b7d
commit
46e58bf019
2 changed files with 11 additions and 7 deletions
|
|
@ -30,6 +30,7 @@ export function useDashboardInputForm(instanceId: string) {
|
|||
const [optimisticMessage, setOptimisticMessage] = useState<WorkflowMessage | null>(null);
|
||||
const [selectedPromptId, setSelectedPromptId] = useState<string | null>(null);
|
||||
const [workflowMode, setWorkflowMode] = useState<'Dynamic' | 'Automation' | null>(null);
|
||||
const [selectedProvider, setSelectedProvider] = useState<string>(''); // AI provider selection
|
||||
|
||||
const { checkPermission, canView } = usePermissions();
|
||||
const [playgroundUIPermission, setPlaygroundUIPermission] = useState<boolean>(false);
|
||||
|
|
@ -594,7 +595,8 @@ export function useDashboardInputForm(instanceId: string) {
|
|||
const requestBody = {
|
||||
prompt: trimmedInput,
|
||||
listFileId: fileIdsToSend.length > 0 ? fileIdsToSend : undefined,
|
||||
userLanguage: 'en'
|
||||
userLanguage: 'en',
|
||||
preferredProvider: selectedProvider || undefined // AI provider selection
|
||||
};
|
||||
|
||||
const result = await startWorkflow(requestBody, workflowOptions);
|
||||
|
|
@ -636,7 +638,7 @@ export function useDashboardInputForm(instanceId: string) {
|
|||
setWorkflowStatusOptimistic('idle');
|
||||
}
|
||||
}
|
||||
}, [inputValue, pendingFiles, isRunning, workflowId, startingWorkflow, startWorkflow, stopWorkflow, resetWorkflow, refetchWorkflows, selectWorkflowFromContext, selectWorkflow, chatWorkflowPermission, workflowMode, setWorkflowStatusOptimistic]);
|
||||
}, [inputValue, pendingFiles, isRunning, workflowId, startingWorkflow, startWorkflow, stopWorkflow, resetWorkflow, refetchWorkflows, selectWorkflowFromContext, selectWorkflow, chatWorkflowPermission, workflowMode, selectedProvider, setWorkflowStatusOptimistic]);
|
||||
|
||||
useEffect(() => {
|
||||
const handleWorkflowCleared = () => {
|
||||
|
|
@ -820,7 +822,10 @@ export function useDashboardInputForm(instanceId: string) {
|
|||
allUserFiles: fileContext.files || [],
|
||||
handleFileAttach,
|
||||
handleFileUploadAndAttach,
|
||||
latestStats
|
||||
latestStats,
|
||||
// AI Provider selection
|
||||
selectedProvider,
|
||||
onProviderSelect: setSelectedProvider
|
||||
};
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -58,6 +58,8 @@ export const PlaygroundPage: React.FC = () => {
|
|||
deletingFiles,
|
||||
previewingFiles,
|
||||
downloadingFiles,
|
||||
selectedProvider,
|
||||
onProviderSelect,
|
||||
} = hookData;
|
||||
|
||||
const { prompts, refetch: refetchPrompts } = usePrompts();
|
||||
|
|
@ -93,9 +95,6 @@ export const PlaygroundPage: React.FC = () => {
|
|||
// Prompts dropdown state
|
||||
const [selectedPromptId, setSelectedPromptId] = useState<string>('');
|
||||
|
||||
// AI Provider selection state
|
||||
const [selectedProvider, setSelectedProvider] = useState<string>('');
|
||||
|
||||
// Load prompts on mount
|
||||
useEffect(() => {
|
||||
refetchPrompts();
|
||||
|
|
@ -788,7 +787,7 @@ export const PlaygroundPage: React.FC = () => {
|
|||
</button>
|
||||
<ProviderSelect
|
||||
value={selectedProvider}
|
||||
onChange={setSelectedProvider}
|
||||
onChange={onProviderSelect}
|
||||
showLabel={false}
|
||||
/>
|
||||
<VoiceLanguageSelect
|
||||
|
|
|
|||
Loading…
Reference in a new issue