52 lines
898 B
TypeScript
52 lines
898 B
TypeScript
import { proxy } from 'valtio'
|
|
|
|
/**
|
|
* Types
|
|
*/
|
|
interface State {
|
|
testNets: boolean
|
|
account: number
|
|
eip155Address: string
|
|
cosmosAddress: string
|
|
}
|
|
|
|
/**
|
|
* State
|
|
*/
|
|
const state = proxy<State>({
|
|
testNets: typeof localStorage !== 'undefined' ? Boolean(localStorage.getItem('TEST_NETS')) : true,
|
|
account: 0,
|
|
eip155Address: '',
|
|
cosmosAddress: ''
|
|
})
|
|
|
|
/**
|
|
* Store / Actions
|
|
*/
|
|
const SettingsStore = {
|
|
state,
|
|
|
|
setAccount(value: number) {
|
|
state.account = value
|
|
},
|
|
|
|
setEIP155Address(eip155Address: string) {
|
|
state.eip155Address = eip155Address
|
|
},
|
|
|
|
setCosmosAddress(cosmosAddresses: string) {
|
|
state.cosmosAddress = cosmosAddresses
|
|
},
|
|
|
|
toggleTestNets() {
|
|
state.testNets = !state.testNets
|
|
if (state.testNets) {
|
|
localStorage.setItem('TEST_NETS', 'YES')
|
|
} else {
|
|
localStorage.removeItem('TEST_NETS')
|
|
}
|
|
}
|
|
}
|
|
|
|
export default SettingsStore
|