File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -244,11 +244,25 @@ const mutation = `mutation InsertUser($input: users_insert_input!) {
244244
245245async function upsertUser ( decodedAccessToken : HasuraToken , accessToken : string ) : Promise < void > {
246246 const username = decodedAccessToken [ 'https://hasura.io/jwt/claims' ] [ 'x-hasura-user-id' ] ;
247- const defaultRole = decodedAccessToken [ 'https://hasura.io/jwt/claims' ] [ 'x-hasura-default-role' ] ;
247+ // const defaultRole = decodedAccessToken['https://hasura.io/jwt/claims']['x-hasura-default-role'];
248248 const allowedRoles = decodedAccessToken [ 'https://hasura.io/jwt/claims' ] [ 'x-hasura-allowed-roles' ] ;
249+
250+ // set the active and default role manually:
251+ let defaultRole = 'viewer' ;
252+ switch ( true ) {
253+ case allowedRoles . includes ( 'aerie_admin' ) :
254+ defaultRole = 'aerie_admin' ;
255+ break ;
256+ case allowedRoles . includes ( 'user' ) :
257+ defaultRole = 'user' ;
258+ break ;
259+ default :
260+ defaultRole = 'viewer' ;
261+ }
262+
249263 const input = { default_role : defaultRole , username } ;
250264 const user : User = {
251- activeRole : defaultRole ,
265+ activeRole : defaultRole , // TODO: check allowed roles and pick highest. forget about default role.
252266 allowedRoles,
253267 defaultRole,
254268 id : username , // TODO: not exactly. I think this is supposed to be decodedAccessToken.sub. but we don't even use it.
You can’t perform that action at this time.
0 commit comments