function * updateParams () {
	// Select all the things
	const activeState = yield select((state) => state.active);
	const currentList = yield select((state) => state.lists.currentList);
	const location = yield select((state) => state.routing.locationBeforeTransitions);
	const { index } = yield select((state) => state.lists.page);

	// Get the data into the right format, set the defaults
	let sort = createSortQueryParams(activeState.sort.rawInput, currentList.defaultSort);
	let page = createPageQueryParams(index, 1);

	let columns = stringifyColumns(activeState.columns, currentList.defaultColumnPaths);
	let search = activeState.search;

	let filters = parametizeFilters(activeState.filters);

	const newParams = updateQueryParams({
		page,
		columns,
		sort,
		search,
		filters,
	}, location);

	// TODO: Starting or clearing a search pushes a new history state, but updating
	// the current search replaces it for nicer history navigation support

	yield put({ type: actions.REPLACE_CACHED_QUERY, cachedQuery: newParams });
	yield * urlUpdate(newParams, activeState.cachedQuery, location.pathname);
	yield put(loadItems());
}
Update the query params based on the current state