Add new connection page to support multiple server connection configs

This commit is contained in:
advplyr
2022-04-03 14:24:17 -05:00
parent 7a091dd428
commit f57f0e4e0d
30 changed files with 789 additions and 1284 deletions
+14 -10
View File
@@ -1,5 +1,6 @@
export const state = () => ({
user: null,
serverConnectionConfig: null,
userAudiobookData: [],
settings: {
mobileOrderBy: 'addedAt',
@@ -20,6 +21,9 @@ export const getters = {
getToken: (state) => {
return state.user ? state.user.token : null
},
getServerAddress: (state) => {
return state.serverConnectionConfig ? state.serverConnectionConfig.address : null
},
getUserLibraryItemProgress: (state) => (libraryItemId) => {
if (!state.user.libraryItemProgress) return null
return state.user.libraryItemProgress.find(li => li.id == libraryItemId)
@@ -102,6 +106,16 @@ export const actions = {
}
export const mutations = {
logout(state) {
state.user = null
state.serverConnectionConfig = null
},
setUser(state, user) {
state.user = user
},
setServerConnectionConfig(state, serverConnectionConfig) {
state.serverConnectionConfig = serverConnectionConfig
},
setUserAudiobookData(state, abdata) {
var index = state.userAudiobookData.findIndex(uab => uab.audiobookId === abdata.audiobookId)
if (index >= 0) {
@@ -116,16 +130,6 @@ export const mutations = {
setAllUserAudiobookData(state, allAbData) {
state.userAudiobookData = allAbData
},
setUser(state, user) {
state.user = user
if (user) {
if (user.token) this.$localStore.setToken(user.token)
console.log('setUser', user.username)
} else {
this.$localStore.setToken(null)
console.warn('setUser cleared')
}
},
setSettings(state, settings) {
if (!settings) return