fix some auto complete issues

This commit is contained in:
Chenyu Huang
2025-07-24 15:58:24 -07:00
parent fc2fae42bd
commit ead6862fc6
3 changed files with 8 additions and 5 deletions
+1 -1
View File
@@ -7,7 +7,7 @@ export function getMentionAt(
text: string,
cursorPos: number,
): FoundMention | undefined {
let re = /(^|\s)@([a-z0-9.]*)/gi
let re = /(^|\s)@([a-z0-9.-]*)/gi
let match
while ((match = re.exec(text))) {
const spaceOffset = match[1].length
@@ -96,10 +96,11 @@ export const TextInput = forwardRef(function TextInputImpl(
newRt.detectFacetsWithoutResolution()
setRichText(newRt)
const prefix = getMentionAt(
newText,
textInputSelection.current?.start || 0,
)
// NOTE: BinaryFiddler
// onChangeText happens before onSelectionChange, cursorPos is out of bound if the user deletes characters,
const cursorPos = textInputSelection.current?.start ?? 0
const prefix = getMentionAt(newText, Math.min(cursorPos, newText.length))
if (prefix) {
setAutocompletePrefix(prefix.value)
} else if (autocompletePrefix) {