Make some progress on incorporating the locale file into the app
This commit is contained in:
parent
64b877fe27
commit
898e513974
|
@ -10,28 +10,12 @@ export default Vue.extend({
|
|||
},
|
||||
data: function () {
|
||||
return {
|
||||
sortByTitle: 'Sort By',
|
||||
sortByLabels: [
|
||||
'Most Relevant',
|
||||
'Rating',
|
||||
'Upload Date',
|
||||
'View Count'
|
||||
],
|
||||
sortByValues: [
|
||||
'relevance',
|
||||
'rating',
|
||||
'upload_date',
|
||||
'view_count'
|
||||
],
|
||||
timeTitle: 'Time',
|
||||
timeLabels: [
|
||||
'Any Time',
|
||||
'Last Hour',
|
||||
'Today',
|
||||
'This Week',
|
||||
'This Month',
|
||||
'This Year'
|
||||
],
|
||||
timeValues: [
|
||||
'',
|
||||
'hour',
|
||||
|
@ -40,25 +24,12 @@ export default Vue.extend({
|
|||
'month',
|
||||
'year'
|
||||
],
|
||||
typeTitle: 'Type',
|
||||
typeLabels: [
|
||||
'All Types',
|
||||
'Videos',
|
||||
'Channels',
|
||||
'Playlists'
|
||||
],
|
||||
typeValues: [
|
||||
'all',
|
||||
'video',
|
||||
'channel',
|
||||
'playlist'
|
||||
],
|
||||
durationTitle: 'Duration',
|
||||
durationLabels: [
|
||||
'All Durations',
|
||||
'Short (< 4 minutes)',
|
||||
'Long (> 20 minutes)'
|
||||
],
|
||||
durationValues: [
|
||||
'',
|
||||
'short',
|
||||
|
@ -69,6 +40,43 @@ export default Vue.extend({
|
|||
computed: {
|
||||
searchSettings: function () {
|
||||
return this.$store.getters.getSearchSettings
|
||||
},
|
||||
|
||||
sortByLabels: function () {
|
||||
return [
|
||||
this.$t('Search Filters.Sort By.Most Relevant'),
|
||||
this.$t('Search Filters.Sort By.Rating'),
|
||||
this.$t('Search Filters.Sort By.Upload Date'),
|
||||
this.$t('Search Filters.Sort By.View Count')
|
||||
]
|
||||
},
|
||||
|
||||
timeLabels: function () {
|
||||
return [
|
||||
this.$t('Search Filters.Time.Any Time'),
|
||||
this.$t('Search Filters.Time.Last Hour'),
|
||||
this.$t('Search Filters.Time.Today'),
|
||||
this.$t('Search Filters.Time.This Week'),
|
||||
this.$t('Search Filters.Time.This Month'),
|
||||
this.$t('Search Filters.Time.This Year')
|
||||
]
|
||||
},
|
||||
|
||||
typeLabels: function () {
|
||||
return [
|
||||
this.$t('Search Filters.Type.All Types'),
|
||||
this.$t('Search Filters.Type.Videos'),
|
||||
this.$t('Search Filters.Type.Channels'),
|
||||
this.$t('Playlists')
|
||||
]
|
||||
},
|
||||
|
||||
durationLabels: function () {
|
||||
return [
|
||||
this.$t('Search Filters.Duration.All Durations'),
|
||||
this.$t('Search Filters.Duration.Short (< 4 minutes)'),
|
||||
this.$t('Search Filters.Duration.Long (> 20 minutes)')
|
||||
]
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
|
|
|
@ -1,32 +1,32 @@
|
|||
<template>
|
||||
<div class="searchFilter">
|
||||
<h2 class="center">
|
||||
Search Filters
|
||||
{{ $t("Search Filters.Search Filters") }}
|
||||
</h2>
|
||||
<ft-flex-box class="radioFlexBox">
|
||||
<ft-radio-button
|
||||
:title="sortByTitle"
|
||||
:title="$t('Search Filters.Sort By.Sort By')"
|
||||
:labels="sortByLabels"
|
||||
:values="sortByValues"
|
||||
class="searchRadio"
|
||||
@change="updateSortBy"
|
||||
/>
|
||||
<ft-radio-button
|
||||
:title="timeTitle"
|
||||
:title="$t('Search Filters.Time.Time')"
|
||||
:labels="timeLabels"
|
||||
:values="timeValues"
|
||||
class="searchRadio radioMargin"
|
||||
@change="updateTime"
|
||||
/>
|
||||
<ft-radio-button
|
||||
:title="typeTitle"
|
||||
:title="$t('Search Filters.Type.Type')"
|
||||
:labels="typeLabels"
|
||||
:values="typeValues"
|
||||
class="searchRadio radioMargin"
|
||||
@change="updateType"
|
||||
/>
|
||||
<ft-radio-button
|
||||
:title="durationTitle"
|
||||
:title="$t('Search Filters.Duration.Duration')"
|
||||
:labels="durationLabels"
|
||||
:values="durationValues"
|
||||
class="radioMargin"
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<template>
|
||||
<ft-icon-button
|
||||
ref="iconButton"
|
||||
title="Share Video"
|
||||
:title="$t('Share.Share Video')"
|
||||
theme="secondary"
|
||||
icon="share-alt"
|
||||
dropdown-position-x="left"
|
||||
|
@ -24,14 +24,14 @@
|
|||
@click="copyYoutube()"
|
||||
>
|
||||
<font-awesome-icon icon="copy" />
|
||||
Copy link
|
||||
{{ $t("Share.Copy Link") }}
|
||||
</ft-button>
|
||||
<ft-button
|
||||
class="action"
|
||||
@click="openYoutube()"
|
||||
>
|
||||
<font-awesome-icon icon="globe" />
|
||||
Open link
|
||||
{{ $t("Share.Open Link") }}
|
||||
</ft-button>
|
||||
<ft-button
|
||||
class="action"
|
||||
|
@ -39,7 +39,7 @@
|
|||
@click="copyYoutubeEmbed()"
|
||||
>
|
||||
<font-awesome-icon icon="copy" />
|
||||
Copy embed
|
||||
{{ $t("Share.Copy Embed") }}
|
||||
</ft-button>
|
||||
<ft-button
|
||||
class="action"
|
||||
|
@ -47,7 +47,7 @@
|
|||
@click="openYoutubeEmbed()"
|
||||
>
|
||||
<font-awesome-icon icon="globe" />
|
||||
Open embed
|
||||
{{ $t("Share.Open Embed") }}
|
||||
</ft-button>
|
||||
</div>
|
||||
|
||||
|
@ -63,14 +63,14 @@
|
|||
@click="copyInvidious()"
|
||||
>
|
||||
<font-awesome-icon icon="copy" />
|
||||
Copy link
|
||||
{{ $t("Share.Copy Link") }}
|
||||
</ft-button>
|
||||
<ft-button
|
||||
class="action"
|
||||
@click="openInvidious()"
|
||||
>
|
||||
<font-awesome-icon icon="globe" />
|
||||
Open link
|
||||
{{ $t("Share.Open Link") }}
|
||||
</ft-button>
|
||||
<ft-button
|
||||
class="action"
|
||||
|
@ -78,7 +78,7 @@
|
|||
@click="copyInvidiousEmbed()"
|
||||
>
|
||||
<font-awesome-icon icon="copy" />
|
||||
Copy embed
|
||||
{{ $t("Share.Copy Embed") }}
|
||||
</ft-button>
|
||||
<ft-button
|
||||
class="action"
|
||||
|
@ -86,7 +86,7 @@
|
|||
@click="openInvidiousEmbed()"
|
||||
>
|
||||
<font-awesome-icon icon="globe" />
|
||||
Open embed
|
||||
{{ $t("Share.Open Embed") }}
|
||||
</ft-button>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -20,14 +20,9 @@ export default Vue.extend({
|
|||
},
|
||||
data: function () {
|
||||
return {
|
||||
title: 'General Settings',
|
||||
showInvidiousInstances: false,
|
||||
instanceNames: [],
|
||||
instanceValues: [],
|
||||
backendNames: [
|
||||
'Invidious API',
|
||||
'Local API'
|
||||
],
|
||||
backendValues: [
|
||||
'invidious',
|
||||
'local'
|
||||
|
@ -46,20 +41,10 @@ export default Vue.extend({
|
|||
'playlists',
|
||||
'history'
|
||||
],
|
||||
viewTypeNames: [
|
||||
'Grid',
|
||||
'List'
|
||||
],
|
||||
viewTypeValues: [
|
||||
'grid',
|
||||
'list'
|
||||
],
|
||||
thumbnailTypeNames: [
|
||||
'Default',
|
||||
'Beginning',
|
||||
'Middle',
|
||||
'End'
|
||||
],
|
||||
thumbnailTypeValues: [
|
||||
'',
|
||||
'start',
|
||||
|
@ -575,6 +560,29 @@ export default Vue.extend({
|
|||
},
|
||||
thumbnailPreference: function () {
|
||||
return this.$store.getters.getThumbnailPreference
|
||||
},
|
||||
|
||||
backendNames: function () {
|
||||
return [
|
||||
this.$t('Settings.General Settings.Preferred API Backend.Invidious API'),
|
||||
this.$t('Settings.General Settings.Preferred API Backend.Local API')
|
||||
]
|
||||
},
|
||||
|
||||
viewTypeNames: function () {
|
||||
return [
|
||||
this.$t('Settings.General Settings.Video View Type.Grid'),
|
||||
this.$t('Settings.General Settings.Video View Type.List')
|
||||
]
|
||||
},
|
||||
|
||||
thumbnailTypeNames: function () {
|
||||
return [
|
||||
this.$t('Settings.General Settings.Thumbnail Preference.Default'),
|
||||
this.$t('Settings.General Settings.Thumbnail Preference.Beginning'),
|
||||
this.$t('Settings.General Settings.Thumbnail Preference.Middle'),
|
||||
this.$t('Settings.General Settings.Thumbnail Preference.End')
|
||||
]
|
||||
}
|
||||
},
|
||||
mounted: function () {
|
||||
|
|
|
@ -5,29 +5,29 @@
|
|||
<h3
|
||||
class="videoTitle"
|
||||
>
|
||||
{{ title }}
|
||||
{{ $t("Settings.General Settings.General Settings") }}
|
||||
</h3>
|
||||
<ft-flex-box class="generalSettingsFlexBox">
|
||||
<ft-toggle-switch
|
||||
label="Fallback to Non-Preferred Backend on Failure"
|
||||
:label="$t('Settings.General Settings.Fallback to Non-Preferred Backend on Failure')"
|
||||
:default-value="backendFallback"
|
||||
@change="updateBackendFallback"
|
||||
/>
|
||||
<ft-toggle-switch
|
||||
label="Enable Search Suggestions"
|
||||
:label="$t('Settings.General Settings.Enable Search Suggestions')"
|
||||
:default-value="enableSearchSuggestions"
|
||||
@change="updateEnableSearchSuggestions"
|
||||
/>
|
||||
<ft-toggle-switch
|
||||
v-if="false"
|
||||
label="Check for Updates"
|
||||
:label="$t('Settings.General Settings.Check for Updates')"
|
||||
:default-value="checkForUpdates"
|
||||
@change="updateCheckForUpdates"
|
||||
/>
|
||||
</ft-flex-box>
|
||||
<div class="switchGrid">
|
||||
<ft-select
|
||||
placeholder="Preferred API Backend"
|
||||
:placeholder="$t('Settings.General Settings.Preferred API Backend.Preferred API Backend')"
|
||||
:value="backendPreference"
|
||||
:select-names="backendNames"
|
||||
:select-values="backendValues"
|
||||
|
@ -35,7 +35,7 @@
|
|||
/>
|
||||
<ft-select
|
||||
v-if="false"
|
||||
placeholder="Default Landing Page"
|
||||
:placeholder="$t('Settings.General Settings.Default Landing Page')"
|
||||
:value="landingPage"
|
||||
:select-names="defaultPageNames"
|
||||
:select-values="defaultPageValues"
|
||||
|
@ -43,21 +43,21 @@
|
|||
/>
|
||||
<ft-select
|
||||
v-if="false"
|
||||
placeholder="Region for Trending"
|
||||
:placeholder="$t('Settings.General Settings.Region for Trending')"
|
||||
:value="region"
|
||||
:select-names="regionNames"
|
||||
:select-values="regionValues"
|
||||
@change="updateRegion"
|
||||
/>
|
||||
<ft-select
|
||||
placeholder="Video View Type"
|
||||
:placeholder="$t('Settings.General Settings.Video View Type.Video View Type')"
|
||||
:value="listType"
|
||||
:select-names="viewTypeNames"
|
||||
:select-values="viewTypeValues"
|
||||
@change="updateListType"
|
||||
/>
|
||||
<ft-select
|
||||
placeholder="Thumbnail Preference"
|
||||
:placeholder="$t('Settings.General Settings.Thumbnail Preference.Thumbnail Preference')"
|
||||
:value="thumbnailPreference"
|
||||
:select-names="thumbnailTypeNames"
|
||||
:select-values="thumbnailTypeValues"
|
||||
|
@ -66,7 +66,7 @@
|
|||
</div>
|
||||
<ft-flex-box class="generalSettingsFlexBox">
|
||||
<ft-input
|
||||
placeholder="Invidious Instance (Default is https://invidio.us)"
|
||||
:placeholder="$t('Settings.General Settings[\'Invidious Instance (Default is https://invidio.us)\']')"
|
||||
:show-arrow="false"
|
||||
:show-label="true"
|
||||
:value="invidiousInstance"
|
||||
|
|
|
@ -17,29 +17,11 @@ export default Vue.extend({
|
|||
},
|
||||
data: function () {
|
||||
return {
|
||||
title: 'Player Settings',
|
||||
formatNames: [
|
||||
'Dash Formats',
|
||||
'Legacy Formats',
|
||||
'Audio Formats'
|
||||
],
|
||||
formatValues: [
|
||||
'dash',
|
||||
'legacy',
|
||||
'audio'
|
||||
],
|
||||
qualityNames: [
|
||||
'Auto',
|
||||
'144p',
|
||||
'240p',
|
||||
'360p',
|
||||
'480p',
|
||||
'720p',
|
||||
'1080p',
|
||||
'1440p',
|
||||
'4k',
|
||||
'8k'
|
||||
],
|
||||
qualityValues: [
|
||||
'auto',
|
||||
144,
|
||||
|
@ -101,6 +83,29 @@ export default Vue.extend({
|
|||
|
||||
defaultTheatreMode: function () {
|
||||
return this.$store.getters.getDefaultTheatreMode
|
||||
},
|
||||
|
||||
formatNames: function () {
|
||||
return [
|
||||
this.$t('Settings.Player Settings.Default Video Format.Dash Formats'),
|
||||
this.$t('Settings.Player Settings.Default Video Format.Legacy Formats'),
|
||||
this.$t('Settings.Player Settings.Default Video Format.Audio Formats')
|
||||
]
|
||||
},
|
||||
|
||||
qualityNames: function () {
|
||||
return [
|
||||
this.$t('Settings.Player Settings.Default Quality.Auto'),
|
||||
this.$t('Settings.Player Settings.Default Quality.144p'),
|
||||
this.$t('Settings.Player Settings.Default Quality.240p'),
|
||||
this.$t('Settings.Player Settings.Default Quality.360p'),
|
||||
this.$t('Settings.Player Settings.Default Quality.480p'),
|
||||
this.$t('Settings.Player Settings.Default Quality.720p'),
|
||||
this.$t('Settings.Player Settings.Default Quality.1080p'),
|
||||
this.$t('Settings.Player Settings.Default Quality.1440p'),
|
||||
this.$t('Settings.Player Settings.Default Quality.4k'),
|
||||
this.$t('Settings.Player Settings.Default Quality.8k')
|
||||
]
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
<h3
|
||||
class="videoTitle"
|
||||
>
|
||||
{{ title }}
|
||||
{{ $t("Settings.Player Settings.Player Settings") }}
|
||||
</h3>
|
||||
<div class="switchColumnGrid">
|
||||
<div class="switchColumn">
|
||||
|
@ -24,13 +24,13 @@
|
|||
@change="updateEnableSubtitles"
|
||||
/>
|
||||
<ft-toggle-switch
|
||||
label="Force Local Backend for Legacy Formats"
|
||||
:label="$t('Settings.Player Settings.Force Local Backend for Legacy Formats')"
|
||||
:compact="true"
|
||||
:default-value="forceLocalBackendForLegacy"
|
||||
@change="updateForceLocalBackendForLegacy"
|
||||
/>
|
||||
<ft-toggle-switch
|
||||
label="Proxy Videos Through Invidious"
|
||||
:label="$t('Settings.Player Settings.Proxy Videos Through Invidious')"
|
||||
:compact="true"
|
||||
:default-value="proxyVideos"
|
||||
@change="updateProxyVideos"
|
||||
|
@ -38,26 +38,26 @@
|
|||
</div>
|
||||
<div class="switchColumn">
|
||||
<ft-toggle-switch
|
||||
label="Autoplay Videos"
|
||||
:label="$t('Settings.Player Settings.Autoplay Videos')"
|
||||
:compact="true"
|
||||
:default-value="autoplayVideos"
|
||||
@change="updateAutoplayVideos"
|
||||
/>
|
||||
<ft-toggle-switch
|
||||
label="Autoplay Playlists"
|
||||
:label="$t('Settings.Player Settings.Autoplay Playlists')"
|
||||
:compact="true"
|
||||
:default-value="autoplayPlaylists"
|
||||
@change="updateAutoplayPlaylists"
|
||||
/>
|
||||
<ft-toggle-switch
|
||||
v-if="false"
|
||||
label="Play Next Video"
|
||||
:label="$t('Settings.Player Settings.Play Next Video')"
|
||||
:compact="true"
|
||||
:default-value="playNextVideo"
|
||||
@change="updatePlayNextVideo"
|
||||
/>
|
||||
<ft-toggle-switch
|
||||
label="Enable Theatre Mode by Default"
|
||||
:label="$t('Settings.Player Settings.Enable Theatre Mode by Default')"
|
||||
:compact="true"
|
||||
:default-value="defaultTheatreMode"
|
||||
@change="updateDefaultTheatreMode"
|
||||
|
@ -66,7 +66,7 @@
|
|||
</div>
|
||||
<ft-flex-box>
|
||||
<ft-slider
|
||||
label="Default Volume"
|
||||
:label="$t('Settings.Player Settings.Default Volume')"
|
||||
:default-value="defaultVolume"
|
||||
:min-value="0"
|
||||
:max-value="100"
|
||||
|
@ -75,7 +75,7 @@
|
|||
@change="parseVolumeBeforeUpdate"
|
||||
/>
|
||||
<ft-slider
|
||||
label="Default Playback Rate"
|
||||
:label="$t('Settings.Player Settings.Default Playback Rate')"
|
||||
:default-value="defaultPlayback"
|
||||
:min-value="0.25"
|
||||
:max-value="3"
|
||||
|
@ -86,14 +86,14 @@
|
|||
</ft-flex-box>
|
||||
<ft-flex-box>
|
||||
<ft-select
|
||||
placeholder="Default Video Format"
|
||||
:placeholder="$t('Settings.Player Settings.Default Video Format.Default Video Format')"
|
||||
:value="defaultVideoFormat"
|
||||
:select-names="formatNames"
|
||||
:select-values="formatValues"
|
||||
@change="updateDefaultVideoFormat"
|
||||
/>
|
||||
<ft-select
|
||||
placeholder="Default Quality"
|
||||
:placeholder="$t('Settings.Player Settings.Default Quality.Default Quality')"
|
||||
:value="defaultQuality"
|
||||
:select-names="qualityNames"
|
||||
:select-values="qualityValues"
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
class="navIcon"
|
||||
/>
|
||||
<p class="navLabel">
|
||||
Subscriptions
|
||||
{{ $t("Subscriptions.Subscriptions") }}
|
||||
</p>
|
||||
<font-awesome-icon
|
||||
class="refreshIcon"
|
||||
|
@ -30,7 +30,7 @@
|
|||
class="navIcon"
|
||||
/>
|
||||
<p class="navLabel">
|
||||
Trending
|
||||
{{ $t("Trending") }}
|
||||
</p>
|
||||
</div>
|
||||
<div
|
||||
|
@ -42,7 +42,7 @@
|
|||
class="navIcon"
|
||||
/>
|
||||
<p class="navLabel">
|
||||
Most Popular
|
||||
{{ $t("Most Popular") }}
|
||||
</p>
|
||||
</div>
|
||||
<div
|
||||
|
@ -54,7 +54,7 @@
|
|||
class="navIcon"
|
||||
/>
|
||||
<p class="navLabel">
|
||||
Playlists
|
||||
{{ $t("Playlists") }}
|
||||
</p>
|
||||
</div>
|
||||
<side-nav-more-options
|
||||
|
@ -69,7 +69,7 @@
|
|||
class="navIcon"
|
||||
/>
|
||||
<p class="navLabel">
|
||||
History
|
||||
{{ $t("History.History") }}
|
||||
</p>
|
||||
</div>
|
||||
<hr>
|
||||
|
@ -82,7 +82,7 @@
|
|||
class="navIcon"
|
||||
/>
|
||||
<p class="navLabel">
|
||||
Settings
|
||||
{{ $t("Settings.Settings") }}
|
||||
</p>
|
||||
</div>
|
||||
<div
|
||||
|
@ -94,7 +94,7 @@
|
|||
class="navIcon"
|
||||
/>
|
||||
<p class="navLabel">
|
||||
About
|
||||
{{ $t("About.About") }}
|
||||
</p>
|
||||
</div>
|
||||
<hr>
|
||||
|
|
|
@ -15,38 +15,14 @@ export default Vue.extend({
|
|||
},
|
||||
data: function () {
|
||||
return {
|
||||
title: 'Theme Settings',
|
||||
currentBaseTheme: '',
|
||||
currentMainColor: '',
|
||||
currentSecColor: '',
|
||||
baseThemeNames: [
|
||||
'Light',
|
||||
'Dark',
|
||||
'Black'
|
||||
],
|
||||
baseThemeValues: [
|
||||
'light',
|
||||
'dark',
|
||||
'black'
|
||||
],
|
||||
colorNames: [
|
||||
'Red',
|
||||
'Pink',
|
||||
'Purple',
|
||||
'Deep Purple',
|
||||
'Indigo',
|
||||
'Blue',
|
||||
'Light Blue',
|
||||
'Cyan',
|
||||
'Teal',
|
||||
'Green',
|
||||
'Light Green',
|
||||
'Lime',
|
||||
'Yellow',
|
||||
'Amber',
|
||||
'Orange',
|
||||
'Deep Orange'
|
||||
],
|
||||
colorValues: [
|
||||
'Red',
|
||||
'Pink',
|
||||
|
@ -70,6 +46,35 @@ export default Vue.extend({
|
|||
computed: {
|
||||
barColor: function () {
|
||||
return this.$store.getters.getBarColor
|
||||
},
|
||||
|
||||
baseThemeNames: function () {
|
||||
return [
|
||||
this.$t('Settings.Theme Settings.Base Theme.Light'),
|
||||
this.$t('Settings.Theme Settings.Base Theme.Dark'),
|
||||
this.$t('Settings.Theme Settings.Base Theme.Black')
|
||||
]
|
||||
},
|
||||
|
||||
colorNames: function () {
|
||||
return [
|
||||
this.$t('Settings.Theme Settings.Main Color Theme.Red'),
|
||||
this.$t('Settings.Theme Settings.Main Color Theme.Pink'),
|
||||
this.$t('Settings.Theme Settings.Main Color Theme.Purple'),
|
||||
this.$t('Settings.Theme Settings.Main Color Theme.Deep Purple'),
|
||||
this.$t('Settings.Theme Settings.Main Color Theme.Indigo'),
|
||||
this.$t('Settings.Theme Settings.Main Color Theme.Blue'),
|
||||
this.$t('Settings.Theme Settings.Main Color Theme.Light Blue'),
|
||||
this.$t('Settings.Theme Settings.Main Color Theme.Cyan'),
|
||||
this.$t('Settings.Theme Settings.Main Color Theme.Teal'),
|
||||
this.$t('Settings.Theme Settings.Main Color Theme.Green'),
|
||||
this.$t('Settings.Theme Settings.Main Color Theme.Light Green'),
|
||||
this.$t('Settings.Theme Settings.Main Color Theme.Lime'),
|
||||
this.$t('Settings.Theme Settings.Main Color Theme.Yellow'),
|
||||
this.$t('Settings.Theme Settings.Main Color Theme.Amber'),
|
||||
this.$t('Settings.Theme Settings.Main Color Theme.Orange'),
|
||||
this.$t('Settings.Theme Settings.Main Color Theme.Deep Orange')
|
||||
]
|
||||
}
|
||||
},
|
||||
mounted: function () {
|
||||
|
|
|
@ -3,11 +3,11 @@
|
|||
class="relative card"
|
||||
>
|
||||
<h3>
|
||||
{{ title }}
|
||||
{{ $t("Settings.Theme Settings.Theme Settings") }}
|
||||
</h3>
|
||||
<ft-flex-box>
|
||||
<ft-toggle-switch
|
||||
label="Match Top Bar with Main Color"
|
||||
:label="$t('Settings.Theme Settings.Match Top Bar with Main Color')"
|
||||
:default-value="barColor"
|
||||
@change="updateBarColor"
|
||||
/>
|
||||
|
@ -15,21 +15,21 @@
|
|||
<br>
|
||||
<ft-flex-box>
|
||||
<ft-select
|
||||
placeholder="Base Theme"
|
||||
:placeholder="$t('Settings.Theme Settings.Base Theme.Base Theme')"
|
||||
:value="currentBaseTheme"
|
||||
:select-names="baseThemeNames"
|
||||
:select-values="baseThemeValues"
|
||||
@change="updateBaseTheme"
|
||||
/>
|
||||
<ft-select
|
||||
placeholder="Main Color Theme"
|
||||
:placeholder="$t('Settings.Theme Settings.Main Color Theme.Main Color Theme')"
|
||||
:value="currentMainColor"
|
||||
:select-names="colorNames"
|
||||
:select-values="colorValues"
|
||||
@change="updateMainColor"
|
||||
/>
|
||||
<ft-select
|
||||
placeholder="Secondary Color Theme"
|
||||
:placeholder="$t('Settings.Theme Settings.Secondary Color Theme')"
|
||||
:value="currentSecColor"
|
||||
:select-names="colorNames"
|
||||
:select-values="colorValues"
|
||||
|
|
|
@ -36,7 +36,7 @@
|
|||
<div class="middle">
|
||||
<div class="searchContainer">
|
||||
<ft-input
|
||||
placeholder="Search / Go to URL"
|
||||
:placeholder="$t('Search / Go to URL')"
|
||||
class="searchInput"
|
||||
:is-search="true"
|
||||
:data-list="searchSuggestionsDataList"
|
||||
|
|
|
@ -63,11 +63,6 @@ export default Vue.extend({
|
|||
data: function () {
|
||||
return {
|
||||
formatTypeLabel: 'VIDEO FORMATS',
|
||||
formatTypeNames: [
|
||||
'USE DASH FORMATS',
|
||||
'USE LEGACY FORMATS',
|
||||
'USE AUDIO FORMATS'
|
||||
],
|
||||
formatTypeValues: [
|
||||
'dash',
|
||||
'legacy',
|
||||
|
@ -84,6 +79,14 @@ export default Vue.extend({
|
|||
return this.$store.getters.getUsingElectron
|
||||
},
|
||||
|
||||
formatTypeNames: function () {
|
||||
return [
|
||||
this.$t('Change Format.Use Dash Formats').toUpperCase(),
|
||||
this.$t('Change Format.Use Legacy Formats').toUpperCase(),
|
||||
this.$t('Change Format.Use Audio Formats').toUpperCase()
|
||||
]
|
||||
},
|
||||
|
||||
totalLikeCount: function () {
|
||||
return this.likeCount + this.dislikeCount
|
||||
},
|
||||
|
@ -93,17 +96,18 @@ export default Vue.extend({
|
|||
},
|
||||
|
||||
parsedViewCount: function () {
|
||||
return this.viewCount.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',') + ' views'
|
||||
return this.viewCount.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',') + ` ${this.$t('Video.Views').toLowerCase()}`
|
||||
},
|
||||
|
||||
subscribedText: function () {
|
||||
return `SUBSCRIBE ${this.subscriptionCountText}`
|
||||
return `${this.$t('Subscribe').toUpperCase()} ${this.subscriptionCountText}`
|
||||
},
|
||||
|
||||
dateString() {
|
||||
const date = new Date(this.published)
|
||||
const dateSplit = date.toDateString().split(' ')
|
||||
return `${dateSplit[1]} ${dateSplit[2]}, ${dateSplit[3]}`
|
||||
const localeDateString = `Video.Published.${dateSplit[1]}`
|
||||
return `${this.$t(localeDateString)} ${dateSplit[2]}, ${dateSplit[3]}`
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
|
|
|
@ -38,7 +38,7 @@
|
|||
</div>
|
||||
<div>
|
||||
<div class="datePublished">
|
||||
Published {{ dateString }}
|
||||
{{ $t("Video.Published on") }} {{ dateString }}
|
||||
</div>
|
||||
<div class="viewCount">
|
||||
{{ parsedViewCount }}
|
||||
|
@ -59,14 +59,14 @@
|
|||
</div>
|
||||
<div class="videoOptions">
|
||||
<ft-icon-button
|
||||
title="Toggle Theatre Mode"
|
||||
:title="$t('Toggle Theatre Mode')"
|
||||
class="theatreModeButton option"
|
||||
icon="expand-alt"
|
||||
theme="secondary"
|
||||
@click="$emit('theatreMode')"
|
||||
/>
|
||||
<ft-icon-button
|
||||
title="Change Video Formats"
|
||||
:title="$t('Change Format.Change Video Formats')"
|
||||
class="option"
|
||||
theme="secondary"
|
||||
icon="file-video"
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<template>
|
||||
<ft-card class="relative watchVideoRecommendations">
|
||||
<h3>
|
||||
Up Next
|
||||
{{ $t("Up Next") }}
|
||||
</h3>
|
||||
<ft-list-video
|
||||
v-for="(video, index) in data"
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
<template>
|
||||
<div>
|
||||
<ft-card class="card">
|
||||
<h3>History</h3>
|
||||
<h3>{{ $t("History.History") }}</h3>
|
||||
<ft-flex-box>
|
||||
<p class="message">
|
||||
This part of the app is not ready yet. Come back later when progress has been made.
|
||||
{{ $t("This part of the app is not ready yet. Come back later when progress has been made.") }}
|
||||
</p>
|
||||
</ft-flex-box>
|
||||
</ft-card>
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
v-else
|
||||
class="card"
|
||||
>
|
||||
<h3>Most Popular</h3>
|
||||
<h3>{{ $t("Most Popular") }}</h3>
|
||||
<ft-element-list
|
||||
:data="shownResults"
|
||||
/>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<template>
|
||||
<div>
|
||||
<ft-card class="card">
|
||||
<h3>Subscriptions</h3>
|
||||
<h3>{{ $t("Subscriptions.Subscriptions") }}</h3>
|
||||
<ft-flex-box>
|
||||
<p class="message">
|
||||
{{ $t("This part of the app is not ready yet. Come back later when progress has been made.") }}
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
v-else
|
||||
class="card"
|
||||
>
|
||||
<h3>Trending</h3>
|
||||
<h3>{{ $t("Trending") }}</h3>
|
||||
<ft-element-list
|
||||
:data="shownResults"
|
||||
/>
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
<template>
|
||||
<div>
|
||||
<ft-card class="card">
|
||||
<h3>Your Playlists</h3>
|
||||
<h3>{{ $t("User Playlists.Your Playlists") }}</h3>
|
||||
<ft-flex-box>
|
||||
<p class="message">
|
||||
This part of the app is not ready yet. Come back later when progress has been made.
|
||||
{{ $t("This part of the app is not ready yet. Come back later when progress has been made.") }}
|
||||
</p>
|
||||
</ft-flex-box>
|
||||
</ft-card>
|
||||
|
|
|
@ -213,7 +213,7 @@ export default Vue.extend({
|
|||
this.recommendedVideos = result.related_videos
|
||||
this.videoLikeCount = result.videoDetails.likes
|
||||
this.videoDislikeCount = result.videoDetails.dislikes
|
||||
this.isLive = result.player_response.videoDetails.isLive
|
||||
this.isLive = result.player_response.videoDetails.isLiveContent
|
||||
|
||||
if (this.videoDislikeCount === null) {
|
||||
this.videoDislikeCount = 0
|
||||
|
|
|
@ -89,35 +89,11 @@ Subscriptions:
|
|||
Your Subscription list is currently empty. Start adding subscriptions to see them here.
|
||||
|
||||
'Getting Subscriptions. Please wait...': Getting Subscriptions. Please wait…
|
||||
Live Now: Live Now
|
||||
Published:
|
||||
Jan: Jan
|
||||
Feb: Feb
|
||||
Mar: Mar
|
||||
Apr: Apr
|
||||
May: May
|
||||
Jun: Jun
|
||||
Jul: Jul
|
||||
Aug: Aug
|
||||
Sep: Sep
|
||||
Oct: Oct
|
||||
Nov: Nov
|
||||
Dec: Dec
|
||||
Hour: Hour
|
||||
Hours: Hours
|
||||
Day: Day
|
||||
Days: Days
|
||||
Week: Week
|
||||
Weeks: Weeks
|
||||
Month: Month
|
||||
Months: Months
|
||||
Year: Year
|
||||
Years: Years
|
||||
Ago: Ago
|
||||
Published on: Published on
|
||||
Featured: Featured
|
||||
Trending: Trending
|
||||
Most Popular: Most Popular
|
||||
Playlists: Playlists
|
||||
User Playlists:
|
||||
Your Playlists: Your Playlists
|
||||
History:
|
||||
# On History Page
|
||||
History: History
|
||||
|
@ -130,8 +106,8 @@ Settings:
|
|||
Fallback to Non-Preferred Backend on Failure: Fallback to Non-Preferred Backend on Failure
|
||||
Enable Search Suggestions: Enable Search Suggestions
|
||||
Default Landing Page: Default Landing Page
|
||||
Perferred API Backend:
|
||||
Perferred API Backend: Perferred API Backend
|
||||
Preferred API Backend:
|
||||
Preferred API Backend: Preferred API Backend
|
||||
Local API: Local API
|
||||
Invidious API: Invidious API
|
||||
Video View Type:
|
||||
|
@ -160,7 +136,7 @@ Settings:
|
|||
Red: Red
|
||||
Pink: Pink
|
||||
Purple: Purple
|
||||
Dark Purple: Dark Purple
|
||||
Deep Purple: Deep Purple
|
||||
Indigo: Indigo
|
||||
Blue: Blue
|
||||
Light Blue: Light Blue
|
||||
|
@ -272,7 +248,34 @@ Subscriber: Subscriber
|
|||
Subscribers: Subscribers
|
||||
Subscribe: Subscribe
|
||||
Unsubscribe: Unsubscribe
|
||||
Video: Video
|
||||
Video:
|
||||
Views: Views
|
||||
Live Now: Live Now
|
||||
Published:
|
||||
Jan: Jan
|
||||
Feb: Feb
|
||||
Mar: Mar
|
||||
Apr: Apr
|
||||
May: May
|
||||
Jun: Jun
|
||||
Jul: Jul
|
||||
Aug: Aug
|
||||
Sep: Sep
|
||||
Oct: Oct
|
||||
Nov: Nov
|
||||
Dec: Dec
|
||||
Hour: Hour
|
||||
Hours: Hours
|
||||
Day: Day
|
||||
Days: Days
|
||||
Week: Week
|
||||
Weeks: Weeks
|
||||
Month: Month
|
||||
Months: Months
|
||||
Year: Year
|
||||
Years: Years
|
||||
Ago: Ago
|
||||
Published on: Published on
|
||||
#& Videos
|
||||
Videos:
|
||||
#& Sort By
|
||||
|
@ -299,13 +302,14 @@ Share Playlist:
|
|||
# On Video Watch Page
|
||||
#* Published
|
||||
#& Views
|
||||
Toggle Theatre Mode: Toggle Theatre Mode
|
||||
Change Format:
|
||||
Change Format: Change Format
|
||||
Change Video Formats: Change Video Formats
|
||||
Use Dash Formats: Use Dash Formats
|
||||
Use Legacy Formats: Use Legacy Formats
|
||||
Use Audio Formats: Use Audio Formats
|
||||
Share:
|
||||
Share: Share
|
||||
Share Video: Share Video
|
||||
Copy Link: Copy Link
|
||||
Open Link: Open Link
|
||||
Copy Embed: Copy Embed
|
||||
|
|
Loading…
Reference in New Issue