Sha256: 208400a0b052bc55f89f8acc681ce05a4f82705dea85aba9c1e40c643bedcffc

Contents?: true

Size: 1.07 KB

Versions: 56

Compression:

Stored size: 1.07 KB

Contents

import URI from 'urijs';
import { useForemanSettings } from 'foremanReact/Root/Context/ForemanContext';

const parsePageParams = history => URI.parseQuery(history.location.search);

export const addSearch = (basePath, params) => {
  let stringyfied = '';
  if (Object.keys(params).length > 0) {
    stringyfied = `?${URI.buildQuery(params)}`;
  }

  return `${basePath}${stringyfied}`;
};

export const useCurrentPagination = (
  history,
  keys = { page: 'page', perPage: 'per_page' }
) => {
  const pageParams = parsePageParams(history);
  const uiSettings = useForemanSettings();

  return {
    [keys.page]: parseInt(pageParams[keys.page], 10) || 1,
    [keys.perPage]:
      parseInt(pageParams[keys.perPage], 10) || uiSettings.perPage,
  };
};

export const pageToVars = (
  pagination,
  keys = { page: 'page', perPage: 'per_page' }
) => ({
  first: pagination[keys.page] * pagination[keys.perPage],
  last: pagination[keys.perPage],
});

export const useParamsToVars = (
  history,
  keys = { page: 'page', perPage: 'per_page' }
) => pageToVars(useCurrentPagination(history, keys), keys);

Version data entries

56 entries across 56 versions & 1 rubygems

Version Path
foreman_ansible-15.0.5 webpack/helpers/pageParamsHelper.js
foreman_ansible-15.0.4 webpack/helpers/pageParamsHelper.js
foreman_ansible-15.0.3 webpack/helpers/pageParamsHelper.js
foreman_ansible-15.0.2 webpack/helpers/pageParamsHelper.js
foreman_ansible-15.0.1 webpack/helpers/pageParamsHelper.js
foreman_ansible-15.0.0 webpack/helpers/pageParamsHelper.js
foreman_ansible-14.2.2 webpack/helpers/pageParamsHelper.js
foreman_ansible-14.2.1 webpack/helpers/pageParamsHelper.js
foreman_ansible-13.0.7 webpack/helpers/pageParamsHelper.js
foreman_ansible-14.2.0 webpack/helpers/pageParamsHelper.js
foreman_ansible-14.1.1 webpack/helpers/pageParamsHelper.js
foreman_ansible-14.1.0 webpack/helpers/pageParamsHelper.js
foreman_ansible-13.0.5 webpack/helpers/pageParamsHelper.js
foreman_ansible-14.0.0 webpack/helpers/pageParamsHelper.js
foreman_ansible-13.0.4 webpack/helpers/pageParamsHelper.js
foreman_ansible-13.0.3 webpack/helpers/pageParamsHelper.js
foreman_ansible-13.0.2 webpack/helpers/pageParamsHelper.js
foreman_ansible-13.0.1 webpack/helpers/pageParamsHelper.js
foreman_ansible-13.0.0 webpack/helpers/pageParamsHelper.js
foreman_ansible-12.0.7 webpack/helpers/pageParamsHelper.js