| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 | import { UserInputFormItem, } from '@/types/app'import { PromptVariable } from '@/models/debug'export const userInputsFormToPromptVariables = (useInputs: UserInputFormItem[] | null) => {  if (!useInputs) return []  const promptVariables: PromptVariable[] = []  useInputs.forEach((item: any) => {    const type = item['text-input'] ? 'string' : 'select'    const content = type === 'string' ? item['text-input'] : item['select']    if (type === 'string') {      promptVariables.push({        key: content.variable,        name: content.label,        required: content.required,        type: 'string',        max_length: content.max_length,        options: [],      })    } else {      promptVariables.push({        key: content.variable,        name: content.label,        required: content.required,        type: 'select',        options: content.options,      })    }  })  return promptVariables}export const promptVariablesToUserInputsForm = (promptVariables: PromptVariable[]) => {  const userInputs: UserInputFormItem[] = []  promptVariables.filter(({ key, name }) => {    if (key && key.trim() && name && name.trim()) {      return true    }    return false  }).forEach((item: any) => {    if (item.type === 'string') {      userInputs.push({        'text-input': {          label: item.name,          variable: item.key,          required: item.required === false ? false : true, // default true          max_length: item.max_length,          default: ''        },      } as any)    } else {      userInputs.push({        'select': {          label: item.name,          variable: item.key,          required: item.required === false ? false : true, // default true          options: item.options,          default: ''        },      } as any)    }  })  return userInputs}
 |