| @@ -1,4 +1,4 @@ | |||
| import type { FC } from 'react' | |||
| import type { FC, FormEvent } from 'react' | |||
| import React from 'react' | |||
| import { useTranslation } from 'react-i18next' | |||
| import { | |||
| @@ -39,11 +39,16 @@ const RunOnce: FC<IRunOnceProps> = ({ | |||
| onInputsChange(newInputs) | |||
| } | |||
| const onSubmit = (e: FormEvent<HTMLFormElement>) => { | |||
| e.preventDefault() | |||
| onSend() | |||
| } | |||
| return ( | |||
| <div className=""> | |||
| <section> | |||
| {/* input form */} | |||
| <form> | |||
| <form onSubmit={onSubmit}> | |||
| {promptConfig.prompt_variables.map(item => ( | |||
| <div className='w-full mt-4' key={item.key}> | |||
| <label className='text-gray-900 text-sm font-medium'>{item.name}</label> | |||
| @@ -65,12 +70,6 @@ const RunOnce: FC<IRunOnceProps> = ({ | |||
| placeholder={`${item.name}${!item.required ? `(${t('appDebug.variableTable.optional')})` : ''}`} | |||
| value={inputs[item.key]} | |||
| onChange={(e) => { onInputsChange({ ...inputs, [item.key]: e.target.value }) }} | |||
| onKeyDown={(e) => { | |||
| if (e.key === 'Enter') { | |||
| e.preventDefault() | |||
| onSend() | |||
| } | |||
| }} | |||
| maxLength={item.max_length || DEFAULT_VALUE_MAX_LEN} | |||
| /> | |||
| )} | |||
| @@ -124,8 +123,8 @@ const RunOnce: FC<IRunOnceProps> = ({ | |||
| <span className='text-[13px]'>{t('common.operation.clear')}</span> | |||
| </Button> | |||
| <Button | |||
| type='submit' | |||
| variant="primary" | |||
| onClick={onSend} | |||
| disabled={false} | |||
| > | |||
| <PlayIcon className="shrink-0 w-4 h-4 mr-1" aria-hidden="true" /> | |||