insertChipAtCursor method

void insertChipAtCursor(
  1. T? chipConverter(
    1. String chipText
    )
)

Inserts a chip at the cursor position by converting the text at cursor.

Uses chipConverter to convert the text at cursor to a chip.

Implementation

void insertChipAtCursor(T? Function(String chipText) chipConverter) {
  final boundaries = _findChipTextBoundaries(selection.baseOffset);
  String chipText = value.text.substring(boundaries.start, boundaries.end);
  T? chip = chipConverter(chipText);
  if (chip != null) {
    int chipIndex = _nextAvailableChipIndex;
    _replaceAsChip(boundaries.start, boundaries.end, chipIndex);
    _chipMap[chipIndex] = chip;
  }
}