FFXLinkCampaign.fromJson constructor

FFXLinkCampaign.fromJson(
  1. Map<String, Object?> json
)

A campaign from its own field names or utm_* keys; blanks trimmed away, the own name winning when both are present.

Implementation

factory FFXLinkCampaign.fromJson(Map<String, Object?> json) {
  String read(String field) {
    final own = json[field];
    if (own != null && '$own'.trim().isNotEmpty) return '$own'.trim();
    final utm = json[_utmKeys[field]];
    return utm == null ? '' : '$utm'.trim();
  }

  return FFXLinkCampaign(
    source: read('source'),
    medium: read('medium'),
    name: read('name'),
    term: read('term'),
    content: read('content'),
  );
}