checkPermission method

Reads the current notification permission state.

Implementation

Future<NotificationResult<NotificationPermissionStatus>>
checkPermission() async {
  final failure = _precondition<NotificationPermissionStatus>();
  if (failure != null) return failure;
  if (!_hasAnyLocalFeature) {
    return const NotificationFailureResult(
      ProviderNotEnabledFailure('permission (no local features enabled)'),
    );
  }
  final result = await _factory!.permissionRepo.check();
  if (result.isSuccess) _publishPermissionStatus(result.valueOrNull!);
  return result;
}