roles 0.2.0 copy "roles: ^0.2.0" to clipboard
roles: ^0.2.0 copied to clipboard

A dart package for handling role based authorized function calls

example/roles_example.dart

import 'package:roles/roles.dart';

/// Make sure your user class implements a roleUser
class User implements RoleUser {
  @override
  final String role;
  final String name;

  User(this.name, this.role);
}

void main(List<String> args) {
  RoleCapabilityRepository().init({
    'admin': [
      RoleCapability(capability: 'add new user'),
      RoleCapability(capability: 'remove existing user'),
    ],
    'public': []
  });

  var raveesh = User('Raveesh', 'admin');
  var sayan = User('Sayan', 'public');

  var deleteAUser = (User user) {
    print('${user.name} removed');
  };

  var removeUserGuard = RoleGuard(capabilitiesIncludedIn: [
    RoleCapability(capability: 'remove existing user')
  ]);

  removeUserGuard.call(raveesh, () => deleteAUser(sayan));
  removeUserGuard.call(sayan, () => deleteAUser(raveesh));
}
4
likes
30
pub points
0%
popularity

Publisher

verified publishercookytech.in

A dart package for handling role based authorized function calls

Repository (GitHub)
View/report issues

License

unknown (LICENSE)

Dependencies

equatable, meta

More

Packages that depend on roles