]> git.djapps.eu Git - pkg/ggml/sources/llama.cpp/commit
ui: Sidebar Conversations Bulk Action + Improved Settings logic/UI (#25815)
authorAleksander Grygier <redacted>
Mon, 20 Jul 2026 21:40:08 +0000 (23:40 +0200)
committerGitHub <redacted>
Mon, 20 Jul 2026 21:40:08 +0000 (23:40 +0200)
commit2beefef68825aed8de05f0d89981bf5d05266a3c
tree1f1ce7e96c914c8ab14aaebb168fbecf8736d8c4
parent91d2fc387529940230555abd297a8b5e99737d3f
ui: Sidebar Conversations Bulk Action + Improved Settings logic/UI (#25815)

* feat: WIP

* feat: Replace conversation rename flow with unified AlertDialog component

* feat: Add radio group component and consolidate title generation settings

* refactor: Remove JS Sandbox global toggle and migrate legacy user state

* chore: Formatting

* refactor: Cleanup

Co-authored-by: Aleksander Grygier <redacted>
* refactor: Cleanup

* refactor: Marquee selection hook

* feat: UI improvements

* refactor: Bulk db operations

* fix: optimize bulk conversation deletion to handle ancestor chains

* refactor: remove pairedKey mechanism from settings system

* fix: remove redundant onclick handler from dialog cancel button

* chore: pin @lucide/svelte to exact version

* feat: Run JavaScript tool disabled by default

* fix: correct active conversation deletion tracking in bulk delete

* feat: improve shift-key multi-selection support in sidebar via keyboard

* refactor: Retrieve JS Tool enabling via Developer Settings

* nits: sync, dialog wording, cycle guard, and lockfile follow-ups

- Restore titleGenerationUseLLM registry entry so it syncs across devices again
- Mention fork cascade in the bulk delete confirmation dialog
- Clear newParent on cycle guard break so children never point at a deleted conversation
- Align @lucide/svelte in package-lock.json with the exact pin in package.json

---------

Co-authored-by: Pascal <redacted>
31 files changed:
tools/ui/package-lock.json
tools/ui/package.json
tools/ui/src/lib/components/app/actions/ActionIcon.svelte
tools/ui/src/lib/components/app/dialogs/DialogConversationRename.svelte [new file with mode: 0644]
tools/ui/src/lib/components/app/dialogs/DialogConversationSelection.svelte
tools/ui/src/lib/components/app/dialogs/DialogConversationTitleUpdate.svelte [deleted file]
tools/ui/src/lib/components/app/dialogs/DialogExportSettings.svelte
tools/ui/src/lib/components/app/dialogs/index.ts
tools/ui/src/lib/components/app/misc/ConversationSelection.svelte
tools/ui/src/lib/components/app/navigation/SidebarNavigation/SidebarNavigation.svelte
tools/ui/src/lib/components/app/navigation/SidebarNavigation/SidebarNavigationActions.svelte
tools/ui/src/lib/components/app/navigation/SidebarNavigation/SidebarNavigationConversationItem.svelte
tools/ui/src/lib/components/app/navigation/SidebarNavigation/SidebarNavigationConversationList.svelte
tools/ui/src/lib/components/app/navigation/SidebarNavigation/SidebarNavigationSearchResults.svelte
tools/ui/src/lib/components/app/navigation/SidebarNavigation/SidebarNavigationSelectionBar.svelte [new file with mode: 0644]
tools/ui/src/lib/components/app/navigation/index.ts
tools/ui/src/lib/components/app/settings/SettingsChat/SettingsChatFields.svelte
tools/ui/src/lib/components/app/settings/SettingsChat/SettingsChatToolsTab.svelte
tools/ui/src/lib/components/ui/checkbox/checkbox.svelte
tools/ui/src/lib/components/ui/radio-group/index.ts [new file with mode: 0644]
tools/ui/src/lib/components/ui/radio-group/radio-group-item.svelte [new file with mode: 0644]
tools/ui/src/lib/components/ui/radio-group/radio-group.svelte [new file with mode: 0644]
tools/ui/src/lib/constants/settings-keys.ts
tools/ui/src/lib/constants/settings-registry.ts
tools/ui/src/lib/enums/settings.enums.ts
tools/ui/src/lib/hooks/use-marquee-selection.svelte.ts [new file with mode: 0644]
tools/ui/src/lib/services/database.service.ts
tools/ui/src/lib/stores/chat.svelte.ts
tools/ui/src/lib/stores/conversations.svelte.ts
tools/ui/src/lib/types/settings.d.ts
tools/ui/src/routes/+layout.svelte