Skip to content

Commit

Permalink
fix(9656): stores all states except workflows, fixes #9656 (#9846)
Browse files Browse the repository at this point in the history
Signed-off-by: Athitya Kumar <athityakumar@gmail.com>
Co-authored-by: Saravanan Balasubramanian <33908564+sarabala1979@users.noreply.github.com>
  • Loading branch information
athityakumar and sarabala1979 committed Nov 28, 2022
1 parent b5dbd00 commit 225cd97
Showing 1 changed file with 21 additions and 3 deletions.
Expand Up @@ -18,7 +18,7 @@ import {services} from '../../../shared/services';
import {Utils} from '../../../shared/utils';
import {ArchivedWorkflowFilters} from '../archived-workflow-filters/archived-workflow-filters';

interface State {
interface BrowserStorageOptions {
pagination: Pagination;
namespace: string;
name: string;
Expand All @@ -27,11 +27,14 @@ interface State {
selectedLabels: string[];
minStartedAt?: Date;
maxStartedAt?: Date;
workflows?: Workflow[];
error?: Error;
deep: boolean;
}

interface State extends BrowserStorageOptions {
workflows?: Workflow[];
}

const defaultPaginationLimit = 10;

export class ArchivedWorkflowList extends BasePage<RouteComponentProps<any>, State> {
Expand Down Expand Up @@ -181,8 +184,23 @@ export class ArchivedWorkflowList extends BasePage<RouteComponentProps<any>, Sta
return params;
}

private fetchBrowserStorageStateObject(state: State): BrowserStorageOptions {
const browserStorageOptions: BrowserStorageOptions = {} as BrowserStorageOptions;
browserStorageOptions.deep = state.deep;
browserStorageOptions.error = state.error;
browserStorageOptions.maxStartedAt = state.maxStartedAt;
browserStorageOptions.minStartedAt = state.minStartedAt;
browserStorageOptions.name = state.name;
browserStorageOptions.namePrefix = state.namePrefix;
browserStorageOptions.namespace = state.namespace;
browserStorageOptions.pagination = state.pagination;
browserStorageOptions.selectedLabels = state.selectedLabels;
browserStorageOptions.selectedPhases = state.selectedPhases;
return browserStorageOptions;
}

private saveHistory() {
this.storage.setItem('options', this.state, {} as State);
this.storage.setItem('options', this.fetchBrowserStorageStateObject(this.state), {} as BrowserStorageOptions);
const newNamespace = Utils.managedNamespace ? '' : this.state.namespace;
this.url = uiUrl('archived-workflows' + (newNamespace ? '/' + newNamespace : '') + '?' + this.filterParams.toString());
Utils.currentNamespace = this.state.namespace;
Expand Down

0 comments on commit 225cd97

Please sign in to comment.