fix(websearch): add apihost check button and format apihost end without '/'

This commit is contained in:
eeee0717 2025-03-14 14:35:28 +08:00 committed by 亢奋猫
parent 7df87d5eeb
commit ea8de1f954

View File

@ -35,7 +35,10 @@ const WebSearchProviderSetting: FC<Props> = ({ provider: _provider }) => {
} }
const onUpdateApiHost = () => { const onUpdateApiHost = () => {
const trimmedHost = apiHost?.trim() || '' let trimmedHost = apiHost?.trim() || ''
if (trimmedHost.endsWith('/')) {
trimmedHost = trimmedHost.slice(0, -1)
}
if (trimmedHost !== provider.apiHost) { if (trimmedHost !== provider.apiHost) {
updateProvider({ ...provider, apiHost: trimmedHost }) updateProvider({ ...provider, apiHost: trimmedHost })
} else { } else {
@ -136,12 +139,21 @@ const WebSearchProviderSetting: FC<Props> = ({ provider: _provider }) => {
<SettingSubtitle style={{ marginTop: 5, marginBottom: 10 }}> <SettingSubtitle style={{ marginTop: 5, marginBottom: 10 }}>
{t('settings.provider.api_host')} {t('settings.provider.api_host')}
</SettingSubtitle> </SettingSubtitle>
<Input <Flex>
value={apiHost} <Input
placeholder={t('settings.provider.api_host')} value={apiHost}
onChange={(e) => setApiHost(e.target.value)} placeholder={t('settings.provider.api_host')}
onBlur={onUpdateApiHost} onChange={(e) => setApiHost(e.target.value)}
/> onBlur={onUpdateApiHost}
/>
<Button
ghost={apiValid}
type={apiValid ? 'primary' : 'default'}
onClick={checkSearch}
disabled={apiChecking}>
{apiChecking ? <LoadingOutlined spin /> : apiValid ? <CheckOutlined /> : t('settings.websearch.check')}
</Button>
</Flex>
</> </>
)} )}
</> </>