Files
Pinry/pinry-spa/src/components/api.js

39 lines
800 B
JavaScript
Raw Normal View History

2019-11-22 19:12:02 +08:00
import axios from 'axios';
const API_PREFIX = '/api/v2/';
function fetchPins(offset, tagFilter, userFilter) {
const url = `${API_PREFIX}pins/`;
const queryArgs = {
format: 'json',
ordering: '-id',
2019-11-29 12:26:50 +08:00
limit: 30,
2019-11-22 19:12:02 +08:00
offset,
};
if (tagFilter) queryArgs.tags__name = tagFilter;
if (userFilter) queryArgs.submitter__username = userFilter;
return axios.get(
url,
{ params: queryArgs },
);
}
2019-11-28 23:12:19 +08:00
function fetchPinsForBoard(boardId) {
const url = `${API_PREFIX}boards/${boardId}`;
return new Promise(
(resolve, reject) => {
axios.get(url).then(
(resp) => {
2019-11-29 00:16:28 +08:00
resolve({ data: { results: resp.data.pins_detail, next: null } });
2019-11-28 23:12:19 +08:00
},
error => reject(error),
);
},
);
}
2019-11-22 19:12:02 +08:00
export default {
fetchPins,
2019-11-28 23:12:19 +08:00
fetchPinsForBoard,
2019-11-22 19:12:02 +08:00
};