Files
iptvnator/tsconfig.base.json
T
4gray fd96b85c19 feat(playback): recommend recovery actions (#1374)
* docs(playback): design recovery recommendations

* docs(playback): plan recovery recommendations

* refactor(playback): extract diagnostic utilities

* feat(playback): define recovery recommendation contracts

* feat(playback): rank recovery recommendations

* feat(playback): track session recovery attempts

* feat(playback): identify content recovery sessions

* feat(ui): add ranked playback diagnostic panel

* feat(playback): switch temporarily to recommended players

* test(playback): cover temporary player recommendation

* test(playback): verify recommendation capability guards

* docs(playback): document recovery recommendations

* fix(playback): keep recovery keys credential-free

* fix(playback): remove derived tracking ownership

* fix(playback): preserve distinct recovery fallbacks

* fix(playback): reset resume for new sources

* fix(playback): preserve desktop recovery guidance

* docs(playback): clarify recovery policy exceptions

* fix(playback): reject stale progress updates

* fix(playback): keep protected recovery guidance neutral

* test(playback): cover stale progress output

* fix(playback): neutralize protected diagnostic copy

* fix(playback): harden runtime guidance ownership

* fix(playback): stabilize recovery application ownership

* fix(ci): classify playback util coverage

* fix(e2e): preserve playback fixture bytes
2026-08-08 01:04:39 +02:00

121 lines
5.0 KiB
JSON

{
"compileOnSave": false,
"compilerOptions": {
"rootDir": ".",
"sourceMap": true,
"declaration": false,
"moduleResolution": "node",
"esModuleInterop": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"importHelpers": true,
"target": "es2015",
"module": "esnext",
"lib": ["es2020", "dom"],
"skipLibCheck": true,
"skipDefaultLibCheck": true,
"baseUrl": ".",
"paths": {
"@iptvnator/portal/catalog/feature": [
"libs/portal/catalog/feature/src/index.ts"
],
"@iptvnator/portal/downloads/feature": [
"libs/portal/downloads/feature/src/index.ts"
],
"@iptvnator/portal/shared/ui": [
"libs/portal/shared/ui/src/index.ts"
],
"@iptvnator/portal/shared/data-access": [
"libs/portal/shared/data-access/src/index.ts"
],
"@iptvnator/portal/shared/util": [
"libs/portal/shared/util/src/index.ts"
],
"@iptvnator/epg/data-access": ["libs/epg/data-access/src/index.ts"],
"@iptvnator/playback/util": ["libs/playback/util/src/index.ts"],
"@iptvnator/playlist/shared/ui": [
"libs/playlist/shared/ui/src/index.ts"
],
"@iptvnator/playlist/shared/util": [
"libs/playlist/shared/util/src/index.ts"
],
"@iptvnator/ui/epg": ["libs/ui/epg/src/index.ts"],
"@iptvnator/ui/epg/date": ["libs/ui/epg/src/lib/epg-date.ts"],
"@iptvnator/ui/epg/progress-panel": [
"libs/ui/epg/src/lib/epg-progress-panel/epg-progress-panel.component.ts"
],
"@iptvnator/ui/playback/external-player-info-dialog": [
"libs/ui/playback/src/lib/external-player-info-dialog/external-player-info-dialog.component.ts"
],
"@iptvnator/ui/playback/embedded-mpv-player": [
"libs/ui/playback/src/lib/embedded-mpv-player/index.ts"
],
"@iptvnator/ui/playback": ["libs/ui/playback/src/index.ts"],
"@iptvnator/playlist/import/feature": [
"libs/playlist/import/feature/src/index.ts"
],
"@iptvnator/playlist/m3u/feature-player": [
"libs/playlist/m3u/feature-player/src/index.ts"
],
"@iptvnator/portal/stalker/feature": [
"libs/portal/stalker/feature/src/index.ts"
],
"@iptvnator/portal/stalker/data-access": [
"libs/portal/stalker/data-access/src/index.ts"
],
"@iptvnator/portal/xtream/feature": [
"libs/portal/xtream/feature/src/index.ts"
],
"@iptvnator/portal/xtream/data-access": [
"libs/portal/xtream/data-access/src/index.ts"
],
"@iptvnator/workspace/shell/feature": [
"libs/workspace/shell/feature/src/index.ts"
],
"@iptvnator/workspace/shell/util": [
"libs/workspace/shell/util/src/index.ts"
],
"@iptvnator/pipes": ["libs/ui/pipes/src/index.ts"],
"@iptvnator/ui/components": ["libs/ui/components/src/index.ts"],
"@iptvnator/m3u-state": ["libs/m3u-state/src/index.ts"],
"@iptvnator/shared/m3u-utils": [
"libs/shared/m3u-utils/src/index.ts"
],
"@iptvnator/shared/testing": ["libs/shared/testing/src/index.ts"],
"@iptvnator/shared/logging": ["libs/shared/logging/src/index.ts"],
"@iptvnator/services": ["libs/services/src/index.ts"],
"@iptvnator/shared/interfaces": [
"libs/shared/interfaces/src/index.ts"
],
"@iptvnator/shared/interfaces/ipc-commands": [
"libs/shared/interfaces/src/lib/ipc-commands.ts"
],
"@iptvnator/ui/shared-portals": [
"libs/ui/shared-portals/src/index.ts"
],
"@iptvnator/ui/remote-control": [
"libs/ui/remote-control/src/index.ts"
],
"@iptvnator/shared/database": ["libs/shared/database/src/index.ts"],
"@iptvnator/shared/database/schema": [
"libs/shared/database/src/lib/schema.ts"
],
"@iptvnator/shared/database/path-utils": [
"libs/shared/database/src/lib/path-utils.ts"
],
"@iptvnator/workspace/dashboard/feature": [
"libs/workspace/dashboard/feature/src/index.ts"
],
"@iptvnator/workspace/dashboard/data-access": [
"libs/workspace/dashboard/data-access/src/index.ts"
],
"@package": ["./package.json"],
"@iptvnator/shared/marketing-fixtures": [
"./libs/shared/marketing-fixtures/src/index.ts"
]
}
},
"exclude": ["node_modules", "tmp"],
"files": ["global.d.ts"]
}