diff --git a/front/src/locales/en.json b/front/src/locales/en.json index d9804c277..0410ad5a2 100644 --- a/front/src/locales/en.json +++ b/front/src/locales/en.json @@ -1659,6 +1659,17 @@ } } }, + "embed": { + "EmbedFrame": { + "badResource": "idget improperly configured (bad resource type {type}).", + "missingResourceId": "Widget improperly configured (missing resource id).", + "trackNotFound": "Track not found.", + "unauthenticated": "You need to login to access this resource.", + "unknownServerError": "An unknown error occurred while loading track data from server.", + "trackUnavailable": "This track is unavailable.", + "unknownTrackError": "An unknown error occurred while loading track data." + } + }, "views": { "Notifications": { "title": "Notifications", @@ -1701,9 +1712,251 @@ "submitSearchLabel": "Submit Search Query", "searchHeader": "Search" }, - "library": { - "LibraryBase": { - + "admin": { + "ChannelDetail": { + "statsWarning": "Statistics are computed from known activity and content on your instance, and do not reflect general activity for this object", + "localLabel": "Local", + "localProfileLink": "Open local profile", + "djangoLink": "View in Django's admin", + "refreshButton": "Refresh from remote server", + "openRemoteButton": "Open remote profile", + "deleteButton": "Delete", + "deleteModalHeader": "Delete this channel?", + "deleteModalMessage": "The channel will be removed, as well as associated uploads, tracks, and albums. This action is irreversible.", + "channelDataHeader": "Channel data", + "nameLabel": "Name", + "categoryLabel": "Category", + "accountLabel": "Account", + "domainLabel": "Domain", + "descriptionLabel": "Description", + "urlLabel": "URL", + "rssLabel": "RSS feed", + "activityHeader": "Activity ", + "firstSeenLabel": "First seen", + "listeningsLabel": "Listenings", + "favoritedLabel": "Favorited tracks", + "playlistsLabel": "Playlists", + "linkedReportsLabel": "Linked reports", + "editsLabel": "Edits", + "audioContentHeader": "Audio content ", + "cachedSizeLabel": "Cached size", + "totalSizeLabel": "Total size", + "uploadsLabel": "Uploads", + "albumsLabel": "Albums", + "tracksLabel": "Tracks" + }, + "CommonList": { + "accountsLabel": "Accounts", + "albumsLabel": "Albums", + "artistsLabel": "Artists", + "channelsLabel": "Channels", + "invitationsLabel": "Invitations", + "librariesLabel": "Libraries", + "tagsLabel": "Tags", + "tracksLabel": "Tracks", + "uploadsLabel": "Uploads", + "usersLabel": "Users" + }, + "Settings": { + "settingsLabel": "Instance Settings", + "instanceInfoLabel": "Instance Information", + "signupsLabel": "Sign-ups", + "securityLabel": "Security", + "musicLabel": "Music", + "channelsLabel": "Channels", + "playlistsLabel": "Playlists", + "moderationLabel": "Moderation", + "federationLabel": "Federation", + "subsonicLabel": "Subsonic", + "statsLabel": "Statistics", + "uiLabel": "User Interface", + "sectionsHeader": "Sections" + }, + "library": { + "AlbumDetail": { + "statsWarning": "Statistics are computed from known activity and content on your instance, and do not reflect general activity for this object", + "localLabel": "Local", + "localProfileLink": "Open local profile", + "djangoLink": "View in Django's admin", + "musicbrainzLink": "Open on MusicBrainz", + "remoteRefreshButton": "Refresh from remote server", + "remoteProfileLink": "Open remote profile", + "editButton": "Edit", + "deleteButton": "Delete", + "deleteModalHeader": "Delete this album?", + "deleteModalMessage": "The album will be deleted, as well as associated uploads, tracks, favorites and listening history. This action is irreversible.", + "albumDataHeader": "Album data", + "titleLabel": "Title", + "artistLabel": "Artist", + "domainLabel": "Domain", + "descriptionLabel": "Description", + "activityHeader": "Activity ", + "firstSeenLabel": "First seen", + "listeningsLabel": "Listenings", + "favoritedLabel": "Favorited tracks", + "playlistsLabel": "Playlists", + "linkedReportsLabel": "Linked reports", + "editsLabel": "Edits", + "audioContentHeader": "Audio content ", + "cachedSizeLabel": "Cached size", + "totalSizeLabel": "Total size", + "librariesLabel": "Libraries", + "uploadsLabel": "Uploads", + "tracksLabel": "Tracks" + }, + "ArtistDetail": { + "statsWarning":"Statistics are computed from known activity and content on your instance, and do not reflect general activity for this object", + "localLabel": "Local", + "localProfileLink": "Open local profile", + "djangoLink": "View in Django's admin", + "musicbrainzLink": "Open on MusicBrainz", + "remoteRefreshButton": "Refresh from remote server", + "remoteProfileLink": "Open remote profile", + "editButton": "Edit", + "deleteButton": "Delete", + "deleteModalHeader": "Delete this artist?", + "deleteModalMessage": "The artist will be deleted, as well as associated uploads, tracks, favorites and listening history. This action is irreversible.", + "artistDataHeader": "Artist data", + "nameLabel": "Name", + "categoryLabel": "Category", + "domainLabel": "Domain", + "descriptionLabel": "Description", + "activityHeader": "Activity ", + "firstSeenLabel": "First seen", + "listeningsLabel": "Listenings", + "favoritedLabel": "Favorited tracks", + "playlistsLabel": "Playlists", + "linkedReportsLabel": "Linked reports", + "editsLabel": "Edits", + "audioContentHeader": "Audio content ", + "cachedSizeLabel": "Cached size", + "totalSizeLabel": "Total size", + "librariesLabel": "Libraries", + "uploadsLabel": "Uploads", + "albumsLabel": "Albums", + "tracksLabel": "Tracks" + }, + "Base": { + "title": "Manage Library", + "secondaryMenu": "Secondary menu", + "editsLink": "Edits", + "channelsLink": "Channels", + "artistsLink": "Artists", + "albumsLink": "Albums", + "tracksLink": "Tracks", + "librariesLink": "Libraries", + "uploadsLink": "Uploads", + "tagsLink": "Tags" + }, + "EditsList": { + "title": "Edits", + "libraryEditsHeader": "Library edits" + }, + "LibraryDetail": { + "statsWarning": "Statistics are computed from known activity and content on your instance, and do not reflect general activity for this object", + "localLabel": "Local", + "djangoLink": "View in Django's admin", + "remoteProfileLink": "Open remote profile", + "deleteButton": "Delete", + "deleteModalHeader": "Delete this library?", + "deleteModalMessage": "The library will be deleted, as well as associated uploads, tracks, favorites and listening history. This action is irreversible.", + "libraryDataHeader": "Library data", + "nameLabel": "Name", + "visibilityLabel": "Visibility", + "accountLabel": "Account", + "domainLabel": "Domain", + "descriptionLabel": "Description", + "activityHeader": "Activity ", + "firstSeenLabel": "First seen", + "followersLabel": "Followers", + "linkedReportsLabel": "Linked reports", + "audioContentHeader": "Audio content ", + "cachedSizeLabel": "Cached size", + "totalSizeLabel": "Total size", + "artistsLabel": "Artists", + "albumsLabel": "Albums", + "tracksLabel": "Tracks", + "uploadsLabel": "Uploads" + }, + "TagDetail": { + "localProfileLink": "Open local profile", + "djangoLink": "View in Django's admin", + "deleteButton": "Delete", + "deleteModalHeader": "Delete this tag?", + "deleteModalMessage": "The tag will be removed and unlinked from any existing entity. This action is irreversible.", + "tagDataHeader": "Tag data", + "nameLabel": "Name", + "activityHeader": "Activity ", + "firstSeenLabel": "First seen", + "audioContentHeader": "Audio content ", + "artistsLabel": "Artists", + "albumsLabel": "Albums", + "tracksLabel": "Tracks" + }, + "TrackDetail": { + "statsWarning": "Statistics are computed from known activity and content on your instance, and do not reflect general activity for this object", + "localLabel": "Local", + "localProfileLink": "Open local profile", + "djangoLink": "View in Django's admin", + "musicbrainzLink": "Open on MusicBrainz", + "remoteRefreshButton": "Refresh from remote server", + "remoteProfileLink": "Open remote profile", + "editButton": "Edit", + "deleteButton": "Delete", + "deleteModalHeader": "Delete this track?", + "deleteModalMessage": "The track will be deleted, as well as associated uploads, favorites and listening history. This action is irreversible.", + "trackDataHeader": "Track data", + "titleLabel": "Title", + "albumLabel": "Album", + "artistLabel": "Artist", + "albumArtistLabel": "Album artist", + "positionLabel": "Position", + "discNumberLabel": "Disc number", + "copyrightLabel": "Copyright", + "licenseLabel": "License", + "domainLabel": "Domain", + "descriptionLabel": "Description", + "activityHeader": "Activity ", + "firstSeenLabel": "First seen", + "listeningsLabel": "Listenings", + "favoritedLabel": "Favorited tracks", + "playlistsLabel": "Playlists", + "linkedReportsLabel": "Linked reports", + "editsLabel": "Edits", + "audioContentHeader": "Audio content ", + "cachedSizeLabel": "Cached size", + "totalSizeLabel": "Total size", + "librariesLabel": "Libraries", + "uploadsLabel": "Uploads" + }, + "UploadDetail": { + "localLabel": "Local", + "djangoLink": "View in Django's admin", + "remoteProfileLink": "Open remote profile", + "downloadButton": "Download", + "deleteButton": "Delete", + "deleteModalHeader": "Delete this upload?", + "deleteModalMessage": "The upload will be removed. This action is irreversible.", + "uploadDataHeader": "Upload data", + "nameLabel": "Name", + "visibilityLabel": "Visibility", + "accountLabel": "Account", + "domainLabel": "Domain", + "importStatusLabel": "Import status", + "libraryLabel": "Library", + "activityHeader": "Activity ", + "firstSeenLabel": "First seen", + "accessedDateLabel": "Accessed date", + "notApplicable": "N/A", + "audioContentHeader": "Audio content ", + "trackLabel": "Track", + "cachedSizeLabel": "Cached size", + "sizeLabel": "Size", + "bitrateLabel": "Bitrate", + "bitrateValue": "{bitrate}/s", + "durationLabel": "Duration", + "typeLabel": "Type" + } } } } diff --git a/front/src/views/admin/ChannelDetail.vue b/front/src/views/admin/ChannelDetail.vue index 5a24e6c39..3b7e43884 100644 --- a/front/src/views/admin/ChannelDetail.vue +++ b/front/src/views/admin/ChannelDetail.vue @@ -21,7 +21,7 @@ const { t } = useI18n() const router = useRouter() const labels = computed(() => ({ - statsWarning: t('Statistics are computed from known activity and content on your instance, and do not reflect general activity for this object') + statsWarning: t('views.admin.ChannelDetail.statsWarning') })) const isLoading = ref(false) @@ -106,7 +106,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"` @@ -129,7 +129,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"` :to="{name: 'channels.detail', params: {id: object.uuid }}" > - Open local profile  + {{ $t('views.admin.ChannelDetail.localProfileLink') }} @@ -173,22 +173,22 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"` :class="['ui', {loading: isLoading}, 'basic danger button']" :action="remove" > - Delete + {{ $t('views.admin.ChannelDetail.deleteButton') }} @@ -205,14 +205,14 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`

- Channel data + {{ $t('views.admin.ChannelDetail.channelDataHeader') }}

`${field}:"${value}"`
- Name + {{ $t('views.admin.ChannelDetail.nameLabel') }} {{ object.artist.name }} @@ -221,7 +221,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Category + {{ $t('views.admin.ChannelDetail.categoryLabel') }} @@ -231,7 +231,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Account + {{ $t('views.admin.ChannelDetail.accountLabel') }} @@ -241,7 +241,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Domain + {{ $t('views.admin.ChannelDetail.domainLabel') }} @@ -250,7 +250,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Description + {{ $t('views.admin.ChannelDetail.descriptionLabel') }}
- URL + {{ $t('views.admin.ChannelDetail.urlLabel') }} `${field}:"${value}"`
- RSS Feed + {{ $t('views.admin.ChannelDetail.rssLabel') }} `${field}:"${value}"`

- Activity  + {{ $t('views.admin.ChannelDetail.activityHeader') }}

@@ -310,7 +310,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- First seen + {{ $t('views.admin.ChannelDetail.firstSeenLabel') }} @@ -318,7 +318,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Listenings + {{ $t('views.admin.ChannelDetail.listeningsLabel') }} {{ stats.listenings }} @@ -326,7 +326,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Favorited tracks + {{ $t('views.admin.ChannelDetail.favoritedLabel') }} {{ stats.track_favorites }} @@ -334,7 +334,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Playlists + {{ $t('views.admin.ChannelDetail.playlistsLabel') }} {{ stats.playlists }} @@ -343,7 +343,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Linked reports + {{ $t('views.admin.ChannelDetail.linkedReportsLabel') }} @@ -353,7 +353,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Edits + {{ $t('views.admin.ChannelDetail.editsLabel') }} @@ -369,7 +369,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`

- Audio content  + {{ $t('views.admin.ChannelDetail.audioContentHeader') }}

@@ -389,7 +389,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Cached size + {{ $t('views.admin.ChannelDetail.cachedSizeLabel') }} {{ humanSize(stats.media_downloaded_size) }} @@ -397,7 +397,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Total size + {{ $t('views.admin.ChannelDetail.totalSizeLabel') }} {{ humanSize(stats.media_total_size) }} @@ -406,7 +406,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Uploads + {{ $t('views.admin.ChannelDetail.uploadsLabel') }} @@ -416,7 +416,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Albums + {{ $t('views.admin.ChannelDetail.albumsLabel') }} @@ -426,7 +426,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Tracks + {{ $t('views.admin.ChannelDetail.tracksLabel') }} diff --git a/front/src/views/admin/CommonList.vue b/front/src/views/admin/CommonList.vue index d48d5a3c3..882236aad 100644 --- a/front/src/views/admin/CommonList.vue +++ b/front/src/views/admin/CommonList.vue @@ -27,16 +27,16 @@ const props = withDefaults(defineProps(), { const { t } = useI18n() const labels = computed(() => ({ - accounts: t('Accounts'), - albums: t('Albums'), - artists: t('Artists'), - channels: t('Channels'), - invitations: t('Invitations'), - libraries: t('Libraries'), - tags: t('Tags'), - tracks: t('Tracks'), - uploads: t('Uploads'), - users: t('Users') + accounts: t('views.admin.CommonList.accountsLabel'), + albums: t('views.admin.CommonList.albumsLabel'), + artists: t('views.admin.CommonList.artistsLabel'), + channels: t('views.admin.CommonList.channelsLabel'), + invitations: t('views.admin.CommonList.invitationsLabel'), + libraries: t('views.admin.CommonList.librariesLabel'), + tags: t('views.admin.CommonList.tagsLabel'), + tracks: t('views.admin.CommonList.tracksLabel'), + uploads: t('views.admin.CommonList.uploadsLabel'), + users: t('views.admin.CommonList.usersLabel') })) const title = computed(() => labels.value[props.type]) diff --git a/front/src/views/admin/Settings.vue b/front/src/views/admin/Settings.vue index de2612930..8e3051438 100644 --- a/front/src/views/admin/Settings.vue +++ b/front/src/views/admin/Settings.vue @@ -20,7 +20,7 @@ const { t } = useI18n() const groups = computed(() => [ { - label: t('Instance information'), + label: t('views.admin.Settings.instanceInfoLabel'), id: 'instance', settings: [ { name: 'instance__name' }, @@ -34,7 +34,7 @@ const groups = computed(() => [ ] }, { - label: t('Sign-ups'), + label: t('views.admin.Settings.signupsLabel'), id: 'signup', settings: [ { name: 'users__registration_enabled' }, @@ -43,7 +43,7 @@ const groups = computed(() => [ ] }, { - label: t('Security'), + label: t('views.admin.Settings.securityLabel'), id: 'security', settings: [ { name: 'common__api_authentication_required' }, @@ -52,7 +52,7 @@ const groups = computed(() => [ ] }, { - label: t('Music'), + label: t('views.admin.Settings.musicLabel'), id: 'music', settings: [ { name: 'music__transcoding_enabled' }, @@ -60,7 +60,7 @@ const groups = computed(() => [ ] }, { - label: t('Channels'), + label: t('views.admin.Settings.channelsLabel'), id: 'channels', settings: [ { name: 'audio__channels_enabled' }, @@ -68,14 +68,14 @@ const groups = computed(() => [ ] }, { - label: t('Playlists'), + label: t('views.admin.Settings.playlistsLabel'), id: 'playlists', settings: [ { name: 'playlists__max_tracks' } ] }, { - label: t('Moderation'), + label: t('views.admin.Settings.moderationLabel'), id: 'moderation', settings: [ { name: 'moderation__allow_list_enabled' }, @@ -84,7 +84,7 @@ const groups = computed(() => [ ] }, { - label: t('Federation'), + label: t('views.admin.Settings.federationLabel'), id: 'federation', settings: [ { name: 'federation__enabled' }, @@ -95,14 +95,14 @@ const groups = computed(() => [ ] }, { - label: t('Subsonic'), + label: t('views.admin.Settings.subsonicLabel'), id: 'subsonic', settings: [ { name: 'subsonic__enabled' } ] }, { - label: t('Statistics'), + label: t('views.admin.Settings.statsLabel'), id: 'ui', settings: [ { name: 'ui__custom_css' }, @@ -110,7 +110,7 @@ const groups = computed(() => [ ] }, { - label: t('User Interface'), + label: t('views.admin.Settings.uiLabel'), id: 'statistics', settings: [ { name: 'instance__nodeinfo_stats_enabled' }, @@ -120,7 +120,7 @@ const groups = computed(() => [ ] as SettingsGroupType[]) const labels = computed(() => ({ - settings: t('Instance settings') + settings: t('views.admin.Settings.settingsLabel') })) const scrollTo = (id: string) => { @@ -186,7 +186,7 @@ await nextTick()
@@ -194,22 +194,22 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"` :class="['ui', {loading: isLoading}, 'basic danger button']" :action="remove" > - Delete + {{ $t('views.admin.library.AlbumDetail.deleteButton') }} @@ -226,14 +226,14 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`

- Album data + {{ $t('views.admin.library.AlbumDetail.albumDataHeader') }}

`${field}:"${value}"`

- Activity  + {{ $t('views.admin.library.AlbumDetail.activityHeader') }}

@@ -297,7 +297,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Title + {{ $t('views.admin.library.AlbumDetail.titleLabel') }} {{ object.title }} @@ -242,7 +242,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Artist + {{ $t('views.admin.library.AlbumDetail.artistLabel') }} @@ -252,7 +252,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Domain + {{ $t('views.admin.library.AlbumDetail.domainLabel') }} @@ -261,7 +261,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Description + {{ $t('views.admin.library.AlbumDetail.descriptionLabel') }}
- First seen + {{ $t('views.admin.library.AlbumDetail.firstSeenLabel') }} @@ -305,7 +305,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Listenings + {{ $t('views.admin.library.AlbumDetail.listeningsLabel') }} {{ stats.listenings }} @@ -313,7 +313,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Favorited tracks + {{ $t('views.admin.library.AlbumDetail.favoritedLabel') }} {{ stats.track_favorites }} @@ -321,7 +321,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Playlists + {{ $t('views.admin.library.AlbumDetail.playlistsLabel') }} {{ stats.playlists }} @@ -330,7 +330,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Linked reports + {{ $t('views.admin.library.AlbumDetail.linkedReportsLabel') }} @@ -340,7 +340,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Edits + {{ $t('views.admin.library.AlbumDetail.editsLabel') }} @@ -356,7 +356,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`

- Audio content  + {{ $t('views.admin.library.AlbumDetail.audioContentHeader') }}

@@ -376,7 +376,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Cached size + {{ $t('views.admin.library.AlbumDetail.cachedSizeLabel') }} {{ humanSize(stats.media_downloaded_size) }} @@ -384,7 +384,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Total size + {{ $t('views.admin.library.AlbumDetail.totalSizeLabel') }} {{ humanSize(stats.media_total_size) }} @@ -394,7 +394,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Libraries + {{ $t('views.admin.library.AlbumDetail.librariesLabel') }} @@ -404,7 +404,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Uploads + {{ $t('views.admin.library.AlbumDetail.uploadsLabel') }} @@ -414,7 +414,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Tracks + {{ $t('views.admin.library.AlbumDetail.tracksLabel') }} diff --git a/front/src/views/admin/library/ArtistDetail.vue b/front/src/views/admin/library/ArtistDetail.vue index ffbef782d..1b539ffef 100644 --- a/front/src/views/admin/library/ArtistDetail.vue +++ b/front/src/views/admin/library/ArtistDetail.vue @@ -21,7 +21,7 @@ const { t } = useI18n() const router = useRouter() const labels = computed(() => ({ - statsWarning: t('Statistics are computed from known activity and content on your instance, and do not reflect general activity for this object') + statsWarning: t('views.admin.library.ArtistDetail.statsWarning') })) const isLoading = ref(false) @@ -106,7 +106,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"` @@ -129,7 +129,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"` :to="{name: 'library.artists.detail', params: {id: object.id }}" > - Open local profile  + {{ $t('views.admin.library.ArtistDetail.localProfileLink') }} @@ -185,7 +185,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"` class="ui labeled icon button" > - Edit + {{ $t('views.admin.library.ArtistDetail.editButton') }}
@@ -193,22 +193,22 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"` :class="['ui', {loading: isLoading}, 'basic danger button']" :action="remove" > - Delete + {{ $t('views.admin.library.ArtistDetail.deleteButton') }} @@ -225,14 +225,14 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`

- Artist data + {{ $t('views.admin.library.ArtistDetail.artistDataHeader') }}

`${field}:"${value}"`

- Activity  + {{ $t('views.admin.library.ArtistDetail.activityHeader') }}

@@ -296,7 +296,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Name + {{ $t('views.admin.library.ArtistDetail.nameLabel') }} {{ object.name }} @@ -241,7 +241,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Category + {{ $t('views.admin.library.ArtistDetail.categoryLabel') }} @@ -251,7 +251,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Domain + {{ $t('views.admin.library.ArtistDetail.domainLabel') }} @@ -260,7 +260,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Description + {{ $t('views.admin.library.ArtistDetail.descriptionLabel') }}
- First seen + {{ $t('views.admin.library.ArtistDetail.firstSeenLabel') }} @@ -304,7 +304,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Listenings + {{ $t('views.admin.library.ArtistDetail.listeningsLabel') }} {{ stats.listenings }} @@ -312,7 +312,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Favorited tracks + {{ $t('views.admin.library.ArtistDetail.favoritedLabel') }} {{ stats.track_favorites }} @@ -320,7 +320,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Playlists + {{ $t('views.admin.library.ArtistDetail.playlistsLabel') }} {{ stats.playlists }} @@ -329,7 +329,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Linked reports + {{ $t('views.admin.library.ArtistDetail.linkedReportsLabel') }} @@ -339,7 +339,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Edits + {{ $t('views.admin.library.ArtistDetail.editsLabel') }} @@ -355,7 +355,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`

- Audio content  + {{ $t('views.admin.library.ArtistDetail.audioContentHeader') }}

@@ -375,7 +375,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Cached size + {{ $t('views.admin.library.ArtistDetail.cachedSizeLabel') }} {{ humanSize(stats.media_downloaded_size) }} @@ -383,7 +383,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Total size + {{ $t('views.admin.library.ArtistDetail.totalSizeLabel') }} {{ humanSize(stats.media_total_size) }} @@ -393,7 +393,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Libraries + {{ $t('views.admin.library.ArtistDetail.librariesLabel') }} @@ -403,7 +403,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Uploads + {{ $t('views.admin.library.ArtistDetail.uploadsLabel') }} @@ -413,7 +413,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Albums + {{ $t('views.admin.library.ArtistDetail.albumsLabel') }} @@ -423,7 +423,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Tracks + {{ $t('views.admin.library.ArtistDetail.tracksLabel') }} diff --git a/front/src/views/admin/library/Base.vue b/front/src/views/admin/library/Base.vue index e096a168c..8395914a6 100644 --- a/front/src/views/admin/library/Base.vue +++ b/front/src/views/admin/library/Base.vue @@ -4,8 +4,8 @@ import { useI18n } from 'vue-i18n' const { t } = useI18n() const labels = computed(() => ({ - title: t('Manage library'), - secondaryMenu: t('Secondary menu') + title: t('views.admin.library.Base.title'), + secondaryMenu: t('views.admin.library.Base.secondaryMenu') })) @@ -23,49 +23,49 @@ const labels = computed(() => ({ class="ui item" :to="{name: 'manage.library.edits'}" > - Edits + {{ $t('views.admin.library.Base.editsLink') }} - Channels + {{ $t('views.admin.library.Base.channelsLink') }} - Artists + {{ $t('views.admin.library.Base.artistsLink') }} - Albums + {{ $t('views.admin.library.Base.albumsLink') }} - Tracks + {{ $t('views.admin.library.Base.tracksLink') }} - Libraries + {{ $t('views.admin.library.Base.librariesLink') }} - Uploads + {{ $t('views.admin.library.Base.uploadsLink') }} - Tags + {{ $t('views.admin.library.Base.tagsLink') }} diff --git a/front/src/views/admin/library/EditsList.vue b/front/src/views/admin/library/EditsList.vue index dba58beb2..930654a16 100644 --- a/front/src/views/admin/library/EditsList.vue +++ b/front/src/views/admin/library/EditsList.vue @@ -14,7 +14,7 @@ withDefaults(defineProps(), { const { t } = useI18n() const labels = computed(() => ({ - title: t('Edits') + title: t('views.admin.library.EditsList.title') })) @@ -26,7 +26,7 @@ const labels = computed(() => ({ :default-query="defaultQuery" >

- Library edits + {{ $t('views.admin.library.EditsList.libraryEditsHeader') }}

diff --git a/front/src/views/admin/library/LibraryDetail.vue b/front/src/views/admin/library/LibraryDetail.vue index 67874ae0e..417cc4533 100644 --- a/front/src/views/admin/library/LibraryDetail.vue +++ b/front/src/views/admin/library/LibraryDetail.vue @@ -27,7 +27,7 @@ const router = useRouter() const logger = useLogger() const labels = computed(() => ({ - statsWarning: t('Statistics are computed from known activity and content on your instance, and do not reflect general activity for this object') + statsWarning: t('views.admin.library.LibraryDetail.statsWarning') })) const isLoading = ref(false) @@ -117,7 +117,7 @@ const updateObj = async (attr: string) => { @@ -134,7 +134,7 @@ const updateObj = async (attr: string) => { rel="noopener noreferrer" > - View in Django's admin  + {{ $t('views.admin.library.LibraryDetail.djangoLink') }} @@ -169,22 +169,22 @@ const updateObj = async (attr: string) => { :class="['ui', {loading: isLoading}, 'basic danger button']" :action="remove" > - Delete + {{ $t('views.admin.library.LibraryDetail.deleteButton') }} @@ -201,14 +201,14 @@ const updateObj = async (attr: string) => {

- Library data + {{ $t('views.admin.library.LibraryDetail.libraryDataHeader') }}

- Name + {{ $t('views.admin.library.LibraryDetail.nameLabel') }} {{ object.name }} @@ -217,7 +217,7 @@ const updateObj = async (attr: string) => {
- Visibility + {{ $t('views.admin.library.LibraryDetail.visibilityLabel') }} @@ -244,7 +244,7 @@ const updateObj = async (attr: string) => {
- Account + {{ $t('views.admin.library.LibraryDetail.accountLabel') }} @@ -254,7 +254,7 @@ const updateObj = async (attr: string) => {
- Domain + {{ $t('views.admin.library.LibraryDetail.domainLabel') }} @@ -263,7 +263,7 @@ const updateObj = async (attr: string) => {
- Description + {{ $t('views.admin.library.LibraryDetail.descriptionLabel') }} {{ object.description }} @@ -278,7 +278,7 @@ const updateObj = async (attr: string) => {

- Activity  + {{ $t('views.admin.library.LibraryDetail.activityHeader') }}

@@ -298,7 +298,7 @@ const updateObj = async (attr: string) => {
- First seen + {{ $t('views.admin.library.LibraryDetail.firstSeenLabel') }} @@ -306,7 +306,7 @@ const updateObj = async (attr: string) => {
- Followers + {{ $t('views.admin.library.LibraryDetail.followersLabel') }} {{ stats.followers }} @@ -315,7 +315,7 @@ const updateObj = async (attr: string) => {
- Linked reports + {{ $t('views.admin.library.LibraryDetail.linkedReportsLabel') }} @@ -331,7 +331,7 @@ const updateObj = async (attr: string) => {

- Audio content  + {{ $t('views.admin.library.LibraryDetail.audioContentHeader') }}

@@ -351,7 +351,7 @@ const updateObj = async (attr: string) => {
- Cached size + {{ $t('views.admin.library.LibraryDetail.cachedSizeLabel') }} {{ humanSize(stats.media_downloaded_size) }} @@ -359,7 +359,7 @@ const updateObj = async (attr: string) => {
- Total size + {{ $t('views.admin.library.LibraryDetail.totalSizeLabel') }} {{ humanSize(stats.media_total_size) }} @@ -368,7 +368,7 @@ const updateObj = async (attr: string) => {
- Artists + {{ $t('views.admin.library.LibraryDetail.artistsLabel') }} @@ -378,7 +378,7 @@ const updateObj = async (attr: string) => {
- Albums + {{ $t('views.admin.library.LibraryDetail.albumsLabel') }} @@ -388,7 +388,7 @@ const updateObj = async (attr: string) => {
- Tracks + {{ $t('views.admin.library.LibraryDetail.tracksLabel') }} @@ -398,7 +398,7 @@ const updateObj = async (attr: string) => {
- Uploads + {{ $t('views.admin.library.LibraryDetail.uploadsLabel') }} diff --git a/front/src/views/admin/library/TagDetail.vue b/front/src/views/admin/library/TagDetail.vue index 9edb16b62..f888eda9e 100644 --- a/front/src/views/admin/library/TagDetail.vue +++ b/front/src/views/admin/library/TagDetail.vue @@ -77,7 +77,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"` :to="{name: 'library.tags.detail', params: {id: object.name }}" > - Open local profile  + {{ $t('views.admin.library.TagDetail.localProfileLink') }} @@ -103,22 +103,22 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"` :class="['ui', {loading: isLoading}, 'basic danger button']" :action="remove" > - Delete + {{ $t('views.admin.library.TagDetail.deleteButton') }} @@ -135,14 +135,14 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`

- Tag data + {{ $t('views.admin.library.TagDetail.tagDataHeader') }}

- Name + {{ $t('views.admin.library.TagDetail.nameLabel') }} {{ object.name }} @@ -157,14 +157,14 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`

- Activity  + {{ $t('views.admin.library.TagDetail.activityHeader') }}

- First seen + {{ $t('views.admin.library.TagDetail.firstSeenLabel') }} @@ -179,7 +179,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`

- Audio content  + {{ $t('views.admin.library.TagDetail.audioContentHeader') }}

@@ -187,7 +187,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Artists + {{ $t('views.admin.library.TagDetail.artistsLabel') }} @@ -197,7 +197,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Albums + {{ $t('views.admin.library.TagDetail.albumsLabel') }} @@ -207,7 +207,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Tracks + {{ $t('views.admin.library.TagDetail.tracksLabel') }} diff --git a/front/src/views/admin/library/TrackDetail.vue b/front/src/views/admin/library/TrackDetail.vue index d1730ce84..0417de1cc 100644 --- a/front/src/views/admin/library/TrackDetail.vue +++ b/front/src/views/admin/library/TrackDetail.vue @@ -19,7 +19,7 @@ const props = defineProps() const { t } = useI18n() const labels = computed(() => ({ - statsWarning: t('Statistics are computed from known activity and content on your instance, and do not reflect general activity for this object') + statsWarning: t('views.admin.library.TrackDetail.statsWarning') })) const track = ref() @@ -105,7 +105,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"` @@ -129,7 +129,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"` :to="{name: 'library.tracks.detail', params: {id: track.id }}" > - Open local profile  + {{ $t('views.admin.library.TrackDetail.localProfileLink') }} @@ -185,7 +185,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"` class="ui labeled icon button" > - Edit + {{ $t('views.admin.library.TrackDetail.editButton') }}
@@ -193,22 +193,22 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"` :class="['ui', {loading: isLoading}, 'basic danger button']" :action="remove" > - Delete + {{ $t('views.admin.library.TrackDetail.deleteButton') }} @@ -225,14 +225,14 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`

- Track data + {{ $t('views.admin.library.TrackDetail.trackDataHeader') }}

`${field}:"${value}"`

- Activity  + {{ $t('views.admin.library.TrackDetail.activityHeader') }}

@@ -349,7 +349,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Title + {{ $t('views.admin.library.TrackDetail.titleLabel') }} {{ track.title }} @@ -241,7 +241,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Album + {{ $t('views.admin.library.TrackDetail.albumLabel') }} @@ -252,7 +252,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Artist + {{ $t('views.admin.library.TrackDetail.artistLabel') }} @@ -262,7 +262,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Album artist + {{ $t('views.admin.library.TrackDetail.albumArtistLabel') }} @@ -271,7 +271,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Position + {{ $t('views.admin.library.TrackDetail.positionLabel') }} {{ track.position }} @@ -279,7 +279,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Disc number + {{ $t('views.admin.library.TrackDetail.discNumberLabel') }} {{ track.disc_number }} @@ -287,13 +287,13 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Copyright + {{ $t('views.admin.library.TrackDetail.copyrightLabel') }} {{ track.copyright }}
- License + {{ $t('views.admin.library.TrackDetail.licenseLabel') }} @@ -304,7 +304,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Domain + {{ $t('views.admin.library.TrackDetail.domainLabel') }} @@ -313,7 +313,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Description + {{ $t('views.admin.library.TrackDetail.descriptionLabel') }}
- First seen + {{ $t('views.admin.library.TrackDetail.firstSeenLabel') }} @@ -357,7 +357,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Listenings + {{ $t('views.admin.library.TrackDetail.listeningsLabel') }} {{ stats.listenings }} @@ -365,7 +365,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Favorited tracks + {{ $t('views.admin.library.TrackDetail.favoritedLabel') }} {{ stats.track_favorites }} @@ -373,7 +373,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Playlists + {{ $t('views.admin.library.TrackDetail.playlistsLabel') }} {{ stats.playlists }} @@ -382,7 +382,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Linked reports + {{ $t('views.admin.library.TrackDetail.linkedReportsLabel') }} @@ -392,7 +392,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Edits + {{ $t('views.admin.library.TrackDetail.editsLabel') }} @@ -408,7 +408,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`

- Audio content  + {{ $t('views.admin.library.TrackDetail.trackDataHeader') }}

@@ -428,7 +428,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Cached size + {{ $t('views.admin.library.TrackDetail.cachedSizeLabel') }} {{ humanSize(stats.media_downloaded_size) }} @@ -436,7 +436,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Total size + {{ $t('views.admin.library.TrackDetail.totalSizeLabel') }} {{ humanSize(stats.media_total_size) }} @@ -446,7 +446,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Libraries + {{ $t('views.admin.library.TrackDetail.librariesLabel') }} @@ -456,7 +456,7 @@ const getQuery = (field: string, value: string) => `${field}:"${value}"`
- Uploads + {{ $t('views.admin.library.TrackDetail.uploadsLabel') }} diff --git a/front/src/views/admin/library/UploadDetail.vue b/front/src/views/admin/library/UploadDetail.vue index b2aa75348..953d36a24 100644 --- a/front/src/views/admin/library/UploadDetail.vue +++ b/front/src/views/admin/library/UploadDetail.vue @@ -89,7 +89,7 @@ const showUploadDetailModal = ref(false) @@ -106,7 +106,7 @@ const showUploadDetailModal = ref(false) rel="noopener noreferrer" > - View in Django's admin  + {{ $t('views.admin.library.UploadDetail.djangoLink') }} @@ -145,7 +145,7 @@ const showUploadDetailModal = ref(false) rel="noopener noreferrer" > - Download + {{ $t('views.admin.library.UploadDetail.downloadButton') }}
@@ -153,22 +153,22 @@ const showUploadDetailModal = ref(false) :class="['ui', {loading: isLoading}, 'basic danger button']" :action="remove" > - Delete + {{ $t('views.admin.library.UploadDetail.deleteButton') }} @@ -185,14 +185,14 @@ const showUploadDetailModal = ref(false)

- Upload data + {{ $t('views.admin.library.UploadDetail.uploadDataHeader') }}

- Name + {{ $t('views.admin.library.UploadDetail.nameLabel') }} {{ displayName(object) }} @@ -201,7 +201,7 @@ const showUploadDetailModal = ref(false)
- Visibility + {{ $t('views.admin.library.UploadDetail.visibilityLabel') }} @@ -211,7 +211,7 @@ const showUploadDetailModal = ref(false)
- Account + {{ $t('views.admin.library.UploadDetail.accountLabel') }} @@ -221,7 +221,7 @@ const showUploadDetailModal = ref(false)
- Domain + {{ $t('views.admin.library.UploadDetail.domainLabel') }} @@ -231,7 +231,7 @@ const showUploadDetailModal = ref(false)
- Import status + {{ $t('views.admin.library.UploadDetail.importStatusLabel') }} @@ -248,7 +248,7 @@ const showUploadDetailModal = ref(false)
- Library + {{ $t('views.admin.library.UploadDetail.libraryLabel') }} @@ -264,14 +264,14 @@ const showUploadDetailModal = ref(false)

- Activity  + {{ $t('views.admin.library.UploadDetail.activityHeader') }}

@@ -302,7 +302,7 @@ const showUploadDetailModal = ref(false)

- Audio content  + {{ $t('views.admin.library.UploadDetail.audioContentHeader') }}

- First seen + {{ $t('views.admin.library.UploadDetail.firstSeenLabel') }} @@ -279,7 +279,7 @@ const showUploadDetailModal = ref(false)
- Accessed date + {{ $t('views.admin.library.UploadDetail.accessedDateLabel') }} - N/A + {{ $t('views.admin.library.UploadDetail.notApplicable') }}
@@ -310,7 +310,7 @@ const showUploadDetailModal = ref(false)
- Track + {{ $t('views.admin.library.UploadDetail.trackLabel') }} @@ -319,7 +319,7 @@ const showUploadDetailModal = ref(false)
- Cached size + {{ $t('views.admin.library.UploadDetail.cachedSizeLabel') }}