authProvider top-level property

Provider<Auth> authProvider
final

Implementation

final authProvider = Provider<Auth>(
  (ref) {
    final user = ref.watch(userNotiferProvider);

    if (user.isAuth) {
      switch (user.role) {
        case UserRoles.SuperAdmin:
          return Auth.admin(user);

        case UserRoles.Inactive:
          return Auth.inActive(user);

        case UserRoles.Active:
          return Auth.auth(user);

        default:
          return Auth.auth(user);
      }
    }

    return Auth.unauth();
  },
);