|
|
@ -5,35 +5,35 @@ import api from '../api-stub.js';
|
|
|
|
const load_notes = function(state, dispatch){
|
|
|
|
const load_notes = function(state, dispatch){
|
|
|
|
api.post('/load-notes', {bin_id: state.bin.id})
|
|
|
|
api.post('/load-notes', {bin_id: state.bin.id})
|
|
|
|
.then(res=>{
|
|
|
|
.then(res=>{
|
|
|
|
dispatch({type: 'notes-loaded', payload: res.notes});
|
|
|
|
dispatch('notes-loaded', res.notes);
|
|
|
|
});
|
|
|
|
});
|
|
|
|
};
|
|
|
|
};
|
|
|
|
const runSearch = function(state, dispatch){
|
|
|
|
const runSearch = function(state, dispatch){
|
|
|
|
api.post('/search', {search_term: state.search_term, sorting: state.sorting, bin_id: state.bin.id})
|
|
|
|
api.post('/search', {search_term: state.search_term, sorting: state.sorting, bin_id: state.bin.id})
|
|
|
|
.then(res=>{
|
|
|
|
.then(res=>{
|
|
|
|
dispatch({type:'update-search-results', payload: res.notes});
|
|
|
|
dispatch('update-search-results', res.notes);
|
|
|
|
});
|
|
|
|
});
|
|
|
|
};
|
|
|
|
};
|
|
|
|
const new_note_handler = function(state, dispatch){
|
|
|
|
const new_note_handler = function(state, dispatch){
|
|
|
|
dispatch({type:'add-note', payload:{id: nanoid(), date: Date.now()}});
|
|
|
|
dispatch('add-note', {id: nanoid(), date: Date.now()});
|
|
|
|
};
|
|
|
|
};
|
|
|
|
const search_term_change_handler = function(state, dispatch, e){
|
|
|
|
const search_term_change_handler = function(state, dispatch, e){
|
|
|
|
if(e.code === 'Enter'){
|
|
|
|
if(e.code === 'Enter'){
|
|
|
|
runSearch(state, dispatch);
|
|
|
|
runSearch(state, dispatch);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
else{
|
|
|
|
else{
|
|
|
|
dispatch({type:'update-search-term', payload: e.target.value});
|
|
|
|
dispatch('update-search-term', e.target.value);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
};
|
|
|
|
};
|
|
|
|
const sorting_change_handler = function(state, dispatch, e){
|
|
|
|
const sorting_change_handler = function(state, dispatch, e){
|
|
|
|
runSearch(state, dispatch);
|
|
|
|
runSearch(state, dispatch);
|
|
|
|
dispatch({type:'update-sorting', payload: e.target.value});
|
|
|
|
dispatch('update-sorting', e.target.value);
|
|
|
|
};
|
|
|
|
};
|
|
|
|
const new_bin_handler = function(state, dispatch){
|
|
|
|
const new_bin_handler = function(state, dispatch){
|
|
|
|
const id = nanoid();
|
|
|
|
const id = nanoid();
|
|
|
|
// TODO: consolidate: this will cause two redraws:
|
|
|
|
// TODO: consolidate: this will cause two redraws:
|
|
|
|
dispatch({type: 'new-bin', payload:{id}});
|
|
|
|
dispatch('new-bin', {id});
|
|
|
|
dispatch({type: 'notes-loaded', payload: []});
|
|
|
|
dispatch('notes-loaded', []);
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
export {new_note_handler, search_term_change_handler, sorting_change_handler, load_notes, new_bin_handler};
|
|
|
|
export {new_note_handler, search_term_change_handler, sorting_change_handler, load_notes, new_bin_handler};
|