35 lines
860 B
JavaScript
35 lines
860 B
JavaScript
|
import {proxy} from "valtio";
|
||
|
import Database from "../db";
|
||
|
import Api from "../services/api";
|
||
|
|
||
|
const store = proxy({
|
||
|
events: [],
|
||
|
eventTasks: []
|
||
|
})
|
||
|
|
||
|
export default store
|
||
|
|
||
|
const getEventsFromDB = () => {
|
||
|
store.events.length = 0
|
||
|
store.events.push(
|
||
|
...Database.getAllKeys()
|
||
|
.filter(key => key.startsWith('event.'))
|
||
|
.map(key => JSON.parse(Database.getString(key)))
|
||
|
)
|
||
|
}
|
||
|
|
||
|
const getEventsTaskFromDB = () => {
|
||
|
store.eventTasks.length = 0
|
||
|
store.eventTasks.push(
|
||
|
...Database.getAllKeys()
|
||
|
.filter(key => key.startsWith('tevents_task.'))
|
||
|
.map(key => JSON.parse(Database.getString(key)))
|
||
|
)}
|
||
|
|
||
|
export const getEvents = () => {
|
||
|
Api.getEvents()
|
||
|
.then(() => Api.getEventsTask())
|
||
|
.then(() => {getEventsFromDB(); getEventsTaskFromDB()})
|
||
|
}
|
||
|
|
||
|
// export const addEvent
|