@@ -43,6 +43,7 @@ export const useSimklStore = defineStore(SimklStoreConstants.Store, () => {
43
43
const simklAllowed = computed ( ( ) => [ 'dvcol' , 'Anshur' ] . includes ( user . value ) ) ;
44
44
const userSetting = computed ( ( ) => userSettings [ user . value ] ) ;
45
45
const userSettingLoading = computed ( ( ) => loading ?. [ user . value ] ) ;
46
+ const userEnabled = computed ( ( ) => simklEnabled [ user . value ] ) ;
46
47
47
48
const saveState = debounce ( ( ) =>
48
49
storage . local . set < SimklStoreState > ( SimklStoreConstants . Store , {
@@ -55,6 +56,13 @@ export const useSimklStore = defineStore(SimklStoreConstants.Store, () => {
55
56
if ( state ?. simklEnabled !== undefined ) Object . assign ( simklEnabled , state . simklEnabled ) ;
56
57
} ;
57
58
59
+ const setUserEnabled = ( value : boolean , account = user . value ) => {
60
+ if ( ! account ) throw new Error ( 'Account is not set' ) ;
61
+ simklEnabled [ account ] = value ;
62
+ saveState ( ) . catch ( err => Logger . error ( 'Failed to save simkl state' , { value, err } ) ) ;
63
+ return userEnabled . value ;
64
+ } ;
65
+
58
66
/**
59
67
* Change the current user settings for a specific account
60
68
* @param _settings
@@ -96,7 +104,7 @@ export const useSimklStore = defineStore(SimklStoreConstants.Store, () => {
96
104
} ;
97
105
98
106
const fetchShow = async ( id : string ) => {
99
- if ( ! simklEnabled . value ) {
107
+ if ( ! userEnabled . value ) {
100
108
Logger . error ( 'Cannot fetch show, simkl is not enabled' ) ;
101
109
return ;
102
110
}
@@ -117,7 +125,7 @@ export const useSimklStore = defineStore(SimklStoreConstants.Store, () => {
117
125
} ;
118
126
119
127
const fetchAnime = async ( id : string ) => {
120
- if ( ! simklEnabled . value ) {
128
+ if ( ! userEnabled . value ) {
121
129
Logger . error ( 'Cannot fetch anime, simkl is not enabled' ) ;
122
130
return ;
123
131
}
@@ -138,7 +146,7 @@ export const useSimklStore = defineStore(SimklStoreConstants.Store, () => {
138
146
} ;
139
147
140
148
const fetchMovie = async ( id : string ) => {
141
- if ( ! simklEnabled . value ) {
149
+ if ( ! userEnabled . value ) {
142
150
Logger . error ( 'Cannot fetch movie, simkl is not enabled' ) ;
143
151
return ;
144
152
}
@@ -180,11 +188,8 @@ export const useSimklStore = defineStore(SimklStoreConstants.Store, () => {
180
188
setUserSetting,
181
189
simklAllowed,
182
190
simklEnabled : computed ( {
183
- get : ( ) => simklAllowed . value && simklEnabled [ user . value ] ,
184
- set : ( value : boolean ) => {
185
- simklEnabled [ user . value ] = value ;
186
- saveState ( ) . catch ( err => Logger . error ( 'Failed to save simkl state' , { value, err } ) ) ;
187
- } ,
191
+ get : ( ) => simklAllowed . value && userEnabled . value ,
192
+ set : ( value : boolean ) => setUserEnabled ( value ) ,
188
193
} ) ,
189
194
initSimklStore,
190
195
fetchShow,
0 commit comments