fromValue static method

AuthyoDesignStyle fromValue(
  1. Object? raw
)

Resolves a style from an int, a numeric string or a key such as "glassmorphism". Unknown or null values fall back to flat so that an older SDK keeps working when a new style is added on the server.

Implementation

static AuthyoDesignStyle fromValue(Object? raw) {
  if (raw == null) return AuthyoDesignStyle.flat;
  if (raw is AuthyoDesignStyle) return raw;
  if (raw is int) {
    return AuthyoDesignStyle.values.firstWhere(
      (s) => s.value == raw,
      orElse: () => AuthyoDesignStyle.flat,
    );
  }
  final text = raw.toString().trim().toLowerCase();
  final asInt = int.tryParse(text);
  if (asInt != null) return fromValue(asInt);
  return AuthyoDesignStyle.values.firstWhere(
    (s) => s.key == text || s.name.toLowerCase() == text,
    orElse: () => AuthyoDesignStyle.flat,
  );
}