Sha256: a9d5c59f979dcdb254e596b459a3840dfeb66060aedb6e450e1868ed4158a407
Contents?: true
Size: 1.12 KB
Versions: 9
Compression:
Stored size: 1.12 KB
Contents
import history from 'foremanReact/history'; import { get } from 'foremanReact/redux/API'; import { stringifyParams } from 'foremanReact/common/urlHelpers'; import { buildQuery } from './WebhooksPageHelpers'; import { WEBHOOKS_API_PATH, WEBHOOKS_PATH, WEBHOOKS_API_REQUEST_KEY, } from './constants'; export const fetchWebhooks = ( /* eslint-disable-next-line camelcase */ { page, per_page, searchQuery, sort }, url = WEBHOOKS_API_PATH ) => async dispatch => { const sortString = sort && Object.keys(sort).length > 0 ? `${sort.by} ${sort.order}` : ''; return dispatch( get({ key: WEBHOOKS_API_REQUEST_KEY, url, params: { page, per_page, search: searchQuery, order: sortString, }, }) ); }; export const fetchAndPush = (params = {}) => (dispatch, getState) => { const query = buildQuery(params, getState()); dispatch(fetchWebhooks(query)); history.push({ pathname: WEBHOOKS_PATH, search: stringifyParams({ perPage: query.per_page, ...query }), }); }; export const reloadWithSearch = query => fetchAndPush({ searchQuery: query, page: 1 });
Version data entries
9 entries across 9 versions & 1 rubygems