diff --git a/frontend/locales/en-US.json b/frontend/locales/en-US.json index 19163d9e9ed..58111ae065e 100644 --- a/frontend/locales/en-US.json +++ b/frontend/locales/en-US.json @@ -1,5 +1,4 @@ { - "auto": "Automatic", "3DFormat": "3D format", "NoMediaSourcesAvailable": "No media sources available", "actor": "Actor", @@ -25,6 +24,7 @@ "aspectRatio": "Aspect ratio", "audio": "Audio", "audioCodecNotSupported": "The audio codec is not supported", + "auto": "Automatic", "badRequest": "Bad request. Try again", "books": "Books", "browserNotSupported": "Your browser is not supported for playing this file.", @@ -34,6 +34,9 @@ "byArtist": "By {artist}", "cancel": "Cancel", "castAndCrew": "Cast & crew", + "clipboardFail": "Failed to copy to clipboard", + "clipboardSuccess": "Copied to clipboard", + "close": "Close", "collectionEmpty": "This collection is empty", "collections": "Collections", "communityRating": "Community rating", @@ -58,6 +61,12 @@ "disabled": "Disabled", "discNumber": "Disc {discNumber}", "dislikes": "Dislikes", + "download": { + "copyStreamUrl": "Copy Stream URL", + "download": "Download", + "downloadAll": "Download all", + "failureToGetURL": "Failed to get URL for selected item" + }, "edit": "Edit", "editMetadata": "Edit metadata", "editPerson": "Edit person", @@ -198,20 +207,66 @@ "name": "Audio channels:" }, "audioCodec": { - "name": "Audio codec:" - }, - "bitrate": { - "name": "Bitrate:" - }, - "container": { - "name": "Container:" + "channels": "Channels:", + "layout": "Layout:", + "name": "Audio codec:", + "sampleRate": "Sample rate:", + "titles": "Audio | Audio {0}" + }, + "embeddedImageCodec": { + "name": "Image codec:", + "titles": "Image | Image {0}" + }, + "generic": { + "bitrate": "Bitrate:", + "codec": "Codec:", + "codecTag": "Codec tag:", + "container": "Container:", + "default": "Default:", + "external": "External:", + "forced": "Forced:", + "language": "Language:", + "path": "Path:", + "profile": "Profile:", + "size": "Size:", + "title": "Title:" }, "name": "Media", "subtitleCodec": { - "name": "Subtitle codec:" + "name": "Subtitle codec:", + "titles": "Subtitle | Subtitle {0}" }, + "title": "Media Info", "videoCodec": { - "name": "Video codec:" + "DoVi": { + "blPresent": "DV bl preset flag:", + "blSignalCompatibilityId": "DV bl signal compatibility ID:", + "elPresent": "DV el preset flag:", + "level": "DV level:", + "majorVersion": "DV version major:", + "minorVersion": "DV version minor:", + "profile": "DV profile:", + "rpuPresent": "DV rpu preset flag:", + "title": "DV title:" + }, + "aspectRatio": "Aspect ratio:", + "bitdepth": "Bit depth:", + "colorPrimaries": "Color primaries:", + "colorRange": "Color range:", + "colorSpace": "Color space:", + "colorTransfer": "Color transfer:", + "frameRate": "Framerate:", + "isAnamorphic": "Anamorphic:", + "isAvc": "AVC:", + "isInterlaced": "Interlaced:", + "level": "Level:", + "name": "Video codec:", + "pixelFormat": "Pixel format:", + "refFrames": "Ref frames:", + "resolution": "Resolution:", + "titles": "Video | Video {0}", + "videoRange": "Video range:", + "videoRangeType": "Video range type:" } }, "menu": "Menu", @@ -337,9 +392,9 @@ "refreshKeysFailure": "Error refreshing API keys", "revoke": "Revoke", "revokeAll": "Revoke all API keys", - "revokeConfirm": "Confirm API key revocation", "revokeAllFailure": "Error revoking all API keys", "revokeAllSuccess": "Successfully revoked all API keys", + "revokeConfirm": "Confirm API key revocation", "revokeFailure": "Error revoking API key", "revokeSuccess": "Successfully revoked API key" }, @@ -348,9 +403,9 @@ "appVersion": "App version", "delete": "Delete", "deleteAll": "Delete all", - "deleteConfirm": "Confirm device deletion", "deleteAllDevicesError": "Error deleting all devices", "deleteAllDevicesSuccess": "All devices deleted successfully", + "deleteConfirm": "Confirm device deletion", "deleteDeviceError": "Error deleting device", "deleteDeviceSuccess": "Device deleted successfully", "deviceName": "Device name", @@ -465,9 +520,9 @@ "themeVideo": "Theme Video", "tooltips": { "changeLanguage": "Language", + "switchToAuto": "Follow system theme", "switchToDarkMode": "Switch to dark mode", - "switchToLightMode": "Switch to light mode", - "switchToAuto": "Follow system theme" + "switchToLightMode": "Switch to light mode" }, "trailer": "Trailer", "transcodingInfo": { @@ -512,7 +567,6 @@ "undefined": "Undefined", "unexpectedError": "Unexpected error", "unhandledException": "Unhandled exception", - "unknown": "Unknown", "units": { "bitrate": { "kbps": "{value} kbps", @@ -522,6 +576,7 @@ "seconds": "{count} second | {count} seconds" } }, + "unknown": "Unknown", "unliked": "Unliked", "unplayed": "Unplayed", "upNext": "Up next", diff --git a/frontend/src/components/Item/ItemMenu.vue b/frontend/src/components/Item/ItemMenu.vue index fbe2a8e8ea0..dd3fb8f0ec7 100644 --- a/frontend/src/components/Item/ItemMenu.vue +++ b/frontend/src/components/Item/ItemMenu.vue @@ -36,6 +36,10 @@ v-if="item.Id" v-model:dialog="metadataDialog" :item-id="item.Id" /> + + + diff --git a/frontend/src/components/Item/MediaDetail/MediaDetailAttr.vue b/frontend/src/components/Item/MediaDetail/MediaDetailAttr.vue new file mode 100644 index 00000000000..5228e036d0f --- /dev/null +++ b/frontend/src/components/Item/MediaDetail/MediaDetailAttr.vue @@ -0,0 +1,25 @@ + + + + + diff --git a/frontend/src/components/Item/MediaDetail/MediaDetailColorSpace.vue b/frontend/src/components/Item/MediaDetail/MediaDetailColorSpace.vue new file mode 100644 index 00000000000..c2678e04ec1 --- /dev/null +++ b/frontend/src/components/Item/MediaDetail/MediaDetailColorSpace.vue @@ -0,0 +1,31 @@ + + + diff --git a/frontend/src/components/Item/MediaDetail/MediaDetailContent.vue b/frontend/src/components/Item/MediaDetail/MediaDetailContent.vue new file mode 100644 index 00000000000..066315279f4 --- /dev/null +++ b/frontend/src/components/Item/MediaDetail/MediaDetailContent.vue @@ -0,0 +1,391 @@ + + + + + diff --git a/frontend/src/components/Item/MediaDetail/MediaDetailCopy.vue b/frontend/src/components/Item/MediaDetail/MediaDetailCopy.vue new file mode 100644 index 00000000000..0b7b6d855e0 --- /dev/null +++ b/frontend/src/components/Item/MediaDetail/MediaDetailCopy.vue @@ -0,0 +1,25 @@ + + + diff --git a/frontend/src/components/Item/MediaDetail/MediaDetailDialog.vue b/frontend/src/components/Item/MediaDetail/MediaDetailDialog.vue new file mode 100644 index 00000000000..bd263e8fac0 --- /dev/null +++ b/frontend/src/components/Item/MediaDetail/MediaDetailDialog.vue @@ -0,0 +1,33 @@ + + + + + diff --git a/frontend/src/components/Item/MediaDetail/MediaDetailExtras.vue b/frontend/src/components/Item/MediaDetail/MediaDetailExtras.vue new file mode 100644 index 00000000000..db4737a10a1 --- /dev/null +++ b/frontend/src/components/Item/MediaDetail/MediaDetailExtras.vue @@ -0,0 +1,21 @@ + + + diff --git a/frontend/src/components/Item/MediaDetail/MediaDetailGeneric.vue b/frontend/src/components/Item/MediaDetail/MediaDetailGeneric.vue new file mode 100644 index 00000000000..4993a8db719 --- /dev/null +++ b/frontend/src/components/Item/MediaDetail/MediaDetailGeneric.vue @@ -0,0 +1,27 @@ + + + diff --git a/frontend/src/components/Playback/TrackList.vue b/frontend/src/components/Playback/TrackList.vue index e3b044eb22c..d6d18406c69 100644 --- a/frontend/src/components/Playback/TrackList.vue +++ b/frontend/src/components/Playback/TrackList.vue @@ -69,7 +69,7 @@ - + @@ -86,7 +86,11 @@