fix: remove unnecessary credentials of custom tool (#2621)

This commit is contained in:
Yeuoly 2024-02-29 12:58:12 +08:00 committed by GitHub
parent 801d135390
commit 57ffecd0e5
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 15 additions and 1 deletions

View File

@ -118,6 +118,13 @@ const EditCustomCollectionModal: FC<Props> = ({
const handleSave = () => { const handleSave = () => {
const postData = clone(customCollection) const postData = clone(customCollection)
delete postData.tools delete postData.tools
if (postData.credentials.auth_type === AuthType.none) {
delete postData.credentials.api_key_header
delete postData.credentials.api_key_header_prefix
delete postData.credentials.api_key_value
}
if (isAdd) { if (isAdd) {
onAdd?.(postData) onAdd?.(postData)
return return

View File

@ -5,7 +5,7 @@ import { useTranslation } from 'react-i18next'
import { useContext } from 'use-context-selector' import { useContext } from 'use-context-selector'
import { Settings01 } from '../../base/icons/src/vender/line/general' import { Settings01 } from '../../base/icons/src/vender/line/general'
import ConfigCredentials from './config-credentials' import ConfigCredentials from './config-credentials'
import type { Credential, CustomCollectionBackend, CustomParamSchema } from '@/app/components/tools/types' import { AuthType, type Credential, type CustomCollectionBackend, type CustomParamSchema } from '@/app/components/tools/types'
import Button from '@/app/components/base/button' import Button from '@/app/components/base/button'
import Drawer from '@/app/components/base/drawer-plus' import Drawer from '@/app/components/base/drawer-plus'
import I18n from '@/context/i18n' import I18n from '@/context/i18n'
@ -34,6 +34,13 @@ const TestApi: FC<Props> = ({
const { operation_id: toolName, parameters } = tool const { operation_id: toolName, parameters } = tool
const [parametersValue, setParametersValue] = useState<Record<string, string>>({}) const [parametersValue, setParametersValue] = useState<Record<string, string>>({})
const handleTest = async () => { const handleTest = async () => {
// clone test schema
const credentials = JSON.parse(JSON.stringify(tempCredential)) as Credential
if (credentials.auth_type === AuthType.none) {
delete credentials.api_key_header_prefix
delete credentials.api_key_header
delete credentials.api_key_value
}
const data = { const data = {
tool_name: toolName, tool_name: toolName,
credentials: tempCredential, credentials: tempCredential,