SYMBOL INDEX (573 symbols across 217 files) FILE: Backend/ensure_dependencies.py function find_python310 (line 18) | def find_python310(): function create_venv (line 37) | def create_venv(venv_path=None): function get_venv_python (line 56) | def get_venv_python(venv_path): function install_package (line 62) | def install_package(python_path, package): function get_installed_packages (line 75) | def get_installed_packages(python_path): function async_init_store (line 85) | async def async_init_store(): function get_package_version (line 119) | def get_package_version(python_path, package_name): function install_requirements (line 139) | def install_requirements(custom_venv_path=None): FILE: Backend/main.py function timeout_middleware (line 49) | async def timeout_middleware(request: Request, call_next): function chat_completion (line 65) | async def chat_completion(request: ChatCompletionRequest, user_id: str =... function get_model_info (line 88) | async def get_model_info(user_id: str = Depends(verify_token_or_api_key)): function load_model_endpoint (line 96) | async def load_model_endpoint(request: ModelLoadRequest, user_id: str = ... function unload_model_endpoint (line 135) | async def unload_model_endpoint(user_id: str = Depends(verify_token_or_a... function webcrawl_endpoint (line 159) | async def webcrawl_endpoint(data: WebCrawlRequest, user_id: str = Depend... function transcribe_audio_endpoint (line 197) | async def transcribe_audio_endpoint(audio_file: UploadFile = File(...), ... function add_embedding (line 204) | async def add_embedding(data: EmbeddingRequest, user_id: str = Depends(v... function youtube_ingest (line 253) | async def youtube_ingest(data: YoutubeTranscriptRequest, user_id: str = ... function cancel_embedding (line 273) | async def cancel_embedding(user_id: str = Depends(verify_token)): function restart_server (line 284) | async def restart_server(user_id: str = Depends(verify_token)): function vector_query (line 305) | async def vector_query(data: VectorStoreQueryRequest, user_id: str = Dep... function delete_collection (line 317) | async def delete_collection(data: DeleteCollectionRequest, user_id: str ... function api_vector (line 325) | async def api_vector(query_request: QueryRequest, user_id: str = Depends... function api_llm (line 340) | async def api_llm(query_request: ChatCompletionRequest, user_id: str = D... function api_rag (line 355) | async def api_rag(query_request: QueryRequest, user_id: str = Depends(ap... function cancel_crawl (line 373) | async def cancel_crawl(user_id: str = Depends(verify_token)): FILE: Backend/src/authentication/api_key_authorization.py function get_optional_token (line 19) | async def get_optional_token(token: Optional[str] = Depends(oauth2_schem... function api_key_auth (line 23) | async def api_key_auth(token: Optional[str] = Depends(get_optional_token)): FILE: Backend/src/authentication/token.py function get_optional_token (line 19) | async def get_optional_token(token: Optional[str] = Depends(oauth2_schem... function verify_token (line 23) | async def verify_token(token: Optional[str] = Depends(get_optional_token)): function optional_auth (line 40) | async def optional_auth(request: Request): function verify_token_or_api_key (line 51) | async def verify_token_or_api_key(token: Optional[str] = Depends(get_opt... FILE: Backend/src/data/dataFetch/webcrawler.py class WebCrawler (line 15) | class WebCrawler: method __init__ (line 16) | def __init__(self, base_url, user_id, user_name, collection_id, collec... method _get_collection_path (line 41) | def _get_collection_path(self, user_id, user_name, collection_id, coll... method _print_progress (line 54) | def _print_progress(self): method is_valid_url (line 71) | def is_valid_url(self, url): method save_page (line 101) | def save_page(self, url, html_content): method get_links (line 133) | def get_links(self, soup, current_url): method scrape_page (line 156) | def scrape_page(self, url): method scrape (line 188) | def scrape(self): method _update_progress (line 253) | def _update_progress(self, future): method _process_url (line 271) | def _process_url(self, url): method save_progress (line 304) | def save_progress(self): FILE: Backend/src/data/dataFetch/youtube.py function _get_collection_path (line 22) | def _get_collection_path(user_id, user_name, collection_id, collection_n... function youtube_transcript (line 36) | def youtube_transcript(request: YoutubeTranscriptRequest) -> Generator[d... function _time_to_seconds (line 331) | def _time_to_seconds(time_str): FILE: Backend/src/data/dataIntake/csvFallbackSplitting.py function split_csv_text (line 8) | def split_csv_text(text: str, file_path: str, metadata: dict = None) -> ... FILE: Backend/src/data/dataIntake/fileTypes/loadX.py function load_pdf (line 15) | async def load_pdf(file_path): function load_py (line 57) | async def load_py(file): function load_docx (line 67) | async def load_docx(file): function load_txt (line 78) | async def load_txt(file): function load_md (line 87) | async def load_md(file): function load_html (line 99) | async def load_html(file_path: str) -> str: function load_csv (line 131) | async def load_csv(file): function load_json (line 141) | async def load_json(file): function load_pptx (line 151) | def load_pptx(file): function load_xlsx (line 165) | def load_xlsx(file): function load_docx (line 174) | async def load_docx(file): FILE: Backend/src/data/dataIntake/getHtmlFiles.py function get_html_files (line 4) | def get_html_files(directory): FILE: Backend/src/data/dataIntake/loadFile.py function load_document (line 32) | async def load_document(file: str): FILE: Backend/src/data/dataIntake/textSplitting.py function split_text (line 6) | def split_text(text: str, file_path: str, metadata: dict = None) -> list: FILE: Backend/src/data/database/checkAPIKey.py function check_api_key (line 4) | def check_api_key(user_id: int): FILE: Backend/src/data/database/db.py function get_user_data_path (line 9) | def get_user_data_path(): function db (line 27) | def db(): FILE: Backend/src/data/database/getCollectionInfo.py class CollectionSettings (line 7) | class CollectionSettings: function get_collection_settings (line 19) | def get_collection_settings(user_id: str, collection_name: str) -> Optio... FILE: Backend/src/data/database/getLLMApiKey.py function get_llm_api_key (line 4) | def get_llm_api_key(user_id, provider): FILE: Backend/src/endpoint/api.py function chat_completion_stream (line 18) | async def chat_completion_stream(request: ChatCompletionRequest) -> Asyn... FILE: Backend/src/endpoint/deleteStore.py function delete_vectorstore_collection (line 8) | def delete_vectorstore_collection(data: DeleteCollectionRequest): FILE: Backend/src/endpoint/devApiCall.py function vector_call (line 10) | def vector_call(query_request: VectorStoreQueryRequest, user_id: str): function rag_call (line 37) | async def rag_call(query_request: VectorStoreQueryRequest, user_id: str): function llm_call (line 69) | async def llm_call(query_request: ChatCompletionRequest, user_id: str): FILE: Backend/src/endpoint/embed.py function embed (line 19) | async def embed(data: EmbeddingRequest) -> AsyncGenerator[dict, None]: FILE: Backend/src/endpoint/models.py class EmbeddingRequest (line 5) | class EmbeddingRequest(BaseModel): class ModelLoadRequest (line 16) | class ModelLoadRequest(BaseModel): class Config (line 74) | class Config: class VectorStoreQueryRequest (line 77) | class VectorStoreQueryRequest(BaseModel): class YoutubeTranscriptRequest (line 99) | class YoutubeTranscriptRequest(BaseModel): class DeleteCollectionRequest (line 110) | class DeleteCollectionRequest(BaseModel): class WebCrawlRequest (line 117) | class WebCrawlRequest(BaseModel): class QueryRequest (line 129) | class QueryRequest(BaseModel): class Message (line 148) | class Message(BaseModel): class ChatCompletionRequest (line 155) | class ChatCompletionRequest(BaseModel): class GenerateRequest (line 173) | class GenerateRequest(BaseModel): FILE: Backend/src/endpoint/ragQuery.py function rag_query (line 6) | async def rag_query(data: VectorStoreQueryRequest, collectionInfo): FILE: Backend/src/endpoint/transcribe.py function transcribe_audio (line 12) | async def transcribe_audio(audio_file: UploadFile = File(...), model_nam... FILE: Backend/src/endpoint/vectorQuery.py function query_vectorstore (line 6) | def query_vectorstore(data: VectorStoreQueryRequest, is_local: bool): FILE: Backend/src/endpoint/webcrawl.py function webcrawl (line 15) | def webcrawl(data: WebCrawlRequest, cancel_event=None) -> Generator[dict... FILE: Backend/src/llms/llmQuery.py function llm_query (line 9) | async def llm_query(data: ChatCompletionRequest, api_key: Optional[str] ... FILE: Backend/src/llms/messages/formMessages.py function form_messages (line 4) | def form_messages(data: QueryRequest): FILE: Backend/src/llms/providers/local.py function local_query (line 13) | async def local_query(data: ChatCompletionRequest): FILE: Backend/src/llms/providers/ollama.py function ollama_query (line 8) | def ollama_query(data: QueryRequest, messages: list = None): FILE: Backend/src/llms/providers/ooba.py function ooba_query (line 5) | def ooba_query(data: QueryRequest, messages: list = None): FILE: Backend/src/llms/providers/openai.py function openai_query (line 6) | def openai_query(data: QueryRequest, api_key: Optional[str] = None, mess... FILE: Backend/src/models/exceptions.py class ModelLoadError (line 1) | class ModelLoadError(Exception): class ModelNotFoundError (line 5) | class ModelNotFoundError(Exception): class ModelDownloadError (line 9) | class ModelDownloadError(Exception): FILE: Backend/src/models/loaders/base.py class BaseLoader (line 13) | class BaseLoader(ABC): method __init__ (line 26) | def __init__(self, request: ModelLoadRequest, manager: Any): method load (line 39) | def load(self) -> Tuple[Any, Any]: method get_metadata (line 52) | def get_metadata(self) -> Optional[Dict[str, Any]]: method get_config (line 62) | def get_config(self) -> Dict[str, Any]: method _resolve_model_path (line 71) | def _resolve_model_path(self) -> Path: method get_request_dict (line 94) | def get_request_dict(self) -> Dict[str, Any]: method log_loading_info (line 103) | def log_loading_info(self) -> None: method cleanup (line 111) | def cleanup(model: Any) -> None: method validate_model_path (line 125) | def validate_model_path(self) -> None: method get_common_metadata (line 136) | def get_common_metadata(self) -> Dict[str, Any]: method validate_request (line 151) | def validate_request(self) -> None: method check_dependencies (line 164) | def check_dependencies(self) -> None: method prepare_loading (line 173) | def prepare_loading(self) -> None: method get_device_config (line 192) | def get_device_config(self) -> Dict[str, Any]: method get_memory_info (line 208) | def get_memory_info(self) -> Dict[str, Any]: method get_system_info (line 226) | def get_system_info(self) -> Dict[str, Any]: method log_error (line 243) | def log_error(self, error: Exception, context: str = "") -> None: method __repr__ (line 254) | def __repr__(self) -> str: FILE: Backend/src/models/loaders/exllama.py class ExLlamaV2Loader (line 11) | class ExLlamaV2Loader(BaseLoader): method load (line 14) | def load(self) -> Tuple[Any, Any]: method get_metadata (line 66) | def get_metadata(self) -> Optional[Dict[str, Any]]: method get_config (line 76) | def get_config(self) -> Dict[str, Any]: class ExLlamaV2HFLoader (line 88) | class ExLlamaV2HFLoader(BaseLoader): method load (line 91) | def load(self) -> Tuple[Any, Any]: method get_metadata (line 104) | def get_metadata(self) -> Optional[Dict[str, Any]]: method get_config (line 108) | def get_config(self) -> Dict[str, Any]: FILE: Backend/src/models/loaders/hqq.py class HQQLoader (line 13) | class HQQLoader(BaseLoader): method load (line 16) | def load(self) -> Tuple[Any, Any]: method _download_model (line 60) | def _download_model(self) -> None: method get_metadata (line 126) | def get_metadata(self) -> Optional[Dict[str, Any]]: method get_config (line 137) | def get_config(self) -> Dict[str, Any]: FILE: Backend/src/models/loaders/llamaccphf.py class LlamaCppHFLoader (line 6) | class LlamaCppHFLoader(LlamaCppLoader): method load (line 12) | def load(self) -> Tuple[Any, Any]: FILE: Backend/src/models/loaders/llamacpp.py class LlamaCppLoader (line 16) | class LlamaCppLoader(BaseLoader): method __init__ (line 22) | def __init__(self, request: ModelLoadRequest, manager: Any): method load (line 27) | def load(self) -> Tuple[Any, Any]: method _get_model_path (line 96) | def _get_model_path(self) -> Path: method _download_model (line 197) | def _download_model(self, model_dir: Path) -> Path: method _download_file (line 240) | def _download_file(self, url: str, path: Path, headers: Dict[str, str]... method _get_model_params (line 259) | def _get_model_params(self) -> Dict[str, Any]: method _configure_gpu_layers (line 317) | def _configure_gpu_layers(self) -> int: method _setup_cache (line 335) | def _setup_cache(self, model: Any) -> None: method get_metadata (line 349) | def get_metadata(self) -> Optional[Dict[str, Any]]: method get_config (line 383) | def get_config(self) -> Dict[str, Any]: method cleanup (line 394) | def cleanup(model: Any) -> None: FILE: Backend/src/models/loaders/tensorrt.py class TensorRTLoader (line 11) | class TensorRTLoader(BaseLoader): method load (line 14) | def load(self) -> Tuple[Any, Any]: method get_metadata (line 45) | def get_metadata(self) -> Optional[Dict[str, Any]]: method get_config (line 56) | def get_config(self) -> Dict[str, Any]: FILE: Backend/src/models/loaders/transformers.py class TransformersLoader (line 16) | class TransformersLoader(BaseLoader): method load (line 22) | def load(self) -> Tuple[Any, Any]: method _get_model_kwargs (line 123) | def _get_model_kwargs(self) -> Dict[str, Any]: method _get_quantization_config (line 178) | def _get_quantization_config(self) -> BitsAndBytesConfig: method get_metadata (line 188) | def get_metadata(self) -> Optional[Dict[str, Any]]: method get_config (line 208) | def get_config(self) -> Dict[str, Any]: method _make_json_serializable (line 231) | def _make_json_serializable(self, obj: Any) -> Any: method cleanup (line 242) | def cleanup(model: PreTrainedModel) -> None: FILE: Backend/src/models/manager.py class ModelManager (line 22) | class ModelManager: method __init__ (line 28) | def __init__(self): method check_platform_compatibility (line 49) | def check_platform_compatibility(self, model_type: str) -> Tuple[bool,... method get_model_metadata (line 53) | def get_model_metadata(self, request: ModelLoadRequest) -> Optional[Di... method is_model_loaded (line 78) | def is_model_loaded(self) -> bool: method get_model_info (line 82) | def get_model_info(self) -> Dict[str, Any]: method clear_model (line 100) | def clear_model(self) -> None: method _make_json_serializable (line 136) | def _make_json_serializable(self, obj: Any) -> Any: method load_model (line 146) | def load_model(self, request: ModelLoadRequest) -> Tuple[Any, Any]: method _detect_model_type (line 261) | def _detect_model_type(self, request: ModelLoadRequest) -> str: FILE: Backend/src/models/streamer.py class StopNowException (line 14) | class StopNowException(Exception): class StreamingStoppingCriteria (line 18) | class StreamingStoppingCriteria: method __init__ (line 21) | def __init__(self): method __call__ (line 24) | def __call__(self, input_ids, scores) -> bool: class StopOnInterrupt (line 28) | class StopOnInterrupt(StreamingStoppingCriteria): method __init__ (line 31) | def __init__(self, stop_signal=None): method __call__ (line 35) | def __call__(self, input_ids, scores) -> bool: class StreamIterator (line 39) | class StreamIterator(AsyncIterator[str], Iterator[str]): method __init__ (line 42) | def __init__(self, func: Callable, callback: Optional[Callable] = None): method _queue_callback (line 51) | def _queue_callback(self, data): method _start_generation (line 68) | def _start_generation(self): method __iter__ (line 83) | def __iter__(self) -> Iterator[str]: method __next__ (line 87) | def __next__(self) -> str: method __aiter__ (line 96) | def __aiter__(self): method __anext__ (line 100) | async def __anext__(self) -> str: method __enter__ (line 114) | def __enter__(self): method __exit__ (line 117) | def __exit__(self, exc_type, exc_val, exc_tb): class TextGenerator (line 121) | class TextGenerator: method __init__ (line 124) | def __init__(self, model, tokenizer, device: str = "cpu"): method _log_cuda_status (line 131) | def _log_cuda_status(self): method _create_stream_response (line 142) | def _create_stream_response(self, text: str, generated_text: str, is_f... method _stream_tokens (line 157) | def _stream_tokens(self, callback: Callable, generator, decode_func: C... method generate (line 171) | def generate(self, FILE: Backend/src/models/utils/detect_type.py function detect_model_type (line 9) | def detect_model_type(model_path: Union[str, Path]) -> str: FILE: Backend/src/models/utils/device.py function get_device (line 5) | def get_device(request: ModelLoadRequest) -> str: FILE: Backend/src/models/utils/download.py function download_file_with_progress (line 10) | def download_file_with_progress(url: str, file_path: Path, headers: Opti... function get_hf_repo_files (line 36) | def get_hf_repo_files(repo_id: str, hf_token: Optional[str] = None) -> L... function download_hf_model_files (line 49) | def download_hf_model_files(repo_id: str, model_path: Path, required_fil... function find_best_gguf_file (line 80) | def find_best_gguf_file(files: List[Dict]) -> Optional[Dict]: function download_gguf_model (line 93) | def download_gguf_model(repo_id: str, model_path: Path, hf_token: Option... FILE: Backend/src/models/utils/platform.py function check_platform_compatibility (line 5) | def check_platform_compatibility(model_type: str) -> Tuple[bool, str]: FILE: Backend/src/vectorstorage/embeddings.py function chunk_list (line 4) | def chunk_list(lst, n): function embed_chunk (line 10) | def embed_chunk(args): FILE: Backend/src/vectorstorage/helpers/sanitizeCollectionName.py function sanitize_collection_name (line 4) | def sanitize_collection_name(name): FILE: Backend/src/vectorstorage/init_store.py function get_models_dir (line 9) | def get_models_dir(): function init_store (line 25) | async def init_store(model_name: str = "HIT-TMG/KaLM-embedding-multiling... FILE: Backend/src/vectorstorage/vectorstore.py function get_app_data_dir (line 12) | def get_app_data_dir(): function get_vectorstore (line 27) | def get_vectorstore(api_key: str, collection_name: str, use_local_embedd... FILE: Backend/src/voice/voice_to_text.py function initialize_model (line 21) | def initialize_model(model_name: str = "base"): FILE: Backend/tests/testApi.py function test_embed_endpoint (line 8) | def test_embed_endpoint(): function test_concurrent_embedding (line 22) | def test_concurrent_embedding(): function test_youtube_ingest (line 43) | def test_youtube_ingest(): function test_cancel_embedding (line 56) | def test_cancel_embedding(): function test_query (line 83) | def test_query(): FILE: Backend/tests/test_voice.py function create_test_wav (line 13) | def create_test_wav(duration=3.0, frequency=440.0, sample_rate=16000): function test_voice_to_text_basic (line 37) | def test_voice_to_text_basic(): function test_voice_to_text_models (line 58) | def test_voice_to_text_models(): function test_voice_to_text_invalid_audio (line 79) | def test_voice_to_text_invalid_audio(): function test_voice_to_text_missing_file (line 98) | def test_voice_to_text_missing_file(): function test_voice_to_text_long_audio (line 103) | def test_voice_to_text_long_audio(): function test_voice_to_text_different_frequencies (line 122) | def test_voice_to_text_different_frequencies(): function record_audio (line 141) | def record_audio(duration=5, sample_rate=16000): function test_live_voice_to_text (line 151) | def test_live_voice_to_text(capsys): FILE: Frontend/e2e/app.spec.ts function waitForMainWindow (line 16) | async function waitForMainWindow(timeout = 45000): Promise { function waitForPreloadScript (line 30) | async function waitForPreloadScript(page: Page): Promise { type MenuItem (line 123) | interface MenuItem { FILE: Frontend/src/app/App.tsx function App (line 14) | function App() { FILE: Frontend/src/components/AppAlert/SettingsAlert.tsx function SettingsAlert (line 10) | function SettingsAlert() { FILE: Frontend/src/components/Authentication/CreateAccount.tsx function CreateAccount (line 18) | function CreateAccount() { FILE: Frontend/src/components/Authentication/SelectAccount.tsx function SelectAccount (line 23) | function SelectAccount({ users }: { users: User[] }) { FILE: Frontend/src/components/Chat/Chat.tsx function Chat (line 12) | function Chat() { FILE: Frontend/src/components/Chat/ChatComponents/ChatHeader.tsx function ChatHeader (line 9) | function ChatHeader() { FILE: Frontend/src/components/Chat/ChatComponents/ChatMessagesArea.tsx function ChatMessagesArea (line 8) | function ChatMessagesArea({ FILE: Frontend/src/components/Chat/ChatComponents/LoadingIndicator.tsx function LoadingIndicator (line 4) | function LoadingIndicator() { FILE: Frontend/src/components/Chat/ChatComponents/NewConvoWelcome.tsx function NewConvoWelcome (line 15) | function NewConvoWelcome() { FILE: Frontend/src/components/Chat/ChatComponents/ReasoningMessage.tsx type ReasoningMessageProps (line 20) | interface ReasoningMessageProps { FILE: Frontend/src/components/Chat/ChatComponents/StreamingMessage.tsx function StreamingMessage (line 17) | function StreamingMessage({ content }: { content: string }) { FILE: Frontend/src/components/Chat/ChatComponents/SyntaxHightlightedCode.tsx type SyntaxHighlightedCodeProps (line 6) | interface SyntaxHighlightedCodeProps { function SyntaxHighlightedCode (line 11) | function SyntaxHighlightedCode({ function normalizeLanguage (line 61) | function normalizeLanguage(language: string, code: string): string { FILE: Frontend/src/components/CollectionModals/CollectionComponents/AddLibrary.tsx function AddLibrary (line 28) | function AddLibrary() { FILE: Frontend/src/components/CollectionModals/CollectionComponents/DataStoreSelect.tsx function DataStoreSelect (line 23) | function DataStoreSelect() { FILE: Frontend/src/components/CollectionModals/CollectionComponents/FIlesInCollection.tsx function FilesInCollection (line 22) | function FilesInCollection() { FILE: Frontend/src/components/CollectionModals/CollectionComponents/Ingest.tsx function IngestModal (line 11) | function IngestModal({ FILE: Frontend/src/components/CollectionModals/CollectionComponents/IngestProgress.tsx function IngestProgress (line 7) | function IngestProgress({ truncate }: { truncate?: boolean }) { FILE: Frontend/src/components/CollectionModals/CollectionComponents/IngestTabs/FileIngestTab.tsx function FileTab (line 8) | function FileTab() { FILE: Frontend/src/components/CollectionModals/CollectionComponents/IngestTabs/LinkIngestTab.tsx function LinkIngestTab (line 10) | function LinkIngestTab() { FILE: Frontend/src/components/CollectionModals/LibraryModal.tsx function LibraryModal (line 6) | function LibraryModal() { FILE: Frontend/src/components/FileExplorer/FileExplorer.tsx type FileNode (line 24) | interface FileNode { type FileItemProps (line 31) | interface FileItemProps { function buildFileTree (line 249) | function buildFileTree(files: string[]): FileNode[] { function FileExplorer (line 281) | function FileExplorer() { FILE: Frontend/src/components/Header/Header.tsx function Header (line 13) | function Header() { FILE: Frontend/src/components/Header/HeaderComponents/Search.tsx type ConversationWithTimestamp (line 6) | type ConversationWithTimestamp = Conversation & { function SearchComponent (line 10) | function SearchComponent() { FILE: Frontend/src/components/Header/HeaderComponents/SettingsDialog.tsx function SettingsDialog (line 15) | function SettingsDialog() { FILE: Frontend/src/components/Header/HeaderComponents/ToolsDialog.tsx function ToolsDialog (line 13) | function ToolsDialog() { FILE: Frontend/src/components/Header/HeaderComponents/WinLinuxControls.tsx function WinLinuxControls (line 12) | function WinLinuxControls() { FILE: Frontend/src/components/History/History.tsx function History (line 16) | function History() { FILE: Frontend/src/components/SettingsModal/SettingsComponents/ChatSettings.tsx function ChatSettings (line 38) | function ChatSettings() { FILE: Frontend/src/components/SettingsModal/SettingsComponents/DevIntegration.tsx type APIKey (line 22) | interface APIKey { function DevIntegration (line 29) | function DevIntegration() { FILE: Frontend/src/components/SettingsModal/SettingsComponents/LLMModels/AddLocalModel.tsx function AddLocalModel (line 16) | function AddLocalModel() { FILE: Frontend/src/components/SettingsModal/SettingsComponents/LLMModels/AddOllamaModel.tsx function AddOllamaModel (line 16) | function AddOllamaModel() { FILE: Frontend/src/components/SettingsModal/SettingsComponents/LLMModels/AzureOpenAI.tsx function AzureOpenAI (line 14) | function AzureOpenAI() { FILE: Frontend/src/components/SettingsModal/SettingsComponents/LLMModels/CustomLLM.tsx function CustomLLM (line 7) | function CustomLLM() { FILE: Frontend/src/components/SettingsModal/SettingsComponents/LLMModels/External.tsx type ExternalProps (line 6) | interface ExternalProps { function External (line 11) | function External({ FILE: Frontend/src/components/SettingsModal/SettingsComponents/LLMModels/ExternalOllama.tsx function ExternalOllama (line 23) | function ExternalOllama() { FILE: Frontend/src/components/SettingsModal/SettingsComponents/LLMModels/LocalLLM.tsx function LocalLLM (line 34) | function LocalLLM() { FILE: Frontend/src/components/SettingsModal/SettingsComponents/LLMModels/Ollama.tsx function Ollama (line 15) | function Ollama() { FILE: Frontend/src/components/SettingsModal/SettingsComponents/LLMModels/Openrouter.tsx function Openrouter (line 7) | function Openrouter() { FILE: Frontend/src/components/SettingsModal/SettingsComponents/LLMPanel.tsx function LLMPanel (line 34) | function LLMPanel() { FILE: Frontend/src/components/SettingsModal/SettingsModal.tsx function SettingsModal (line 8) | function SettingsModal() { FILE: Frontend/src/components/Tools/ToolComponents/AddTools.tsx function AddTools (line 1) | function AddTools() { FILE: Frontend/src/components/Tools/ToolComponents/EnableTools.tsx function EnableTools (line 13) | function EnableTools() { FILE: Frontend/src/components/Tools/Tools.tsx function Tools (line 8) | function Tools() { FILE: Frontend/src/components/ui/badge.tsx type BadgeProps (line 26) | interface BadgeProps function Badge (line 30) | function Badge({ className, variant, ...props }: BadgeProps) { FILE: Frontend/src/components/ui/button.tsx type ButtonProps (line 8) | interface ButtonProps FILE: Frontend/src/components/ui/form.tsx type FormFieldContextValue (line 18) | type FormFieldContextValue< type FormItemContextValue (line 65) | type FormItemContextValue = { FILE: Frontend/src/components/ui/icons.tsx type Icon (line 9) | type Icon = LucideIcon; FILE: Frontend/src/components/ui/sheet.tsx type SheetContentProps (line 50) | interface SheetContentProps FILE: Frontend/src/components/ui/toast.tsx type ToastProps (line 113) | type ToastProps = React.ComponentPropsWithoutRef; type ToastActionElement (line 115) | type ToastActionElement = React.ReactElement; FILE: Frontend/src/components/ui/toaster.tsx function Toaster (line 11) | function Toaster() { FILE: Frontend/src/context/ChatInputContext.tsx type ChatInputContextType (line 3) | interface ChatInputContextType { FILE: Frontend/src/context/UserClientProviders.tsx function UserClientProviders (line 6) | function UserClientProviders({ FILE: Frontend/src/data/sysSpecs.ts type SystemSpecs (line 1) | type SystemSpecs = { FILE: Frontend/src/electron/authentication/devApi.ts function getDevSecretPath (line 8) | function getDevSecretPath(): string { function getSecret (line 15) | function getSecret(): string { function getDevApiKey (line 34) | async function getDevApiKey({ FILE: Frontend/src/electron/authentication/secret.ts function generateSecret (line 5) | function generateSecret(): string { function getSecret (line 12) | function getSecret(): string { FILE: Frontend/src/electron/authentication/token.ts function getToken (line 4) | async function getToken({ userId }: { userId: string }) { FILE: Frontend/src/electron/crawl/cancelWebcrawl.ts function cancelWebcrawl (line 3) | async function cancelWebcrawl(payload: { FILE: Frontend/src/electron/crawl/webcrawl.ts type ProgressData (line 5) | interface ProgressData { function webcrawl (line 15) | async function webcrawl(payload: { FILE: Frontend/src/electron/db.ts class DatabaseService (line 15) | class DatabaseService { method constructor (line 18) | constructor() { type TableInfo (line 382) | interface TableInfo { type TableName (line 390) | type TableName = keyof typeof expectedColumns; type ColumnInfo (line 487) | interface ColumnInfo { method init (line 546) | init() { method addInitialTools (line 552) | addInitialTools() { method getUsers (line 558) | getUsers() { method getUserSettings (line 565) | getUserSettings(userId: string | number): Promise { method updateUserSettings (line 573) | updateUserSettings(settings: UserSettings) { method getUserPrompts (line 635) | getUserPrompts(userId: number) { method addUserPrompt (line 642) | addUserPrompt( method addAPIKey (line 663) | addAPIKey(userId: number, key: string, provider: string) { method updateUserPrompt (line 680) | updateUserPrompt(userId: number, id: number, name: string, prompt: str... method isCollectionLocal (line 688) | isCollectionLocal(collectionId: number): boolean { method getCollectionLocalEmbeddingModel (line 695) | getCollectionLocalEmbeddingModel(collectionId: number): string { method createCollection (line 701) | createCollection( method addFileToCollection (line 730) | addFileToCollection(userId: number, id: number, file: string) { method deleteCollection (line 746) | deleteCollection(userId: number, id: number) { method getCollection (line 751) | getCollection(collectionId: number) { method getCollectionName (line 756) | getCollectionName(collectionId: number) { method getFilesInCollection (line 761) | getFilesInCollection(userId: number, collectionId: number) { method getUserCollections (line 766) | getUserCollections(userId: number) { method addUser (line 772) | addUser(name: string): { id: number; name: string; error?: string } { method getUserApiKeys (line 798) | getUserApiKeys(userId: number): Promise { method getApiKey (line 805) | getApiKey(userId: number, provider: string): string { method getUserConversations (line 812) | getUserConversations(userId: number) { method getUserConversationTitle (line 826) | getUserConversationTitle(userId: number, conversationId: number) { method addUserConversation (line 832) | addUserConversation(userId: number, title: string) { method deleteUserConversation (line 844) | deleteUserConversation(userId: number, id: number) { method getConversationMessages (line 850) | getConversationMessages(userId: number, conversationId: number) { method addUserMessage (line 857) | addUserMessage( method addReasoningContent (line 883) | addReasoningContent(messageId: number, reasoningContent: string) { method deleteUserMessage (line 889) | deleteUserMessage(userId: number, id: number) { method getUserPrompt (line 895) | getUserPrompt(userId: number, promptId: number) { method updateMessageDataId (line 900) | updateMessageDataId(messageId: number, dataId: number) { method addRetrievedData (line 905) | addRetrievedData(messageId: number, data: string): number { method getConversationMessagesWithData (line 915) | getConversationMessagesWithData(userId: number, conversationId: number) { method addDevAPIKey (line 929) | addDevAPIKey( method getDevAPIKeys (line 941) | getDevAPIKeys(userId: number) { method deleteDevAPIKey (line 946) | deleteDevAPIKey(userId: number, id: number) { method getOpenRouterModel (line 952) | getOpenRouterModel(userId: number) { method addOpenRouterModel (line 957) | addOpenRouterModel(userId: number, model: string) { method deleteOpenRouterModel (line 972) | deleteOpenRouterModel(userId: number, id: number) { method getOpenRouterModels (line 977) | getOpenRouterModels(userId: number) { method getAzureOpenAIModels (line 984) | getAzureOpenAIModels(userId: number) { method addAzureOpenAIModel (line 996) | addAzureOpenAIModel( method deleteAzureOpenAIModel (line 1010) | deleteAzureOpenAIModel(userId: number, id: number) { method getAzureOpenAIModel (line 1015) | getAzureOpenAIModel(userId: number, id: number) { method getCustomAPI (line 1025) | getCustomAPI(userId: number) { method getCustomAPIs (line 1037) | getCustomAPIs(userId: number) { method deleteCustomAPI (line 1049) | deleteCustomAPI(userId: number, id: number) { method addCustomAPI (line 1054) | addCustomAPI( method addTool (line 1071) | addTool(name: string, description: string) { method getUserTools (line 1083) | getUserTools(userId: number) { method addUserTool (line 1095) | addUserTool(userId: number, toolId: number, enabled: number, docked: n... method removeUserTool (line 1110) | removeUserTool(userId: number, toolId: number) { method updateUserTool (line 1116) | updateUserTool( method getTools (line 1136) | getTools() { method addExternalOllama (line 1140) | addExternalOllama( method getExternalOllama (line 1162) | getExternalOllama(userId: number) { FILE: Frontend/src/electron/embedding/cancelEmbed.ts function cancelEmbed (line 3) | async function cancelEmbed(payload: { FILE: Frontend/src/electron/embedding/vectorstoreQuery.ts function vectorstoreQuery (line 4) | async function vectorstoreQuery(payload: { FILE: Frontend/src/electron/handlers/azureHandlers.ts function setupAzureOpenAI (line 4) | async function setupAzureOpenAI() { FILE: Frontend/src/electron/handlers/chatHandlers.ts function setupChatHandlers (line 7) | function setupChatHandlers(mainWindow: BrowserWindow) { FILE: Frontend/src/electron/handlers/closeEventHandler.ts function handleCloseEvents (line 3) | function handleCloseEvents(mainWindow: BrowserWindow) { FILE: Frontend/src/electron/handlers/collectionHandlers.ts function setupCollectionHandlers (line 14) | function setupCollectionHandlers() { FILE: Frontend/src/electron/handlers/customApiHandlers.ts function setupCustomApiHandlers (line 4) | async function setupCustomApiHandlers() { FILE: Frontend/src/electron/handlers/dbHandlers.ts function setupDbHandlers (line 4) | function setupDbHandlers() { FILE: Frontend/src/electron/handlers/fileHandlers.ts function setupFileHandlers (line 7) | function setupFileHandlers() { FILE: Frontend/src/electron/handlers/ipcHandlers.ts function setupIpcHandlers (line 5) | function setupIpcHandlers(mainWindow: BrowserWindow) { FILE: Frontend/src/electron/handlers/localModelHandlers.ts function getModelsPath (line 14) | function getModelsPath() { function downloadModel (line 28) | async function downloadModel(payload: { function setupLocalModelHandlers (line 313) | function setupLocalModelHandlers() { FILE: Frontend/src/electron/handlers/menuHandlers.ts function setupMenuHandlers (line 3) | function setupMenuHandlers(mainWindow: BrowserWindow) { FILE: Frontend/src/electron/handlers/ollamaHandlers.ts function setupOllamaHandlers (line 10) | async function setupOllamaHandlers() { FILE: Frontend/src/electron/handlers/openRouterHandlers.ts function setupOpenRouterHandlers (line 5) | async function setupOpenRouterHandlers() { FILE: Frontend/src/electron/handlers/voiceHandlers.ts function setupVttHandlers (line 14) | function setupVttHandlers() { FILE: Frontend/src/electron/helpers/spawnAsync.ts function spawnAsync (line 5) | function spawnAsync( FILE: Frontend/src/electron/llms/agentLayer/anthropicAgent.ts function anthropicAgent (line 8) | async function anthropicAgent( FILE: Frontend/src/electron/llms/agentLayer/geminiAgent.ts function geminiAgent (line 8) | async function geminiAgent( FILE: Frontend/src/electron/llms/agentLayer/ollamaAgent.ts function ollamaAgent (line 9) | async function ollamaAgent( FILE: Frontend/src/electron/llms/agentLayer/openAiAgent.ts function openAiAgent (line 7) | async function openAiAgent( FILE: Frontend/src/electron/llms/agentLayer/tools/websearch.ts function webSearch (line 3) | async function webSearch(payload: { url: string }) { FILE: Frontend/src/electron/llms/apiCheckProviders/anthropic.ts function AnthropicProviderAPIKeyCheck (line 3) | async function AnthropicProviderAPIKeyCheck(apiKey: string): Promise<{ FILE: Frontend/src/electron/llms/apiCheckProviders/deepseek.ts function DeepSeekProviderAPIKeyCheck (line 3) | async function DeepSeekProviderAPIKeyCheck( FILE: Frontend/src/electron/llms/apiCheckProviders/gemini.ts function initializeGemini (line 4) | async function initializeGemini(apiKey: string) { function GeminiProviderAPIKeyCheck (line 8) | async function GeminiProviderAPIKeyCheck(apiKey: string): Promise<{ FILE: Frontend/src/electron/llms/apiCheckProviders/openai.ts function OpenAIProviderAPIKeyCheck (line 3) | async function OpenAIProviderAPIKeyCheck(apiKey: string): Promise<{ FILE: Frontend/src/electron/llms/apiCheckProviders/openrouter.ts function OpenRouterProviderAPIKeyCheck (line 3) | async function OpenRouterProviderAPIKeyCheck( FILE: Frontend/src/electron/llms/apiCheckProviders/xai.ts function initializeXAI (line 5) | async function initializeXAI(apiKey: string) { function XAIProviderAPIKeyCheck (line 9) | async function XAIProviderAPIKeyCheck(apiKey: string): Promise<{ FILE: Frontend/src/electron/llms/chatCompletion.ts function chatCompletion (line 10) | async function chatCompletion( FILE: Frontend/src/electron/llms/generateTitle.ts function chatCompletionTitle (line 8) | async function chatCompletionTitle( function generateTitleOpenRouter (line 41) | async function generateTitleOpenRouter(input: string, user: User) { function generateTitleDeepSeek (line 45) | async function generateTitleDeepSeek(input: string, user: User) { function generateTitleCustom (line 49) | async function generateTitleCustom( function generateTitleAnthropic (line 76) | async function generateTitleAnthropic(input: string, user: User) { function generateTitleGemini (line 106) | async function generateTitleGemini(input: string, user: User) { function generateTitleXAI (line 128) | async function generateTitleXAI(input: string, user: User) { function generateOllamaTitle (line 132) | async function generateOllamaTitle(input: string, model: string) { function generateTitleOpenAI (line 170) | async function generateTitleOpenAI(input: string, user: User) { function generateTitleAzureOpenAI (line 174) | async function generateTitleAzureOpenAI(input: string, user: User) { function generateTitleLocalOpenAI (line 178) | async function generateTitleLocalOpenAI( function generateTitle (line 202) | async function generateTitle(input: string, user: User) { FILE: Frontend/src/electron/llms/keyValidation.ts function keyValidation (line 8) | async function keyValidation({ FILE: Frontend/src/electron/llms/llmHelpers/addAssistantMessage.ts function addAssistantMessage (line 3) | async function addAssistantMessage( FILE: Frontend/src/electron/llms/llmHelpers/addUserMessage.ts function addUserMessage (line 3) | async function addUserMessage( FILE: Frontend/src/electron/llms/llmHelpers/collectionData.ts function ifCollection (line 6) | async function ifCollection( FILE: Frontend/src/electron/llms/llmHelpers/countMessageTokens.ts function countMessageTokens (line 5) | function countMessageTokens( FILE: Frontend/src/electron/llms/llmHelpers/getUserPrompt.ts function getUserPrompt (line 3) | async function getUserPrompt( FILE: Frontend/src/electron/llms/llmHelpers/ifNewConvo.ts function ifNewConversation (line 5) | async function ifNewConversation(messages: Message[], activeUser: User) { FILE: Frontend/src/electron/llms/llmHelpers/prepMessages.ts function prepMessages (line 3) | async function prepMessages(messages: Message[]) { FILE: Frontend/src/electron/llms/llmHelpers/providerInit.ts function providerInitialize (line 5) | async function providerInitialize( function initializeExternalOllama (line 48) | async function initializeExternalOllama(activeUser: User) { function initializeOpenRouter (line 70) | async function initializeOpenRouter(activeUser: User) { function initializeAzureOpenAI (line 83) | async function initializeAzureOpenAI(activeUser: User) { function initializeDeepSeek (line 107) | async function initializeDeepSeek(activeUser: User) { function initializeCustom (line 120) | async function initializeCustom(activeUser: User) { function initializeLocalOpenAI (line 143) | async function initializeLocalOpenAI(activeUser: User) { function initializeXAI (line 152) | async function initializeXAI(activeUser: User) { FILE: Frontend/src/electron/llms/llmHelpers/returnReasoningPrompt.ts function returnReasoningPrompt (line 1) | async function returnReasoningPrompt( FILE: Frontend/src/electron/llms/llmHelpers/returnSystemPrompt.ts function returnSystemPrompt (line 3) | async function returnSystemPrompt( FILE: Frontend/src/electron/llms/llmHelpers/sendMessageChunk.ts function sendMessageChunk (line 3) | function sendMessageChunk( FILE: Frontend/src/electron/llms/llmHelpers/truncateMessages.ts function truncateMessages (line 5) | function truncateMessages( FILE: Frontend/src/electron/llms/llms.ts function chatRequest (line 12) | async function chatRequest( FILE: Frontend/src/electron/llms/providers/anthropic.ts function chainOfThought (line 11) | async function chainOfThought( function AnthropicProvider (line 72) | async function AnthropicProvider( FILE: Frontend/src/electron/llms/providers/azureOpenAI.ts function AzureOpenAIProvider (line 3) | async function AzureOpenAIProvider( FILE: Frontend/src/electron/llms/providers/customEndpoint.ts function CustomProvider (line 4) | async function CustomProvider( FILE: Frontend/src/electron/llms/providers/deepseek.ts type DeepSeekDelta (line 11) | interface DeepSeekDelta function DeepSeekProvider (line 16) | async function DeepSeekProvider( FILE: Frontend/src/electron/llms/providers/externalOllama.ts function ExternalOllamaProvider (line 4) | async function ExternalOllamaProvider( FILE: Frontend/src/electron/llms/providers/gemini.ts function initializeGemini (line 17) | async function initializeGemini(apiKey: string) { function chainOfThought (line 21) | async function chainOfThought( function GeminiProvider (line 108) | async function GeminiProvider( FILE: Frontend/src/electron/llms/providers/localModel.ts function LocalModelProvider (line 4) | async function LocalModelProvider( FILE: Frontend/src/electron/llms/providers/ollama.ts function OllamaProvider (line 11) | async function OllamaProvider( function chainOfThought (line 158) | async function chainOfThought( FILE: Frontend/src/electron/llms/providers/openai.ts function OpenAIProvider (line 4) | async function OpenAIProvider( FILE: Frontend/src/electron/llms/providers/openrouter.ts function OpenRouterProvider (line 4) | async function OpenRouterProvider( FILE: Frontend/src/electron/llms/providers/xai.ts function XAIProvider (line 4) | async function XAIProvider( FILE: Frontend/src/electron/llms/reasoningLayer/openAiChainOfThought.ts function openAiChainOfThought (line 7) | async function openAiChainOfThought( FILE: Frontend/src/electron/loadingWindow.ts function createLoadingWindow (line 17) | function createLoadingWindow(icon?: Electron.NativeImage) { function updateLoadingText (line 81) | function updateLoadingText(text: string) { function updateLoadingStatus (line 87) | function updateLoadingStatus( function closeLoadingWindow (line 97) | function closeLoadingWindow() { FILE: Frontend/src/electron/localLLMs/getDirModels.ts function getDirModels (line 4) | async function getDirModels(payload: { FILE: Frontend/src/electron/localLLMs/loadModel.ts function loadModel (line 3) | async function loadModel(payload: { FILE: Frontend/src/electron/localLLMs/modelInfo.ts function modelInfo (line 3) | async function modelInfo(payload: { FILE: Frontend/src/electron/localLLMs/unloadModel.ts function unloadModel (line 3) | async function unloadModel(payload: { FILE: Frontend/src/electron/mainWindow.ts function createMainWindow (line 7) | function createMainWindow(icon?: Electron.NativeImage) { FILE: Frontend/src/electron/menu.ts function createMenu (line 5) | function createMenu(mainWindow: BrowserWindow) { FILE: Frontend/src/electron/ollama/checkOllama.ts function checkOllama (line 6) | async function checkOllama(): Promise { FILE: Frontend/src/electron/ollama/fetchLocalModels.ts function fetchOllamaModels (line 7) | async function fetchOllamaModels(): Promise { FILE: Frontend/src/electron/ollama/getRunningModels.ts function getRunningModels (line 4) | async function getRunningModels(): Promise { FILE: Frontend/src/electron/ollama/isOllamaRunning.ts function isOllamaServerRunning (line 4) | async function isOllamaServerRunning(): Promise { FILE: Frontend/src/electron/ollama/pullModel.ts function pullModel (line 4) | async function pullModel(model: string): Promise { FILE: Frontend/src/electron/ollama/runOllama.ts function startOllamaServer (line 15) | async function startOllamaServer(): Promise { function createOllamaProcess (line 53) | async function createOllamaProcess( function runOllama (line 124) | async function runOllama({ FILE: Frontend/src/electron/ollama/unloadAllModels.ts function unloadAllModels (line 4) | async function unloadAllModels(): Promise { FILE: Frontend/src/electron/ollama/unloadModel.ts function unloadModel (line 3) | async function unloadModel(model: string): Promise { FILE: Frontend/src/electron/pathResolver.ts function getPreloadPath (line 5) | function getPreloadPath() { function getUIPath (line 13) | function getUIPath() { function getAssetsPath (line 17) | function getAssetsPath() { FILE: Frontend/src/electron/python/ensurePythonAndVenv.ts function ensurePythonAndVenv (line 11) | async function ensurePythonAndVenv(backendPath: string) { FILE: Frontend/src/electron/python/extractFromAsar.ts function extractFromAsar (line 6) | function extractFromAsar(sourcePath: string, destPath: string) { FILE: Frontend/src/electron/python/getLinuxPackageManager.ts function getLinuxPackageManager (line 5) | function getLinuxPackageManager(): { FILE: Frontend/src/electron/python/ifFedora.ts function ifFedora (line 5) | async function ifFedora() { FILE: Frontend/src/electron/python/installDependencies.ts function installDependencies (line 6) | async function installDependencies( FILE: Frontend/src/electron/python/installLlamaCpp.ts function getNextMessage (line 53) | function getNextMessage(): string { function startRotatingMessages (line 75) | function startRotatingMessages(baseProgress: number) { function stopRotatingMessages (line 87) | function stopRotatingMessages() { function installLlamaCpp (line 95) | async function installLlamaCpp( FILE: Frontend/src/electron/python/killProcessOnPort.ts function killProcessOnPort (line 4) | async function killProcessOnPort(port: number): Promise { FILE: Frontend/src/electron/python/runWithPrivileges.ts function runWithPrivileges (line 5) | async function runWithPrivileges( FILE: Frontend/src/electron/python/startAndStopPython.ts function startPythonServer (line 21) | async function startPythonServer() { function stopPythonServer (line 288) | function stopPythonServer() { FILE: Frontend/src/electron/resourceManager.ts constant POLLING_INTERVAL (line 7) | const POLLING_INTERVAL = 500; function pollResource (line 9) | function pollResource(mainWindow: BrowserWindow) { function getCpuUsage (line 22) | function getCpuUsage(): Promise { function getMemoryUsage (line 30) | function getMemoryUsage() { function getDiskUsage (line 34) | function getDiskUsage() { function getStaticData (line 44) | async function getStaticData(): Promise { FILE: Frontend/src/electron/specs/systemSpecs.ts function systemSpecs (line 4) | async function systemSpecs(): Promise<{ FILE: Frontend/src/electron/storage/deleteCollection.ts function deleteCollection (line 5) | async function deleteCollection( FILE: Frontend/src/electron/storage/getFiles.ts function getFilesInCollection (line 2) | function getFilesInCollection(userId: number, collectionId: number) { FILE: Frontend/src/electron/storage/getUserFiles.ts function getUserCollectionFiles (line 5) | function getUserCollectionFiles(payload: { FILE: Frontend/src/electron/storage/newFile.ts type PythonProgressData (line 7) | interface PythonProgressData { type ProgressData (line 15) | interface ProgressData { function addFileToCollection (line 25) | async function addFileToCollection( FILE: Frontend/src/electron/storage/removeFileorFolder.ts function removeFileorFolder (line 5) | function removeFileorFolder(payload: { FILE: Frontend/src/electron/storage/renameFile.ts function renameFile (line 5) | function renameFile(payload: { FILE: Frontend/src/electron/storage/websiteFetch.ts type PythonProgressData (line 9) | interface PythonProgressData { type ProgressData (line 17) | interface ProgressData { function websiteFetch (line 27) | async function websiteFetch(payload: { FILE: Frontend/src/electron/tray.ts function createTray (line 4) | function createTray(mainWindow: BrowserWindow) { FILE: Frontend/src/electron/util.ts function isDev (line 10) | function isDev(): boolean { function ipcMainHandle (line 14) | function ipcMainHandle< function ipcMainDatabaseHandle (line 25) | function ipcMainDatabaseHandle( function ipcWebContentsSend (line 37) | function ipcWebContentsSend( function validateEventFrame (line 45) | function validateEventFrame(frame: WebFrameMain | null) { function ipcMainOn (line 57) | function ipcMainOn( FILE: Frontend/src/electron/voice/audioTranscription.ts function audioTranscription (line 6) | async function audioTranscription(audioData: Buffer, userId: number) { FILE: Frontend/src/electron/youtube/youtubeIngest.ts type PythonProgressData (line 5) | interface PythonProgressData { type ProgressData (line 13) | interface ProgressData { function youtubeIngest (line 23) | async function youtubeIngest(payload: { FILE: Frontend/src/hooks/use-toast.ts constant TOAST_LIMIT (line 8) | const TOAST_LIMIT = 1; constant TOAST_REMOVE_DELAY (line 9) | const TOAST_REMOVE_DELAY = 1000000; type ToasterToast (line 11) | type ToasterToast = ToastProps & { function genId (line 27) | function genId() { type ActionType (line 32) | type ActionType = typeof actionTypes; type Action (line 34) | type Action = type State (line 52) | interface State { function dispatch (line 133) | function dispatch(action: Action) { type Toast (line 140) | type Toast = Omit; function toast (line 142) | function toast({ ...props }: Toast) { function useToast (line 171) | function useToast() { FILE: Frontend/src/hooks/useAppInitialization.tsx function useAppInitialization (line 10) | function useAppInitialization() { FILE: Frontend/src/hooks/useChatLogic.ts function useChatLogic (line 10) | function useChatLogic() { FILE: Frontend/src/hooks/useStatistics.tsx function useStatistics (line 3) | function useStatistics(dataPointCount: number): Statistics[] { FILE: Frontend/src/hooks/useUIState.ts function handleClickOutside (line 9) | function handleClickOutside(event: MouseEvent) { FILE: Frontend/src/lib/shikiHightlight.ts function initializeShiki (line 4) | async function initializeShiki() { function highlightCode (line 48) | function highlightCode(code: string, language: string): string { FILE: Frontend/src/lib/utils.ts function cn (line 4) | function cn(...inputs: ClassValue[]) { function formatDate (line 8) | function formatDate(input: Date | string): string { function sanitizeStoreName (line 22) | async function sanitizeStoreName(name: string) { FILE: Frontend/src/types/contextTypes/LibraryContextTypes.ts type LibraryContextType (line 1) | interface LibraryContextType { FILE: Frontend/src/types/contextTypes/SystemSettingsTypes.ts type SysSettingsContextType (line 3) | interface SysSettingsContextType { FILE: Frontend/src/types/contextTypes/UserContextType.ts type UserContextType (line 1) | interface UserContextType { FILE: Frontend/src/types/contextTypes/UserViewTypes.ts type UserViewContextType (line 3) | interface UserViewContextType { FILE: Frontend/src/utils/webAudioRecorder.ts class WebAudioRecorder (line 1) | class WebAudioRecorder { method getSupportedMimeType (line 6) | private static getSupportedMimeType(): string { method startRecording (line 23) | async startRecording(): Promise { method stopRecording (line 83) | async stopRecording(): Promise { method cleanup (line 128) | private cleanup(): void { method isRecording (line 144) | isRecording(): boolean { method cancelRecording (line 148) | cancelRecording(): void { FILE: Frontend/types.d.ts type Statistics (line 1) | type Statistics = { type StaticData (line 7) | type StaticData = { type UnsubscribeFunction (line 13) | type UnsubscribeFunction = () => void; type View (line 15) | type View = type User (line 24) | type User = { type AzureModel (line 29) | type AzureModel = { type Message (line 37) | type Message = { type ReasoningEffort (line 49) | type ReasoningEffort = "low" | "medium" | "high"; type UserSettings (line 51) | interface UserSettings { type Collection (line 78) | type Collection = { type ApiKey (line 87) | type ApiKey = { type Conversation (line 93) | type Conversation = { type UserPrompts (line 100) | interface UserPrompts { type FrameWindowAction (line 106) | type FrameWindowAction = "close" | "minimize" | "maximize" | "unmaximize"; type TranscribeAudioInput (line 108) | interface TranscribeAudioInput { type TranscribeAudioOutput (line 113) | interface TranscribeAudioOutput { type Model (line 120) | interface Model { type CustomModel (line 129) | interface CustomModel { type DownloadModelProgress (line 138) | interface DownloadModelProgress { type EventPayloadMapping (line 150) | interface EventPayloadMapping { type Window (line 414) | interface Window { type Keys (line 874) | type Keys = { type DataContent (line 881) | interface DataContent { type OpenRouterModel (line 894) | type OpenRouterModel = string; type ProgressData (line 896) | interface ProgressData extends CustomProgressData, OllamaProgressEvent {} type LLMProvider (line 898) | type LLMProvider = type OllamaProgressEvent (line 910) | interface OllamaProgressEvent { type Electron (line 915) | interface Electron { type APIKey (line 932) | interface APIKey { type CustomProgressData (line 939) | type CustomProgressData = { type DownloadProgress (line 971) | interface DownloadProgress { type OllamaModel (line 975) | interface OllamaModel { type ExternalOllama (line 979) | interface ExternalOllama { type DownloadProgressData (line 987) | interface DownloadProgressData { type ProviderResponse (line 1002) | interface ProviderResponse { type ChatRequestResult (line 1011) | interface ChatRequestResult { type ProviderInputParams (line 1020) | interface ProviderInputParams { type Tool (line 1039) | interface Tool { type UserTool (line 1045) | interface UserTool { type WebSearchResult (line 1051) | type WebSearchResult = {