Further composition api update: return hash to separate functions, rather than pre-hashing into emailSelection and returning

This commit is contained in:
Jeffrey Biles
2020-04-14 06:13:41 -07:00
parent c58f792d7e
commit 29aea22285

View File

@@ -13,29 +13,33 @@ export const useEmailSelection = function(){
const clear = () => { const clear = () => {
emails.clear(); emails.clear();
} }
const toggle = (id) => {
if(emails.has(id)) {
emails.delete(id)
} else {
emails.add(id);
}
}
const addMultiple = (emails) => {
emails.forEach(email => {
emails.add(email)
})
}
const markRead = () => { forSelected(e => e.read = true )}
const markUnread = () => { forSelected(e => e.read = false )}
const archive = () => { forSelected(e => e.archived = true); clear();}
const moveToInbox = () => { forSelected(e => e.archived = false); clear();}
const emailSelection = { return {
emails, emails,
clear, clear,
toggle(id) { toggle,
if(emails.has(id)) { addMultiple,
emails.delete(id) markRead,
} else { markUnread,
emails.add(id); archive,
} moveToInbox
},
addMultiple(emails) {
emails.forEach(email => {
emails.add(email)
})
},
markRead(){ forSelected(e => e.read = true )},
markUnread(){ forSelected(e => e.read = false )},
archive(){ forSelected(e => e.archived = true); clear();},
moveToInbox(){ forSelected(e => e.archived = false); clear();}
} }
return emailSelection
} }
export default useEmailSelection; export default useEmailSelection;