resolve method

Resolves personalized fields before the campaign reaches the renderer. Invalid content collapses the slot without emitting an impression.

Implementation

ResolvedInlineCountdownConfig? resolve(VariableScope variables) {
  final resolvedActiveContent = activeContent.resolve(variables);
  final resolvedExpiredContent = expiredContent.resolve(variables);
  final resolvedDeadline = deadline.resolve(variables);
  if (resolvedActiveContent == null ||
      resolvedExpiredContent == null ||
      resolvedDeadline == null) {
    return null;
  }

  return ResolvedInlineCountdownConfig(
    slotKey: slotKey,
    activeContent: resolvedActiveContent,
    deadline: resolvedDeadline,
    expiredContent: resolvedExpiredContent,
    onClick: onClick,
    expiredOnClick: expiredOnClick,
  );
}