11import arrayMove from 'array-move'
22import { Occupation } from 'src/features/onboarding/types'
3- import { Tag } from 'src/features/remoteConfig'
3+ import { Tag , useRemoteConfigStore } from 'src/features/remoteConfig'
44import { enhanceTags } from 'src/utils/DataEnhancement'
55import { create } from 'zustand'
66import { StateStorage , createJSONStorage , persist } from 'zustand/middleware'
@@ -33,7 +33,6 @@ export type UserPreferencesState = {
3333}
3434
3535type UserPreferencesStoreActions = {
36- initState : ( newState : UserPreferencesState ) => void
3736 setTheme : ( theme : Theme ) => void
3837 setSearchEngine : ( theme : string ) => void
3938 setOpenLinksNewTab : ( openLinksNewTab : boolean ) => void
@@ -55,8 +54,11 @@ type UserPreferencesStoreActions = {
5554const defaultStorage : StateStorage = {
5655 getItem : ( name : string ) => {
5756 const item = window . localStorage . getItem ( name )
57+ if ( ! item ) {
58+ return null
59+ }
5860
59- if ( item ) {
61+ try {
6062 let {
6163 version,
6264 state,
@@ -65,14 +67,21 @@ const defaultStorage: StateStorage = {
6567 state : UserPreferencesState
6668 } = JSON . parse ( item )
6769
70+ const remoteConfigStore = useRemoteConfigStore . getState ( )
71+
6872 const newState = {
6973 ...state ,
70- userSelectedTags : enhanceTags ( state . userSelectedTags as unknown as string [ ] ) ,
74+ userSelectedTags : enhanceTags (
75+ remoteConfigStore ,
76+ state . userSelectedTags as unknown as string [ ]
77+ ) ,
7178 }
79+
7280 return JSON . stringify ( { state : newState , version } )
81+ } catch ( e ) {
82+ console . log ( 'Error getting item' , e )
83+ return null
7384 }
74-
75- return null
7685 } ,
7786 setItem : ( name : string , value : string ) => {
7887 try {
0 commit comments