answerText property

String? get answerText

The answer as displayed: choice labels for selects, asterisks for secret inputs.

Implementation

String? get answerText {
  final data = answerValue;
  if (data == null) return null;
  var text = switch (data) {
    SelectOneValue(:final selection) => selectItemText(selection),
    MultipleItemsValue(:final selections) => [
      for (final s in selections) '${selectItemText(s)} ',
    ].join(),
    _ => data.displayText,
  };
  if (controlType == ControlType.secret) text = '*' * text!.length;
  return text;
}