Sha256: 0c0b2675ae5ea099fe68dc9f09d39dd9ab71789004f8772c22e5327db57aebc3
Contents?: true
Size: 1.49 KB
Versions: 9
Compression:
Stored size: 1.49 KB
Contents
import { getURIQuery } from 'foremanReact/common/helpers'; import { TASKS_DASHBOARD_AVAILABLE_TIMES, TASKS_DASHBOARD_QUERY_KEYS_TEXT, TASKS_DASHBOARD_QUERY_VALUES_TEXT, } from './TasksDashboardConstants'; import { updateURlQuery } from '../TasksTable/TasksTableHelpers'; export const getQueryKeyText = key => TASKS_DASHBOARD_QUERY_KEYS_TEXT[key]; export const getQueryValueText = value => TASKS_DASHBOARD_QUERY_VALUES_TEXT[value]; export const timeToHoursNumber = time => { switch (time) { case TASKS_DASHBOARD_AVAILABLE_TIMES.H12: return 12; case TASKS_DASHBOARD_AVAILABLE_TIMES.H24: return 24; case TASKS_DASHBOARD_AVAILABLE_TIMES.WEEK: return 24 * 7; default: return 24; } }; const uriToQueryMap = { state: 'state', result: 'result', time_mode: 'mode', time_horizon: 'time', }; const queryFromUriQuery = uriQuery => { const query = {}; Object.entries(uriToQueryMap).forEach(([uriField, queryField]) => { if (uriQuery[uriField]) query[queryField] = uriQuery[uriField]; }); if (query.mode === 'recent') { query.mode = 'last'; } return query; }; export const getQueryFromUrl = () => { const uriQuery = getURIQuery(window.location.href); return queryFromUriQuery(uriQuery); }; export const resolveQuery = ({ state, result, mode, time }, history) => { const uriQuery = { state, result, time_mode: mode === 'last' ? 'recent' : mode, time_horizon: time, page: 1, }; updateURlQuery(uriQuery, history); };
Version data entries
9 entries across 9 versions & 1 rubygems