refactor: Enum imports

This commit is contained in:
Aleksander Grygier 2025-11-23 22:16:22 +01:00
parent 48dbef1729
commit 1c214e9a49
24 changed files with 53 additions and 35 deletions

View File

@ -23,8 +23,7 @@ import type {
ApiRouterModelsUnloadResponse
} from '$lib/types/api';
import { ServerMode, ServerModelStatus } from '$lib/enums/server';
import { ModelModality } from '$lib/enums/model';
import { ServerMode, ServerModelStatus, ModelModality } from '$lib/enums';
import type {
ChatMessageType,

View File

@ -3,7 +3,7 @@
import { Button } from '$lib/components/ui/button';
import { ChevronLeft, ChevronRight } from '@lucide/svelte';
import { getFileTypeCategory } from '$lib/utils/file-type';
import { FileTypeCategory } from '$lib/enums/files';
import { FileTypeCategory } from '$lib/enums';
import { isImageFile } from '$lib/utils/attachment-type';
import { DialogChatAttachmentPreview, DialogChatAttachmentsViewAll } from '$lib/components/app';
import type { ChatAttachmentDisplayItem, ChatAttachmentPreviewItem } from '$lib/types/chat';

View File

@ -4,7 +4,7 @@
ChatAttachmentThumbnailFile,
DialogChatAttachmentPreview
} from '$lib/components/app';
import { FileTypeCategory } from '$lib/enums/files';
import { FileTypeCategory } from '$lib/enums';
import { getFileTypeCategory } from '$lib/utils/file-type';
import { isImageFile } from '$lib/utils/attachment-type';
import type { ChatAttachmentDisplayItem, ChatAttachmentPreviewItem } from '$lib/types/chat';

View File

