34 lines
696 B
JavaScript
34 lines
696 B
JavaScript
import {proxy} from "valtio";
|
|
import API from "../services/api"
|
|
import Database from '../db'
|
|
|
|
const state = proxy({
|
|
tasks: [],
|
|
newTaskBadge: 0
|
|
})
|
|
|
|
|
|
const getTasksFromDB = () => {
|
|
state.tasks.length = 0
|
|
state.tasks.push(
|
|
...Database.getAllKeys()
|
|
.filter(key => key.startsWith('task.'))
|
|
.map(key => JSON.parse(Database.getString(key)))
|
|
)
|
|
}
|
|
|
|
export const getTasks = async () => {
|
|
API.getTasks()
|
|
.then(() => getTasksFromDB())
|
|
.catch(() => {
|
|
console.log("No internet connection")
|
|
getTasksFromDB()
|
|
})
|
|
}
|
|
|
|
|
|
export const increaseNewTaskBadge = () => {
|
|
state.newTaskBadge++
|
|
}
|
|
|
|
export default state; |