9b2925e1e0
* refactor: Settings keys as constant object keys * chore: Run `npm audit fix` * refactor: Settings Sections UI * feat: Refactor Settings structure and implement import/export logic * feat: Introduce ROUTES constant and RouterService * refactor: Consolidate settings definitions into registry * refactor: Update settings page routing structure * chore: Migrate hardcoded URLs to use ROUTES and RouterService * feat: Enhance model selection logic for settings and chat * chore: Update webui static build * refactor: Address PR review comments * fix: Remove unneeded setting * fix: Re-add missing settings * fix: Add missing `/slots` proxy for webui dev mode * chore: Dev-mode logs * fix: Data binding * fix: Steering for non-agentic flow
60 lines
1.6 KiB
Svelte
60 lines
1.6 KiB
Svelte
<script lang="ts">
|
|
import { Button } from '$lib/components/ui/button';
|
|
import * as AlertDialog from '$lib/components/ui/alert-dialog';
|
|
import { settingsStore } from '$lib/stores/settings.svelte';
|
|
import { RotateCcw } from '@lucide/svelte';
|
|
|
|
interface Props {
|
|
onReset?: () => void;
|
|
onSave?: () => void;
|
|
}
|
|
|
|
let { onReset, onSave }: Props = $props();
|
|
|
|
let showResetDialog = $state(false);
|
|
|
|
function handleResetClick() {
|
|
showResetDialog = true;
|
|
}
|
|
|
|
function handleConfirmReset() {
|
|
settingsStore.forceSyncWithServerDefaults();
|
|
onReset?.();
|
|
|
|
showResetDialog = false;
|
|
}
|
|
|
|
function handleSave() {
|
|
onSave?.();
|
|
}
|
|
</script>
|
|
|
|
<div class="sticky bottom-0 mx-auto mt-4 flex w-full justify-between p-6">
|
|
<div class="flex gap-2">
|
|
<Button variant="outline" onclick={handleResetClick}>
|
|
<RotateCcw class="h-3 w-3" />
|
|
|
|
Reset to default
|
|
</Button>
|
|
</div>
|
|
|
|
<Button onclick={handleSave}>Save settings</Button>
|
|
</div>
|
|
|
|
<AlertDialog.Root bind:open={showResetDialog}>
|
|
<AlertDialog.Content>
|
|
<AlertDialog.Header>
|
|
<AlertDialog.Title>Reset Settings to Default</AlertDialog.Title>
|
|
<AlertDialog.Description>
|
|
Are you sure you want to reset all settings to their default values? This will reset all
|
|
parameters to the values provided by the server's /props endpoint and remove all your custom
|
|
configurations.
|
|
</AlertDialog.Description>
|
|
</AlertDialog.Header>
|
|
<AlertDialog.Footer>
|
|
<AlertDialog.Cancel>Cancel</AlertDialog.Cancel>
|
|
<AlertDialog.Action onclick={handleConfirmReset}>Reset to Default</AlertDialog.Action>
|
|
</AlertDialog.Footer>
|
|
</AlertDialog.Content>
|
|
</AlertDialog.Root>
|