1
0
mirror of https://github.com/alice-lg/alice-lg.git synced 2024-05-11 05:55:03 +00:00

57 lines
1.1 KiB
React
Raw Normal View History

2017-05-16 13:34:00 +02:00
/*
2017-06-26 15:35:54 +02:00
* Prefix lookup actions
2017-05-16 13:34:00 +02:00
*/
2017-06-26 15:35:54 +02:00
import axios from 'axios'
2017-05-16 13:34:00 +02:00
2017-06-26 15:35:54 +02:00
export const LOAD_RESULTS_REQUEST = '@lookup/LOAD_RESULTS_REQUEST';
export const LOAD_RESULTS_SUCCESS = '@lookup/LOAD_RESULTS_SUCCESS';
export const LOAD_RESULTS_ERROR = '@lookup/LOAD_RESULTS_ERROR';
2017-05-16 13:34:00 +02:00
2017-06-26 15:35:54 +02:00
// Action creators
export function loadResultsRequest(query) {
return {
type: LOAD_RESULTS_REQUEST,
payload: {
query: query
2017-05-16 13:34:00 +02:00
}
2017-06-26 15:35:54 +02:00
}
2017-05-16 13:34:00 +02:00
}
2017-06-26 15:35:54 +02:00
export function loadResultsSuccess(query, results) {
return {
type: LOAD_RESULTS_SUCCESS,
payload: {
query: query,
results: results
2017-05-16 13:34:00 +02:00
}
2017-06-26 15:35:54 +02:00
}
2017-05-16 13:34:00 +02:00
}
2017-06-26 15:35:54 +02:00
export function loadResultsError(query, error) {
return {
type: LOAD_RESULTS_ERROR,
payload: {
query: query,
error: error
2017-05-16 13:34:00 +02:00
}
2017-06-26 15:35:54 +02:00
}
2017-05-16 13:34:00 +02:00
}
2017-06-28 17:36:16 +02:00
export function loadResults(query, limit=100, offset=0) {
2017-06-26 15:35:54 +02:00
return (dispatch) => {
dispatch(loadResultsRequest(query));
2017-05-16 13:34:00 +02:00
2017-06-28 14:02:54 +02:00
axios.get(`/api/lookup/prefix?q=${query}&limit=${limit}&offset=${offset}`)
2017-06-26 15:35:54 +02:00
.then((res) => {
dispatch(loadResultsSuccess(query, res.data));
})
.catch((error) => {
dispatch(loadResultsError(query, error));
});
}
2017-05-16 13:34:00 +02:00
}