Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions apps/web/src/components/KeybindingsSettingsPanel.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -248,14 +248,14 @@ export function KeybindingsSettingsPanel(props: KeybindingsSettingsPanelProps) {
for advanced bindings.
</p>
</div>
<div className="flex flex-wrap gap-2">
<div className="flex flex-wrap items-center gap-2">
<Button
size="sm"
variant="outline"
size="xs"
variant="link"
disabled={!props.configPath || props.isOpeningConfigFile}
onClick={props.onOpenConfigFile}
>
{props.isOpeningConfigFile ? "Opening..." : "Open JSON"}
{props.isOpeningConfigFile ? "Opening..." : "Open keybindings.json"}
</Button>
<Button
size="sm"
Expand Down
27 changes: 0 additions & 27 deletions apps/web/src/routes/_chat.settings.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -246,7 +246,7 @@
</div>
<Switch
checked={!props.isHidden}
onCheckedChange={(checked) => props.onHiddenChange(!Boolean(checked))}

Check warning on line 249 in apps/web/src/routes/_chat.settings.tsx

View workflow job for this annotation

GitHub Actions / Format, Lint, Typecheck, Test, Browser Test, Build

eslint(no-extra-boolean-cast)

Redundant Boolean call
aria-label={`Show ${props.option.title} in the provider picker`}
/>
</div>
Expand Down Expand Up @@ -576,7 +576,7 @@
if (!threadsHydrated || projects.length === 0) {
return false;
}
return threads.length === 0 || threads.every((thread) => thread.messages.length === 0);

Check warning on line 579 in apps/web/src/routes/_chat.settings.tsx

View workflow job for this annotation

GitHub Actions / Format, Lint, Typecheck, Test, Browser Test, Build

eslint-plugin-unicorn(no-useless-length-check)

Found a useless array length check
}, [projects.length, threads, threadsHydrated]);

const [isOpeningKeybindings, setIsOpeningKeybindings] = useState(false);
Expand Down Expand Up @@ -3030,33 +3030,6 @@
<div className="space-y-6">
<SettingsSection title="Developer tools">
<div className="space-y-2">
<SettingsRow
title="Keybindings"
description="Open the persisted `keybindings.json` file to edit advanced bindings directly."
status={
<>
<span className="block break-all font-mono text-[11px] text-foreground">
{keybindingsConfigPath ?? "Resolving keybindings path..."}
</span>
{openKeybindingsError ? (
<span className="mt-1 block text-destructive">{openKeybindingsError}</span>
) : (
<span className="mt-1 block">Opens in your preferred editor.</span>
)}
</>
}
control={
<Button
size="xs"
variant="outline"
disabled={!keybindingsConfigPath || isOpeningKeybindings}
onClick={openKeybindingsFile}
>
{isOpeningKeybindings ? "Opening..." : "Open file"}
</Button>
}
/>

<SettingsRow
title="Recovery tools"
description="Rebuild local project indexes without clearing existing chats when the local state gets out of sync."
Expand Down
Loading