mirror of
https://github.com/4gray/iptvnator.git
synced 2026-10-15 21:56:18 -08:00
Series playing in fullscreen get the same slide-in side panel the live channel list has, with season tabs and the episode list: rest the mouse on the left edge, click it, or press C; pick an episode and it plays inline without leaving fullscreen. - Panel contract: `FullscreenChannelPanelHost` gains optional `panelSearchEnabled` and `panelKind`; the template context gains `open`. Pointer/keyboard rules and the four live providers are unchanged. - Series host: `PortalInlinePlayerComponent` provides the token through `createEpisodePanelHost()` and stamps `app-fullscreen-episode-panel` (SeasonTabsComponent over rows with TMDB still or numeral tile, label, runtime, clamped overview, progress, watched check, now-playing marker; playing row centred on open). Episode clicks reuse the Up Next rail's inline path; season tab clicks reach the hosts' `onSeasonSelected` (Xtream TMDB season enrichment, Stalker lazy VOD load with a Retry row after a failed request). - Gates: `Settings.fullscreenChannelPanel` (label now covers both lists in all locales), episode content only, native-view Embedded MPV withheld by the view, external players excluded. - Inline-series e2e moved to `xtream-series-playback.e2e.ts` with shared Xtream helpers in a fixture; adds a fullscreen episode switch through the panel. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
34 lines
2.2 KiB
TypeScript
34 lines
2.2 KiB
TypeScript
export * from './lib/channel-list-container/channel-list-container.component';
|
|
export * from './lib/channel-list-container/channel-details-dialog/channel-details-dialog.component';
|
|
export * from './lib/channel-list-container/epg-mapping-dialog/epg-mapping-dialog.component';
|
|
export * from './lib/channel-list-container/channel-list-item/channel-list-item.component';
|
|
export * from './lib/channel-list-container/channel-list-item-skeleton/channel-list-item-skeleton.component';
|
|
export * from './lib/channel-list-container/channel-list-skeleton/channel-list-skeleton.component';
|
|
export * from './lib/channel-list-loading-state/channel-list-loading-state.component';
|
|
export * from './lib/confirm-dialog/confirm-dialog.component';
|
|
export * from './lib/confirm-dialog/dialog.service';
|
|
export * from './lib/content-hero/content-hero.component';
|
|
export * from './lib/expandable-text/expandable-text.component';
|
|
export * from './lib/external-playback-dock/external-playback-dock.component';
|
|
export * from './lib/portal-detail-shell/content-about.component';
|
|
export * from './lib/portal-detail-shell/detail-template.directives';
|
|
export * from './lib/portal-detail-shell/portal-detail-shell.component';
|
|
export * from './lib/view-in-portal-action/view-in-portal-action.component';
|
|
export * from './lib/view-in-portal-action/view-in-portal-handoff.token';
|
|
export * from './lib/progress-capsule/progress-capsule.component';
|
|
export * from './lib/resizable/resizable.directive';
|
|
export * from './lib/season-container/season-container.component';
|
|
export * from './lib/season-container/season-tabs.component';
|
|
export * from './lib/season-container/season-watch-presenter';
|
|
export * from './lib/season-container/season-watch-toggle.util';
|
|
export * from './lib/vod-sources/vod-source-copy-row.component';
|
|
export * from './lib/vod-sources/vod-source-filtering.util';
|
|
export * from './lib/vod-sources/vod-source-row.component';
|
|
export * from './lib/vod-sources/vod-source-tags';
|
|
export * from './lib/vod-sources/vod-sources-chip.component';
|
|
export * from './lib/vod-sources/vod-sources-menu.component';
|
|
export * from './lib/watched-badge/watched-badge.component';
|
|
export * from './lib/window-controls/window-controls.component';
|
|
|
|
export * from './lib/channel-scroll-focus/channel-scroll-focus.directive';
|