diff options
| author | Adam Malczewski <[email protected]> | 2026-05-21 20:26:07 +0900 |
|---|---|---|
| committer | Adam Malczewski <[email protected]> | 2026-05-21 20:26:07 +0900 |
| commit | 13b670e5e93dc0243f970832673385e9855a1df6 (patch) | |
| tree | 0d252be4410b04e28867efa569064bf9608840d3 /packages/frontend/src/lib/components/SidebarPanel.svelte | |
| parent | 4ba2673557c7cfd0bc31b03e2c35ab5e1efe60e7 (diff) | |
| download | dispatch-13b670e5e93dc0243f970832673385e9855a1df6.tar.gz dispatch-13b670e5e93dc0243f970832673385e9855a1df6.zip | |
feat: tool permission toggles, settings improvements, UI polish
- Tool permissions (read, edit, bash) stored in DB and control Agent tool registration
- Agent invalidated when permissions change; cache warning in Permissions panel
- Default: read=allow, edit=ask, bash=ask (matches UI checkboxes)
- Settings: auto-save title model on selection (removed save button)
- Settings: auto-expand thinking checkbox with shared reactive store
- Permissions panel: renamed from Permission Log, shows tool toggles + collapsible log
- Sidebar: renamed Current Model to Model Choice
- Chat input: allow typing while agent runs (just disable send)
- Chat cursor: fix doubled rectangle (removed unicode char)
- Generic GET/PUT /tabs/settings/:key endpoints for key-value settings
Diffstat (limited to 'packages/frontend/src/lib/components/SidebarPanel.svelte')
| -rw-r--r-- | packages/frontend/src/lib/components/SidebarPanel.svelte | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/packages/frontend/src/lib/components/SidebarPanel.svelte b/packages/frontend/src/lib/components/SidebarPanel.svelte index 7e71bd5..9aca408 100644 --- a/packages/frontend/src/lib/components/SidebarPanel.svelte +++ b/packages/frontend/src/lib/components/SidebarPanel.svelte @@ -40,9 +40,9 @@ } let nextId = 0; - let panels = $state<Panel[]>([{ id: nextId++, selected: "Current Model" }]); + let panels = $state<Panel[]>([{ id: nextId++, selected: "Model Choice" }]); - const viewOptions = ["Select a view", "Current Model", "Key Usage", "Claude Reset", "Model Status", "Tasks", "Config", "Skills", "Permission Log", "Settings"]; + const viewOptions = ["Select a view", "Model Choice", "Key Usage", "Claude Reset", "Model Status", "Tasks", "Config", "Skills", "Permissions", "Settings"]; function addPanel() { panels = [...panels, { id: nextId++, selected: "Select a view" }]; @@ -91,7 +91,7 @@ </div> <div class={contentClass(panel.selected)}> - {#if panel.selected === "Current Model"} + {#if panel.selected === "Model Choice"} <ModelSelector {keys} {activeKeyId} @@ -113,8 +113,8 @@ <ConfigPanel {apiBase} /> {:else if panel.selected === "Skills"} <SkillsBrowser {apiBase} /> - {:else if panel.selected === "Permission Log"} - <PermissionLog entries={permissionLog} /> + {:else if panel.selected === "Permissions"} + <PermissionLog entries={permissionLog} {apiBase} /> {:else if panel.selected === "Settings"} <SettingsPanel {keys} {apiBase} /> {/if} |
