Feat: Extract the save buttons for dataset and chat configurations to separate files to increase permission control #3221 (#9803)

### What problem does this PR solve?

Feat: Extract the save buttons for dataset and chat configurations to
separate files to increase permission control #3221

### Type of change


- [x] New Feature (non-breaking change which adds functionality)
This commit is contained in:
balibabu
2025-08-29 10:40:41 +08:00
committed by GitHub
parent c27172b3bc
commit c7f7adf029
5 changed files with 106 additions and 80 deletions

View File

@ -1,4 +1,4 @@
import { Button, ButtonLoading } from '@/components/ui/button';
import { Button } from '@/components/ui/button';
import { Form } from '@/components/ui/form';
import { Separator } from '@/components/ui/separator';
import { DatasetMetadata } from '@/constants/chat';
@ -18,6 +18,7 @@ import { z } from 'zod';
import ChatBasicSetting from './chat-basic-settings';
import { ChatModelSettings } from './chat-model-settings';
import { ChatPromptEngine } from './chat-prompt-engine';
import { SavingButton } from './saving-button';
import { useChatSettingSchema } from './use-chat-setting-schema';
type ChatSettingsProps = { switchSettingVisible(): void };
@ -110,9 +111,7 @@ export function ChatSettings({ switchSettingVisible }: ChatSettingsProps) {
<Button variant={'outline'} onClick={switchSettingVisible}>
{t('chat.cancel')}
</Button>
<ButtonLoading type="submit" loading={loading}>
{t('common.save')}
</ButtonLoading>
<SavingButton loading={loading}></SavingButton>
</div>
</form>
</Form>

View File

@ -0,0 +1,16 @@
import { ButtonLoading } from '@/components/ui/button';
import { useTranslation } from 'react-i18next';
type SaveButtonProps = {
loading: boolean;
};
export function SavingButton({ loading }: SaveButtonProps) {
const { t } = useTranslation();
return (
<ButtonLoading type="submit" loading={loading}>
{t('common.save')}
</ButtonLoading>
);
}