UNPKG

@kaifronsdal/transcript-viewer

Version:

A web-based viewer for AI conversation transcripts with rollback support

57 lines (48 loc) 1.61 kB
// Application constants // Data loading export const DEFAULT_TRANSCRIPT_DIR = './transcripts'; export const DEFAULT_CONCURRENCY = 10; export const DEFAULT_PAGINATION_LIMIT = 50; // Caching export const MAX_FULL_TRANSCRIPTS_CACHE = 200; export const CACHE_STATS_LOG_INTERVAL = 60000; // 1 minute // UI constants export const DEFAULT_TABLE_ROW_HEIGHT = 50; export const DEFAULT_TABLE_OVERSCAN = 10; export const MAX_SUMMARY_LENGTH = 150; export const MAX_JUDGE_SUMMARY_LENGTH = 100; // File processing export const TRANSCRIPT_FILE_EXTENSION = '.json'; export const MAX_FILE_READ_ATTEMPTS = 3; // Virtualization export const VIRTUAL_TABLE_HEIGHT = '70vh'; export const VIRTUAL_ITEM_SIZE = 50; // Local storage keys export const STORAGE_KEYS = { COLUMN_VISIBILITY: 'transcript-table-visible-columns', COLUMN_SIZING: 'transcript-table-column-sizing', VIEW_MODE: 'transcript-viewer-view-mode', FILTER_STATE: 'transcript-filter-state' } as const; // Score thresholds for coloring export const SCORE_THRESHOLDS = { HIGH_CONCERN: 8, MEDIUM_CONCERN: 6, LOW_CONCERN: 4, MINIMAL_CONCERN: 2 } as const; // API timeouts (in milliseconds) export const API_TIMEOUTS = { DEFAULT: 120000, // 2 minutes BULK_LOAD: 300000, // 5 minutes VALIDATION: 30000 // 30 seconds } as const; // Error messages export const ERROR_MESSAGES = { GENERIC: 'An unexpected error occurred', FILE_NOT_FOUND: 'File not found', VALIDATION_FAILED: 'Schema validation failed', PERMISSION_DENIED: 'Permission denied', PARSE_ERROR: 'Failed to parse file', NETWORK_ERROR: 'Network error occurred' } as const;