reportInlineTimerClicked method

void reportInlineTimerClicked(
  1. CEPTriggerPayload payload,
  2. ResolvedInlineTimerConfig config,
  3. InlineTimerState renderedState,
  4. Duration remaining, {
  5. required bool isPrimary,
  6. String? elementId,
  7. String? label,
  8. String? actionType,
  9. String? actionUrl,
})

Implementation

void reportInlineTimerClicked(
  CEPTriggerPayload payload,
  ResolvedInlineTimerConfig config,
  InlineTimerState renderedState,
  Duration remaining, {
  required bool isPrimary,
  String? elementId,
  String? label,
  String? actionType,
  String? actionUrl,
}) {
  final state = config.rules[renderedState]?.id ?? renderedState.name;
  if (isPrimary) {
    _events.toInlineCanvasCep(
        ExperienceClicked(elementId: elementId), payload);
  }
  _events.toDigia(
    TimerAnalyticsEvent(
      NudgeClicked(
        elementId: elementId,
        ctaLabel: label,
        actionType: actionType,
        actionUrl: actionUrl,
        ctaRole: isPrimary ? 'primary' : 'secondary',
      ),
      TimerEventContext(state, _timerRemainingBucket(remaining),
          config.deadlineSource.name),
    ),
    payload,
  );
}