extonlawrence commited on
Commit
76a5c60
·
1 Parent(s): d85b169

Add PersonaSelector component for quick persona switching

Browse files
src/lib/components/PersonaSelector.svelte ADDED
@@ -0,0 +1,22 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <script lang="ts">
2
+ import { goto } from "$app/navigation";
3
+ import { base } from "$app/paths";
4
+ import { useSettingsStore } from "$lib/stores/settings";
5
+ import CarbonUser from "~icons/carbon/user";
6
+
7
+ const settings = useSettingsStore();
8
+
9
+ let activePersona = $derived(
10
+ $settings.personas.find((p) => p.id === $settings.activePersona) ?? $settings.personas[0]
11
+ );
12
+ </script>
13
+
14
+ <button
15
+ class="flex items-center gap-1.5 rounded-lg border border-gray-300 bg-gray-100 px-3 py-1.5 text-sm text-gray-700 shadow-sm hover:bg-gray-200 dark:border-gray-600 dark:bg-gray-800 dark:text-gray-300 dark:hover:bg-gray-700"
16
+ onclick={() => goto(`${base}/settings/personas`)}
17
+ title="Manage personas"
18
+ >
19
+ <CarbonUser class="text-xs" />
20
+ <span class="max-w-[150px] truncate">{activePersona?.name ?? "Default"}</span>
21
+ </button>
22
+