import { useRef, useState } from "preact/compat"; import type { EventData } from "../../components/app_context"; import { closeActiveDialog, openDialog } from "../../services/dialog"; import { t } from "../../services/i18n"; import FormGroup from "../react/FormGroup"; import FormRadioGroup from "../react/FormRadioGroup"; import Modal from "../react/Modal"; import NoteAutocomplete from "../react/NoteAutocomplete"; import ReactBasicWidget from "../react/ReactBasicWidget"; import Button from "../react/Button"; import { Suggestion, triggerRecentNotes } from "../../services/note_autocomplete"; import tree from "../../services/tree"; import froca from "../../services/froca"; import EditableTextTypeWidget from "../type_widgets/editable_text"; interface IncludeNoteDialogProps { textTypeWidget?: EditableTextTypeWidget; } function IncludeNoteDialogComponent({ textTypeWidget }: IncludeNoteDialogProps) { const [suggestion, setSuggestion] = useState(null); const [boxSize, setBoxSize] = useState("medium"); const autoCompleteRef = useRef(null); return (textTypeWidget && triggerRecentNotes(autoCompleteRef.current)} onSubmit={() => { if (!suggestion?.notePath) { return; } closeActiveDialog(); includeNote(suggestion.notePath, textTypeWidget); }} footer={