Release Notes
v2.4.0
February 2026
New Features
-
IdentityService.apiNameproperty - New property for REST API configuration. Defaults to'default'. -
getAllRoles()method - New method to fetch all roles without pagination:import { useIdentityService } from '@abpjs/identity-pro';
function RoleSelector() {
const identityService = useIdentityService();
const [roles, setRoles] = useState<Identity.RoleItem[]>([]);
useEffect(() => {
// Fetch all roles without pagination (calls /api/identity/roles/all)
identityService.getAllRoles().then((response) => {
setRoles(response.items);
});
}, []);
return (
<select>
{roles.map((role) => (
<option key={role.id} value={role.id}>
{role.name}
</option>
))}
</select>
);
} -
eIdentityComponentsenum - New enum for component identifiers, useful for component registration and customization:import { eIdentityComponents } from '@abpjs/identity-pro';
// Available components:
// eIdentityComponents.Claims = 'Identity.ClaimsComponent'
// eIdentityComponents.Roles = 'Identity.RolesComponent'
// eIdentityComponents.Users = 'Identity.UsersComponent'
v2.2.0
February 2026
New Features
- User Unlock - Added
unlockUser(id)method toIdentityServiceanduseUsershook for unlocking locked out users - Permissions Modal State - Added built-in permissions modal state management to
useRolesanduseUsershooks:visiblePermissions- Boolean state for modal visibilitypermissionsProviderKey- Provider key for the permissions modalonVisiblePermissionsChange(value)- Callback to handle modal visibility changesopenPermissionsModal(providerKey)- Method to open permissions modal for a specific entity
v2.1.1
February 2026
- Version alignment with @abpjs/core
v2.0.0
January 2026
New Features
-
IdentityStateService- New state service for programmatic identity operations with 17 dispatch methods:Role Operations:
dispatchGetRoles(params?)- Fetch roles and update internal statedispatchGetRoleById(id)- Fetch a single role by IDdispatchCreateRole(body)- Create a new roledispatchUpdateRole(id, body)- Update an existing roledispatchDeleteRole(id)- Delete a role
User Operations:
dispatchGetUsers(params?)- Fetch users and update internal statedispatchGetUserById(id)- Fetch a single user by IDdispatchCreateUser(body)- Create a new userdispatchUpdateUser(id, body)- Update an existing userdispatchDeleteUser(id)- Delete a userdispatchGetUserRoles(id)- Get roles assigned to a user
Claim Type Operations (Pro):
dispatchGetClaimTypes(params?)- Fetch claim types and update internal statedispatchGetClaimTypeById(id)- Fetch a single claim type by IDdispatchCreateClaimType(body)- Create a new claim typedispatchUpdateClaimType(body)- Update an existing claim typedispatchDeleteClaimType(id)- Delete a claim typedispatchGetClaimTypeNames()- Get all claim type names
State Getter Methods:
getRoles()/getRolesTotalCount()- Access cached rolesgetUsers()/getUsersTotalCount()- Access cached usersgetClaimTypes()/getClaimTypesTotalCount()- Access cached claim typesgetClaimTypeNames()- Access cached claim type names
Example
import { IdentityStateService } from '@abpjs/identity-pro';
import { RestService } from '@abpjs/core';
const restService = new RestService();
const stateService = new IdentityStateService(restService);
// Fetch and manage roles
await stateService.dispatchGetRoles({ maxResultCount: 10 });
const roles = stateService.getRoles();
console.log(`Found ${stateService.getRolesTotalCount()} roles`);
// Create a new role
await stateService.dispatchCreateRole({
name: 'Manager',
isDefault: false,
isPublic: true,
});
// Fetch and manage users
await stateService.dispatchGetUsers({ filter: 'admin' });
const users = stateService.getUsers();
// Fetch claim types (Pro feature)
await stateService.dispatchGetClaimTypes();
const claimTypes = stateService.getClaimTypes();
v1.0.0
January 2026
- Version alignment with @abpjs/core v1.0.0
v0.7.2 (Initial Release)
Components
- RolesComponent - Full role management UI with CRUD operations and permissions
- UsersComponent - Complete user management with role assignment and settings
- ClaimsComponent - Claim type management UI (Pro feature)
- ClaimModal - Reusable modal for managing user/role claims (Pro feature)
Hooks
- useRoles - State management for roles with pagination, sorting, and CRUD operations
- useUsers - State management for users with pagination, sorting, and CRUD operations
- useIdentity - Combined hook for roles and users management
- useClaims - State management for claim types and user/role claims (Pro feature)
Services
- IdentityService with comprehensive methods:
- Role operations:
getRoles,getRoleById,createRole,updateRole,deleteRole - User operations:
getUsers,getUserById,getUserRoles,createUser,updateUser,deleteUser - Claim type operations:
getClaimTypeNames,getClaimTypes,getClaimTypeById,createClaimType,updateClaimType,deleteClaimType(Pro) - User/Role claims:
getClaims,updateClaims(Pro)
- Role operations:
Constants
- IDENTITY_ROUTES - Pre-configured route definitions
- IDENTITY_ROUTE_PATHS - Route path constants for navigation
- IDENTITY_POLICIES - Required policy constants for authorization
TypeScript
- Identity namespace with all types:
RoleItem,RoleSaveRequest,RoleResponseUser,UserItem,UserSaveRequest,UserResponseClaimType,ClaimTypeName,ClaimRequest,ClaimResponse(Pro)ClaimValueTypeenum (Pro)Stateinterface for state management