From 73488d1bfaf12c2ac2bc8a24ef7e04dbddfe06a7 Mon Sep 17 00:00:00 2001 From: Quick <31828688+Quick104@users.noreply.github.com> Date: Fri, 31 Jul 2026 15:23:30 -0400 Subject: [PATCH] feat(metadata): add original-language preferences (#526) * feat(metadata): add original-language preferences * fix(settings): show metadata exceptions immediately * docs(settings): add metadata language screenshot * fix(settings): make language exceptions responsive * fix(settings): standardize language display names --- contracts/settings/v1/conformance.json | 23 +- contracts/settings/v1/manifest.json | 23 +- .../schemas/metadata-language-overrides.json | 20 + .../pr-526-metadata-language-exception.png | Bin 0 -> 182090 bytes .../pr-526-metadata-language-iso-names.png | Bin 0 -> 170946 bytes .../pr-526-metadata-language-mobile.png | Bin 0 -> 54209 bytes internal/access/metadata_language_test.go | 43 ++ internal/access/resolver.go | 1 + internal/access/resolver_test.go | 27 +- internal/access/types.go | 3 + internal/access/viewer_preferences.go | 56 ++- internal/api/handlers/catalog_resources.go | 7 +- internal/api/handlers/items.go | 30 +- internal/api/handlers/settings_values.go | 16 +- internal/api/handlers/settings_values_test.go | 51 +++ internal/catalog/access_filter.go | 16 +- internal/catalog/detail.go | 423 ++++++++++++++---- .../catalog/detail_batch_equivalence_test.go | 42 +- .../catalog/detail_metadata_language_test.go | 111 +++++ internal/jellycompat/access_filter.go | 15 +- internal/jellycompat/access_filter_test.go | 22 +- internal/jellycompat/content_direct.go | 20 +- internal/policy/viewer_resolver.go | 1 + internal/policy/viewer_resolver_test.go | 10 + internal/settingscontract/contract_test.go | 19 +- internal/settingskeys/keys.go | 5 +- web/package.json | 1 + web/pnpm-lock.yaml | 22 + .../settings/MetadataLanguageSetting.test.tsx | 133 ++++++ .../settings/MetadataLanguageSetting.tsx | 208 +++++++++ web/src/lib/languageDisplay.ts | 35 +- web/src/lib/languageNames.test.ts | 33 ++ web/src/lib/languageNames.ts | 90 ++++ web/src/lib/languageOptions.test.ts | 40 +- web/src/lib/languageOptions.ts | 34 +- .../lib/metadataLanguagePreferences.test.ts | 30 ++ web/src/lib/metadataLanguagePreferences.ts | 44 ++ web/src/lib/settingsConformance.json | 23 +- web/src/lib/settingsContract.ts | 21 +- .../components/versionFormatUtils.test.ts | 4 + .../components/versionFormatUtils.ts | 31 +- .../pages/settings/PlaybackSettings.test.tsx | 1 + web/src/pages/settings/PlaybackSettings.tsx | 51 ++- .../settings/libraryPlaybackPreferences.ts | 2 +- web/src/player/utils/languageNames.ts | 218 ++------- web/src/player/utils/subtitleSort.test.ts | 4 +- 46 files changed, 1572 insertions(+), 437 deletions(-) create mode 100644 contracts/settings/v1/schemas/metadata-language-overrides.json create mode 100644 docs/screenshots/pr-526-metadata-language-exception.png create mode 100644 docs/screenshots/pr-526-metadata-language-iso-names.png create mode 100644 docs/screenshots/pr-526-metadata-language-mobile.png create mode 100644 internal/catalog/detail_metadata_language_test.go create mode 100644 web/src/components/settings/MetadataLanguageSetting.test.tsx create mode 100644 web/src/components/settings/MetadataLanguageSetting.tsx create mode 100644 web/src/lib/languageNames.test.ts create mode 100644 web/src/lib/languageNames.ts create mode 100644 web/src/lib/metadataLanguagePreferences.test.ts create mode 100644 web/src/lib/metadataLanguagePreferences.ts diff --git a/contracts/settings/v1/conformance.json b/contracts/settings/v1/conformance.json index 0545434b..1a53a6f9 100644 --- a/contracts/settings/v1/conformance.json +++ b/contracts/settings/v1/conformance.json @@ -1,6 +1,6 @@ { "fixture_version": 1, - "manifest_revision": 2, + "manifest_revision": 3, "description": "Cross-platform conformance cases for settings resolution. Every case runs against the shipped manifest in this directory: definitions are referenced by key, never restated, so an expectation can only be satisfied by resolving the real contract. Each platform's resolver (Go in internal/settingsresolve, TypeScript in web/src/lib/settingsResolve.ts, Kotlin and Swift in the client repos) runs every case through a hand-written runner; a runner must fail on any fixture field it does not know, because schema drift in the fixture itself is drift. A case's constraint_bindings attach a constraint to a copy of a real definition so constraint semantics stay testable even while no shipped definition carries that constraint kind. In expected entries, constrained:true requires stored_value and constraint_kind to be present, and stored_value may be null to mean the authored value was JSON null.", "cases": [ { @@ -438,6 +438,27 @@ "constraints": { "allowed_metadata_languages": ["en", "fr"] }, "expected": [{ "key": "catalog.metadata_language", "value": "fr", "source": "profile" }] }, + { + "name": "metadata_language_exceptions_resolve_as_one_object", + "description": "The original-language exception map is a single profile-scoped value; resolution preserves every source-to-target entry together.", + "keys": ["catalog.metadata_language_overrides"], + "context": { "profile_id": "p1" }, + "stored": [ + { + "key": "catalog.metadata_language_overrides", + "scope": "profile", + "profile_id": "p1", + "value": { "ja": "en", "no": "x-silo-original" } + } + ], + "expected": [ + { + "key": "catalog.metadata_language_overrides", + "value": { "ja": "en", "no": "x-silo-original" }, + "source": "profile" + } + ] + }, { "name": "locked_replaces_a_differing_choice", "description": "locked is total: the policy value replaces the user's outright, and the authored choice is preserved as stored_value so it takes effect the day the lock lifts.", diff --git a/contracts/settings/v1/manifest.json b/contracts/settings/v1/manifest.json index dd8cbf08..d2559359 100644 --- a/contracts/settings/v1/manifest.json +++ b/contracts/settings/v1/manifest.json @@ -1,6 +1,6 @@ { "api_version": 1, - "revision": 2, + "revision": 3, "option_sets": { "playback_audio_languages": { "type": "language_tag", @@ -384,11 +384,28 @@ "default_value": null, "category": "catalog", "label": "Metadata language", - "description": "Language Silo prefers for titles, descriptions, and artwork.", + "description": "Fallback language Silo prefers for titles, descriptions, and artwork.", "recommended_control": "select", "suggested_options": "catalog_metadata_languages", "unset_label": "Library default", - "notes": "Migrates user_profiles.preferred_metadata_language; that column is NOT NULL DEFAULT '', and the empty string means unset, so migration writes a row only where it is non-empty. Deliberately carries no constrained_by. An earlier draft declared an allowlist on policy input profile_preferred_metadata_language, which is circular: internal/policy/input.go populates that field from this very column and vendor/scope.rego relays it unchanged as a preference. Policy narrows nothing here, and an allowlist bound to a scalar equal to the current value would either be a no-op or reject every change the user makes." + "notes": "Migrates user_profiles.preferred_metadata_language; that column is NOT NULL DEFAULT '', and the empty string means unset, so migration writes a row only where it is non-empty. Deliberately carries no constrained_by. An earlier draft declared an allowlist on policy input profile_preferred_metadata_language, which is circular: internal/policy/input.go populates that field from this very column and vendor/scope.rego relays it unchanged as a preference. Policy narrows nothing here, and an allowlist bound to a scalar equal to the current value would either be a no-op or reject every change the user makes. From revision 3, the private-use tag x-silo-original means resolve the target from each media item's original_language. It remains a valid value of the existing language_tag schema, so this is additive rather than a response-field type change." + }, + { + "key": "catalog.metadata_language_overrides", + "introduced_in": 3, + "persistence": "remote", + "allowed_scopes": ["profile"], + "resolution_order": ["profile", "default"], + "value_schema": { + "type": "object", + "schema_ref": "metadata-language-overrides.json" + }, + "default_value": {}, + "category": "catalog", + "label": "Metadata language exceptions", + "description": "Preferred metadata language for items in specific original languages.", + "recommended_control": "panel", + "notes": "Keys are canonical catalog original_language codes. Values are target BCP 47 language tags; x-silo-original means retain that source language. This key is separate from catalog.metadata_language so existing clients can continue changing the fallback without rewriting or discarding exceptions." }, { "key": "player.hdr_enabled", diff --git a/contracts/settings/v1/schemas/metadata-language-overrides.json b/contracts/settings/v1/schemas/metadata-language-overrides.json new file mode 100644 index 00000000..af5eabe6 --- /dev/null +++ b/contracts/settings/v1/schemas/metadata-language-overrides.json @@ -0,0 +1,20 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "https://silo-server.dev/contracts/settings/v1/schemas/metadata-language-overrides.json", + "title": "Metadata language exceptions", + "description": "Maps a media item's canonical original-language code to the metadata language a profile wants for that item. x-silo-original means use the source language itself.", + "type": "object", + "propertyNames": { + "description": "Canonical ISO 639 language code as stored in media_items.original_language.", + "type": "string", + "pattern": "^[a-z]{2,3}$" + }, + "additionalProperties": { + "description": "A BCP 47 target language or the x-silo-original private-use sentinel.", + "type": "string", + "minLength": 2, + "maxLength": 255, + "pattern": "^([a-zA-Z]{2,3}(-[a-zA-Z]{3}){0,3}(-[a-zA-Z]{4})?(-([a-zA-Z]{2}|[0-9]{3}))?(-([0-9a-zA-Z]{5,8}|[0-9][0-9a-zA-Z]{3}))*(-[0-9a-wy-zA-WY-Z](-[0-9a-zA-Z]{2,8})+)*(-[xX](-[0-9a-zA-Z]{1,8})+)?|[xX](-[0-9a-zA-Z]{1,8})+)$" + }, + "maxProperties": 256 +} diff --git a/docs/screenshots/pr-526-metadata-language-exception.png b/docs/screenshots/pr-526-metadata-language-exception.png new file mode 100644 index 0000000000000000000000000000000000000000..242a26c8218a043c6d58f5ea9d249f68ee9f24e6 GIT binary patch literal 182090 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 literal 0 HcmV?d00001 diff --git a/docs/screenshots/pr-526-metadata-language-iso-names.png b/docs/screenshots/pr-526-metadata-language-iso-names.png new file mode 100644 index 0000000000000000000000000000000000000000..541395096f429a1fd69ab883408c2e6af9180522 GIT binary patch literal 170946 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%0AEj|BERt?fmiqd`|s4c0`DZ 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 literal 0 HcmV?d00001 diff --git a/internal/access/metadata_language_test.go b/internal/access/metadata_language_test.go index 474cdbc2..839e3691 100644 --- a/internal/access/metadata_language_test.go +++ b/internal/access/metadata_language_test.go @@ -2,12 +2,15 @@ package access import ( "context" + "encoding/json" "errors" "log/slog" "strings" "sync" "testing" + "github.com/Silo-Server/silo-server/internal/settingscontract" + "github.com/Silo-Server/silo-server/internal/settingskeys" "github.com/Silo-Server/silo-server/internal/userstore" ) @@ -107,3 +110,43 @@ func TestPreferredMetadataLanguageStaysQuietWhenNothingIsStored(t *testing.T) { t.Errorf("healthy resolution logged %d records, want none", len(records)) } } + +func TestResolveViewerPreferencesIncludesMetadataLanguageOverrides(t *testing.T) { + store := settingStoreStub{rows: []userstore.SettingValue{ + { + SettingIdentity: userstore.SettingIdentity{ + Key: settingskeys.UiDisabledLibraryIds, Scope: settingscontract.ScopeProfile, + ProfileID: "profile-1", + }, + Value: json.RawMessage(`[]`), + }, + { + SettingIdentity: userstore.SettingIdentity{ + Key: settingskeys.CatalogMetadataLanguage, Scope: settingscontract.ScopeProfile, + ProfileID: "profile-1", + }, + Value: json.RawMessage(`"en"`), + }, + { + SettingIdentity: userstore.SettingIdentity{ + Key: settingskeys.CatalogMetadataLanguageOverrides, Scope: settingscontract.ScopeProfile, + ProfileID: "profile-1", + }, + Value: json.RawMessage(`{"nor":"x-silo-original","JA":"de"}`), + }, + }} + + preferences := ResolveViewerPreferences(context.Background(), store, "profile-1") + if preferences.PreferredMetadataLanguage != "en" { + t.Fatalf("fallback language = %q, want en", preferences.PreferredMetadataLanguage) + } + want := map[string]string{"no": OriginalMetadataLanguage, "ja": "de"} + if len(preferences.MetadataLanguageOverrides) != len(want) { + t.Fatalf("metadata overrides = %#v, want %#v", preferences.MetadataLanguageOverrides, want) + } + for source, target := range want { + if preferences.MetadataLanguageOverrides[source] != target { + t.Errorf("metadata override %q = %q, want %q", source, preferences.MetadataLanguageOverrides[source], target) + } + } +} diff --git a/internal/access/resolver.go b/internal/access/resolver.go index 9866f044..c919d2b7 100644 --- a/internal/access/resolver.go +++ b/internal/access/resolver.go @@ -88,6 +88,7 @@ func (r *Resolver) Resolve(ctx context.Context, input ResolveInput) (Scope, erro scope.MaxContentRating = profile.MaxContentRating scope.MaxPlaybackQuality = MinQuality(scope.MaxPlaybackQuality, NormalizePlaybackQuality(profile.MaxPlaybackQuality)) scope.PreferredMetadataLanguage = preferences.PreferredMetadataLanguage + scope.MetadataLanguageOverrides = preferences.MetadataLanguageOverrides scope.AllowedLibraryIDs, scope.LibrariesRestricted = effectiveLibraries(effective.LibraryIDs, profile) verified, err := VerifyProfileForRequest(profile, input, user.ID, user.AccessPolicyRevision, r.tokens) if err != nil { diff --git a/internal/access/resolver_test.go b/internal/access/resolver_test.go index d9896431..e823b0bc 100644 --- a/internal/access/resolver_test.go +++ b/internal/access/resolver_test.go @@ -579,14 +579,24 @@ func TestResolver_MetadataLanguageResolvesCanonically(t *testing.T) { ID: "prof-1", PreferredMetadataLanguage: "fr", }, - settingValues: []userstore.SettingValue{{ - SettingIdentity: userstore.SettingIdentity{ - Key: settingskeys.CatalogMetadataLanguage, - Scope: settingscontract.ScopeProfile, - ProfileID: "prof-1", + settingValues: []userstore.SettingValue{ + { + SettingIdentity: userstore.SettingIdentity{ + Key: settingskeys.CatalogMetadataLanguage, + Scope: settingscontract.ScopeProfile, + ProfileID: "prof-1", + }, + Value: json.RawMessage(`"de"`), }, - Value: json.RawMessage(`"de"`), - }}, + { + SettingIdentity: userstore.SettingIdentity{ + Key: settingskeys.CatalogMetadataLanguageOverrides, + Scope: settingscontract.ScopeProfile, + ProfileID: "prof-1", + }, + Value: json.RawMessage(`{"no":"x-silo-original"}`), + }, + }, }}, nil, ) @@ -598,6 +608,9 @@ func TestResolver_MetadataLanguageResolvesCanonically(t *testing.T) { if scope.PreferredMetadataLanguage != "de" { t.Fatalf("PreferredMetadataLanguage = %q, want canonical value %q", scope.PreferredMetadataLanguage, "de") } + if got := scope.MetadataLanguageOverrides["no"]; got != OriginalMetadataLanguage { + t.Fatalf("MetadataLanguageOverrides[no] = %q, want %q", got, OriginalMetadataLanguage) + } } func TestResolver_MetadataLanguageIgnoresLegacyColumn(t *testing.T) { diff --git a/internal/access/types.go b/internal/access/types.go index 3a34ffb4..09fc7cd8 100644 --- a/internal/access/types.go +++ b/internal/access/types.go @@ -12,6 +12,9 @@ type Scope struct { // PreferredMetadataLanguage is the profile's metadata (presentation) // language; "" inherits the library's metadata language. PreferredMetadataLanguage string + // MetadataLanguageOverrides maps a media item's canonical original-language + // code to the profile's target metadata language for that source. + MetadataLanguageOverrides map[string]string PolicyRevision int64 ProfileVerified bool } diff --git a/internal/access/viewer_preferences.go b/internal/access/viewer_preferences.go index 661e0b14..6bf5f8da 100644 --- a/internal/access/viewer_preferences.go +++ b/internal/access/viewer_preferences.go @@ -4,8 +4,10 @@ import ( "context" "encoding/json" "log/slog" + "sort" "strings" + "github.com/Silo-Server/silo-server/internal/lang" "github.com/Silo-Server/silo-server/internal/settingscontract" "github.com/Silo-Server/silo-server/internal/settingskeys" "github.com/Silo-Server/silo-server/internal/settingsresolve" @@ -18,6 +20,7 @@ import ( type ViewerPreferences struct { DisabledLibraryIDs []int PreferredMetadataLanguage string + MetadataLanguageOverrides map[string]string } // ResolveViewerPreferences resolves the profile's viewer-scope preferences in @@ -57,7 +60,11 @@ func resolveCanonicalViewerPreferences( } values, err := settingsresolve.New(contract).Resolve(ctx, store, settingsresolve.Context{ProfileID: profileID}, - []string{settingskeys.UiDisabledLibraryIds, settingskeys.CatalogMetadataLanguage}, nil) + []string{ + settingskeys.UiDisabledLibraryIds, + settingskeys.CatalogMetadataLanguage, + settingskeys.CatalogMetadataLanguageOverrides, + }, nil) if err != nil { slog.WarnContext(ctx, "viewer preference resolution degraded: reading setting values failed", "component", "access", "profile_id", profileID, "error", err) @@ -77,11 +84,58 @@ func resolveCanonicalViewerPreferences( if json.Unmarshal(value.Value, &language) == nil { out.preferences.PreferredMetadataLanguage = strings.TrimSpace(language) } + case settingskeys.CatalogMetadataLanguageOverrides: + out.preferences.MetadataLanguageOverrides = parseMetadataLanguageOverrides(value.Value) } } return out, true } +// OriginalMetadataLanguage is a private-use BCP 47 tag stored in +// catalog.metadata_language (or as an override target) to mean "resolve this +// media item's original language." Keeping the sentinel a valid language tag +// preserves the existing setting's wire type. +const OriginalMetadataLanguage = "x-silo-original" + +// parseMetadataLanguageOverrides normalizes source aliases and target tag +// casing before the map reaches catalog serving. The contract only accepts +// canonical source keys from normal clients, but normalization also makes old +// or manually-authored rows deterministic. +func parseMetadataLanguageOverrides(raw json.RawMessage) map[string]string { + var stored map[string]string + if json.Unmarshal(raw, &stored) != nil || len(stored) == 0 { + return nil + } + + keys := make([]string, 0, len(stored)) + for source := range stored { + keys = append(keys, source) + } + sort.Strings(keys) + + out := make(map[string]string, len(stored)) + for _, source := range keys { + canonicalSource := lang.Canonical(source) + if canonicalSource == "" { + continue + } + // When aliases collapse (for example en and eng), the canonical key + // wins because it sorts first and is never overwritten. + if _, exists := out[canonicalSource]; exists { + continue + } + target, ok := settingscontract.NormalizeLanguageTag(stored[source]) + if !ok { + continue + } + out[canonicalSource] = target + } + if len(out) == 0 { + return nil + } + return out +} + func legacyDisabledLibraryIDs(ctx context.Context, store userstore.UserStore) []int { raw, err := store.GetSetting(ctx, settingKeyDisabledLibraryIDs) if err != nil || raw == "" { diff --git a/internal/api/handlers/catalog_resources.go b/internal/api/handlers/catalog_resources.go index b15e1ccf..ff085525 100644 --- a/internal/api/handlers/catalog_resources.go +++ b/internal/api/handlers/catalog_resources.go @@ -228,6 +228,11 @@ func (h *CatalogResourceHandler) HandleGetSeasons(w http.ResponseWriter, r *http } if len(seasons) > 0 { + if h.items.detailSvc != nil { + if localized, locErr := h.items.detailSvc.LocalizeSeasonModels(r.Context(), seasons, filter); locErr == nil && len(localized) == len(seasons) { + seasons = localized + } + } episodesBySeason, err := h.items.episodeRepo.ListBySeriesGroupedBySeason(r.Context(), id) if err != nil { writeError(w, http.StatusInternalServerError, "internal_error", "Failed to list seasons") @@ -245,7 +250,7 @@ func (h *CatalogResourceHandler) HandleGetSeasons(w http.ResponseWriter, r *http if hasProgressMap { userData = catalog.EpisodeRollupUserData(episodes, progressMap) } - sr := h.items.toSeasonResponseFromEpisodes(r, id, s, episodes, userData) + sr := h.items.seasonResponseFromEpisodes(r, s, episodes, userData) resp = append(resp, sr) } diff --git a/internal/api/handlers/items.go b/internal/api/handlers/items.go index 2b8b543d..4c8047f7 100644 --- a/internal/api/handlers/items.go +++ b/internal/api/handlers/items.go @@ -1478,7 +1478,18 @@ func (h *ItemsHandler) toSeasonResponseFromEpisodes( s = localized } } + return h.seasonResponseFromEpisodes(r, s, episodes, userData) +} +// seasonResponseFromEpisodes maps a season that has already been localized. +// List endpoints use this after LocalizeSeasonModels so they do not repeat the +// localization query for every row. +func (h *ItemsHandler) seasonResponseFromEpisodes( + r *http.Request, + s *models.Season, + episodes []*models.Episode, + userData *catalog.SeasonUserData, +) seasonResponse { resp := seasonResponse{ ContentID: s.ContentID, SeasonNumber: s.SeasonNumber, @@ -1814,15 +1825,16 @@ func (h *ItemsHandler) accessFilter(r *http.Request) catalog.AccessFilter { if scope, ok := access.GetScope(r.Context()); ok { return catalog.AccessFilter{ - AllowedLibraryIDs: scope.AllowedLibraryIDs, - DisabledLibraryIDs: scope.DisabledLibraryIDs, - MaxContentRating: scope.MaxContentRating, - MaxPlaybackQuality: scope.MaxPlaybackQuality, - PresentationLibraryID: presentationLibraryID, - ProfilePreferredLanguage: scope.PreferredMetadataLanguage, - SelectedFileID: selectedFileID, - UserID: apimw.GetUserID(r.Context()), - ProfileID: apimw.GetProfileID(r.Context()), + AllowedLibraryIDs: scope.AllowedLibraryIDs, + DisabledLibraryIDs: scope.DisabledLibraryIDs, + MaxContentRating: scope.MaxContentRating, + MaxPlaybackQuality: scope.MaxPlaybackQuality, + PresentationLibraryID: presentationLibraryID, + ProfilePreferredLanguage: scope.PreferredMetadataLanguage, + MetadataLanguageOverrides: scope.MetadataLanguageOverrides, + SelectedFileID: selectedFileID, + UserID: apimw.GetUserID(r.Context()), + ProfileID: apimw.GetProfileID(r.Context()), } } diff --git a/internal/api/handlers/settings_values.go b/internal/api/handlers/settings_values.go index 8f93183b..5a68a689 100644 --- a/internal/api/handlers/settings_values.go +++ b/internal/api/handlers/settings_values.go @@ -55,6 +55,7 @@ type SettingValuesHandler struct { } type languageSuggestionSource interface { + ListOriginalLanguages(context.Context, catalog.BrowseFilters) ([]string, error) ListAudioLanguages(context.Context, catalog.BrowseFilters) ([]string, error) ListSubtitleLanguages(context.Context, catalog.BrowseFilters) ([]string, error) } @@ -1073,16 +1074,18 @@ func (h *SettingValuesHandler) observedLanguageSuggestions( return result } - wantsAudio, wantsSubtitles := false, false + wantsMetadata, wantsAudio, wantsSubtitles := false, false, false for _, eff := range resolved { switch eff.Key { + case settingskeys.CatalogMetadataLanguage: + wantsMetadata = true case settingskeys.PlaybackAudioLanguage: wantsAudio = true case settingskeys.PlaybackSubtitleLanguage: wantsSubtitles = true } } - if !wantsAudio && !wantsSubtitles { + if !wantsMetadata && !wantsAudio && !wantsSubtitles { return result } @@ -1092,6 +1095,15 @@ func (h *SettingValuesHandler) observedLanguageSuggestions( filters.DisabledLibraryIDs = scope.DisabledLibraryIDs filters.MaxContentRating = scope.MaxContentRating } + if wantsMetadata { + values, err := h.languageSource.ListOriginalLanguages(r.Context(), filters) + if err != nil { + slog.WarnContext(r.Context(), "settings: listing metadata language suggestions", + "component", "settings", "error", err) + } else { + result[settingskeys.CatalogMetadataLanguage] = values + } + } if wantsAudio { values, err := h.languageSource.ListAudioLanguages(r.Context(), filters) if err != nil { diff --git a/internal/api/handlers/settings_values_test.go b/internal/api/handlers/settings_values_test.go index 67584aef..0ef30367 100644 --- a/internal/api/handlers/settings_values_test.go +++ b/internal/api/handlers/settings_values_test.go @@ -20,6 +20,8 @@ import ( "github.com/Silo-Server/silo-server/internal/catalog" "github.com/Silo-Server/silo-server/internal/models" "github.com/Silo-Server/silo-server/internal/settingscontract" + "github.com/Silo-Server/silo-server/internal/settingskeys" + "github.com/Silo-Server/silo-server/internal/settingsresolve" "github.com/Silo-Server/silo-server/internal/userdb" "github.com/Silo-Server/silo-server/internal/userstore" ) @@ -852,3 +854,52 @@ func TestMergeLanguageSuggestionsUsesExactCurrentAlias(t *testing.T) { t.Errorf("mergeLanguageSuggestions() = %v, want %v", got, want) } } + +type recordingLanguageSuggestionSource struct { + filters catalog.BrowseFilters + original []string +} + +func (s *recordingLanguageSuggestionSource) ListOriginalLanguages( + _ context.Context, filters catalog.BrowseFilters, +) ([]string, error) { + s.filters = filters + return s.original, nil +} + +func (*recordingLanguageSuggestionSource) ListAudioLanguages( + context.Context, catalog.BrowseFilters, +) ([]string, error) { + return nil, nil +} + +func (*recordingLanguageSuggestionSource) ListSubtitleLanguages( + context.Context, catalog.BrowseFilters, +) ([]string, error) { + return nil, nil +} + +func TestObservedLanguageSuggestionsIncludesAccessibleOriginalLanguages(t *testing.T) { + source := &recordingLanguageSuggestionSource{original: []string{"is", "no"}} + handler, _ := newValuesTestHandler(t) + handler.SetLanguageSuggestionSource(source) + + req := valuesRequest(http.MethodGet, "/settings/values/effective", nil) + req = req.WithContext(access.SetScope(req.Context(), access.Scope{ + AllowedLibraryIDs: []int{4, 9}, + DisabledLibraryIDs: []int{12}, + MaxContentRating: "PG-13", + })) + observed := handler.observedLanguageSuggestions(req, []settingsresolve.Effective{{ + Key: settingskeys.CatalogMetadataLanguage, + }}) + + if !slices.Equal(observed[settingskeys.CatalogMetadataLanguage], []string{"is", "no"}) { + t.Fatalf("metadata suggestions = %v", observed[settingskeys.CatalogMetadataLanguage]) + } + if !slices.Equal(source.filters.LibraryIDs, []int{4, 9}) || + !slices.Equal(source.filters.DisabledLibraryIDs, []int{12}) || + source.filters.MaxContentRating != "PG-13" { + t.Fatalf("catalog filters = %#v", source.filters) + } +} diff --git a/internal/catalog/access_filter.go b/internal/catalog/access_filter.go index fc83a268..342bcdf8 100644 --- a/internal/catalog/access_filter.go +++ b/internal/catalog/access_filter.go @@ -19,11 +19,17 @@ type AccessFilter struct { // language. Presentation language resolves: explicit PresentationLanguage // → ProfilePreferredLanguage → the library's metadata_language. ProfilePreferredLanguage string - MaxContentRating string - MaxPlaybackQuality string - SelectedFileID int - UserID int - ProfileID string + // MetadataLanguageOverrides maps an item's original language to a target + // language before ProfilePreferredLanguage is used as the fallback. + MetadataLanguageOverrides map[string]string + // PresentationOriginalLanguage supplies a parent series' original language + // while localizing season and episode rows, which do not duplicate it. + PresentationOriginalLanguage string + MaxContentRating string + MaxPlaybackQuality string + SelectedFileID int + UserID int + ProfileID string // NamePrefix, when non-empty, restricts results to items whose // LOWER(COALESCE(NULLIF(BTRIM(sort_title),''), title)) starts with the // given (case-insensitive) prefix. Pushed into the SQL WHERE clause so diff --git a/internal/catalog/detail.go b/internal/catalog/detail.go index bd5c82a3..d89b5c63 100644 --- a/internal/catalog/detail.go +++ b/internal/catalog/detail.go @@ -15,6 +15,7 @@ import ( "github.com/Silo-Server/silo-server/internal/access" "github.com/Silo-Server/silo-server/internal/artworkkey" + "github.com/Silo-Server/silo-server/internal/lang" "github.com/Silo-Server/silo-server/internal/models" "github.com/Silo-Server/silo-server/internal/overlays" "github.com/Silo-Server/silo-server/internal/playback" @@ -750,27 +751,146 @@ func cloneEpisode(ep *models.Episode) *models.Episode { return &cp } -// resolvePresentationLanguage picks the display language for a request: -// explicit request language → viewer profile preference → the presentation -// library's metadata language. -func (s *DetailService) resolvePresentationLanguage(ctx context.Context, filter AccessFilter) (string, error) { - if strings.TrimSpace(filter.PresentationLanguage) != "" { - return strings.TrimSpace(filter.PresentationLanguage), nil +type presentationLanguageBase struct { + target string + libraryFallback string + explicit bool +} + +// resolvePresentationLanguageBase picks the request-wide fallback once. The +// item-specific original-language rule is applied separately, because one +// result page can contain several source languages and therefore several +// localization targets. +func (s *DetailService) resolvePresentationLanguageBase(ctx context.Context, filter AccessFilter) (presentationLanguageBase, error) { + base := presentationLanguageBase{} + if explicit := strings.TrimSpace(filter.PresentationLanguage); explicit != "" { + base.target = explicit + base.explicit = true + } else { + base.target = strings.TrimSpace(filter.ProfilePreferredLanguage) } - if strings.TrimSpace(filter.ProfilePreferredLanguage) != "" { - return strings.TrimSpace(filter.ProfilePreferredLanguage), nil + + // A concrete profile/explicit target never needs the library fallback. The + // original-language sentinel does: items with no known original language + // should still inherit the library rather than lose localization entirely. + if base.target != "" && !sameMetadataLanguage(base.target, access.OriginalMetadataLanguage) { + return base, nil } if filter.PresentationLibraryID == nil || s.folderRepo == nil { - return "", nil + return base, nil } folder, err := s.folderRepo.GetByID(ctx, *filter.PresentationLibraryID) if err != nil { if errors.Is(err, ErrFolderNotFound) { - return "", ErrItemNotFound + return presentationLanguageBase{}, ErrItemNotFound } + return presentationLanguageBase{}, err + } + base.libraryFallback = strings.TrimSpace(folder.MetadataLanguage) + if base.target == "" { + base.target = base.libraryFallback + } + return base, nil +} + +// presentationLanguageForOriginal applies a profile's per-source exception, +// then resolves the original-language sentinel to the item's concrete catalog +// language. An explicit request language remains authoritative and bypasses +// profile exceptions. +func presentationLanguageForOriginal(base presentationLanguageBase, originalLanguage string, filter AccessFilter) string { + original := lang.Canonical(originalLanguage) + target := base.target + if !base.explicit && original != "" { + if override := strings.TrimSpace(filter.MetadataLanguageOverrides[original]); override != "" { + target = override + } + } + if sameMetadataLanguage(target, access.OriginalMetadataLanguage) { + if original != "" { + return original + } + return base.libraryFallback + } + return strings.TrimSpace(target) +} + +func (s *DetailService) resolvePresentationLanguage(ctx context.Context, filter AccessFilter, originalLanguage string) (string, error) { + base, err := s.resolvePresentationLanguageBase(ctx, filter) + if err != nil { return "", err } - return strings.TrimSpace(folder.MetadataLanguage), nil + return presentationLanguageForOriginal(base, originalLanguage, filter), nil +} + +func metadataLanguageMayUseOriginal(filter AccessFilter) bool { + if explicit := strings.TrimSpace(filter.PresentationLanguage); explicit != "" { + return sameMetadataLanguage(explicit, access.OriginalMetadataLanguage) + } + return sameMetadataLanguage(filter.ProfilePreferredLanguage, access.OriginalMetadataLanguage) || + len(filter.MetadataLanguageOverrides) > 0 +} + +// seriesOriginalLanguage supplies the source language for season and episode +// rows, which deliberately inherit original_language from their parent series +// instead of duplicating it in each table. +func (s *DetailService) seriesOriginalLanguage(ctx context.Context, seriesID string, filter AccessFilter) string { + if original := strings.TrimSpace(filter.PresentationOriginalLanguage); original != "" { + return original + } + if !metadataLanguageMayUseOriginal(filter) || s.itemRepo == nil || strings.TrimSpace(seriesID) == "" { + return "" + } + series, err := s.itemRepo.GetByID(ctx, seriesID) + if err != nil || series == nil { + return "" + } + return series.OriginalLanguage +} + +// seriesOriginalLanguages is the batch equivalent of seriesOriginalLanguage. +// A season or episode page usually contains many children of one series; load +// each distinct parent once so original-language preferences do not introduce +// an N+1 query on those pages. +func (s *DetailService) seriesOriginalLanguages( + ctx context.Context, + seriesIDs []string, + filter AccessFilter, +) (map[string]string, error) { + originalBySeries := make(map[string]string) + seen := make(map[string]struct{}, len(seriesIDs)) + distinct := make([]string, 0, len(seriesIDs)) + for _, seriesID := range seriesIDs { + seriesID = strings.TrimSpace(seriesID) + if seriesID == "" { + continue + } + if _, exists := seen[seriesID]; exists { + continue + } + seen[seriesID] = struct{}{} + distinct = append(distinct, seriesID) + } + + if supplied := strings.TrimSpace(filter.PresentationOriginalLanguage); supplied != "" { + for _, seriesID := range distinct { + originalBySeries[seriesID] = supplied + } + return originalBySeries, nil + } + if len(distinct) == 0 || !metadataLanguageMayUseOriginal(filter) || s.itemRepo == nil { + return originalBySeries, nil + } + + series, err := s.itemRepo.GetByIDs(ctx, distinct) + if err != nil { + return nil, err + } + for _, item := range series { + if item != nil { + originalBySeries[item.ContentID] = item.OriginalLanguage + } + } + return originalBySeries, nil } // PendingTranslationLanguage reports the presentation language the item's @@ -783,7 +903,7 @@ func (s *DetailService) PendingTranslationLanguage(ctx context.Context, item *mo if item == nil || strings.TrimSpace(item.Overview) == "" || s.itemLocRepo == nil { return "" } - language, err := s.resolvePresentationLanguage(ctx, filter) + language, err := s.resolvePresentationLanguage(ctx, filter, item.OriginalLanguage) if err != nil || language == "" || sameMetadataLanguage(item.DefaultMetadataLanguage, language) { return "" } @@ -815,7 +935,7 @@ func (s *DetailService) PendingSeasonTranslationLanguage(ctx context.Context, se if season == nil || strings.TrimSpace(season.Overview) == "" || s.seasonLocRepo == nil { return "" } - language, err := s.resolvePresentationLanguage(ctx, filter) + language, err := s.resolvePresentationLanguage(ctx, filter, s.seriesOriginalLanguage(ctx, season.SeriesID, filter)) if err != nil || language == "" || sameMetadataLanguage(season.DefaultMetadataLanguage, language) { return "" } @@ -832,7 +952,7 @@ func (s *DetailService) PendingEpisodeTranslationLanguage(ctx context.Context, e if episode == nil || strings.TrimSpace(episode.Overview) == "" || s.episodeLocRepo == nil { return "" } - language, err := s.resolvePresentationLanguage(ctx, filter) + language, err := s.resolvePresentationLanguage(ctx, filter, s.seriesOriginalLanguage(ctx, episode.SeriesID, filter)) if err != nil || language == "" || sameMetadataLanguage(episode.DefaultMetadataLanguage, language) { return "" } @@ -865,7 +985,7 @@ func (s *DetailService) LocalizeItemModel(ctx context.Context, item *models.Medi if item == nil { return nil, nil } - language, err := s.resolvePresentationLanguage(ctx, filter) + language, err := s.resolvePresentationLanguage(ctx, filter, item.OriginalLanguage) if err != nil || language == "" || sameMetadataLanguage(item.DefaultMetadataLanguage, language) || s.itemLocRepo == nil { return cloneMediaItem(item), err } @@ -876,6 +996,64 @@ func (s *DetailService) LocalizeItemModel(ctx context.Context, item *models.Medi return s.localizeItemModelWith(item, language, loc), nil } +// loadItemLocalizations resolves each item's target and groups repository reads +// by that language. The former single-language lookup was correct only while a +// profile had one global target; source-language exceptions make the grouping +// necessary to preserve batching without serving one item's localization to +// another language group. +func (s *DetailService) loadItemLocalizations( + ctx context.Context, + items []*models.MediaItem, + filter AccessFilter, +) (map[string]string, map[string]*models.MediaItemLocalization, error) { + base, err := s.resolvePresentationLanguageBase(ctx, filter) + if err != nil { + return nil, nil, err + } + targets := make(map[string]string, len(items)) + if s.itemLocRepo == nil { + return targets, nil, nil + } + + idsByLanguage := make(map[string][]string) + seenByLanguage := make(map[string]map[string]struct{}) + for _, item := range items { + if item == nil || item.ContentID == "" { + continue + } + target := presentationLanguageForOriginal(base, item.OriginalLanguage, filter) + targets[item.ContentID] = target + if target == "" || sameMetadataLanguage(item.DefaultMetadataLanguage, target) { + continue + } + if seenByLanguage[target] == nil { + seenByLanguage[target] = make(map[string]struct{}) + } + if _, seen := seenByLanguage[target][item.ContentID]; seen { + continue + } + seenByLanguage[target][item.ContentID] = struct{}{} + idsByLanguage[target] = append(idsByLanguage[target], item.ContentID) + } + + languages := make([]string, 0, len(idsByLanguage)) + for language := range idsByLanguage { + languages = append(languages, language) + } + sort.Strings(languages) + localizations := make(map[string]*models.MediaItemLocalization) + for _, language := range languages { + rows, err := s.itemLocRepo.GetByContentIDs(ctx, idsByLanguage[language], language) + if err != nil { + return nil, nil, err + } + for contentID, localization := range rows { + localizations[contentID] = localization + } + } + return targets, localizations, nil +} + // localizeItemModelWith applies a pre-resolved localization to item, returning a // clone when there is nothing to localize (no language, base language already // matches, no localization repo, or no localization row). Shared core of @@ -899,29 +1077,8 @@ func (s *DetailService) LocalizeItemModels(ctx context.Context, items []*models. for i, item := range items { localized[i] = cloneMediaItem(item) } - language, err := s.resolvePresentationLanguage(ctx, filter) - if err != nil || language == "" || s.itemLocRepo == nil { - return localized, err - } - - ids := make([]string, 0, len(items)) - seen := make(map[string]struct{}, len(items)) - for _, item := range items { - if item == nil || item.ContentID == "" || sameMetadataLanguage(item.DefaultMetadataLanguage, language) { - continue - } - if _, ok := seen[item.ContentID]; ok { - continue - } - seen[item.ContentID] = struct{}{} - ids = append(ids, item.ContentID) - } - if len(ids) == 0 { - return localized, nil - } - - locs, err := s.itemLocRepo.GetByContentIDs(ctx, ids, language) - if err != nil || len(locs) == 0 { + targets, locs, err := s.loadItemLocalizations(ctx, items, filter) + if err != nil || s.itemLocRepo == nil { return localized, err } for i, item := range items { @@ -929,7 +1086,7 @@ func (s *DetailService) LocalizeItemModels(ctx context.Context, items []*models. continue } if loc := locs[item.ContentID]; loc != nil { - localized[i] = applyItemLocalization(item, loc) + localized[i] = s.localizeItemModelWith(item, targets[item.ContentID], loc) } } return localized, nil @@ -939,7 +1096,8 @@ func (s *DetailService) LocalizeSeasonModel(ctx context.Context, season *models. if season == nil { return nil, nil } - language, err := s.resolvePresentationLanguage(ctx, filter) + original := s.seriesOriginalLanguage(ctx, season.SeriesID, filter) + language, err := s.resolvePresentationLanguage(ctx, filter, original) if err != nil || language == "" || sameMetadataLanguage(season.DefaultMetadataLanguage, language) || s.seasonLocRepo == nil { return cloneSeason(season), err } @@ -950,11 +1108,89 @@ func (s *DetailService) LocalizeSeasonModel(ctx context.Context, season *models. return applySeasonLocalization(season, loc), nil } +// LocalizeSeasonModels applies presentation-language localization to a batch +// of seasons. Parent series and localization rows are fetched in batches, so +// original-language preferences do not add one query per season. The result +// preserves input order and length. +func (s *DetailService) LocalizeSeasonModels(ctx context.Context, seasons []*models.Season, filter AccessFilter) ([]*models.Season, error) { + if len(seasons) == 0 { + return seasons, nil + } + localized := make([]*models.Season, len(seasons)) + seriesIDs := make([]string, 0, len(seasons)) + for i, season := range seasons { + localized[i] = cloneSeason(season) + if season != nil { + seriesIDs = append(seriesIDs, season.SeriesID) + } + } + + base, err := s.resolvePresentationLanguageBase(ctx, filter) + if err != nil || s.seasonLocRepo == nil { + return localized, err + } + originalBySeries, err := s.seriesOriginalLanguages(ctx, seriesIDs, filter) + if err != nil { + return localized, err + } + + targets := make(map[string]string, len(seasons)) + idsByLanguage := make(map[string][]string) + seenByLanguage := make(map[string]map[string]struct{}) + for _, season := range seasons { + if season == nil || season.ContentID == "" { + continue + } + target := presentationLanguageForOriginal(base, originalBySeries[season.SeriesID], filter) + targets[season.ContentID] = target + if target == "" || sameMetadataLanguage(season.DefaultMetadataLanguage, target) { + continue + } + if seenByLanguage[target] == nil { + seenByLanguage[target] = make(map[string]struct{}) + } + if _, seen := seenByLanguage[target][season.ContentID]; seen { + continue + } + seenByLanguage[target][season.ContentID] = struct{}{} + idsByLanguage[target] = append(idsByLanguage[target], season.ContentID) + } + + languages := make([]string, 0, len(idsByLanguage)) + for language := range idsByLanguage { + languages = append(languages, language) + } + sort.Strings(languages) + locs := make(map[string]*models.SeasonLocalization) + for _, language := range languages { + rows, err := s.seasonLocRepo.GetBySeasonIDs(ctx, idsByLanguage[language], language) + if err != nil { + return localized, err + } + for seasonID, localization := range rows { + locs[seasonID] = localization + } + } + for i, season := range seasons { + if season == nil { + continue + } + if loc := locs[season.ContentID]; loc != nil { + target := targets[season.ContentID] + if target != "" && !sameMetadataLanguage(season.DefaultMetadataLanguage, target) { + localized[i] = applySeasonLocalization(season, loc) + } + } + } + return localized, nil +} + func (s *DetailService) LocalizeEpisodeModel(ctx context.Context, episode *models.Episode, filter AccessFilter) (*models.Episode, error) { if episode == nil { return nil, nil } - language, err := s.resolvePresentationLanguage(ctx, filter) + original := s.seriesOriginalLanguage(ctx, episode.SeriesID, filter) + language, err := s.resolvePresentationLanguage(ctx, filter, original) if err != nil || language == "" || sameMetadataLanguage(episode.DefaultMetadataLanguage, language) || s.episodeLocRepo == nil { return cloneEpisode(episode), err } @@ -972,23 +1208,50 @@ func (s *DetailService) LocalizeEpisodeModels(ctx context.Context, episodes []*m if len(episodes) == 0 { return episodes, nil } - language, err := s.resolvePresentationLanguage(ctx, filter) - if err != nil || language == "" || s.episodeLocRepo == nil { + base, err := s.resolvePresentationLanguageBase(ctx, filter) + if err != nil || s.episodeLocRepo == nil { return episodes, err } - ids := make([]string, 0, len(episodes)) + + seriesIDs := make([]string, 0, len(episodes)) + for _, episode := range episodes { + if episode != nil { + seriesIDs = append(seriesIDs, episode.SeriesID) + } + } + originalBySeries, err := s.seriesOriginalLanguages(ctx, seriesIDs, filter) + if err != nil { + return episodes, err + } + + targets := make(map[string]string, len(episodes)) + idsByLanguage := make(map[string][]string) for _, ep := range episodes { - if ep == nil || sameMetadataLanguage(ep.DefaultMetadataLanguage, language) { + if ep == nil || ep.ContentID == "" { continue } - ids = append(ids, ep.ContentID) + target := presentationLanguageForOriginal(base, originalBySeries[ep.SeriesID], filter) + targets[ep.ContentID] = target + if target == "" || sameMetadataLanguage(ep.DefaultMetadataLanguage, target) { + continue + } + idsByLanguage[target] = append(idsByLanguage[target], ep.ContentID) } - if len(ids) == 0 { - return episodes, nil + + languages := make([]string, 0, len(idsByLanguage)) + for language := range idsByLanguage { + languages = append(languages, language) } - locs, err := s.episodeLocRepo.GetByEpisodeIDs(ctx, ids, language) - if err != nil || len(locs) == 0 { - return episodes, err + sort.Strings(languages) + locs := make(map[string]*models.EpisodeLocalization) + for _, language := range languages { + rows, err := s.episodeLocRepo.GetByEpisodeIDs(ctx, idsByLanguage[language], language) + if err != nil { + return episodes, err + } + for episodeID, localization := range rows { + locs[episodeID] = localization + } } localized := make([]*models.Episode, len(episodes)) for i, ep := range episodes { @@ -997,7 +1260,10 @@ func (s *DetailService) LocalizeEpisodeModels(ctx context.Context, episodes []*m continue } if loc := locs[ep.ContentID]; loc != nil { - localized[i] = applyEpisodeLocalization(ep, loc) + target := targets[ep.ContentID] + if target != "" && !sameMetadataLanguage(ep.DefaultMetadataLanguage, target) { + localized[i] = applyEpisodeLocalization(ep, loc) + } } } return localized, nil @@ -1287,21 +1553,13 @@ func (s *DetailService) GetItemDetailsByIDs(ctx context.Context, contentIDs []st return result, nil } - // Localization: resolve the presentation language once, then one bulk - // localization lookup. A resolution failure surfaces the same wrapped error - // GetItemDetail would produce from buildMediaItemDetail, so the caller - // degrades to the per-item path. - language, err := s.resolvePresentationLanguage(ctx, filter) + // Localization keeps one lookup per target language. Most profiles still + // produce one query; profiles with source-language exceptions produce one + // query for each target represented on this page. + targetByID, locByID, err := s.loadItemLocalizations(ctx, visible, filter) if err != nil { return nil, fmt.Errorf("localizing item detail: %w", err) } - var locByID map[string]*models.MediaItemLocalization - if language != "" && s.itemLocRepo != nil { - locByID, err = s.itemLocRepo.GetByContentIDs(ctx, visibleIDs, language) - if err != nil { - return nil, fmt.Errorf("localizing item detail: %w", err) - } - } // Credits for the whole page in one query. var creditsByID map[string][]models.ItemPerson @@ -1361,6 +1619,7 @@ func (s *DetailService) GetItemDetailsByIDs(ctx context.Context, contentIDs []st for _, item := range visible { id := item.ContentID + language := targetByID[id] loc := locByID[id] pending := "" if s.itemLocRepo != nil { @@ -2319,17 +2578,19 @@ func clearSentinel(s string) string { } func (s *DetailService) buildSeasonDetail(ctx context.Context, season *models.Season, filter AccessFilter) (*ItemDetail, error) { - pendingTranslation := s.PendingSeasonTranslationLanguage(ctx, season, filter) - localizedSeason, err := s.LocalizeSeasonModel(ctx, season, filter) - if err != nil { - return nil, fmt.Errorf("localizing season detail: %w", err) - } - season = localizedSeason series, err := s.itemRepo.GetByID(ctx, season.SeriesID) if err != nil { return nil, fmt.Errorf("loading parent series: %w", err) } - series, err = s.LocalizeItemModel(ctx, series, filter) + localizationFilter := filter + localizationFilter.PresentationOriginalLanguage = series.OriginalLanguage + pendingTranslation := s.PendingSeasonTranslationLanguage(ctx, season, localizationFilter) + localizedSeason, err := s.LocalizeSeasonModel(ctx, season, localizationFilter) + if err != nil { + return nil, fmt.Errorf("localizing season detail: %w", err) + } + season = localizedSeason + series, err = s.LocalizeItemModel(ctx, series, localizationFilter) if err != nil { return nil, fmt.Errorf("localizing season series detail: %w", err) } @@ -2384,8 +2645,10 @@ func (s *DetailService) buildSeasonDetail(ctx context.Context, season *models.Se } func (s *DetailService) buildEpisodeDetail(ctx context.Context, episode *models.Episode, seriesCtx *seriesDetailContext, filter AccessFilter) (*ItemDetail, error) { - pendingTranslation := s.PendingEpisodeTranslationLanguage(ctx, episode, filter) - localizedEpisode, err := s.LocalizeEpisodeModel(ctx, episode, filter) + localizationFilter := filter + localizationFilter.PresentationOriginalLanguage = seriesCtx.series.OriginalLanguage + pendingTranslation := s.PendingEpisodeTranslationLanguage(ctx, episode, localizationFilter) + localizedEpisode, err := s.LocalizeEpisodeModel(ctx, episode, localizationFilter) if err != nil { return nil, fmt.Errorf("localizing episode detail: %w", err) } @@ -2520,7 +2783,15 @@ func (s *DetailService) GetWatchDetail(ctx context.Context, contentID string, fi if err := s.validatePresentationItemAccess(ctx, filter, episode.ContentID); err != nil { return nil, err } - episode, err = s.LocalizeEpisodeModel(ctx, episode, filter) + // Seasons and episodes inherit original_language from the parent series. + // Load it before localization and reuse the same row for SeriesTitle below, + // avoiding an extra lookup only for profiles that use language exceptions. + series, seriesErr := s.itemRepo.GetByID(ctx, episode.SeriesID) + localizationFilter := filter + if seriesErr == nil && series != nil { + localizationFilter.PresentationOriginalLanguage = series.OriginalLanguage + } + episode, err = s.LocalizeEpisodeModel(ctx, episode, localizationFilter) if err != nil { return nil, fmt.Errorf("localizing episode watch detail: %w", err) } @@ -2557,8 +2828,8 @@ func (s *DetailService) GetWatchDetail(ctx context.Context, contentID string, fi } } - if series, err := s.itemRepo.GetByID(ctx, episode.SeriesID); err == nil { - series, err = s.LocalizeItemModel(ctx, series, filter) + if seriesErr == nil && series != nil { + series, err = s.LocalizeItemModel(ctx, series, localizationFilter) if err != nil { return nil, fmt.Errorf("localizing series watch detail: %w", err) } diff --git a/internal/catalog/detail_batch_equivalence_test.go b/internal/catalog/detail_batch_equivalence_test.go index a4d401a8..44a253a6 100644 --- a/internal/catalog/detail_batch_equivalence_test.go +++ b/internal/catalog/detail_batch_equivalence_test.go @@ -10,6 +10,7 @@ import ( "github.com/jackc/pgx/v5/pgxpool" + "github.com/Silo-Server/silo-server/internal/access" "github.com/Silo-Server/silo-server/internal/models" ) @@ -147,21 +148,22 @@ func TestGetItemDetailsByIDs_MatchesGetItemDetail(t *testing.T) { batchEquivExec(t, pool, `DELETE FROM media_items WHERE content_id = ANY($1)`, ids) }) - insertItem := func(contentID, mediaType, title, overview, rating string) { + insertItem := func(contentID, mediaType, title, overview, rating, originalLanguage string) { batchEquivExec(t, pool, ` - INSERT INTO media_items (content_id, type, title, genres, overview, content_rating, default_metadata_language) - VALUES ($1, $2, $3, '{}'::text[], $4, $5, 'en') - `, contentID, mediaType, title, overview, rating) + INSERT INTO media_items (content_id, type, title, genres, overview, content_rating, default_metadata_language, original_language) + VALUES ($1, $2, $3, '{}'::text[], $4, $5, 'en', $6) + `, contentID, mediaType, title, overview, rating, originalLanguage) } // movieA: localized into fr, credited, has files. content_rating PG -> visible. - insertItem(movieA, "movie", "Movie A", "Movie A overview (en)", "PG") - // movieB: overview present, default lang en, NO fr localization row -> the - // pending-translation-language path must fire and match between paths. - insertItem(movieB, "movie", "Movie B", "Movie B overview (en)", "PG") + insertItem(movieA, "movie", "Movie A", "Movie A overview (en)", "PG", "en") + // movieB: Norwegian original, default metadata language en, and no no + // localization row. The per-source original-language exception must produce + // a Norwegian pending-translation target in both batch and per-item paths. + insertItem(movieB, "movie", "Movie B", "Movie B overview (en)", "PG", "no") // series: has a work summary, no playable files (series skip the file path). - insertItem(series, "series", "Series One", "Series overview (en)", "PG") + insertItem(series, "series", "Series One", "Series overview (en)", "PG", "en") // movieR: R-rated -> filtered out by MaxContentRating=PG-13 on BOTH paths. - insertItem(movieR, "movie", "Movie R", "Movie R overview (en)", "R") + insertItem(movieR, "movie", "Movie R", "Movie R overview (en)", "R", "en") // fr localization for movieA only. batchEquivExec(t, pool, ` @@ -251,13 +253,17 @@ func TestGetItemDetailsByIDs_MatchesGetItemDetail(t *testing.T) { } // Single shared access filter for BOTH paths: PG-13 ceiling (so PG items are - // visible, the R item is not) and an explicit fr presentation language (so - // the localization path actually runs rather than short-circuiting). + // visible, the R item is not), a French profile fallback, and Norwegian + // original-language metadata for Norwegian titles. This forces the batch + // path to group one page into two localization targets. filter := AccessFilter{ - PresentationLanguage: "fr", - MaxContentRating: "PG-13", - UserID: 1, - ProfileID: "profile-1", + ProfilePreferredLanguage: "fr", + MetadataLanguageOverrides: map[string]string{ + "no": access.OriginalMetadataLanguage, + }, + MaxContentRating: "PG-13", + UserID: 1, + ProfileID: "profile-1", } visibleIDs := []string{movieA, movieB, series} @@ -306,8 +312,8 @@ func TestGetItemDetailsByIDs_MatchesGetItemDetail(t *testing.T) { if got := batch[movieA]; len(got.Versions) != 2 { t.Fatalf("movieA versions = %d, want 2 (file prefetch not applied)", len(got.Versions)) } - if got := batch[movieB]; got.PendingTranslationLanguage != "fr" { - t.Fatalf("movieB pending translation language = %q, want fr", got.PendingTranslationLanguage) + if got := batch[movieB]; got.PendingTranslationLanguage != "no" { + t.Fatalf("movieB pending translation language = %q, want no", got.PendingTranslationLanguage) } if got := batch[series]; got.WorkID != "work-series-1" { t.Fatalf("series work summary not applied: WorkID=%q", got.WorkID) diff --git a/internal/catalog/detail_metadata_language_test.go b/internal/catalog/detail_metadata_language_test.go new file mode 100644 index 00000000..9021a505 --- /dev/null +++ b/internal/catalog/detail_metadata_language_test.go @@ -0,0 +1,111 @@ +package catalog + +import ( + "context" + "testing" + + "github.com/Silo-Server/silo-server/internal/access" +) + +func TestSeriesOriginalLanguagesUsesSuppliedParentContext(t *testing.T) { + svc := &DetailService{} + got, err := svc.seriesOriginalLanguages( + context.Background(), + []string{"series-a", "series-a", "", "series-b"}, + AccessFilter{PresentationOriginalLanguage: "no"}, + ) + if err != nil { + t.Fatalf("seriesOriginalLanguages: %v", err) + } + want := map[string]string{"series-a": "no", "series-b": "no"} + if len(got) != len(want) { + t.Fatalf("original languages = %#v, want %#v", got, want) + } + for seriesID, language := range want { + if got[seriesID] != language { + t.Errorf("original language for %q = %q, want %q", seriesID, got[seriesID], language) + } + } +} + +func TestPresentationLanguageForOriginal(t *testing.T) { + tests := []struct { + name string + base presentationLanguageBase + original string + filter AccessFilter + want string + }{ + { + name: "fixed fallback", + base: presentationLanguageBase{target: "en"}, + original: "ja", + want: "en", + }, + { + name: "source stays original", + base: presentationLanguageBase{target: "en"}, + original: "nor", + filter: AccessFilter{MetadataLanguageOverrides: map[string]string{ + "no": access.OriginalMetadataLanguage, + }}, + want: "no", + }, + { + name: "source maps to another target", + base: presentationLanguageBase{target: "en"}, + original: "ja", + filter: AccessFilter{MetadataLanguageOverrides: map[string]string{ + "ja": "de", + }}, + want: "de", + }, + { + name: "global original", + base: presentationLanguageBase{target: access.OriginalMetadataLanguage}, + original: "jpn", + want: "ja", + }, + { + name: "unknown original inherits library", + base: presentationLanguageBase{ + target: access.OriginalMetadataLanguage, + libraryFallback: "fr", + }, + want: "fr", + }, + { + name: "explicit target bypasses exceptions", + base: presentationLanguageBase{target: "fr", explicit: true}, + original: "no", + filter: AccessFilter{MetadataLanguageOverrides: map[string]string{ + "no": access.OriginalMetadataLanguage, + }}, + want: "fr", + }, + } + + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + if got := presentationLanguageForOriginal(tt.base, tt.original, tt.filter); got != tt.want { + t.Fatalf("presentation language = %q, want %q", got, tt.want) + } + }) + } +} + +func TestMetadataLanguageMayUseOriginalHonorsExplicitTarget(t *testing.T) { + filter := AccessFilter{ + PresentationLanguage: "fr", + ProfilePreferredLanguage: access.OriginalMetadataLanguage, + MetadataLanguageOverrides: map[string]string{"no": access.OriginalMetadataLanguage}, + } + if metadataLanguageMayUseOriginal(filter) { + t.Fatal("concrete explicit language must bypass profile original-language preferences") + } + + filter.PresentationLanguage = access.OriginalMetadataLanguage + if !metadataLanguageMayUseOriginal(filter) { + t.Fatal("explicit original-language target must resolve the parent language") + } +} diff --git a/internal/jellycompat/access_filter.go b/internal/jellycompat/access_filter.go index bbf6e017..b78c9ef3 100644 --- a/internal/jellycompat/access_filter.go +++ b/internal/jellycompat/access_filter.go @@ -43,13 +43,14 @@ func NewScopeAccessFilter(resolver ScopeResolver) AccessFilterResolver { } } return catalog.AccessFilter{ - AllowedLibraryIDs: scope.AllowedLibraryIDs, - DisabledLibraryIDs: scope.DisabledLibraryIDs, - MaxContentRating: scope.MaxContentRating, - MaxPlaybackQuality: scope.MaxPlaybackQuality, - ProfilePreferredLanguage: scope.PreferredMetadataLanguage, - UserID: userID, - ProfileID: profileID, + AllowedLibraryIDs: scope.AllowedLibraryIDs, + DisabledLibraryIDs: scope.DisabledLibraryIDs, + MaxContentRating: scope.MaxContentRating, + MaxPlaybackQuality: scope.MaxPlaybackQuality, + ProfilePreferredLanguage: scope.PreferredMetadataLanguage, + MetadataLanguageOverrides: scope.MetadataLanguageOverrides, + UserID: userID, + ProfileID: profileID, } } } diff --git a/internal/jellycompat/access_filter_test.go b/internal/jellycompat/access_filter_test.go index f70fc395..1b1d4769 100644 --- a/internal/jellycompat/access_filter_test.go +++ b/internal/jellycompat/access_filter_test.go @@ -24,12 +24,16 @@ func (s *stubScopeResolver) Resolve(_ context.Context, input access.ResolveInput func TestScopeAccessFilterMapsScope(t *testing.T) { resolver := &stubScopeResolver{ scope: access.Scope{ - UserID: 7, - ProfileID: "profile-1", - AllowedLibraryIDs: []int{2, 19}, - LibrariesRestricted: true, - MaxContentRating: "PG-13", - MaxPlaybackQuality: "1080p", + UserID: 7, + ProfileID: "profile-1", + AllowedLibraryIDs: []int{2, 19}, + LibrariesRestricted: true, + MaxContentRating: "PG-13", + MaxPlaybackQuality: "1080p", + PreferredMetadataLanguage: "fr", + MetadataLanguageOverrides: map[string]string{ + "no": access.OriginalMetadataLanguage, + }, }, } @@ -50,6 +54,12 @@ func TestScopeAccessFilterMapsScope(t *testing.T) { if filter.MaxPlaybackQuality != "1080p" { t.Fatalf("MaxPlaybackQuality = %q, want 1080p", filter.MaxPlaybackQuality) } + if filter.ProfilePreferredLanguage != "fr" { + t.Fatalf("ProfilePreferredLanguage = %q, want fr", filter.ProfilePreferredLanguage) + } + if got := filter.MetadataLanguageOverrides["no"]; got != access.OriginalMetadataLanguage { + t.Fatalf("MetadataLanguageOverrides[no] = %q, want %q", got, access.OriginalMetadataLanguage) + } if filter.UserID != 7 || filter.ProfileID != "profile-1" { t.Fatalf("identity not propagated: %+v", filter) } diff --git a/internal/jellycompat/content_direct.go b/internal/jellycompat/content_direct.go index d67d5936..63bdba85 100644 --- a/internal/jellycompat/content_direct.go +++ b/internal/jellycompat/content_direct.go @@ -835,14 +835,14 @@ func (s *directContentService) ListSeasons(ctx context.Context, session *Session progressMap := s.batchProgressForEpisodes(ctx, session, allEpisodeIDs) if len(seasons) > 0 { + if s.detailSvc != nil { + if localized, locErr := s.detailSvc.LocalizeSeasonModels(ctx, seasons, filter); locErr == nil && len(localized) == len(seasons) { + seasons = localized + } + } result := make([]upstreamSeason, 0, len(seasons)) for _, season := range seasons { eps := groupedEpisodes[season.SeasonNumber] - if s.detailSvc != nil { - if localized, locErr := s.detailSvc.LocalizeSeasonModel(ctx, season, filter); locErr == nil && localized != nil { - season = localized - } - } us := modelSeasonToUpstream(season, len(eps)) applySeasonUserData(&us, eps, progressMap) result = append(result, us) @@ -922,14 +922,14 @@ func (s *directContentService) ListEpisodes(ctx context.Context, session *Sessio progressMap = progressEntries } } + if s.detailSvc != nil { + if localized, locErr := s.detailSvc.LocalizeEpisodeModels(ctx, episodes, filter); locErr == nil && len(localized) == len(episodes) { + episodes = localized + } + } result := make([]upstreamEpisode, 0, len(episodes)) for _, ep := range episodes { - if s.detailSvc != nil { - if localized, locErr := s.detailSvc.LocalizeEpisodeModel(ctx, ep, filter); locErr == nil && localized != nil { - ep = localized - } - } ue := modelEpisodeToUpstream(ep, seriesID) if progress, ok := progressMap[ep.ContentID]; ok { progressCopy := progress diff --git a/internal/policy/viewer_resolver.go b/internal/policy/viewer_resolver.go index 6921ab60..f87ed671 100644 --- a/internal/policy/viewer_resolver.go +++ b/internal/policy/viewer_resolver.go @@ -148,6 +148,7 @@ func (r *ViewerResolver) Resolve(ctx context.Context, input access.ResolveInput) MaxContentRating: decision.MaxContentRating, MaxPlaybackQuality: decision.MaxPlaybackQuality, PreferredMetadataLanguage: decision.PreferredMetadataLanguage, + MetadataLanguageOverrides: preferences.MetadataLanguageOverrides, PolicyRevision: user.AccessPolicyRevision, // The policy output is tighten-only (merged_profile_verified), so a // custom override may revoke verification but never grant it. ANDing diff --git a/internal/policy/viewer_resolver_test.go b/internal/policy/viewer_resolver_test.go index ce0494ba..508e9f88 100644 --- a/internal/policy/viewer_resolver_test.go +++ b/internal/policy/viewer_resolver_test.go @@ -525,6 +525,13 @@ func TestViewerResolverBatchesViewerPreferenceRead(t *testing.T) { }, Value: json.RawMessage(`"de"`), }, + { + SettingIdentity: userstore.SettingIdentity{ + Key: settingskeys.CatalogMetadataLanguageOverrides, Scope: settingscontract.ScopeProfile, + ProfileID: "prof-1", + }, + Value: json.RawMessage(`{"no":"x-silo-original"}`), + }, }, }} resolver := NewViewerResolver( @@ -542,6 +549,9 @@ func TestViewerResolverBatchesViewerPreferenceRead(t *testing.T) { if !reflect.DeepEqual(scope.DisabledLibraryIDs, []int{3, 5}) || scope.PreferredMetadataLanguage != "de" { t.Errorf("resolved scope = %#v", scope) } + if got := scope.MetadataLanguageOverrides["no"]; got != access.OriginalMetadataLanguage { + t.Errorf("metadata language override = %q, want %q", got, access.OriginalMetadataLanguage) + } } func (s viewerResolverTestStore) GetProfile(_ context.Context, id string) (*userstore.Profile, error) { diff --git a/internal/settingscontract/contract_test.go b/internal/settingscontract/contract_test.go index 2a1e84c5..67893f43 100644 --- a/internal/settingscontract/contract_test.go +++ b/internal/settingscontract/contract_test.go @@ -1527,11 +1527,10 @@ func TestLibraryPageStateAcceptsTheWebClientsRealSearchStrings(t *testing.T) { // TestObjectSchemasAcceptTheShapesClientsStore exercises every schema_ref // against a real value. // -// Nothing else does. Each of these definitions is nullable with a null default, -// so TestDefaultsValidateAgainstTheirOwnSchema returns at the null branch -// without ever compiling the reference — a schema_ref naming a file that does -// not exist, or a schema that rejects the shape its client actually stores, -// would pass every other test in this file. +// Defaults alone are insufficient: several definitions are nullable and stop +// at the null branch, while an empty-object default does not exercise dynamic +// properties. These real client shapes make every referenced schema prove its +// actual value vocabulary. func TestObjectSchemasAcceptTheShapesClientsStore(t *testing.T) { manifest, err := Load() if err != nil { @@ -1539,6 +1538,7 @@ func TestObjectSchemasAcceptTheShapesClientsStore(t *testing.T) { } valid := map[string]string{ + "catalog.metadata_language_overrides": `{"ja":"en","no":"x-silo-original"}`, "ui.card_overlays": `{"version":2,"preset":"minimal","order":["hdr","year"],` + `"items":{"hdr":{"enabled":true,"position":"top-left","accentColor":"#f5c518"},` + `"year":{"enabled":false,"position":"bottom-right","showIcon":true}}}`, @@ -1569,10 +1569,11 @@ func TestObjectSchemasAcceptTheShapesClientsStore(t *testing.T) { // Each schema must actually constrain something, or it is decoration. invalid := map[string]string{ - "ui.card_overlays": `{"version":2,"preset":"nonesuch","order":[],"items":{}}`, - "ui.sidebar_pins": `{"7":[{"type":"bogus","id":"x","label":"L"}]}`, - "ui.disabled_library_ids": `[0,-1]`, - "ui.library_order": `[1,1]`, + "catalog.metadata_language_overrides": `{"Norwegian":"not a language tag"}`, + "ui.card_overlays": `{"version":2,"preset":"nonesuch","order":[],"items":{}}`, + "ui.sidebar_pins": `{"7":[{"type":"bogus","id":"x","label":"L"}]}`, + "ui.disabled_library_ids": `[0,-1]`, + "ui.library_order": `[1,1]`, } for key, value := range invalid { t.Run(key+" rejects", func(t *testing.T) { diff --git a/internal/settingskeys/keys.go b/internal/settingskeys/keys.go index b8de3c81..01161a8f 100644 --- a/internal/settingskeys/keys.go +++ b/internal/settingskeys/keys.go @@ -9,12 +9,14 @@ package settingskeys // Revision is the manifest revision these bindings were generated from. -const Revision = 2 +const Revision = 3 // Setting keys, one constant per definition. const ( // Metadata language CatalogMetadataLanguage = "catalog.metadata_language" + // Metadata language exceptions + CatalogMetadataLanguageOverrides = "catalog.metadata_language_overrides" // Download quality DownloadsDefaultQuality = "downloads.default_quality" // Keep watched downloads @@ -116,6 +118,7 @@ const ( // Remote lists every key the server stores. var Remote = []string{ CatalogMetadataLanguage, + CatalogMetadataLanguageOverrides, PlaybackAudioLanguage, PlaybackAutoPlayNext, PlaybackAutoPlayNextPreview, diff --git a/web/package.json b/web/package.json index 4d9cb31c..c9e8e481 100644 --- a/web/package.json +++ b/web/package.json @@ -25,6 +25,7 @@ "@dnd-kit/utilities": "^3.2.2", "@fontsource/noto-sans-arabic": "^5.2.10", "@fontsource/noto-sans-thai": "^5.2.8", + "@formatjs/intl-displaynames": "^7.3.13", "@tanstack/react-query": "^5.90.21", "@tanstack/react-virtual": "^3.13.19", "@uiw/react-codemirror": "^4.25.10", diff --git a/web/pnpm-lock.yaml b/web/pnpm-lock.yaml index d6a55cd1..c7e53586 100644 --- a/web/pnpm-lock.yaml +++ b/web/pnpm-lock.yaml @@ -46,6 +46,9 @@ importers: '@fontsource/noto-sans-thai': specifier: ^5.2.8 version: 5.2.8 + '@formatjs/intl-displaynames': + specifier: ^7.3.13 + version: 7.3.13 '@tanstack/react-query': specifier: ^5.90.21 version: 5.90.21(react@19.2.4) @@ -633,6 +636,15 @@ packages: '@fontsource/noto-sans-thai@5.2.8': resolution: {integrity: sha512-HUQAxOzclod9PXQx4uMoGRAsor+64snW91QuBg39jT9lbsp7jJx1i3jAtHPJ7mQxHEHnhRjNp54fb8GqPPC6zg==} + '@formatjs/fast-memoize@3.1.7': + resolution: {integrity: sha512-zXfhLpvA6T7+efdt9JLbBwZ00tT7NsBMDVnDu8rpHeNNv8KfRZAMo2gkG0k9lK/Nzc//3kJ9pImsfuJxk3KhUA==} + + '@formatjs/intl-displaynames@7.3.13': + resolution: {integrity: sha512-p+rSpn96AeUS5qW5sBAkvGFyw6oYcg8y2NNI7mrqfuyfRbIeHRLzO0+fdcKLqdXoLTHBfr3iZc/v6NPWWSdkmg==} + + '@formatjs/intl-localematcher@0.8.13': + resolution: {integrity: sha512-kHEAFOkeJSPNi7c5PaKaRjxcBrJwzzt81ifUu+8uve1EDW/VJl83KsxmqgqNZLzcFEhSliZGvx3+pk/RH0IOmg==} + '@humanfs/core@0.19.1': resolution: {integrity: sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==} engines: {node: '>=18.18.0'} @@ -3541,6 +3553,16 @@ snapshots: '@fontsource/noto-sans-thai@5.2.8': {} + '@formatjs/fast-memoize@3.1.7': {} + + '@formatjs/intl-displaynames@7.3.13': + dependencies: + '@formatjs/intl-localematcher': 0.8.13 + + '@formatjs/intl-localematcher@0.8.13': + dependencies: + '@formatjs/fast-memoize': 3.1.7 + '@humanfs/core@0.19.1': {} '@humanfs/node@0.16.7': diff --git a/web/src/components/settings/MetadataLanguageSetting.test.tsx b/web/src/components/settings/MetadataLanguageSetting.test.tsx new file mode 100644 index 00000000..d9efe80d --- /dev/null +++ b/web/src/components/settings/MetadataLanguageSetting.test.tsx @@ -0,0 +1,133 @@ +// @vitest-environment jsdom + +import { cleanup, fireEvent, render, screen, waitFor } from "@testing-library/react"; +import userEvent from "@testing-library/user-event"; +import { afterEach, describe, expect, it, vi } from "vitest"; + +import { ORIGINAL_METADATA_LANGUAGE } from "@/lib/metadataLanguagePreferences"; +import { MetadataLanguageSetting } from "./MetadataLanguageSetting"; + +const languageOptions = [ + { value: "en", label: "English" }, + { value: "ja", label: "Japanese" }, + { value: "no", label: "Norwegian" }, +]; + +class ResizeObserverStub { + observe() {} + unobserve() {} + disconnect() {} +} +globalThis.ResizeObserver ??= ResizeObserverStub as unknown as typeof ResizeObserver; +window.HTMLElement.prototype.hasPointerCapture ??= () => false; +window.HTMLElement.prototype.scrollIntoView ??= () => {}; + +describe("MetadataLanguageSetting", () => { + afterEach(cleanup); + + it("shows a source-language exception and removes only that rule", () => { + const onOverridesChange = vi.fn(); + render( + , + ); + + expect(screen.getByText("Norwegian")).toBeTruthy(); + expect(screen.getByText("Japanese")).toBeTruthy(); + fireEvent.click(screen.getByRole("button", { name: "Remove Norwegian exception" })); + + expect(onOverridesChange).toHaveBeenCalledWith({ ja: "en" }); + }); + + it("keeps the add action disabled until an original language is chosen", () => { + render( + , + ); + + expect(screen.getByRole("button", { name: "Add exception" }).hasAttribute("disabled")).toBe( + true, + ); + expect(screen.getByLabelText("Original language for new exception")).toBeTruthy(); + }); + + it("shows a new exception immediately while its save is still pending", async () => { + const user = userEvent.setup(); + const onOverridesChange = vi.fn(() => new Promise(() => {})); + render( + , + ); + + await user.click(screen.getByLabelText("Original language for new exception")); + await user.click(screen.getByRole("option", { name: "Norwegian" })); + await user.click(screen.getByRole("button", { name: "Add exception" })); + + expect(screen.getByLabelText("Metadata language for Norwegian")).toHaveTextContent( + "Original language", + ); + expect(onOverridesChange).toHaveBeenCalledWith({ no: ORIGINAL_METADATA_LANGUAGE }); + }); + + it("rolls back an optimistic exception when its save fails", async () => { + const user = userEvent.setup(); + let rejectSave: (reason: Error) => void = () => {}; + const onOverridesChange = vi.fn( + () => + new Promise((_, reject) => { + rejectSave = reject; + }), + ); + render( + , + ); + + await user.click(screen.getByLabelText("Original language for new exception")); + await user.click(screen.getByRole("option", { name: "Norwegian" })); + await user.click(screen.getByRole("button", { name: "Add exception" })); + expect(screen.getByLabelText("Metadata language for Norwegian")).toBeInTheDocument(); + + rejectSave(new Error("save failed")); + + await waitFor(() => + expect(screen.queryByLabelText("Metadata language for Norwegian")).not.toBeInTheDocument(), + ); + }); + + it("keeps a custom target selectable when it is outside the advisory catalog", () => { + render( + , + ); + + expect(screen.getByLabelText("Metadata language for Norwegian").textContent).toContain( + "Portuguese", + ); + }); +}); diff --git a/web/src/components/settings/MetadataLanguageSetting.tsx b/web/src/components/settings/MetadataLanguageSetting.tsx new file mode 100644 index 00000000..fcbd7c30 --- /dev/null +++ b/web/src/components/settings/MetadataLanguageSetting.tsx @@ -0,0 +1,208 @@ +import { useMemo, useState } from "react"; +import { Plus, Trash2 } from "lucide-react"; + +import { SettingRow } from "@/components/settings/SettingRow"; +import { Button } from "@/components/ui/button"; +import { + Select, + SelectContent, + SelectItem, + SelectTrigger, + SelectValue, +} from "@/components/ui/select"; +import { withCurrentLanguageOption, type SettingOption } from "@/lib/languageOptions"; +import { getLanguageName } from "@/lib/languageNames"; +import { + ORIGINAL_METADATA_LANGUAGE, + withMetadataLanguageOverride, + withoutMetadataLanguageOverride, + type MetadataLanguageOverrides, +} from "@/lib/metadataLanguagePreferences"; + +interface MetadataLanguageSettingProps { + fallback: string | null; + overrides: MetadataLanguageOverrides; + languageOptions: readonly SettingOption[]; + disabled?: boolean; + onFallbackChange: (language: string | null) => void; + onOverridesChange: (overrides: MetadataLanguageOverrides) => void | Promise; +} + +const NO_PREFERENCE = "__library_default"; + +function overridesEqual( + left: MetadataLanguageOverrides, + right: MetadataLanguageOverrides, +): boolean { + const leftEntries = Object.entries(left); + return ( + leftEntries.length === Object.keys(right).length && + leftEntries.every(([source, target]) => right[source] === target) + ); +} + +export function MetadataLanguageSetting({ + fallback, + overrides, + languageOptions, + disabled = false, + onFallbackChange, + onOverridesChange, +}: MetadataLanguageSettingProps) { + const [newSource, setNewSource] = useState(""); + const [optimisticOverrides, setOptimisticOverrides] = useState<{ + base: MetadataLanguageOverrides; + value: MetadataLanguageOverrides; + } | null>(null); + const currentOverrides = + optimisticOverrides !== null && overridesEqual(overrides, optimisticOverrides.base) + ? optimisticOverrides.value + : overrides; + + const entries = useMemo( + () => + Object.entries(currentOverrides).sort(([left], [right]) => + getLanguageName(left).localeCompare(getLanguageName(right)), + ), + [currentOverrides], + ); + const namedOptions = useMemo( + () => languageOptions.filter((language) => language.value !== ORIGINAL_METADATA_LANGUAGE), + [languageOptions], + ); + const availableSources = namedOptions.filter((language) => !(language.value in currentOverrides)); + const optionsForTarget = (target: string) => { + if (target === ORIGINAL_METADATA_LANGUAGE) return namedOptions; + return withCurrentLanguageOption(namedOptions, target); + }; + + const changeOverrides = async (next: MetadataLanguageOverrides) => { + const pending = { base: overrides, value: next }; + setOptimisticOverrides(pending); + try { + await onOverridesChange(next); + } catch { + setOptimisticOverrides((current) => (current === pending ? null : current)); + } + }; + + const addException = () => { + if (!newSource) return; + void changeOverrides( + withMetadataLanguageOverride(currentOverrides, newSource, ORIGINAL_METADATA_LANGUAGE), + ); + setNewSource(""); + }; + + return ( + ( +

+ )} + /> + ); +} diff --git a/web/src/lib/languageDisplay.ts b/web/src/lib/languageDisplay.ts index 65727259..8623208a 100644 --- a/web/src/lib/languageDisplay.ts +++ b/web/src/lib/languageDisplay.ts @@ -1,34 +1 @@ -// Catalog filter values for `original_language` are ISO 639-1 codes ("en", -// "fr", "ja"). Surfaces show friendly names ("English", "French", "Japanese") -// while keeping the underlying value untouched so query rules stay valid. - -let cachedDisplayNames: Intl.DisplayNames | null | undefined; - -function getDisplayNames(): Intl.DisplayNames | null { - if (cachedDisplayNames !== undefined) { - return cachedDisplayNames; - } - try { - cachedDisplayNames = new Intl.DisplayNames(["en"], { type: "language" }); - } catch { - cachedDisplayNames = null; - } - return cachedDisplayNames; -} - -export function formatLanguage(code: string): string { - const trimmed = code.trim(); - if (!trimmed) return ""; - const dn = getDisplayNames(); - if (!dn) return trimmed.toUpperCase(); - try { - const name = dn.of(trimmed); - if (name && name !== trimmed) { - // Intl.DisplayNames returns lowercase for some locales — capitalize. - return name.charAt(0).toUpperCase() + name.slice(1); - } - } catch { - // Fall through to fallback. - } - return trimmed.toUpperCase(); -} +export { formatLanguage } from "@/lib/languageNames"; diff --git a/web/src/lib/languageNames.test.ts b/web/src/lib/languageNames.test.ts new file mode 100644 index 00000000..e5040eef --- /dev/null +++ b/web/src/lib/languageNames.test.ts @@ -0,0 +1,33 @@ +import { describe, expect, it } from "vitest"; + +import { + canonicalLanguageTag, + englishLanguageName, + getLanguageName, + normalizeLanguageCode, +} from "./languageNames"; + +describe("languageNames", () => { + it("uses bundled English CLDR names for ISO 639-1 and ISO 639-3 values", () => { + expect(englishLanguageName("sa")).toBe("Sanskrit"); + expect(englishLanguageName("se")).toBe("Northern Sami"); + expect(englishLanguageName("sm")).toBe("Samoan"); + expect(englishLanguageName("yue")).toBe("Cantonese"); + }); + + it("preserves region and script specificity in names", () => { + expect(englishLanguageName("pt-BR")).toBe("Brazilian Portuguese"); + expect(englishLanguageName("sr-Latn")).toBe("Serbian (Latin)"); + }); + + it("canonicalizes ISO aliases without changing regional identity", () => { + expect(canonicalLanguageTag("eng")).toBe("en"); + expect(canonicalLanguageTag("pt_BR")).toBe("pt-BR"); + expect(normalizeLanguageCode("fre-CA")).toBe("fr"); + }); + + it("distinguishes an unassigned tag from a translated language name", () => { + expect(englishLanguageName("xx")).toBeNull(); + expect(getLanguageName("xx")).toBe("Unknown language (xx)"); + }); +}); diff --git a/web/src/lib/languageNames.ts b/web/src/lib/languageNames.ts new file mode 100644 index 00000000..2c81ea4c --- /dev/null +++ b/web/src/lib/languageNames.ts @@ -0,0 +1,90 @@ +import "@formatjs/intl-displaynames/polyfill-force.js"; +import "@formatjs/intl-displaynames/locale-data/en.js"; + +const englishLanguageNames = new Intl.DisplayNames(["en"], { + type: "language", + fallback: "none", +}); +const englishScriptNames = new Intl.DisplayNames(["en"], { + type: "script", + fallback: "none", +}); +const englishRegionNames = new Intl.DisplayNames(["en"], { + type: "region", + fallback: "none", +}); + +function displayName(names: Intl.DisplayNames, value: string): string | null { + try { + return names.of(value) ?? null; + } catch { + return null; + } +} + +/** Canonical BCP 47 identity used only for comparison; wire values stay untouched. */ +export function canonicalLanguageTag(value: string): string | null { + const trimmed = value.trim(); + if (!trimmed) return null; + try { + return new Intl.Locale(trimmed.replace(/_/g, "-")).toString(); + } catch { + return null; + } +} + +/** Stable identity that de-duplicates ISO aliases without collapsing script or region subtags. */ +export function languageIdentity(value: string): string { + return canonicalLanguageTag(value) ?? value.trim().toLowerCase(); +} + +/** + * Returns a deterministic English CLDR name for an ISO/BCP 47 value. + * + * Some CLDR releases omit a precomposed language-and-script label. In that + * case, compose the independently standardized language, script, and region + * names so tags such as `sr-Latn` remain distinct from `sr`. + */ +export function englishLanguageName(value: string): string | null { + const canonical = canonicalLanguageTag(value); + if (!canonical) return null; + + let locale: Intl.Locale; + try { + locale = new Intl.Locale(canonical); + } catch { + return null; + } + + const language = displayName(englishLanguageNames, locale.language); + if (!language) return null; + + const exact = displayName(englishLanguageNames, canonical); + const qualifiers = [ + locale.script ? displayName(englishScriptNames, locale.script) : null, + locale.region ? displayName(englishRegionNames, locale.region) : null, + ].filter((part): part is string => Boolean(part)); + + if (exact && (qualifiers.length === 0 || exact !== language)) return exact; + return qualifiers.length > 0 ? `${language} (${qualifiers.join(", ")})` : language; +} + +/** User-facing name with an explicit fallback for unassigned or invalid tags. */ +export function getLanguageName(value: string): string { + const trimmed = value.trim(); + if (!trimmed) return "Unknown"; + return englishLanguageName(trimmed) ?? `Unknown language (${trimmed})`; +} + +/** Empty-preserving variant for optional metadata and filter labels. */ +export function formatLanguage(value: string): string { + const trimmed = value.trim(); + return trimmed ? getLanguageName(trimmed) : ""; +} + +/** Canonical ISO language subtag used for language matching and override keys. */ +export function normalizeLanguageCode(value: string | null | undefined): string { + const canonical = canonicalLanguageTag(value ?? ""); + if (!canonical) return ""; + return new Intl.Locale(canonical).language; +} diff --git a/web/src/lib/languageOptions.test.ts b/web/src/lib/languageOptions.test.ts index 6209a207..d91ff8a3 100644 --- a/web/src/lib/languageOptions.test.ts +++ b/web/src/lib/languageOptions.test.ts @@ -1,7 +1,11 @@ import { describe, expect, it } from "vitest"; import { SETTING_KEYS } from "./settingsContract"; -import { languageOptionsFor, namedLanguageOptionsFor } from "./languageOptions"; +import { + languageOptionsFor, + namedLanguageOptionsFor, + withCurrentLanguageOption, +} from "./languageOptions"; describe("languageOptions", () => { it("uses the definition-specific generated option set", () => { @@ -26,6 +30,25 @@ describe("languageOptions", () => { expect(options.map((option) => option.value)).toContain("pt"); }); + it("uses English names for ISO and BCP 47 values instead of exposing raw tags", () => { + const options = namedLanguageOptionsFor(SETTING_KEYS.CATALOG_METADATA_LANGUAGE, undefined, [ + "sa", + "se", + "yue", + "pt-BR", + "sr-Latn", + "xx", + ]); + const labels = Object.fromEntries(options.map((option) => [option.value, option.label])); + + expect(labels.sa).toBe("Sanskrit"); + expect(labels.se).toBe("Northern Sami"); + expect(labels.yue).toBe("Cantonese"); + expect(labels["pt-BR"]).toBe("Brazilian Portuguese"); + expect(labels["sr-Latn"]).toBe("Serbian (Latin)"); + expect(labels.xx).toBe("Unknown language (xx)"); + }); + it("uses each nullable definition's context-specific unset copy", () => { expect(languageOptionsFor(SETTING_KEYS.PLAYBACK_AUDIO_LANGUAGE)[0]).toEqual({ value: "", @@ -40,4 +63,19 @@ describe("languageOptions", () => { label: "Library default", }); }); + + it("keeps an exact current ISO alias without showing its semantic duplicate", () => { + const options = withCurrentLanguageOption( + [ + { value: "en", label: "English" }, + { value: "fr", label: "French" }, + ], + "eng", + ); + + expect(options).toEqual([ + { value: "eng", label: "English" }, + { value: "fr", label: "French" }, + ]); + }); }); diff --git a/web/src/lib/languageOptions.ts b/web/src/lib/languageOptions.ts index 592ac854..5c921179 100644 --- a/web/src/lib/languageOptions.ts +++ b/web/src/lib/languageOptions.ts @@ -4,6 +4,7 @@ import { SETTINGS_REVISION, type SettingKey, } from "@/lib/settingsContract"; +import { getLanguageName, languageIdentity } from "@/lib/languageNames"; /** One choice in a settings dropdown. */ export interface SettingOption { @@ -11,24 +12,21 @@ export interface SettingOption { label: string; } -const languageNames = new Intl.DisplayNames(undefined, { type: "language" }); +/** Preserve an exact open value while replacing any semantic ISO alias already shown. */ +export function withCurrentLanguageOption( + options: readonly SettingOption[], + currentValue: string, +): SettingOption[] { + const currentIdentity = languageIdentity(currentValue); + const current = { value: currentValue, label: getLanguageName(currentValue) }; + const existing = options.findIndex( + (option) => languageIdentity(option.value) === currentIdentity, + ); + if (existing < 0) return [current, ...options]; -function languageIdentity(value: string): string { - try { - // Canonicalize true aliases (eng/en) without discarding meaningful - // script or region specificity (pt/pt-BR). - return new Intl.Locale(value).toString(); - } catch { - return value.trim().toLowerCase(); - } -} - -function languageLabel(value: string): string { - try { - return languageNames.of(value) ?? value; - } catch { - return value; - } + const merged = [...options]; + merged[existing] = current; + return merged; } /** @@ -73,7 +71,7 @@ export function namedLanguageOptionsFor( runtimeValues.forEach((value) => add(value, false)); if (currentValue) add(currentValue, true); - return values.map((value) => ({ value, label: languageLabel(value) })); + return values.map((value) => ({ value, label: getLanguageName(value) })); } /** The nullable list, using the contract's context-specific unset copy. */ diff --git a/web/src/lib/metadataLanguagePreferences.test.ts b/web/src/lib/metadataLanguagePreferences.test.ts new file mode 100644 index 00000000..17c76361 --- /dev/null +++ b/web/src/lib/metadataLanguagePreferences.test.ts @@ -0,0 +1,30 @@ +import { describe, expect, it } from "vitest"; + +import { + ORIGINAL_METADATA_LANGUAGE, + normalizeMetadataLanguageOverrides, + withMetadataLanguageOverride, + withoutMetadataLanguageOverride, +} from "./metadataLanguagePreferences"; + +describe("metadata language preferences", () => { + it("normalizes source aliases and drops malformed cached entries", () => { + expect( + normalizeMetadataLanguageOverrides({ + nor: ORIGINAL_METADATA_LANGUAGE, + JA: "en", + invalid_language: "fr", + de: 42, + }), + ).toEqual({ no: ORIGINAL_METADATA_LANGUAGE, ja: "en" }); + }); + + it("adds and removes one original-language exception without mutating the input", () => { + const initial = { ja: "en" }; + const added = withMetadataLanguageOverride(initial, "nor", ORIGINAL_METADATA_LANGUAGE); + + expect(added).toEqual({ ja: "en", no: ORIGINAL_METADATA_LANGUAGE }); + expect(initial).toEqual({ ja: "en" }); + expect(withoutMetadataLanguageOverride(added, "no")).toEqual({ ja: "en" }); + }); +}); diff --git a/web/src/lib/metadataLanguagePreferences.ts b/web/src/lib/metadataLanguagePreferences.ts new file mode 100644 index 00000000..a04f5cb5 --- /dev/null +++ b/web/src/lib/metadataLanguagePreferences.ts @@ -0,0 +1,44 @@ +import { normalizeLanguageCode } from "@/lib/languageNames"; + +/** Valid private-use BCP 47 tag understood by the server as item-original. */ +export const ORIGINAL_METADATA_LANGUAGE = "x-silo-original"; + +export type MetadataLanguageOverrides = Record; + +/** + * Treat the settings response as untrusted JSON at the component boundary. + * The server validates writes, but this also keeps a stale/broken cached value + * from making the editor unusable. + */ +export function normalizeMetadataLanguageOverrides(value: unknown): MetadataLanguageOverrides { + if (value === null || typeof value !== "object" || Array.isArray(value)) return {}; + + const normalized: MetadataLanguageOverrides = {}; + for (const [source, target] of Object.entries(value)) { + const sourceCode = normalizeLanguageCode(source); + if (!/^[a-z]{2,3}$/.test(sourceCode) || typeof target !== "string" || !target.trim()) { + continue; + } + normalized[sourceCode] = target.trim(); + } + return normalized; +} + +export function withMetadataLanguageOverride( + overrides: MetadataLanguageOverrides, + source: string, + target: string, +): MetadataLanguageOverrides { + const sourceCode = normalizeLanguageCode(source); + if (!/^[a-z]{2,3}$/.test(sourceCode) || !target.trim()) return overrides; + return { ...overrides, [sourceCode]: target.trim() }; +} + +export function withoutMetadataLanguageOverride( + overrides: MetadataLanguageOverrides, + source: string, +): MetadataLanguageOverrides { + const next = { ...overrides }; + delete next[normalizeLanguageCode(source)]; + return next; +} diff --git a/web/src/lib/settingsConformance.json b/web/src/lib/settingsConformance.json index 0545434b..1a53a6f9 100644 --- a/web/src/lib/settingsConformance.json +++ b/web/src/lib/settingsConformance.json @@ -1,6 +1,6 @@ { "fixture_version": 1, - "manifest_revision": 2, + "manifest_revision": 3, "description": "Cross-platform conformance cases for settings resolution. Every case runs against the shipped manifest in this directory: definitions are referenced by key, never restated, so an expectation can only be satisfied by resolving the real contract. Each platform's resolver (Go in internal/settingsresolve, TypeScript in web/src/lib/settingsResolve.ts, Kotlin and Swift in the client repos) runs every case through a hand-written runner; a runner must fail on any fixture field it does not know, because schema drift in the fixture itself is drift. A case's constraint_bindings attach a constraint to a copy of a real definition so constraint semantics stay testable even while no shipped definition carries that constraint kind. In expected entries, constrained:true requires stored_value and constraint_kind to be present, and stored_value may be null to mean the authored value was JSON null.", "cases": [ { @@ -438,6 +438,27 @@ "constraints": { "allowed_metadata_languages": ["en", "fr"] }, "expected": [{ "key": "catalog.metadata_language", "value": "fr", "source": "profile" }] }, + { + "name": "metadata_language_exceptions_resolve_as_one_object", + "description": "The original-language exception map is a single profile-scoped value; resolution preserves every source-to-target entry together.", + "keys": ["catalog.metadata_language_overrides"], + "context": { "profile_id": "p1" }, + "stored": [ + { + "key": "catalog.metadata_language_overrides", + "scope": "profile", + "profile_id": "p1", + "value": { "ja": "en", "no": "x-silo-original" } + } + ], + "expected": [ + { + "key": "catalog.metadata_language_overrides", + "value": { "ja": "en", "no": "x-silo-original" }, + "source": "profile" + } + ] + }, { "name": "locked_replaces_a_differing_choice", "description": "locked is total: the policy value replaces the user's outright, and the authored choice is preserved as stored_value so it takes effect the day the lock lifts.", diff --git a/web/src/lib/settingsContract.ts b/web/src/lib/settingsContract.ts index 5764a352..c329ca2d 100644 --- a/web/src/lib/settingsContract.ts +++ b/web/src/lib/settingsContract.ts @@ -8,7 +8,7 @@ * is a manifest change plus a regeneration, never a hand-written key. */ -export const SETTINGS_REVISION = 2; +export const SETTINGS_REVISION = 3; export interface SettingSuggestedOption { value: string; @@ -154,6 +154,8 @@ export type SettingOptionSetId = keyof typeof SETTING_OPTION_SETS; export const SETTING_KEYS = { /** Metadata language */ CATALOG_METADATA_LANGUAGE: "catalog.metadata_language", + /** Metadata language exceptions */ + CATALOG_METADATA_LANGUAGE_OVERRIDES: "catalog.metadata_language_overrides", /** Download quality */ DOWNLOADS_DEFAULT_QUALITY: "downloads.default_quality", /** Keep watched downloads */ @@ -306,12 +308,27 @@ export const SETTING_DEFINITIONS: Record = { resolutionOrder: ["profile", "default"], defaultValue: null, label: "Metadata language", - description: "Language Silo prefers for titles, descriptions, and artwork.", + description: "Fallback language Silo prefers for titles, descriptions, and artwork.", category: "catalog", control: "select", suggestedOptions: "catalog_metadata_languages", unsetLabel: "Library default", }, + "catalog.metadata_language_overrides": { + key: "catalog.metadata_language_overrides", + type: "object", + nullable: false, + persistence: "remote", + introducedIn: 3, + scopes: ["profile"], + scopeIntroducedIn: [3], + resolutionOrder: ["profile", "default"], + defaultValue: {}, + label: "Metadata language exceptions", + description: "Preferred metadata language for items in specific original languages.", + category: "catalog", + control: "panel", + }, "downloads.default_quality": { key: "downloads.default_quality", type: "enum", diff --git a/web/src/pages/ItemDetail/components/versionFormatUtils.test.ts b/web/src/pages/ItemDetail/components/versionFormatUtils.test.ts index d880574a..b0279d75 100644 --- a/web/src/pages/ItemDetail/components/versionFormatUtils.test.ts +++ b/web/src/pages/ItemDetail/components/versionFormatUtils.test.ts @@ -26,6 +26,10 @@ describe("formatLanguageName", () => { expect(formatLanguageName("english subtitles")).toBe("English Subtitles"); }); + it("preserves an already readable language name", () => { + expect(formatLanguageName("English")).toBe("English"); + }); + it("returns empty string for undefined", () => { expect(formatLanguageName(undefined)).toBe(""); }); diff --git a/web/src/pages/ItemDetail/components/versionFormatUtils.ts b/web/src/pages/ItemDetail/components/versionFormatUtils.ts index 370ae0c2..a60a69cc 100644 --- a/web/src/pages/ItemDetail/components/versionFormatUtils.ts +++ b/web/src/pages/ItemDetail/components/versionFormatUtils.ts @@ -1,19 +1,7 @@ import type { VersionAudioTrack, VersionSubtitleTrack, VersionVideoTrack } from "@/api/types"; +import { englishLanguageName, getLanguageName } from "@/lib/languageNames"; import { formatBitrate, formatChannels, formatSampleRate } from "@/lib/mediaFormat"; -export const LANGUAGE_NAMES: Record = { - cze: "Czech", - ces: "Czech", - deu: "German", - eng: "English", - fra: "French", - fre: "French", - ita: "Italian", - jpn: "Japanese", - por: "Portuguese", - spa: "Spanish", -}; - export function formatPageCount(pages?: number): string { if (!pages || pages <= 0) return ""; return `${pages.toLocaleString()} ${pages === 1 ? "page" : "pages"}`; @@ -35,7 +23,9 @@ export function formatLanguageName(language?: string): string { const trimmed = language.trim(); const normalized = trimmed.toLowerCase(); if (!normalized) return ""; - if (LANGUAGE_NAMES[normalized]) return LANGUAGE_NAMES[normalized]; + + const standardizedName = englishLanguageName(trimmed); + if (standardizedName) return standardizedName; if (normalized.length > 3) { return trimmed @@ -44,18 +34,7 @@ export function formatLanguageName(language?: string): string { .map((part) => part[0]?.toUpperCase() + part.slice(1).toLowerCase()) .join(" "); } - - if (typeof Intl !== "undefined" && "DisplayNames" in Intl) { - try { - const displayNames = new Intl.DisplayNames(undefined, { type: "language" }); - const match = displayNames.of(normalized); - if (match) return match; - } catch { - // Fall back to the raw code below. - } - } - - return normalized.toUpperCase(); + return getLanguageName(trimmed); } const SOURCE_HINT_PATTERNS: Array<{ pattern: RegExp; canonical: string }> = [ diff --git a/web/src/pages/settings/PlaybackSettings.test.tsx b/web/src/pages/settings/PlaybackSettings.test.tsx index b3364d1b..37493f3b 100644 --- a/web/src/pages/settings/PlaybackSettings.test.tsx +++ b/web/src/pages/settings/PlaybackSettings.test.tsx @@ -79,6 +79,7 @@ describe("PlaybackSettings", () => { expect(batched?.[0].keys).toContain(SETTING_KEYS.PLAYBACK_AUTO_SKIP_INTRO); expect(batched?.[0].keys).toContain(SETTING_KEYS.UI_NEXT_UP_MODE); expect(batched?.[0].keys).toContain(SETTING_KEYS.CATALOG_METADATA_LANGUAGE); + expect(batched?.[0].keys).toContain(SETTING_KEYS.CATALOG_METADATA_LANGUAGE_OVERRIDES); }); it("saves a toggle as typed JSON at profile scope", () => { diff --git a/web/src/pages/settings/PlaybackSettings.tsx b/web/src/pages/settings/PlaybackSettings.tsx index fa9a0eca..924ba156 100644 --- a/web/src/pages/settings/PlaybackSettings.tsx +++ b/web/src/pages/settings/PlaybackSettings.tsx @@ -1,5 +1,6 @@ import { SettingsGroup } from "@/components/settings/SettingsGroup"; import { SettingRow } from "@/components/settings/SettingRow"; +import { MetadataLanguageSetting } from "@/components/settings/MetadataLanguageSetting"; import { Button } from "@/components/ui/button"; import { Switch } from "@/components/ui/switch"; import { @@ -11,6 +12,10 @@ import { } from "@/components/ui/select"; import { optionsFor } from "@/lib/settingsDisplay"; import { namedLanguageOptionsFor } from "@/lib/languageOptions"; +import { + normalizeMetadataLanguageOverrides, + type MetadataLanguageOverrides, +} from "@/lib/metadataLanguagePreferences"; import { SETTING_DEFINITIONS, SETTING_KEYS, type SettingKey } from "@/lib/settingsContract"; import { QUALITY_PRESETS, describeQuality, presetById, presetIdFor } from "@/lib/qualityPresets"; import { useEffectiveSettings } from "@/hooks/queries/settingValues"; @@ -38,6 +43,7 @@ const PLAYBACK_KEYS: SettingKey[] = [ SETTING_KEYS.PLAYBACK_AUTO_SKIP_INTRO, SETTING_KEYS.PLAYBACK_AUTO_SKIP_RECAP, SETTING_KEYS.CATALOG_METADATA_LANGUAGE, + SETTING_KEYS.CATALOG_METADATA_LANGUAGE_OVERRIDES, SETTING_KEYS.UI_NEXT_UP_MODE, ]; @@ -190,6 +196,17 @@ export default function PlaybackSettings() { const nextUpChosen = effective?.[SETTING_KEYS.UI_NEXT_UP_MODE]?.source === "profile"; const pending = isSaving; + const saveMetadataOverrides = (overrides: MetadataLanguageOverrides) => { + const request = + Object.keys(overrides).length === 0 + ? resetProfileDefault(SETTING_KEYS.CATALOG_METADATA_LANGUAGE_OVERRIDES) + : saveProfileDefault(SETTING_KEYS.CATALOG_METADATA_LANGUAGE_OVERRIDES, overrides); + return request.catch((error) => { + toast.error("Failed to save metadata language exceptions"); + throw error; + }); + }; + async function resetNextUpMode() { // Nothing stored is the state a reset asks for, which the shared reset // already treats as success. @@ -244,31 +261,17 @@ export default function PlaybackSettings() { )} /> - ( -
- -
+ (SETTING_KEYS.CATALOG_METADATA_LANGUAGE_OVERRIDES), )} + languageOptions={metadataLanguageOptions} + disabled={pending} + onFallbackChange={(language) => + saveValue(SETTING_KEYS.CATALOG_METADATA_LANGUAGE, language) + } + onOverridesChange={saveMetadataOverrides} /> = { - en: "English", - es: "Spanish", - fr: "French", - de: "German", - it: "Italian", - pt: "Portuguese", - nl: "Dutch", - pl: "Polish", - ru: "Russian", - zh: "Chinese", - ja: "Japanese", - ko: "Korean", - ar: "Arabic", - tr: "Turkish", - sv: "Swedish", - da: "Danish", - no: "Norwegian", - fi: "Finnish", - hu: "Hungarian", - cs: "Czech", - ro: "Romanian", - he: "Hebrew", - th: "Thai", - vi: "Vietnamese", - el: "Greek", - bg: "Bulgarian", - hr: "Croatian", - sk: "Slovak", - sl: "Slovenian", - uk: "Ukrainian", - id: "Indonesian", - ms: "Malay", - hi: "Hindi", - ta: "Tamil", - te: "Telugu", - bn: "Bengali", - fa: "Persian", -}; +import { getLanguageName } from "@/lib/languageNames"; -/** ISO 639-2/B (3-letter) language codes → full display name. */ -const LANGUAGE_NAMES_3: Record = { - eng: "English", - spa: "Spanish", - fre: "French", - fra: "French", - ger: "German", - deu: "German", - ita: "Italian", - por: "Portuguese", - dut: "Dutch", - nld: "Dutch", - pol: "Polish", - rus: "Russian", - chi: "Chinese", - zho: "Chinese", - jpn: "Japanese", - kor: "Korean", - ara: "Arabic", - tur: "Turkish", - swe: "Swedish", - dan: "Danish", - nor: "Norwegian", - fin: "Finnish", - hun: "Hungarian", - cze: "Czech", - ces: "Czech", - rum: "Romanian", - ron: "Romanian", - heb: "Hebrew", - tha: "Thai", - vie: "Vietnamese", - gre: "Greek", - ell: "Greek", - bul: "Bulgarian", - hrv: "Croatian", - slo: "Slovak", - slk: "Slovak", - slv: "Slovenian", - ukr: "Ukrainian", - ind: "Indonesian", - may: "Malay", - msa: "Malay", - hin: "Hindi", - tam: "Tamil", - tel: "Telugu", - ben: "Bengali", - per: "Persian", - fas: "Persian", -}; +export { getLanguageName, normalizeLanguageCode } from "@/lib/languageNames"; -const LANGUAGE_CODE_ALIASES: Record = { - eng: "en", - spa: "es", - fre: "fr", - fra: "fr", - ger: "de", - deu: "de", - ita: "it", - por: "pt", - dut: "nl", - nld: "nl", - pol: "pl", - rus: "ru", - chi: "zh", - zho: "zh", - jpn: "ja", - kor: "ko", - ara: "ar", - tur: "tr", - swe: "sv", - dan: "da", - nor: "no", - fin: "fi", - hun: "hu", - cze: "cs", - ces: "cs", - rum: "ro", - ron: "ro", - heb: "he", - tha: "th", - vie: "vi", - gre: "el", - ell: "el", - bul: "bg", - hrv: "hr", - slo: "sk", - slk: "sk", - slv: "sl", - ukr: "uk", - ind: "id", - may: "ms", - msa: "ms", - hin: "hi", - tam: "ta", - tel: "te", - ben: "bn", - per: "fa", - fas: "fa", -}; - -/** Combined lookup: supports both 2-letter and 3-letter codes. */ -const LANGUAGE_NAMES: Record = { - ...LANGUAGE_NAMES_2, - ...LANGUAGE_NAMES_3, -}; - -export function normalizeLanguageCode(code: string | null | undefined): string { - const normalized = (code ?? "").trim().toLowerCase(); - if (!normalized) return ""; - const separator = normalized.search(/[-_]/); - const base = separator >= 0 ? normalized.slice(0, separator) : normalized; - return LANGUAGE_CODE_ALIASES[base] ?? base; -} - -/** - * Returns the full language name for an ISO 639-1 or 639-2 code. - * Falls back to the code itself (uppercased first letter) if unknown. - */ -export function getLanguageName(code: string): string { - if (!code) return "Unknown"; - const lower = code.toLowerCase(); - const normalized = normalizeLanguageCode(code); - return ( - LANGUAGE_NAMES_2[normalized] ?? - LANGUAGE_NAMES[lower] ?? - code.charAt(0).toUpperCase() + code.slice(1) - ); -} +const COMMON_LANGUAGE_CODES = [ + "en", + "es", + "fr", + "de", + "it", + "pt", + "nl", + "pl", + "ru", + "zh", + "ja", + "ko", + "ar", + "tr", + "sv", + "da", + "no", + "fi", + "hu", + "cs", + "ro", + "he", + "th", + "vi", + "el", + "bg", + "hr", + "sk", + "sl", + "uk", + "id", + "ms", + "hi", + "ta", + "te", + "bn", + "fa", +] as const; /** Language option for dropdowns (search modal, etc). */ export interface LanguageOption { @@ -175,7 +48,8 @@ export interface LanguageOption { label: string; } -/** Sorted list of languages for UI dropdowns (uses 2-letter codes for API compatibility). */ -export const LANGUAGES: LanguageOption[] = Object.entries(LANGUAGE_NAMES_2) - .map(([code, label]) => ({ code, label })) - .sort((a, b) => a.label.localeCompare(b.label)); +/** Sorted common-language list; labels come from the shared English CLDR resolver. */ +export const LANGUAGES: LanguageOption[] = COMMON_LANGUAGE_CODES.map((code) => ({ + code, + label: getLanguageName(code), +})).sort((a, b) => a.label.localeCompare(b.label)); diff --git a/web/src/player/utils/subtitleSort.test.ts b/web/src/player/utils/subtitleSort.test.ts index 56d3312d..083e137c 100644 --- a/web/src/player/utils/subtitleSort.test.ts +++ b/web/src/player/utils/subtitleSort.test.ts @@ -36,8 +36,8 @@ describe("getLanguageName", () => { expect(getLanguageName("ENG")).toBe("English"); }); - it("falls back to capitalized code for unknown", () => { - expect(getLanguageName("xx")).toBe("Xx"); + it("labels an unassigned code explicitly", () => { + expect(getLanguageName("xx")).toBe("Unknown language (xx)"); }); it("returns 'Unknown' for empty string", () => {