fromJson method

Implementation

@override
UPostInteractionSettingsPrefThreadgateAllowRules fromJson(
  Map<String, dynamic> json,
) {
  try {
    if (MentionRule.validate(json)) {
      return UPostInteractionSettingsPrefThreadgateAllowRules.mentionRule(
        data: const MentionRuleConverter().fromJson(json),
      );
    }
    if (FollowerRule.validate(json)) {
      return UPostInteractionSettingsPrefThreadgateAllowRules.followerRule(
        data: const FollowerRuleConverter().fromJson(json),
      );
    }
    if (FollowingRule.validate(json)) {
      return UPostInteractionSettingsPrefThreadgateAllowRules.followingRule(
        data: const FollowingRuleConverter().fromJson(json),
      );
    }
    if (ListRule.validate(json)) {
      return UPostInteractionSettingsPrefThreadgateAllowRules.listRule(
        data: const ListRuleConverter().fromJson(json),
      );
    }

    return UPostInteractionSettingsPrefThreadgateAllowRules.unknown(
      data: json,
    );
  } catch (_) {
    return UPostInteractionSettingsPrefThreadgateAllowRules.unknown(
      data: json,
    );
  }
}