projects
/
arvados-workbench2.git
/ blobdiff
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
18881: Fixes the "non-status" indication on objects that aren't processes.
[arvados-workbench2.git]
/
src
/
store
/
auth
/
auth-reducer.ts
diff --git
a/src/store/auth/auth-reducer.ts
b/src/store/auth/auth-reducer.ts
index 7459b7ac0c3a651e239a9b560baebd795d1884e0..c109acaf5184d72a133f94745f9c337dee4909af 100644
(file)
--- a/
src/store/auth/auth-reducer.ts
+++ b/
src/store/auth/auth-reducer.ts
@@
-3,16
+3,17
@@
// SPDX-License-Identifier: AGPL-3.0
import { authActions, AuthAction } from "./auth-action";
// SPDX-License-Identifier: AGPL-3.0
import { authActions, AuthAction } from "./auth-action";
-import { User } from "
~/
models/user";
-import { ServiceRepository } from "
~/
services/services";
-import { SshKeyResource } from '
~/
models/ssh-key';
-import { Session } from "
~/
models/session";
-import { Config, mockConfig } from '
~/
common/config';
+import { User } from "models/user";
+import { ServiceRepository } from "services/services";
+import { SshKeyResource } from 'models/ssh-key';
+import { Session } from "models/session";
+import { Config, mockConfig } from 'common/config';
export interface AuthState {
user?: User;
apiToken?: string;
apiTokenExpiration?: Date;
export interface AuthState {
user?: User;
apiToken?: string;
apiTokenExpiration?: Date;
+ apiTokenLocation?: string;
extraApiToken?: string;
extraApiTokenExpiration?: Date;
sshKeys: SshKeyResource[];
extraApiToken?: string;
extraApiTokenExpiration?: Date;
sshKeys: SshKeyResource[];
@@
-29,6
+30,7
@@
const initialState: AuthState = {
user: undefined,
apiToken: undefined,
apiTokenExpiration: undefined,
user: undefined,
apiToken: undefined,
apiTokenExpiration: undefined,
+ apiTokenLocation: undefined,
extraApiToken: undefined,
extraApiTokenExpiration: undefined,
sshKeys: [],
extraApiToken: undefined,
extraApiTokenExpiration: undefined,
sshKeys: [],
@@
-69,17
+71,20
@@
export const authReducer = (services: ServiceRepository) => (state = initialStat
}),
SET_EXTRA_TOKEN: ({ extraApiToken, extraApiTokenExpiration }) =>
({ ...state, extraApiToken, extraApiTokenExpiration }),
}),
SET_EXTRA_TOKEN: ({ extraApiToken, extraApiTokenExpiration }) =>
({ ...state, extraApiToken, extraApiTokenExpiration }),
- INIT_USER: ({ user, token, tokenExpiration }) =>
+ RESET_EXTRA_TOKEN: () =>
+ ({ ...state, extraApiToken: undefined, extraApiTokenExpiration: undefined }),
+ INIT_USER: ({ user, token, tokenExpiration, tokenLocation = state.apiTokenLocation }) =>
({ ...state,
user,
apiToken: token,
apiTokenExpiration: tokenExpiration,
({ ...state,
user,
apiToken: token,
apiTokenExpiration: tokenExpiration,
- homeCluster: user.uuid.substr(0, 5)
+ apiTokenLocation: tokenLocation,
+ homeCluster: user.uuid.substring(0, 5)
}),
LOGIN: () => state,
LOGOUT: () => ({ ...state, apiToken: undefined }),
USER_DETAILS_SUCCESS: (user: User) =>
}),
LOGIN: () => state,
LOGOUT: () => ({ ...state, apiToken: undefined }),
USER_DETAILS_SUCCESS: (user: User) =>
- ({ ...state, user, homeCluster: user.uuid.substr(0, 5) }),
+ ({ ...state, user, homeCluster: user.uuid.substr
ing
(0, 5) }),
SET_SSH_KEYS: (sshKeys: SshKeyResource[]) => ({ ...state, sshKeys }),
ADD_SSH_KEY: (sshKey: SshKeyResource) =>
({ ...state, sshKeys: state.sshKeys.concat(sshKey) }),
SET_SSH_KEYS: (sshKeys: SshKeyResource[]) => ({ ...state, sshKeys }),
ADD_SSH_KEY: (sshKey: SshKeyResource) =>
({ ...state, sshKeys: state.sshKeys.concat(sshKey) }),