This commit is contained in:
booploops 2022-07-07 20:47:02 -07:00
parent 761d8d60cb
commit a62b71c04a

View file

@ -1,12 +1,18 @@
<script type="text/x-template" id="settings-window">
<div class="settings-panel" @click.self="close()">
<div class="settings-window" :class="{'maxed': $store.state.pageState['settings'].fullscreen, 'no-sidebar': sidebarVis()}">
<button class="close-btn minmax-btn" @click="$store.state.pageState['settings'].fullscreen = !$store.state.pageState['settings'].fullscreen" :class="{'min': $store.state.pageState['settings'].fullscreen}"></button>
<div class="settings-window"
:class="{'maxed': $store.state.pageState['settings'].fullscreen, 'no-sidebar': sidebarVis()}">
<button class="close-btn minmax-btn"
@click="$store.state.pageState['settings'].fullscreen = !$store.state.pageState['settings'].fullscreen"
:class="{'min': $store.state.pageState['settings'].fullscreen}"></button>
<button class="close-btn" @click="close()"></button>
<b-tabs class="no-style" pills vertical content-class="mt-3" v-model="$store.state.pageState['settings'].currentTabIndex">
<b-tabs class="no-style" pills vertical content-class="mt-3"
v-model="$store.state.pageState['settings'].currentTabIndex">
<b-tab>
<template #title>
<div><svg-icon url="./assets/settings.svg" classes="md" name="settings-general" /></div>
<div>
<svg-icon url="./assets/settings.svg" classes="md" name="settings-general"/>
</div>
<div>
{{ $root.getLz('settings.header.general') }}
</div>
@ -27,7 +33,8 @@
<select class="md-select" @change="$root.setLz('');$root.setLzManual()"
v-model="app.cfg.general.language">
<optgroup :label="index" v-for="(categories, index) in getLanguages()">
<option v-for="lang in categories" :value="lang.code">{{lang.nameNative}}
<option v-for="lang in categories" :value="lang.code">
{{lang.nameNative}}
({{
lang.nameEnglish }})
</option>
@ -124,7 +131,8 @@
<option value="listen_now">{{$root.getLz('term.listenNow')}}</option>
<option value="browse">{{$root.getLz('term.browse')}}</option>
<option value="radio">{{$root.getLz('term.radio')}}</option>
<option value="library-recentlyadded">{{$root.getLz('term.recentlyAdded')}}
<option value="library-recentlyadded">
{{$root.getLz('term.recentlyAdded')}}
</option>
<option value="library-songs">{{$root.getLz('term.songs')}}</option>
<option value="library-albums">{{$root.getLz('term.albums')}}</option>
@ -154,7 +162,8 @@
<div class="md-option-segment md-option-segment_auto">
<label>
<input type="checkbox"
v-model="app.cfg.general.sidebarItems.recentlyAdded" switch />
v-model="app.cfg.general.sidebarItems.recentlyAdded"
switch/>
</label>
</div>
</div>
@ -164,7 +173,8 @@
</div>
<div class="md-option-segment md-option-segment_auto">
<label>
<input type="checkbox" v-model="app.cfg.general.sidebarItems.songs"
<input type="checkbox"
v-model="app.cfg.general.sidebarItems.songs"
switch/>
</label>
</div>
@ -175,7 +185,8 @@
</div>
<div class="md-option-segment md-option-segment_auto">
<label>
<input type="checkbox" v-model="app.cfg.general.sidebarItems.albums"
<input type="checkbox"
v-model="app.cfg.general.sidebarItems.albums"
switch/>
</label>
</div>
@ -186,7 +197,8 @@
</div>
<div class="md-option-segment md-option-segment_auto">
<label>
<input type="checkbox" v-model="app.cfg.general.sidebarItems.artists"
<input type="checkbox"
v-model="app.cfg.general.sidebarItems.artists"
switch/>
</label>
</div>
@ -197,7 +209,8 @@
</div>
<div class="md-option-segment md-option-segment_auto">
<label>
<input type="checkbox" v-model="app.cfg.general.sidebarItems.videos"
<input type="checkbox"
v-model="app.cfg.general.sidebarItems.videos"
switch/>
</label>
</div>
@ -208,7 +221,8 @@
</div>
<div class="md-option-segment md-option-segment_auto">
<label>
<input type="checkbox" v-model="app.cfg.general.sidebarItems.podcasts"
<input type="checkbox"
v-model="app.cfg.general.sidebarItems.podcasts"
switch/>
</label>
</div>
@ -232,7 +246,8 @@
</div>
<div class="md-option-segment md-option-segment_auto">
<label>
<input type="checkbox" v-model="app.cfg.general.themeUpdateNotification" switch />
<input type="checkbox" v-model="app.cfg.general.themeUpdateNotification"
switch/>
</label>
</div>
</div>
@ -242,7 +257,8 @@
</div>
<div class="md-option-segment md-option-segment_auto">
<label>
<input type="checkbox" v-model="app.cfg.general.showLovedTracksInline" switch />
<input type="checkbox" v-model="app.cfg.general.showLovedTracksInline"
switch/>
</label>
</div>
</div>
@ -262,7 +278,9 @@
</b-tab>
<b-tab>
<template #title>
<div><svg-icon url="./assets/feather/headphones.svg" classes="md" name="settings-audio" /></div>
<div>
<svg-icon url="./assets/feather/headphones.svg" classes="md" name="settings-audio"/>
</div>
<div>
{{ $root.getLz('settings.header.audio') }}
</div>
@ -280,11 +298,13 @@
</div>
<div class="md-option-segment md-option-segment_auto">
<label>
<select class="md-select" style="width:180px;" v-model="app.cfg.audio.quality"
<select class="md-select" style="width:180px;"
v-model="app.cfg.audio.quality"
v-on:change="changeAudioQuality">
<!-- // <option value="">{{$root.getLz('settings.header.audio.quality.hireslossless')}}</option> -->
<!-- <option value="">{{$root.getLz('settings.header.audio.quality.lossless')}}</option> -->
<option value="HIGH">{{$root.getLz('settings.header.audio.quality.high')}}
<option value="HIGH">
{{$root.getLz('settings.header.audio.quality.high')}}
({{$root.getLz('settings.header.audio.quality.high.description')}})
</option>
<option value="STANDARD">
@ -354,7 +374,8 @@
<div class="md-option-line" v-show="app.cfg.advanced.AudioContext">
<div class="md-option-segment" style="white-space: pre-line;">
{{$root.getLz('settings.option.audio.enableAdvancedFunctionality.audioNormalization')}}
<small>{{app.cfg.audio.equalizer.vibrantBass != 0 || app.cfg.audio.maikiwiAudio.spatial
<small>{{app.cfg.audio.equalizer.vibrantBass != 0 ||
app.cfg.audio.maikiwiAudio.spatial
=== true || app.cfg.audio.maikiwiAudio.ciderPPE === true ?
`${$root.getLz('settings.option.audio.enableAdvancedFunctionality.audioNormalization.description')}\n${$root.getLz('settings.option.audio.enableAdvancedFunctionality.audioNormalization.disabled')}`
:
@ -400,7 +421,9 @@
</b-tab>
<b-tab v-if="app.cfg.advanced.AudioContext">
<template #title>
<div><svg-icon url="./assets/feather/zap.svg" classes="md" name="settings-audiolabs" /></div>
<div>
<svg-icon url="./assets/feather/zap.svg" classes="md" name="settings-audiolabs"/>
</div>
<div>
{{ $root.getLz('settings.option.audio.audioLab') }}
</div>
@ -411,7 +434,9 @@
</b-tab>
<b-tab>
<template #title>
<div><svg-icon url="./assets/feather/style.svg" classes="md" name="settings-styles" /></div>
<div>
<svg-icon url="./assets/feather/style.svg" classes="md" name="settings-styles"/>
</div>
<div>
{{ $root.getLz('settings.header.visual.styles') }}
</div>
@ -422,7 +447,9 @@
</b-tab>
<b-tab>
<template #title>
<div><svg-icon url="./assets/feather/pen-tool.svg" classes="md" name="settings-visual" /></div>
<div>
<svg-icon url="./assets/feather/pen-tool.svg" classes="md" name="settings-visual"/>
</div>
<div>
{{ $root.getLz('settings.header.visual') }}
</div>
@ -450,7 +477,8 @@
</div>
<div class="md-option-segment md-option-segment_auto">
<label>
<select class="md-select" v-model="$root.cfg.visual.directives.windowLayout">
<select class="md-select"
v-model="$root.cfg.visual.directives.windowLayout">
<option value="default">Maverick</option>
<option value="twopanel">Mojave</option>
</select>
@ -484,7 +512,8 @@
</label>
</div>
</div>
<div class="md-option-line child" v-if="app.cfg.visual.window_background_style == 'color'">
<div class="md-option-line child"
v-if="app.cfg.visual.window_background_style == 'color'">
<div class="md-option-segment">
{{$root.getLz('settings.option.visual.windowColor')}}
</div>
@ -526,7 +555,8 @@
<div class="md-option-segment md-option-segment_auto">
<label>
<select class="md-select" style="width:180px;"
v-model="app.cfg.visual.hw_acceleration" @change="promptForRelaunch()">
v-model="app.cfg.visual.hw_acceleration"
@change="promptForRelaunch()">
<option value="default">
{{$root.getLz('settings.header.visual.hardwareAcceleration.default')}}
</option>
@ -561,7 +591,8 @@
</div>
<div class="md-option-segment md-option-segment_auto">
<label>
<select @change="$root.setWindowScaleFactor()" class="md-select" v-model="app.cfg.visual.maxElementScale" >
<select @change="$root.setWindowScaleFactor()" class="md-select"
v-model="app.cfg.visual.maxElementScale">
<option value="-1">Default (1.5x)</option>
<option value="1">1.0x</option>
<option value="1.1">1.1x</option>
@ -645,7 +676,8 @@
</div>
<div class="md-option-segment md-option-segment_auto">
<label>
<select class="md-select" v-model="app.cfg.visual.animated_artwork_qualityLevel">
<select class="md-select"
v-model="app.cfg.visual.animated_artwork_qualityLevel">
<option value="0">
{{$root.getLz('settings.header.visual.animatedArtworkQuality.low')}}
</option>
@ -681,7 +713,9 @@
</b-tab>
<b-tab>
<template #title>
<div><svg-icon url="./assets/feather/plugins.svg" classes="md" name="settings-plugins" /></div>
<div>
<svg-icon url="./assets/feather/plugins.svg" classes="md" name="settings-plugins"/>
</div>
<div>
{{ $root.getLz('term.plugins') }}
</div>
@ -692,7 +726,9 @@
</b-tab>
<b-tab>
<template #title>
<div><svg-icon url="./assets/feather/mic.svg" classes="md" name="settings-lyrics" /></div>
<div>
<svg-icon url="./assets/feather/mic.svg" classes="md" name="settings-lyrics"/>
</div>
<div>
{{ $root.getLz('settings.header.lyrics') }}
</div>
@ -714,7 +750,6 @@
</label>
</div>
</div>
<div class="md-option-line">
<div class="md-option-line" v-if="app.cfg.lyrics.enable_mxm">
<div class="md-option-segment">
{{$root.getLz('settings.option.lyrics.enableMusixmatchKaraoke')}}
@ -1028,7 +1063,9 @@
</b-tab>
<b-tab>
<template #title>
<div><svg-icon url="./assets/feather/radio.svg" classes="md" name="settings-connectivity" /></div>
<div>
<svg-icon url="./assets/feather/radio.svg" classes="md" name="settings-connectivity"/>
</div>
<div>
{{ $root.getLz('settings.header.connectivity') }}
</div>
@ -1047,7 +1084,8 @@
</div>
<div class="md-option-segment md-option-segment_auto">
<label>
<input type="checkbox" v-model="app.cfg.general.playbackNotifications" switch />
<input type="checkbox" v-model="app.cfg.general.playbackNotifications"
switch/>
</label>
</div>
</div>
@ -1059,7 +1097,8 @@
</div>
<div class="md-option-segment md-option-segment_auto">
<label>
<input type="checkbox" v-model="app.cfg.connectivity.discord_rpc.enabled" switch />
<input type="checkbox" v-model="app.cfg.connectivity.discord_rpc.enabled"
switch/>
</label>
</div>
</div>
@ -1085,7 +1124,8 @@
</div>
<div class="md-option-segment md-option-segment_auto">
<label>
<input type="checkbox" v-model="app.cfg.connectivity.discord_rpc.clear_on_pause" switch />
<input type="checkbox"
v-model="app.cfg.connectivity.discord_rpc.clear_on_pause" switch/>
</label>
</div>
</div>
@ -1096,7 +1136,8 @@
</div>
<div class="md-option-segment md-option-segment_auto">
<label>
<input type="checkbox" v-model="app.cfg.connectivity.discord_rpc.hide_buttons" switch />
<input type="checkbox"
v-model="app.cfg.connectivity.discord_rpc.hide_buttons" switch/>
</label>
</div>
</div>
@ -1107,7 +1148,8 @@
</div>
<div class="md-option-segment md-option-segment_auto">
<label>
<input type="checkbox" v-model="app.cfg.connectivity.discord_rpc.hide_timestamp" switch />
<input type="checkbox"
v-model="app.cfg.connectivity.discord_rpc.hide_timestamp" switch/>
</label>
</div>
</div>
@ -1115,12 +1157,14 @@
<div class="md-option-line" v-show="app.cfg.connectivity.discord_rpc.enabled != false">
<div class="md-option-segment">
{{$root.getLz('settings.option.connectivity.discordRPC.detailsFormat')}}<br/>
<small>{{$root.getLz('term.variables')}}: {artist}, {composer}, {title}, {album},
<small>{{$root.getLz('term.variables')}}: {artist}, {composer}, {title},
{album},
{trackNumber}</small>
</div>
<div class="md-option-segment md-option-segment_auto">
<label>
<input type="text" v-model="app.cfg.connectivity.discord_rpc.details_format" />
<input type="text"
v-model="app.cfg.connectivity.discord_rpc.details_format"/>
</label>
</div>
</div>
@ -1128,7 +1172,8 @@
<div class="md-option-line" v-show="app.cfg.connectivity.discord_rpc.enabled != false">
<div class="md-option-segment">
{{$root.getLz('settings.option.connectivity.discordRPC.stateFormat')}}
<small>{{$root.getLz('term.variables')}}: {artist}, {composer}, {title}, {album},
<small>{{$root.getLz('term.variables')}}: {artist}, {composer}, {title},
{album},
{trackNumber}</small>
</div>
<div class="md-option-segment md-option-segment_auto">
@ -1155,9 +1200,13 @@
{{$root.getLz('settings.option.connectivity.lastfmScrobble')}}
</div>
<div class="md-option-segment md-option-segment_auto">
<button class="md-btn" id="lfmConnect" @click="app.cfg.connectivity.lastfm.enabled ? lfmDisconnect() : lfmAuthorize()">
{{$root.getLz(`term.${$root.cfg.connectivity.lastfm.enabled ? "disconnect" : "connect"}`)}}<br>
<small>{{app.cfg.connectivity.lastfm.enabled ? `${$root.getLz('term.authed')}: ${$root.cfg.connectivity.lastfm.secrets.username}` : '' }}</small>
<button class="md-btn" id="lfmConnect"
@click="app.cfg.connectivity.lastfm.enabled ? lfmDisconnect() : lfmAuthorize()">
{{$root.getLz(`term.${$root.cfg.connectivity.lastfm.enabled ? "disconnect" :
"connect"}`)}}<br>
<small>{{app.cfg.connectivity.lastfm.enabled ?
`${$root.getLz('term.authed')}:
${$root.cfg.connectivity.lastfm.secrets.username}` : '' }}</small>
</button>
</div>
</div>
@ -1169,7 +1218,8 @@
<label>
<form @submit.prevent="submitToken">
<input type="text" autofocus id="lfmToken"/>
<input type="submit" class="md-btn" @value="$root.getLz('action.submit')" />
<input type="submit" class="md-btn"
@value="$root.getLz('action.submit')"/>
</form>
</label>
</div>
@ -1180,7 +1230,8 @@
</div>
<div class="md-option-segment md-option-segment_auto">
<label>
<input type="number" min="50" max="100" v-model="app.cfg.connectivity.lastfm.scrobble_after"/>
<input type="number" min="50" max="100"
v-model="app.cfg.connectivity.lastfm.scrobble_after"/>
</label>
</div>
</div>
@ -1191,7 +1242,8 @@
</div>
<div class="md-option-segment md-option-segment_auto">
<label>
<input type="checkbox" v-model="app.cfg.connectivity.lastfm.filter_loop" switch/>
<input type="checkbox" v-model="app.cfg.connectivity.lastfm.filter_loop"
switch/>
</label>
</div>
</div>
@ -1212,7 +1264,9 @@
</b-tab>
<b-tab>
<template #title>
<div><svg-icon url="./assets/feather/hard-drive.svg" classes="md" name="settings-advanced" /></div>
<div>
<svg-icon url="./assets/feather/hard-drive.svg" classes="md" name="settings-advanced"/>
</div>
<div>
{{$root.getLz('settings.header.advanced')}}
</div>
@ -1323,7 +1377,8 @@
</div>
<div class="md-option-segment md-option-segment_auto">
<label>
<input type="checkbox" v-model="app.cfg.advanced.experiments.includes('ampv3')"
<input type="checkbox"
v-model="app.cfg.advanced.experiments.includes('ampv3')"
@click="app.cfg.advanced.experiments.includes('ampv3') ? removeExperiment('ampv3') : addExperiment('ampv3')"
switch/>
</label>
@ -1338,7 +1393,8 @@
</div>
<div class="md-option-segment md-option-segment_auto">
<label>
<input type="checkbox" v-model="app.cfg.advanced.playlistTrackMapping" switch />
<input type="checkbox" v-model="app.cfg.advanced.playlistTrackMapping"
switch/>
</label>
</div>
</div>
@ -1349,7 +1405,8 @@
</div>
<div class="md-option-segment md-option-segment_auto">
<label>
<input type="checkbox" v-model="app.cfg.advanced.experiments.includes('localLibrary')"
<input type="checkbox"
v-model="app.cfg.advanced.experiments.includes('localLibrary')"
@click="app.cfg.advanced.experiments.includes('localLibrary') ? removeExperiment('localLibrary') : addExperiment('localLibrary')"
switch/>
</label>
@ -1364,7 +1421,8 @@
</div>
<div class="md-option-segment md-option-segment_auto">
<label>
<input type="checkbox" v-model="app.cfg.advanced.experiments.includes('compactui')"
<input type="checkbox"
v-model="app.cfg.advanced.experiments.includes('compactui')"
@click="app.cfg.advanced.experiments.includes('compactui') ? removeExperiment('compactui') : addExperiment('compactui')"
switch :disabled="!!app.getThemeDirective('forceUI')"/>
</label>