feat: allow regular users to login to the UI
This commit is contained in:
+6
-4
@@ -20,10 +20,12 @@ const App = () => (
|
||||
layout={Layout}
|
||||
loginPage={Login}
|
||||
>
|
||||
<Resource name="artist" {...artist} options={{ subMenu: 'library' }} />
|
||||
<Resource name="album" {...album} options={{ subMenu: 'library' }} />
|
||||
<Resource name="song" {...song} options={{ subMenu: 'library' }} />
|
||||
<Resource name="user" {...user} />
|
||||
{(permissions) => [
|
||||
<Resource name="artist" {...artist} options={{ subMenu: 'library' }} />,
|
||||
<Resource name="album" {...album} options={{ subMenu: 'library' }} />,
|
||||
<Resource name="song" {...song} options={{ subMenu: 'library' }} />,
|
||||
permissions === 'admin' ? <Resource name="user" {...user} /> : null
|
||||
]}
|
||||
</Admin>
|
||||
)
|
||||
export default App
|
||||
|
||||
@@ -25,6 +25,7 @@ const authProvider = {
|
||||
localStorage.setItem('token', response.token)
|
||||
localStorage.setItem('name', response.name)
|
||||
localStorage.setItem('username', response.username)
|
||||
localStorage.setItem('role', response.isAdmin ? 'admin' : 'regular')
|
||||
return response
|
||||
})
|
||||
.catch((error) => {
|
||||
@@ -59,13 +60,17 @@ const authProvider = {
|
||||
return Promise.resolve()
|
||||
},
|
||||
|
||||
getPermissions: (params) => Promise.resolve()
|
||||
getPermissions: () => {
|
||||
const role = localStorage.getItem('role')
|
||||
return role ? Promise.resolve(role) : Promise.reject()
|
||||
}
|
||||
}
|
||||
|
||||
const removeItems = () => {
|
||||
localStorage.removeItem('token')
|
||||
localStorage.removeItem('name')
|
||||
localStorage.removeItem('username')
|
||||
localStorage.removeItem('role')
|
||||
}
|
||||
|
||||
export default authProvider
|
||||
|
||||
Reference in New Issue
Block a user