mirror of
https://github.com/4gray/iptvnator.git
synced 2026-10-08 17:06:15 -08:00
* feat(tmdb): clickable director/creator chips and directing credits on person pages Directors were plain merged text — no photos, no navigation — while the data was already sitting in the cached TMDB payloads (credits.crew and created_by both carry id + profile_path; they just were not typed or parsed). - tmdb-merge: enrichedDirectors (crew, job === 'Director', deduped by person id) and enrichedCreators (created_by) produce the same chip shape as the cast (TmdbEnrichedCastMember) into a new tmdb_directors field on all three merges (Xtream VOD, Xtream series, Stalker); types widened (crew id/profile_path, created_by id/profile_path). - Detail views (shared VodDetailsComponent, Xtream vod/serial routes, Stalker series view) render the Director row as clickable avatar chips when tmdb_directors is present — same markup and openActor handler as the cast strip — falling back to the plain text otherwise. Stalker re-normalization allowlist preserves the new field. - Person pages: mapPersonFilmography now merges combined_credits.crew (jobs Director/Creator) into the filmography — acting wins the per-title dedup, directing-only titles show the job in the character slot. Everything else (library matching, All-portals scope, filters, search fallback, back button) works unchanged because the person page is role-agnostic. Existing caches work as-is: crew/created_by were always part of the stored payloads. Tests: merge spec (director/creator chips + crew-row dedup ×3 merges), person spec (crew credits, Producer excluded, acting-wins dedup), stalker-vod.utils passthrough. Docs updated (CLAUDE.md + architecture). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> * fix(tmdb): address director-pages review — split oversized spec, stable track keys, translated crew roles - tmdb-merge.spec.ts grew past the 400-line lint ceiling — the Stalker merge suite moved to tmdb-merge-stalker.spec.ts (fixes the CI Lint job). - All cast/director chip loops now track by TMDB person id with an index fallback ('p<id>' / 'i<index>') instead of member.name — distinct people can share a name and creator payloads carry no dedup (greptile). - Directing-only filmography credits carry the role in a new crewJob field ('Director' | 'Creator') instead of stuffing TMDB's raw English job into character; ActorViewComponent renders it through translated labels (XTREAM.CREW_JOB_DIRECTOR/CREATOR, added to all 18 locales via the i18n patch workflow, matching each locale's existing glossary — pt "Diretor", de "Regisseur") (Codex). Tests: person spec asserts character/crewJob separation; merge suites green after the split (15 + stalker file). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
93 lines
1.3 KiB
Plaintext
93 lines
1.3 KiB
Plaintext
# See http://help.github.com/ignore-files/ for more about ignoring files.
|
|
|
|
#compiled output
|
|
/dist
|
|
/build
|
|
/tmp
|
|
/out-tsc
|
|
/app-builds
|
|
/release
|
|
/e2e/tracing
|
|
/e2e/screenshots
|
|
/test-results
|
|
api.js
|
|
epg-worker.js
|
|
main.js
|
|
menu.js
|
|
src/**/*.js
|
|
!src/karma.conf.js
|
|
*.js.map
|
|
data.db
|
|
preload.js
|
|
shared/*.js
|
|
playwright-report
|
|
.nx
|
|
server.js
|
|
.github/skills
|
|
.github/prompts
|
|
.agents/skills
|
|
|
|
# dependencies
|
|
node_modules
|
|
package-lock.json
|
|
|
|
# IDEs and editors
|
|
/.idea
|
|
.project
|
|
.classpath
|
|
.c9/
|
|
*.launch
|
|
.settings/
|
|
*.sublime-workspace
|
|
|
|
# IDE - VSCode
|
|
.vscode/*
|
|
.vscode/settings.json
|
|
!.vscode/tasks.json
|
|
!.vscode/launch.json
|
|
!.vscode/extensions.json
|
|
|
|
# misc
|
|
/.sass-cache
|
|
/connect.lock
|
|
/coverage
|
|
/libpeerconnection.log
|
|
npm-debug.log
|
|
testem.log
|
|
/typings
|
|
.angular/*
|
|
|
|
# e2e
|
|
/e2e/*.js
|
|
!/e2e/protractor.conf.js
|
|
/e2e/*.map
|
|
/e2e/db
|
|
|
|
# System Files
|
|
.DS_Store
|
|
Thumbs.db
|
|
.angular
|
|
.astro
|
|
|
|
.gemini
|
|
.cursor
|
|
.agent
|
|
.claude
|
|
.codex/*
|
|
!.codex/skills/
|
|
!.codex/skills/**
|
|
.plans
|
|
|
|
# Native Electron addons
|
|
apps/electron-backend/native/build/
|
|
apps/electron-backend/src/app/options/electron-builder.metadata.generated.json
|
|
vendor/embedded-mpv/*/bin/
|
|
vendor/embedded-mpv/*/include/
|
|
vendor/embedded-mpv/*/lib/
|
|
vendor/embedded-mpv/*/notices/
|
|
vendor/embedded-mpv/*/runtime-manifest.json
|
|
|
|
# MemPalace per-project files (issue #185)
|
|
mempalace.yaml
|
|
entities.json
|