Update to Angular 15
Make stub directives standalone
Add canMatch guard functionality
Upgrade for angular 14 Fix get permission to return also undefined
Update readme files
Add angular 13 support
Add support for loading roles with permissions at the same time Add remove roles with permissions at the same time
Fix ivy build on different versions (#112)
Revert to previous system of checking permissions Add ability to pass parameters to rolesService(such as name and rolesState of store)
Bring back readme file in npm packages description
Change build to cli and fix ivy
Allow angular version 8 to upgrade
Fix set and getting default strategies in lazy modules (#92)
Fix typo in ngxPermissionsExcept add more test coverage
Fix passing permissions as variable(#87)
Fix Unit test components when using strategies (#82)
Revert system to previous building due to bugs in cli
Fixed bug with onpush change detection
change building system to ng cli
same as 5.0.0-rc.0
Breaking change minimal rxjs dependency is 6.0
Add Unauthorised strategies
BREAKING CHANGE MINIMAL rxjs dependency is 5.5
Optimise directive when working with lot of data(prevent re rendering);
Fix bug with not resetting permissions on loadPermissions
Add NgxPermissionsAllowStubDirective, NgxPermissionsRestrictStubDirective for testing
Improve typescript support Don't show template on initial load.
Fix correct role implementation. When passing function to redirectTo it will use or operator.
BugFix When passing empty array. it should show the component.
Implement canLoad interface Implement canActivateChild interface
Add support for angular 5.
Version 2 for angular 4/5. Version 1 for angular 2/4
###Small Bug Fixes
Adding then else block functionality
Adding then else block functionality with ngxPermissionsExcept directive
<div *ngxPermissionsExcept="['THEN_BLOCK']; else elseBlock; then thenBlock">main</div>
<ng-template #elseBlock>
<div>elseBlock</div>
</ng-template>
<ng-template #thenBlock>
<div>thenBlock</div>
</ng-template>
Adding then else block functionality with ngxPermissionsOnly directive
<div *ngxPermissionsOnly="['THEN_BLOCK']; else elseBlock; then thenBlock">main</div>
<ng-template #elseBlock>
<div>elseBlock</div>
</ng-template>
<ng-template #thenBlock>
<div>thenBlock</div>
</ng-template>
Using with except and only together should use ngxPermissionsElse
and ngxPermissionsThen
<ng-template [ngxPermissionsExcept]="'FAIL_BLOCK'"
[ngxPermissionsOnly]="'ONLY_BLOCK'"
[ngxPermissionsElse]="elseBlock"
[ngxPermissionsThen]="thenBlock">
</ng-template>
<ng-template #elseBlock>
<div>elseBlock</div>
</ng-template>
<ng-template #thenBlock>
<div>thenBlock</div>
</ng-template>
Prevent name collision in Your application. Add Prefix ngx to everything
Remove permissions
directive cause it was not usable. Will not break anything Angular will just ignore it.
The reasoning if you want to use [permissions]
as input in another component it will show error can't find template error
.
from
<ng-template permissions [permissionsOnly]="['ADMIN', 'GUEST']">
<div>You can see this text congrats</div>
</div>
<div *permissionsExcept="['ADMIN', 'GUEST']">
<div>You can see this text congrats</div>
</div>
to
<ng-template [ngxPermissionsOnly]="['ADMIN', 'GUEST']">
<div>You can see this text congrats</div>
</div>
<div *ngxPermissionsExcept="['ADMIN', 'GUEST']">
<div>You can see this text congrats</div>
</div>
Add Ngx
Prefix to service name
PermissionsService > NgxPermissionsService
RolesService > NgxRolesService
PermissionsGuard > NgxPermissionsGuard
Add Ngx
Prefix to directive name
PermissionsDirective > NgxPermissionsDirective