Skip to main content
Version: Next

v3.1.0

Release Date: February 2026

This release introduces new features across several packages including security logs management, email confirmation flows, user lock functionality, and new utility types. Two new packages are also introduced: @abpjs/schematics for code generation and @abpjs/components for reusable UI components.

Highlights

  • Security Logs - New services for querying security logs in @abpjs/identity-pro and @abpjs/account-pro
  • User Lock - Lock user accounts for specified durations in @abpjs/identity-pro
  • Email Confirmation - New email confirmation flow methods in @abpjs/account-pro
  • New Packages - @abpjs/schematics (code generation) and @abpjs/components (Tree component)
  • Utility Enhancements - New date, string, and object utilities in @abpjs/core

New Packages

@abpjs/schematics

New package for code generation, providing CLI tools and utilities for generating ABP React application code.

npm install @abpjs/schematics

See: Schematics Overview

@abpjs/components

New package providing reusable UI components, starting with the Tree component for hierarchical data display.

import { Tree, TreeAdapter } from '@abpjs/components';

// Convert flat data to tree structure
const adapter = new TreeAdapter(flatData);
const tree = adapter.getTree();

// Render tree
<Tree
nodes={tree}
onSelect={(node) => console.log('Selected:', node)}
/>

See: Components Overview


New Features

@abpjs/core

  • MultiTenancyService - Service for managing multi-tenancy operations
  • SubscriptionService - Service for managing subscriptions with automatic cleanup
  • AuthFlowStrategy - Strategy pattern for authentication flow selection
  • Date utilities - formatDate(), parseDate(), isValidDate()
  • String utilities - capitalize(), camelCase(), snakeCase()
  • Object utilities - deepClone(), deepMerge(), pick(), omit()

@abpjs/theme-shared

  • NavItem class changes - Improved type safety for navigation items
  • DEFAULT_ERROR_LOCALIZATIONS - Default localization keys for error messages

@abpjs/account

  • AuthenticationFlowGuard - Guard for protecting routes based on authentication flow
  • hideCurrentPassword prop - Option to hide current password field in change password forms
  • hideChangePasswordTab prop - Option to hide change password tab in profile management

@abpjs/account-pro

  • Email Confirmation Methods:
    • sendEmailConfirmationToken(newEmail) - Send confirmation token to new email
    • confirmEmail(params) - Confirm email with token
  • My Security Logs - getMySecurityLogs(params) - Retrieve current user's security logs
  • New Route Names: EmailConfirmation, MySecurityLogs
  • New Component Keys: EmailConfirmation, MySecurityLogs
  • New Types: AccountSettings, AccountLdapSettings, EmailConfirmationInput

@abpjs/identity-pro

  • IdentitySecurityLogService - Full service for querying security logs:
    • getListByInput(params) - Get all security logs (requires permission)
    • getById(id) - Get single security log
    • getMyListByInput(params) - Get current user's logs
    • getMyById(id) - Get current user's single log
  • User Lock Functionality:
    • lockUser(id, lockoutDurationInSeconds) - Lock a user account
    • Identity.UserLockDurationType enum (Second, Minute, Hour, Day, Month, Year)
  • getUserAvailableOrganizationUnits() - Get org units available for user assignment
  • New Policy Name: SecurityLogs
  • New Route Name: SecurityLogs
  • New Component Key: SecurityLogs
  • Security Logs Extension Tokens for customization

@abpjs/feature-management

  • Feature.displayName - New property for feature display names

@abpjs/permission-management

  • shouldFetchAppConfig() - Determine if app config should refresh after permission changes

@abpjs/text-template-management

  • GetTemplateDefinitionListInput - Typed interface for template queries
  • createGetTemplateDefinitionListInput() - Factory function with defaults

Packages

PackageVersionChanges
@abpjs/core3.1.0MultiTenancyService, SubscriptionService, AuthFlowStrategy, date/string/object utilities
@abpjs/theme-shared3.1.0NavItem class changes, DEFAULT_ERROR_LOCALIZATIONS
@abpjs/theme-basic3.1.0Version alignment
@abpjs/account3.1.0AuthenticationFlowGuard, hideCurrentPassword, hideChangePasswordTab props
@abpjs/components3.1.0New package - Tree component with TreeAdapter
@abpjs/schematics3.1.0New package - Code generation tools
@abpjs/feature-management3.1.0Feature.displayName property
@abpjs/identity3.1.0Version alignment
@abpjs/permission-management3.1.0shouldFetchAppConfig() method
@abpjs/setting-management3.1.0Version alignment
@abpjs/tenant-management3.1.0Version alignment
@abpjs/account-pro3.1.0Email confirmation, security logs, LDAP settings
@abpjs/audit-logging3.1.0Version alignment
@abpjs/chat3.1.0Version alignment
@abpjs/identity-pro3.1.0Security logs service, user lock, available org units
@abpjs/language-management3.1.0Version alignment
@abpjs/saas3.1.0Version alignment
@abpjs/text-template-management3.1.0GetTemplateDefinitionListInput interface

Upgrade

Free Packages

npm install @abpjs/core@3.1.0 @abpjs/theme-shared@3.1.0 @abpjs/theme-basic@3.1.0 @abpjs/account@3.1.0 @abpjs/identity@3.1.0 @abpjs/feature-management@3.1.0 @abpjs/permission-management@3.1.0 @abpjs/setting-management@3.1.0 @abpjs/tenant-management@3.1.0 @abpjs/components@3.1.0 @abpjs/schematics@3.1.0

Pro Packages

npm install @abpjs/account-pro@3.1.0 @abpjs/audit-logging@3.1.0 @abpjs/chat@3.1.0 @abpjs/identity-pro@3.1.0 @abpjs/language-management@3.1.0 @abpjs/saas@3.1.0 @abpjs/text-template-management@3.1.0

See Also