diff --git a/src/content/components/file-selector-panel.ts b/src/content/components/file-selector-panel.ts index d596437..eadc34c 100644 --- a/src/content/components/file-selector-panel.ts +++ b/src/content/components/file-selector-panel.ts @@ -405,7 +405,7 @@ export class FileSelectorPanel extends LitElement { private getFileType(ext: string): FileType { const lowerExt = ext.toLowerCase(); - const videoExts = ['.mp4', '.avi', '.mkv', '.mov', '.wmv', '.flv', '.webm', '.m4v']; + const videoExts = ['.mp4', '.avi', '.mkv', '.mov', '.wmv', '.flv', '.webm', '.m4v', '.sup']; const imageExts = ['.jpg', '.jpeg', '.png', '.gif', '.bmp', '.svg', '.webp', '.ico']; const audioExts = ['.mp3', '.wav', '.flac', '.aac', '.m4a', '.ogg', '.opus', '.wma']; const docExts = ['.pdf', '.doc', '.docx', '.xls', '.xlsx', '.ppt', '.pptx', '.txt', '.md']; diff --git a/tests/unit/file-selector-panel-file-type.test.ts b/tests/unit/file-selector-panel-file-type.test.ts new file mode 100644 index 0000000..add08e7 --- /dev/null +++ b/tests/unit/file-selector-panel-file-type.test.ts @@ -0,0 +1,16 @@ +import { describe, expect, it } from 'vitest'; +import { FileSelectorPanel } from '../../src/content/components/file-selector-panel'; +import type { FileType } from '../../src/types/file-selector'; + +type FileSelectorPanelTypeHarness = FileSelectorPanel & { + getFileType(ext: string): FileType; +}; + +describe('FileSelectorPanel file type classification', () => { + it('classifies .sup subtitle files with the video filter', () => { + const panel = new FileSelectorPanel() as unknown as FileSelectorPanelTypeHarness; + + expect(panel.getFileType('.sup')).toBe('video'); + expect(panel.getFileType('.SUP')).toBe('video'); + }); +});