fetchApps method
Implementation
Future<List<SmartLinksAppItem>> fetchApps() async {
if (!AppsConstants.isApiValid() && !SmartLinksCore.isInitialized) {
throw StateError('API key is required to load apps.');
}
SmartLinksCore.requireInitialized();
if (!SmartLinksNativeApi.isEnabled) {
throw UnsupportedError(
'Apps require the SmartLinks native bridge (iOS/Android).',
);
}
final payload = await SmartLinksNativeApi.fetchApps();
final data = payload?['data'];
if (data is! List) return [];
return data
.whereType<Map<String, dynamic>>()
.map(SmartLinksAppItem.fromJson)
.toList();
}