getCapabilities method

  1. @override
Future<NativeAiCapabilities> getCapabilities()
override

Helper method to invoke method channel calls with timeout and retry logic

Implementation

@override
Future<NativeAiCapabilities> getCapabilities() async {
  try {
    final map = await methodChannel.invokeMapMethod<String, dynamic>(
      'getCapabilities',
    );
    if (map == null) return NativeAiCapabilities.unsupportedPlatform;
    return NativeAiCapabilities.fromMap(map);
  } on MissingPluginException {
    return NativeAiCapabilities.unsupportedPlatform;
  } on PlatformException catch (e) {
    return NativeAiCapabilities(
      available: false,
      code: e.code,
      reason: e.message,
    );
  }
}