fix file display

pull/21369/head
JzoNg 11 months ago
parent 44f51994c1
commit 4c81040796

@ -41,18 +41,20 @@ const ValueContent = ({
const textEditorDisabled = currentVar.type === VarInInspectType.environment || (currentVar.type === VarInInspectType.system && currentVar.name !== 'query' && currentVar.name !== 'files') const textEditorDisabled = currentVar.type === VarInInspectType.environment || (currentVar.type === VarInInspectType.system && currentVar.name !== 'query' && currentVar.name !== 'files')
const JSONEditorDisabled = currentVar.value_type === 'array[any]' const JSONEditorDisabled = currentVar.value_type === 'array[any]'
const formatFileValue = (value: VarInInspect) => {
if (value.value_type === 'file')
return value.value ? getProcessedFilesFromResponse([value.value]) : []
if (value.value_type === 'array[file]' || (value.type === VarInInspectType.system && currentVar.name === 'files'))
return value.value && value.value.length > 0 ? getProcessedFilesFromResponse(value.value) : []
return []
}
const [value, setValue] = useState<any>() const [value, setValue] = useState<any>()
const [json, setJson] = useState('') const [json, setJson] = useState('')
const [parseError, setParseError] = useState<Error | null>(null) const [parseError, setParseError] = useState<Error | null>(null)
const [validationError, setValidationError] = useState<string>('') const [validationError, setValidationError] = useState<string>('')
const fileFeature = useFeatures(s => s.features.file) const fileFeature = useFeatures(s => s.features.file)
const [fileValue, setFileValue] = useState<any>( const [fileValue, setFileValue] = useState<any>(formatFileValue(currentVar))
currentVar.value_type === 'array[file]'
? getProcessedFilesFromResponse(currentVar.value || [])
: currentVar.value
? getProcessedFilesFromResponse([currentVar.value])
: [],
)
const { run: debounceValueChange } = useDebounceFn(handleValueChange, { wait: 500 }) const { run: debounceValueChange } = useDebounceFn(handleValueChange, { wait: 500 })
@ -68,16 +70,8 @@ const ValueContent = ({
if (showJSONEditor) if (showJSONEditor)
setJson(currentVar.value ? JSON.stringify(currentVar.value, null, 2) : '') setJson(currentVar.value ? JSON.stringify(currentVar.value, null, 2) : '')
if (showFileEditor) { if (showFileEditor)
console.log(getProcessedFilesFromResponse(currentVar.value || [])) setFileValue(formatFileValue(currentVar))
setFileValue(
(currentVar.value_type === 'array[file]' || isSysFiles)
? getProcessedFilesFromResponse(currentVar.value || [])
: currentVar.value
? getProcessedFilesFromResponse([currentVar.value])
: [],
)
}
// eslint-disable-next-line react-hooks/exhaustive-deps // eslint-disable-next-line react-hooks/exhaustive-deps
}, [currentVar.id, currentVar.value]) }, [currentVar.id, currentVar.value])

Loading…
Cancel
Save