fetching mailboxes from api
This commit is contained in:
@@ -1,3 +1,4 @@
|
||||
import API from "@/services/imapAPI";
|
||||
import { createStore } from "vuex";
|
||||
|
||||
const roomsStore = createStore({
|
||||
@@ -29,23 +30,36 @@ const roomsStore = createStore({
|
||||
mailbox: 2,
|
||||
},
|
||||
],
|
||||
mailboxes: [
|
||||
{ mail: "mail@domain.com", id: 1 },
|
||||
{ mail: "name@example.com", id: 2 },
|
||||
],
|
||||
mailboxes: [],
|
||||
activeMailbox: -1
|
||||
};
|
||||
},
|
||||
mutations: {
|
||||
setActiveMailbox(state, payload) {
|
||||
state.activeMailbox = payload;
|
||||
},
|
||||
addMailboxes(state, payload) {
|
||||
payload.forEach(mailbox => {
|
||||
state.mailboxes.push(mailbox);
|
||||
});
|
||||
}
|
||||
},
|
||||
getters: {
|
||||
folderRooms: (state) => () => {
|
||||
if (state.activeMailbox == -1) return state.rooms;
|
||||
rooms: (state) => () => {
|
||||
if (state.activeMailbox == 0) return state.rooms;
|
||||
return state.rooms.filter(room => room.mailbox == state.activeMailbox);
|
||||
}
|
||||
},
|
||||
actions: {
|
||||
async addMailboxes(context) {
|
||||
console.log("add mailboxes")
|
||||
API.getMailboxes().then((res) => {
|
||||
console.log(res.data)
|
||||
context.commit("addMailboxes", res.data);
|
||||
}).catch((err) => {
|
||||
console.log(err)
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
Reference in New Issue
Block a user