-
-
Notifications
You must be signed in to change notification settings - Fork 1.8k
Hjamet/issue1182 #1219
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
hjamet
wants to merge
17
commits into
khoj-ai:master
Choose a base branch
from
hjamet:hjamet/issue1182
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Hjamet/issue1182 #1219
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…ludes loading available files via an API, managing suggestions based on user input, and inserting suggestions at the caret. Improved user experience with keyboard interactions for navigating and selecting suggestions.
…k. La version de 'magika' a été augmentée à 0.6.2 et celle de 'katex' à 0.16.22. Ajout d'une référence pour le conteneur de suggestions dans le composant ChatInputArea, et ajustement de la logique de filtrage des suggestions pour limiter le nombre d'éléments affichés à 20.
…atInputArea component. Updated suggestion filtering logic to include separate menu levels and improved keyboard interaction for selecting suggestions. Integrated new states for date mode and word mode, enabling dynamic insertion of corresponding filters.
…nt ChatInputArea. Mise à jour de la logique de filtrage des suggestions pour inclure des niveaux de menu distincts et amélioration de l'interaction au clavier pour la sélection des suggestions. Intégration de nouveaux états pour le mode date et le mode mot, permettant l'insertion dynamique des filtres correspondants.
…e ChatInputArea component. Updated suggestion logic to enable dynamic insertion of corresponding filters based on selected modes. Improved user interaction when entering operators.
…ChatInputArea. Mise à jour de la logique de filtrage des suggestions pour inclure des niveaux de menu distincts et amélioration de l'interaction utilisateur lors de l'insertion dynamique des filtres correspondants. Gestion des opérateurs pour les filtres de date et de mot intégrée.
…e tokens dans le composant ChatInputArea. Amélioration de l'expérience utilisateur en garantissant un espacement approprié lors de l'insertion dynamique de contenu.
… dans le composant ChatInputArea. Ajout de vérifications pour garantir des espaces appropriés avant et après les tokens et les dates, améliorant ainsi l'expérience utilisateur lors de la saisie dynamique.
…tArea. Ajout d'une logique pour ouvrir le sélecteur de fichiers filtré en fonction de la saisie utilisateur après le symbole '@'. Mise à jour du texte d'espace réservé pour clarifier l'utilisation des commandes et des filtres.
…nputArea. Importation de la fonction getTriggerAtCaret depuis le nouveau fichier query-filters.tsx pour améliorer la lisibilité et la modularité du code. Mise à jour de l'affichage des suggestions pour intégrer un composant QueryFiltersPopover, optimisant ainsi l'interaction utilisateur lors de la sélection des filtres.
…icher les messages avec des badges pour les tokens (fichiers, dates, inclusions, exclusions). Synchronisation du défilement de l'overlay avec la zone de texte pour une meilleure expérience utilisateur lors de la saisie. Mise à jour du style de la zone de texte pour améliorer la visibilité des entrées.
…Message pour mettre en évidence les tokens (fichiers, dates, inclusions, exclusions) en fonction de leur type. Gestion des erreurs de décoration pour assurer un rendu markdown en cas d'échec. Amélioration de l'expérience utilisateur lors de l'affichage des messages.
…upprimant les bordures pour une apparence plus épurée. Mise à jour de la classe CSS pour le texte afin d'assurer une meilleure lisibilité sur les appareils mobiles. Ajustement de la taille du texte pour une expérience utilisateur optimisée.
…putArea afin d'améliorer la synchronisation des métriques de police et le défilement. Mise à jour de la logique de défilement pour assurer un alignement précis du texte et amélioration de la gestion des tokens dans le composant ChatMessage pour une meilleure correspondance des formats. Optimisation de l'expérience utilisateur lors de la saisie et de l'affichage des messages.
…s sur les corrections automatiques de formatage appliquées par les hooks pré-commit.
I can't work out where the CI jobs fail: does it really come from my code? @debanjum 🦦 |
Yeah, the test failures are unrelated to your changes |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
This change adds an interactive, caret-aware query filter selector to the chat input so users can easily add explicit context filters (file, date, word) to chat queries. The input now recognizes triggers like
@
,file
,dt
and+"
/-"
and provides keyboard/mouse-driven menus to insert correctly-formatted filters that are passed to the backend.🗂️ File filter autocomplete
file:
(or choosesfile
from the@
menu) a searchable, keyboard-navigable file selector appears showing the top matches (limited to 20). Selecting a file insertsfile:"path/to/file"
at the caret position and preserves surrounding spacing.✨ Structured query triggers (date & word)
@
opens a small menu withfile
,date
,word
choices. Choosing an option inserts the corresponding token and opens the appropriate sub-selector.date
supports operator choices (exact / after / before). Choosing an operator inserts the operator token (e.g.dt>="
) and opens a mirror suggestion that shows the text the user types; pressing Enter validates and inserts the final filter (e.g.dt>="YYYY-MM-DD"
).word
supports include/exclude via+"
and-"
triggers and shows a mirror suggestion of the typed term; Enter inserts+"term"
or-"term"
.@
-typing: typing immediately after@
(e.g.@Task
) now opens the file selector filtered by the typed text.✨ New feature: inline badge preview in input
file:"..."
,dt:"..."
,+"..."
,-"..."
) as light-colored inline badges while you type. The overlay is caret-aware and synchronized with the textarea to mirror cursor position and wrapping.Notes
src/interface/web/app/components/chatInputArea/chatInputArea.tsx
. It reuses the existing file listing API (/api/content/computer
) and aims to keep behavior keyboard-first (Arrow Up/Down, Enter, Esc).