import React, { useState } from 'react'; import ReactDOM from 'react-dom'; import { PermissionsView } from './components/PermissionsView'; import { ComponentWithRoles } from './components/ComponentWithRoles'; import { ComponentWithPermissions } from './components/ComponentWithPermissions'; import { useRBACContext } from '..'; import ComponentWithHOC from './components/ComponentWithHOC'; import { Roles, RBAC, Permissions } from './RBAC'; const RolesAndPermissionsInContext = () => { const helper = (title, obj) => { return (

{title}

{JSON.stringify(obj, null, 2)}
); }; const { addedPermissions, addedRoles, existingPermissions, existingRoles, blockedPermissions, blockedRoles, } = useRBACContext(); return (
{helper('existing permissions', existingPermissions)} {helper('added permissions', addedPermissions)} {helper('blocked permissions', blockedPermissions)}
{helper('existing roles', existingRoles)} {helper('added roles', addedRoles)} {helper('blocked roles', blockedRoles)}
); }; const App = () => { const [roles, setRoles] = useState(['admin']); const [permissions, setPermissions] = useState(['allow_auth']); return (

Manually set roles and permissions

setRoles((prev) => [...prev, value])} removePermission={(per) => setRoles((prev) => prev.filter((r) => r !== per)) } permissions={roles} label="Roles" /> setPermissions((prev) => [...prev, value]) } removePermission={(per) => setPermissions((prev) => prev.filter((p) => p !== per)) } permissions={permissions} label="Permissions" />
{({ addRoles, addPermissions, addedRoles, addedPermissions }) => { return ( <>

hooks

hi
hi
); }}
); }; ReactDOM.render(, document.querySelector('#root'));