diff --git a/web/src/css/flowtable.less b/web/src/css/flowtable.less index e258814a4..c251ff888 100644 --- a/web/src/css/flowtable.less +++ b/web/src/css/flowtable.less @@ -64,6 +64,9 @@ &.selected { background-color: #e0ebf5 !important; } + &.selected.highlighted { + background-color: #7bbefc !important; + } &.highlighted { background-color: #ffeb99; diff --git a/web/src/js/__tests__/urlStateSpec.tsx b/web/src/js/__tests__/urlStateSpec.tsx index 9f48da761..31a0d8c53 100644 --- a/web/src/js/__tests__/urlStateSpec.tsx +++ b/web/src/js/__tests__/urlStateSpec.tsx @@ -83,7 +83,7 @@ describe('updateUrlFromStore', () => { }, store = mockStore(state) updateUrlFromStore(store) - expect(history.replaceState).toBeCalledWith(undefined, '', '/#/flows/123/request?s=~u foo') + expect(history.replaceState).toBeCalledWith(undefined, '', '/#/flows/123/request?s=~u%20foo') }) }) diff --git a/web/src/js/urlState.ts b/web/src/js/urlState.ts index 4bb8796f4..cd82d0436 100644 --- a/web/src/js/urlState.ts +++ b/web/src/js/urlState.ts @@ -33,7 +33,8 @@ export function updateStoreFromUrl(store) { query .split("&") .forEach((x) => { - const [key, value] = x.split("=", 2) + let [key, value] = x.split("=", 2) + value = decodeURIComponent(value) switch (key) { case Query.SEARCH: store.dispatch(setFilter(value)) @@ -66,7 +67,7 @@ export function updateUrlFromStore(store) { } const queryStr = Object.keys(query) .filter(k => query[k]) - .map(k => `${k}=${query[k]}`) + .map(k => `${k}=${encodeURIComponent(query[k])}`) .join("&") let url