refactor: add portal debug logging utilities and corresponding tests

This commit is contained in:
4gray committed 2026-03-07 19:05:56 +01:00
1 parent d847524d0d
commit 3a2114c932
12 files changed
+573 -21

No files matched your search

+2
View File
@@ -4,12 +4,14 @@ export * from './lib/epg-channel-with-programs.interface';
export * from './lib/epg-channel.model';
export * from './lib/epg-item.interface';
export * from './lib/epg-program.model';
export * from './lib/external-player-session.interface';
export * from './lib/indexed-db.config';
export * from './lib/ipc-command.class';
export * from './lib/ipc-commands';
export * from './lib/language.enum';
export * from './lib/parsed-playlist.interface';
export * from './lib/playback-position.interface';
export * from './lib/portal-debug.interface';
export * from './lib/portal-playback.interface';
export * from './lib/playlist-meta.type';
export * from './lib/playlist.interface';
@@ -0,0 +1,24 @@
import { PlayerContentInfo } from './portal-playback.interface';
export type ExternalPlayerName = 'mpv' | 'vlc';
export type ExternalPlayerSessionStatus =
| 'launching'
| 'opened'
| 'playing'
| 'error'
| 'closed';
export interface ExternalPlayerSession {
id: string;
player: ExternalPlayerName;
status: ExternalPlayerSessionStatus;
title: string;
thumbnail?: string | null;
streamUrl: string;
contentInfo?: PlayerContentInfo;
startedAt: string;
updatedAt: string;
error?: string;
canClose: boolean;
}
@@ -0,0 +1,21 @@
export type PortalDebugProvider = 'xtream' | 'stalker';
export type PortalDebugTransport =
| 'electron-main'
| 'electron-renderer'
| 'pwa-http';
export type PortalDebugStatus = 'success' | 'error';
export interface PortalDebugEvent {
requestId: string;
provider: PortalDebugProvider;
operation: string;
transport: PortalDebugTransport;
startedAt: string;
durationMs: number;
status: PortalDebugStatus;
request: unknown;
response?: unknown;
error?: unknown;
}