getVariant method

Future<MixpanelFlagVariant> getVariant(
  1. String flagName,
  2. MixpanelFlagVariant fallback
)

Get the full variant for a feature flag, including metadata.

  • flagName The name of the feature flag
  • fallback A fallback variant to use if the flag is not found or not ready

Returns the MixpanelFlagVariant for the flag, or the fallback if not available.

Implementation

Future<MixpanelFlagVariant> getVariant(
    String flagName, MixpanelFlagVariant fallback) async {
  if (!_MixpanelHelper.isValidString(flagName)) {
    developer.log('`getVariant` failed: flagName cannot be blank',
        name: 'Mixpanel');
    return fallback;
  }
  final result = await _channel.invokeMethod<Map>('getVariant', <String, dynamic>{
    'token': _token,
    'flagName': flagName,
    'fallback': fallback.toMap(),
  });
  if (result != null) {
    return MixpanelFlagVariant.fromMap(result);
  }
  return fallback;
}