Adding
This commit is contained in:
@@ -0,0 +1,48 @@
|
||||
import {AuthenticationContext, AdalConfig} from 'react-adal';
|
||||
|
||||
export const adalConfig:AdalConfig = {
|
||||
tenant: '63cd1554-2783-4a86-ae50-b9e6c21c9499',
|
||||
clientId: '60f721aa-75bf-4195-ae48-d42cbfd8326b',
|
||||
endpoints: {
|
||||
api: "cc253cda-05b2-425c-a60c-d1f516a1c4a9"
|
||||
},
|
||||
cacheLocation: "localStorage"
|
||||
};
|
||||
|
||||
export const authContext = new AuthenticationContext(adalConfig);
|
||||
authContext.handleWindowCallback();
|
||||
|
||||
// This is an example of getting the token, or the user.
|
||||
// To get a users groups, it's getUser().profile.roles
|
||||
export const getToken = () => authContext.getCachedToken(adalConfig.clientId);
|
||||
export const getUser = () => authContext.getCachedUser();
|
||||
|
||||
const hasRole = (profile: { roles?: string[] }, role:string) : boolean => {
|
||||
if( !profile || !profile.roles || profile.roles.length <= 0 ) {
|
||||
return false;
|
||||
}
|
||||
let hasRole = false;
|
||||
profile.roles.forEach( (roleInput) => {
|
||||
if( roleInput.toLowerCase() === role.toLowerCase() ) {
|
||||
hasRole = true;
|
||||
}
|
||||
});
|
||||
return hasRole;
|
||||
};
|
||||
|
||||
export const hasAdminRole = () => {
|
||||
const user = getUser();
|
||||
return user && hasRole( user.profile, "Admin");
|
||||
};
|
||||
|
||||
export const hasAnyRole = () => {
|
||||
const user = getUser();
|
||||
return user && (hasRole( user.profile, "Admin") || hasRole(user.profile, "Specialist"));
|
||||
};
|
||||
|
||||
/*
|
||||
export const adalApiFetch = (fetch: any, url: string, options: any) =>
|
||||
adalFetch(authContext, adalConfig.endpoints.api, fetch, url, options);
|
||||
|
||||
export const withAdalLoginApi = withAdalLogin(authContext, adalConfig.endpoints.api);
|
||||
*/
|
||||
Reference in New Issue
Block a user