Changed the @angular/aria dependency version from a range (~21.0.0) to the exact version (21.0.0) in package.json for consistency with other Angular dependencies.
Introduced a RowDetailContext interface for row detail templates to improve type safety and clarity. Updated rowDetailTemplate and related methods to use the new context type. Also added documentation regarding deprecated ::ng-deep usage in styles.
Registered ExtensibleTableRowDetailComponent in ExtensibleModule and updated documentation to reference the new row detail feature. Also improved accessibility and semantics by replacing the expand/collapse anchor with a button in the extensible table component template.
Included @angular/aria version 21.0.0 as a dependency in Angular app and module templates, and as a peer dependency in the setting-management package. This ensures accessibility features are available and aligns with Angular 21 requirements.
Introduces the ExtensibleTableRowDetailComponent for expandable row details in extensible tables. Updates the extensible table to support row detail templates via both direct input and content child component, adds toggle logic and emits rowDetailToggle events. Documentation and exports are updated accordingly.
Replaces custom tab implementation in the setting management component with @angular/aria's Tabs, TabList, Tab, and TabPanel components. Updates the template and adds necessary styles and module imports for improved accessibility and maintainability. Also adds @angular/aria as a dependency in package.json.
Updates ConfigStateService to set the defaultResourceName for localization from the environment configuration if it is not already set in the app state. This ensures that the localization resource name is consistently initialized from environment settings when available.
Appends the async pipe to the abpAsyncLocalization usage in routes.component.html to ensure localized route names are properly resolved from observables.
Updated the routes component to use AsyncLocalizationPipe instead of LazyLocalizationPipe for route name localization. Adjusted template bindings to use the new pipe, improving consistency and potentially performance.
Updated PermissionGuard and permissionGuard to wait for ConfigStateService to load granted policies before checking permissions. This prevents permission checks from running before configuration is available.
Refactored lookup-search and permission-checkbox-list components to use SCSS for dropdown and list container styling. Improved resource permission management component with signals and untracked for state updates, and replaced manual destroy logic with Angular's DestroyRef and takeUntilDestroyed. Updated HTML templates for better readability and accessibility.
Replaced string literals for view modes with the new eResourcePermissionViewModes enum across components and services. This improves type safety and maintainability. Added the enum definition in a new file.
Introduces a generic LookupSearchComponent for reusable lookup/search UI in Angular. Refactors the provider key search in permission management to use the new component, simplifying its logic and improving maintainability. Updates tsconfig paths to include the new lookup component package.
Moved inline templates to separate HTML files for permission-checkbox-list, provider-key-search, resource-permission-form, and resource-permission-list components. Updated component decorators to reference the new template files, improving maintainability and separation of concerns.
Introduces ResourcePermissionStateService to centralize and manage state for resource permission management. Refactors resource-permission-management.component and related templates to use the new state service, and extracts form, list, and search UI into dedicated components for improved modularity and maintainability.
Enhances the provider key search input with focus/blur handling and a dropdown for results, improving user experience. Adds a confirmation dialog before deleting a permission, preventing accidental deletions. Refactors related logic for clarity and better state management.
Moved resource-permission-management component files into a dedicated folder and updated imports. Replaced the manual table implementation with the ExtensibleTableComponent for resource permissions, added client-side pagination, and introduced extension points for entity property configuration. Added new defaults, services, and tokens to support extensibility and improved maintainability.
Introduces ResourcePermissionManagementComponent with UI and logic for managing resource-based permissions. Updates models and service to support resource permission APIs, and exports the new component in the index.