瀏覽代碼

fix(model-selector): prevent saving empty default model

- throw a toast error when user is trying to click on `set as default` without actually choosing the model(s).
- feat: added hmr for local development. use `npm run dev` and you get the hmr when debugging.
Anuraag Jain 1 年之前
父節點
當前提交
4d3754980d
共有 2 個文件被更改,包括 10 次插入2 次删除
  1. 6 1
      src/lib/components/chat/ModelSelector.svelte
  2. 4 1
      vite.config.ts

+ 6 - 1
src/lib/components/chat/ModelSelector.svelte

@@ -6,6 +6,11 @@
 	export let disabled = false;
 	export let disabled = false;
 
 
 	const saveDefaultModel = () => {
 	const saveDefaultModel = () => {
+		const hasEmptyModel = selectedModels.filter(it => it === '');
+		if(hasEmptyModel.length){
+			toast.error('Choose a model before saving...');
+			return;
+		}
 		settings.set({ ...$settings, models: selectedModels });
 		settings.set({ ...$settings, models: selectedModels });
 		localStorage.setItem('settings', JSON.stringify($settings));
 		localStorage.setItem('settings', JSON.stringify($settings));
 		toast.success('Default model updated');
 		toast.success('Default model updated');
@@ -21,7 +26,7 @@
 				bind:value={selectedModel}
 				bind:value={selectedModel}
 				{disabled}
 				{disabled}
 			>
 			>
-				<option class=" text-gray-700" value="" selected>Select a model</option>
+				<option class=" text-gray-700" value="" selected disabled>Select a model</option>
 
 
 				{#each $models as model}
 				{#each $models as model}
 					{#if model.name === 'hr'}
 					{#if model.name === 'hr'}

+ 4 - 1
vite.config.ts

@@ -2,5 +2,8 @@ import { sveltekit } from '@sveltejs/kit/vite';
 import { defineConfig } from 'vite';
 import { defineConfig } from 'vite';
 
 
 export default defineConfig({
 export default defineConfig({
-	plugins: [sveltekit()]
+	plugins: [sveltekit()],
+	server: {
+		hmr: true
+	}
 });
 });