feat: add mobile responsiveness support

- Hamburger menu + drawer sidebar for mobile navigation
- Auto-collapse chat session list on mobile
- Responsive grids, modals, forms, and settings
- Touch-friendly nav items (44px targets)
- Skills page sidebar toggle on mobile
- Memory sections stack vertically on mobile

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
ekko
2026-04-15 09:12:54 +08:00
parent 29f19ddb30
commit 9556db2f90
24 changed files with 273 additions and 43 deletions
+4 -4
View File
@@ -24,7 +24,7 @@ async function save(values: Record<string, any>) {
<NInputNumber
:value="settingsStore.agent.max_turns"
:min="1" :max="200" :step="5"
size="small" style="width: 120px"
size="small" class="input-sm"
@update:value="v => v != null && save({ max_turns: v })"
/>
</SettingRow>
@@ -32,7 +32,7 @@ async function save(values: Record<string, any>) {
<NInputNumber
:value="settingsStore.agent.gateway_timeout"
:min="60" :max="7200" :step="60"
size="small" style="width: 120px"
size="small" class="input-sm"
@update:value="v => v != null && save({ gateway_timeout: v })"
/>
</SettingRow>
@@ -40,7 +40,7 @@ async function save(values: Record<string, any>) {
<NInputNumber
:value="settingsStore.agent.restart_drain_timeout"
:min="10" :max="300" :step="10"
size="small" style="width: 120px"
size="small" class="input-sm"
@update:value="v => v != null && save({ restart_drain_timeout: v })"
/>
</SettingRow>
@@ -52,7 +52,7 @@ async function save(values: Record<string, any>) {
{ label: t('settings.agent.always'), value: 'always' },
{ label: t('settings.agent.never'), value: 'never' },
]"
size="small" style="width: 120px"
size="small" class="input-sm"
@update:value="v => save({ tool_use_enforcement: v })"
/>
</SettingRow>