validateParameters static method

bool validateParameters(
  1. ULinkParameters parameters
)

Validates ULinkParameters object.

parameters - The parameters to validate Returns true if the parameters are valid, false otherwise

Implementation

static bool validateParameters(ULinkParameters parameters) {
  final json = parameters.toJson();

  // Check required fields based on link type
  if (json['type'] == 'dynamic') {
    if (json['slug'] == null || (json['slug'] as String).isEmpty) {
      _log('Parameters validation failed: Dynamic link requires a slug');
      return false;
    }
  } else if (json['type'] == 'unified') {
    final hasIosUrl =
        json['iosUrl'] != null && (json['iosUrl'] as String).isNotEmpty;
    final hasAndroidUrl =
        json['androidUrl'] != null &&
        (json['androidUrl'] as String).isNotEmpty;
    final hasFallbackUrl =
        json['fallbackUrl'] != null &&
        (json['fallbackUrl'] as String).isNotEmpty;

    if (!hasIosUrl && !hasAndroidUrl && !hasFallbackUrl) {
      _log(
        'Parameters validation failed: Unified link requires at least one URL',
      );
      return false;
    }
  }

  _log('Parameters validation successful');
  return true;
}