/** * Icon mappings for file types and model modalities * Centralized configuration to ensure consistent icon usage across the app */ import { File as FileIcon, FileText as FileTextIcon, Image as ImageIcon, Eye as VisionIcon, Mic as AudioIcon, Video as VideoIcon } from '@lucide/svelte'; import { FileTypeCategory, ModelModality } from '$lib/enums'; export const FILE_TYPE_ICONS = { [FileTypeCategory.IMAGE]: ImageIcon, [FileTypeCategory.AUDIO]: AudioIcon, [FileTypeCategory.VIDEO]: VideoIcon, [FileTypeCategory.TEXT]: FileTextIcon, [FileTypeCategory.PDF]: FileIcon } as const; export const DEFAULT_FILE_ICON = FileIcon; export const MODALITY_ICONS = { [ModelModality.VISION]: VisionIcon, [ModelModality.AUDIO]: AudioIcon, [ModelModality.VIDEO]: VideoIcon } as const; export const MODALITY_LABELS = { [ModelModality.VISION]: 'Vision', [ModelModality.AUDIO]: 'Audio', [ModelModality.VIDEO]: 'Video' } as const; // Shared SVG icon strings for copy and preview buttons export const COPY_ICON_SVG = ``; export const PREVIEW_ICON_SVG = ``; export const CODE_ICON_SVG = ``;