@ -9,15 +9,9 @@
} from '$lib/components/app';
import { INPUT_CLASSES } from '$lib/constants/input-classes';
import { config } from '$lib/stores/settings.svelte';
import { FileTypeCategory, MimeTypeApplication } from '$lib/enums/files';
import {
AudioRecorder,
convertToWav,
createAudioFile,
isAudioRecordingSupported
} from '$lib/utils/audio-recording';
import { onMount } from 'svelte';
import {
FileTypeCategory,
MimeTypeApplication,
FileExtensionAudio,
FileExtensionImage,
FileExtensionPdf,
@ -25,7 +19,14 @@
MimeTypeAudio,
MimeTypeImage,
MimeTypeText
} from '$lib/enums/files';
} from '$lib/enums';
import {
AudioRecorder,
convertToWav,
createAudioFile,
isAudioRecordingSupported
} from '$lib/utils/audio-recording';
import { onMount } from 'svelte';
import { isIMEComposing } from '$lib/utils/is-ime-composing';
interface Props {

View File

@ -4,7 +4,7 @@
import * as DropdownMenu from '$lib/components/ui/dropdown-menu';
import * as Tooltip from '$lib/components/ui/tooltip';
import { TOOLTIP_DELAY_DURATION } from '$lib/constants/tooltip-config';
import { FileTypeCategory } from '$lib/enums/files';
import { FileTypeCategory } from '$lib/enums';
import { supportsAudio, supportsVision } from '$lib/stores/server.svelte';
interface Props {

View File

@ -7,7 +7,7 @@
ChatFormActionSubmit,
SelectorModel
} from '$lib/components/app';
import { FileTypeCategory } from '$lib/enums/files';
import { FileTypeCategory } from '$lib/enums';
import { getFileTypeCategory } from '$lib/utils/file-type';
import { supportsAudio } from '$lib/stores/server.svelte';
import { config } from '$lib/stores/settings.svelte';

View File

@ -43,7 +43,7 @@
import { fade, fly, slide } from 'svelte/transition';
import { Trash2 } from '@lucide/svelte';
import ChatScreenDragOverlay from './ChatScreenDragOverlay.svelte';
import { ModelModality } from '$lib/enums/model';
import { ModelModality } from '$lib/enums';
let { showCenteredEmpty = false } = $props();

View File

@ -1,6 +1,6 @@
<script lang="ts">
import { Eye, Mic } from '@lucide/svelte';
import { ModelModality } from '$lib/enums/model';
import { ModelModality } from '$lib/enums';
import { cn } from '$lib/components/ui/utils';
interface Props {

View File

@ -16,7 +16,7 @@ import {
MimeTypeImage,
MimeTypeApplication,
MimeTypeText
} from '$lib/enums/files';
} from '$lib/enums';
// File type configuration using enums
export const AUDIO_FILE_TYPES = {

View File

@ -0,0 +1,21 @@
export { AttachmentType } from './attachment';
export {
FileTypeCategory,
FileTypeImage,
FileTypeAudio,
FileTypePdf,
FileTypeText,
FileExtensionImage,
FileExtensionAudio,
FileExtensionPdf,
FileExtensionText,
MimeTypeApplication,
MimeTypeAudio,
MimeTypeImage,
MimeTypeText
} from './files';
export { ModelModality } from './model';
export { ServerMode, ServerModelStatus } from './server';

View File

@ -10,7 +10,7 @@ import type {
ApiChatMessageData,
ApiModelListResponse
} from '$lib/types/api';
import { AttachmentType } from '$lib/enums/attachment';
import { AttachmentType } from '$lib/enums';
import type {
DatabaseMessage,
DatabaseMessageExtra,

View File

@ -2,8 +2,7 @@ import { browser } from '$app/environment';
import { SERVER_PROPS_LOCALSTORAGE_KEY } from '$lib/constants/localstorage-keys';
import { ChatService } from '$lib/services/chat';
import { config } from '$lib/stores/settings.svelte';
import { ServerMode } from '$lib/enums/server';
import { ModelModality } from '$lib/enums/model';
import { ServerMode, ModelModality } from '$lib/enums';
import { updateConfig } from '$lib/stores/settings.svelte';
/**

View File

@ -1,4 +1,4 @@
import type { ServerModelStatus } from '$lib/enums/model';
import type { ServerModelStatus } from '$lib/enums';
import type { ChatMessagePromptProgress } from './chat';
export interface ApiChatMessageContentPart {

View File

@ -1,5 +1,5 @@
import type { ChatMessageTimings, ChatRole, ChatMessageType } from '$lib/types/chat';
import { AttachmentType } from '$lib/enums/attachment';
import { AttachmentType } from '$lib/enums';
export interface DatabaseConversation {
currNode: string | null;

View File

@ -1,5 +1,4 @@
import { AttachmentType } from '$lib/enums/attachment';
import { FileTypeCategory } from '$lib/enums/files';
import { AttachmentType, FileTypeCategory } from '$lib/enums';
import { getFileTypeCategory } from '$lib/utils/file-type';
import { getFileTypeLabel } from '$lib/utils/file-preview';
import type { DatabaseMessageExtra } from '$lib/types/database';

View File

@ -1,4 +1,4 @@
import { MimeTypeAudio } from '$lib/enums/files';
import { MimeTypeAudio } from '$lib/enums';
/**
* AudioRecorder - Browser-based audio recording with MediaRecorder API

View File

@ -1,8 +1,7 @@
import { convertPDFToImage, convertPDFToText } from './pdf-processing';
import { isSvgMimeType, svgBase64UrlToPngDataURL } from './svg-to-png';
import { isWebpMimeType, webpBase64UrlToPngDataURL } from './webp-to-png';
import { FileTypeCategory } from '$lib/enums/files';
import { AttachmentType } from '$lib/enums/attachment';
import { FileTypeCategory, AttachmentType } from '$lib/enums';
import { config, settingsStore } from '$lib/stores/settings.svelte';
import { supportsVision } from '$lib/stores/server.svelte';
import { getFileTypeCategory } from '$lib/utils/file-type';

View File

@ -4,7 +4,7 @@ import {
PDF_FILE_TYPES,
TEXT_FILE_TYPES
} from '$lib/constants/supported-file-types';
import { FileTypeCategory } from '$lib/enums/files';
import { FileTypeCategory } from '$lib/enums';
export function getFileTypeCategory(mimeType: string): FileTypeCategory | null {
if (

View File

@ -15,7 +15,7 @@ import {
MimeTypeApplication,
MimeTypeText,
FileTypeCategory
} from '$lib/enums/files';
} from '$lib/enums';
/**
* Check if a file type is supported by the current model's modalities

View File

@ -4,7 +4,7 @@
*/
import { browser } from '$app/environment';
import { MimeTypeApplication, MimeTypeImage } from '$lib/enums/files';
import { MimeTypeApplication, MimeTypeImage } from '$lib/enums';
import * as pdfjs from 'pdfjs-dist';
type TextContent = {

View File

@ -1,7 +1,7 @@
import { isSvgMimeType, svgBase64UrlToPngDataURL } from './svg-to-png';
import { isTextFileByName } from './text-files';
import { isWebpMimeType, webpBase64UrlToPngDataURL } from './webp-to-png';
import { FileTypeCategory } from '$lib/enums/files';
import { FileTypeCategory } from '$lib/enums';
import { getFileTypeCategory } from '$lib/utils/file-type';
import { supportsVision } from '$lib/stores/server.svelte';
import { settingsStore } from '$lib/stores/settings.svelte';

View File

@ -1,4 +1,4 @@
import { MimeTypeImage } from '$lib/enums/files';
import { MimeTypeImage } from '$lib/enums';
/**
* Convert an SVG base64 data URL to a PNG data URL

View File

@ -7,7 +7,7 @@ import {
DEFAULT_BINARY_DETECTION_OPTIONS,
type BinaryDetectionOptions
} from '$lib/constants/binary-detection';
import { FileExtensionText } from '$lib/enums/files';
import { FileExtensionText } from '$lib/enums';
/**
* Check if a filename indicates a text file based on its extension

View File

@ -1,4 +1,4 @@
import { FileExtensionImage, MimeTypeImage } from '$lib/enums/files';
import { FileExtensionImage, MimeTypeImage } from '$lib/enums';
/**
* Convert a WebP base64 data URL to a PNG data URL