getCurrentEntitlements method
Fetch the caller's full entitlement state. Returns null on failure so the
provider can fall back to Entitlement.none() without throwing.
Implementation
Future<EntitlementModel?> getCurrentEntitlements() async {
try {
final raw = await _client.rpc('current_entitlements');
if (raw == null) return null;
if (raw is Map<String, dynamic>) {
return EntitlementModel.fromJson(raw);
}
if (raw is Map) {
return EntitlementModel.fromJson(Map<String, dynamic>.from(raw));
}
return null;
} catch (e, stack) {
dev.log(
'getCurrentEntitlements failed: $e',
name: 'EntitlementDatasource',
error: e,
stackTrace: stack,
);
return null;
}
}